diff --git a/lib/constants.d.ts b/lib/constants.d.ts index 58e0a9e2..36a355ab 100644 --- a/lib/constants.d.ts +++ b/lib/constants.d.ts @@ -17,6 +17,8 @@ export interface ActionInterface { email?: string; /** The folder to deploy. */ folder: string; + /** The auto generated folder path. */ + folderPath?: string; /** GitHub deployment token. */ gitHubToken?: string | null; /** Determines if the action is running in test mode or not. */ @@ -31,8 +33,6 @@ export interface ActionInterface { repositoryName?: string; /** The fully qualified repositpory path, this gets auto generated if repositoryName is provided. */ repositoryPath?: string; - /** The root directory where your project lives. */ - root?: string; /** Wipes the commit history from the deployment branch in favor of a single commit. */ singleCommit?: boolean | null; /** Determines if the action should run in silent mode or not. */ @@ -46,7 +46,28 @@ export interface ActionInterface { /** The folder where your deployment project lives. */ workspace: string; } +/** The minimum required values to run the action as a node module. */ +export interface NodeActionInterface { + /** Deployment access token. */ + accessToken?: string | null; + /** The branch that the action should deploy to. */ + branch: string; + /** The folder to deploy. */ + folder: string; + /** GitHub deployment token. */ + gitHubToken?: string | null; + /** The repository path, for example JamesIves/github-pages-deploy-action. */ + repositoryName: string; + /** Determines if the action should run in silent mode or not. */ + silent: boolean; + /** Set to true if you're using an ssh client in your build step. */ + ssh?: boolean | null; + /** The folder where your deployment project lives. */ + workspace: string; +} export declare const action: ActionInterface; +/** Types for the required action parameters. */ +export declare type RequiredActionParameters = Pick; /** Status codes for the action. */ export declare enum Status { SUCCESS = "success", diff --git a/lib/constants.js b/lib/constants.js index 05e51100..54228329 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -63,7 +63,6 @@ exports.action = { : repository && repository.full_name ? repository.full_name : process.env.GITHUB_REPOSITORY, - root: '.', singleCommit: !util_1.isNullOrUndefined(core_1.getInput('SINGLE_COMMIT')) ? core_1.getInput('SINGLE_COMMIT').toLowerCase() === 'true' : false, diff --git a/lib/git.js b/lib/git.js index 9ac52e1f..8237030f 100644 --- a/lib/git.js +++ b/lib/git.js @@ -23,7 +23,6 @@ const util_1 = require("./util"); function init(action) { return __awaiter(this, void 0, void 0, function* () { try { - util_1.hasRequiredParameters(action); core_1.info(`Deploying using ${action.tokenType}… 🔑`); core_1.info('Configuring git…'); yield execute_1.execute(`git init`, action.workspace, action.silent); @@ -56,7 +55,6 @@ exports.init = init; function switchToBaseBranch(action) { return __awaiter(this, void 0, void 0, function* () { try { - util_1.hasRequiredParameters(action); yield execute_1.execute(`git checkout --progress --force ${action.baseBranch ? action.baseBranch : action.defaultBranch}`, action.workspace, action.silent); } catch (error) { @@ -69,7 +67,6 @@ exports.switchToBaseBranch = switchToBaseBranch; function generateBranch(action) { return __awaiter(this, void 0, void 0, function* () { try { - util_1.hasRequiredParameters(action); core_1.info(`Creating the ${action.branch} branch…`); yield switchToBaseBranch(action); yield execute_1.execute(`git checkout --orphan ${action.branch}`, action.workspace, action.silent); @@ -94,7 +91,6 @@ function deploy(action) { .substr(2, 9)}`; core_1.info('Starting to commit changes…'); try { - util_1.hasRequiredParameters(action); const commitMessage = !util_1.isNullOrUndefined(action.commitMessage) ? action.commitMessage : `Deploying to ${action.branch} from ${action.baseBranch} ${process.env.GITHUB_SHA ? `@ ${process.env.GITHUB_SHA}` : ''} 🚀`; @@ -118,9 +114,6 @@ function deploy(action) { core_1.info(`Applying stashed workspace changes… ⬆️`); try { yield execute_1.execute(`git stash apply`, action.workspace, action.silent); - if (action.isTest) { - throw new Error(); - } } catch (_a) { core_1.info('Unable to apply from stash, continuing…'); @@ -150,13 +143,15 @@ function deploy(action) { Pushes all of the build files into the deployment directory. Allows the user to specify the root if '.' is provided. rsync is used to prevent file duplication. */ - yield execute_1.execute(`rsync -q -av --checksum --progress ${action.folder}/. ${action.targetFolder + yield execute_1.execute(`rsync -q -av --checksum --progress ${action.folderPath}/. ${action.targetFolder ? `${temporaryDeploymentDirectory}/${action.targetFolder}` : temporaryDeploymentDirectory} ${action.clean - ? `--delete ${excludes} ${!fs_1.default.existsSync(`${action.folder}/CNAME`) ? '--exclude CNAME' : ''} ${!fs_1.default.existsSync(`${action.folder}/.nojekyll`) + ? `--delete ${excludes} ${!fs_1.default.existsSync(`${action.folderPath}/CNAME`) + ? '--exclude CNAME' + : ''} ${!fs_1.default.existsSync(`${action.folderPath}/.nojekyll`) ? '--exclude .nojekyll' : ''}` - : ''} --exclude .ssh --exclude .git --exclude .github ${action.folder === action.root + : ''} --exclude .ssh --exclude .git --exclude .github ${action.folderPath === action.workspace ? `--exclude ${temporaryDeploymentDirectory}` : ''}`, action.workspace, action.silent); const hasFilesToCommit = yield execute_1.execute(`git status --porcelain`, `${action.workspace}/${temporaryDeploymentDirectory}`, action.silent); diff --git a/lib/lib.d.ts b/lib/lib.d.ts index ed545d5a..90d04d23 100644 --- a/lib/lib.d.ts +++ b/lib/lib.d.ts @@ -1,8 +1,6 @@ -import { ActionInterface } from './constants'; -import { deploy, generateBranch, init } from './git'; +import { ActionInterface, NodeActionInterface } from './constants'; /** Initializes and runs the action. * * @param {object} configuration - The action configuration. */ -export default function run(configuration: ActionInterface): Promise; -export { init, deploy, generateBranch, ActionInterface }; +export default function run(configuration: ActionInterface | NodeActionInterface): Promise; diff --git a/lib/lib.js b/lib/lib.js index 9ba68e8a..2de5ff22 100644 --- a/lib/lib.js +++ b/lib/lib.js @@ -9,13 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.generateBranch = exports.deploy = exports.init = void 0; const core_1 = require("@actions/core"); const constants_1 = require("./constants"); const git_1 = require("./git"); -Object.defineProperty(exports, "deploy", { enumerable: true, get: function () { return git_1.deploy; } }); -Object.defineProperty(exports, "generateBranch", { enumerable: true, get: function () { return git_1.generateBranch; } }); -Object.defineProperty(exports, "init", { enumerable: true, get: function () { return git_1.init; } }); const util_1 = require("./util"); /** Initializes and runs the action. * @@ -29,14 +25,17 @@ function run(configuration) { GitHub Pages Deploy Action 🚀 🚀 Getting Started Guide: https://github.com/marketplace/actions/deploy-to-github-pages - ❓ FAQ/Wiki: https://github.com/JamesIves/github-pages-deploy-action/wiki - 🔧 Support: https://github.com/JamesIves/github-pages-deploy-action/issues - ⭐ Contribute: https://github.com/JamesIves/github-pages-deploy-action/blob/dev/CONTRIBUTING.md + ❓ Discussions / Q&A: https://github.com/JamesIves/github-pages-deploy-action/discussions + 🔧 Report a Bug: https://github.com/JamesIves/github-pages-deploy-action/issues - 📣 Maintained by James Ives (https://jamesiv.es)`); + 📣 Maintained by James Ives: https://jamesiv.es + 💖 Support: https://github.com/sponsors/JamesIves`); core_1.info('Checking configuration and starting deployment… 🚦'); - const settings = Object.assign(Object.assign({}, constants_1.action), configuration); - // Defines the repository paths and token types. + const settings = Object.assign({}, configuration); + // Defines the repository/folder paths and token types. + // Also verifies that the action has all of the required parameters. + settings.folderPath = util_1.generateFolderPath(settings); + util_1.checkParameters(settings); settings.repositoryPath = util_1.generateRepositoryPath(settings); settings.tokenType = util_1.generateTokenType(settings); yield git_1.init(settings); diff --git a/lib/util.d.ts b/lib/util.d.ts index b4e30abd..d110e8b5 100644 --- a/lib/util.d.ts +++ b/lib/util.d.ts @@ -2,5 +2,6 @@ import { ActionInterface } from './constants'; export declare const isNullOrUndefined: (value: any) => boolean; export declare const generateTokenType: (action: ActionInterface) => string; export declare const generateRepositoryPath: (action: ActionInterface) => string; -export declare const hasRequiredParameters: (action: ActionInterface) => void; +export declare const generateFolderPath: (action: ActionInterface) => string; +export declare const checkParameters: (action: ActionInterface) => void; export declare const suppressSensitiveInformation: (str: string, action: ActionInterface) => string; diff --git a/lib/util.js b/lib/util.js index 697f5d20..9d244724 100644 --- a/lib/util.js +++ b/lib/util.js @@ -1,7 +1,13 @@ "use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); -exports.suppressSensitiveInformation = exports.hasRequiredParameters = exports.generateRepositoryPath = exports.generateTokenType = exports.isNullOrUndefined = void 0; +exports.suppressSensitiveInformation = exports.checkParameters = exports.generateFolderPath = exports.generateRepositoryPath = exports.generateTokenType = exports.isNullOrUndefined = void 0; +const fs_1 = require("fs"); +const path_1 = __importDefault(require("path")); const core_1 = require("@actions/core"); +/* Replaces all instances of a match in a string. */ const replaceAll = (input, find, replace) => input.split(find).join(replace); /* Utility function that checks to see if a value is undefined or not. */ exports.isNullOrUndefined = (value) => typeof value === 'undefined' || value === null || value === ''; @@ -17,23 +23,33 @@ exports.generateTokenType = (action) => action.ssh exports.generateRepositoryPath = (action) => action.ssh ? `git@github.com:${action.repositoryName}` : `https://${action.accessToken || `x-access-token:${action.gitHubToken}`}@github.com/${action.repositoryName}.git`; +/* Genetate absolute folder path by the provided folder name */ +exports.generateFolderPath = (action) => { + const folderName = action['folder']; + return path_1.default.isAbsolute(folderName) + ? folderName + : folderName.startsWith('~') + ? folderName.replace('~', process.env.HOME) + : path_1.default.join(action.workspace, folderName); +}; /* Checks for the required tokens and formatting. Throws an error if any case is matched. */ -exports.hasRequiredParameters = (action) => { - if ((exports.isNullOrUndefined(action.accessToken) && - exports.isNullOrUndefined(action.gitHubToken) && - exports.isNullOrUndefined(action.ssh)) || - exports.isNullOrUndefined(action.repositoryPath) || - (action.accessToken && action.accessToken === '')) { +const hasRequiredParameters = (action, params) => { + const nonNullParams = params.filter(param => !exports.isNullOrUndefined(action[param])); + return Boolean(nonNullParams.length); +}; +/* Verifies the action has the required parameters to run, otherwise throw an error. */ +exports.checkParameters = (action) => { + if (!hasRequiredParameters(action, ['accessToken', 'gitHubToken', 'ssh'])) { throw new Error('No deployment token/method was provided. You must provide the action with either a Personal Access Token or the GitHub Token secret in order to deploy. If you wish to use an ssh deploy token then you must set SSH to true.'); } - if (exports.isNullOrUndefined(action.branch)) { + if (!hasRequiredParameters(action, ['branch'])) { throw new Error('Branch is required.'); } - if (!action.folder || exports.isNullOrUndefined(action.folder)) { + if (!hasRequiredParameters(action, ['folder'])) { throw new Error('You must provide the action with a folder to deploy.'); } - if (action.folder.startsWith('/') || action.folder.startsWith('./')) { - throw new Error("Incorrectly formatted build folder. The deployment folder cannot be prefixed with '/' or './'. Instead reference the folder name directly."); + if (!fs_1.existsSync(action.folderPath)) { + throw new Error(`The directory you're trying to deploy named ${action.folderPath} doesn't exist. Please double check the path and any prerequisite build scripts and try again. ❗`); } }; /* Suppresses sensitive information from being exposed in error messages. */ diff --git a/node_modules/.bin/eslint-github-init b/node_modules/.bin/eslint-github-init deleted file mode 120000 index 5f657e95..00000000 --- a/node_modules/.bin/eslint-github-init +++ /dev/null @@ -1 +0,0 @@ -../eslint-plugin-github/bin/eslint-github-init.js \ No newline at end of file diff --git a/node_modules/.bin/eslint-unused-modules b/node_modules/.bin/eslint-unused-modules deleted file mode 120000 index abc0e5d5..00000000 --- a/node_modules/.bin/eslint-unused-modules +++ /dev/null @@ -1 +0,0 @@ -../eslint-plugin-github/bin/eslint-unused-modules.js \ No newline at end of file diff --git a/node_modules/.bin/flow-coverage b/node_modules/.bin/flow-coverage deleted file mode 120000 index 05e9f7a1..00000000 --- a/node_modules/.bin/flow-coverage +++ /dev/null @@ -1 +0,0 @@ -../eslint-plugin-github/bin/flow-coverage.js \ No newline at end of file diff --git a/node_modules/.bin/github-lint b/node_modules/.bin/github-lint deleted file mode 120000 index 466698fb..00000000 --- a/node_modules/.bin/github-lint +++ /dev/null @@ -1 +0,0 @@ -../eslint-plugin-github/bin/github-lint.js \ No newline at end of file diff --git a/node_modules/.bin/jsdoctypeparser b/node_modules/.bin/jsdoctypeparser deleted file mode 120000 index 5b82c283..00000000 --- a/node_modules/.bin/jsdoctypeparser +++ /dev/null @@ -1 +0,0 @@ -../jsdoctypeparser/bin/jsdoctypeparser \ No newline at end of file diff --git a/node_modules/.bin/loose-envify b/node_modules/.bin/loose-envify deleted file mode 120000 index ed9009c5..00000000 --- a/node_modules/.bin/loose-envify +++ /dev/null @@ -1 +0,0 @@ -../loose-envify/cli.js \ No newline at end of file diff --git a/node_modules/.bin/npm-check-github-package-requirements b/node_modules/.bin/npm-check-github-package-requirements deleted file mode 120000 index fdeac3b2..00000000 --- a/node_modules/.bin/npm-check-github-package-requirements +++ /dev/null @@ -1 +0,0 @@ -../eslint-plugin-github/bin/npm-check-github-package-requirements.js \ No newline at end of file diff --git a/node_modules/.bin/rimraf b/node_modules/.bin/rimraf index 7d23b3fa..4cd49a49 120000 --- a/node_modules/.bin/rimraf +++ b/node_modules/.bin/rimraf @@ -1 +1 @@ -../flat-cache/node_modules/rimraf/bin.js \ No newline at end of file +../rimraf/bin.js \ No newline at end of file diff --git a/node_modules/@babel/core/node_modules/.bin/semver b/node_modules/@babel/core/node_modules/.bin/semver index 317eb293..085f561b 120000 --- a/node_modules/@babel/core/node_modules/.bin/semver +++ b/node_modules/@babel/core/node_modules/.bin/semver @@ -1 +1 @@ -../semver/bin/semver \ No newline at end of file +../../../../normalize-package-data/node_modules/semver/bin/semver \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/LICENSE b/node_modules/@babel/runtime-corejs3/LICENSE deleted file mode 100644 index f31575ec..00000000 --- a/node_modules/@babel/runtime-corejs3/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -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. diff --git a/node_modules/@babel/runtime-corejs3/README.md b/node_modules/@babel/runtime-corejs3/README.md deleted file mode 100644 index 78ce1b4b..00000000 --- a/node_modules/@babel/runtime-corejs3/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# @babel/runtime-corejs3 - -> babel's modular runtime helpers with core-js@3 polyfilling - -## Install - -Using npm: - -```sh -npm install --save-dev @babel/runtime-corejs3 -``` - -or using yarn: - -```sh -yarn add @babel/runtime-corejs3 --dev -``` diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/array/from.js b/node_modules/@babel/runtime-corejs3/core-js-stable/array/from.js deleted file mode 100644 index 468393e3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/array/from.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/array/from"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/array/is-array.js b/node_modules/@babel/runtime-corejs3/core-js-stable/array/is-array.js deleted file mode 100644 index 974dfb48..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/array/is-array.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/array/is-array"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/array/of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/array/of.js deleted file mode 100644 index c3355a8b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/array/of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/array/of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/clear-immediate.js b/node_modules/@babel/runtime-corejs3/core-js-stable/clear-immediate.js deleted file mode 100644 index f2e71161..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/clear-immediate.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/clear-immediate"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/date/now.js b/node_modules/@babel/runtime-corejs3/core-js-stable/date/now.js deleted file mode 100644 index de1eb3f1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/date/now.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/date/now"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/bind.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/bind.js deleted file mode 100644 index 7e535808..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/bind.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/bind"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/code-point-at.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/code-point-at.js deleted file mode 100644 index 4301cab3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/code-point-at.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/code-point-at"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/concat.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/concat.js deleted file mode 100644 index 3e9fe5d5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/concat.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/concat"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/copy-within.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/copy-within.js deleted file mode 100644 index 4c6b64c1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/copy-within.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/copy-within"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/ends-with.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/ends-with.js deleted file mode 100644 index 8c87327b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/ends-with.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/ends-with"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/entries.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/entries.js deleted file mode 100644 index 536beb0f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/entries"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/every.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/every.js deleted file mode 100644 index b8caa698..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/every.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/every"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/fill.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/fill.js deleted file mode 100644 index ab4e00d0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/fill.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/fill"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/filter.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/filter.js deleted file mode 100644 index 82c3d4f7..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/filter.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/filter"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/find-index.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/find-index.js deleted file mode 100644 index 54547e0f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/find-index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/find-index"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/find.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/find.js deleted file mode 100644 index a97795c8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/find.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/find"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flags.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flags.js deleted file mode 100644 index 126ca63d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flags.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/flags"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flat-map.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flat-map.js deleted file mode 100644 index 5008ceb5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flat-map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/flat-map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flat.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flat.js deleted file mode 100644 index 9113bd40..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/flat.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/flat"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/for-each.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/for-each.js deleted file mode 100644 index def75194..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/for-each.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/for-each"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/includes.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/includes.js deleted file mode 100644 index 64810297..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/includes.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/includes"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/index-of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/index-of.js deleted file mode 100644 index 349cbb29..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/index-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/index-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/keys.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/keys.js deleted file mode 100644 index e418fa7d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/last-index-of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/last-index-of.js deleted file mode 100644 index 0493997b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/last-index-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/last-index-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/map.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/map.js deleted file mode 100644 index 823c96d8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/pad-end.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/pad-end.js deleted file mode 100644 index 4643368d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/pad-end.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/pad-end"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/pad-start.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/pad-start.js deleted file mode 100644 index 0fc1290f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/pad-start.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/pad-start"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reduce-right.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reduce-right.js deleted file mode 100644 index 05939ae1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reduce-right.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/reduce-right"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reduce.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reduce.js deleted file mode 100644 index 6b268bf3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reduce.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/reduce"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/repeat.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/repeat.js deleted file mode 100644 index cf6db61c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/repeat.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/repeat"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reverse.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reverse.js deleted file mode 100644 index 665219c3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/reverse.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/reverse"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/slice.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/slice.js deleted file mode 100644 index 237e11dc..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/slice.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/slice"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/some.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/some.js deleted file mode 100644 index 1d9c9252..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/some.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/some"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/sort.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/sort.js deleted file mode 100644 index 43c83a8f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/sort.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/sort"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/splice.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/splice.js deleted file mode 100644 index 70794ea6..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/splice.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/splice"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/starts-with.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/starts-with.js deleted file mode 100644 index 5898867e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/starts-with.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/starts-with"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-end.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-end.js deleted file mode 100644 index 36842441..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-end.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/trim-end"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-left.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-left.js deleted file mode 100644 index 9b63733b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-left.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/trim-left"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-right.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-right.js deleted file mode 100644 index 46800467..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-right.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/trim-right"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-start.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-start.js deleted file mode 100644 index c9644608..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim-start.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/trim-start"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim.js deleted file mode 100644 index fa394d78..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/trim.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/trim"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/values.js b/node_modules/@babel/runtime-corejs3/core-js-stable/instance/values.js deleted file mode 100644 index 17def65f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/instance/values.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/instance/values"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/json/stringify.js b/node_modules/@babel/runtime-corejs3/core-js-stable/json/stringify.js deleted file mode 100644 index 16028c0a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/json/stringify.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/json/stringify"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/map.js b/node_modules/@babel/runtime-corejs3/core-js-stable/map.js deleted file mode 100644 index 007829fb..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/acosh.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/acosh.js deleted file mode 100644 index 9ad41632..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/acosh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/acosh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/asinh.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/asinh.js deleted file mode 100644 index 3cfde2b5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/asinh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/asinh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/atanh.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/atanh.js deleted file mode 100644 index 4fb7f70d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/atanh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/atanh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/cbrt.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/cbrt.js deleted file mode 100644 index ea8b8bbd..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/cbrt.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/cbrt"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/clz32.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/clz32.js deleted file mode 100644 index b407eea0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/clz32.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/clz32"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/cosh.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/cosh.js deleted file mode 100644 index 1fb429e8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/cosh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/cosh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/expm1.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/expm1.js deleted file mode 100644 index 7263979c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/expm1.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/expm1"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/fround.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/fround.js deleted file mode 100644 index 3cc97d0a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/fround.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/fround"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/hypot.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/hypot.js deleted file mode 100644 index 3ce6bd56..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/hypot.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/hypot"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/imul.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/imul.js deleted file mode 100644 index 5a34abd3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/imul.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/imul"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/log10.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/log10.js deleted file mode 100644 index f2879dc5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/log10.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/log10"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/log1p.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/log1p.js deleted file mode 100644 index 3a0247da..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/log1p.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/log1p"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/log2.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/log2.js deleted file mode 100644 index 908d2f6d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/log2.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/log2"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/sign.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/sign.js deleted file mode 100644 index 9e8d5395..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/sign.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/sign"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/sinh.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/sinh.js deleted file mode 100644 index 5cc1b55b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/sinh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/sinh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/tanh.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/tanh.js deleted file mode 100644 index f3859e79..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/tanh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/tanh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/math/trunc.js b/node_modules/@babel/runtime-corejs3/core-js-stable/math/trunc.js deleted file mode 100644 index 93bbcffc..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/math/trunc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/math/trunc"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/epsilon.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/epsilon.js deleted file mode 100644 index dfb1c3b9..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/epsilon.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/epsilon"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-finite.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-finite.js deleted file mode 100644 index d65bd351..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-finite.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/is-finite"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-integer.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-integer.js deleted file mode 100644 index fc119470..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/is-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-nan.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-nan.js deleted file mode 100644 index a9939a4a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-nan.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/is-nan"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-safe-integer.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-safe-integer.js deleted file mode 100644 index a3332544..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/is-safe-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/is-safe-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/max-safe-integer.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/max-safe-integer.js deleted file mode 100644 index 855bd4c1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/max-safe-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/max-safe-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/min-safe-integer.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/min-safe-integer.js deleted file mode 100644 index b2429067..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/min-safe-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/min-safe-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/parse-float.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/parse-float.js deleted file mode 100644 index 9d2c7c4a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/parse-float.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/parse-float"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/number/parse-int.js b/node_modules/@babel/runtime-corejs3/core-js-stable/number/parse-int.js deleted file mode 100644 index 54120afd..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/number/parse-int.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/number/parse-int"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/assign.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/assign.js deleted file mode 100644 index 5e3e1281..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/assign.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/assign"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/create.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/create.js deleted file mode 100644 index b0d00d34..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/create.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/create"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/define-properties.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/define-properties.js deleted file mode 100644 index 60d7637f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/define-properties.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/define-properties"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/define-property.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/define-property.js deleted file mode 100644 index bdf30c6e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/define-property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/define-property"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/entries.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/entries.js deleted file mode 100644 index 0b0b76cc..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/entries"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/freeze.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/freeze.js deleted file mode 100644 index abbc7d6f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/freeze.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/freeze"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/from-entries.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/from-entries.js deleted file mode 100644 index 01164efb..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/from-entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/from-entries"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor.js deleted file mode 100644 index c2ed98b8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/get-own-property-descriptor"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors.js deleted file mode 100644 index 8f0fc956..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/get-own-property-descriptors"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-names.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-names.js deleted file mode 100644 index 0807d5d2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-names.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/get-own-property-names"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols.js deleted file mode 100644 index bf459551..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/get-own-property-symbols"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-prototype-of.js deleted file mode 100644 index f22b095b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/get-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/get-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-extensible.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-extensible.js deleted file mode 100644 index 2cafb773..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-extensible.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/is-extensible"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-frozen.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-frozen.js deleted file mode 100644 index 8067ae7a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-frozen.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/is-frozen"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-sealed.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-sealed.js deleted file mode 100644 index fb94859a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is-sealed.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/is-sealed"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/is.js deleted file mode 100644 index 056f8176..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/is.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/is"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/keys.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/keys.js deleted file mode 100644 index 40bccaf8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/prevent-extensions.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/prevent-extensions.js deleted file mode 100644 index ae6d21d0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/prevent-extensions.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/prevent-extensions"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/seal.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/seal.js deleted file mode 100644 index faa2d347..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/seal.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/seal"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/set-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/set-prototype-of.js deleted file mode 100644 index 28a8b6a6..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/set-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/set-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/object/values.js b/node_modules/@babel/runtime-corejs3/core-js-stable/object/values.js deleted file mode 100644 index 3ccfa47d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/object/values.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/object/values"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/parse-float.js b/node_modules/@babel/runtime-corejs3/core-js-stable/parse-float.js deleted file mode 100644 index 994dc6a2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/parse-float.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/parse-float"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/parse-int.js b/node_modules/@babel/runtime-corejs3/core-js-stable/parse-int.js deleted file mode 100644 index c9d10eda..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/parse-int.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/parse-int"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/promise.js b/node_modules/@babel/runtime-corejs3/core-js-stable/promise.js deleted file mode 100644 index 32f1fab2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/promise.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/promise"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/queue-microtask.js b/node_modules/@babel/runtime-corejs3/core-js-stable/queue-microtask.js deleted file mode 100644 index 743d81b3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/queue-microtask.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/queue-microtask"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/apply.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/apply.js deleted file mode 100644 index 3ef9afbf..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/apply.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/apply"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/construct.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/construct.js deleted file mode 100644 index 24d1ac37..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/construct.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/construct"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/define-property.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/define-property.js deleted file mode 100644 index 92a1f7a0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/define-property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/define-property"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/delete-property.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/delete-property.js deleted file mode 100644 index 21bb710a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/delete-property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/delete-property"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get-own-property-descriptor.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get-own-property-descriptor.js deleted file mode 100644 index def452d0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get-own-property-descriptor.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/get-own-property-descriptor"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get-prototype-of.js deleted file mode 100644 index 0219996e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/get-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get.js deleted file mode 100644 index c4c91de3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/get.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/get"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/has.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/has.js deleted file mode 100644 index 66082e90..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/has.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/has"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/is-extensible.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/is-extensible.js deleted file mode 100644 index 93446d03..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/is-extensible.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/is-extensible"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/own-keys.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/own-keys.js deleted file mode 100644 index 443b23b4..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/own-keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/own-keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/prevent-extensions.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/prevent-extensions.js deleted file mode 100644 index 77c69d95..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/prevent-extensions.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/prevent-extensions"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/set-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/set-prototype-of.js deleted file mode 100644 index bb0cdff2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/set-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/set-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/set.js b/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/set.js deleted file mode 100644 index 857bdc9b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/reflect/set.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/reflect/set"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/set-immediate.js b/node_modules/@babel/runtime-corejs3/core-js-stable/set-immediate.js deleted file mode 100644 index f9415429..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/set-immediate.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/set-immediate"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/set-interval.js b/node_modules/@babel/runtime-corejs3/core-js-stable/set-interval.js deleted file mode 100644 index 0e41ff5a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/set-interval.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/set-interval"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/set-timeout.js b/node_modules/@babel/runtime-corejs3/core-js-stable/set-timeout.js deleted file mode 100644 index 401edca1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/set-timeout.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/set-timeout"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/set.js b/node_modules/@babel/runtime-corejs3/core-js-stable/set.js deleted file mode 100644 index 21ef6706..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/set.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/set"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/string/from-code-point.js b/node_modules/@babel/runtime-corejs3/core-js-stable/string/from-code-point.js deleted file mode 100644 index f1d0c108..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/string/from-code-point.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/string/from-code-point"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/string/raw.js b/node_modules/@babel/runtime-corejs3/core-js-stable/string/raw.js deleted file mode 100644 index 894439a2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/string/raw.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/string/raw"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol.js deleted file mode 100644 index 060d2c80..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/async-iterator.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/async-iterator.js deleted file mode 100644 index 2794af49..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/async-iterator.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/async-iterator"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/for.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/for.js deleted file mode 100644 index e7cbdb20..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/for.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/for"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/has-instance.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/has-instance.js deleted file mode 100644 index e12df6e8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/has-instance.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/has-instance"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/is-concat-spreadable.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/is-concat-spreadable.js deleted file mode 100644 index c82b4aad..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/is-concat-spreadable.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/is-concat-spreadable"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/iterator.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/iterator.js deleted file mode 100644 index a1fbb828..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/iterator.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/iterator"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/key-for.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/key-for.js deleted file mode 100644 index 9a061e19..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/key-for.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/key-for"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/match.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/match.js deleted file mode 100644 index 8491342e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/match.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/match"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/replace.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/replace.js deleted file mode 100644 index 1e000795..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/replace.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/replace"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/search.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/search.js deleted file mode 100644 index 439812c4..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/search.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/search"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/species.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/species.js deleted file mode 100644 index 5aa5fac0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/species.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/species"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/split.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/split.js deleted file mode 100644 index 3d193989..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/split.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/split"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/to-primitive.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/to-primitive.js deleted file mode 100644 index 2751de46..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/to-primitive.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/to-primitive"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/to-string-tag.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/to-string-tag.js deleted file mode 100644 index 61328964..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/to-string-tag.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/to-string-tag"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/unscopables.js b/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/unscopables.js deleted file mode 100644 index b84e75e0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/symbol/unscopables.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/symbol/unscopables"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/url-search-params.js b/node_modules/@babel/runtime-corejs3/core-js-stable/url-search-params.js deleted file mode 100644 index 4147a647..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/url-search-params.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/url-search-params"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/url.js b/node_modules/@babel/runtime-corejs3/core-js-stable/url.js deleted file mode 100644 index 8d302fc1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/url.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/url"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/weak-map.js b/node_modules/@babel/runtime-corejs3/core-js-stable/weak-map.js deleted file mode 100644 index d6715bba..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/weak-map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/weak-map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js-stable/weak-set.js b/node_modules/@babel/runtime-corejs3/core-js-stable/weak-set.js deleted file mode 100644 index d73724c2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js-stable/weak-set.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/stable/weak-set"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/aggregate-error.js b/node_modules/@babel/runtime-corejs3/core-js/aggregate-error.js deleted file mode 100644 index 8adca0a9..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/aggregate-error.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/aggregate-error"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/array/from.js b/node_modules/@babel/runtime-corejs3/core-js/array/from.js deleted file mode 100644 index cfba3a9a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/array/from.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/array/from"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/array/is-array.js b/node_modules/@babel/runtime-corejs3/core-js/array/is-array.js deleted file mode 100644 index b1d80715..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/array/is-array.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/array/is-array"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/array/of.js b/node_modules/@babel/runtime-corejs3/core-js/array/of.js deleted file mode 100644 index fb8b3934..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/array/of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/array/of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/clear-immediate.js b/node_modules/@babel/runtime-corejs3/core-js/clear-immediate.js deleted file mode 100644 index a7db03b8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/clear-immediate.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/clear-immediate"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/composite-key.js b/node_modules/@babel/runtime-corejs3/core-js/composite-key.js deleted file mode 100644 index 13af38a2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/composite-key.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/composite-key"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/composite-symbol.js b/node_modules/@babel/runtime-corejs3/core-js/composite-symbol.js deleted file mode 100644 index 1e1d420f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/composite-symbol.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/composite-symbol"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/date/now.js b/node_modules/@babel/runtime-corejs3/core-js/date/now.js deleted file mode 100644 index 65e4acde..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/date/now.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/date/now"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/get-iterator-method.js b/node_modules/@babel/runtime-corejs3/core-js/get-iterator-method.js deleted file mode 100644 index 16a1cfe1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/get-iterator-method.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/get-iterator-method"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/get-iterator.js b/node_modules/@babel/runtime-corejs3/core-js/get-iterator.js deleted file mode 100644 index efb412ea..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/get-iterator.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/get-iterator"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/global-this.js b/node_modules/@babel/runtime-corejs3/core-js/global-this.js deleted file mode 100644 index 37f697a1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/global-this.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/global-this"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/at.js b/node_modules/@babel/runtime-corejs3/core-js/instance/at.js deleted file mode 100644 index b997e2ab..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/at.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/at"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/bind.js b/node_modules/@babel/runtime-corejs3/core-js/instance/bind.js deleted file mode 100644 index c22c3acb..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/bind.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/bind"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/code-point-at.js b/node_modules/@babel/runtime-corejs3/core-js/instance/code-point-at.js deleted file mode 100644 index 96625456..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/code-point-at.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/code-point-at"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/code-points.js b/node_modules/@babel/runtime-corejs3/core-js/instance/code-points.js deleted file mode 100644 index c356dc28..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/code-points.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/code-points"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/concat.js b/node_modules/@babel/runtime-corejs3/core-js/instance/concat.js deleted file mode 100644 index 9c78c5b1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/concat.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/concat"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/copy-within.js b/node_modules/@babel/runtime-corejs3/core-js/instance/copy-within.js deleted file mode 100644 index f3be3205..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/copy-within.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/copy-within"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/ends-with.js b/node_modules/@babel/runtime-corejs3/core-js/instance/ends-with.js deleted file mode 100644 index 98cf0cce..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/ends-with.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/ends-with"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/entries.js b/node_modules/@babel/runtime-corejs3/core-js/instance/entries.js deleted file mode 100644 index 32864e2f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/entries"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/every.js b/node_modules/@babel/runtime-corejs3/core-js/instance/every.js deleted file mode 100644 index 46632146..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/every.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/every"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/fill.js b/node_modules/@babel/runtime-corejs3/core-js/instance/fill.js deleted file mode 100644 index 69eba3df..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/fill.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/fill"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/filter.js b/node_modules/@babel/runtime-corejs3/core-js/instance/filter.js deleted file mode 100644 index e1471517..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/filter.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/filter"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/find-index.js b/node_modules/@babel/runtime-corejs3/core-js/instance/find-index.js deleted file mode 100644 index fccbd052..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/find-index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/find-index"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/find.js b/node_modules/@babel/runtime-corejs3/core-js/instance/find.js deleted file mode 100644 index ae629820..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/find.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/find"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/flags.js b/node_modules/@babel/runtime-corejs3/core-js/instance/flags.js deleted file mode 100644 index 984243e8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/flags.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/flags"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/flat-map.js b/node_modules/@babel/runtime-corejs3/core-js/instance/flat-map.js deleted file mode 100644 index 8bc910d3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/flat-map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/flat-map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/flat.js b/node_modules/@babel/runtime-corejs3/core-js/instance/flat.js deleted file mode 100644 index 71143f9c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/flat.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/flat"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/for-each.js b/node_modules/@babel/runtime-corejs3/core-js/instance/for-each.js deleted file mode 100644 index 520c6ea2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/for-each.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/for-each"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/includes.js b/node_modules/@babel/runtime-corejs3/core-js/instance/includes.js deleted file mode 100644 index 4a8a5bd9..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/includes.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/includes"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/index-of.js b/node_modules/@babel/runtime-corejs3/core-js/instance/index-of.js deleted file mode 100644 index 68a12002..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/index-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/index-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/keys.js b/node_modules/@babel/runtime-corejs3/core-js/instance/keys.js deleted file mode 100644 index 704da3fa..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/last-index-of.js b/node_modules/@babel/runtime-corejs3/core-js/instance/last-index-of.js deleted file mode 100644 index 1552e76a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/last-index-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/last-index-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/map.js b/node_modules/@babel/runtime-corejs3/core-js/instance/map.js deleted file mode 100644 index f7cc5e00..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/match-all.js b/node_modules/@babel/runtime-corejs3/core-js/instance/match-all.js deleted file mode 100644 index d69fb2fa..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/match-all.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/match-all"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/pad-end.js b/node_modules/@babel/runtime-corejs3/core-js/instance/pad-end.js deleted file mode 100644 index d2ea8bbf..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/pad-end.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/pad-end"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/pad-start.js b/node_modules/@babel/runtime-corejs3/core-js/instance/pad-start.js deleted file mode 100644 index 8ad02c07..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/pad-start.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/pad-start"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/reduce-right.js b/node_modules/@babel/runtime-corejs3/core-js/instance/reduce-right.js deleted file mode 100644 index 8d15c138..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/reduce-right.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/reduce-right"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/reduce.js b/node_modules/@babel/runtime-corejs3/core-js/instance/reduce.js deleted file mode 100644 index 86e5ba62..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/reduce.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/reduce"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/repeat.js b/node_modules/@babel/runtime-corejs3/core-js/instance/repeat.js deleted file mode 100644 index 9671960d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/repeat.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/repeat"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/replace-all.js b/node_modules/@babel/runtime-corejs3/core-js/instance/replace-all.js deleted file mode 100644 index 61aae150..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/replace-all.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/replace-all"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/reverse.js b/node_modules/@babel/runtime-corejs3/core-js/instance/reverse.js deleted file mode 100644 index 93d6f414..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/reverse.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/reverse"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/slice.js b/node_modules/@babel/runtime-corejs3/core-js/instance/slice.js deleted file mode 100644 index b09f830a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/slice.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/slice"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/some.js b/node_modules/@babel/runtime-corejs3/core-js/instance/some.js deleted file mode 100644 index 2492d93a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/some.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/some"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/sort.js b/node_modules/@babel/runtime-corejs3/core-js/instance/sort.js deleted file mode 100644 index b2446c85..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/sort.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/sort"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/splice.js b/node_modules/@babel/runtime-corejs3/core-js/instance/splice.js deleted file mode 100644 index a11dd12b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/splice.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/splice"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/starts-with.js b/node_modules/@babel/runtime-corejs3/core-js/instance/starts-with.js deleted file mode 100644 index 207e095a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/starts-with.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/starts-with"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-end.js b/node_modules/@babel/runtime-corejs3/core-js/instance/trim-end.js deleted file mode 100644 index 0168e675..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-end.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/trim-end"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-left.js b/node_modules/@babel/runtime-corejs3/core-js/instance/trim-left.js deleted file mode 100644 index 08c5ddb3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-left.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/trim-left"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-right.js b/node_modules/@babel/runtime-corejs3/core-js/instance/trim-right.js deleted file mode 100644 index db701215..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-right.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/trim-right"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-start.js b/node_modules/@babel/runtime-corejs3/core-js/instance/trim-start.js deleted file mode 100644 index 9bd4e4a8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/trim-start.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/trim-start"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/trim.js b/node_modules/@babel/runtime-corejs3/core-js/instance/trim.js deleted file mode 100644 index 3fc0269a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/trim.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/trim"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/instance/values.js b/node_modules/@babel/runtime-corejs3/core-js/instance/values.js deleted file mode 100644 index 9a8607d8..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/instance/values.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/instance/values"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/is-iterable.js b/node_modules/@babel/runtime-corejs3/core-js/is-iterable.js deleted file mode 100644 index b2323fe5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/is-iterable.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/is-iterable"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/json/stringify.js b/node_modules/@babel/runtime-corejs3/core-js/json/stringify.js deleted file mode 100644 index 4f20a951..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/json/stringify.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/json/stringify"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/map.js b/node_modules/@babel/runtime-corejs3/core-js/map.js deleted file mode 100644 index 9dc3dd1a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/acosh.js b/node_modules/@babel/runtime-corejs3/core-js/math/acosh.js deleted file mode 100644 index 630dfa3e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/acosh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/acosh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/asinh.js b/node_modules/@babel/runtime-corejs3/core-js/math/asinh.js deleted file mode 100644 index 58c55cdf..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/asinh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/asinh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/atanh.js b/node_modules/@babel/runtime-corejs3/core-js/math/atanh.js deleted file mode 100644 index 1f85a68b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/atanh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/atanh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/cbrt.js b/node_modules/@babel/runtime-corejs3/core-js/math/cbrt.js deleted file mode 100644 index bcdfa5c2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/cbrt.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/cbrt"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/clamp.js b/node_modules/@babel/runtime-corejs3/core-js/math/clamp.js deleted file mode 100644 index 6517db9d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/clamp.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/clamp"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/clz32.js b/node_modules/@babel/runtime-corejs3/core-js/math/clz32.js deleted file mode 100644 index 39fc6a20..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/clz32.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/clz32"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/cosh.js b/node_modules/@babel/runtime-corejs3/core-js/math/cosh.js deleted file mode 100644 index 0471ef52..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/cosh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/cosh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/deg-per-rad.js b/node_modules/@babel/runtime-corejs3/core-js/math/deg-per-rad.js deleted file mode 100644 index bb1717b2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/deg-per-rad.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/deg-per-rad"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/degrees.js b/node_modules/@babel/runtime-corejs3/core-js/math/degrees.js deleted file mode 100644 index 56ee32a7..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/degrees.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/degrees"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/expm1.js b/node_modules/@babel/runtime-corejs3/core-js/math/expm1.js deleted file mode 100644 index 3dda5cf2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/expm1.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/expm1"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/fround.js b/node_modules/@babel/runtime-corejs3/core-js/math/fround.js deleted file mode 100644 index 2e7bb797..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/fround.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/fround"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/fscale.js b/node_modules/@babel/runtime-corejs3/core-js/math/fscale.js deleted file mode 100644 index 6e4deff4..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/fscale.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/fscale"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/hypot.js b/node_modules/@babel/runtime-corejs3/core-js/math/hypot.js deleted file mode 100644 index 1eb1f886..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/hypot.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/hypot"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/iaddh.js b/node_modules/@babel/runtime-corejs3/core-js/math/iaddh.js deleted file mode 100644 index ae8cb2b6..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/iaddh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/iaddh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/imul.js b/node_modules/@babel/runtime-corejs3/core-js/math/imul.js deleted file mode 100644 index c0577a7b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/imul.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/imul"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/imulh.js b/node_modules/@babel/runtime-corejs3/core-js/math/imulh.js deleted file mode 100644 index ae2226a3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/imulh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/imulh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/isubh.js b/node_modules/@babel/runtime-corejs3/core-js/math/isubh.js deleted file mode 100644 index 7f5f30b4..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/isubh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/isubh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/log10.js b/node_modules/@babel/runtime-corejs3/core-js/math/log10.js deleted file mode 100644 index d9aaf59e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/log10.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/log10"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/log1p.js b/node_modules/@babel/runtime-corejs3/core-js/math/log1p.js deleted file mode 100644 index 19be200f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/log1p.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/log1p"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/log2.js b/node_modules/@babel/runtime-corejs3/core-js/math/log2.js deleted file mode 100644 index b23be539..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/log2.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/log2"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/rad-per-deg.js b/node_modules/@babel/runtime-corejs3/core-js/math/rad-per-deg.js deleted file mode 100644 index f7022406..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/rad-per-deg.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/rad-per-deg"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/radians.js b/node_modules/@babel/runtime-corejs3/core-js/math/radians.js deleted file mode 100644 index e81c8e07..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/radians.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/radians"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/scale.js b/node_modules/@babel/runtime-corejs3/core-js/math/scale.js deleted file mode 100644 index 997a9e8b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/scale.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/scale"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/seeded-prng.js b/node_modules/@babel/runtime-corejs3/core-js/math/seeded-prng.js deleted file mode 100644 index 0ee49f64..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/seeded-prng.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/seeded-prng"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/sign.js b/node_modules/@babel/runtime-corejs3/core-js/math/sign.js deleted file mode 100644 index a0774291..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/sign.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/sign"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/signbit.js b/node_modules/@babel/runtime-corejs3/core-js/math/signbit.js deleted file mode 100644 index fe0d3bff..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/signbit.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/signbit"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/sinh.js b/node_modules/@babel/runtime-corejs3/core-js/math/sinh.js deleted file mode 100644 index 5d04b70d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/sinh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/sinh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/tanh.js b/node_modules/@babel/runtime-corejs3/core-js/math/tanh.js deleted file mode 100644 index ac400f4b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/tanh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/tanh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/trunc.js b/node_modules/@babel/runtime-corejs3/core-js/math/trunc.js deleted file mode 100644 index cdeb996b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/trunc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/trunc"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/math/umulh.js b/node_modules/@babel/runtime-corejs3/core-js/math/umulh.js deleted file mode 100644 index af11f0b4..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/math/umulh.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/math/umulh"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/epsilon.js b/node_modules/@babel/runtime-corejs3/core-js/number/epsilon.js deleted file mode 100644 index 994cd88f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/epsilon.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/epsilon"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/from-string.js b/node_modules/@babel/runtime-corejs3/core-js/number/from-string.js deleted file mode 100644 index d81c0110..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/from-string.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/from-string"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/is-finite.js b/node_modules/@babel/runtime-corejs3/core-js/number/is-finite.js deleted file mode 100644 index 3de14555..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/is-finite.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/is-finite"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/is-integer.js b/node_modules/@babel/runtime-corejs3/core-js/number/is-integer.js deleted file mode 100644 index 4023e4ec..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/is-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/is-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/is-nan.js b/node_modules/@babel/runtime-corejs3/core-js/number/is-nan.js deleted file mode 100644 index 7a38bc30..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/is-nan.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/is-nan"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/is-safe-integer.js b/node_modules/@babel/runtime-corejs3/core-js/number/is-safe-integer.js deleted file mode 100644 index 35dd12b1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/is-safe-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/is-safe-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/max-safe-integer.js b/node_modules/@babel/runtime-corejs3/core-js/number/max-safe-integer.js deleted file mode 100644 index 351d6451..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/max-safe-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/max-safe-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/min-safe-integer.js b/node_modules/@babel/runtime-corejs3/core-js/number/min-safe-integer.js deleted file mode 100644 index e2c6f227..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/min-safe-integer.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/min-safe-integer"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/parse-float.js b/node_modules/@babel/runtime-corejs3/core-js/number/parse-float.js deleted file mode 100644 index c468d11b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/parse-float.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/parse-float"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/number/parse-int.js b/node_modules/@babel/runtime-corejs3/core-js/number/parse-int.js deleted file mode 100644 index e694ff00..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/number/parse-int.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/number/parse-int"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/assign.js b/node_modules/@babel/runtime-corejs3/core-js/object/assign.js deleted file mode 100644 index 6c9b32f0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/assign.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/assign"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/create.js b/node_modules/@babel/runtime-corejs3/core-js/object/create.js deleted file mode 100644 index 582da6e2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/create.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/create"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/define-properties.js b/node_modules/@babel/runtime-corejs3/core-js/object/define-properties.js deleted file mode 100644 index f3261187..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/define-properties.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/define-properties"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/define-property.js b/node_modules/@babel/runtime-corejs3/core-js/object/define-property.js deleted file mode 100644 index 9aa5e2b5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/define-property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/define-property"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/entries.js b/node_modules/@babel/runtime-corejs3/core-js/object/entries.js deleted file mode 100644 index 3cefbcfc..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/entries"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/freeze.js b/node_modules/@babel/runtime-corejs3/core-js/object/freeze.js deleted file mode 100644 index 9c930020..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/freeze.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/freeze"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/from-entries.js b/node_modules/@babel/runtime-corejs3/core-js/object/from-entries.js deleted file mode 100644 index 7000f102..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/from-entries.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/from-entries"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-descriptor.js b/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-descriptor.js deleted file mode 100644 index 8a04870d..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-descriptor.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/get-own-property-descriptor"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-descriptors.js b/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-descriptors.js deleted file mode 100644 index d6a59e68..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-descriptors.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/get-own-property-descriptors"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-names.js b/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-names.js deleted file mode 100644 index b825da07..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-names.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/get-own-property-names"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-symbols.js b/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-symbols.js deleted file mode 100644 index c998127a..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/get-own-property-symbols.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/get-own-property-symbols"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/get-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js/object/get-prototype-of.js deleted file mode 100644 index 97d61f15..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/get-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/get-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/is-extensible.js b/node_modules/@babel/runtime-corejs3/core-js/object/is-extensible.js deleted file mode 100644 index 2be029c3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/is-extensible.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/is-extensible"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/is-frozen.js b/node_modules/@babel/runtime-corejs3/core-js/object/is-frozen.js deleted file mode 100644 index 0c4906fa..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/is-frozen.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/is-frozen"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/is-sealed.js b/node_modules/@babel/runtime-corejs3/core-js/object/is-sealed.js deleted file mode 100644 index d3439202..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/is-sealed.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/is-sealed"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/is.js b/node_modules/@babel/runtime-corejs3/core-js/object/is.js deleted file mode 100644 index 8a764aee..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/is.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/is"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/keys.js b/node_modules/@babel/runtime-corejs3/core-js/object/keys.js deleted file mode 100644 index 81218527..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/prevent-extensions.js b/node_modules/@babel/runtime-corejs3/core-js/object/prevent-extensions.js deleted file mode 100644 index ad55d7bd..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/prevent-extensions.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/prevent-extensions"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/seal.js b/node_modules/@babel/runtime-corejs3/core-js/object/seal.js deleted file mode 100644 index f98205e0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/seal.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/seal"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/set-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js/object/set-prototype-of.js deleted file mode 100644 index 3535dbc3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/set-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/set-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/object/values.js b/node_modules/@babel/runtime-corejs3/core-js/object/values.js deleted file mode 100644 index e192401f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/object/values.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/object/values"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/observable.js b/node_modules/@babel/runtime-corejs3/core-js/observable.js deleted file mode 100644 index 9a0cd330..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/observable.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/observable"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/parse-float.js b/node_modules/@babel/runtime-corejs3/core-js/parse-float.js deleted file mode 100644 index d6ab95d5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/parse-float.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/parse-float"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/parse-int.js b/node_modules/@babel/runtime-corejs3/core-js/parse-int.js deleted file mode 100644 index 73ed9db3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/parse-int.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/parse-int"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/promise.js b/node_modules/@babel/runtime-corejs3/core-js/promise.js deleted file mode 100644 index 46b8ddd3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/promise.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/promise"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/queue-microtask.js b/node_modules/@babel/runtime-corejs3/core-js/queue-microtask.js deleted file mode 100644 index 131d6254..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/queue-microtask.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/queue-microtask"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/apply.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/apply.js deleted file mode 100644 index db86be64..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/apply.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/apply"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/construct.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/construct.js deleted file mode 100644 index 3e7f8f71..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/construct.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/construct"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/define-metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/define-metadata.js deleted file mode 100644 index 0eadd23f..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/define-metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/define-metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/define-property.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/define-property.js deleted file mode 100644 index 9665eeb5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/define-property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/define-property"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/delete-metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/delete-metadata.js deleted file mode 100644 index d65f6b40..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/delete-metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/delete-metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/delete-property.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/delete-property.js deleted file mode 100644 index c1db05fb..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/delete-property.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/delete-property"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-metadata-keys.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get-metadata-keys.js deleted file mode 100644 index 179a701e..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-metadata-keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get-metadata-keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get-metadata.js deleted file mode 100644 index d1c1f7f2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get-metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-metadata-keys.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-metadata-keys.js deleted file mode 100644 index 8061b757..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-metadata-keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get-own-metadata-keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-metadata.js deleted file mode 100644 index c9c13455..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get-own-metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-property-descriptor.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-property-descriptor.js deleted file mode 100644 index 19634a78..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-own-property-descriptor.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get-own-property-descriptor"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get-prototype-of.js deleted file mode 100644 index 64995847..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/get.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/get.js deleted file mode 100644 index f123bfc3..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/get.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/get"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/has-metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/has-metadata.js deleted file mode 100644 index 28e87586..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/has-metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/has-metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/has-own-metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/has-own-metadata.js deleted file mode 100644 index d14f150b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/has-own-metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/has-own-metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/has.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/has.js deleted file mode 100644 index 66072e00..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/has.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/has"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/is-extensible.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/is-extensible.js deleted file mode 100644 index f3589911..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/is-extensible.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/is-extensible"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/metadata.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/metadata.js deleted file mode 100644 index 5d3b28c0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/metadata.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/metadata"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/own-keys.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/own-keys.js deleted file mode 100644 index 703fb6ef..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/own-keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/own-keys"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/prevent-extensions.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/prevent-extensions.js deleted file mode 100644 index 35f54e52..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/prevent-extensions.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/prevent-extensions"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/set-prototype-of.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/set-prototype-of.js deleted file mode 100644 index b8e09ef0..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/set-prototype-of.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/set-prototype-of"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/reflect/set.js b/node_modules/@babel/runtime-corejs3/core-js/reflect/set.js deleted file mode 100644 index 0bd4a840..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/reflect/set.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/reflect/set"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/set-immediate.js b/node_modules/@babel/runtime-corejs3/core-js/set-immediate.js deleted file mode 100644 index d41ffb18..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/set-immediate.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/set-immediate"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/set-interval.js b/node_modules/@babel/runtime-corejs3/core-js/set-interval.js deleted file mode 100644 index 091f3a97..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/set-interval.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/set-interval"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/set-timeout.js b/node_modules/@babel/runtime-corejs3/core-js/set-timeout.js deleted file mode 100644 index 3938f304..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/set-timeout.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/set-timeout"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/set.js b/node_modules/@babel/runtime-corejs3/core-js/set.js deleted file mode 100644 index 20d76797..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/set.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/set"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/string/from-code-point.js b/node_modules/@babel/runtime-corejs3/core-js/string/from-code-point.js deleted file mode 100644 index 2fc0d7f9..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/string/from-code-point.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/string/from-code-point"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/string/raw.js b/node_modules/@babel/runtime-corejs3/core-js/string/raw.js deleted file mode 100644 index 6f6af110..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/string/raw.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/string/raw"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol.js b/node_modules/@babel/runtime-corejs3/core-js/symbol.js deleted file mode 100644 index ded5c621..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/async-iterator.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/async-iterator.js deleted file mode 100644 index 0e3012e5..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/async-iterator.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/async-iterator"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/dispose.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/dispose.js deleted file mode 100644 index cf5db36c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/dispose.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/dispose"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/for.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/for.js deleted file mode 100644 index a05c72f4..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/for.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/for"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/has-instance.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/has-instance.js deleted file mode 100644 index ee6c73bb..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/has-instance.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/has-instance"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/is-concat-spreadable.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/is-concat-spreadable.js deleted file mode 100644 index ed3aec08..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/is-concat-spreadable.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/is-concat-spreadable"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/iterator.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/iterator.js deleted file mode 100644 index 305a0c2c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/iterator.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/iterator"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/key-for.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/key-for.js deleted file mode 100644 index 5855279c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/key-for.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/key-for"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/match.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/match.js deleted file mode 100644 index 8cf9e947..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/match.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/match"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/observable.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/observable.js deleted file mode 100644 index e035146c..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/observable.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/observable"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/pattern-match.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/pattern-match.js deleted file mode 100644 index 2f36f0a6..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/pattern-match.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/pattern-match"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/replace.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/replace.js deleted file mode 100644 index dcc29cab..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/replace.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/replace"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/search.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/search.js deleted file mode 100644 index ef064ca2..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/search.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/search"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/species.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/species.js deleted file mode 100644 index c034dff9..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/species.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/species"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/split.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/split.js deleted file mode 100644 index a8414a12..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/split.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/split"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/to-primitive.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/to-primitive.js deleted file mode 100644 index e2b9adab..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/to-primitive.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/to-primitive"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/to-string-tag.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/to-string-tag.js deleted file mode 100644 index 238bb984..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/to-string-tag.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/to-string-tag"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/symbol/unscopables.js b/node_modules/@babel/runtime-corejs3/core-js/symbol/unscopables.js deleted file mode 100644 index 9fe1283b..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/symbol/unscopables.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/symbol/unscopables"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/url-search-params.js b/node_modules/@babel/runtime-corejs3/core-js/url-search-params.js deleted file mode 100644 index 3fe02ce1..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/url-search-params.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/url-search-params"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/url.js b/node_modules/@babel/runtime-corejs3/core-js/url.js deleted file mode 100644 index 4b3e1f11..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/url.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/url"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/weak-map.js b/node_modules/@babel/runtime-corejs3/core-js/weak-map.js deleted file mode 100644 index a8e96be9..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/weak-map.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/weak-map"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/core-js/weak-set.js b/node_modules/@babel/runtime-corejs3/core-js/weak-set.js deleted file mode 100644 index f5120418..00000000 --- a/node_modules/@babel/runtime-corejs3/core-js/weak-set.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("core-js-pure/features/weak-set"); \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/AsyncGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/AsyncGenerator.js deleted file mode 100644 index 46c03589..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/AsyncGenerator.js +++ /dev/null @@ -1,107 +0,0 @@ -var _Symbol$asyncIterator = require("../core-js/symbol/async-iterator"); - -var _Symbol = require("../core-js/symbol"); - -var _Promise = require("../core-js/promise"); - -var AwaitValue = require("./AwaitValue"); - -function AsyncGenerator(gen) { - var front, back; - - function send(key, arg) { - return new _Promise(function (resolve, reject) { - var request = { - key: key, - arg: arg, - resolve: resolve, - reject: reject, - next: null - }; - - if (back) { - back = back.next = request; - } else { - front = back = request; - resume(key, arg); - } - }); - } - - function resume(key, arg) { - try { - var result = gen[key](arg); - var value = result.value; - var wrappedAwait = value instanceof AwaitValue; - - _Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) { - if (wrappedAwait) { - resume(key === "return" ? "return" : "next", arg); - return; - } - - settle(result.done ? "return" : "normal", arg); - }, function (err) { - resume("throw", err); - }); - } catch (err) { - settle("throw", err); - } - } - - function settle(type, value) { - switch (type) { - case "return": - front.resolve({ - value: value, - done: true - }); - break; - - case "throw": - front.reject(value); - break; - - default: - front.resolve({ - value: value, - done: false - }); - break; - } - - front = front.next; - - if (front) { - resume(front.key, front.arg); - } else { - back = null; - } - } - - this._invoke = send; - - if (typeof gen["return"] !== "function") { - this["return"] = undefined; - } -} - -if (typeof _Symbol === "function" && _Symbol$asyncIterator) { - AsyncGenerator.prototype[_Symbol$asyncIterator] = function () { - return this; - }; -} - -AsyncGenerator.prototype.next = function (arg) { - return this._invoke("next", arg); -}; - -AsyncGenerator.prototype["throw"] = function (arg) { - return this._invoke("throw", arg); -}; - -AsyncGenerator.prototype["return"] = function (arg) { - return this._invoke("return", arg); -}; - -module.exports = AsyncGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/AwaitValue.js b/node_modules/@babel/runtime-corejs3/helpers/AwaitValue.js deleted file mode 100644 index f9f41841..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/AwaitValue.js +++ /dev/null @@ -1,5 +0,0 @@ -function _AwaitValue(value) { - this.wrapped = value; -} - -module.exports = _AwaitValue; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/applyDecoratedDescriptor.js b/node_modules/@babel/runtime-corejs3/helpers/applyDecoratedDescriptor.js deleted file mode 100644 index 7558588b..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/applyDecoratedDescriptor.js +++ /dev/null @@ -1,47 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -var _sliceInstanceProperty = require("../core-js/instance/slice"); - -var _reverseInstanceProperty = require("../core-js/instance/reverse"); - -var _reduceInstanceProperty = require("../core-js/instance/reduce"); - -var _Object$keys = require("../core-js/object/keys"); - -var _forEachInstanceProperty = require("../core-js/instance/for-each"); - -function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { - var _context, _context2, _context3; - - var desc = {}; - - _forEachInstanceProperty(_context = _Object$keys(descriptor)).call(_context, function (key) { - desc[key] = descriptor[key]; - }); - - desc.enumerable = !!desc.enumerable; - desc.configurable = !!desc.configurable; - - if ('value' in desc || desc.initializer) { - desc.writable = true; - } - - desc = _reduceInstanceProperty(_context2 = _reverseInstanceProperty(_context3 = _sliceInstanceProperty(decorators).call(decorators)).call(_context3)).call(_context2, function (desc, decorator) { - return decorator(target, property, desc) || desc; - }, desc); - - if (context && desc.initializer !== void 0) { - desc.value = desc.initializer ? desc.initializer.call(context) : void 0; - desc.initializer = undefined; - } - - if (desc.initializer === void 0) { - _Object$defineProperty(target, property, desc); - - desc = null; - } - - return desc; -} - -module.exports = _applyDecoratedDescriptor; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/arrayWithHoles.js b/node_modules/@babel/runtime-corejs3/helpers/arrayWithHoles.js deleted file mode 100644 index 4522bd5e..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/arrayWithHoles.js +++ /dev/null @@ -1,7 +0,0 @@ -var _Array$isArray = require("../core-js/array/is-array"); - -function _arrayWithHoles(arr) { - if (_Array$isArray(arr)) return arr; -} - -module.exports = _arrayWithHoles; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/arrayWithoutHoles.js b/node_modules/@babel/runtime-corejs3/helpers/arrayWithoutHoles.js deleted file mode 100644 index 13f124c9..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/arrayWithoutHoles.js +++ /dev/null @@ -1,13 +0,0 @@ -var _Array$isArray = require("../core-js/array/is-array"); - -function _arrayWithoutHoles(arr) { - if (_Array$isArray(arr)) { - for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { - arr2[i] = arr[i]; - } - - return arr2; - } -} - -module.exports = _arrayWithoutHoles; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/assertThisInitialized.js b/node_modules/@babel/runtime-corejs3/helpers/assertThisInitialized.js deleted file mode 100644 index 98d29498..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/assertThisInitialized.js +++ /dev/null @@ -1,9 +0,0 @@ -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - - return self; -} - -module.exports = _assertThisInitialized; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/asyncGeneratorDelegate.js b/node_modules/@babel/runtime-corejs3/helpers/asyncGeneratorDelegate.js deleted file mode 100644 index 839f973e..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/asyncGeneratorDelegate.js +++ /dev/null @@ -1,64 +0,0 @@ -var _Symbol$iterator = require("../core-js/symbol/iterator"); - -var _Symbol = require("../core-js/symbol"); - -var _Promise = require("../core-js/promise"); - -function _asyncGeneratorDelegate(inner, awaitWrap) { - var iter = {}, - waiting = false; - - function pump(key, value) { - waiting = true; - value = new _Promise(function (resolve) { - resolve(inner[key](value)); - }); - return { - done: false, - value: awaitWrap(value) - }; - } - - ; - - if (typeof _Symbol === "function" && _Symbol$iterator) { - iter[_Symbol$iterator] = function () { - return this; - }; - } - - iter.next = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("next", value); - }; - - if (typeof inner["throw"] === "function") { - iter["throw"] = function (value) { - if (waiting) { - waiting = false; - throw value; - } - - return pump("throw", value); - }; - } - - if (typeof inner["return"] === "function") { - iter["return"] = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("return", value); - }; - } - - return iter; -} - -module.exports = _asyncGeneratorDelegate; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/asyncIterator.js b/node_modules/@babel/runtime-corejs3/helpers/asyncIterator.js deleted file mode 100644 index 1366cc68..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/asyncIterator.js +++ /dev/null @@ -1,27 +0,0 @@ -var _getIteratorMethod = require("../core-js/get-iterator-method"); - -var _Symbol$iterator = require("../core-js/symbol/iterator"); - -var _Symbol$asyncIterator = require("../core-js/symbol/async-iterator"); - -var _Symbol = require("../core-js/symbol"); - -function _asyncIterator(iterable) { - var method; - - if (typeof _Symbol !== "undefined") { - if (_Symbol$asyncIterator) { - method = iterable[_Symbol$asyncIterator]; - if (method != null) return method.call(iterable); - } - - if (_Symbol$iterator) { - method = _getIteratorMethod(iterable); - if (method != null) return method.call(iterable); - } - } - - throw new TypeError("Object is not async iterable"); -} - -module.exports = _asyncIterator; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/asyncToGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/asyncToGenerator.js deleted file mode 100644 index f15531db..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/asyncToGenerator.js +++ /dev/null @@ -1,39 +0,0 @@ -var _Promise = require("../core-js/promise"); - -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); - }); - }; -} - -module.exports = _asyncToGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/awaitAsyncGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/awaitAsyncGenerator.js deleted file mode 100644 index 59f797af..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/awaitAsyncGenerator.js +++ /dev/null @@ -1,7 +0,0 @@ -var AwaitValue = require("./AwaitValue"); - -function _awaitAsyncGenerator(value) { - return new AwaitValue(value); -} - -module.exports = _awaitAsyncGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classCallCheck.js b/node_modules/@babel/runtime-corejs3/helpers/classCallCheck.js deleted file mode 100644 index f389f2e8..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classCallCheck.js +++ /dev/null @@ -1,7 +0,0 @@ -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} - -module.exports = _classCallCheck; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classNameTDZError.js b/node_modules/@babel/runtime-corejs3/helpers/classNameTDZError.js deleted file mode 100644 index 8c1bdf55..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classNameTDZError.js +++ /dev/null @@ -1,5 +0,0 @@ -function _classNameTDZError(name) { - throw new Error("Class \"" + name + "\" cannot be referenced in computed property keys."); -} - -module.exports = _classNameTDZError; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldDestructureSet.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldDestructureSet.js deleted file mode 100644 index fab91057..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldDestructureSet.js +++ /dev/null @@ -1,28 +0,0 @@ -function _classPrivateFieldDestructureSet(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - - var descriptor = privateMap.get(receiver); - - if (descriptor.set) { - if (!("__destrObj" in descriptor)) { - descriptor.__destrObj = { - set value(v) { - descriptor.set.call(receiver, v); - } - - }; - } - - return descriptor.__destrObj; - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - return descriptor; - } -} - -module.exports = _classPrivateFieldDestructureSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldGet.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldGet.js deleted file mode 100644 index 106c3cd9..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldGet.js +++ /dev/null @@ -1,15 +0,0 @@ -function _classPrivateFieldGet(receiver, privateMap) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to get private field on non-instance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} - -module.exports = _classPrivateFieldGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldLooseBase.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldLooseBase.js deleted file mode 100644 index 64ed79df..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldLooseBase.js +++ /dev/null @@ -1,9 +0,0 @@ -function _classPrivateFieldBase(receiver, privateKey) { - if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) { - throw new TypeError("attempted to use private field on non-instance"); - } - - return receiver; -} - -module.exports = _classPrivateFieldBase; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldLooseKey.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldLooseKey.js deleted file mode 100644 index a1a6417a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldLooseKey.js +++ /dev/null @@ -1,7 +0,0 @@ -var id = 0; - -function _classPrivateFieldKey(name) { - return "__private_" + id++ + "_" + name; -} - -module.exports = _classPrivateFieldKey; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldSet.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldSet.js deleted file mode 100644 index c92f97a8..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateFieldSet.js +++ /dev/null @@ -1,21 +0,0 @@ -function _classPrivateFieldSet(receiver, privateMap, value) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to set private field on non-instance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} - -module.exports = _classPrivateFieldSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateMethodGet.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateMethodGet.js deleted file mode 100644 index a3432b9a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateMethodGet.js +++ /dev/null @@ -1,9 +0,0 @@ -function _classPrivateMethodGet(receiver, privateSet, fn) { - if (!privateSet.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - - return fn; -} - -module.exports = _classPrivateMethodGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classPrivateMethodSet.js b/node_modules/@babel/runtime-corejs3/helpers/classPrivateMethodSet.js deleted file mode 100644 index 38472848..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classPrivateMethodSet.js +++ /dev/null @@ -1,5 +0,0 @@ -function _classPrivateMethodSet() { - throw new TypeError("attempted to reassign private method"); -} - -module.exports = _classPrivateMethodSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateFieldSpecGet.js b/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateFieldSpecGet.js deleted file mode 100644 index c2b67664..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateFieldSpecGet.js +++ /dev/null @@ -1,13 +0,0 @@ -function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} - -module.exports = _classStaticPrivateFieldSpecGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateFieldSpecSet.js b/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateFieldSpecSet.js deleted file mode 100644 index 8799fbb3..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateFieldSpecSet.js +++ /dev/null @@ -1,19 +0,0 @@ -function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} - -module.exports = _classStaticPrivateFieldSpecSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateMethodGet.js b/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateMethodGet.js deleted file mode 100644 index f9b0d003..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateMethodGet.js +++ /dev/null @@ -1,9 +0,0 @@ -function _classStaticPrivateMethodGet(receiver, classConstructor, method) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - return method; -} - -module.exports = _classStaticPrivateMethodGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateMethodSet.js b/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateMethodSet.js deleted file mode 100644 index 89042da5..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/classStaticPrivateMethodSet.js +++ /dev/null @@ -1,5 +0,0 @@ -function _classStaticPrivateMethodSet() { - throw new TypeError("attempted to set read only static private field"); -} - -module.exports = _classStaticPrivateMethodSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/construct.js b/node_modules/@babel/runtime-corejs3/helpers/construct.js deleted file mode 100644 index 1869f24f..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/construct.js +++ /dev/null @@ -1,39 +0,0 @@ -var _bindInstanceProperty = require("../core-js/instance/bind"); - -var _Reflect$construct = require("../core-js/reflect/construct"); - -var setPrototypeOf = require("./setPrototypeOf"); - -function isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !_Reflect$construct) return false; - if (_Reflect$construct.sham) return false; - if (typeof Proxy === "function") return true; - - try { - Date.prototype.toString.call(_Reflect$construct(Date, [], function () {})); - return true; - } catch (e) { - return false; - } -} - -function _construct(Parent, args, Class) { - if (isNativeReflectConstruct()) { - module.exports = _construct = _Reflect$construct; - } else { - module.exports = _construct = function _construct(Parent, args, Class) { - var a = [null]; - a.push.apply(a, args); - - var Constructor = _bindInstanceProperty(Function).apply(Parent, a); - - var instance = new Constructor(); - if (Class) setPrototypeOf(instance, Class.prototype); - return instance; - }; - } - - return _construct.apply(null, arguments); -} - -module.exports = _construct; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/createClass.js b/node_modules/@babel/runtime-corejs3/helpers/createClass.js deleted file mode 100644 index c04c910e..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/createClass.js +++ /dev/null @@ -1,20 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - - _Object$defineProperty(target, descriptor.key, descriptor); - } -} - -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - return Constructor; -} - -module.exports = _createClass; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/decorate.js b/node_modules/@babel/runtime-corejs3/helpers/decorate.js deleted file mode 100644 index 1b98c4e0..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/decorate.js +++ /dev/null @@ -1,433 +0,0 @@ -var _findInstanceProperty = require("../core-js/instance/find"); - -var _Object$assign = require("../core-js/object/assign"); - -var _Symbol$toStringTag = require("../core-js/symbol/to-string-tag"); - -var _spliceInstanceProperty = require("../core-js/instance/splice"); - -var _indexOfInstanceProperty = require("../core-js/instance/index-of"); - -var _Object$defineProperty = require("../core-js/object/define-property"); - -var _forEachInstanceProperty = require("../core-js/instance/for-each"); - -var _mapInstanceProperty = require("../core-js/instance/map"); - -var toArray = require("./toArray"); - -var toPropertyKey = require("./toPropertyKey"); - -function _decorate(decorators, factory, superClass, mixins) { - var _context; - - var api = _getDecoratorsApi(); - - if (mixins) { - for (var i = 0; i < mixins.length; i++) { - api = mixins[i](api); - } - } - - var r = factory(function initialize(O) { - api.initializeInstanceElements(O, decorated.elements); - }, superClass); - var decorated = api.decorateClass(_coalesceClassElements(_mapInstanceProperty(_context = r.d).call(_context, _createElementDescriptor)), decorators); - api.initializeClassElements(r.F, decorated.elements); - return api.runClassFinishers(r.F, decorated.finishers); -} - -function _getDecoratorsApi() { - _getDecoratorsApi = function _getDecoratorsApi() { - return api; - }; - - var api = { - elementsDefinitionOrder: [["method"], ["field"]], - initializeInstanceElements: function initializeInstanceElements(O, elements) { - var _context2; - - _forEachInstanceProperty(_context2 = ["method", "field"]).call(_context2, function (kind) { - _forEachInstanceProperty(elements).call(elements, function (element) { - if (element.kind === kind && element.placement === "own") { - this.defineClassElement(O, element); - } - }, this); - }, this); - }, - initializeClassElements: function initializeClassElements(F, elements) { - var _context3; - - var proto = F.prototype; - - _forEachInstanceProperty(_context3 = ["method", "field"]).call(_context3, function (kind) { - _forEachInstanceProperty(elements).call(elements, function (element) { - var placement = element.placement; - - if (element.kind === kind && (placement === "static" || placement === "prototype")) { - var receiver = placement === "static" ? F : proto; - this.defineClassElement(receiver, element); - } - }, this); - }, this); - }, - defineClassElement: function defineClassElement(receiver, element) { - var descriptor = element.descriptor; - - if (element.kind === "field") { - var initializer = element.initializer; - descriptor = { - enumerable: descriptor.enumerable, - writable: descriptor.writable, - configurable: descriptor.configurable, - value: initializer === void 0 ? void 0 : initializer.call(receiver) - }; - } - - _Object$defineProperty(receiver, element.key, descriptor); - }, - decorateClass: function decorateClass(elements, decorators) { - var newElements = []; - var finishers = []; - var placements = { - "static": [], - prototype: [], - own: [] - }; - - _forEachInstanceProperty(elements).call(elements, function (element) { - this.addElementPlacement(element, placements); - }, this); - - _forEachInstanceProperty(elements).call(elements, function (element) { - if (!_hasDecorators(element)) return newElements.push(element); - var elementFinishersExtras = this.decorateElement(element, placements); - newElements.push(elementFinishersExtras.element); - newElements.push.apply(newElements, elementFinishersExtras.extras); - finishers.push.apply(finishers, elementFinishersExtras.finishers); - }, this); - - if (!decorators) { - return { - elements: newElements, - finishers: finishers - }; - } - - var result = this.decorateConstructor(newElements, decorators); - finishers.push.apply(finishers, result.finishers); - result.finishers = finishers; - return result; - }, - addElementPlacement: function addElementPlacement(element, placements, silent) { - var keys = placements[element.placement]; - - if (!silent && _indexOfInstanceProperty(keys).call(keys, element.key) !== -1) { - throw new TypeError("Duplicated element (" + element.key + ")"); - } - - keys.push(element.key); - }, - decorateElement: function decorateElement(element, placements) { - var extras = []; - var finishers = []; - - for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) { - var keys = placements[element.placement]; - - _spliceInstanceProperty(keys).call(keys, _indexOfInstanceProperty(keys).call(keys, element.key), 1); - - var elementObject = this.fromElementDescriptor(element); - var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject); - element = elementFinisherExtras.element; - this.addElementPlacement(element, placements); - - if (elementFinisherExtras.finisher) { - finishers.push(elementFinisherExtras.finisher); - } - - var newExtras = elementFinisherExtras.extras; - - if (newExtras) { - for (var j = 0; j < newExtras.length; j++) { - this.addElementPlacement(newExtras[j], placements); - } - - extras.push.apply(extras, newExtras); - } - } - - return { - element: element, - finishers: finishers, - extras: extras - }; - }, - decorateConstructor: function decorateConstructor(elements, decorators) { - var finishers = []; - - for (var i = decorators.length - 1; i >= 0; i--) { - var obj = this.fromClassDescriptor(elements); - var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj); - - if (elementsAndFinisher.finisher !== undefined) { - finishers.push(elementsAndFinisher.finisher); - } - - if (elementsAndFinisher.elements !== undefined) { - elements = elementsAndFinisher.elements; - - for (var j = 0; j < elements.length - 1; j++) { - for (var k = j + 1; k < elements.length; k++) { - if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) { - throw new TypeError("Duplicated element (" + elements[j].key + ")"); - } - } - } - } - } - - return { - elements: elements, - finishers: finishers - }; - }, - fromElementDescriptor: function fromElementDescriptor(element) { - var obj = { - kind: element.kind, - key: element.key, - placement: element.placement, - descriptor: element.descriptor - }; - var desc = { - value: "Descriptor", - configurable: true - }; - - _Object$defineProperty(obj, _Symbol$toStringTag, desc); - - if (element.kind === "field") obj.initializer = element.initializer; - return obj; - }, - toElementDescriptors: function toElementDescriptors(elementObjects) { - var _context4; - - if (elementObjects === undefined) return; - return _mapInstanceProperty(_context4 = toArray(elementObjects)).call(_context4, function (elementObject) { - var element = this.toElementDescriptor(elementObject); - this.disallowProperty(elementObject, "finisher", "An element descriptor"); - this.disallowProperty(elementObject, "extras", "An element descriptor"); - return element; - }, this); - }, - toElementDescriptor: function toElementDescriptor(elementObject) { - var kind = String(elementObject.kind); - - if (kind !== "method" && kind !== "field") { - throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"'); - } - - var key = toPropertyKey(elementObject.key); - var placement = String(elementObject.placement); - - if (placement !== "static" && placement !== "prototype" && placement !== "own") { - throw new TypeError('An element descriptor\'s .placement property must be one of "static",' + ' "prototype" or "own", but a decorator created an element descriptor' + ' with .placement "' + placement + '"'); - } - - var descriptor = elementObject.descriptor; - this.disallowProperty(elementObject, "elements", "An element descriptor"); - var element = { - kind: kind, - key: key, - placement: placement, - descriptor: _Object$assign({}, descriptor) - }; - - if (kind !== "field") { - this.disallowProperty(elementObject, "initializer", "A method descriptor"); - } else { - this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor"); - element.initializer = elementObject.initializer; - } - - return element; - }, - toElementFinisherExtras: function toElementFinisherExtras(elementObject) { - var element = this.toElementDescriptor(elementObject); - - var finisher = _optionalCallableProperty(elementObject, "finisher"); - - var extras = this.toElementDescriptors(elementObject.extras); - return { - element: element, - finisher: finisher, - extras: extras - }; - }, - fromClassDescriptor: function fromClassDescriptor(elements) { - var obj = { - kind: "class", - elements: _mapInstanceProperty(elements).call(elements, this.fromElementDescriptor, this) - }; - var desc = { - value: "Descriptor", - configurable: true - }; - - _Object$defineProperty(obj, _Symbol$toStringTag, desc); - - return obj; - }, - toClassDescriptor: function toClassDescriptor(obj) { - var kind = String(obj.kind); - - if (kind !== "class") { - throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"'); - } - - this.disallowProperty(obj, "key", "A class descriptor"); - this.disallowProperty(obj, "placement", "A class descriptor"); - this.disallowProperty(obj, "descriptor", "A class descriptor"); - this.disallowProperty(obj, "initializer", "A class descriptor"); - this.disallowProperty(obj, "extras", "A class descriptor"); - - var finisher = _optionalCallableProperty(obj, "finisher"); - - var elements = this.toElementDescriptors(obj.elements); - return { - elements: elements, - finisher: finisher - }; - }, - runClassFinishers: function runClassFinishers(constructor, finishers) { - for (var i = 0; i < finishers.length; i++) { - var newConstructor = (0, finishers[i])(constructor); - - if (newConstructor !== undefined) { - if (typeof newConstructor !== "function") { - throw new TypeError("Finishers must return a constructor."); - } - - constructor = newConstructor; - } - } - - return constructor; - }, - disallowProperty: function disallowProperty(obj, name, objectType) { - if (obj[name] !== undefined) { - throw new TypeError(objectType + " can't have a ." + name + " property."); - } - } - }; - return api; -} - -function _createElementDescriptor(def) { - var key = toPropertyKey(def.key); - var descriptor; - - if (def.kind === "method") { - descriptor = { - value: def.value, - writable: true, - configurable: true, - enumerable: false - }; - } else if (def.kind === "get") { - descriptor = { - get: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "set") { - descriptor = { - set: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "field") { - descriptor = { - configurable: true, - writable: true, - enumerable: true - }; - } - - var element = { - kind: def.kind === "field" ? "field" : "method", - key: key, - placement: def["static"] ? "static" : def.kind === "field" ? "own" : "prototype", - descriptor: descriptor - }; - if (def.decorators) element.decorators = def.decorators; - if (def.kind === "field") element.initializer = def.value; - return element; -} - -function _coalesceGetterSetter(element, other) { - if (element.descriptor.get !== undefined) { - other.descriptor.get = element.descriptor.get; - } else { - other.descriptor.set = element.descriptor.set; - } -} - -function _coalesceClassElements(elements) { - var newElements = []; - - var isSameElement = function isSameElement(other) { - return other.kind === "method" && other.key === element.key && other.placement === element.placement; - }; - - for (var i = 0; i < elements.length; i++) { - var element = elements[i]; - var other; - - if (element.kind === "method" && (other = _findInstanceProperty(newElements).call(newElements, isSameElement))) { - if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) { - if (_hasDecorators(element) || _hasDecorators(other)) { - throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated."); - } - - other.descriptor = element.descriptor; - } else { - if (_hasDecorators(element)) { - if (_hasDecorators(other)) { - throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ")."); - } - - other.decorators = element.decorators; - } - - _coalesceGetterSetter(element, other); - } - } else { - newElements.push(element); - } - } - - return newElements; -} - -function _hasDecorators(element) { - return element.decorators && element.decorators.length; -} - -function _isDataDescriptor(desc) { - return desc !== undefined && !(desc.value === undefined && desc.writable === undefined); -} - -function _optionalCallableProperty(obj, name) { - var value = obj[name]; - - if (value !== undefined && typeof value !== "function") { - throw new TypeError("Expected '" + name + "' to be a function"); - } - - return value; -} - -module.exports = _decorate; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/defaults.js b/node_modules/@babel/runtime-corejs3/helpers/defaults.js deleted file mode 100644 index 77c4b85a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/defaults.js +++ /dev/null @@ -1,23 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -var _Object$getOwnPropertyDescriptor = require("../core-js/object/get-own-property-descriptor"); - -var _Object$getOwnPropertyNames = require("../core-js/object/get-own-property-names"); - -function _defaults(obj, defaults) { - var keys = _Object$getOwnPropertyNames(defaults); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - - var value = _Object$getOwnPropertyDescriptor(defaults, key); - - if (value && value.configurable && obj[key] === undefined) { - _Object$defineProperty(obj, key, value); - } - } - - return obj; -} - -module.exports = _defaults; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/defineEnumerableProperties.js b/node_modules/@babel/runtime-corejs3/helpers/defineEnumerableProperties.js deleted file mode 100644 index 0ef3a34a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/defineEnumerableProperties.js +++ /dev/null @@ -1,30 +0,0 @@ -var _Object$getOwnPropertySymbols = require("../core-js/object/get-own-property-symbols"); - -var _Object$defineProperty = require("../core-js/object/define-property"); - -function _defineEnumerableProperties(obj, descs) { - for (var key in descs) { - var desc = descs[key]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - - _Object$defineProperty(obj, key, desc); - } - - if (_Object$getOwnPropertySymbols) { - var objectSymbols = _Object$getOwnPropertySymbols(descs); - - for (var i = 0; i < objectSymbols.length; i++) { - var sym = objectSymbols[i]; - var desc = descs[sym]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - - _Object$defineProperty(obj, sym, desc); - } - } - - return obj; -} - -module.exports = _defineEnumerableProperties; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/defineProperty.js b/node_modules/@babel/runtime-corejs3/helpers/defineProperty.js deleted file mode 100644 index b08c5e85..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/defineProperty.js +++ /dev/null @@ -1,18 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -function _defineProperty(obj, key, value) { - if (key in obj) { - _Object$defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -module.exports = _defineProperty; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/AsyncGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/esm/AsyncGenerator.js deleted file mode 100644 index d37824f9..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/AsyncGenerator.js +++ /dev/null @@ -1,101 +0,0 @@ -import _Symbol$asyncIterator from "../../core-js/symbol/async-iterator"; -import _Symbol from "../../core-js/symbol"; -import _Promise from "../../core-js/promise"; -import AwaitValue from "./AwaitValue"; -export default function AsyncGenerator(gen) { - var front, back; - - function send(key, arg) { - return new _Promise(function (resolve, reject) { - var request = { - key: key, - arg: arg, - resolve: resolve, - reject: reject, - next: null - }; - - if (back) { - back = back.next = request; - } else { - front = back = request; - resume(key, arg); - } - }); - } - - function resume(key, arg) { - try { - var result = gen[key](arg); - var value = result.value; - var wrappedAwait = value instanceof AwaitValue; - - _Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) { - if (wrappedAwait) { - resume(key === "return" ? "return" : "next", arg); - return; - } - - settle(result.done ? "return" : "normal", arg); - }, function (err) { - resume("throw", err); - }); - } catch (err) { - settle("throw", err); - } - } - - function settle(type, value) { - switch (type) { - case "return": - front.resolve({ - value: value, - done: true - }); - break; - - case "throw": - front.reject(value); - break; - - default: - front.resolve({ - value: value, - done: false - }); - break; - } - - front = front.next; - - if (front) { - resume(front.key, front.arg); - } else { - back = null; - } - } - - this._invoke = send; - - if (typeof gen["return"] !== "function") { - this["return"] = undefined; - } -} - -if (typeof _Symbol === "function" && _Symbol$asyncIterator) { - AsyncGenerator.prototype[_Symbol$asyncIterator] = function () { - return this; - }; -} - -AsyncGenerator.prototype.next = function (arg) { - return this._invoke("next", arg); -}; - -AsyncGenerator.prototype["throw"] = function (arg) { - return this._invoke("throw", arg); -}; - -AsyncGenerator.prototype["return"] = function (arg) { - return this._invoke("return", arg); -}; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/AwaitValue.js b/node_modules/@babel/runtime-corejs3/helpers/esm/AwaitValue.js deleted file mode 100644 index 5237e18f..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/AwaitValue.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _AwaitValue(value) { - this.wrapped = value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/applyDecoratedDescriptor.js b/node_modules/@babel/runtime-corejs3/helpers/esm/applyDecoratedDescriptor.js deleted file mode 100644 index 52f9e4e0..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/applyDecoratedDescriptor.js +++ /dev/null @@ -1,39 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; -import _sliceInstanceProperty from "../../core-js/instance/slice"; -import _reverseInstanceProperty from "../../core-js/instance/reverse"; -import _reduceInstanceProperty from "../../core-js/instance/reduce"; -import _Object$keys from "../../core-js/object/keys"; -import _forEachInstanceProperty from "../../core-js/instance/for-each"; -export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { - var _context, _context2, _context3; - - var desc = {}; - - _forEachInstanceProperty(_context = _Object$keys(descriptor)).call(_context, function (key) { - desc[key] = descriptor[key]; - }); - - desc.enumerable = !!desc.enumerable; - desc.configurable = !!desc.configurable; - - if ('value' in desc || desc.initializer) { - desc.writable = true; - } - - desc = _reduceInstanceProperty(_context2 = _reverseInstanceProperty(_context3 = _sliceInstanceProperty(decorators).call(decorators)).call(_context3)).call(_context2, function (desc, decorator) { - return decorator(target, property, desc) || desc; - }, desc); - - if (context && desc.initializer !== void 0) { - desc.value = desc.initializer ? desc.initializer.call(context) : void 0; - desc.initializer = undefined; - } - - if (desc.initializer === void 0) { - _Object$defineProperty(target, property, desc); - - desc = null; - } - - return desc; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithHoles.js b/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithHoles.js deleted file mode 100644 index 2c3a0871..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithHoles.js +++ /dev/null @@ -1,4 +0,0 @@ -import _Array$isArray from "../../core-js/array/is-array"; -export default function _arrayWithHoles(arr) { - if (_Array$isArray(arr)) return arr; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithoutHoles.js b/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithoutHoles.js deleted file mode 100644 index 5f86abcb..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithoutHoles.js +++ /dev/null @@ -1,10 +0,0 @@ -import _Array$isArray from "../../core-js/array/is-array"; -export default function _arrayWithoutHoles(arr) { - if (_Array$isArray(arr)) { - for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { - arr2[i] = arr[i]; - } - - return arr2; - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/assertThisInitialized.js b/node_modules/@babel/runtime-corejs3/helpers/esm/assertThisInitialized.js deleted file mode 100644 index bbf849ca..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/assertThisInitialized.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - - return self; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/asyncGeneratorDelegate.js b/node_modules/@babel/runtime-corejs3/helpers/esm/asyncGeneratorDelegate.js deleted file mode 100644 index 13088ef0..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/asyncGeneratorDelegate.js +++ /dev/null @@ -1,59 +0,0 @@ -import _Symbol$iterator from "../../core-js/symbol/iterator"; -import _Symbol from "../../core-js/symbol"; -import _Promise from "../../core-js/promise"; -export default function _asyncGeneratorDelegate(inner, awaitWrap) { - var iter = {}, - waiting = false; - - function pump(key, value) { - waiting = true; - value = new _Promise(function (resolve) { - resolve(inner[key](value)); - }); - return { - done: false, - value: awaitWrap(value) - }; - } - - ; - - if (typeof _Symbol === "function" && _Symbol$iterator) { - iter[_Symbol$iterator] = function () { - return this; - }; - } - - iter.next = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("next", value); - }; - - if (typeof inner["throw"] === "function") { - iter["throw"] = function (value) { - if (waiting) { - waiting = false; - throw value; - } - - return pump("throw", value); - }; - } - - if (typeof inner["return"] === "function") { - iter["return"] = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("return", value); - }; - } - - return iter; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/asyncIterator.js b/node_modules/@babel/runtime-corejs3/helpers/esm/asyncIterator.js deleted file mode 100644 index b2d65bf9..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/asyncIterator.js +++ /dev/null @@ -1,21 +0,0 @@ -import _getIteratorMethod from "../../core-js/get-iterator-method"; -import _Symbol$iterator from "../../core-js/symbol/iterator"; -import _Symbol$asyncIterator from "../../core-js/symbol/async-iterator"; -import _Symbol from "../../core-js/symbol"; -export default function _asyncIterator(iterable) { - var method; - - if (typeof _Symbol !== "undefined") { - if (_Symbol$asyncIterator) { - method = iterable[_Symbol$asyncIterator]; - if (method != null) return method.call(iterable); - } - - if (_Symbol$iterator) { - method = _getIteratorMethod(iterable); - if (method != null) return method.call(iterable); - } - } - - throw new TypeError("Object is not async iterable"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/asyncToGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/esm/asyncToGenerator.js deleted file mode 100644 index c597faa9..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/asyncToGenerator.js +++ /dev/null @@ -1,37 +0,0 @@ -import _Promise from "../../core-js/promise"; - -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); - } -} - -export default 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); - }); - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/awaitAsyncGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/esm/awaitAsyncGenerator.js deleted file mode 100644 index 462f99cd..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/awaitAsyncGenerator.js +++ /dev/null @@ -1,4 +0,0 @@ -import AwaitValue from "./AwaitValue"; -export default function _awaitAsyncGenerator(value) { - return new AwaitValue(value); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classCallCheck.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classCallCheck.js deleted file mode 100644 index 2f1738a3..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classCallCheck.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classNameTDZError.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classNameTDZError.js deleted file mode 100644 index f7b6dd57..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classNameTDZError.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _classNameTDZError(name) { - throw new Error("Class \"" + name + "\" cannot be referenced in computed property keys."); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldDestructureSet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldDestructureSet.js deleted file mode 100644 index 1f265bc8..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldDestructureSet.js +++ /dev/null @@ -1,26 +0,0 @@ -export default function _classPrivateFieldDestructureSet(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - - var descriptor = privateMap.get(receiver); - - if (descriptor.set) { - if (!("__destrObj" in descriptor)) { - descriptor.__destrObj = { - set value(v) { - descriptor.set.call(receiver, v); - } - - }; - } - - return descriptor.__destrObj; - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - return descriptor; - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldGet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldGet.js deleted file mode 100644 index f8287f11..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldGet.js +++ /dev/null @@ -1,13 +0,0 @@ -export default function _classPrivateFieldGet(receiver, privateMap) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to get private field on non-instance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldLooseBase.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldLooseBase.js deleted file mode 100644 index 5b10916f..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldLooseBase.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _classPrivateFieldBase(receiver, privateKey) { - if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) { - throw new TypeError("attempted to use private field on non-instance"); - } - - return receiver; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldLooseKey.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldLooseKey.js deleted file mode 100644 index 5b7e5ac0..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldLooseKey.js +++ /dev/null @@ -1,4 +0,0 @@ -var id = 0; -export default function _classPrivateFieldKey(name) { - return "__private_" + id++ + "_" + name; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldSet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldSet.js deleted file mode 100644 index fb4e5d2b..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateFieldSet.js +++ /dev/null @@ -1,19 +0,0 @@ -export default function _classPrivateFieldSet(receiver, privateMap, value) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to set private field on non-instance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateMethodGet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateMethodGet.js deleted file mode 100644 index 38b9d584..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateMethodGet.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _classPrivateMethodGet(receiver, privateSet, fn) { - if (!privateSet.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - - return fn; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateMethodSet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateMethodSet.js deleted file mode 100644 index 2bbaf3a7..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classPrivateMethodSet.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _classPrivateMethodSet() { - throw new TypeError("attempted to reassign private method"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateFieldSpecGet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateFieldSpecGet.js deleted file mode 100644 index 75a9b7ce..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateFieldSpecGet.js +++ /dev/null @@ -1,11 +0,0 @@ -export default function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateFieldSpecSet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateFieldSpecSet.js deleted file mode 100644 index 163279f2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateFieldSpecSet.js +++ /dev/null @@ -1,17 +0,0 @@ -export default function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateMethodGet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateMethodGet.js deleted file mode 100644 index da9b1e57..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateMethodGet.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _classStaticPrivateMethodGet(receiver, classConstructor, method) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - return method; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateMethodSet.js b/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateMethodSet.js deleted file mode 100644 index d5ab60a9..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/classStaticPrivateMethodSet.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _classStaticPrivateMethodSet() { - throw new TypeError("attempted to set read only static private field"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/construct.js b/node_modules/@babel/runtime-corejs3/helpers/esm/construct.js deleted file mode 100644 index 213320e5..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/construct.js +++ /dev/null @@ -1,35 +0,0 @@ -import _bindInstanceProperty from "../../core-js/instance/bind"; -import _Reflect$construct from "../../core-js/reflect/construct"; -import setPrototypeOf from "./setPrototypeOf"; - -function isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !_Reflect$construct) return false; - if (_Reflect$construct.sham) return false; - if (typeof Proxy === "function") return true; - - try { - Date.prototype.toString.call(_Reflect$construct(Date, [], function () {})); - return true; - } catch (e) { - return false; - } -} - -export default function _construct(Parent, args, Class) { - if (isNativeReflectConstruct()) { - _construct = _Reflect$construct; - } else { - _construct = function _construct(Parent, args, Class) { - var a = [null]; - a.push.apply(a, args); - - var Constructor = _bindInstanceProperty(Function).apply(Parent, a); - - var instance = new Constructor(); - if (Class) setPrototypeOf(instance, Class.prototype); - return instance; - }; - } - - return _construct.apply(null, arguments); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/createClass.js b/node_modules/@babel/runtime-corejs3/helpers/esm/createClass.js deleted file mode 100644 index 8a6ab384..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/createClass.js +++ /dev/null @@ -1,18 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; - -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - - _Object$defineProperty(target, descriptor.key, descriptor); - } -} - -export default function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - return Constructor; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/decorate.js b/node_modules/@babel/runtime-corejs3/helpers/esm/decorate.js deleted file mode 100644 index b91bd495..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/decorate.js +++ /dev/null @@ -1,421 +0,0 @@ -import _findInstanceProperty from "../../core-js/instance/find"; -import _Object$assign from "../../core-js/object/assign"; -import _Symbol$toStringTag from "../../core-js/symbol/to-string-tag"; -import _spliceInstanceProperty from "../../core-js/instance/splice"; -import _indexOfInstanceProperty from "../../core-js/instance/index-of"; -import _Object$defineProperty from "../../core-js/object/define-property"; -import _forEachInstanceProperty from "../../core-js/instance/for-each"; -import _mapInstanceProperty from "../../core-js/instance/map"; -import toArray from "./toArray"; -import toPropertyKey from "./toPropertyKey"; -export default function _decorate(decorators, factory, superClass, mixins) { - var _context; - - var api = _getDecoratorsApi(); - - if (mixins) { - for (var i = 0; i < mixins.length; i++) { - api = mixins[i](api); - } - } - - var r = factory(function initialize(O) { - api.initializeInstanceElements(O, decorated.elements); - }, superClass); - var decorated = api.decorateClass(_coalesceClassElements(_mapInstanceProperty(_context = r.d).call(_context, _createElementDescriptor)), decorators); - api.initializeClassElements(r.F, decorated.elements); - return api.runClassFinishers(r.F, decorated.finishers); -} - -function _getDecoratorsApi() { - _getDecoratorsApi = function _getDecoratorsApi() { - return api; - }; - - var api = { - elementsDefinitionOrder: [["method"], ["field"]], - initializeInstanceElements: function initializeInstanceElements(O, elements) { - var _context2; - - _forEachInstanceProperty(_context2 = ["method", "field"]).call(_context2, function (kind) { - _forEachInstanceProperty(elements).call(elements, function (element) { - if (element.kind === kind && element.placement === "own") { - this.defineClassElement(O, element); - } - }, this); - }, this); - }, - initializeClassElements: function initializeClassElements(F, elements) { - var _context3; - - var proto = F.prototype; - - _forEachInstanceProperty(_context3 = ["method", "field"]).call(_context3, function (kind) { - _forEachInstanceProperty(elements).call(elements, function (element) { - var placement = element.placement; - - if (element.kind === kind && (placement === "static" || placement === "prototype")) { - var receiver = placement === "static" ? F : proto; - this.defineClassElement(receiver, element); - } - }, this); - }, this); - }, - defineClassElement: function defineClassElement(receiver, element) { - var descriptor = element.descriptor; - - if (element.kind === "field") { - var initializer = element.initializer; - descriptor = { - enumerable: descriptor.enumerable, - writable: descriptor.writable, - configurable: descriptor.configurable, - value: initializer === void 0 ? void 0 : initializer.call(receiver) - }; - } - - _Object$defineProperty(receiver, element.key, descriptor); - }, - decorateClass: function decorateClass(elements, decorators) { - var newElements = []; - var finishers = []; - var placements = { - "static": [], - prototype: [], - own: [] - }; - - _forEachInstanceProperty(elements).call(elements, function (element) { - this.addElementPlacement(element, placements); - }, this); - - _forEachInstanceProperty(elements).call(elements, function (element) { - if (!_hasDecorators(element)) return newElements.push(element); - var elementFinishersExtras = this.decorateElement(element, placements); - newElements.push(elementFinishersExtras.element); - newElements.push.apply(newElements, elementFinishersExtras.extras); - finishers.push.apply(finishers, elementFinishersExtras.finishers); - }, this); - - if (!decorators) { - return { - elements: newElements, - finishers: finishers - }; - } - - var result = this.decorateConstructor(newElements, decorators); - finishers.push.apply(finishers, result.finishers); - result.finishers = finishers; - return result; - }, - addElementPlacement: function addElementPlacement(element, placements, silent) { - var keys = placements[element.placement]; - - if (!silent && _indexOfInstanceProperty(keys).call(keys, element.key) !== -1) { - throw new TypeError("Duplicated element (" + element.key + ")"); - } - - keys.push(element.key); - }, - decorateElement: function decorateElement(element, placements) { - var extras = []; - var finishers = []; - - for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) { - var keys = placements[element.placement]; - - _spliceInstanceProperty(keys).call(keys, _indexOfInstanceProperty(keys).call(keys, element.key), 1); - - var elementObject = this.fromElementDescriptor(element); - var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject); - element = elementFinisherExtras.element; - this.addElementPlacement(element, placements); - - if (elementFinisherExtras.finisher) { - finishers.push(elementFinisherExtras.finisher); - } - - var newExtras = elementFinisherExtras.extras; - - if (newExtras) { - for (var j = 0; j < newExtras.length; j++) { - this.addElementPlacement(newExtras[j], placements); - } - - extras.push.apply(extras, newExtras); - } - } - - return { - element: element, - finishers: finishers, - extras: extras - }; - }, - decorateConstructor: function decorateConstructor(elements, decorators) { - var finishers = []; - - for (var i = decorators.length - 1; i >= 0; i--) { - var obj = this.fromClassDescriptor(elements); - var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj); - - if (elementsAndFinisher.finisher !== undefined) { - finishers.push(elementsAndFinisher.finisher); - } - - if (elementsAndFinisher.elements !== undefined) { - elements = elementsAndFinisher.elements; - - for (var j = 0; j < elements.length - 1; j++) { - for (var k = j + 1; k < elements.length; k++) { - if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) { - throw new TypeError("Duplicated element (" + elements[j].key + ")"); - } - } - } - } - } - - return { - elements: elements, - finishers: finishers - }; - }, - fromElementDescriptor: function fromElementDescriptor(element) { - var obj = { - kind: element.kind, - key: element.key, - placement: element.placement, - descriptor: element.descriptor - }; - var desc = { - value: "Descriptor", - configurable: true - }; - - _Object$defineProperty(obj, _Symbol$toStringTag, desc); - - if (element.kind === "field") obj.initializer = element.initializer; - return obj; - }, - toElementDescriptors: function toElementDescriptors(elementObjects) { - var _context4; - - if (elementObjects === undefined) return; - return _mapInstanceProperty(_context4 = toArray(elementObjects)).call(_context4, function (elementObject) { - var element = this.toElementDescriptor(elementObject); - this.disallowProperty(elementObject, "finisher", "An element descriptor"); - this.disallowProperty(elementObject, "extras", "An element descriptor"); - return element; - }, this); - }, - toElementDescriptor: function toElementDescriptor(elementObject) { - var kind = String(elementObject.kind); - - if (kind !== "method" && kind !== "field") { - throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"'); - } - - var key = toPropertyKey(elementObject.key); - var placement = String(elementObject.placement); - - if (placement !== "static" && placement !== "prototype" && placement !== "own") { - throw new TypeError('An element descriptor\'s .placement property must be one of "static",' + ' "prototype" or "own", but a decorator created an element descriptor' + ' with .placement "' + placement + '"'); - } - - var descriptor = elementObject.descriptor; - this.disallowProperty(elementObject, "elements", "An element descriptor"); - var element = { - kind: kind, - key: key, - placement: placement, - descriptor: _Object$assign({}, descriptor) - }; - - if (kind !== "field") { - this.disallowProperty(elementObject, "initializer", "A method descriptor"); - } else { - this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor"); - element.initializer = elementObject.initializer; - } - - return element; - }, - toElementFinisherExtras: function toElementFinisherExtras(elementObject) { - var element = this.toElementDescriptor(elementObject); - - var finisher = _optionalCallableProperty(elementObject, "finisher"); - - var extras = this.toElementDescriptors(elementObject.extras); - return { - element: element, - finisher: finisher, - extras: extras - }; - }, - fromClassDescriptor: function fromClassDescriptor(elements) { - var obj = { - kind: "class", - elements: _mapInstanceProperty(elements).call(elements, this.fromElementDescriptor, this) - }; - var desc = { - value: "Descriptor", - configurable: true - }; - - _Object$defineProperty(obj, _Symbol$toStringTag, desc); - - return obj; - }, - toClassDescriptor: function toClassDescriptor(obj) { - var kind = String(obj.kind); - - if (kind !== "class") { - throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"'); - } - - this.disallowProperty(obj, "key", "A class descriptor"); - this.disallowProperty(obj, "placement", "A class descriptor"); - this.disallowProperty(obj, "descriptor", "A class descriptor"); - this.disallowProperty(obj, "initializer", "A class descriptor"); - this.disallowProperty(obj, "extras", "A class descriptor"); - - var finisher = _optionalCallableProperty(obj, "finisher"); - - var elements = this.toElementDescriptors(obj.elements); - return { - elements: elements, - finisher: finisher - }; - }, - runClassFinishers: function runClassFinishers(constructor, finishers) { - for (var i = 0; i < finishers.length; i++) { - var newConstructor = (0, finishers[i])(constructor); - - if (newConstructor !== undefined) { - if (typeof newConstructor !== "function") { - throw new TypeError("Finishers must return a constructor."); - } - - constructor = newConstructor; - } - } - - return constructor; - }, - disallowProperty: function disallowProperty(obj, name, objectType) { - if (obj[name] !== undefined) { - throw new TypeError(objectType + " can't have a ." + name + " property."); - } - } - }; - return api; -} - -function _createElementDescriptor(def) { - var key = toPropertyKey(def.key); - var descriptor; - - if (def.kind === "method") { - descriptor = { - value: def.value, - writable: true, - configurable: true, - enumerable: false - }; - } else if (def.kind === "get") { - descriptor = { - get: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "set") { - descriptor = { - set: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "field") { - descriptor = { - configurable: true, - writable: true, - enumerable: true - }; - } - - var element = { - kind: def.kind === "field" ? "field" : "method", - key: key, - placement: def["static"] ? "static" : def.kind === "field" ? "own" : "prototype", - descriptor: descriptor - }; - if (def.decorators) element.decorators = def.decorators; - if (def.kind === "field") element.initializer = def.value; - return element; -} - -function _coalesceGetterSetter(element, other) { - if (element.descriptor.get !== undefined) { - other.descriptor.get = element.descriptor.get; - } else { - other.descriptor.set = element.descriptor.set; - } -} - -function _coalesceClassElements(elements) { - var newElements = []; - - var isSameElement = function isSameElement(other) { - return other.kind === "method" && other.key === element.key && other.placement === element.placement; - }; - - for (var i = 0; i < elements.length; i++) { - var element = elements[i]; - var other; - - if (element.kind === "method" && (other = _findInstanceProperty(newElements).call(newElements, isSameElement))) { - if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) { - if (_hasDecorators(element) || _hasDecorators(other)) { - throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated."); - } - - other.descriptor = element.descriptor; - } else { - if (_hasDecorators(element)) { - if (_hasDecorators(other)) { - throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ")."); - } - - other.decorators = element.decorators; - } - - _coalesceGetterSetter(element, other); - } - } else { - newElements.push(element); - } - } - - return newElements; -} - -function _hasDecorators(element) { - return element.decorators && element.decorators.length; -} - -function _isDataDescriptor(desc) { - return desc !== undefined && !(desc.value === undefined && desc.writable === undefined); -} - -function _optionalCallableProperty(obj, name) { - var value = obj[name]; - - if (value !== undefined && typeof value !== "function") { - throw new TypeError("Expected '" + name + "' to be a function"); - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/defaults.js b/node_modules/@babel/runtime-corejs3/helpers/esm/defaults.js deleted file mode 100644 index 8f7670af..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/defaults.js +++ /dev/null @@ -1,18 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; -import _Object$getOwnPropertyDescriptor from "../../core-js/object/get-own-property-descriptor"; -import _Object$getOwnPropertyNames from "../../core-js/object/get-own-property-names"; -export default function _defaults(obj, defaults) { - var keys = _Object$getOwnPropertyNames(defaults); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - - var value = _Object$getOwnPropertyDescriptor(defaults, key); - - if (value && value.configurable && obj[key] === undefined) { - _Object$defineProperty(obj, key, value); - } - } - - return obj; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/defineEnumerableProperties.js b/node_modules/@babel/runtime-corejs3/helpers/esm/defineEnumerableProperties.js deleted file mode 100644 index 5c19c68a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/defineEnumerableProperties.js +++ /dev/null @@ -1,26 +0,0 @@ -import _Object$getOwnPropertySymbols from "../../core-js/object/get-own-property-symbols"; -import _Object$defineProperty from "../../core-js/object/define-property"; -export default function _defineEnumerableProperties(obj, descs) { - for (var key in descs) { - var desc = descs[key]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - - _Object$defineProperty(obj, key, desc); - } - - if (_Object$getOwnPropertySymbols) { - var objectSymbols = _Object$getOwnPropertySymbols(descs); - - for (var i = 0; i < objectSymbols.length; i++) { - var sym = objectSymbols[i]; - var desc = descs[sym]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - - _Object$defineProperty(obj, sym, desc); - } - } - - return obj; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/defineProperty.js b/node_modules/@babel/runtime-corejs3/helpers/esm/defineProperty.js deleted file mode 100644 index 54752abf..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/defineProperty.js +++ /dev/null @@ -1,15 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; -export default function _defineProperty(obj, key, value) { - if (key in obj) { - _Object$defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/extends.js b/node_modules/@babel/runtime-corejs3/helpers/esm/extends.js deleted file mode 100644 index ed3c050e..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/extends.js +++ /dev/null @@ -1,18 +0,0 @@ -import _Object$assign from "../../core-js/object/assign"; -export default function _extends() { - _extends = _Object$assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; - }; - - return _extends.apply(this, arguments); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/get.js b/node_modules/@babel/runtime-corejs3/helpers/esm/get.js deleted file mode 100644 index 7c30d6b2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/get.js +++ /dev/null @@ -1,23 +0,0 @@ -import _Object$getOwnPropertyDescriptor from "../../core-js/object/get-own-property-descriptor"; -import _Reflect$get from "../../core-js/reflect/get"; -import superPropBase from "./superPropBase"; -export default function _get(target, property, receiver) { - if (typeof Reflect !== "undefined" && _Reflect$get) { - _get = _Reflect$get; - } else { - _get = function _get(target, property, receiver) { - var base = superPropBase(target, property); - if (!base) return; - - var desc = _Object$getOwnPropertyDescriptor(base, property); - - if (desc.get) { - return desc.get.call(receiver); - } - - return desc.value; - }; - } - - return _get(target, property, receiver || target); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/getPrototypeOf.js b/node_modules/@babel/runtime-corejs3/helpers/esm/getPrototypeOf.js deleted file mode 100644 index 5fb6b561..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/getPrototypeOf.js +++ /dev/null @@ -1,8 +0,0 @@ -import _Object$getPrototypeOf from "../../core-js/object/get-prototype-of"; -import _Object$setPrototypeOf from "../../core-js/object/set-prototype-of"; -export default function _getPrototypeOf(o) { - _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) { - return o.__proto__ || _Object$getPrototypeOf(o); - }; - return _getPrototypeOf(o); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/inherits.js b/node_modules/@babel/runtime-corejs3/helpers/esm/inherits.js deleted file mode 100644 index a80b414c..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/inherits.js +++ /dev/null @@ -1,16 +0,0 @@ -import _Object$create from "../../core-js/object/create"; -import setPrototypeOf from "./setPrototypeOf"; -export default function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } - - subClass.prototype = _Object$create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - if (superClass) setPrototypeOf(subClass, superClass); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/inheritsLoose.js b/node_modules/@babel/runtime-corejs3/helpers/esm/inheritsLoose.js deleted file mode 100644 index a5fc29db..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/inheritsLoose.js +++ /dev/null @@ -1,6 +0,0 @@ -import _Object$create from "../../core-js/object/create"; -export default function _inheritsLoose(subClass, superClass) { - subClass.prototype = _Object$create(superClass.prototype); - subClass.prototype.constructor = subClass; - subClass.__proto__ = superClass; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/initializerDefineProperty.js b/node_modules/@babel/runtime-corejs3/helpers/esm/initializerDefineProperty.js deleted file mode 100644 index d43d6a47..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/initializerDefineProperty.js +++ /dev/null @@ -1,11 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; -export default function _initializerDefineProperty(target, property, descriptor, context) { - if (!descriptor) return; - - _Object$defineProperty(target, property, { - enumerable: descriptor.enumerable, - configurable: descriptor.configurable, - writable: descriptor.writable, - value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 - }); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/initializerWarningHelper.js b/node_modules/@babel/runtime-corejs3/helpers/esm/initializerWarningHelper.js deleted file mode 100644 index 30d518cf..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/initializerWarningHelper.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _initializerWarningHelper(descriptor, context) { - throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/instanceof.js b/node_modules/@babel/runtime-corejs3/helpers/esm/instanceof.js deleted file mode 100644 index 3769adce..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/instanceof.js +++ /dev/null @@ -1,9 +0,0 @@ -import _Symbol$hasInstance from "../../core-js/symbol/has-instance"; -import _Symbol from "../../core-js/symbol"; -export default function _instanceof(left, right) { - if (right != null && typeof _Symbol !== "undefined" && right[_Symbol$hasInstance]) { - return !!right[_Symbol$hasInstance](left); - } else { - return left instanceof right; - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/interopRequireDefault.js b/node_modules/@babel/runtime-corejs3/helpers/esm/interopRequireDefault.js deleted file mode 100644 index c2df7b64..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/interopRequireDefault.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - "default": obj - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/interopRequireWildcard.js b/node_modules/@babel/runtime-corejs3/helpers/esm/interopRequireWildcard.js deleted file mode 100644 index a51ab4dd..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/interopRequireWildcard.js +++ /dev/null @@ -1,56 +0,0 @@ -import _Object$getOwnPropertyDescriptor from "../../core-js/object/get-own-property-descriptor"; -import _Object$defineProperty from "../../core-js/object/define-property"; -import _typeof from "../../helpers/esm/typeof"; -import _WeakMap from "../../core-js/weak-map"; - -function _getRequireWildcardCache() { - if (typeof _WeakMap !== "function") return null; - var cache = new _WeakMap(); - - _getRequireWildcardCache = function _getRequireWildcardCache() { - return cache; - }; - - return cache; -} - -export 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; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/isNativeFunction.js b/node_modules/@babel/runtime-corejs3/helpers/esm/isNativeFunction.js deleted file mode 100644 index 102a53a8..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/isNativeFunction.js +++ /dev/null @@ -1,6 +0,0 @@ -import _indexOfInstanceProperty from "../../core-js/instance/index-of"; -export default function _isNativeFunction(fn) { - var _context; - - return _indexOfInstanceProperty(_context = Function.toString.call(fn)).call(_context, "[native code]") !== -1; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArray.js b/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArray.js deleted file mode 100644 index 9f20ecdb..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArray.js +++ /dev/null @@ -1,5 +0,0 @@ -import _Array$from from "../../core-js/array/from"; -import _isIterable from "../../core-js/is-iterable"; -export default function _iterableToArray(iter) { - if (_isIterable(Object(iter)) || Object.prototype.toString.call(iter) === "[object Arguments]") return _Array$from(iter); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimit.js b/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimit.js deleted file mode 100644 index 748cf7b7..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimit.js +++ /dev/null @@ -1,31 +0,0 @@ -import _getIterator from "../../core-js/get-iterator"; -import _isIterable from "../../core-js/is-iterable"; -export default function _iterableToArrayLimit(arr, i) { - if (!(_isIterable(Object(arr)) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - var _n = true; - var _d = false; - var _e = undefined; - - try { - for (var _i = _getIterator(arr), _s; !(_n = (_s = _i.next()).done); _n = true) { - _arr.push(_s.value); - - if (i && _arr.length === i) break; - } - } catch (err) { - _d = true; - _e = err; - } finally { - try { - if (!_n && _i["return"] != null) _i["return"](); - } finally { - if (_d) throw _e; - } - } - - return _arr; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimitLoose.js b/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimitLoose.js deleted file mode 100644 index 13b8ff9e..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimitLoose.js +++ /dev/null @@ -1,17 +0,0 @@ -import _getIterator from "../../core-js/get-iterator"; -import _isIterable from "../../core-js/is-iterable"; -export default function _iterableToArrayLimitLoose(arr, i) { - if (!(_isIterable(Object(arr)) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - - for (var _iterator = _getIterator(arr), _step; !(_step = _iterator.next()).done;) { - _arr.push(_step.value); - - if (i && _arr.length === i) break; - } - - return _arr; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/jsx.js b/node_modules/@babel/runtime-corejs3/helpers/esm/jsx.js deleted file mode 100644 index 6a6f5db0..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/jsx.js +++ /dev/null @@ -1,48 +0,0 @@ -import _Symbol$for from "../../core-js/symbol/for"; -import _Symbol from "../../core-js/symbol"; -var REACT_ELEMENT_TYPE; -export default function _createRawReactElement(type, props, key, children) { - if (!REACT_ELEMENT_TYPE) { - REACT_ELEMENT_TYPE = typeof _Symbol === "function" && _Symbol$for && _Symbol$for("react.element") || 0xeac7; - } - - var defaultProps = type && type.defaultProps; - var childrenLength = arguments.length - 3; - - if (!props && childrenLength !== 0) { - props = { - children: void 0 - }; - } - - if (childrenLength === 1) { - props.children = children; - } else if (childrenLength > 1) { - var childArray = new Array(childrenLength); - - for (var i = 0; i < childrenLength; i++) { - childArray[i] = arguments[i + 3]; - } - - props.children = childArray; - } - - if (props && defaultProps) { - for (var propName in defaultProps) { - if (props[propName] === void 0) { - props[propName] = defaultProps[propName]; - } - } - } else if (!props) { - props = defaultProps || {}; - } - - return { - $$typeof: REACT_ELEMENT_TYPE, - type: type, - key: key === undefined ? null : '' + key, - ref: null, - props: props, - _owner: null - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/newArrowCheck.js b/node_modules/@babel/runtime-corejs3/helpers/esm/newArrowCheck.js deleted file mode 100644 index d6cd8643..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/newArrowCheck.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _newArrowCheck(innerThis, boundThis) { - if (innerThis !== boundThis) { - throw new TypeError("Cannot instantiate an arrow function"); - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableRest.js b/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableRest.js deleted file mode 100644 index f94186da..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableRest.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableSpread.js b/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableSpread.js deleted file mode 100644 index d6bc738a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableSpread.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/objectDestructuringEmpty.js b/node_modules/@babel/runtime-corejs3/helpers/esm/objectDestructuringEmpty.js deleted file mode 100644 index 82b67d2c..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/objectDestructuringEmpty.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _objectDestructuringEmpty(obj) { - if (obj == null) throw new TypeError("Cannot destructure undefined"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread.js b/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread.js deleted file mode 100644 index 50bb9ca8..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread.js +++ /dev/null @@ -1,28 +0,0 @@ -import _forEachInstanceProperty from "../../core-js/instance/for-each"; -import _Object$getOwnPropertyDescriptor from "../../core-js/object/get-own-property-descriptor"; -import _filterInstanceProperty from "../../core-js/instance/filter"; -import _concatInstanceProperty from "../../core-js/instance/concat"; -import _Object$getOwnPropertySymbols from "../../core-js/object/get-own-property-symbols"; -import _Object$keys from "../../core-js/object/keys"; -import defineProperty from "./defineProperty"; -export default function _objectSpread(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? Object(arguments[i]) : {}; - - var ownKeys = _Object$keys(source); - - if (typeof _Object$getOwnPropertySymbols === 'function') { - var _context; - - ownKeys = _concatInstanceProperty(ownKeys).call(ownKeys, _filterInstanceProperty(_context = _Object$getOwnPropertySymbols(source)).call(_context, function (sym) { - return _Object$getOwnPropertyDescriptor(source, sym).enumerable; - })); - } - - _forEachInstanceProperty(ownKeys).call(ownKeys, function (key) { - defineProperty(target, key, source[key]); - }); - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread2.js b/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread2.js deleted file mode 100644 index e203c5e2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread2.js +++ /dev/null @@ -1,48 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; -import _Object$defineProperties from "../../core-js/object/define-properties"; -import _Object$getOwnPropertyDescriptors from "../../core-js/object/get-own-property-descriptors"; -import _forEachInstanceProperty from "../../core-js/instance/for-each"; -import _Object$getOwnPropertyDescriptor from "../../core-js/object/get-own-property-descriptor"; -import _filterInstanceProperty from "../../core-js/instance/filter"; -import _Object$getOwnPropertySymbols from "../../core-js/object/get-own-property-symbols"; -import _Object$keys from "../../core-js/object/keys"; -import defineProperty from "./defineProperty"; - -function ownKeys(object, enumerableOnly) { - var keys = _Object$keys(object); - - if (_Object$getOwnPropertySymbols) { - var symbols = _Object$getOwnPropertySymbols(object); - - if (enumerableOnly) symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { - return _Object$getOwnPropertyDescriptor(object, sym).enumerable; - }); - keys.push.apply(keys, symbols); - } - - return keys; -} - -export default function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; - - if (i % 2) { - var _context; - - _forEachInstanceProperty(_context = ownKeys(Object(source), true)).call(_context, function (key) { - defineProperty(target, key, source[key]); - }); - } else if (_Object$getOwnPropertyDescriptors) { - _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)); - } else { - var _context2; - - _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { - _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); - }); - } - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/objectWithoutProperties.js b/node_modules/@babel/runtime-corejs3/helpers/esm/objectWithoutProperties.js deleted file mode 100644 index 04df2e13..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/objectWithoutProperties.js +++ /dev/null @@ -1,21 +0,0 @@ -import _indexOfInstanceProperty from "../../core-js/instance/index-of"; -import _Object$getOwnPropertySymbols from "../../core-js/object/get-own-property-symbols"; -import objectWithoutPropertiesLoose from "./objectWithoutPropertiesLoose"; -export default function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = objectWithoutPropertiesLoose(source, excluded); - var key, i; - - if (_Object$getOwnPropertySymbols) { - var sourceSymbolKeys = _Object$getOwnPropertySymbols(source); - - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (_indexOfInstanceProperty(excluded).call(excluded, key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/objectWithoutPropertiesLoose.js b/node_modules/@babel/runtime-corejs3/helpers/esm/objectWithoutPropertiesLoose.js deleted file mode 100644 index 6518d0b2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/objectWithoutPropertiesLoose.js +++ /dev/null @@ -1,18 +0,0 @@ -import _indexOfInstanceProperty from "../../core-js/instance/index-of"; -import _Object$keys from "../../core-js/object/keys"; -export default function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - - var sourceKeys = _Object$keys(source); - - var key, i; - - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (_indexOfInstanceProperty(excluded).call(excluded, key) >= 0) continue; - target[key] = source[key]; - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/package.json b/node_modules/@babel/runtime-corejs3/helpers/esm/package.json deleted file mode 100644 index aead43de..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "type": "module" -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn.js b/node_modules/@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn.js deleted file mode 100644 index be7b7a44..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn.js +++ /dev/null @@ -1,9 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; -import assertThisInitialized from "./assertThisInitialized"; -export default function _possibleConstructorReturn(self, call) { - if (call && (_typeof(call) === "object" || typeof call === "function")) { - return call; - } - - return assertThisInitialized(self); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/readOnlyError.js b/node_modules/@babel/runtime-corejs3/helpers/esm/readOnlyError.js deleted file mode 100644 index 45d01d72..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/readOnlyError.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _readOnlyError(name) { - throw new Error("\"" + name + "\" is read-only"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/set.js b/node_modules/@babel/runtime-corejs3/helpers/esm/set.js deleted file mode 100644 index 7a5a8041..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/set.js +++ /dev/null @@ -1,55 +0,0 @@ -import _Object$defineProperty from "../../core-js/object/define-property"; -import _Object$getOwnPropertyDescriptor from "../../core-js/object/get-own-property-descriptor"; -import _Reflect$set from "../../core-js/reflect/set"; -import superPropBase from "./superPropBase"; -import defineProperty from "./defineProperty"; - -function set(target, property, value, receiver) { - if (typeof Reflect !== "undefined" && _Reflect$set) { - set = _Reflect$set; - } else { - set = function set(target, property, value, receiver) { - var base = superPropBase(target, property); - var desc; - - if (base) { - desc = _Object$getOwnPropertyDescriptor(base, property); - - if (desc.set) { - desc.set.call(receiver, value); - return true; - } else if (!desc.writable) { - return false; - } - } - - desc = _Object$getOwnPropertyDescriptor(receiver, property); - - if (desc) { - if (!desc.writable) { - return false; - } - - desc.value = value; - - _Object$defineProperty(receiver, property, desc); - } else { - defineProperty(receiver, property, value); - } - - return true; - }; - } - - return set(target, property, value, receiver); -} - -export default function _set(target, property, value, receiver, isStrict) { - var s = set(target, property, value, receiver || target); - - if (!s && isStrict) { - throw new Error('failed to set property'); - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/setPrototypeOf.js b/node_modules/@babel/runtime-corejs3/helpers/esm/setPrototypeOf.js deleted file mode 100644 index 56682d52..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/setPrototypeOf.js +++ /dev/null @@ -1,9 +0,0 @@ -import _Object$setPrototypeOf from "../../core-js/object/set-prototype-of"; -export default function _setPrototypeOf(o, p) { - _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - - return _setPrototypeOf(o, p); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/skipFirstGeneratorNext.js b/node_modules/@babel/runtime-corejs3/helpers/esm/skipFirstGeneratorNext.js deleted file mode 100644 index cadd9bb5..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/skipFirstGeneratorNext.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _skipFirstGeneratorNext(fn) { - return function () { - var it = fn.apply(this, arguments); - it.next(); - return it; - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArray.js b/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArray.js deleted file mode 100644 index f6f10816..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArray.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithHoles from "./arrayWithHoles"; -import iterableToArrayLimit from "./iterableToArrayLimit"; -import nonIterableRest from "./nonIterableRest"; -export default function _slicedToArray(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArrayLoose.js b/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArrayLoose.js deleted file mode 100644 index e6757890..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArrayLoose.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithHoles from "./arrayWithHoles"; -import iterableToArrayLimitLoose from "./iterableToArrayLimitLoose"; -import nonIterableRest from "./nonIterableRest"; -export default function _slicedToArrayLoose(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimitLoose(arr, i) || nonIterableRest(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/superPropBase.js b/node_modules/@babel/runtime-corejs3/helpers/esm/superPropBase.js deleted file mode 100644 index eace947c..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/superPropBase.js +++ /dev/null @@ -1,9 +0,0 @@ -import getPrototypeOf from "./getPrototypeOf"; -export default function _superPropBase(object, property) { - while (!Object.prototype.hasOwnProperty.call(object, property)) { - object = getPrototypeOf(object); - if (object === null) break; - } - - return object; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteral.js b/node_modules/@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteral.js deleted file mode 100644 index d29648a6..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteral.js +++ /dev/null @@ -1,14 +0,0 @@ -import _Object$defineProperties from "../../core-js/object/define-properties"; -import _Object$freeze from "../../core-js/object/freeze"; -import _sliceInstanceProperty from "../../core-js/instance/slice"; -export default function _taggedTemplateLiteral(strings, raw) { - if (!raw) { - raw = _sliceInstanceProperty(strings).call(strings, 0); - } - - return _Object$freeze(_Object$defineProperties(strings, { - raw: { - value: _Object$freeze(raw) - } - })); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteralLoose.js b/node_modules/@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteralLoose.js deleted file mode 100644 index cc03511f..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteralLoose.js +++ /dev/null @@ -1,9 +0,0 @@ -import _sliceInstanceProperty from "../../core-js/instance/slice"; -export default function _taggedTemplateLiteralLoose(strings, raw) { - if (!raw) { - raw = _sliceInstanceProperty(strings).call(strings, 0); - } - - strings.raw = raw; - return strings; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/tdz.js b/node_modules/@babel/runtime-corejs3/helpers/esm/tdz.js deleted file mode 100644 index d5d0adc8..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/tdz.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _tdzError(name) { - throw new ReferenceError(name + " is not defined - temporal dead zone"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/temporalRef.js b/node_modules/@babel/runtime-corejs3/helpers/esm/temporalRef.js deleted file mode 100644 index 6d167a30..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/temporalRef.js +++ /dev/null @@ -1,5 +0,0 @@ -import undef from "./temporalUndefined"; -import err from "./tdz"; -export default function _temporalRef(val, name) { - return val === undef ? err(name) : val; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/temporalUndefined.js b/node_modules/@babel/runtime-corejs3/helpers/esm/temporalUndefined.js deleted file mode 100644 index 1a357173..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/temporalUndefined.js +++ /dev/null @@ -1 +0,0 @@ -export default function _temporalUndefined() {} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/toArray.js b/node_modules/@babel/runtime-corejs3/helpers/esm/toArray.js deleted file mode 100644 index 5acb22b3..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/toArray.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithHoles from "./arrayWithHoles"; -import iterableToArray from "./iterableToArray"; -import nonIterableRest from "./nonIterableRest"; -export default function _toArray(arr) { - return arrayWithHoles(arr) || iterableToArray(arr) || nonIterableRest(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/toConsumableArray.js b/node_modules/@babel/runtime-corejs3/helpers/esm/toConsumableArray.js deleted file mode 100644 index 7e480b9d..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/toConsumableArray.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithoutHoles from "./arrayWithoutHoles"; -import iterableToArray from "./iterableToArray"; -import nonIterableSpread from "./nonIterableSpread"; -export default function _toConsumableArray(arr) { - return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/toPrimitive.js b/node_modules/@babel/runtime-corejs3/helpers/esm/toPrimitive.js deleted file mode 100644 index ddfb41e2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/toPrimitive.js +++ /dev/null @@ -1,14 +0,0 @@ -import _Symbol$toPrimitive from "../../core-js/symbol/to-primitive"; -import _typeof from "../../helpers/esm/typeof"; -export default function _toPrimitive(input, hint) { - if (_typeof(input) !== "object" || input === null) return input; - var prim = input[_Symbol$toPrimitive]; - - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (_typeof(res) !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - - return (hint === "string" ? String : Number)(input); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/toPropertyKey.js b/node_modules/@babel/runtime-corejs3/helpers/esm/toPropertyKey.js deleted file mode 100644 index 7b53a4de..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/toPropertyKey.js +++ /dev/null @@ -1,6 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; -import toPrimitive from "./toPrimitive"; -export default function _toPropertyKey(arg) { - var key = toPrimitive(arg, "string"); - return _typeof(key) === "symbol" ? key : String(key); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/typeof.js b/node_modules/@babel/runtime-corejs3/helpers/esm/typeof.js deleted file mode 100644 index 499dd0ce..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/typeof.js +++ /dev/null @@ -1,17 +0,0 @@ -import _Symbol$iterator from "../../core-js/symbol/iterator"; -import _Symbol from "../../core-js/symbol"; -export default function _typeof(obj) { - "@babel/helpers - typeof"; - - if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") { - _typeof = function _typeof(obj) { - return typeof obj; - }; - } else { - _typeof = function _typeof(obj) { - return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj; - }; - } - - return _typeof(obj); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/wrapAsyncGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/esm/wrapAsyncGenerator.js deleted file mode 100644 index 6d6d9811..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/wrapAsyncGenerator.js +++ /dev/null @@ -1,6 +0,0 @@ -import AsyncGenerator from "./AsyncGenerator"; -export default function _wrapAsyncGenerator(fn) { - return function () { - return new AsyncGenerator(fn.apply(this, arguments)); - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/wrapNativeSuper.js b/node_modules/@babel/runtime-corejs3/helpers/esm/wrapNativeSuper.js deleted file mode 100644 index c2778d81..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/wrapNativeSuper.js +++ /dev/null @@ -1,39 +0,0 @@ -import _Object$create from "../../core-js/object/create"; -import _Map from "../../core-js/map"; -import getPrototypeOf from "./getPrototypeOf"; -import setPrototypeOf from "./setPrototypeOf"; -import isNativeFunction from "./isNativeFunction"; -import construct from "./construct"; -export default function _wrapNativeSuper(Class) { - var _cache = typeof _Map === "function" ? new _Map() : undefined; - - _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !isNativeFunction(Class)) return Class; - - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - - _cache.set(Class, Wrapper); - } - - function Wrapper() { - return construct(Class, arguments, getPrototypeOf(this).constructor); - } - - Wrapper.prototype = _Object$create(Class.prototype, { - constructor: { - value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return setPrototypeOf(Wrapper, Class); - }; - - return _wrapNativeSuper(Class); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/esm/wrapRegExp.js b/node_modules/@babel/runtime-corejs3/helpers/esm/wrapRegExp.js deleted file mode 100644 index 8b32bacf..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/esm/wrapRegExp.js +++ /dev/null @@ -1,76 +0,0 @@ -import _Object$create from "../../core-js/object/create"; -import _Object$keys from "../../core-js/object/keys"; -import _reduceInstanceProperty from "../../core-js/instance/reduce"; -import _typeof from "../../helpers/esm/typeof"; -import _Symbol$replace from "../../core-js/symbol/replace"; -import _WeakMap from "../../core-js/weak-map"; -import wrapNativeSuper from "./wrapNativeSuper"; -import getPrototypeOf from "./getPrototypeOf"; -import possibleConstructorReturn from "./possibleConstructorReturn"; -import inherits from "./inherits"; -export default function _wrapRegExp(re, groups) { - _wrapRegExp = function _wrapRegExp(re, groups) { - return new BabelRegExp(re, undefined, groups); - }; - - var _RegExp = wrapNativeSuper(RegExp); - - var _super = RegExp.prototype; - - var _groups = new _WeakMap(); - - function BabelRegExp(re, flags, groups) { - var _this = _RegExp.call(this, re, flags); - - _groups.set(_this, groups || _groups.get(re)); - - return _this; - } - - inherits(BabelRegExp, _RegExp); - - BabelRegExp.prototype.exec = function (str) { - var result = _super.exec.call(this, str); - - if (result) result.groups = buildGroups(result, this); - return result; - }; - - BabelRegExp.prototype[_Symbol$replace] = function (str, substitution) { - if (typeof substitution === "string") { - var groups = _groups.get(this); - - return _super[_Symbol$replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) { - return "$" + groups[name]; - })); - } else if (typeof substitution === "function") { - var _this = this; - - return _super[_Symbol$replace].call(this, str, function () { - var args = []; - args.push.apply(args, arguments); - - if (_typeof(args[args.length - 1]) !== "object") { - args.push(buildGroups(args, _this)); - } - - return substitution.apply(this, args); - }); - } else { - return _super[_Symbol$replace].call(this, str, substitution); - } - }; - - function buildGroups(result, re) { - var _context; - - var g = _groups.get(re); - - return _reduceInstanceProperty(_context = _Object$keys(g)).call(_context, function (groups, name) { - groups[name] = result[g[name]]; - return groups; - }, _Object$create(null)); - } - - return _wrapRegExp.apply(this, arguments); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/extends.js b/node_modules/@babel/runtime-corejs3/helpers/extends.js deleted file mode 100644 index 7327deaf..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/extends.js +++ /dev/null @@ -1,21 +0,0 @@ -var _Object$assign = require("../core-js/object/assign"); - -function _extends() { - module.exports = _extends = _Object$assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; - }; - - return _extends.apply(this, arguments); -} - -module.exports = _extends; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/get.js b/node_modules/@babel/runtime-corejs3/helpers/get.js deleted file mode 100644 index a51e99d6..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/get.js +++ /dev/null @@ -1,28 +0,0 @@ -var _Object$getOwnPropertyDescriptor = require("../core-js/object/get-own-property-descriptor"); - -var _Reflect$get = require("../core-js/reflect/get"); - -var superPropBase = require("./superPropBase"); - -function _get(target, property, receiver) { - if (typeof Reflect !== "undefined" && _Reflect$get) { - module.exports = _get = _Reflect$get; - } else { - module.exports = _get = function _get(target, property, receiver) { - var base = superPropBase(target, property); - if (!base) return; - - var desc = _Object$getOwnPropertyDescriptor(base, property); - - if (desc.get) { - return desc.get.call(receiver); - } - - return desc.value; - }; - } - - return _get(target, property, receiver || target); -} - -module.exports = _get; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/getPrototypeOf.js b/node_modules/@babel/runtime-corejs3/helpers/getPrototypeOf.js deleted file mode 100644 index ac8d552f..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/getPrototypeOf.js +++ /dev/null @@ -1,12 +0,0 @@ -var _Object$getPrototypeOf = require("../core-js/object/get-prototype-of"); - -var _Object$setPrototypeOf = require("../core-js/object/set-prototype-of"); - -function _getPrototypeOf(o) { - module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) { - return o.__proto__ || _Object$getPrototypeOf(o); - }; - return _getPrototypeOf(o); -} - -module.exports = _getPrototypeOf; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/inherits.js b/node_modules/@babel/runtime-corejs3/helpers/inherits.js deleted file mode 100644 index 4540e023..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/inherits.js +++ /dev/null @@ -1,20 +0,0 @@ -var _Object$create = require("../core-js/object/create"); - -var setPrototypeOf = require("./setPrototypeOf"); - -function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } - - subClass.prototype = _Object$create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - if (superClass) setPrototypeOf(subClass, superClass); -} - -module.exports = _inherits; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/inheritsLoose.js b/node_modules/@babel/runtime-corejs3/helpers/inheritsLoose.js deleted file mode 100644 index bb367a53..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/inheritsLoose.js +++ /dev/null @@ -1,9 +0,0 @@ -var _Object$create = require("../core-js/object/create"); - -function _inheritsLoose(subClass, superClass) { - subClass.prototype = _Object$create(superClass.prototype); - subClass.prototype.constructor = subClass; - subClass.__proto__ = superClass; -} - -module.exports = _inheritsLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/initializerDefineProperty.js b/node_modules/@babel/runtime-corejs3/helpers/initializerDefineProperty.js deleted file mode 100644 index c0b86d96..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/initializerDefineProperty.js +++ /dev/null @@ -1,14 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -function _initializerDefineProperty(target, property, descriptor, context) { - if (!descriptor) return; - - _Object$defineProperty(target, property, { - enumerable: descriptor.enumerable, - configurable: descriptor.configurable, - writable: descriptor.writable, - value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 - }); -} - -module.exports = _initializerDefineProperty; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/initializerWarningHelper.js b/node_modules/@babel/runtime-corejs3/helpers/initializerWarningHelper.js deleted file mode 100644 index 50ec82cd..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/initializerWarningHelper.js +++ /dev/null @@ -1,5 +0,0 @@ -function _initializerWarningHelper(descriptor, context) { - throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); -} - -module.exports = _initializerWarningHelper; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/instanceof.js b/node_modules/@babel/runtime-corejs3/helpers/instanceof.js deleted file mode 100644 index 9ccb3f6a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/instanceof.js +++ /dev/null @@ -1,13 +0,0 @@ -var _Symbol$hasInstance = require("../core-js/symbol/has-instance"); - -var _Symbol = require("../core-js/symbol"); - -function _instanceof(left, right) { - if (right != null && typeof _Symbol !== "undefined" && right[_Symbol$hasInstance]) { - return !!right[_Symbol$hasInstance](left); - } else { - return left instanceof right; - } -} - -module.exports = _instanceof; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/interopRequireDefault.js b/node_modules/@babel/runtime-corejs3/helpers/interopRequireDefault.js deleted file mode 100644 index f713d130..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/interopRequireDefault.js +++ /dev/null @@ -1,7 +0,0 @@ -function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - "default": obj - }; -} - -module.exports = _interopRequireDefault; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/interopRequireWildcard.js b/node_modules/@babel/runtime-corejs3/helpers/interopRequireWildcard.js deleted file mode 100644 index 812a934f..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/interopRequireWildcard.js +++ /dev/null @@ -1,61 +0,0 @@ -var _Object$getOwnPropertyDescriptor = require("../core-js/object/get-own-property-descriptor"); - -var _Object$defineProperty = require("../core-js/object/define-property"); - -var _typeof = require("../helpers/typeof"); - -var _WeakMap = require("../core-js/weak-map"); - -function _getRequireWildcardCache() { - if (typeof _WeakMap !== "function") return null; - var cache = new _WeakMap(); - - _getRequireWildcardCache = function _getRequireWildcardCache() { - 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; -} - -module.exports = _interopRequireWildcard; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/isNativeFunction.js b/node_modules/@babel/runtime-corejs3/helpers/isNativeFunction.js deleted file mode 100644 index 5f44eb54..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/isNativeFunction.js +++ /dev/null @@ -1,9 +0,0 @@ -var _indexOfInstanceProperty = require("../core-js/instance/index-of"); - -function _isNativeFunction(fn) { - var _context; - - return _indexOfInstanceProperty(_context = Function.toString.call(fn)).call(_context, "[native code]") !== -1; -} - -module.exports = _isNativeFunction; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/iterableToArray.js b/node_modules/@babel/runtime-corejs3/helpers/iterableToArray.js deleted file mode 100644 index c7834a31..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/iterableToArray.js +++ /dev/null @@ -1,9 +0,0 @@ -var _Array$from = require("../core-js/array/from"); - -var _isIterable = require("../core-js/is-iterable"); - -function _iterableToArray(iter) { - if (_isIterable(Object(iter)) || Object.prototype.toString.call(iter) === "[object Arguments]") return _Array$from(iter); -} - -module.exports = _iterableToArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimit.js b/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimit.js deleted file mode 100644 index c52fd5ed..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimit.js +++ /dev/null @@ -1,35 +0,0 @@ -var _getIterator = require("../core-js/get-iterator"); - -var _isIterable = require("../core-js/is-iterable"); - -function _iterableToArrayLimit(arr, i) { - if (!(_isIterable(Object(arr)) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - var _n = true; - var _d = false; - var _e = undefined; - - try { - for (var _i = _getIterator(arr), _s; !(_n = (_s = _i.next()).done); _n = true) { - _arr.push(_s.value); - - if (i && _arr.length === i) break; - } - } catch (err) { - _d = true; - _e = err; - } finally { - try { - if (!_n && _i["return"] != null) _i["return"](); - } finally { - if (_d) throw _e; - } - } - - return _arr; -} - -module.exports = _iterableToArrayLimit; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimitLoose.js b/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimitLoose.js deleted file mode 100644 index 326d8ddc..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimitLoose.js +++ /dev/null @@ -1,21 +0,0 @@ -var _getIterator = require("../core-js/get-iterator"); - -var _isIterable = require("../core-js/is-iterable"); - -function _iterableToArrayLimitLoose(arr, i) { - if (!(_isIterable(Object(arr)) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - - for (var _iterator = _getIterator(arr), _step; !(_step = _iterator.next()).done;) { - _arr.push(_step.value); - - if (i && _arr.length === i) break; - } - - return _arr; -} - -module.exports = _iterableToArrayLimitLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/jsx.js b/node_modules/@babel/runtime-corejs3/helpers/jsx.js deleted file mode 100644 index 6b72de27..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/jsx.js +++ /dev/null @@ -1,53 +0,0 @@ -var _Symbol$for = require("../core-js/symbol/for"); - -var _Symbol = require("../core-js/symbol"); - -var REACT_ELEMENT_TYPE; - -function _createRawReactElement(type, props, key, children) { - if (!REACT_ELEMENT_TYPE) { - REACT_ELEMENT_TYPE = typeof _Symbol === "function" && _Symbol$for && _Symbol$for("react.element") || 0xeac7; - } - - var defaultProps = type && type.defaultProps; - var childrenLength = arguments.length - 3; - - if (!props && childrenLength !== 0) { - props = { - children: void 0 - }; - } - - if (childrenLength === 1) { - props.children = children; - } else if (childrenLength > 1) { - var childArray = new Array(childrenLength); - - for (var i = 0; i < childrenLength; i++) { - childArray[i] = arguments[i + 3]; - } - - props.children = childArray; - } - - if (props && defaultProps) { - for (var propName in defaultProps) { - if (props[propName] === void 0) { - props[propName] = defaultProps[propName]; - } - } - } else if (!props) { - props = defaultProps || {}; - } - - return { - $$typeof: REACT_ELEMENT_TYPE, - type: type, - key: key === undefined ? null : '' + key, - ref: null, - props: props, - _owner: null - }; -} - -module.exports = _createRawReactElement; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/newArrowCheck.js b/node_modules/@babel/runtime-corejs3/helpers/newArrowCheck.js deleted file mode 100644 index 9b59f58c..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/newArrowCheck.js +++ /dev/null @@ -1,7 +0,0 @@ -function _newArrowCheck(innerThis, boundThis) { - if (innerThis !== boundThis) { - throw new TypeError("Cannot instantiate an arrow function"); - } -} - -module.exports = _newArrowCheck; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/nonIterableRest.js b/node_modules/@babel/runtime-corejs3/helpers/nonIterableRest.js deleted file mode 100644 index eb447dd7..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/nonIterableRest.js +++ /dev/null @@ -1,5 +0,0 @@ -function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance"); -} - -module.exports = _nonIterableRest; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/nonIterableSpread.js b/node_modules/@babel/runtime-corejs3/helpers/nonIterableSpread.js deleted file mode 100644 index 7d7ca436..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/nonIterableSpread.js +++ /dev/null @@ -1,5 +0,0 @@ -function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance"); -} - -module.exports = _nonIterableSpread; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/objectDestructuringEmpty.js b/node_modules/@babel/runtime-corejs3/helpers/objectDestructuringEmpty.js deleted file mode 100644 index 1d5c04a7..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/objectDestructuringEmpty.js +++ /dev/null @@ -1,5 +0,0 @@ -function _objectDestructuringEmpty(obj) { - if (obj == null) throw new TypeError("Cannot destructure undefined"); -} - -module.exports = _objectDestructuringEmpty; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/objectSpread.js b/node_modules/@babel/runtime-corejs3/helpers/objectSpread.js deleted file mode 100644 index 09a794af..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/objectSpread.js +++ /dev/null @@ -1,37 +0,0 @@ -var _forEachInstanceProperty = require("../core-js/instance/for-each"); - -var _Object$getOwnPropertyDescriptor = require("../core-js/object/get-own-property-descriptor"); - -var _filterInstanceProperty = require("../core-js/instance/filter"); - -var _concatInstanceProperty = require("../core-js/instance/concat"); - -var _Object$getOwnPropertySymbols = require("../core-js/object/get-own-property-symbols"); - -var _Object$keys = require("../core-js/object/keys"); - -var defineProperty = require("./defineProperty"); - -function _objectSpread(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? Object(arguments[i]) : {}; - - var ownKeys = _Object$keys(source); - - if (typeof _Object$getOwnPropertySymbols === 'function') { - var _context; - - ownKeys = _concatInstanceProperty(ownKeys).call(ownKeys, _filterInstanceProperty(_context = _Object$getOwnPropertySymbols(source)).call(_context, function (sym) { - return _Object$getOwnPropertyDescriptor(source, sym).enumerable; - })); - } - - _forEachInstanceProperty(ownKeys).call(ownKeys, function (key) { - defineProperty(target, key, source[key]); - }); - } - - return target; -} - -module.exports = _objectSpread; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/objectSpread2.js b/node_modules/@babel/runtime-corejs3/helpers/objectSpread2.js deleted file mode 100644 index ab4a226a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/objectSpread2.js +++ /dev/null @@ -1,58 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -var _Object$defineProperties = require("../core-js/object/define-properties"); - -var _Object$getOwnPropertyDescriptors = require("../core-js/object/get-own-property-descriptors"); - -var _forEachInstanceProperty = require("../core-js/instance/for-each"); - -var _Object$getOwnPropertyDescriptor = require("../core-js/object/get-own-property-descriptor"); - -var _filterInstanceProperty = require("../core-js/instance/filter"); - -var _Object$getOwnPropertySymbols = require("../core-js/object/get-own-property-symbols"); - -var _Object$keys = require("../core-js/object/keys"); - -var defineProperty = require("./defineProperty"); - -function ownKeys(object, enumerableOnly) { - var keys = _Object$keys(object); - - if (_Object$getOwnPropertySymbols) { - var symbols = _Object$getOwnPropertySymbols(object); - - if (enumerableOnly) symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { - return _Object$getOwnPropertyDescriptor(object, sym).enumerable; - }); - keys.push.apply(keys, symbols); - } - - return keys; -} - -function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; - - if (i % 2) { - var _context; - - _forEachInstanceProperty(_context = ownKeys(Object(source), true)).call(_context, function (key) { - defineProperty(target, key, source[key]); - }); - } else if (_Object$getOwnPropertyDescriptors) { - _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)); - } else { - var _context2; - - _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { - _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); - }); - } - } - - return target; -} - -module.exports = _objectSpread2; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/objectWithoutProperties.js b/node_modules/@babel/runtime-corejs3/helpers/objectWithoutProperties.js deleted file mode 100644 index 85672e21..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/objectWithoutProperties.js +++ /dev/null @@ -1,26 +0,0 @@ -var _indexOfInstanceProperty = require("../core-js/instance/index-of"); - -var _Object$getOwnPropertySymbols = require("../core-js/object/get-own-property-symbols"); - -var objectWithoutPropertiesLoose = require("./objectWithoutPropertiesLoose"); - -function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = objectWithoutPropertiesLoose(source, excluded); - var key, i; - - if (_Object$getOwnPropertySymbols) { - var sourceSymbolKeys = _Object$getOwnPropertySymbols(source); - - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (_indexOfInstanceProperty(excluded).call(excluded, key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - - return target; -} - -module.exports = _objectWithoutProperties; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/objectWithoutPropertiesLoose.js b/node_modules/@babel/runtime-corejs3/helpers/objectWithoutPropertiesLoose.js deleted file mode 100644 index ad79fd42..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/objectWithoutPropertiesLoose.js +++ /dev/null @@ -1,22 +0,0 @@ -var _indexOfInstanceProperty = require("../core-js/instance/index-of"); - -var _Object$keys = require("../core-js/object/keys"); - -function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - - var sourceKeys = _Object$keys(source); - - var key, i; - - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (_indexOfInstanceProperty(excluded).call(excluded, key) >= 0) continue; - target[key] = source[key]; - } - - return target; -} - -module.exports = _objectWithoutPropertiesLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/possibleConstructorReturn.js b/node_modules/@babel/runtime-corejs3/helpers/possibleConstructorReturn.js deleted file mode 100644 index 84f7bf63..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/possibleConstructorReturn.js +++ /dev/null @@ -1,13 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -var assertThisInitialized = require("./assertThisInitialized"); - -function _possibleConstructorReturn(self, call) { - if (call && (_typeof(call) === "object" || typeof call === "function")) { - return call; - } - - return assertThisInitialized(self); -} - -module.exports = _possibleConstructorReturn; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/readOnlyError.js b/node_modules/@babel/runtime-corejs3/helpers/readOnlyError.js deleted file mode 100644 index 4e61e3fd..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/readOnlyError.js +++ /dev/null @@ -1,5 +0,0 @@ -function _readOnlyError(name) { - throw new Error("\"" + name + "\" is read-only"); -} - -module.exports = _readOnlyError; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/set.js b/node_modules/@babel/runtime-corejs3/helpers/set.js deleted file mode 100644 index ca468573..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/set.js +++ /dev/null @@ -1,61 +0,0 @@ -var _Object$defineProperty = require("../core-js/object/define-property"); - -var _Object$getOwnPropertyDescriptor = require("../core-js/object/get-own-property-descriptor"); - -var _Reflect$set = require("../core-js/reflect/set"); - -var superPropBase = require("./superPropBase"); - -var defineProperty = require("./defineProperty"); - -function set(target, property, value, receiver) { - if (typeof Reflect !== "undefined" && _Reflect$set) { - set = _Reflect$set; - } else { - set = function set(target, property, value, receiver) { - var base = superPropBase(target, property); - var desc; - - if (base) { - desc = _Object$getOwnPropertyDescriptor(base, property); - - if (desc.set) { - desc.set.call(receiver, value); - return true; - } else if (!desc.writable) { - return false; - } - } - - desc = _Object$getOwnPropertyDescriptor(receiver, property); - - if (desc) { - if (!desc.writable) { - return false; - } - - desc.value = value; - - _Object$defineProperty(receiver, property, desc); - } else { - defineProperty(receiver, property, value); - } - - return true; - }; - } - - return set(target, property, value, receiver); -} - -function _set(target, property, value, receiver, isStrict) { - var s = set(target, property, value, receiver || target); - - if (!s && isStrict) { - throw new Error('failed to set property'); - } - - return value; -} - -module.exports = _set; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/setPrototypeOf.js b/node_modules/@babel/runtime-corejs3/helpers/setPrototypeOf.js deleted file mode 100644 index ccca1c2b..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/setPrototypeOf.js +++ /dev/null @@ -1,12 +0,0 @@ -var _Object$setPrototypeOf = require("../core-js/object/set-prototype-of"); - -function _setPrototypeOf(o, p) { - module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - - return _setPrototypeOf(o, p); -} - -module.exports = _setPrototypeOf; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/skipFirstGeneratorNext.js b/node_modules/@babel/runtime-corejs3/helpers/skipFirstGeneratorNext.js deleted file mode 100644 index e1d6c86b..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/skipFirstGeneratorNext.js +++ /dev/null @@ -1,9 +0,0 @@ -function _skipFirstGeneratorNext(fn) { - return function () { - var it = fn.apply(this, arguments); - it.next(); - return it; - }; -} - -module.exports = _skipFirstGeneratorNext; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/slicedToArray.js b/node_modules/@babel/runtime-corejs3/helpers/slicedToArray.js deleted file mode 100644 index 243ea9e2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/slicedToArray.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithHoles = require("./arrayWithHoles"); - -var iterableToArrayLimit = require("./iterableToArrayLimit"); - -var nonIterableRest = require("./nonIterableRest"); - -function _slicedToArray(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest(); -} - -module.exports = _slicedToArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/slicedToArrayLoose.js b/node_modules/@babel/runtime-corejs3/helpers/slicedToArrayLoose.js deleted file mode 100644 index c7e4313b..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/slicedToArrayLoose.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithHoles = require("./arrayWithHoles"); - -var iterableToArrayLimitLoose = require("./iterableToArrayLimitLoose"); - -var nonIterableRest = require("./nonIterableRest"); - -function _slicedToArrayLoose(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimitLoose(arr, i) || nonIterableRest(); -} - -module.exports = _slicedToArrayLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/superPropBase.js b/node_modules/@babel/runtime-corejs3/helpers/superPropBase.js deleted file mode 100644 index bbb34a2d..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/superPropBase.js +++ /dev/null @@ -1,12 +0,0 @@ -var getPrototypeOf = require("./getPrototypeOf"); - -function _superPropBase(object, property) { - while (!Object.prototype.hasOwnProperty.call(object, property)) { - object = getPrototypeOf(object); - if (object === null) break; - } - - return object; -} - -module.exports = _superPropBase; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/taggedTemplateLiteral.js b/node_modules/@babel/runtime-corejs3/helpers/taggedTemplateLiteral.js deleted file mode 100644 index 6385c66c..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/taggedTemplateLiteral.js +++ /dev/null @@ -1,19 +0,0 @@ -var _Object$defineProperties = require("../core-js/object/define-properties"); - -var _Object$freeze = require("../core-js/object/freeze"); - -var _sliceInstanceProperty = require("../core-js/instance/slice"); - -function _taggedTemplateLiteral(strings, raw) { - if (!raw) { - raw = _sliceInstanceProperty(strings).call(strings, 0); - } - - return _Object$freeze(_Object$defineProperties(strings, { - raw: { - value: _Object$freeze(raw) - } - })); -} - -module.exports = _taggedTemplateLiteral; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/taggedTemplateLiteralLoose.js b/node_modules/@babel/runtime-corejs3/helpers/taggedTemplateLiteralLoose.js deleted file mode 100644 index 223ab3e3..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/taggedTemplateLiteralLoose.js +++ /dev/null @@ -1,12 +0,0 @@ -var _sliceInstanceProperty = require("../core-js/instance/slice"); - -function _taggedTemplateLiteralLoose(strings, raw) { - if (!raw) { - raw = _sliceInstanceProperty(strings).call(strings, 0); - } - - strings.raw = raw; - return strings; -} - -module.exports = _taggedTemplateLiteralLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/tdz.js b/node_modules/@babel/runtime-corejs3/helpers/tdz.js deleted file mode 100644 index 6075e8d3..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/tdz.js +++ /dev/null @@ -1,5 +0,0 @@ -function _tdzError(name) { - throw new ReferenceError(name + " is not defined - temporal dead zone"); -} - -module.exports = _tdzError; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/temporalRef.js b/node_modules/@babel/runtime-corejs3/helpers/temporalRef.js deleted file mode 100644 index 8aa5e5e5..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/temporalRef.js +++ /dev/null @@ -1,9 +0,0 @@ -var temporalUndefined = require("./temporalUndefined"); - -var tdz = require("./tdz"); - -function _temporalRef(val, name) { - return val === temporalUndefined ? tdz(name) : val; -} - -module.exports = _temporalRef; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/temporalUndefined.js b/node_modules/@babel/runtime-corejs3/helpers/temporalUndefined.js deleted file mode 100644 index 416d9b3a..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/temporalUndefined.js +++ /dev/null @@ -1,3 +0,0 @@ -function _temporalUndefined() {} - -module.exports = _temporalUndefined; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/toArray.js b/node_modules/@babel/runtime-corejs3/helpers/toArray.js deleted file mode 100644 index c28fd9e4..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/toArray.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithHoles = require("./arrayWithHoles"); - -var iterableToArray = require("./iterableToArray"); - -var nonIterableRest = require("./nonIterableRest"); - -function _toArray(arr) { - return arrayWithHoles(arr) || iterableToArray(arr) || nonIterableRest(); -} - -module.exports = _toArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/toConsumableArray.js b/node_modules/@babel/runtime-corejs3/helpers/toConsumableArray.js deleted file mode 100644 index 4cd54a33..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/toConsumableArray.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithoutHoles = require("./arrayWithoutHoles"); - -var iterableToArray = require("./iterableToArray"); - -var nonIterableSpread = require("./nonIterableSpread"); - -function _toConsumableArray(arr) { - return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread(); -} - -module.exports = _toConsumableArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/toPrimitive.js b/node_modules/@babel/runtime-corejs3/helpers/toPrimitive.js deleted file mode 100644 index 99592043..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/toPrimitive.js +++ /dev/null @@ -1,18 +0,0 @@ -var _Symbol$toPrimitive = require("../core-js/symbol/to-primitive"); - -var _typeof = require("../helpers/typeof"); - -function _toPrimitive(input, hint) { - if (_typeof(input) !== "object" || input === null) return input; - var prim = input[_Symbol$toPrimitive]; - - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (_typeof(res) !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - - return (hint === "string" ? String : Number)(input); -} - -module.exports = _toPrimitive; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/toPropertyKey.js b/node_modules/@babel/runtime-corejs3/helpers/toPropertyKey.js deleted file mode 100644 index 108b083e..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/toPropertyKey.js +++ /dev/null @@ -1,10 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -var toPrimitive = require("./toPrimitive"); - -function _toPropertyKey(arg) { - var key = toPrimitive(arg, "string"); - return _typeof(key) === "symbol" ? key : String(key); -} - -module.exports = _toPropertyKey; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/typeof.js b/node_modules/@babel/runtime-corejs3/helpers/typeof.js deleted file mode 100644 index 897af2a0..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/typeof.js +++ /dev/null @@ -1,21 +0,0 @@ -var _Symbol$iterator = require("../core-js/symbol/iterator"); - -var _Symbol = require("../core-js/symbol"); - -function _typeof(obj) { - "@babel/helpers - typeof"; - - if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") { - module.exports = _typeof = function _typeof(obj) { - return typeof obj; - }; - } else { - module.exports = _typeof = function _typeof(obj) { - return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj; - }; - } - - return _typeof(obj); -} - -module.exports = _typeof; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/wrapAsyncGenerator.js b/node_modules/@babel/runtime-corejs3/helpers/wrapAsyncGenerator.js deleted file mode 100644 index 11554f3d..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/wrapAsyncGenerator.js +++ /dev/null @@ -1,9 +0,0 @@ -var AsyncGenerator = require("./AsyncGenerator"); - -function _wrapAsyncGenerator(fn) { - return function () { - return new AsyncGenerator(fn.apply(this, arguments)); - }; -} - -module.exports = _wrapAsyncGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/wrapNativeSuper.js b/node_modules/@babel/runtime-corejs3/helpers/wrapNativeSuper.js deleted file mode 100644 index 0d9cb7a2..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/wrapNativeSuper.js +++ /dev/null @@ -1,47 +0,0 @@ -var _Object$create = require("../core-js/object/create"); - -var _Map = require("../core-js/map"); - -var getPrototypeOf = require("./getPrototypeOf"); - -var setPrototypeOf = require("./setPrototypeOf"); - -var isNativeFunction = require("./isNativeFunction"); - -var construct = require("./construct"); - -function _wrapNativeSuper(Class) { - var _cache = typeof _Map === "function" ? new _Map() : undefined; - - module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !isNativeFunction(Class)) return Class; - - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - - _cache.set(Class, Wrapper); - } - - function Wrapper() { - return construct(Class, arguments, getPrototypeOf(this).constructor); - } - - Wrapper.prototype = _Object$create(Class.prototype, { - constructor: { - value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return setPrototypeOf(Wrapper, Class); - }; - - return _wrapNativeSuper(Class); -} - -module.exports = _wrapNativeSuper; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/helpers/wrapRegExp.js b/node_modules/@babel/runtime-corejs3/helpers/wrapRegExp.js deleted file mode 100644 index 84c123f3..00000000 --- a/node_modules/@babel/runtime-corejs3/helpers/wrapRegExp.js +++ /dev/null @@ -1,88 +0,0 @@ -var _Object$create = require("../core-js/object/create"); - -var _Object$keys = require("../core-js/object/keys"); - -var _reduceInstanceProperty = require("../core-js/instance/reduce"); - -var _typeof = require("../helpers/typeof"); - -var _Symbol$replace = require("../core-js/symbol/replace"); - -var _WeakMap = require("../core-js/weak-map"); - -var wrapNativeSuper = require("./wrapNativeSuper"); - -var getPrototypeOf = require("./getPrototypeOf"); - -var possibleConstructorReturn = require("./possibleConstructorReturn"); - -var inherits = require("./inherits"); - -function _wrapRegExp(re, groups) { - module.exports = _wrapRegExp = function _wrapRegExp(re, groups) { - return new BabelRegExp(re, undefined, groups); - }; - - var _RegExp = wrapNativeSuper(RegExp); - - var _super = RegExp.prototype; - - var _groups = new _WeakMap(); - - function BabelRegExp(re, flags, groups) { - var _this = _RegExp.call(this, re, flags); - - _groups.set(_this, groups || _groups.get(re)); - - return _this; - } - - inherits(BabelRegExp, _RegExp); - - BabelRegExp.prototype.exec = function (str) { - var result = _super.exec.call(this, str); - - if (result) result.groups = buildGroups(result, this); - return result; - }; - - BabelRegExp.prototype[_Symbol$replace] = function (str, substitution) { - if (typeof substitution === "string") { - var groups = _groups.get(this); - - return _super[_Symbol$replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) { - return "$" + groups[name]; - })); - } else if (typeof substitution === "function") { - var _this = this; - - return _super[_Symbol$replace].call(this, str, function () { - var args = []; - args.push.apply(args, arguments); - - if (_typeof(args[args.length - 1]) !== "object") { - args.push(buildGroups(args, _this)); - } - - return substitution.apply(this, args); - }); - } else { - return _super[_Symbol$replace].call(this, str, substitution); - } - }; - - function buildGroups(result, re) { - var _context; - - var g = _groups.get(re); - - return _reduceInstanceProperty(_context = _Object$keys(g)).call(_context, function (groups, name) { - groups[name] = result[g[name]]; - return groups; - }, _Object$create(null)); - } - - return _wrapRegExp.apply(this, arguments); -} - -module.exports = _wrapRegExp; \ No newline at end of file diff --git a/node_modules/@babel/runtime-corejs3/package.json b/node_modules/@babel/runtime-corejs3/package.json deleted file mode 100644 index d00f5dec..00000000 --- a/node_modules/@babel/runtime-corejs3/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "@babel/runtime-corejs3", - "version": "7.8.7", - "description": "babel's modular runtime helpers with core-js@3 polyfilling", - "license": "MIT", - "publishConfig": { - "access": "public" - }, - "repository": "https://github.com/babel/babel/tree/master/packages/babel-runtime-corejs3", - "author": "Denis Pushkarev ", - "dependencies": { - "core-js-pure": "^3.0.0", - "regenerator-runtime": "^0.13.4" - }, - "gitHead": "595f65f33b8e948e34d12be83f700cf8d070c790" -} diff --git a/node_modules/@babel/runtime-corejs3/regenerator/index.js b/node_modules/@babel/runtime-corejs3/regenerator/index.js deleted file mode 100644 index 9fd4158a..00000000 --- a/node_modules/@babel/runtime-corejs3/regenerator/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("regenerator-runtime"); diff --git a/node_modules/@babel/runtime/LICENSE b/node_modules/@babel/runtime/LICENSE deleted file mode 100644 index f31575ec..00000000 --- a/node_modules/@babel/runtime/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -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. diff --git a/node_modules/@babel/runtime/README.md b/node_modules/@babel/runtime/README.md deleted file mode 100644 index 72e8daa3..00000000 --- a/node_modules/@babel/runtime/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# @babel/runtime - -> babel's modular runtime helpers - -See our website [@babel/runtime](https://babeljs.io/docs/en/next/babel-runtime.html) for more information. - -## Install - -Using npm: - -```sh -npm install --save @babel/runtime -``` - -or using yarn: - -```sh -yarn add @babel/runtime -``` diff --git a/node_modules/@babel/runtime/helpers/AsyncGenerator.js b/node_modules/@babel/runtime/helpers/AsyncGenerator.js deleted file mode 100644 index 5e237306..00000000 --- a/node_modules/@babel/runtime/helpers/AsyncGenerator.js +++ /dev/null @@ -1,100 +0,0 @@ -var AwaitValue = require("./AwaitValue"); - -function AsyncGenerator(gen) { - var front, back; - - function send(key, arg) { - return new Promise(function (resolve, reject) { - var request = { - key: key, - arg: arg, - resolve: resolve, - reject: reject, - next: null - }; - - if (back) { - back = back.next = request; - } else { - front = back = request; - resume(key, arg); - } - }); - } - - function resume(key, arg) { - try { - var result = gen[key](arg); - var value = result.value; - var wrappedAwait = value instanceof AwaitValue; - Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) { - if (wrappedAwait) { - resume(key === "return" ? "return" : "next", arg); - return; - } - - settle(result.done ? "return" : "normal", arg); - }, function (err) { - resume("throw", err); - }); - } catch (err) { - settle("throw", err); - } - } - - function settle(type, value) { - switch (type) { - case "return": - front.resolve({ - value: value, - done: true - }); - break; - - case "throw": - front.reject(value); - break; - - default: - front.resolve({ - value: value, - done: false - }); - break; - } - - front = front.next; - - if (front) { - resume(front.key, front.arg); - } else { - back = null; - } - } - - this._invoke = send; - - if (typeof gen["return"] !== "function") { - this["return"] = undefined; - } -} - -if (typeof Symbol === "function" && Symbol.asyncIterator) { - AsyncGenerator.prototype[Symbol.asyncIterator] = function () { - return this; - }; -} - -AsyncGenerator.prototype.next = function (arg) { - return this._invoke("next", arg); -}; - -AsyncGenerator.prototype["throw"] = function (arg) { - return this._invoke("throw", arg); -}; - -AsyncGenerator.prototype["return"] = function (arg) { - return this._invoke("return", arg); -}; - -module.exports = AsyncGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/AwaitValue.js b/node_modules/@babel/runtime/helpers/AwaitValue.js deleted file mode 100644 index f9f41841..00000000 --- a/node_modules/@babel/runtime/helpers/AwaitValue.js +++ /dev/null @@ -1,5 +0,0 @@ -function _AwaitValue(value) { - this.wrapped = value; -} - -module.exports = _AwaitValue; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js b/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js deleted file mode 100644 index b0b41ddd..00000000 --- a/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js +++ /dev/null @@ -1,30 +0,0 @@ -function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { - var desc = {}; - Object.keys(descriptor).forEach(function (key) { - desc[key] = descriptor[key]; - }); - desc.enumerable = !!desc.enumerable; - desc.configurable = !!desc.configurable; - - if ('value' in desc || desc.initializer) { - desc.writable = true; - } - - desc = decorators.slice().reverse().reduce(function (desc, decorator) { - return decorator(target, property, desc) || desc; - }, desc); - - if (context && desc.initializer !== void 0) { - desc.value = desc.initializer ? desc.initializer.call(context) : void 0; - desc.initializer = undefined; - } - - if (desc.initializer === void 0) { - Object.defineProperty(target, property, desc); - desc = null; - } - - return desc; -} - -module.exports = _applyDecoratedDescriptor; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/arrayWithHoles.js b/node_modules/@babel/runtime/helpers/arrayWithHoles.js deleted file mode 100644 index 5a62a8ce..00000000 --- a/node_modules/@babel/runtime/helpers/arrayWithHoles.js +++ /dev/null @@ -1,5 +0,0 @@ -function _arrayWithHoles(arr) { - if (Array.isArray(arr)) return arr; -} - -module.exports = _arrayWithHoles; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js b/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js deleted file mode 100644 index 3234017e..00000000 --- a/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +++ /dev/null @@ -1,11 +0,0 @@ -function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) { - for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { - arr2[i] = arr[i]; - } - - return arr2; - } -} - -module.exports = _arrayWithoutHoles; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/assertThisInitialized.js b/node_modules/@babel/runtime/helpers/assertThisInitialized.js deleted file mode 100644 index 98d29498..00000000 --- a/node_modules/@babel/runtime/helpers/assertThisInitialized.js +++ /dev/null @@ -1,9 +0,0 @@ -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - - return self; -} - -module.exports = _assertThisInitialized; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js b/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js deleted file mode 100644 index c37ecf2c..00000000 --- a/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js +++ /dev/null @@ -1,58 +0,0 @@ -function _asyncGeneratorDelegate(inner, awaitWrap) { - var iter = {}, - waiting = false; - - function pump(key, value) { - waiting = true; - value = new Promise(function (resolve) { - resolve(inner[key](value)); - }); - return { - done: false, - value: awaitWrap(value) - }; - } - - ; - - if (typeof Symbol === "function" && Symbol.iterator) { - iter[Symbol.iterator] = function () { - return this; - }; - } - - iter.next = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("next", value); - }; - - if (typeof inner["throw"] === "function") { - iter["throw"] = function (value) { - if (waiting) { - waiting = false; - throw value; - } - - return pump("throw", value); - }; - } - - if (typeof inner["return"] === "function") { - iter["return"] = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("return", value); - }; - } - - return iter; -} - -module.exports = _asyncGeneratorDelegate; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/asyncIterator.js b/node_modules/@babel/runtime/helpers/asyncIterator.js deleted file mode 100644 index ef5db274..00000000 --- a/node_modules/@babel/runtime/helpers/asyncIterator.js +++ /dev/null @@ -1,19 +0,0 @@ -function _asyncIterator(iterable) { - var method; - - if (typeof Symbol !== "undefined") { - if (Symbol.asyncIterator) { - method = iterable[Symbol.asyncIterator]; - if (method != null) return method.call(iterable); - } - - if (Symbol.iterator) { - method = iterable[Symbol.iterator]; - if (method != null) return method.call(iterable); - } - } - - throw new TypeError("Object is not async iterable"); -} - -module.exports = _asyncIterator; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/asyncToGenerator.js b/node_modules/@babel/runtime/helpers/asyncToGenerator.js deleted file mode 100644 index f5db93df..00000000 --- a/node_modules/@babel/runtime/helpers/asyncToGenerator.js +++ /dev/null @@ -1,37 +0,0 @@ -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); - }); - }; -} - -module.exports = _asyncToGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js b/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js deleted file mode 100644 index 59f797af..00000000 --- a/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js +++ /dev/null @@ -1,7 +0,0 @@ -var AwaitValue = require("./AwaitValue"); - -function _awaitAsyncGenerator(value) { - return new AwaitValue(value); -} - -module.exports = _awaitAsyncGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classCallCheck.js b/node_modules/@babel/runtime/helpers/classCallCheck.js deleted file mode 100644 index f389f2e8..00000000 --- a/node_modules/@babel/runtime/helpers/classCallCheck.js +++ /dev/null @@ -1,7 +0,0 @@ -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} - -module.exports = _classCallCheck; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classNameTDZError.js b/node_modules/@babel/runtime/helpers/classNameTDZError.js deleted file mode 100644 index 8c1bdf55..00000000 --- a/node_modules/@babel/runtime/helpers/classNameTDZError.js +++ /dev/null @@ -1,5 +0,0 @@ -function _classNameTDZError(name) { - throw new Error("Class \"" + name + "\" cannot be referenced in computed property keys."); -} - -module.exports = _classNameTDZError; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js b/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js deleted file mode 100644 index fab91057..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js +++ /dev/null @@ -1,28 +0,0 @@ -function _classPrivateFieldDestructureSet(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - - var descriptor = privateMap.get(receiver); - - if (descriptor.set) { - if (!("__destrObj" in descriptor)) { - descriptor.__destrObj = { - set value(v) { - descriptor.set.call(receiver, v); - } - - }; - } - - return descriptor.__destrObj; - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - return descriptor; - } -} - -module.exports = _classPrivateFieldDestructureSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js b/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js deleted file mode 100644 index 106c3cd9..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js +++ /dev/null @@ -1,15 +0,0 @@ -function _classPrivateFieldGet(receiver, privateMap) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to get private field on non-instance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} - -module.exports = _classPrivateFieldGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js b/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js deleted file mode 100644 index 64ed79df..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js +++ /dev/null @@ -1,9 +0,0 @@ -function _classPrivateFieldBase(receiver, privateKey) { - if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) { - throw new TypeError("attempted to use private field on non-instance"); - } - - return receiver; -} - -module.exports = _classPrivateFieldBase; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js b/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js deleted file mode 100644 index a1a6417a..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js +++ /dev/null @@ -1,7 +0,0 @@ -var id = 0; - -function _classPrivateFieldKey(name) { - return "__private_" + id++ + "_" + name; -} - -module.exports = _classPrivateFieldKey; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js b/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js deleted file mode 100644 index c92f97a8..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js +++ /dev/null @@ -1,21 +0,0 @@ -function _classPrivateFieldSet(receiver, privateMap, value) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to set private field on non-instance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} - -module.exports = _classPrivateFieldSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js deleted file mode 100644 index a3432b9a..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js +++ /dev/null @@ -1,9 +0,0 @@ -function _classPrivateMethodGet(receiver, privateSet, fn) { - if (!privateSet.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - - return fn; -} - -module.exports = _classPrivateMethodGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js deleted file mode 100644 index 38472848..00000000 --- a/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js +++ /dev/null @@ -1,5 +0,0 @@ -function _classPrivateMethodSet() { - throw new TypeError("attempted to reassign private method"); -} - -module.exports = _classPrivateMethodSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js deleted file mode 100644 index c2b67664..00000000 --- a/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js +++ /dev/null @@ -1,13 +0,0 @@ -function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} - -module.exports = _classStaticPrivateFieldSpecGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js deleted file mode 100644 index 8799fbb3..00000000 --- a/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js +++ /dev/null @@ -1,19 +0,0 @@ -function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} - -module.exports = _classStaticPrivateFieldSpecSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js deleted file mode 100644 index f9b0d003..00000000 --- a/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js +++ /dev/null @@ -1,9 +0,0 @@ -function _classStaticPrivateMethodGet(receiver, classConstructor, method) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - return method; -} - -module.exports = _classStaticPrivateMethodGet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js deleted file mode 100644 index 89042da5..00000000 --- a/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js +++ /dev/null @@ -1,5 +0,0 @@ -function _classStaticPrivateMethodSet() { - throw new TypeError("attempted to set read only static private field"); -} - -module.exports = _classStaticPrivateMethodSet; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/construct.js b/node_modules/@babel/runtime/helpers/construct.js deleted file mode 100644 index 723a7eaa..00000000 --- a/node_modules/@babel/runtime/helpers/construct.js +++ /dev/null @@ -1,33 +0,0 @@ -var setPrototypeOf = require("./setPrototypeOf"); - -function isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; - - try { - Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); - return true; - } catch (e) { - return false; - } -} - -function _construct(Parent, args, Class) { - if (isNativeReflectConstruct()) { - module.exports = _construct = Reflect.construct; - } else { - module.exports = _construct = function _construct(Parent, args, Class) { - var a = [null]; - a.push.apply(a, args); - var Constructor = Function.bind.apply(Parent, a); - var instance = new Constructor(); - if (Class) setPrototypeOf(instance, Class.prototype); - return instance; - }; - } - - return _construct.apply(null, arguments); -} - -module.exports = _construct; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/createClass.js b/node_modules/@babel/runtime/helpers/createClass.js deleted file mode 100644 index f9d48410..00000000 --- a/node_modules/@babel/runtime/helpers/createClass.js +++ /dev/null @@ -1,17 +0,0 @@ -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } -} - -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - return Constructor; -} - -module.exports = _createClass; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/decorate.js b/node_modules/@babel/runtime/helpers/decorate.js deleted file mode 100644 index 77c0b980..00000000 --- a/node_modules/@babel/runtime/helpers/decorate.js +++ /dev/null @@ -1,400 +0,0 @@ -var toArray = require("./toArray"); - -var toPropertyKey = require("./toPropertyKey"); - -function _decorate(decorators, factory, superClass, mixins) { - var api = _getDecoratorsApi(); - - if (mixins) { - for (var i = 0; i < mixins.length; i++) { - api = mixins[i](api); - } - } - - var r = factory(function initialize(O) { - api.initializeInstanceElements(O, decorated.elements); - }, superClass); - var decorated = api.decorateClass(_coalesceClassElements(r.d.map(_createElementDescriptor)), decorators); - api.initializeClassElements(r.F, decorated.elements); - return api.runClassFinishers(r.F, decorated.finishers); -} - -function _getDecoratorsApi() { - _getDecoratorsApi = function _getDecoratorsApi() { - return api; - }; - - var api = { - elementsDefinitionOrder: [["method"], ["field"]], - initializeInstanceElements: function initializeInstanceElements(O, elements) { - ["method", "field"].forEach(function (kind) { - elements.forEach(function (element) { - if (element.kind === kind && element.placement === "own") { - this.defineClassElement(O, element); - } - }, this); - }, this); - }, - initializeClassElements: function initializeClassElements(F, elements) { - var proto = F.prototype; - ["method", "field"].forEach(function (kind) { - elements.forEach(function (element) { - var placement = element.placement; - - if (element.kind === kind && (placement === "static" || placement === "prototype")) { - var receiver = placement === "static" ? F : proto; - this.defineClassElement(receiver, element); - } - }, this); - }, this); - }, - defineClassElement: function defineClassElement(receiver, element) { - var descriptor = element.descriptor; - - if (element.kind === "field") { - var initializer = element.initializer; - descriptor = { - enumerable: descriptor.enumerable, - writable: descriptor.writable, - configurable: descriptor.configurable, - value: initializer === void 0 ? void 0 : initializer.call(receiver) - }; - } - - Object.defineProperty(receiver, element.key, descriptor); - }, - decorateClass: function decorateClass(elements, decorators) { - var newElements = []; - var finishers = []; - var placements = { - "static": [], - prototype: [], - own: [] - }; - elements.forEach(function (element) { - this.addElementPlacement(element, placements); - }, this); - elements.forEach(function (element) { - if (!_hasDecorators(element)) return newElements.push(element); - var elementFinishersExtras = this.decorateElement(element, placements); - newElements.push(elementFinishersExtras.element); - newElements.push.apply(newElements, elementFinishersExtras.extras); - finishers.push.apply(finishers, elementFinishersExtras.finishers); - }, this); - - if (!decorators) { - return { - elements: newElements, - finishers: finishers - }; - } - - var result = this.decorateConstructor(newElements, decorators); - finishers.push.apply(finishers, result.finishers); - result.finishers = finishers; - return result; - }, - addElementPlacement: function addElementPlacement(element, placements, silent) { - var keys = placements[element.placement]; - - if (!silent && keys.indexOf(element.key) !== -1) { - throw new TypeError("Duplicated element (" + element.key + ")"); - } - - keys.push(element.key); - }, - decorateElement: function decorateElement(element, placements) { - var extras = []; - var finishers = []; - - for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) { - var keys = placements[element.placement]; - keys.splice(keys.indexOf(element.key), 1); - var elementObject = this.fromElementDescriptor(element); - var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject); - element = elementFinisherExtras.element; - this.addElementPlacement(element, placements); - - if (elementFinisherExtras.finisher) { - finishers.push(elementFinisherExtras.finisher); - } - - var newExtras = elementFinisherExtras.extras; - - if (newExtras) { - for (var j = 0; j < newExtras.length; j++) { - this.addElementPlacement(newExtras[j], placements); - } - - extras.push.apply(extras, newExtras); - } - } - - return { - element: element, - finishers: finishers, - extras: extras - }; - }, - decorateConstructor: function decorateConstructor(elements, decorators) { - var finishers = []; - - for (var i = decorators.length - 1; i >= 0; i--) { - var obj = this.fromClassDescriptor(elements); - var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj); - - if (elementsAndFinisher.finisher !== undefined) { - finishers.push(elementsAndFinisher.finisher); - } - - if (elementsAndFinisher.elements !== undefined) { - elements = elementsAndFinisher.elements; - - for (var j = 0; j < elements.length - 1; j++) { - for (var k = j + 1; k < elements.length; k++) { - if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) { - throw new TypeError("Duplicated element (" + elements[j].key + ")"); - } - } - } - } - } - - return { - elements: elements, - finishers: finishers - }; - }, - fromElementDescriptor: function fromElementDescriptor(element) { - var obj = { - kind: element.kind, - key: element.key, - placement: element.placement, - descriptor: element.descriptor - }; - var desc = { - value: "Descriptor", - configurable: true - }; - Object.defineProperty(obj, Symbol.toStringTag, desc); - if (element.kind === "field") obj.initializer = element.initializer; - return obj; - }, - toElementDescriptors: function toElementDescriptors(elementObjects) { - if (elementObjects === undefined) return; - return toArray(elementObjects).map(function (elementObject) { - var element = this.toElementDescriptor(elementObject); - this.disallowProperty(elementObject, "finisher", "An element descriptor"); - this.disallowProperty(elementObject, "extras", "An element descriptor"); - return element; - }, this); - }, - toElementDescriptor: function toElementDescriptor(elementObject) { - var kind = String(elementObject.kind); - - if (kind !== "method" && kind !== "field") { - throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"'); - } - - var key = toPropertyKey(elementObject.key); - var placement = String(elementObject.placement); - - if (placement !== "static" && placement !== "prototype" && placement !== "own") { - throw new TypeError('An element descriptor\'s .placement property must be one of "static",' + ' "prototype" or "own", but a decorator created an element descriptor' + ' with .placement "' + placement + '"'); - } - - var descriptor = elementObject.descriptor; - this.disallowProperty(elementObject, "elements", "An element descriptor"); - var element = { - kind: kind, - key: key, - placement: placement, - descriptor: Object.assign({}, descriptor) - }; - - if (kind !== "field") { - this.disallowProperty(elementObject, "initializer", "A method descriptor"); - } else { - this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor"); - element.initializer = elementObject.initializer; - } - - return element; - }, - toElementFinisherExtras: function toElementFinisherExtras(elementObject) { - var element = this.toElementDescriptor(elementObject); - - var finisher = _optionalCallableProperty(elementObject, "finisher"); - - var extras = this.toElementDescriptors(elementObject.extras); - return { - element: element, - finisher: finisher, - extras: extras - }; - }, - fromClassDescriptor: function fromClassDescriptor(elements) { - var obj = { - kind: "class", - elements: elements.map(this.fromElementDescriptor, this) - }; - var desc = { - value: "Descriptor", - configurable: true - }; - Object.defineProperty(obj, Symbol.toStringTag, desc); - return obj; - }, - toClassDescriptor: function toClassDescriptor(obj) { - var kind = String(obj.kind); - - if (kind !== "class") { - throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"'); - } - - this.disallowProperty(obj, "key", "A class descriptor"); - this.disallowProperty(obj, "placement", "A class descriptor"); - this.disallowProperty(obj, "descriptor", "A class descriptor"); - this.disallowProperty(obj, "initializer", "A class descriptor"); - this.disallowProperty(obj, "extras", "A class descriptor"); - - var finisher = _optionalCallableProperty(obj, "finisher"); - - var elements = this.toElementDescriptors(obj.elements); - return { - elements: elements, - finisher: finisher - }; - }, - runClassFinishers: function runClassFinishers(constructor, finishers) { - for (var i = 0; i < finishers.length; i++) { - var newConstructor = (0, finishers[i])(constructor); - - if (newConstructor !== undefined) { - if (typeof newConstructor !== "function") { - throw new TypeError("Finishers must return a constructor."); - } - - constructor = newConstructor; - } - } - - return constructor; - }, - disallowProperty: function disallowProperty(obj, name, objectType) { - if (obj[name] !== undefined) { - throw new TypeError(objectType + " can't have a ." + name + " property."); - } - } - }; - return api; -} - -function _createElementDescriptor(def) { - var key = toPropertyKey(def.key); - var descriptor; - - if (def.kind === "method") { - descriptor = { - value: def.value, - writable: true, - configurable: true, - enumerable: false - }; - } else if (def.kind === "get") { - descriptor = { - get: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "set") { - descriptor = { - set: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "field") { - descriptor = { - configurable: true, - writable: true, - enumerable: true - }; - } - - var element = { - kind: def.kind === "field" ? "field" : "method", - key: key, - placement: def["static"] ? "static" : def.kind === "field" ? "own" : "prototype", - descriptor: descriptor - }; - if (def.decorators) element.decorators = def.decorators; - if (def.kind === "field") element.initializer = def.value; - return element; -} - -function _coalesceGetterSetter(element, other) { - if (element.descriptor.get !== undefined) { - other.descriptor.get = element.descriptor.get; - } else { - other.descriptor.set = element.descriptor.set; - } -} - -function _coalesceClassElements(elements) { - var newElements = []; - - var isSameElement = function isSameElement(other) { - return other.kind === "method" && other.key === element.key && other.placement === element.placement; - }; - - for (var i = 0; i < elements.length; i++) { - var element = elements[i]; - var other; - - if (element.kind === "method" && (other = newElements.find(isSameElement))) { - if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) { - if (_hasDecorators(element) || _hasDecorators(other)) { - throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated."); - } - - other.descriptor = element.descriptor; - } else { - if (_hasDecorators(element)) { - if (_hasDecorators(other)) { - throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ")."); - } - - other.decorators = element.decorators; - } - - _coalesceGetterSetter(element, other); - } - } else { - newElements.push(element); - } - } - - return newElements; -} - -function _hasDecorators(element) { - return element.decorators && element.decorators.length; -} - -function _isDataDescriptor(desc) { - return desc !== undefined && !(desc.value === undefined && desc.writable === undefined); -} - -function _optionalCallableProperty(obj, name) { - var value = obj[name]; - - if (value !== undefined && typeof value !== "function") { - throw new TypeError("Expected '" + name + "' to be a function"); - } - - return value; -} - -module.exports = _decorate; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/defaults.js b/node_modules/@babel/runtime/helpers/defaults.js deleted file mode 100644 index 55ba1feb..00000000 --- a/node_modules/@babel/runtime/helpers/defaults.js +++ /dev/null @@ -1,16 +0,0 @@ -function _defaults(obj, defaults) { - var keys = Object.getOwnPropertyNames(defaults); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var value = Object.getOwnPropertyDescriptor(defaults, key); - - if (value && value.configurable && obj[key] === undefined) { - Object.defineProperty(obj, key, value); - } - } - - return obj; -} - -module.exports = _defaults; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js b/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js deleted file mode 100644 index 5d80ea1e..00000000 --- a/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js +++ /dev/null @@ -1,24 +0,0 @@ -function _defineEnumerableProperties(obj, descs) { - for (var key in descs) { - var desc = descs[key]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - Object.defineProperty(obj, key, desc); - } - - if (Object.getOwnPropertySymbols) { - var objectSymbols = Object.getOwnPropertySymbols(descs); - - for (var i = 0; i < objectSymbols.length; i++) { - var sym = objectSymbols[i]; - var desc = descs[sym]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - Object.defineProperty(obj, sym, desc); - } - } - - return obj; -} - -module.exports = _defineEnumerableProperties; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/defineProperty.js b/node_modules/@babel/runtime/helpers/defineProperty.js deleted file mode 100644 index 32a8d73f..00000000 --- a/node_modules/@babel/runtime/helpers/defineProperty.js +++ /dev/null @@ -1,16 +0,0 @@ -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} - -module.exports = _defineProperty; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js b/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js deleted file mode 100644 index 65361d96..00000000 --- a/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js +++ /dev/null @@ -1,97 +0,0 @@ -import AwaitValue from "./AwaitValue"; -export default function AsyncGenerator(gen) { - var front, back; - - function send(key, arg) { - return new Promise(function (resolve, reject) { - var request = { - key: key, - arg: arg, - resolve: resolve, - reject: reject, - next: null - }; - - if (back) { - back = back.next = request; - } else { - front = back = request; - resume(key, arg); - } - }); - } - - function resume(key, arg) { - try { - var result = gen[key](arg); - var value = result.value; - var wrappedAwait = value instanceof AwaitValue; - Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) { - if (wrappedAwait) { - resume(key === "return" ? "return" : "next", arg); - return; - } - - settle(result.done ? "return" : "normal", arg); - }, function (err) { - resume("throw", err); - }); - } catch (err) { - settle("throw", err); - } - } - - function settle(type, value) { - switch (type) { - case "return": - front.resolve({ - value: value, - done: true - }); - break; - - case "throw": - front.reject(value); - break; - - default: - front.resolve({ - value: value, - done: false - }); - break; - } - - front = front.next; - - if (front) { - resume(front.key, front.arg); - } else { - back = null; - } - } - - this._invoke = send; - - if (typeof gen["return"] !== "function") { - this["return"] = undefined; - } -} - -if (typeof Symbol === "function" && Symbol.asyncIterator) { - AsyncGenerator.prototype[Symbol.asyncIterator] = function () { - return this; - }; -} - -AsyncGenerator.prototype.next = function (arg) { - return this._invoke("next", arg); -}; - -AsyncGenerator.prototype["throw"] = function (arg) { - return this._invoke("throw", arg); -}; - -AsyncGenerator.prototype["return"] = function (arg) { - return this._invoke("return", arg); -}; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/AwaitValue.js b/node_modules/@babel/runtime/helpers/esm/AwaitValue.js deleted file mode 100644 index 5237e18f..00000000 --- a/node_modules/@babel/runtime/helpers/esm/AwaitValue.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _AwaitValue(value) { - this.wrapped = value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js b/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js deleted file mode 100644 index 84b59617..00000000 --- a/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js +++ /dev/null @@ -1,28 +0,0 @@ -export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { - var desc = {}; - Object.keys(descriptor).forEach(function (key) { - desc[key] = descriptor[key]; - }); - desc.enumerable = !!desc.enumerable; - desc.configurable = !!desc.configurable; - - if ('value' in desc || desc.initializer) { - desc.writable = true; - } - - desc = decorators.slice().reverse().reduce(function (desc, decorator) { - return decorator(target, property, desc) || desc; - }, desc); - - if (context && desc.initializer !== void 0) { - desc.value = desc.initializer ? desc.initializer.call(context) : void 0; - desc.initializer = undefined; - } - - if (desc.initializer === void 0) { - Object.defineProperty(target, property, desc); - desc = null; - } - - return desc; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js b/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js deleted file mode 100644 index be734fc3..00000000 --- a/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _arrayWithHoles(arr) { - if (Array.isArray(arr)) return arr; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js b/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js deleted file mode 100644 index cbcffa15..00000000 --- a/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +++ /dev/null @@ -1,9 +0,0 @@ -export default function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) { - for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { - arr2[i] = arr[i]; - } - - return arr2; - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js b/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js deleted file mode 100644 index bbf849ca..00000000 --- a/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - - return self; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js b/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js deleted file mode 100644 index eb56fe59..00000000 --- a/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js +++ /dev/null @@ -1,56 +0,0 @@ -export default function _asyncGeneratorDelegate(inner, awaitWrap) { - var iter = {}, - waiting = false; - - function pump(key, value) { - waiting = true; - value = new Promise(function (resolve) { - resolve(inner[key](value)); - }); - return { - done: false, - value: awaitWrap(value) - }; - } - - ; - - if (typeof Symbol === "function" && Symbol.iterator) { - iter[Symbol.iterator] = function () { - return this; - }; - } - - iter.next = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("next", value); - }; - - if (typeof inner["throw"] === "function") { - iter["throw"] = function (value) { - if (waiting) { - waiting = false; - throw value; - } - - return pump("throw", value); - }; - } - - if (typeof inner["return"] === "function") { - iter["return"] = function (value) { - if (waiting) { - waiting = false; - return value; - } - - return pump("return", value); - }; - } - - return iter; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/asyncIterator.js b/node_modules/@babel/runtime/helpers/esm/asyncIterator.js deleted file mode 100644 index e03fa978..00000000 --- a/node_modules/@babel/runtime/helpers/esm/asyncIterator.js +++ /dev/null @@ -1,17 +0,0 @@ -export default function _asyncIterator(iterable) { - var method; - - if (typeof Symbol !== "undefined") { - if (Symbol.asyncIterator) { - method = iterable[Symbol.asyncIterator]; - if (method != null) return method.call(iterable); - } - - if (Symbol.iterator) { - method = iterable[Symbol.iterator]; - if (method != null) return method.call(iterable); - } - } - - throw new TypeError("Object is not async iterable"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js b/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js deleted file mode 100644 index 2a25f543..00000000 --- a/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +++ /dev/null @@ -1,35 +0,0 @@ -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); - } -} - -export default 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); - }); - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js b/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js deleted file mode 100644 index 462f99cd..00000000 --- a/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js +++ /dev/null @@ -1,4 +0,0 @@ -import AwaitValue from "./AwaitValue"; -export default function _awaitAsyncGenerator(value) { - return new AwaitValue(value); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classCallCheck.js b/node_modules/@babel/runtime/helpers/esm/classCallCheck.js deleted file mode 100644 index 2f1738a3..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js b/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js deleted file mode 100644 index f7b6dd57..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _classNameTDZError(name) { - throw new Error("Class \"" + name + "\" cannot be referenced in computed property keys."); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js deleted file mode 100644 index 1f265bc8..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js +++ /dev/null @@ -1,26 +0,0 @@ -export default function _classPrivateFieldDestructureSet(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - - var descriptor = privateMap.get(receiver); - - if (descriptor.set) { - if (!("__destrObj" in descriptor)) { - descriptor.__destrObj = { - set value(v) { - descriptor.set.call(receiver, v); - } - - }; - } - - return descriptor.__destrObj; - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - return descriptor; - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js deleted file mode 100644 index f8287f11..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js +++ /dev/null @@ -1,13 +0,0 @@ -export default function _classPrivateFieldGet(receiver, privateMap) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to get private field on non-instance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js deleted file mode 100644 index 5b10916f..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _classPrivateFieldBase(receiver, privateKey) { - if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) { - throw new TypeError("attempted to use private field on non-instance"); - } - - return receiver; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js deleted file mode 100644 index 5b7e5ac0..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js +++ /dev/null @@ -1,4 +0,0 @@ -var id = 0; -export default function _classPrivateFieldKey(name) { - return "__private_" + id++ + "_" + name; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js deleted file mode 100644 index fb4e5d2b..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js +++ /dev/null @@ -1,19 +0,0 @@ -export default function _classPrivateFieldSet(receiver, privateMap, value) { - var descriptor = privateMap.get(receiver); - - if (!descriptor) { - throw new TypeError("attempted to set private field on non-instance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js deleted file mode 100644 index 38b9d584..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _classPrivateMethodGet(receiver, privateSet, fn) { - if (!privateSet.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - - return fn; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js deleted file mode 100644 index 2bbaf3a7..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _classPrivateMethodSet() { - throw new TypeError("attempted to reassign private method"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js deleted file mode 100644 index 75a9b7ce..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js +++ /dev/null @@ -1,11 +0,0 @@ -export default function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.get) { - return descriptor.get.call(receiver); - } - - return descriptor.value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js deleted file mode 100644 index 163279f2..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js +++ /dev/null @@ -1,17 +0,0 @@ -export default function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - if (descriptor.set) { - descriptor.set.call(receiver, value); - } else { - if (!descriptor.writable) { - throw new TypeError("attempted to set read only private field"); - } - - descriptor.value = value; - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js deleted file mode 100644 index da9b1e57..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _classStaticPrivateMethodGet(receiver, classConstructor, method) { - if (receiver !== classConstructor) { - throw new TypeError("Private static access of wrong provenance"); - } - - return method; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js deleted file mode 100644 index d5ab60a9..00000000 --- a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _classStaticPrivateMethodSet() { - throw new TypeError("attempted to set read only static private field"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/construct.js b/node_modules/@babel/runtime/helpers/esm/construct.js deleted file mode 100644 index 82f20fae..00000000 --- a/node_modules/@babel/runtime/helpers/esm/construct.js +++ /dev/null @@ -1,31 +0,0 @@ -import setPrototypeOf from "./setPrototypeOf"; - -function isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; - - try { - Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); - return true; - } catch (e) { - return false; - } -} - -export default function _construct(Parent, args, Class) { - if (isNativeReflectConstruct()) { - _construct = Reflect.construct; - } else { - _construct = function _construct(Parent, args, Class) { - var a = [null]; - a.push.apply(a, args); - var Constructor = Function.bind.apply(Parent, a); - var instance = new Constructor(); - if (Class) setPrototypeOf(instance, Class.prototype); - return instance; - }; - } - - return _construct.apply(null, arguments); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/createClass.js b/node_modules/@babel/runtime/helpers/esm/createClass.js deleted file mode 100644 index d6cf4122..00000000 --- a/node_modules/@babel/runtime/helpers/esm/createClass.js +++ /dev/null @@ -1,15 +0,0 @@ -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } -} - -export default function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - return Constructor; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/decorate.js b/node_modules/@babel/runtime/helpers/esm/decorate.js deleted file mode 100644 index b6acd1ff..00000000 --- a/node_modules/@babel/runtime/helpers/esm/decorate.js +++ /dev/null @@ -1,396 +0,0 @@ -import toArray from "./toArray"; -import toPropertyKey from "./toPropertyKey"; -export default function _decorate(decorators, factory, superClass, mixins) { - var api = _getDecoratorsApi(); - - if (mixins) { - for (var i = 0; i < mixins.length; i++) { - api = mixins[i](api); - } - } - - var r = factory(function initialize(O) { - api.initializeInstanceElements(O, decorated.elements); - }, superClass); - var decorated = api.decorateClass(_coalesceClassElements(r.d.map(_createElementDescriptor)), decorators); - api.initializeClassElements(r.F, decorated.elements); - return api.runClassFinishers(r.F, decorated.finishers); -} - -function _getDecoratorsApi() { - _getDecoratorsApi = function _getDecoratorsApi() { - return api; - }; - - var api = { - elementsDefinitionOrder: [["method"], ["field"]], - initializeInstanceElements: function initializeInstanceElements(O, elements) { - ["method", "field"].forEach(function (kind) { - elements.forEach(function (element) { - if (element.kind === kind && element.placement === "own") { - this.defineClassElement(O, element); - } - }, this); - }, this); - }, - initializeClassElements: function initializeClassElements(F, elements) { - var proto = F.prototype; - ["method", "field"].forEach(function (kind) { - elements.forEach(function (element) { - var placement = element.placement; - - if (element.kind === kind && (placement === "static" || placement === "prototype")) { - var receiver = placement === "static" ? F : proto; - this.defineClassElement(receiver, element); - } - }, this); - }, this); - }, - defineClassElement: function defineClassElement(receiver, element) { - var descriptor = element.descriptor; - - if (element.kind === "field") { - var initializer = element.initializer; - descriptor = { - enumerable: descriptor.enumerable, - writable: descriptor.writable, - configurable: descriptor.configurable, - value: initializer === void 0 ? void 0 : initializer.call(receiver) - }; - } - - Object.defineProperty(receiver, element.key, descriptor); - }, - decorateClass: function decorateClass(elements, decorators) { - var newElements = []; - var finishers = []; - var placements = { - "static": [], - prototype: [], - own: [] - }; - elements.forEach(function (element) { - this.addElementPlacement(element, placements); - }, this); - elements.forEach(function (element) { - if (!_hasDecorators(element)) return newElements.push(element); - var elementFinishersExtras = this.decorateElement(element, placements); - newElements.push(elementFinishersExtras.element); - newElements.push.apply(newElements, elementFinishersExtras.extras); - finishers.push.apply(finishers, elementFinishersExtras.finishers); - }, this); - - if (!decorators) { - return { - elements: newElements, - finishers: finishers - }; - } - - var result = this.decorateConstructor(newElements, decorators); - finishers.push.apply(finishers, result.finishers); - result.finishers = finishers; - return result; - }, - addElementPlacement: function addElementPlacement(element, placements, silent) { - var keys = placements[element.placement]; - - if (!silent && keys.indexOf(element.key) !== -1) { - throw new TypeError("Duplicated element (" + element.key + ")"); - } - - keys.push(element.key); - }, - decorateElement: function decorateElement(element, placements) { - var extras = []; - var finishers = []; - - for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) { - var keys = placements[element.placement]; - keys.splice(keys.indexOf(element.key), 1); - var elementObject = this.fromElementDescriptor(element); - var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject); - element = elementFinisherExtras.element; - this.addElementPlacement(element, placements); - - if (elementFinisherExtras.finisher) { - finishers.push(elementFinisherExtras.finisher); - } - - var newExtras = elementFinisherExtras.extras; - - if (newExtras) { - for (var j = 0; j < newExtras.length; j++) { - this.addElementPlacement(newExtras[j], placements); - } - - extras.push.apply(extras, newExtras); - } - } - - return { - element: element, - finishers: finishers, - extras: extras - }; - }, - decorateConstructor: function decorateConstructor(elements, decorators) { - var finishers = []; - - for (var i = decorators.length - 1; i >= 0; i--) { - var obj = this.fromClassDescriptor(elements); - var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj); - - if (elementsAndFinisher.finisher !== undefined) { - finishers.push(elementsAndFinisher.finisher); - } - - if (elementsAndFinisher.elements !== undefined) { - elements = elementsAndFinisher.elements; - - for (var j = 0; j < elements.length - 1; j++) { - for (var k = j + 1; k < elements.length; k++) { - if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) { - throw new TypeError("Duplicated element (" + elements[j].key + ")"); - } - } - } - } - } - - return { - elements: elements, - finishers: finishers - }; - }, - fromElementDescriptor: function fromElementDescriptor(element) { - var obj = { - kind: element.kind, - key: element.key, - placement: element.placement, - descriptor: element.descriptor - }; - var desc = { - value: "Descriptor", - configurable: true - }; - Object.defineProperty(obj, Symbol.toStringTag, desc); - if (element.kind === "field") obj.initializer = element.initializer; - return obj; - }, - toElementDescriptors: function toElementDescriptors(elementObjects) { - if (elementObjects === undefined) return; - return toArray(elementObjects).map(function (elementObject) { - var element = this.toElementDescriptor(elementObject); - this.disallowProperty(elementObject, "finisher", "An element descriptor"); - this.disallowProperty(elementObject, "extras", "An element descriptor"); - return element; - }, this); - }, - toElementDescriptor: function toElementDescriptor(elementObject) { - var kind = String(elementObject.kind); - - if (kind !== "method" && kind !== "field") { - throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"'); - } - - var key = toPropertyKey(elementObject.key); - var placement = String(elementObject.placement); - - if (placement !== "static" && placement !== "prototype" && placement !== "own") { - throw new TypeError('An element descriptor\'s .placement property must be one of "static",' + ' "prototype" or "own", but a decorator created an element descriptor' + ' with .placement "' + placement + '"'); - } - - var descriptor = elementObject.descriptor; - this.disallowProperty(elementObject, "elements", "An element descriptor"); - var element = { - kind: kind, - key: key, - placement: placement, - descriptor: Object.assign({}, descriptor) - }; - - if (kind !== "field") { - this.disallowProperty(elementObject, "initializer", "A method descriptor"); - } else { - this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor"); - this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor"); - element.initializer = elementObject.initializer; - } - - return element; - }, - toElementFinisherExtras: function toElementFinisherExtras(elementObject) { - var element = this.toElementDescriptor(elementObject); - - var finisher = _optionalCallableProperty(elementObject, "finisher"); - - var extras = this.toElementDescriptors(elementObject.extras); - return { - element: element, - finisher: finisher, - extras: extras - }; - }, - fromClassDescriptor: function fromClassDescriptor(elements) { - var obj = { - kind: "class", - elements: elements.map(this.fromElementDescriptor, this) - }; - var desc = { - value: "Descriptor", - configurable: true - }; - Object.defineProperty(obj, Symbol.toStringTag, desc); - return obj; - }, - toClassDescriptor: function toClassDescriptor(obj) { - var kind = String(obj.kind); - - if (kind !== "class") { - throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"'); - } - - this.disallowProperty(obj, "key", "A class descriptor"); - this.disallowProperty(obj, "placement", "A class descriptor"); - this.disallowProperty(obj, "descriptor", "A class descriptor"); - this.disallowProperty(obj, "initializer", "A class descriptor"); - this.disallowProperty(obj, "extras", "A class descriptor"); - - var finisher = _optionalCallableProperty(obj, "finisher"); - - var elements = this.toElementDescriptors(obj.elements); - return { - elements: elements, - finisher: finisher - }; - }, - runClassFinishers: function runClassFinishers(constructor, finishers) { - for (var i = 0; i < finishers.length; i++) { - var newConstructor = (0, finishers[i])(constructor); - - if (newConstructor !== undefined) { - if (typeof newConstructor !== "function") { - throw new TypeError("Finishers must return a constructor."); - } - - constructor = newConstructor; - } - } - - return constructor; - }, - disallowProperty: function disallowProperty(obj, name, objectType) { - if (obj[name] !== undefined) { - throw new TypeError(objectType + " can't have a ." + name + " property."); - } - } - }; - return api; -} - -function _createElementDescriptor(def) { - var key = toPropertyKey(def.key); - var descriptor; - - if (def.kind === "method") { - descriptor = { - value: def.value, - writable: true, - configurable: true, - enumerable: false - }; - } else if (def.kind === "get") { - descriptor = { - get: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "set") { - descriptor = { - set: def.value, - configurable: true, - enumerable: false - }; - } else if (def.kind === "field") { - descriptor = { - configurable: true, - writable: true, - enumerable: true - }; - } - - var element = { - kind: def.kind === "field" ? "field" : "method", - key: key, - placement: def["static"] ? "static" : def.kind === "field" ? "own" : "prototype", - descriptor: descriptor - }; - if (def.decorators) element.decorators = def.decorators; - if (def.kind === "field") element.initializer = def.value; - return element; -} - -function _coalesceGetterSetter(element, other) { - if (element.descriptor.get !== undefined) { - other.descriptor.get = element.descriptor.get; - } else { - other.descriptor.set = element.descriptor.set; - } -} - -function _coalesceClassElements(elements) { - var newElements = []; - - var isSameElement = function isSameElement(other) { - return other.kind === "method" && other.key === element.key && other.placement === element.placement; - }; - - for (var i = 0; i < elements.length; i++) { - var element = elements[i]; - var other; - - if (element.kind === "method" && (other = newElements.find(isSameElement))) { - if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) { - if (_hasDecorators(element) || _hasDecorators(other)) { - throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated."); - } - - other.descriptor = element.descriptor; - } else { - if (_hasDecorators(element)) { - if (_hasDecorators(other)) { - throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ")."); - } - - other.decorators = element.decorators; - } - - _coalesceGetterSetter(element, other); - } - } else { - newElements.push(element); - } - } - - return newElements; -} - -function _hasDecorators(element) { - return element.decorators && element.decorators.length; -} - -function _isDataDescriptor(desc) { - return desc !== undefined && !(desc.value === undefined && desc.writable === undefined); -} - -function _optionalCallableProperty(obj, name) { - var value = obj[name]; - - if (value !== undefined && typeof value !== "function") { - throw new TypeError("Expected '" + name + "' to be a function"); - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/defaults.js b/node_modules/@babel/runtime/helpers/esm/defaults.js deleted file mode 100644 index 3de1d8ec..00000000 --- a/node_modules/@babel/runtime/helpers/esm/defaults.js +++ /dev/null @@ -1,14 +0,0 @@ -export default function _defaults(obj, defaults) { - var keys = Object.getOwnPropertyNames(defaults); - - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - var value = Object.getOwnPropertyDescriptor(defaults, key); - - if (value && value.configurable && obj[key] === undefined) { - Object.defineProperty(obj, key, value); - } - } - - return obj; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js b/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js deleted file mode 100644 index 7981acd4..00000000 --- a/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js +++ /dev/null @@ -1,22 +0,0 @@ -export default function _defineEnumerableProperties(obj, descs) { - for (var key in descs) { - var desc = descs[key]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - Object.defineProperty(obj, key, desc); - } - - if (Object.getOwnPropertySymbols) { - var objectSymbols = Object.getOwnPropertySymbols(descs); - - for (var i = 0; i < objectSymbols.length; i++) { - var sym = objectSymbols[i]; - var desc = descs[sym]; - desc.configurable = desc.enumerable = true; - if ("value" in desc) desc.writable = true; - Object.defineProperty(obj, sym, desc); - } - } - - return obj; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/defineProperty.js b/node_modules/@babel/runtime/helpers/esm/defineProperty.js deleted file mode 100644 index 7cf6e59f..00000000 --- a/node_modules/@babel/runtime/helpers/esm/defineProperty.js +++ /dev/null @@ -1,14 +0,0 @@ -export default function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - - return obj; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/extends.js b/node_modules/@babel/runtime/helpers/esm/extends.js deleted file mode 100644 index b9b138d8..00000000 --- a/node_modules/@babel/runtime/helpers/esm/extends.js +++ /dev/null @@ -1,17 +0,0 @@ -export default function _extends() { - _extends = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; - }; - - return _extends.apply(this, arguments); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/get.js b/node_modules/@babel/runtime/helpers/esm/get.js deleted file mode 100644 index a369d4d1..00000000 --- a/node_modules/@babel/runtime/helpers/esm/get.js +++ /dev/null @@ -1,20 +0,0 @@ -import superPropBase from "./superPropBase"; -export default function _get(target, property, receiver) { - if (typeof Reflect !== "undefined" && Reflect.get) { - _get = Reflect.get; - } else { - _get = function _get(target, property, receiver) { - var base = superPropBase(target, property); - if (!base) return; - var desc = Object.getOwnPropertyDescriptor(base, property); - - if (desc.get) { - return desc.get.call(receiver); - } - - return desc.value; - }; - } - - return _get(target, property, receiver || target); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js b/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js deleted file mode 100644 index 5abafe38..00000000 --- a/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +++ /dev/null @@ -1,6 +0,0 @@ -export default function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); - }; - return _getPrototypeOf(o); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/inherits.js b/node_modules/@babel/runtime/helpers/esm/inherits.js deleted file mode 100644 index 035648d0..00000000 --- a/node_modules/@babel/runtime/helpers/esm/inherits.js +++ /dev/null @@ -1,15 +0,0 @@ -import setPrototypeOf from "./setPrototypeOf"; -export default function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } - - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - if (superClass) setPrototypeOf(subClass, superClass); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js b/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js deleted file mode 100644 index 32017e66..00000000 --- a/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _inheritsLoose(subClass, superClass) { - subClass.prototype = Object.create(superClass.prototype); - subClass.prototype.constructor = subClass; - subClass.__proto__ = superClass; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js b/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js deleted file mode 100644 index 26fdea08..00000000 --- a/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js +++ /dev/null @@ -1,9 +0,0 @@ -export default function _initializerDefineProperty(target, property, descriptor, context) { - if (!descriptor) return; - Object.defineProperty(target, property, { - enumerable: descriptor.enumerable, - configurable: descriptor.configurable, - writable: descriptor.writable, - value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 - }); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js b/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js deleted file mode 100644 index 30d518cf..00000000 --- a/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _initializerWarningHelper(descriptor, context) { - throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/instanceof.js b/node_modules/@babel/runtime/helpers/esm/instanceof.js deleted file mode 100644 index 8c43b717..00000000 --- a/node_modules/@babel/runtime/helpers/esm/instanceof.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _instanceof(left, right) { - if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) { - return !!right[Symbol.hasInstance](left); - } else { - return left instanceof right; - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js b/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js deleted file mode 100644 index c2df7b64..00000000 --- a/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - "default": obj - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js b/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js deleted file mode 100644 index d39be9ef..00000000 --- a/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js +++ /dev/null @@ -1,53 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; - -function _getRequireWildcardCache() { - if (typeof WeakMap !== "function") return null; - var cache = new WeakMap(); - - _getRequireWildcardCache = function _getRequireWildcardCache() { - return cache; - }; - - return cache; -} - -export 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; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js b/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js deleted file mode 100644 index 7b1bc821..00000000 --- a/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _isNativeFunction(fn) { - return Function.toString.call(fn).indexOf("[native code]") !== -1; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/iterableToArray.js b/node_modules/@babel/runtime/helpers/esm/iterableToArray.js deleted file mode 100644 index 671e400d..00000000 --- a/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _iterableToArray(iter) { - if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js b/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js deleted file mode 100644 index 535cdde5..00000000 --- a/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +++ /dev/null @@ -1,29 +0,0 @@ -export default function _iterableToArrayLimit(arr, i) { - if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - var _n = true; - var _d = false; - var _e = undefined; - - try { - for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { - _arr.push(_s.value); - - if (i && _arr.length === i) break; - } - } catch (err) { - _d = true; - _e = err; - } finally { - try { - if (!_n && _i["return"] != null) _i["return"](); - } finally { - if (_d) throw _e; - } - } - - return _arr; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js b/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js deleted file mode 100644 index aac82234..00000000 --- a/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js +++ /dev/null @@ -1,15 +0,0 @@ -export default function _iterableToArrayLimitLoose(arr, i) { - if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - - for (var _iterator = arr[Symbol.iterator](), _step; !(_step = _iterator.next()).done;) { - _arr.push(_step.value); - - if (i && _arr.length === i) break; - } - - return _arr; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/jsx.js b/node_modules/@babel/runtime/helpers/esm/jsx.js deleted file mode 100644 index 3a98cec8..00000000 --- a/node_modules/@babel/runtime/helpers/esm/jsx.js +++ /dev/null @@ -1,46 +0,0 @@ -var REACT_ELEMENT_TYPE; -export default function _createRawReactElement(type, props, key, children) { - if (!REACT_ELEMENT_TYPE) { - REACT_ELEMENT_TYPE = typeof Symbol === "function" && Symbol["for"] && Symbol["for"]("react.element") || 0xeac7; - } - - var defaultProps = type && type.defaultProps; - var childrenLength = arguments.length - 3; - - if (!props && childrenLength !== 0) { - props = { - children: void 0 - }; - } - - if (childrenLength === 1) { - props.children = children; - } else if (childrenLength > 1) { - var childArray = new Array(childrenLength); - - for (var i = 0; i < childrenLength; i++) { - childArray[i] = arguments[i + 3]; - } - - props.children = childArray; - } - - if (props && defaultProps) { - for (var propName in defaultProps) { - if (props[propName] === void 0) { - props[propName] = defaultProps[propName]; - } - } - } else if (!props) { - props = defaultProps || {}; - } - - return { - $$typeof: REACT_ELEMENT_TYPE, - type: type, - key: key === undefined ? null : '' + key, - ref: null, - props: props, - _owner: null - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js b/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js deleted file mode 100644 index d6cd8643..00000000 --- a/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function _newArrowCheck(innerThis, boundThis) { - if (innerThis !== boundThis) { - throw new TypeError("Cannot instantiate an arrow function"); - } -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js b/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js deleted file mode 100644 index f94186da..00000000 --- a/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js b/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js deleted file mode 100644 index d6bc738a..00000000 --- a/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js b/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js deleted file mode 100644 index 82b67d2c..00000000 --- a/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _objectDestructuringEmpty(obj) { - if (obj == null) throw new TypeError("Cannot destructure undefined"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/objectSpread.js b/node_modules/@babel/runtime/helpers/esm/objectSpread.js deleted file mode 100644 index 0e189fbe..00000000 --- a/node_modules/@babel/runtime/helpers/esm/objectSpread.js +++ /dev/null @@ -1,19 +0,0 @@ -import defineProperty from "./defineProperty"; -export default function _objectSpread(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? Object(arguments[i]) : {}; - var ownKeys = Object.keys(source); - - if (typeof Object.getOwnPropertySymbols === 'function') { - ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { - return Object.getOwnPropertyDescriptor(source, sym).enumerable; - })); - } - - ownKeys.forEach(function (key) { - defineProperty(target, key, source[key]); - }); - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/objectSpread2.js b/node_modules/@babel/runtime/helpers/esm/objectSpread2.js deleted file mode 100644 index 1da08661..00000000 --- a/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +++ /dev/null @@ -1,35 +0,0 @@ -import defineProperty from "./defineProperty"; - -function ownKeys(object, enumerableOnly) { - var keys = Object.keys(object); - - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - if (enumerableOnly) symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - }); - keys.push.apply(keys, symbols); - } - - return keys; -} - -export default function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; - - if (i % 2) { - ownKeys(Object(source), true).forEach(function (key) { - defineProperty(target, key, source[key]); - }); - } else if (Object.getOwnPropertyDescriptors) { - Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); - } else { - ownKeys(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js b/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js deleted file mode 100644 index 2af6091d..00000000 --- a/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +++ /dev/null @@ -1,19 +0,0 @@ -import objectWithoutPropertiesLoose from "./objectWithoutPropertiesLoose"; -export default function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = objectWithoutPropertiesLoose(source, excluded); - var key, i; - - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js b/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js deleted file mode 100644 index c36815ce..00000000 --- a/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +++ /dev/null @@ -1,14 +0,0 @@ -export default function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; - - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } - - return target; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/package.json b/node_modules/@babel/runtime/helpers/esm/package.json deleted file mode 100644 index aead43de..00000000 --- a/node_modules/@babel/runtime/helpers/esm/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "type": "module" -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js b/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js deleted file mode 100644 index be7b7a44..00000000 --- a/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +++ /dev/null @@ -1,9 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; -import assertThisInitialized from "./assertThisInitialized"; -export default function _possibleConstructorReturn(self, call) { - if (call && (_typeof(call) === "object" || typeof call === "function")) { - return call; - } - - return assertThisInitialized(self); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/readOnlyError.js b/node_modules/@babel/runtime/helpers/esm/readOnlyError.js deleted file mode 100644 index 45d01d72..00000000 --- a/node_modules/@babel/runtime/helpers/esm/readOnlyError.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _readOnlyError(name) { - throw new Error("\"" + name + "\" is read-only"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/set.js b/node_modules/@babel/runtime/helpers/esm/set.js deleted file mode 100644 index fb20af78..00000000 --- a/node_modules/@babel/runtime/helpers/esm/set.js +++ /dev/null @@ -1,51 +0,0 @@ -import superPropBase from "./superPropBase"; -import defineProperty from "./defineProperty"; - -function set(target, property, value, receiver) { - if (typeof Reflect !== "undefined" && Reflect.set) { - set = Reflect.set; - } else { - set = function set(target, property, value, receiver) { - var base = superPropBase(target, property); - var desc; - - if (base) { - desc = Object.getOwnPropertyDescriptor(base, property); - - if (desc.set) { - desc.set.call(receiver, value); - return true; - } else if (!desc.writable) { - return false; - } - } - - desc = Object.getOwnPropertyDescriptor(receiver, property); - - if (desc) { - if (!desc.writable) { - return false; - } - - desc.value = value; - Object.defineProperty(receiver, property, desc); - } else { - defineProperty(receiver, property, value); - } - - return true; - }; - } - - return set(target, property, value, receiver); -} - -export default function _set(target, property, value, receiver, isStrict) { - var s = set(target, property, value, receiver || target); - - if (!s && isStrict) { - throw new Error('failed to set property'); - } - - return value; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js b/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js deleted file mode 100644 index e6ef03e5..00000000 --- a/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +++ /dev/null @@ -1,8 +0,0 @@ -export default function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - - return _setPrototypeOf(o, p); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js b/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js deleted file mode 100644 index cadd9bb5..00000000 --- a/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js +++ /dev/null @@ -1,7 +0,0 @@ -export default function _skipFirstGeneratorNext(fn) { - return function () { - var it = fn.apply(this, arguments); - it.next(); - return it; - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/slicedToArray.js b/node_modules/@babel/runtime/helpers/esm/slicedToArray.js deleted file mode 100644 index f6f10816..00000000 --- a/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithHoles from "./arrayWithHoles"; -import iterableToArrayLimit from "./iterableToArrayLimit"; -import nonIterableRest from "./nonIterableRest"; -export default function _slicedToArray(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js b/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js deleted file mode 100644 index e6757890..00000000 --- a/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithHoles from "./arrayWithHoles"; -import iterableToArrayLimitLoose from "./iterableToArrayLimitLoose"; -import nonIterableRest from "./nonIterableRest"; -export default function _slicedToArrayLoose(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimitLoose(arr, i) || nonIterableRest(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/superPropBase.js b/node_modules/@babel/runtime/helpers/esm/superPropBase.js deleted file mode 100644 index eace947c..00000000 --- a/node_modules/@babel/runtime/helpers/esm/superPropBase.js +++ /dev/null @@ -1,9 +0,0 @@ -import getPrototypeOf from "./getPrototypeOf"; -export default function _superPropBase(object, property) { - while (!Object.prototype.hasOwnProperty.call(object, property)) { - object = getPrototypeOf(object); - if (object === null) break; - } - - return object; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js b/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js deleted file mode 100644 index 421f18ab..00000000 --- a/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +++ /dev/null @@ -1,11 +0,0 @@ -export default function _taggedTemplateLiteral(strings, raw) { - if (!raw) { - raw = strings.slice(0); - } - - return Object.freeze(Object.defineProperties(strings, { - raw: { - value: Object.freeze(raw) - } - })); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js b/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js deleted file mode 100644 index c8f081e9..00000000 --- a/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js +++ /dev/null @@ -1,8 +0,0 @@ -export default function _taggedTemplateLiteralLoose(strings, raw) { - if (!raw) { - raw = strings.slice(0); - } - - strings.raw = raw; - return strings; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/tdz.js b/node_modules/@babel/runtime/helpers/esm/tdz.js deleted file mode 100644 index d5d0adc8..00000000 --- a/node_modules/@babel/runtime/helpers/esm/tdz.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function _tdzError(name) { - throw new ReferenceError(name + " is not defined - temporal dead zone"); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/temporalRef.js b/node_modules/@babel/runtime/helpers/esm/temporalRef.js deleted file mode 100644 index 6d167a30..00000000 --- a/node_modules/@babel/runtime/helpers/esm/temporalRef.js +++ /dev/null @@ -1,5 +0,0 @@ -import undef from "./temporalUndefined"; -import err from "./tdz"; -export default function _temporalRef(val, name) { - return val === undef ? err(name) : val; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js b/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js deleted file mode 100644 index 1a357173..00000000 --- a/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js +++ /dev/null @@ -1 +0,0 @@ -export default function _temporalUndefined() {} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/toArray.js b/node_modules/@babel/runtime/helpers/esm/toArray.js deleted file mode 100644 index 5acb22b3..00000000 --- a/node_modules/@babel/runtime/helpers/esm/toArray.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithHoles from "./arrayWithHoles"; -import iterableToArray from "./iterableToArray"; -import nonIterableRest from "./nonIterableRest"; -export default function _toArray(arr) { - return arrayWithHoles(arr) || iterableToArray(arr) || nonIterableRest(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js b/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js deleted file mode 100644 index 7e480b9d..00000000 --- a/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +++ /dev/null @@ -1,6 +0,0 @@ -import arrayWithoutHoles from "./arrayWithoutHoles"; -import iterableToArray from "./iterableToArray"; -import nonIterableSpread from "./nonIterableSpread"; -export default function _toConsumableArray(arr) { - return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread(); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/toPrimitive.js b/node_modules/@babel/runtime/helpers/esm/toPrimitive.js deleted file mode 100644 index 72a4a097..00000000 --- a/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +++ /dev/null @@ -1,13 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; -export default function _toPrimitive(input, hint) { - if (_typeof(input) !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (_typeof(res) !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - - return (hint === "string" ? String : Number)(input); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js b/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js deleted file mode 100644 index 7b53a4de..00000000 --- a/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +++ /dev/null @@ -1,6 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; -import toPrimitive from "./toPrimitive"; -export default function _toPropertyKey(arg) { - var key = toPrimitive(arg, "string"); - return _typeof(key) === "symbol" ? key : String(key); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/typeof.js b/node_modules/@babel/runtime/helpers/esm/typeof.js deleted file mode 100644 index eb444f73..00000000 --- a/node_modules/@babel/runtime/helpers/esm/typeof.js +++ /dev/null @@ -1,15 +0,0 @@ -export default function _typeof(obj) { - "@babel/helpers - typeof"; - - if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { - _typeof = function _typeof(obj) { - return typeof obj; - }; - } else { - _typeof = function _typeof(obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; - } - - return _typeof(obj); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js b/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js deleted file mode 100644 index 6d6d9811..00000000 --- a/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +++ /dev/null @@ -1,6 +0,0 @@ -import AsyncGenerator from "./AsyncGenerator"; -export default function _wrapAsyncGenerator(fn) { - return function () { - return new AsyncGenerator(fn.apply(this, arguments)); - }; -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js b/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js deleted file mode 100644 index 5c55d058..00000000 --- a/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js +++ /dev/null @@ -1,37 +0,0 @@ -import getPrototypeOf from "./getPrototypeOf"; -import setPrototypeOf from "./setPrototypeOf"; -import isNativeFunction from "./isNativeFunction"; -import construct from "./construct"; -export default function _wrapNativeSuper(Class) { - var _cache = typeof Map === "function" ? new Map() : undefined; - - _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !isNativeFunction(Class)) return Class; - - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - - _cache.set(Class, Wrapper); - } - - function Wrapper() { - return construct(Class, arguments, getPrototypeOf(this).constructor); - } - - Wrapper.prototype = Object.create(Class.prototype, { - constructor: { - value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return setPrototypeOf(Wrapper, Class); - }; - - return _wrapNativeSuper(Class); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js b/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js deleted file mode 100644 index c8854500..00000000 --- a/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +++ /dev/null @@ -1,69 +0,0 @@ -import _typeof from "../../helpers/esm/typeof"; -import wrapNativeSuper from "./wrapNativeSuper"; -import getPrototypeOf from "./getPrototypeOf"; -import possibleConstructorReturn from "./possibleConstructorReturn"; -import inherits from "./inherits"; -export default function _wrapRegExp(re, groups) { - _wrapRegExp = function _wrapRegExp(re, groups) { - return new BabelRegExp(re, undefined, groups); - }; - - var _RegExp = wrapNativeSuper(RegExp); - - var _super = RegExp.prototype; - - var _groups = new WeakMap(); - - function BabelRegExp(re, flags, groups) { - var _this = _RegExp.call(this, re, flags); - - _groups.set(_this, groups || _groups.get(re)); - - return _this; - } - - inherits(BabelRegExp, _RegExp); - - BabelRegExp.prototype.exec = function (str) { - var result = _super.exec.call(this, str); - - if (result) result.groups = buildGroups(result, this); - return result; - }; - - BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { - if (typeof substitution === "string") { - var groups = _groups.get(this); - - return _super[Symbol.replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) { - return "$" + groups[name]; - })); - } else if (typeof substitution === "function") { - var _this = this; - - return _super[Symbol.replace].call(this, str, function () { - var args = []; - args.push.apply(args, arguments); - - if (_typeof(args[args.length - 1]) !== "object") { - args.push(buildGroups(args, _this)); - } - - return substitution.apply(this, args); - }); - } else { - return _super[Symbol.replace].call(this, str, substitution); - } - }; - - function buildGroups(result, re) { - var g = _groups.get(re); - - return Object.keys(g).reduce(function (groups, name) { - groups[name] = result[g[name]]; - return groups; - }, Object.create(null)); - } - - return _wrapRegExp.apply(this, arguments); -} \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/extends.js b/node_modules/@babel/runtime/helpers/extends.js deleted file mode 100644 index 1816877e..00000000 --- a/node_modules/@babel/runtime/helpers/extends.js +++ /dev/null @@ -1,19 +0,0 @@ -function _extends() { - module.exports = _extends = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; - }; - - return _extends.apply(this, arguments); -} - -module.exports = _extends; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/get.js b/node_modules/@babel/runtime/helpers/get.js deleted file mode 100644 index 31ffc656..00000000 --- a/node_modules/@babel/runtime/helpers/get.js +++ /dev/null @@ -1,23 +0,0 @@ -var superPropBase = require("./superPropBase"); - -function _get(target, property, receiver) { - if (typeof Reflect !== "undefined" && Reflect.get) { - module.exports = _get = Reflect.get; - } else { - module.exports = _get = function _get(target, property, receiver) { - var base = superPropBase(target, property); - if (!base) return; - var desc = Object.getOwnPropertyDescriptor(base, property); - - if (desc.get) { - return desc.get.call(receiver); - } - - return desc.value; - }; - } - - return _get(target, property, receiver || target); -} - -module.exports = _get; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/getPrototypeOf.js b/node_modules/@babel/runtime/helpers/getPrototypeOf.js deleted file mode 100644 index 5fc9a169..00000000 --- a/node_modules/@babel/runtime/helpers/getPrototypeOf.js +++ /dev/null @@ -1,8 +0,0 @@ -function _getPrototypeOf(o) { - module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); - }; - return _getPrototypeOf(o); -} - -module.exports = _getPrototypeOf; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/inherits.js b/node_modules/@babel/runtime/helpers/inherits.js deleted file mode 100644 index 6b4f286d..00000000 --- a/node_modules/@babel/runtime/helpers/inherits.js +++ /dev/null @@ -1,18 +0,0 @@ -var setPrototypeOf = require("./setPrototypeOf"); - -function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } - - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - if (superClass) setPrototypeOf(subClass, superClass); -} - -module.exports = _inherits; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/inheritsLoose.js b/node_modules/@babel/runtime/helpers/inheritsLoose.js deleted file mode 100644 index c3f7cdb4..00000000 --- a/node_modules/@babel/runtime/helpers/inheritsLoose.js +++ /dev/null @@ -1,7 +0,0 @@ -function _inheritsLoose(subClass, superClass) { - subClass.prototype = Object.create(superClass.prototype); - subClass.prototype.constructor = subClass; - subClass.__proto__ = superClass; -} - -module.exports = _inheritsLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/initializerDefineProperty.js b/node_modules/@babel/runtime/helpers/initializerDefineProperty.js deleted file mode 100644 index 4caa5ca6..00000000 --- a/node_modules/@babel/runtime/helpers/initializerDefineProperty.js +++ /dev/null @@ -1,11 +0,0 @@ -function _initializerDefineProperty(target, property, descriptor, context) { - if (!descriptor) return; - Object.defineProperty(target, property, { - enumerable: descriptor.enumerable, - configurable: descriptor.configurable, - writable: descriptor.writable, - value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 - }); -} - -module.exports = _initializerDefineProperty; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/initializerWarningHelper.js b/node_modules/@babel/runtime/helpers/initializerWarningHelper.js deleted file mode 100644 index 50ec82cd..00000000 --- a/node_modules/@babel/runtime/helpers/initializerWarningHelper.js +++ /dev/null @@ -1,5 +0,0 @@ -function _initializerWarningHelper(descriptor, context) { - throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); -} - -module.exports = _initializerWarningHelper; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/instanceof.js b/node_modules/@babel/runtime/helpers/instanceof.js deleted file mode 100644 index efe134c1..00000000 --- a/node_modules/@babel/runtime/helpers/instanceof.js +++ /dev/null @@ -1,9 +0,0 @@ -function _instanceof(left, right) { - if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) { - return !!right[Symbol.hasInstance](left); - } else { - return left instanceof right; - } -} - -module.exports = _instanceof; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/interopRequireDefault.js b/node_modules/@babel/runtime/helpers/interopRequireDefault.js deleted file mode 100644 index f713d130..00000000 --- a/node_modules/@babel/runtime/helpers/interopRequireDefault.js +++ /dev/null @@ -1,7 +0,0 @@ -function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - "default": obj - }; -} - -module.exports = _interopRequireDefault; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/interopRequireWildcard.js b/node_modules/@babel/runtime/helpers/interopRequireWildcard.js deleted file mode 100644 index 68fd84c6..00000000 --- a/node_modules/@babel/runtime/helpers/interopRequireWildcard.js +++ /dev/null @@ -1,55 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -function _getRequireWildcardCache() { - if (typeof WeakMap !== "function") return null; - var cache = new WeakMap(); - - _getRequireWildcardCache = function _getRequireWildcardCache() { - 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; -} - -module.exports = _interopRequireWildcard; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/isNativeFunction.js b/node_modules/@babel/runtime/helpers/isNativeFunction.js deleted file mode 100644 index e2dc3ed7..00000000 --- a/node_modules/@babel/runtime/helpers/isNativeFunction.js +++ /dev/null @@ -1,5 +0,0 @@ -function _isNativeFunction(fn) { - return Function.toString.call(fn).indexOf("[native code]") !== -1; -} - -module.exports = _isNativeFunction; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/iterableToArray.js b/node_modules/@babel/runtime/helpers/iterableToArray.js deleted file mode 100644 index e917e579..00000000 --- a/node_modules/@babel/runtime/helpers/iterableToArray.js +++ /dev/null @@ -1,5 +0,0 @@ -function _iterableToArray(iter) { - if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); -} - -module.exports = _iterableToArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js b/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js deleted file mode 100644 index cd01642d..00000000 --- a/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +++ /dev/null @@ -1,31 +0,0 @@ -function _iterableToArrayLimit(arr, i) { - if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - var _n = true; - var _d = false; - var _e = undefined; - - try { - for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { - _arr.push(_s.value); - - if (i && _arr.length === i) break; - } - } catch (err) { - _d = true; - _e = err; - } finally { - try { - if (!_n && _i["return"] != null) _i["return"](); - } finally { - if (_d) throw _e; - } - } - - return _arr; -} - -module.exports = _iterableToArrayLimit; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js b/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js deleted file mode 100644 index ccf8d2f9..00000000 --- a/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js +++ /dev/null @@ -1,17 +0,0 @@ -function _iterableToArrayLimitLoose(arr, i) { - if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { - return; - } - - var _arr = []; - - for (var _iterator = arr[Symbol.iterator](), _step; !(_step = _iterator.next()).done;) { - _arr.push(_step.value); - - if (i && _arr.length === i) break; - } - - return _arr; -} - -module.exports = _iterableToArrayLimitLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/jsx.js b/node_modules/@babel/runtime/helpers/jsx.js deleted file mode 100644 index 4b1ee549..00000000 --- a/node_modules/@babel/runtime/helpers/jsx.js +++ /dev/null @@ -1,49 +0,0 @@ -var REACT_ELEMENT_TYPE; - -function _createRawReactElement(type, props, key, children) { - if (!REACT_ELEMENT_TYPE) { - REACT_ELEMENT_TYPE = typeof Symbol === "function" && Symbol["for"] && Symbol["for"]("react.element") || 0xeac7; - } - - var defaultProps = type && type.defaultProps; - var childrenLength = arguments.length - 3; - - if (!props && childrenLength !== 0) { - props = { - children: void 0 - }; - } - - if (childrenLength === 1) { - props.children = children; - } else if (childrenLength > 1) { - var childArray = new Array(childrenLength); - - for (var i = 0; i < childrenLength; i++) { - childArray[i] = arguments[i + 3]; - } - - props.children = childArray; - } - - if (props && defaultProps) { - for (var propName in defaultProps) { - if (props[propName] === void 0) { - props[propName] = defaultProps[propName]; - } - } - } else if (!props) { - props = defaultProps || {}; - } - - return { - $$typeof: REACT_ELEMENT_TYPE, - type: type, - key: key === undefined ? null : '' + key, - ref: null, - props: props, - _owner: null - }; -} - -module.exports = _createRawReactElement; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/newArrowCheck.js b/node_modules/@babel/runtime/helpers/newArrowCheck.js deleted file mode 100644 index 9b59f58c..00000000 --- a/node_modules/@babel/runtime/helpers/newArrowCheck.js +++ /dev/null @@ -1,7 +0,0 @@ -function _newArrowCheck(innerThis, boundThis) { - if (innerThis !== boundThis) { - throw new TypeError("Cannot instantiate an arrow function"); - } -} - -module.exports = _newArrowCheck; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/nonIterableRest.js b/node_modules/@babel/runtime/helpers/nonIterableRest.js deleted file mode 100644 index eb447dd7..00000000 --- a/node_modules/@babel/runtime/helpers/nonIterableRest.js +++ /dev/null @@ -1,5 +0,0 @@ -function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance"); -} - -module.exports = _nonIterableRest; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/nonIterableSpread.js b/node_modules/@babel/runtime/helpers/nonIterableSpread.js deleted file mode 100644 index 7d7ca436..00000000 --- a/node_modules/@babel/runtime/helpers/nonIterableSpread.js +++ /dev/null @@ -1,5 +0,0 @@ -function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance"); -} - -module.exports = _nonIterableSpread; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js b/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js deleted file mode 100644 index 1d5c04a7..00000000 --- a/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js +++ /dev/null @@ -1,5 +0,0 @@ -function _objectDestructuringEmpty(obj) { - if (obj == null) throw new TypeError("Cannot destructure undefined"); -} - -module.exports = _objectDestructuringEmpty; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/objectSpread.js b/node_modules/@babel/runtime/helpers/objectSpread.js deleted file mode 100644 index ad8036e3..00000000 --- a/node_modules/@babel/runtime/helpers/objectSpread.js +++ /dev/null @@ -1,22 +0,0 @@ -var defineProperty = require("./defineProperty"); - -function _objectSpread(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? Object(arguments[i]) : {}; - var ownKeys = Object.keys(source); - - if (typeof Object.getOwnPropertySymbols === 'function') { - ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { - return Object.getOwnPropertyDescriptor(source, sym).enumerable; - })); - } - - ownKeys.forEach(function (key) { - defineProperty(target, key, source[key]); - }); - } - - return target; -} - -module.exports = _objectSpread; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/objectSpread2.js b/node_modules/@babel/runtime/helpers/objectSpread2.js deleted file mode 100644 index f067f3ec..00000000 --- a/node_modules/@babel/runtime/helpers/objectSpread2.js +++ /dev/null @@ -1,37 +0,0 @@ -var defineProperty = require("./defineProperty"); - -function ownKeys(object, enumerableOnly) { - var keys = Object.keys(object); - - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - if (enumerableOnly) symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - }); - keys.push.apply(keys, symbols); - } - - return keys; -} - -function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; - - if (i % 2) { - ownKeys(Object(source), true).forEach(function (key) { - defineProperty(target, key, source[key]); - }); - } else if (Object.getOwnPropertyDescriptors) { - Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); - } else { - ownKeys(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - } - - return target; -} - -module.exports = _objectSpread2; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/objectWithoutProperties.js b/node_modules/@babel/runtime/helpers/objectWithoutProperties.js deleted file mode 100644 index 253d33c9..00000000 --- a/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +++ /dev/null @@ -1,22 +0,0 @@ -var objectWithoutPropertiesLoose = require("./objectWithoutPropertiesLoose"); - -function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = objectWithoutPropertiesLoose(source, excluded); - var key, i; - - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - - return target; -} - -module.exports = _objectWithoutProperties; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js b/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js deleted file mode 100644 index a58c56b0..00000000 --- a/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +++ /dev/null @@ -1,16 +0,0 @@ -function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; - - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } - - return target; -} - -module.exports = _objectWithoutPropertiesLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js b/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js deleted file mode 100644 index 84f7bf63..00000000 --- a/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +++ /dev/null @@ -1,13 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -var assertThisInitialized = require("./assertThisInitialized"); - -function _possibleConstructorReturn(self, call) { - if (call && (_typeof(call) === "object" || typeof call === "function")) { - return call; - } - - return assertThisInitialized(self); -} - -module.exports = _possibleConstructorReturn; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/readOnlyError.js b/node_modules/@babel/runtime/helpers/readOnlyError.js deleted file mode 100644 index 4e61e3fd..00000000 --- a/node_modules/@babel/runtime/helpers/readOnlyError.js +++ /dev/null @@ -1,5 +0,0 @@ -function _readOnlyError(name) { - throw new Error("\"" + name + "\" is read-only"); -} - -module.exports = _readOnlyError; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/set.js b/node_modules/@babel/runtime/helpers/set.js deleted file mode 100644 index 97fa8c35..00000000 --- a/node_modules/@babel/runtime/helpers/set.js +++ /dev/null @@ -1,54 +0,0 @@ -var superPropBase = require("./superPropBase"); - -var defineProperty = require("./defineProperty"); - -function set(target, property, value, receiver) { - if (typeof Reflect !== "undefined" && Reflect.set) { - set = Reflect.set; - } else { - set = function set(target, property, value, receiver) { - var base = superPropBase(target, property); - var desc; - - if (base) { - desc = Object.getOwnPropertyDescriptor(base, property); - - if (desc.set) { - desc.set.call(receiver, value); - return true; - } else if (!desc.writable) { - return false; - } - } - - desc = Object.getOwnPropertyDescriptor(receiver, property); - - if (desc) { - if (!desc.writable) { - return false; - } - - desc.value = value; - Object.defineProperty(receiver, property, desc); - } else { - defineProperty(receiver, property, value); - } - - return true; - }; - } - - return set(target, property, value, receiver); -} - -function _set(target, property, value, receiver, isStrict) { - var s = set(target, property, value, receiver || target); - - if (!s && isStrict) { - throw new Error('failed to set property'); - } - - return value; -} - -module.exports = _set; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/setPrototypeOf.js b/node_modules/@babel/runtime/helpers/setPrototypeOf.js deleted file mode 100644 index d86e2fc3..00000000 --- a/node_modules/@babel/runtime/helpers/setPrototypeOf.js +++ /dev/null @@ -1,10 +0,0 @@ -function _setPrototypeOf(o, p) { - module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - - return _setPrototypeOf(o, p); -} - -module.exports = _setPrototypeOf; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js b/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js deleted file mode 100644 index e1d6c86b..00000000 --- a/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js +++ /dev/null @@ -1,9 +0,0 @@ -function _skipFirstGeneratorNext(fn) { - return function () { - var it = fn.apply(this, arguments); - it.next(); - return it; - }; -} - -module.exports = _skipFirstGeneratorNext; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/slicedToArray.js b/node_modules/@babel/runtime/helpers/slicedToArray.js deleted file mode 100644 index 243ea9e2..00000000 --- a/node_modules/@babel/runtime/helpers/slicedToArray.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithHoles = require("./arrayWithHoles"); - -var iterableToArrayLimit = require("./iterableToArrayLimit"); - -var nonIterableRest = require("./nonIterableRest"); - -function _slicedToArray(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest(); -} - -module.exports = _slicedToArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js b/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js deleted file mode 100644 index c7e4313b..00000000 --- a/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithHoles = require("./arrayWithHoles"); - -var iterableToArrayLimitLoose = require("./iterableToArrayLimitLoose"); - -var nonIterableRest = require("./nonIterableRest"); - -function _slicedToArrayLoose(arr, i) { - return arrayWithHoles(arr) || iterableToArrayLimitLoose(arr, i) || nonIterableRest(); -} - -module.exports = _slicedToArrayLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/superPropBase.js b/node_modules/@babel/runtime/helpers/superPropBase.js deleted file mode 100644 index bbb34a2d..00000000 --- a/node_modules/@babel/runtime/helpers/superPropBase.js +++ /dev/null @@ -1,12 +0,0 @@ -var getPrototypeOf = require("./getPrototypeOf"); - -function _superPropBase(object, property) { - while (!Object.prototype.hasOwnProperty.call(object, property)) { - object = getPrototypeOf(object); - if (object === null) break; - } - - return object; -} - -module.exports = _superPropBase; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js b/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js deleted file mode 100644 index bdcc1e9d..00000000 --- a/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js +++ /dev/null @@ -1,13 +0,0 @@ -function _taggedTemplateLiteral(strings, raw) { - if (!raw) { - raw = strings.slice(0); - } - - return Object.freeze(Object.defineProperties(strings, { - raw: { - value: Object.freeze(raw) - } - })); -} - -module.exports = _taggedTemplateLiteral; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js b/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js deleted file mode 100644 index beced541..00000000 --- a/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js +++ /dev/null @@ -1,10 +0,0 @@ -function _taggedTemplateLiteralLoose(strings, raw) { - if (!raw) { - raw = strings.slice(0); - } - - strings.raw = raw; - return strings; -} - -module.exports = _taggedTemplateLiteralLoose; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/tdz.js b/node_modules/@babel/runtime/helpers/tdz.js deleted file mode 100644 index 6075e8d3..00000000 --- a/node_modules/@babel/runtime/helpers/tdz.js +++ /dev/null @@ -1,5 +0,0 @@ -function _tdzError(name) { - throw new ReferenceError(name + " is not defined - temporal dead zone"); -} - -module.exports = _tdzError; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/temporalRef.js b/node_modules/@babel/runtime/helpers/temporalRef.js deleted file mode 100644 index 8aa5e5e5..00000000 --- a/node_modules/@babel/runtime/helpers/temporalRef.js +++ /dev/null @@ -1,9 +0,0 @@ -var temporalUndefined = require("./temporalUndefined"); - -var tdz = require("./tdz"); - -function _temporalRef(val, name) { - return val === temporalUndefined ? tdz(name) : val; -} - -module.exports = _temporalRef; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/temporalUndefined.js b/node_modules/@babel/runtime/helpers/temporalUndefined.js deleted file mode 100644 index 416d9b3a..00000000 --- a/node_modules/@babel/runtime/helpers/temporalUndefined.js +++ /dev/null @@ -1,3 +0,0 @@ -function _temporalUndefined() {} - -module.exports = _temporalUndefined; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/toArray.js b/node_modules/@babel/runtime/helpers/toArray.js deleted file mode 100644 index c28fd9e4..00000000 --- a/node_modules/@babel/runtime/helpers/toArray.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithHoles = require("./arrayWithHoles"); - -var iterableToArray = require("./iterableToArray"); - -var nonIterableRest = require("./nonIterableRest"); - -function _toArray(arr) { - return arrayWithHoles(arr) || iterableToArray(arr) || nonIterableRest(); -} - -module.exports = _toArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/toConsumableArray.js b/node_modules/@babel/runtime/helpers/toConsumableArray.js deleted file mode 100644 index 4cd54a33..00000000 --- a/node_modules/@babel/runtime/helpers/toConsumableArray.js +++ /dev/null @@ -1,11 +0,0 @@ -var arrayWithoutHoles = require("./arrayWithoutHoles"); - -var iterableToArray = require("./iterableToArray"); - -var nonIterableSpread = require("./nonIterableSpread"); - -function _toConsumableArray(arr) { - return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread(); -} - -module.exports = _toConsumableArray; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/toPrimitive.js b/node_modules/@babel/runtime/helpers/toPrimitive.js deleted file mode 100644 index cd1d383f..00000000 --- a/node_modules/@babel/runtime/helpers/toPrimitive.js +++ /dev/null @@ -1,16 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -function _toPrimitive(input, hint) { - if (_typeof(input) !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (_typeof(res) !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - - return (hint === "string" ? String : Number)(input); -} - -module.exports = _toPrimitive; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/toPropertyKey.js b/node_modules/@babel/runtime/helpers/toPropertyKey.js deleted file mode 100644 index 108b083e..00000000 --- a/node_modules/@babel/runtime/helpers/toPropertyKey.js +++ /dev/null @@ -1,10 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -var toPrimitive = require("./toPrimitive"); - -function _toPropertyKey(arg) { - var key = toPrimitive(arg, "string"); - return _typeof(key) === "symbol" ? key : String(key); -} - -module.exports = _toPropertyKey; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/typeof.js b/node_modules/@babel/runtime/helpers/typeof.js deleted file mode 100644 index cad12330..00000000 --- a/node_modules/@babel/runtime/helpers/typeof.js +++ /dev/null @@ -1,17 +0,0 @@ -function _typeof(obj) { - "@babel/helpers - typeof"; - - if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { - module.exports = _typeof = function _typeof(obj) { - return typeof obj; - }; - } else { - module.exports = _typeof = function _typeof(obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; - } - - return _typeof(obj); -} - -module.exports = _typeof; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js b/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js deleted file mode 100644 index 11554f3d..00000000 --- a/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +++ /dev/null @@ -1,9 +0,0 @@ -var AsyncGenerator = require("./AsyncGenerator"); - -function _wrapAsyncGenerator(fn) { - return function () { - return new AsyncGenerator(fn.apply(this, arguments)); - }; -} - -module.exports = _wrapAsyncGenerator; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/wrapNativeSuper.js b/node_modules/@babel/runtime/helpers/wrapNativeSuper.js deleted file mode 100644 index 3d4bd7a0..00000000 --- a/node_modules/@babel/runtime/helpers/wrapNativeSuper.js +++ /dev/null @@ -1,43 +0,0 @@ -var getPrototypeOf = require("./getPrototypeOf"); - -var setPrototypeOf = require("./setPrototypeOf"); - -var isNativeFunction = require("./isNativeFunction"); - -var construct = require("./construct"); - -function _wrapNativeSuper(Class) { - var _cache = typeof Map === "function" ? new Map() : undefined; - - module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !isNativeFunction(Class)) return Class; - - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - - _cache.set(Class, Wrapper); - } - - function Wrapper() { - return construct(Class, arguments, getPrototypeOf(this).constructor); - } - - Wrapper.prototype = Object.create(Class.prototype, { - constructor: { - value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return setPrototypeOf(Wrapper, Class); - }; - - return _wrapNativeSuper(Class); -} - -module.exports = _wrapNativeSuper; \ No newline at end of file diff --git a/node_modules/@babel/runtime/helpers/wrapRegExp.js b/node_modules/@babel/runtime/helpers/wrapRegExp.js deleted file mode 100644 index fcf91d83..00000000 --- a/node_modules/@babel/runtime/helpers/wrapRegExp.js +++ /dev/null @@ -1,76 +0,0 @@ -var _typeof = require("../helpers/typeof"); - -var wrapNativeSuper = require("./wrapNativeSuper"); - -var getPrototypeOf = require("./getPrototypeOf"); - -var possibleConstructorReturn = require("./possibleConstructorReturn"); - -var inherits = require("./inherits"); - -function _wrapRegExp(re, groups) { - module.exports = _wrapRegExp = function _wrapRegExp(re, groups) { - return new BabelRegExp(re, undefined, groups); - }; - - var _RegExp = wrapNativeSuper(RegExp); - - var _super = RegExp.prototype; - - var _groups = new WeakMap(); - - function BabelRegExp(re, flags, groups) { - var _this = _RegExp.call(this, re, flags); - - _groups.set(_this, groups || _groups.get(re)); - - return _this; - } - - inherits(BabelRegExp, _RegExp); - - BabelRegExp.prototype.exec = function (str) { - var result = _super.exec.call(this, str); - - if (result) result.groups = buildGroups(result, this); - return result; - }; - - BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { - if (typeof substitution === "string") { - var groups = _groups.get(this); - - return _super[Symbol.replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) { - return "$" + groups[name]; - })); - } else if (typeof substitution === "function") { - var _this = this; - - return _super[Symbol.replace].call(this, str, function () { - var args = []; - args.push.apply(args, arguments); - - if (_typeof(args[args.length - 1]) !== "object") { - args.push(buildGroups(args, _this)); - } - - return substitution.apply(this, args); - }); - } else { - return _super[Symbol.replace].call(this, str, substitution); - } - }; - - function buildGroups(result, re) { - var g = _groups.get(re); - - return Object.keys(g).reduce(function (groups, name) { - groups[name] = result[g[name]]; - return groups; - }, Object.create(null)); - } - - return _wrapRegExp.apply(this, arguments); -} - -module.exports = _wrapRegExp; \ No newline at end of file diff --git a/node_modules/@babel/runtime/package.json b/node_modules/@babel/runtime/package.json deleted file mode 100644 index 0d2b2155..00000000 --- a/node_modules/@babel/runtime/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "@babel/runtime", - "version": "7.8.7", - "description": "babel's modular runtime helpers", - "license": "MIT", - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "https://github.com/babel/babel.git", - "directory": "packages/babel-runtime" - }, - "homepage": "https://babeljs.io/docs/en/next/babel-runtime", - "author": "Sebastian McKenzie ", - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "devDependencies": { - "@babel/helpers": "^7.8.4" - }, - "gitHead": "595f65f33b8e948e34d12be83f700cf8d070c790" -} diff --git a/node_modules/@babel/runtime/regenerator/index.js b/node_modules/@babel/runtime/regenerator/index.js deleted file mode 100644 index 9fd4158a..00000000 --- a/node_modules/@babel/runtime/regenerator/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require("regenerator-runtime"); diff --git a/node_modules/@babel/template/node_modules/.bin/parser b/node_modules/@babel/template/node_modules/.bin/parser index ce7bf97e..c99c4308 120000 --- a/node_modules/@babel/template/node_modules/.bin/parser +++ b/node_modules/@babel/template/node_modules/.bin/parser @@ -1 +1 @@ -../@babel/parser/bin/babel-parser.js \ No newline at end of file +../../../../istanbul-lib-instrument/node_modules/@babel/parser/bin/babel-parser.js \ No newline at end of file diff --git a/node_modules/@babel/traverse/node_modules/.bin/parser b/node_modules/@babel/traverse/node_modules/.bin/parser index ce7bf97e..c99c4308 120000 --- a/node_modules/@babel/traverse/node_modules/.bin/parser +++ b/node_modules/@babel/traverse/node_modules/.bin/parser @@ -1 +1 @@ -../@babel/parser/bin/babel-parser.js \ No newline at end of file +../../../../istanbul-lib-instrument/node_modules/@babel/parser/bin/babel-parser.js \ No newline at end of file diff --git a/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/index.js b/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/index.js deleted file mode 100644 index 44f291c1..00000000 --- a/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/index.js +++ /dev/null @@ -1,47 +0,0 @@ -'use strict'; -const path = require('path'); -const Module = require('module'); -const fs = require('fs'); - -const resolveFrom = (fromDirectory, moduleId, silent) => { - if (typeof fromDirectory !== 'string') { - throw new TypeError(`Expected \`fromDir\` to be of type \`string\`, got \`${typeof fromDirectory}\``); - } - - if (typeof moduleId !== 'string') { - throw new TypeError(`Expected \`moduleId\` to be of type \`string\`, got \`${typeof moduleId}\``); - } - - try { - fromDirectory = fs.realpathSync(fromDirectory); - } catch (error) { - if (error.code === 'ENOENT') { - fromDirectory = path.resolve(fromDirectory); - } else if (silent) { - return; - } else { - throw error; - } - } - - const fromFile = path.join(fromDirectory, 'noop.js'); - - const resolveFileName = () => Module._resolveFilename(moduleId, { - id: fromFile, - filename: fromFile, - paths: Module._nodeModulePaths(fromDirectory) - }); - - if (silent) { - try { - return resolveFileName(); - } catch (error) { - return; - } - } - - return resolveFileName(); -}; - -module.exports = (fromDirectory, moduleId) => resolveFrom(fromDirectory, moduleId); -module.exports.silent = (fromDirectory, moduleId) => resolveFrom(fromDirectory, moduleId, true); diff --git a/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/package.json b/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/package.json deleted file mode 100644 index 733df162..00000000 --- a/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/package.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "name": "resolve-from", - "version": "5.0.0", - "description": "Resolve the path of a module like `require.resolve()` but from a given path", - "license": "MIT", - "repository": "sindresorhus/resolve-from", - "author": { - "name": "Sindre Sorhus", - "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" - }, - "engines": { - "node": ">=8" - }, - "scripts": { - "test": "xo && ava && tsd" - }, - "files": [ - "index.js", - "index.d.ts" - ], - "keywords": [ - "require", - "resolve", - "path", - "module", - "from", - "like", - "import" - ], - "devDependencies": { - "ava": "^1.4.1", - "tsd": "^0.7.2", - "xo": "^0.24.0" - } -} diff --git a/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/readme.md b/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/readme.md deleted file mode 100644 index fd4f46f9..00000000 --- a/node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from/readme.md +++ /dev/null @@ -1,72 +0,0 @@ -# resolve-from [![Build Status](https://travis-ci.org/sindresorhus/resolve-from.svg?branch=master)](https://travis-ci.org/sindresorhus/resolve-from) - -> Resolve the path of a module like [`require.resolve()`](https://nodejs.org/api/globals.html#globals_require_resolve) but from a given path - - -## Install - -``` -$ npm install resolve-from -``` - - -## Usage - -```js -const resolveFrom = require('resolve-from'); - -// There is a file at `./foo/bar.js` - -resolveFrom('foo', './bar'); -//=> '/Users/sindresorhus/dev/test/foo/bar.js' -``` - - -## API - -### resolveFrom(fromDirectory, moduleId) - -Like `require()`, throws when the module can't be found. - -### resolveFrom.silent(fromDirectory, moduleId) - -Returns `undefined` instead of throwing when the module can't be found. - -#### fromDirectory - -Type: `string` - -Directory to resolve from. - -#### moduleId - -Type: `string` - -What you would use in `require()`. - - -## Tip - -Create a partial using a bound function if you want to resolve from the same `fromDirectory` multiple times: - -```js -const resolveFromFoo = resolveFrom.bind(null, 'foo'); - -resolveFromFoo('./bar'); -resolveFromFoo('./baz'); -``` - - -## Related - -- [resolve-cwd](https://github.com/sindresorhus/resolve-cwd) - Resolve the path of a module from the current working directory -- [import-from](https://github.com/sindresorhus/import-from) - Import a module from a given path -- [import-cwd](https://github.com/sindresorhus/import-cwd) - Import a module from the current working directory -- [resolve-pkg](https://github.com/sindresorhus/resolve-pkg) - Resolve the path of a package regardless of it having an entry point -- [import-lazy](https://github.com/sindresorhus/import-lazy) - Import a module lazily -- [resolve-global](https://github.com/sindresorhus/resolve-global) - Resolve the path of a globally installed module - - -## License - -MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/@jest/core/node_modules/.bin/rimraf b/node_modules/@jest/core/node_modules/.bin/rimraf index ec9dc7b7..4cd49a49 120000 --- a/node_modules/@jest/core/node_modules/.bin/rimraf +++ b/node_modules/@jest/core/node_modules/.bin/rimraf @@ -1 +1 @@ -../../../../rimraf/bin.js \ No newline at end of file +../rimraf/bin.js \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/LICENSE b/node_modules/@jest/core/node_modules/rimraf/LICENSE similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/LICENSE rename to node_modules/@jest/core/node_modules/rimraf/LICENSE diff --git a/node_modules/@jest/core/node_modules/rimraf/README.md b/node_modules/@jest/core/node_modules/rimraf/README.md new file mode 100644 index 00000000..423b8cf8 --- /dev/null +++ b/node_modules/@jest/core/node_modules/rimraf/README.md @@ -0,0 +1,101 @@ +[![Build Status](https://travis-ci.org/isaacs/rimraf.svg?branch=master)](https://travis-ci.org/isaacs/rimraf) [![Dependency Status](https://david-dm.org/isaacs/rimraf.svg)](https://david-dm.org/isaacs/rimraf) [![devDependency Status](https://david-dm.org/isaacs/rimraf/dev-status.svg)](https://david-dm.org/isaacs/rimraf#info=devDependencies) + +The [UNIX command](http://en.wikipedia.org/wiki/Rm_(Unix)) `rm -rf` for node. + +Install with `npm install rimraf`, or just drop rimraf.js somewhere. + +## API + +`rimraf(f, [opts], callback)` + +The first parameter will be interpreted as a globbing pattern for files. If you +want to disable globbing you can do so with `opts.disableGlob` (defaults to +`false`). This might be handy, for instance, if you have filenames that contain +globbing wildcard characters. + +The callback will be called with an error if there is one. Certain +errors are handled for you: + +* Windows: `EBUSY` and `ENOTEMPTY` - rimraf will back off a maximum of + `opts.maxBusyTries` times before giving up, adding 100ms of wait + between each attempt. The default `maxBusyTries` is 3. +* `ENOENT` - If the file doesn't exist, rimraf will return + successfully, since your desired outcome is already the case. +* `EMFILE` - Since `readdir` requires opening a file descriptor, it's + possible to hit `EMFILE` if too many file descriptors are in use. + In the sync case, there's nothing to be done for this. But in the + async case, rimraf will gradually back off with timeouts up to + `opts.emfileWait` ms, which defaults to 1000. + +## options + +* unlink, chmod, stat, lstat, rmdir, readdir, + unlinkSync, chmodSync, statSync, lstatSync, rmdirSync, readdirSync + + In order to use a custom file system library, you can override + specific fs functions on the options object. + + If any of these functions are present on the options object, then + the supplied function will be used instead of the default fs + method. + + Sync methods are only relevant for `rimraf.sync()`, of course. + + For example: + + ```javascript + var myCustomFS = require('some-custom-fs') + + rimraf('some-thing', myCustomFS, callback) + ``` + +* maxBusyTries + + If an `EBUSY`, `ENOTEMPTY`, or `EPERM` error code is encountered + on Windows systems, then rimraf will retry with a linear backoff + wait of 100ms longer on each try. The default maxBusyTries is 3. + + Only relevant for async usage. + +* emfileWait + + If an `EMFILE` error is encountered, then rimraf will retry + repeatedly with a linear backoff of 1ms longer on each try, until + the timeout counter hits this max. The default limit is 1000. + + If you repeatedly encounter `EMFILE` errors, then consider using + [graceful-fs](http://npm.im/graceful-fs) in your program. + + Only relevant for async usage. + +* glob + + Set to `false` to disable [glob](http://npm.im/glob) pattern + matching. + + Set to an object to pass options to the glob module. The default + glob options are `{ nosort: true, silent: true }`. + + Glob version 6 is used in this module. + + Relevant for both sync and async usage. + +* disableGlob + + Set to any non-falsey value to disable globbing entirely. + (Equivalent to setting `glob: false`.) + +## rimraf.sync + +It can remove stuff synchronously, too. But that's not so good. Use +the async API. It's better. + +## CLI + +If installed with `npm install rimraf -g` it can be used as a global +command `rimraf [ ...]` which is useful for cross platform support. + +## mkdirp + +If you need to create a directory recursively, check out +[mkdirp](https://github.com/substack/node-mkdirp). diff --git a/node_modules/@jest/core/node_modules/rimraf/bin.js b/node_modules/@jest/core/node_modules/rimraf/bin.js new file mode 100755 index 00000000..023814cc --- /dev/null +++ b/node_modules/@jest/core/node_modules/rimraf/bin.js @@ -0,0 +1,68 @@ +#!/usr/bin/env node + +const rimraf = require('./') + +const path = require('path') + +const isRoot = arg => /^(\/|[a-zA-Z]:\\)$/.test(path.resolve(arg)) +const filterOutRoot = arg => { + const ok = preserveRoot === false || !isRoot(arg) + if (!ok) { + console.error(`refusing to remove ${arg}`) + console.error('Set --no-preserve-root to allow this') + } + return ok +} + +let help = false +let dashdash = false +let noglob = false +let preserveRoot = true +const args = process.argv.slice(2).filter(arg => { + if (dashdash) + return !!arg + else if (arg === '--') + dashdash = true + else if (arg === '--no-glob' || arg === '-G') + noglob = true + else if (arg === '--glob' || arg === '-g') + noglob = false + else if (arg.match(/^(-+|\/)(h(elp)?|\?)$/)) + help = true + else if (arg === '--preserve-root') + preserveRoot = true + else if (arg === '--no-preserve-root') + preserveRoot = false + else + return !!arg +}).filter(arg => !preserveRoot || filterOutRoot(arg)) + +const go = n => { + if (n >= args.length) + return + const options = noglob ? { glob: false } : {} + rimraf(args[n], options, er => { + if (er) + throw er + go(n+1) + }) +} + +if (help || args.length === 0) { + // If they didn't ask for help, then this is not a "success" + const log = help ? console.log : console.error + log('Usage: rimraf [ ...]') + log('') + log(' Deletes all files and folders at "path" recursively.') + log('') + log('Options:') + log('') + log(' -h, --help Display this usage info') + log(' -G, --no-glob Do not expand glob patterns in arguments') + log(' -g, --glob Expand glob patterns in arguments (default)') + log(' --preserve-root Do not remove \'/\' (default)') + log(' --no-preserve-root Do not treat \'/\' specially') + log(' -- Stop parsing flags') + process.exit(help ? 0 : 1) +} else + go(0) diff --git a/node_modules/@jest/core/node_modules/rimraf/package.json b/node_modules/@jest/core/node_modules/rimraf/package.json new file mode 100644 index 00000000..68c98f9c --- /dev/null +++ b/node_modules/@jest/core/node_modules/rimraf/package.json @@ -0,0 +1,29 @@ +{ + "name": "rimraf", + "version": "3.0.0", + "main": "rimraf.js", + "description": "A deep deletion module for node (like `rm -rf`)", + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "license": "ISC", + "repository": "git://github.com/isaacs/rimraf.git", + "scripts": { + "preversion": "npm test", + "postversion": "npm publish", + "postpublish": "git push origin --follow-tags", + "test": "tap test/*.js" + }, + "bin": "./bin.js", + "dependencies": { + "glob": "^7.1.3" + }, + "files": [ + "LICENSE", + "README.md", + "bin.js", + "rimraf.js" + ], + "devDependencies": { + "mkdirp": "^0.5.1", + "tap": "^12.1.1" + } +} diff --git a/node_modules/@jest/core/node_modules/rimraf/rimraf.js b/node_modules/@jest/core/node_modules/rimraf/rimraf.js new file mode 100644 index 00000000..309b8cad --- /dev/null +++ b/node_modules/@jest/core/node_modules/rimraf/rimraf.js @@ -0,0 +1,368 @@ +const assert = require("assert") +const path = require("path") +const fs = require("fs") +let glob = undefined +try { + glob = require("glob") +} catch (_err) { + // treat glob as optional. +} + +const defaultGlobOpts = { + nosort: true, + silent: true +} + +// for EMFILE handling +let timeout = 0 + +const isWindows = (process.platform === "win32") + +const defaults = options => { + const methods = [ + 'unlink', + 'chmod', + 'stat', + 'lstat', + 'rmdir', + 'readdir' + ] + methods.forEach(m => { + options[m] = options[m] || fs[m] + m = m + 'Sync' + options[m] = options[m] || fs[m] + }) + + options.maxBusyTries = options.maxBusyTries || 3 + options.emfileWait = options.emfileWait || 1000 + if (options.glob === false) { + options.disableGlob = true + } + if (options.disableGlob !== true && glob === undefined) { + throw Error('glob dependency not found, set `options.disableGlob = true` if intentional') + } + options.disableGlob = options.disableGlob || false + options.glob = options.glob || defaultGlobOpts +} + +const rimraf = (p, options, cb) => { + if (typeof options === 'function') { + cb = options + options = {} + } + + assert(p, 'rimraf: missing path') + assert.equal(typeof p, 'string', 'rimraf: path should be a string') + assert.equal(typeof cb, 'function', 'rimraf: callback function required') + assert(options, 'rimraf: invalid options argument provided') + assert.equal(typeof options, 'object', 'rimraf: options should be object') + + defaults(options) + + let busyTries = 0 + let errState = null + let n = 0 + + const next = (er) => { + errState = errState || er + if (--n === 0) + cb(errState) + } + + const afterGlob = (er, results) => { + if (er) + return cb(er) + + n = results.length + if (n === 0) + return cb() + + results.forEach(p => { + const CB = (er) => { + if (er) { + if ((er.code === "EBUSY" || er.code === "ENOTEMPTY" || er.code === "EPERM") && + busyTries < options.maxBusyTries) { + busyTries ++ + // try again, with the same exact callback as this one. + return setTimeout(() => rimraf_(p, options, CB), busyTries * 100) + } + + // this one won't happen if graceful-fs is used. + if (er.code === "EMFILE" && timeout < options.emfileWait) { + return setTimeout(() => rimraf_(p, options, CB), timeout ++) + } + + // already gone + if (er.code === "ENOENT") er = null + } + + timeout = 0 + next(er) + } + rimraf_(p, options, CB) + }) + } + + if (options.disableGlob || !glob.hasMagic(p)) + return afterGlob(null, [p]) + + options.lstat(p, (er, stat) => { + if (!er) + return afterGlob(null, [p]) + + glob(p, options.glob, afterGlob) + }) + +} + +// Two possible strategies. +// 1. Assume it's a file. unlink it, then do the dir stuff on EPERM or EISDIR +// 2. Assume it's a directory. readdir, then do the file stuff on ENOTDIR +// +// Both result in an extra syscall when you guess wrong. However, there +// are likely far more normal files in the world than directories. This +// is based on the assumption that a the average number of files per +// directory is >= 1. +// +// If anyone ever complains about this, then I guess the strategy could +// be made configurable somehow. But until then, YAGNI. +const rimraf_ = (p, options, cb) => { + assert(p) + assert(options) + assert(typeof cb === 'function') + + // sunos lets the root user unlink directories, which is... weird. + // so we have to lstat here and make sure it's not a dir. + options.lstat(p, (er, st) => { + if (er && er.code === "ENOENT") + return cb(null) + + // Windows can EPERM on stat. Life is suffering. + if (er && er.code === "EPERM" && isWindows) + fixWinEPERM(p, options, er, cb) + + if (st && st.isDirectory()) + return rmdir(p, options, er, cb) + + options.unlink(p, er => { + if (er) { + if (er.code === "ENOENT") + return cb(null) + if (er.code === "EPERM") + return (isWindows) + ? fixWinEPERM(p, options, er, cb) + : rmdir(p, options, er, cb) + if (er.code === "EISDIR") + return rmdir(p, options, er, cb) + } + return cb(er) + }) + }) +} + +const fixWinEPERM = (p, options, er, cb) => { + assert(p) + assert(options) + assert(typeof cb === 'function') + if (er) + assert(er instanceof Error) + + options.chmod(p, 0o666, er2 => { + if (er2) + cb(er2.code === "ENOENT" ? null : er) + else + options.stat(p, (er3, stats) => { + if (er3) + cb(er3.code === "ENOENT" ? null : er) + else if (stats.isDirectory()) + rmdir(p, options, er, cb) + else + options.unlink(p, cb) + }) + }) +} + +const fixWinEPERMSync = (p, options, er) => { + assert(p) + assert(options) + if (er) + assert(er instanceof Error) + + try { + options.chmodSync(p, 0o666) + } catch (er2) { + if (er2.code === "ENOENT") + return + else + throw er + } + + let stats + try { + stats = options.statSync(p) + } catch (er3) { + if (er3.code === "ENOENT") + return + else + throw er + } + + if (stats.isDirectory()) + rmdirSync(p, options, er) + else + options.unlinkSync(p) +} + +const rmdir = (p, options, originalEr, cb) => { + assert(p) + assert(options) + if (originalEr) + assert(originalEr instanceof Error) + assert(typeof cb === 'function') + + // try to rmdir first, and only readdir on ENOTEMPTY or EEXIST (SunOS) + // if we guessed wrong, and it's not a directory, then + // raise the original error. + options.rmdir(p, er => { + if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) + rmkids(p, options, cb) + else if (er && er.code === "ENOTDIR") + cb(originalEr) + else + cb(er) + }) +} + +const rmkids = (p, options, cb) => { + assert(p) + assert(options) + assert(typeof cb === 'function') + + options.readdir(p, (er, files) => { + if (er) + return cb(er) + let n = files.length + if (n === 0) + return options.rmdir(p, cb) + let errState + files.forEach(f => { + rimraf(path.join(p, f), options, er => { + if (errState) + return + if (er) + return cb(errState = er) + if (--n === 0) + options.rmdir(p, cb) + }) + }) + }) +} + +// this looks simpler, and is strictly *faster*, but will +// tie up the JavaScript thread and fail on excessively +// deep directory trees. +const rimrafSync = (p, options) => { + options = options || {} + defaults(options) + + assert(p, 'rimraf: missing path') + assert.equal(typeof p, 'string', 'rimraf: path should be a string') + assert(options, 'rimraf: missing options') + assert.equal(typeof options, 'object', 'rimraf: options should be object') + + let results + + if (options.disableGlob || !glob.hasMagic(p)) { + results = [p] + } else { + try { + options.lstatSync(p) + results = [p] + } catch (er) { + results = glob.sync(p, options.glob) + } + } + + if (!results.length) + return + + for (let i = 0; i < results.length; i++) { + const p = results[i] + + let st + try { + st = options.lstatSync(p) + } catch (er) { + if (er.code === "ENOENT") + return + + // Windows can EPERM on stat. Life is suffering. + if (er.code === "EPERM" && isWindows) + fixWinEPERMSync(p, options, er) + } + + try { + // sunos lets the root user unlink directories, which is... weird. + if (st && st.isDirectory()) + rmdirSync(p, options, null) + else + options.unlinkSync(p) + } catch (er) { + if (er.code === "ENOENT") + return + if (er.code === "EPERM") + return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er) + if (er.code !== "EISDIR") + throw er + + rmdirSync(p, options, er) + } + } +} + +const rmdirSync = (p, options, originalEr) => { + assert(p) + assert(options) + if (originalEr) + assert(originalEr instanceof Error) + + try { + options.rmdirSync(p) + } catch (er) { + if (er.code === "ENOENT") + return + if (er.code === "ENOTDIR") + throw originalEr + if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") + rmkidsSync(p, options) + } +} + +const rmkidsSync = (p, options) => { + assert(p) + assert(options) + options.readdirSync(p).forEach(f => rimrafSync(path.join(p, f), options)) + + // We only end up here once we got ENOTEMPTY at least once, and + // at this point, we are guaranteed to have removed all the kids. + // So, we know that it won't be ENOENT or ENOTDIR or anything else. + // try really hard to delete stuff on windows, because it has a + // PROFOUNDLY annoying habit of not closing handles promptly when + // files are deleted, resulting in spurious ENOTEMPTY errors. + const retries = isWindows ? 100 : 1 + let i = 0 + do { + let threw = true + try { + const ret = options.rmdirSync(p, options) + threw = false + return ret + } finally { + if (++i < retries && threw) + continue + } + } while (true) +} + +module.exports = rimraf +rimraf.sync = rimrafSync diff --git a/node_modules/@jest/environment/build/index.d.ts b/node_modules/@jest/environment/build/index.d.ts index 5310d92e..4c5a4092 100644 --- a/node_modules/@jest/environment/build/index.d.ts +++ b/node_modules/@jest/environment/build/index.d.ts @@ -16,7 +16,7 @@ export declare type EnvironmentContext = Partial<{ docblockPragmas: Record>; testPath: Config.Path; }>; -export declare type ModuleWrapper = (this: Module['exports'], module: Module, exports: Module['exports'], require: Module['require'], __dirname: string, __filename: Module['filename'], global: Global.Global, jest: Jest, ...extraGlobals: Array) => unknown; +export declare type ModuleWrapper = (this: Module['exports'], module: Module, exports: Module['exports'], require: Module['require'], __dirname: string, __filename: Module['filename'], global: Global.Global, jest?: Jest, ...extraGlobals: Array) => unknown; export declare class JestEnvironment { constructor(config: Config.ProjectConfig, context?: EnvironmentContext); global: Global.Global; @@ -39,7 +39,7 @@ export interface Jest { * * @deprecated Use `expect.extend` instead */ - addMatchers(matchers: Record): void; + addMatchers(matchers: Record): void; /** * Advances all timers by the needed milliseconds so that only the next timeouts/intervals will run. * Optionally, you can provide steps, so it will run steps amount of next timeouts/intervals. @@ -118,7 +118,7 @@ export interface Jest { /** * Determines if the given function is a mocked function. */ - isMockFunction(fn: Function): fn is ReturnType; + isMockFunction(fn: (...args: Array) => unknown): fn is ReturnType; /** * Mocks a module with an auto-mocked version when it is being required. */ diff --git a/node_modules/@jest/environment/node_modules/@jest/types/build/Circus.d.ts b/node_modules/@jest/environment/node_modules/@jest/types/build/Circus.d.ts index e6ad88d7..417a5fe2 100644 --- a/node_modules/@jest/environment/node_modules/@jest/types/build/Circus.d.ts +++ b/node_modules/@jest/environment/node_modules/@jest/types/build/Circus.d.ts @@ -18,7 +18,7 @@ export declare type HookFn = Global.HookFn; export declare type AsyncFn = TestFn | HookFn; export declare type SharedHookType = 'afterAll' | 'beforeAll'; export declare type HookType = SharedHookType | 'afterEach' | 'beforeEach'; -export declare type TestContext = Record; +export declare type TestContext = Record; export declare type Exception = any; export declare type FormattedError = string; export declare type Hook = { @@ -33,6 +33,9 @@ export interface EventHandler { (event: SyncEvent, state: State): void; } export declare type Event = SyncEvent | AsyncEvent; +interface JestGlobals extends Global.TestFrameworkGlobals { + expect: unknown; +} export declare type SyncEvent = { asyncError: Error; mode: BlockMode; @@ -62,6 +65,7 @@ export declare type SyncEvent = { export declare type AsyncEvent = { name: 'setup'; testNamePattern?: string; + runtimeGlobals: JestGlobals; parentProcess: Process; } | { name: 'include_test_location_in_result'; @@ -143,7 +147,7 @@ export declare type RunResult = { export declare type TestResults = Array; export declare type GlobalErrorHandlers = { uncaughtException: Array<(exception: Exception) => void>; - unhandledRejection: Array<(exception: Exception, promise: Promise) => void>; + unhandledRejection: Array<(exception: Exception, promise: Promise) => void>; }; export declare type State = { currentDescribeBlock: DescribeBlock; diff --git a/node_modules/@jest/environment/node_modules/@jest/types/build/Config.d.ts b/node_modules/@jest/environment/node_modules/@jest/types/build/Config.d.ts index f280c296..5f949890 100644 --- a/node_modules/@jest/environment/node_modules/@jest/types/build/Config.d.ts +++ b/node_modules/@jest/environment/node_modules/@jest/types/build/Config.d.ts @@ -42,6 +42,7 @@ export declare type DefaultOptions = { forceCoverageMatch: Array; globals: ConfigGlobals; haste: HasteConfig; + injectGlobals: boolean; maxConcurrency: number; maxWorkers: number | string; moduleDirectories: Array; @@ -64,7 +65,7 @@ export declare type DefaultOptions = { slowTestThreshold: number; snapshotSerializers: Array; testEnvironment: string; - testEnvironmentOptions: Record; + testEnvironmentOptions: Record; testFailureExitCode: string | number; testLocationInResults: boolean; testMatch: Array; @@ -122,6 +123,7 @@ export declare type InitialOptions = Partial<{ globalSetup: string | null | undefined; globalTeardown: string | null | undefined; haste: HasteConfig; + injectGlobals: boolean; reporters: Array; logHeapUsage: boolean; lastCommit: boolean; @@ -169,7 +171,7 @@ export declare type InitialOptions = Partial<{ snapshotSerializers: Array; errorOnDeprecated: boolean; testEnvironment: string; - testEnvironmentOptions: Record; + testEnvironmentOptions: Record; testFailureExitCode: string | number; testLocationInResults: boolean; testMatch: Array; @@ -195,7 +197,7 @@ export declare type InitialOptions = Partial<{ watch: boolean; watchAll: boolean; watchman: boolean; - watchPlugins: Array]>; + watchPlugins: Array]>; }>; export declare type SnapshotUpdateState = 'all' | 'new' | 'none'; declare type NotifyMode = 'always' | 'failure' | 'success' | 'change' | 'success-change' | 'failure-change'; @@ -273,7 +275,7 @@ export declare type GlobalConfig = { watchman: boolean; watchPlugins?: Array<{ path: string; - config: Record; + config: Record; }> | null; }; export declare type ProjectConfig = { @@ -295,6 +297,7 @@ export declare type ProjectConfig = { globalTeardown?: string; globals: ConfigGlobals; haste: HasteConfig; + injectGlobals: boolean; moduleDirectories: Array; moduleFileExtensions: Array; moduleLoader?: Path; @@ -318,7 +321,7 @@ export declare type ProjectConfig = { snapshotResolver?: Path; snapshotSerializers: Array; testEnvironment: string; - testEnvironmentOptions: Record; + testEnvironmentOptions: Record; testMatch: Array; testLocationInResults: boolean; testPathIgnorePatterns: Array; @@ -363,6 +366,7 @@ export declare type Argv = Arguments = (...args: Array) => ReturnType; declare type Jasmine = { _DEFAULT_TIMEOUT_INTERVAL?: number; - addMatchers: Function; + addMatchers: (matchers: Record) => void; }; -declare type Each = ((table: EachTable, ...taggedTemplateData: Array) => (title: string, test: EachTestFn, timeout?: number) => void) | (() => void); +declare type Each = ((table: EachTable, ...taggedTemplateData: Array) => (title: string, test: EachTestFn, timeout?: number) => void) | (() => () => void); +export interface HookBase { + (fn: HookFn, timeout?: number): void; +} export interface ItBase { (testName: TestName, fn: TestFn, timeout?: number): void; each: Each; @@ -34,7 +37,7 @@ export interface ItBase { export interface It extends ItBase { only: ItBase; skip: ItBase; - todo: (testName: TestName, ...rest: Array) => void; + todo: (testName: TestName) => void; } export interface ItConcurrentBase { (testName: string, testFn: ConcurrentTestFn, timeout?: number): void; @@ -66,10 +69,10 @@ export interface TestFrameworkGlobals { describe: Describe; xdescribe: DescribeBase; fdescribe: DescribeBase; - beforeAll: HookFn; - beforeEach: HookFn; - afterEach: HookFn; - afterAll: HookFn; + beforeAll: HookBase; + beforeEach: HookBase; + afterEach: HookBase; + afterAll: HookBase; } export interface GlobalAdditions extends TestFrameworkGlobals { __coverage__: CoverageMapData; @@ -80,6 +83,6 @@ export interface GlobalAdditions extends TestFrameworkGlobals { spyOnProperty: () => void; } export interface Global extends GlobalAdditions, Omit { - [extras: string]: any; + [extras: string]: unknown; } export {}; diff --git a/node_modules/@jest/environment/node_modules/@jest/types/package.json b/node_modules/@jest/environment/node_modules/@jest/types/package.json index 772dfac1..c8aa07c4 100644 --- a/node_modules/@jest/environment/node_modules/@jest/types/package.json +++ b/node_modules/@jest/environment/node_modules/@jest/types/package.json @@ -1,6 +1,6 @@ { "name": "@jest/types", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -22,5 +22,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/environment/node_modules/jest-mock/build/index.d.ts b/node_modules/@jest/environment/node_modules/jest-mock/build/index.d.ts index 4360cd54..ce7ba581 100644 --- a/node_modules/@jest/environment/node_modules/jest-mock/build/index.d.ts +++ b/node_modules/@jest/environment/node_modules/jest-mock/build/index.d.ts @@ -42,12 +42,13 @@ declare namespace JestMock { mockReturnThis(): this; mockReturnValue(value: T): this; mockReturnValueOnce(value: T): this; - mockResolvedValue(value: T): this; - mockResolvedValueOnce(value: T): this; - mockRejectedValue(value: T): this; - mockRejectedValueOnce(value: T): this; + mockResolvedValue(value: Unpromisify): this; + mockResolvedValueOnce(value: Unpromisify): this; + mockRejectedValue(value: unknown): this; + mockRejectedValueOnce(value: unknown): this; } } +declare type Unpromisify = T extends Promise ? R : never; /** * Possible types of a MockFunctionResult. * 'return': The call completed by returning normally. diff --git a/node_modules/@jest/environment/node_modules/jest-mock/build/index.js b/node_modules/@jest/environment/node_modules/jest-mock/build/index.js index 7c1e40df..2ebc513f 100644 --- a/node_modules/@jest/environment/node_modules/jest-mock/build/index.js +++ b/node_modules/@jest/environment/node_modules/jest-mock/build/index.js @@ -21,6 +21,8 @@ function _defineProperty(obj, key, value) { * LICENSE file in the root directory of this source tree. */ +/* eslint-disable local/ban-types-eventually, local/prefer-rest-params-eventually */ + /** * Possible types of a MockFunctionResult. * 'return': The call completed by returning normally. @@ -909,7 +911,6 @@ class ModuleMockerClass { return value == null ? '' + value : typeof value; } } -/* eslint-disable-next-line no-redeclare */ const JestMock = new ModuleMockerClass(global); module.exports = JestMock; diff --git a/node_modules/@jest/environment/node_modules/jest-mock/package.json b/node_modules/@jest/environment/node_modules/jest-mock/package.json index 7478b556..7d609521 100644 --- a/node_modules/@jest/environment/node_modules/jest-mock/package.json +++ b/node_modules/@jest/environment/node_modules/jest-mock/package.json @@ -1,6 +1,6 @@ { "name": "jest-mock", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -10,7 +10,7 @@ "node": ">= 10.14.2" }, "dependencies": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.2", "@types/node": "*" }, "license": "MIT", @@ -19,5 +19,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/environment/package.json b/node_modules/@jest/environment/package.json index 6d43ea96..ef830fa2 100644 --- a/node_modules/@jest/environment/package.json +++ b/node_modules/@jest/environment/package.json @@ -1,6 +1,6 @@ { "name": "@jest/environment", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -10,10 +10,10 @@ "main": "build/index.js", "types": "build/index.d.ts", "dependencies": { - "@jest/fake-timers": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/fake-timers": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", - "jest-mock": "^26.3.0" + "jest-mock": "^26.5.2" }, "engines": { "node": ">= 10.14.2" @@ -21,5 +21,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Circus.d.ts b/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Circus.d.ts index e6ad88d7..417a5fe2 100644 --- a/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Circus.d.ts +++ b/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Circus.d.ts @@ -18,7 +18,7 @@ export declare type HookFn = Global.HookFn; export declare type AsyncFn = TestFn | HookFn; export declare type SharedHookType = 'afterAll' | 'beforeAll'; export declare type HookType = SharedHookType | 'afterEach' | 'beforeEach'; -export declare type TestContext = Record; +export declare type TestContext = Record; export declare type Exception = any; export declare type FormattedError = string; export declare type Hook = { @@ -33,6 +33,9 @@ export interface EventHandler { (event: SyncEvent, state: State): void; } export declare type Event = SyncEvent | AsyncEvent; +interface JestGlobals extends Global.TestFrameworkGlobals { + expect: unknown; +} export declare type SyncEvent = { asyncError: Error; mode: BlockMode; @@ -62,6 +65,7 @@ export declare type SyncEvent = { export declare type AsyncEvent = { name: 'setup'; testNamePattern?: string; + runtimeGlobals: JestGlobals; parentProcess: Process; } | { name: 'include_test_location_in_result'; @@ -143,7 +147,7 @@ export declare type RunResult = { export declare type TestResults = Array; export declare type GlobalErrorHandlers = { uncaughtException: Array<(exception: Exception) => void>; - unhandledRejection: Array<(exception: Exception, promise: Promise) => void>; + unhandledRejection: Array<(exception: Exception, promise: Promise) => void>; }; export declare type State = { currentDescribeBlock: DescribeBlock; diff --git a/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Config.d.ts b/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Config.d.ts index f280c296..5f949890 100644 --- a/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Config.d.ts +++ b/node_modules/@jest/fake-timers/node_modules/@jest/types/build/Config.d.ts @@ -42,6 +42,7 @@ export declare type DefaultOptions = { forceCoverageMatch: Array; globals: ConfigGlobals; haste: HasteConfig; + injectGlobals: boolean; maxConcurrency: number; maxWorkers: number | string; moduleDirectories: Array; @@ -64,7 +65,7 @@ export declare type DefaultOptions = { slowTestThreshold: number; snapshotSerializers: Array; testEnvironment: string; - testEnvironmentOptions: Record; + testEnvironmentOptions: Record; testFailureExitCode: string | number; testLocationInResults: boolean; testMatch: Array; @@ -122,6 +123,7 @@ export declare type InitialOptions = Partial<{ globalSetup: string | null | undefined; globalTeardown: string | null | undefined; haste: HasteConfig; + injectGlobals: boolean; reporters: Array; logHeapUsage: boolean; lastCommit: boolean; @@ -169,7 +171,7 @@ export declare type InitialOptions = Partial<{ snapshotSerializers: Array; errorOnDeprecated: boolean; testEnvironment: string; - testEnvironmentOptions: Record; + testEnvironmentOptions: Record; testFailureExitCode: string | number; testLocationInResults: boolean; testMatch: Array; @@ -195,7 +197,7 @@ export declare type InitialOptions = Partial<{ watch: boolean; watchAll: boolean; watchman: boolean; - watchPlugins: Array]>; + watchPlugins: Array]>; }>; export declare type SnapshotUpdateState = 'all' | 'new' | 'none'; declare type NotifyMode = 'always' | 'failure' | 'success' | 'change' | 'success-change' | 'failure-change'; @@ -273,7 +275,7 @@ export declare type GlobalConfig = { watchman: boolean; watchPlugins?: Array<{ path: string; - config: Record; + config: Record; }> | null; }; export declare type ProjectConfig = { @@ -295,6 +297,7 @@ export declare type ProjectConfig = { globalTeardown?: string; globals: ConfigGlobals; haste: HasteConfig; + injectGlobals: boolean; moduleDirectories: Array; moduleFileExtensions: Array; moduleLoader?: Path; @@ -318,7 +321,7 @@ export declare type ProjectConfig = { snapshotResolver?: Path; snapshotSerializers: Array; testEnvironment: string; - testEnvironmentOptions: Record; + testEnvironmentOptions: Record; testMatch: Array; testLocationInResults: boolean; testPathIgnorePatterns: Array; @@ -363,6 +366,7 @@ export declare type Argv = Arguments = (...args: Array) => ReturnType; declare type Jasmine = { _DEFAULT_TIMEOUT_INTERVAL?: number; - addMatchers: Function; + addMatchers: (matchers: Record) => void; }; -declare type Each = ((table: EachTable, ...taggedTemplateData: Array) => (title: string, test: EachTestFn, timeout?: number) => void) | (() => void); +declare type Each = ((table: EachTable, ...taggedTemplateData: Array) => (title: string, test: EachTestFn, timeout?: number) => void) | (() => () => void); +export interface HookBase { + (fn: HookFn, timeout?: number): void; +} export interface ItBase { (testName: TestName, fn: TestFn, timeout?: number): void; each: Each; @@ -34,7 +37,7 @@ export interface ItBase { export interface It extends ItBase { only: ItBase; skip: ItBase; - todo: (testName: TestName, ...rest: Array) => void; + todo: (testName: TestName) => void; } export interface ItConcurrentBase { (testName: string, testFn: ConcurrentTestFn, timeout?: number): void; @@ -66,10 +69,10 @@ export interface TestFrameworkGlobals { describe: Describe; xdescribe: DescribeBase; fdescribe: DescribeBase; - beforeAll: HookFn; - beforeEach: HookFn; - afterEach: HookFn; - afterAll: HookFn; + beforeAll: HookBase; + beforeEach: HookBase; + afterEach: HookBase; + afterAll: HookBase; } export interface GlobalAdditions extends TestFrameworkGlobals { __coverage__: CoverageMapData; @@ -80,6 +83,6 @@ export interface GlobalAdditions extends TestFrameworkGlobals { spyOnProperty: () => void; } export interface Global extends GlobalAdditions, Omit { - [extras: string]: any; + [extras: string]: unknown; } export {}; diff --git a/node_modules/@jest/fake-timers/node_modules/@jest/types/package.json b/node_modules/@jest/fake-timers/node_modules/@jest/types/package.json index 772dfac1..c8aa07c4 100644 --- a/node_modules/@jest/fake-timers/node_modules/@jest/types/package.json +++ b/node_modules/@jest/fake-timers/node_modules/@jest/types/package.json @@ -1,6 +1,6 @@ { "name": "@jest/types", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -22,5 +22,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/LICENSE b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/LICENSE new file mode 100644 index 00000000..9e841e7a --- /dev/null +++ b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/LICENSE @@ -0,0 +1,21 @@ + MIT License + + Copyright (c) Microsoft Corporation. + + 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 diff --git a/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/README.md b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/README.md new file mode 100644 index 00000000..92a34de8 --- /dev/null +++ b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/README.md @@ -0,0 +1,16 @@ +# Installation +> `npm install --save @types/stack-utils` + +# Summary +This package contains type definitions for stack-utils (https://github.com/tapjs/stack-utils#readme). + +# Details +Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/stack-utils. + +### Additional Details + * Last updated: Tue, 22 Sep 2020 00:22:28 GMT + * Dependencies: none + * Global values: none + +# Credits +These definitions were written by [BendingBender](https://github.com/BendingBender). diff --git a/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/index.d.ts b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/index.d.ts new file mode 100644 index 00000000..3427e350 --- /dev/null +++ b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/index.d.ts @@ -0,0 +1,65 @@ +// Type definitions for stack-utils 2.0 +// Project: https://github.com/tapjs/stack-utils#readme +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +export = StackUtils; + +declare class StackUtils { + static nodeInternals(): RegExp[]; + constructor(options?: StackUtils.Options); + clean(stack: string | string[]): string; + capture(limit?: number, startStackFunction?: Function): StackUtils.CallSite[]; + capture(startStackFunction: Function): StackUtils.CallSite[]; + captureString(limit?: number, startStackFunction?: Function): string; + captureString(startStackFunction: Function): string; + at(startStackFunction?: Function): StackUtils.CallSiteLike; + parseLine(line: string): StackUtils.StackLineData | null; +} + +declare namespace StackUtils { + interface Options { + internals?: RegExp[]; + ignoredPackages?: string[]; + cwd?: string; + wrapCallSite?(callSite: CallSite): CallSite; + } + + interface CallSite { + getThis(): object | undefined; + getTypeName(): string; + getFunction(): Function | undefined; + getFunctionName(): string; + getMethodName(): string | null; + getFileName(): string | undefined; + getLineNumber(): number; + getColumnNumber(): number; + getEvalOrigin(): CallSite | string; + isToplevel(): boolean; + isEval(): boolean; + isNative(): boolean; + isConstructor(): boolean; + } + + interface CallSiteLike extends StackData { + type?: string; + } + + interface StackLineData extends StackData { + evalLine?: number; + evalColumn?: number; + evalFile?: string; + } + + interface StackData { + line?: number; + column?: number; + file?: string; + constructor?: boolean; + evalOrigin?: string; + native?: boolean; + function?: string; + method?: string; + } +} diff --git a/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/package.json b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/package.json new file mode 100644 index 00000000..1f9393ae --- /dev/null +++ b/node_modules/@jest/fake-timers/node_modules/@types/stack-utils/package.json @@ -0,0 +1,24 @@ +{ + "name": "@types/stack-utils", + "version": "2.0.0", + "description": "TypeScript definitions for stack-utils", + "license": "MIT", + "contributors": [ + { + "name": "BendingBender", + "url": "https://github.com/BendingBender", + "githubUsername": "BendingBender" + } + ], + "main": "", + "types": "index.d.ts", + "repository": { + "type": "git", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git", + "directory": "types/stack-utils" + }, + "scripts": {}, + "dependencies": {}, + "typesPublisherContentHash": "53c84779043276d5e313653eabfc4fedae5b103c7dc645555065fdc3b4b0a982", + "typeScriptVersion": "3.2" +} \ No newline at end of file diff --git a/node_modules/@jest/fake-timers/node_modules/jest-message-util/package.json b/node_modules/@jest/fake-timers/node_modules/jest-message-util/package.json index 6f8b6c43..2bbf224a 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-message-util/package.json +++ b/node_modules/@jest/fake-timers/node_modules/jest-message-util/package.json @@ -1,6 +1,6 @@ { "name": "jest-message-util", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -14,8 +14,8 @@ "types": "build/index.d.ts", "dependencies": { "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.3.0", - "@types/stack-utils": "^1.0.1", + "@jest/types": "^26.5.2", + "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", "micromatch": "^4.0.2", @@ -30,5 +30,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.d.ts b/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.d.ts index 4360cd54..ce7ba581 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.d.ts +++ b/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.d.ts @@ -42,12 +42,13 @@ declare namespace JestMock { mockReturnThis(): this; mockReturnValue(value: T): this; mockReturnValueOnce(value: T): this; - mockResolvedValue(value: T): this; - mockResolvedValueOnce(value: T): this; - mockRejectedValue(value: T): this; - mockRejectedValueOnce(value: T): this; + mockResolvedValue(value: Unpromisify): this; + mockResolvedValueOnce(value: Unpromisify): this; + mockRejectedValue(value: unknown): this; + mockRejectedValueOnce(value: unknown): this; } } +declare type Unpromisify = T extends Promise ? R : never; /** * Possible types of a MockFunctionResult. * 'return': The call completed by returning normally. diff --git a/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.js b/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.js index 7c1e40df..2ebc513f 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.js +++ b/node_modules/@jest/fake-timers/node_modules/jest-mock/build/index.js @@ -21,6 +21,8 @@ function _defineProperty(obj, key, value) { * LICENSE file in the root directory of this source tree. */ +/* eslint-disable local/ban-types-eventually, local/prefer-rest-params-eventually */ + /** * Possible types of a MockFunctionResult. * 'return': The call completed by returning normally. @@ -909,7 +911,6 @@ class ModuleMockerClass { return value == null ? '' + value : typeof value; } } -/* eslint-disable-next-line no-redeclare */ const JestMock = new ModuleMockerClass(global); module.exports = JestMock; diff --git a/node_modules/@jest/fake-timers/node_modules/jest-mock/package.json b/node_modules/@jest/fake-timers/node_modules/jest-mock/package.json index 7478b556..7d609521 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-mock/package.json +++ b/node_modules/@jest/fake-timers/node_modules/jest-mock/package.json @@ -1,6 +1,6 @@ { "name": "jest-mock", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -10,7 +10,7 @@ "node": ">= 10.14.2" }, "dependencies": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.2", "@types/node": "*" }, "license": "MIT", @@ -19,5 +19,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/fake-timers/node_modules/jest-util/build/ErrorWithStack.d.ts b/node_modules/@jest/fake-timers/node_modules/jest-util/build/ErrorWithStack.d.ts index 2698f362..79764bd6 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-util/build/ErrorWithStack.d.ts +++ b/node_modules/@jest/fake-timers/node_modules/jest-util/build/ErrorWithStack.d.ts @@ -5,5 +5,5 @@ * LICENSE file in the root directory of this source tree. */ export default class ErrorWithStack extends Error { - constructor(message: string | undefined, callsite: Function); + constructor(message: string | undefined, callsite: (...args: Array) => unknown); } diff --git a/node_modules/@jest/fake-timers/node_modules/jest-util/build/convertDescriptorToString.js b/node_modules/@jest/fake-timers/node_modules/jest-util/build/convertDescriptorToString.js index 0cfab68d..4b776af5 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-util/build/convertDescriptorToString.js +++ b/node_modules/@jest/fake-timers/node_modules/jest-util/build/convertDescriptorToString.js @@ -11,6 +11,8 @@ exports.default = convertDescriptorToString; * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ + +/* eslint-disable local/ban-types-eventually */ // See: https://github.com/facebook/jest/pull/5154 function convertDescriptorToString(descriptor) { if ( diff --git a/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.d.ts b/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.d.ts index 4e6cc5b1..687684f5 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.d.ts +++ b/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.d.ts @@ -5,6 +5,7 @@ * LICENSE file in the root directory of this source tree. */ import type { Config } from '@jest/types'; +declare type Matcher = (str: Config.Path) => boolean; /** * Converts a list of globs into a function that matches a path against the * globs. @@ -22,4 +23,5 @@ import type { Config } from '@jest/types'; * isMatch('pizza.js'); // true * isMatch('pizza.test.js'); // false */ -export default function globsToMatcher(globs: Array): (path: Config.Path) => boolean; +export default function globsToMatcher(globs: Array): Matcher; +export {}; diff --git a/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.js b/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.js index e5177620..9e63c5c3 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.js +++ b/node_modules/@jest/fake-timers/node_modules/jest-util/build/globsToMatcher.js @@ -55,7 +55,7 @@ function globsToMatcher(globs) { if (globs.length === 0) { // Since there were no globs given, we can simply have a fast path here and // return with a very simple function. - return _ => false; + return () => false; } const matchers = globs.map(glob => { diff --git a/node_modules/@jest/fake-timers/node_modules/jest-util/package.json b/node_modules/@jest/fake-timers/node_modules/jest-util/package.json index 01d0850c..b584b933 100644 --- a/node_modules/@jest/fake-timers/node_modules/jest-util/package.json +++ b/node_modules/@jest/fake-timers/node_modules/jest-util/package.json @@ -1,6 +1,6 @@ { "name": "jest-util", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -10,7 +10,7 @@ "main": "build/index.js", "types": "build/index.d.ts", "dependencies": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.2", "@types/node": "*", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", @@ -28,5 +28,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@jest/fake-timers/package.json b/node_modules/@jest/fake-timers/package.json index 73ddfc61..310497f2 100644 --- a/node_modules/@jest/fake-timers/package.json +++ b/node_modules/@jest/fake-timers/package.json @@ -1,6 +1,6 @@ { "name": "@jest/fake-timers", - "version": "26.3.0", + "version": "26.5.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -10,12 +10,12 @@ "main": "build/index.js", "types": "build/index.d.ts", "dependencies": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.2", "@sinonjs/fake-timers": "^6.0.1", "@types/node": "*", - "jest-message-util": "^26.3.0", - "jest-mock": "^26.3.0", - "jest-util": "^26.3.0" + "jest-message-util": "^26.5.2", + "jest-mock": "^26.5.2", + "jest-util": "^26.5.2" }, "devDependencies": { "@types/sinonjs__fake-timers": "^6.0.1" @@ -26,5 +26,5 @@ "publishConfig": { "access": "public" }, - "gitHead": "3a7e06fe855515a848241bb06a6f6e117847443d" + "gitHead": "d2bacceb51e7f05c9cb6d764d5cd886a2fd71267" } diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/LICENSE b/node_modules/@octokit/request/node_modules/@octokit/endpoint/LICENSE deleted file mode 100644 index af5366d0..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License - -Copyright (c) 2018 Octokit 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. diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/README.md b/node_modules/@octokit/request/node_modules/@octokit/endpoint/README.md deleted file mode 100644 index ec54be2c..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/README.md +++ /dev/null @@ -1,421 +0,0 @@ -# endpoint.js - -> Turns GitHub REST API endpoints into generic request options - -[![@latest](https://img.shields.io/npm/v/@octokit/endpoint.svg)](https://www.npmjs.com/package/@octokit/endpoint) -![Build Status](https://github.com/octokit/endpoint.js/workflows/Test/badge.svg) - -`@octokit/endpoint` combines [GitHub REST API routes](https://developer.github.com/v3/) with your parameters and turns them into generic request options that can be used in any request library. - - - - - -- [Usage](#usage) -- [API](#api) - - [`endpoint(route, options)` or `endpoint(options)`](#endpointroute-options-or-endpointoptions) - - [`endpoint.defaults()`](#endpointdefaults) - - [`endpoint.DEFAULTS`](#endpointdefaults) - - [`endpoint.merge(route, options)` or `endpoint.merge(options)`](#endpointmergeroute-options-or-endpointmergeoptions) - - [`endpoint.parse()`](#endpointparse) -- [Special cases](#special-cases) - - [The `data` parameter – set request body directly](#the-data-parameter-%E2%80%93-set-request-body-directly) - - [Set parameters for both the URL/query and the request body](#set-parameters-for-both-the-urlquery-and-the-request-body) -- [LICENSE](#license) - - - -## Usage - - - - - - -
-Browsers - -Load @octokit/endpoint directly from cdn.pika.dev - -```html - -``` - -
-Node - - -Install with npm install @octokit/endpoint - -```js -const { endpoint } = require("@octokit/endpoint"); -// or: import { endpoint } from "@octokit/endpoint"; -``` - -
- -Example for [List organization repositories](https://developer.github.com/v3/repos/#list-organization-repositories) - -```js -const requestOptions = endpoint("GET /orgs/:org/repos", { - headers: { - authorization: "token 0000000000000000000000000000000000000001", - }, - org: "octokit", - type: "private", -}); -``` - -The resulting `requestOptions` looks as follows - -```json -{ - "method": "GET", - "url": "https://api.github.com/orgs/octokit/repos?type=private", - "headers": { - "accept": "application/vnd.github.v3+json", - "authorization": "token 0000000000000000000000000000000000000001", - "user-agent": "octokit/endpoint.js v1.2.3" - } -} -``` - -You can pass `requestOptions` to common request libraries - -```js -const { url, ...options } = requestOptions; -// using with fetch (https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) -fetch(url, options); -// using with request (https://github.com/request/request) -request(requestOptions); -// using with got (https://github.com/sindresorhus/got) -got[options.method](url, options); -// using with axios -axios(requestOptions); -``` - -## API - -### `endpoint(route, options)` or `endpoint(options)` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- name - - type - - description -
- route - - String - - If set, it has to be a string consisting of URL and the request method, e.g., GET /orgs/:org. If it’s set to a URL, only the method defaults to GET. -
- options.method - - String - - Required unless route is set. Any supported http verb. Defaults to GET. -
- options.url - - String - - Required unless route is set. A path or full URL which may contain :variable or {variable} placeholders, - e.g., /orgs/:org/repos. The url is parsed using url-template. -
- options.baseUrl - - String - - Defaults to https://api.github.com. -
- options.headers - - Object - - Custom headers. Passed headers are merged with defaults:
- headers['user-agent'] defaults to octokit-endpoint.js/1.2.3 (where 1.2.3 is the released version).
- headers['accept'] defaults to application/vnd.github.v3+json.
-
- options.mediaType.format - - String - - Media type param, such as raw, diff, or text+json. See Media Types. Setting options.mediaType.format will amend the headers.accept value. -
- options.mediaType.previews - - Array of Strings - - Name of previews, such as mercy, symmetra, or scarlet-witch. See API Previews. If options.mediaType.previews was set as default, the new previews will be merged into the default ones. Setting options.mediaType.previews will amend the headers.accept value. options.mediaType.previews will be merged with an existing array set using .defaults(). -
- options.data - - Any - - Set request body directly instead of setting it to JSON based on additional parameters. See "The data parameter" below. -
- options.request - - Object - - Pass custom meta information for the request. The request object will be returned as is. -
- -All other options will be passed depending on the `method` and `url` options. - -1. If the option key has a placeholder in the `url`, it will be used as the replacement. For example, if the passed options are `{url: '/orgs/:org/repos', org: 'foo'}` the returned `options.url` is `https://api.github.com/orgs/foo/repos`. -2. If the `method` is `GET` or `HEAD`, the option is passed as a query parameter. -3. Otherwise, the parameter is passed in the request body as a JSON key. - -**Result** - -`endpoint()` is a synchronous method and returns an object with the following keys: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- key - - type - - description -
methodStringThe http method. Always lowercase.
urlStringThe url with placeholders replaced with passed parameters.
headersObjectAll header names are lowercased.
bodyAnyThe request body if one is present. Only for PATCH, POST, PUT, DELETE requests.
requestObjectRequest meta option, it will be returned as it was passed into endpoint()
- -### `endpoint.defaults()` - -Override or set default options. Example: - -```js -const request = require("request"); -const myEndpoint = require("@octokit/endpoint").defaults({ - baseUrl: "https://github-enterprise.acme-inc.com/api/v3", - headers: { - "user-agent": "myApp/1.2.3", - authorization: `token 0000000000000000000000000000000000000001`, - }, - org: "my-project", - per_page: 100, -}); - -request(myEndpoint(`GET /orgs/:org/repos`)); -``` - -You can call `.defaults()` again on the returned method, the defaults will cascade. - -```js -const myProjectEndpoint = endpoint.defaults({ - baseUrl: "https://github-enterprise.acme-inc.com/api/v3", - headers: { - "user-agent": "myApp/1.2.3", - }, - org: "my-project", -}); -const myProjectEndpointWithAuth = myProjectEndpoint.defaults({ - headers: { - authorization: `token 0000000000000000000000000000000000000001`, - }, -}); -``` - -`myProjectEndpointWithAuth` now defaults the `baseUrl`, `headers['user-agent']`, -`org` and `headers['authorization']` on top of `headers['accept']` that is set -by the global default. - -### `endpoint.DEFAULTS` - -The current default options. - -```js -endpoint.DEFAULTS.baseUrl; // https://api.github.com -const myEndpoint = endpoint.defaults({ - baseUrl: "https://github-enterprise.acme-inc.com/api/v3", -}); -myEndpoint.DEFAULTS.baseUrl; // https://github-enterprise.acme-inc.com/api/v3 -``` - -### `endpoint.merge(route, options)` or `endpoint.merge(options)` - -Get the defaulted endpoint options, but without parsing them into request options: - -```js -const myProjectEndpoint = endpoint.defaults({ - baseUrl: "https://github-enterprise.acme-inc.com/api/v3", - headers: { - "user-agent": "myApp/1.2.3", - }, - org: "my-project", -}); -myProjectEndpoint.merge("GET /orgs/:org/repos", { - headers: { - authorization: `token 0000000000000000000000000000000000000001`, - }, - org: "my-secret-project", - type: "private", -}); - -// { -// baseUrl: 'https://github-enterprise.acme-inc.com/api/v3', -// method: 'GET', -// url: '/orgs/:org/repos', -// headers: { -// accept: 'application/vnd.github.v3+json', -// authorization: `token 0000000000000000000000000000000000000001`, -// 'user-agent': 'myApp/1.2.3' -// }, -// org: 'my-secret-project', -// type: 'private' -// } -``` - -### `endpoint.parse()` - -Stateless method to turn endpoint options into request options. Calling -`endpoint(options)` is the same as calling `endpoint.parse(endpoint.merge(options))`. - -## Special cases - - - -### The `data` parameter – set request body directly - -Some endpoints such as [Render a Markdown document in raw mode](https://developer.github.com/v3/markdown/#render-a-markdown-document-in-raw-mode) don’t have parameters that are sent as request body keys, instead, the request body needs to be set directly. In these cases, set the `data` parameter. - -```js -const options = endpoint("POST /markdown/raw", { - data: "Hello world github/linguist#1 **cool**, and #1!", - headers: { - accept: "text/html;charset=utf-8", - "content-type": "text/plain", - }, -}); - -// options is -// { -// method: 'post', -// url: 'https://api.github.com/markdown/raw', -// headers: { -// accept: 'text/html;charset=utf-8', -// 'content-type': 'text/plain', -// 'user-agent': userAgent -// }, -// body: 'Hello world github/linguist#1 **cool**, and #1!' -// } -``` - -### Set parameters for both the URL/query and the request body - -There are API endpoints that accept both query parameters as well as a body. In that case, you need to add the query parameters as templates to `options.url`, as defined in the [RFC 6570 URI Template specification](https://tools.ietf.org/html/rfc6570). - -Example - -```js -endpoint( - "POST https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - { - name: "example.zip", - label: "short description", - headers: { - "content-type": "text/plain", - "content-length": 14, - authorization: `token 0000000000000000000000000000000000000001`, - }, - data: "Hello, world!", - } -); -``` - -## LICENSE - -[MIT](LICENSE) diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-node/index.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-node/index.js deleted file mode 100644 index 35f5878c..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-node/index.js +++ /dev/null @@ -1,379 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - -var isPlainObject = _interopDefault(require('is-plain-object')); -var universalUserAgent = require('universal-user-agent'); - -function lowercaseKeys(object) { - if (!object) { - return {}; - } - - return Object.keys(object).reduce((newObj, key) => { - newObj[key.toLowerCase()] = object[key]; - return newObj; - }, {}); -} - -function mergeDeep(defaults, options) { - const result = Object.assign({}, defaults); - Object.keys(options).forEach(key => { - if (isPlainObject(options[key])) { - if (!(key in defaults)) Object.assign(result, { - [key]: options[key] - });else result[key] = mergeDeep(defaults[key], options[key]); - } else { - Object.assign(result, { - [key]: options[key] - }); - } - }); - return result; -} - -function merge(defaults, route, options) { - if (typeof route === "string") { - let [method, url] = route.split(" "); - options = Object.assign(url ? { - method, - url - } : { - url: method - }, options); - } else { - options = Object.assign({}, route); - } // lowercase header names before merging with defaults to avoid duplicates - - - options.headers = lowercaseKeys(options.headers); - const mergedOptions = mergeDeep(defaults || {}, options); // mediaType.previews arrays are merged, instead of overwritten - - if (defaults && defaults.mediaType.previews.length) { - mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(preview => !mergedOptions.mediaType.previews.includes(preview)).concat(mergedOptions.mediaType.previews); - } - - mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map(preview => preview.replace(/-preview/, "")); - return mergedOptions; -} - -function addQueryParameters(url, parameters) { - const separator = /\?/.test(url) ? "&" : "?"; - const names = Object.keys(parameters); - - if (names.length === 0) { - return url; - } - - return url + separator + names.map(name => { - if (name === "q") { - return "q=" + parameters.q.split("+").map(encodeURIComponent).join("+"); - } - - return `${name}=${encodeURIComponent(parameters[name])}`; - }).join("&"); -} - -const urlVariableRegex = /\{[^}]+\}/g; - -function removeNonChars(variableName) { - return variableName.replace(/^\W+|\W+$/g, "").split(/,/); -} - -function extractUrlVariableNames(url) { - const matches = url.match(urlVariableRegex); - - if (!matches) { - return []; - } - - return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []); -} - -function omit(object, keysToOmit) { - return Object.keys(object).filter(option => !keysToOmit.includes(option)).reduce((obj, key) => { - obj[key] = object[key]; - return obj; - }, {}); -} - -// Based on https://github.com/bramstein/url-template, licensed under BSD -// TODO: create separate package. -// -// Copyright (c) 2012-2014, Bram Stein -// All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// 3. The name of the author may not be used to endorse or promote products -// derived from this software without specific prior written permission. -// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED -// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -/* istanbul ignore file */ -function encodeReserved(str) { - return str.split(/(%[0-9A-Fa-f]{2})/g).map(function (part) { - if (!/%[0-9A-Fa-f]/.test(part)) { - part = encodeURI(part).replace(/%5B/g, "[").replace(/%5D/g, "]"); - } - - return part; - }).join(""); -} - -function encodeUnreserved(str) { - return encodeURIComponent(str).replace(/[!'()*]/g, function (c) { - return "%" + c.charCodeAt(0).toString(16).toUpperCase(); - }); -} - -function encodeValue(operator, value, key) { - value = operator === "+" || operator === "#" ? encodeReserved(value) : encodeUnreserved(value); - - if (key) { - return encodeUnreserved(key) + "=" + value; - } else { - return value; - } -} - -function isDefined(value) { - return value !== undefined && value !== null; -} - -function isKeyOperator(operator) { - return operator === ";" || operator === "&" || operator === "?"; -} - -function getValues(context, operator, key, modifier) { - var value = context[key], - result = []; - - if (isDefined(value) && value !== "") { - if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") { - value = value.toString(); - - if (modifier && modifier !== "*") { - value = value.substring(0, parseInt(modifier, 10)); - } - - result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : "")); - } else { - if (modifier === "*") { - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function (value) { - result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : "")); - }); - } else { - Object.keys(value).forEach(function (k) { - if (isDefined(value[k])) { - result.push(encodeValue(operator, value[k], k)); - } - }); - } - } else { - const tmp = []; - - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function (value) { - tmp.push(encodeValue(operator, value)); - }); - } else { - Object.keys(value).forEach(function (k) { - if (isDefined(value[k])) { - tmp.push(encodeUnreserved(k)); - tmp.push(encodeValue(operator, value[k].toString())); - } - }); - } - - if (isKeyOperator(operator)) { - result.push(encodeUnreserved(key) + "=" + tmp.join(",")); - } else if (tmp.length !== 0) { - result.push(tmp.join(",")); - } - } - } - } else { - if (operator === ";") { - if (isDefined(value)) { - result.push(encodeUnreserved(key)); - } - } else if (value === "" && (operator === "&" || operator === "?")) { - result.push(encodeUnreserved(key) + "="); - } else if (value === "") { - result.push(""); - } - } - - return result; -} - -function parseUrl(template) { - return { - expand: expand.bind(null, template) - }; -} - -function expand(template, context) { - var operators = ["+", "#", ".", "/", ";", "?", "&"]; - return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) { - if (expression) { - let operator = ""; - const values = []; - - if (operators.indexOf(expression.charAt(0)) !== -1) { - operator = expression.charAt(0); - expression = expression.substr(1); - } - - expression.split(/,/g).forEach(function (variable) { - var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable); - values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3])); - }); - - if (operator && operator !== "+") { - var separator = ","; - - if (operator === "?") { - separator = "&"; - } else if (operator !== "#") { - separator = operator; - } - - return (values.length !== 0 ? operator : "") + values.join(separator); - } else { - return values.join(","); - } - } else { - return encodeReserved(literal); - } - }); -} - -function parse(options) { - // https://fetch.spec.whatwg.org/#methods - let method = options.method.toUpperCase(); // replace :varname with {varname} to make it RFC 6570 compatible - - let url = (options.url || "/").replace(/:([a-z]\w+)/g, "{+$1}"); - let headers = Object.assign({}, options.headers); - let body; - let parameters = omit(options, ["method", "baseUrl", "url", "headers", "request", "mediaType"]); // extract variable names from URL to calculate remaining variables later - - const urlVariableNames = extractUrlVariableNames(url); - url = parseUrl(url).expand(parameters); - - if (!/^http/.test(url)) { - url = options.baseUrl + url; - } - - const omittedParameters = Object.keys(options).filter(option => urlVariableNames.includes(option)).concat("baseUrl"); - const remainingParameters = omit(parameters, omittedParameters); - const isBinaryRequset = /application\/octet-stream/i.test(headers.accept); - - if (!isBinaryRequset) { - if (options.mediaType.format) { - // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw - headers.accept = headers.accept.split(/,/).map(preview => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(","); - } - - if (options.mediaType.previews.length) { - const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || []; - headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map(preview => { - const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json"; - return `application/vnd.github.${preview}-preview${format}`; - }).join(","); - } - } // for GET/HEAD requests, set URL query parameters from remaining parameters - // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters - - - if (["GET", "HEAD"].includes(method)) { - url = addQueryParameters(url, remainingParameters); - } else { - if ("data" in remainingParameters) { - body = remainingParameters.data; - } else { - if (Object.keys(remainingParameters).length) { - body = remainingParameters; - } else { - headers["content-length"] = 0; - } - } - } // default content-type for JSON if body is set - - - if (!headers["content-type"] && typeof body !== "undefined") { - headers["content-type"] = "application/json; charset=utf-8"; - } // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body. - // fetch does not allow to set `content-length` header, but we can set body to an empty string - - - if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") { - body = ""; - } // Only return body/request keys if present - - - return Object.assign({ - method, - url, - headers - }, typeof body !== "undefined" ? { - body - } : null, options.request ? { - request: options.request - } : null); -} - -function endpointWithDefaults(defaults, route, options) { - return parse(merge(defaults, route, options)); -} - -function withDefaults(oldDefaults, newDefaults) { - const DEFAULTS = merge(oldDefaults, newDefaults); - const endpoint = endpointWithDefaults.bind(null, DEFAULTS); - return Object.assign(endpoint, { - DEFAULTS, - defaults: withDefaults.bind(null, DEFAULTS), - merge: merge.bind(null, DEFAULTS), - parse - }); -} - -const VERSION = "6.0.2"; - -const userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`; // DEFAULTS has all properties set that EndpointOptions has, except url. -// So we use RequestParameters and add method as additional required property. - -const DEFAULTS = { - method: "GET", - baseUrl: "https://api.github.com", - headers: { - accept: "application/vnd.github.v3+json", - "user-agent": userAgent - }, - mediaType: { - format: "", - previews: [] - } -}; - -const endpoint = withDefaults(null, DEFAULTS); - -exports.endpoint = endpoint; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-node/index.js.map b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-node/index.js.map deleted file mode 100644 index 911601bf..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-node/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../dist-src/util/lowercase-keys.js","../dist-src/util/merge-deep.js","../dist-src/merge.js","../dist-src/util/add-query-parameters.js","../dist-src/util/extract-url-variable-names.js","../dist-src/util/omit.js","../dist-src/util/url-template.js","../dist-src/parse.js","../dist-src/endpoint-with-defaults.js","../dist-src/with-defaults.js","../dist-src/version.js","../dist-src/defaults.js","../dist-src/index.js"],"sourcesContent":["export function lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n","import isPlainObject from \"is-plain-object\";\nexport function mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach((key) => {\n if (isPlainObject(options[key])) {\n if (!(key in defaults))\n Object.assign(result, { [key]: options[key] });\n else\n result[key] = mergeDeep(defaults[key], options[key]);\n }\n else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n","import { lowercaseKeys } from \"./util/lowercase-keys\";\nimport { mergeDeep } from \"./util/merge-deep\";\nexport function merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? { method, url } : { url: method }, options);\n }\n else {\n options = Object.assign({}, route);\n }\n // lowercase header names before merging with defaults to avoid duplicates\n options.headers = lowercaseKeys(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n // mediaType.previews arrays are merged, instead of overwritten\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews\n .filter((preview) => !mergedOptions.mediaType.previews.includes(preview))\n .concat(mergedOptions.mediaType.previews);\n }\n mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, \"\"));\n return mergedOptions;\n}\n","export function addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n if (names.length === 0) {\n return url;\n }\n return (url +\n separator +\n names\n .map((name) => {\n if (name === \"q\") {\n return (\"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\"));\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n })\n .join(\"&\"));\n}\n","const urlVariableRegex = /\\{[^}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\nexport function extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n if (!matches) {\n return [];\n }\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n","export function omit(object, keysToOmit) {\n return Object.keys(object)\n .filter((option) => !keysToOmit.includes(option))\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n","// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map(function (part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part).replace(/%5B/g, \"[\").replace(/%5D/g, \"]\");\n }\n return part;\n })\n .join(\"\");\n}\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\nfunction encodeValue(operator, value, key) {\n value =\n operator === \"+\" || operator === \"#\"\n ? encodeReserved(value)\n : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n }\n else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\nfunction getValues(context, operator, key, modifier) {\n var value = context[key], result = [];\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n }\n else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n }\n else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n }\n else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n }\n else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n }\n else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n }\n else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nexport function parseUrl(template) {\n return {\n expand: expand.bind(null, template),\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, function (_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n expression.split(/,/g).forEach(function (variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n if (operator && operator !== \"+\") {\n var separator = \",\";\n if (operator === \"?\") {\n separator = \"&\";\n }\n else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n }\n else {\n return values.join(\",\");\n }\n }\n else {\n return encodeReserved(literal);\n }\n });\n}\n","import { addQueryParameters } from \"./util/add-query-parameters\";\nimport { extractUrlVariableNames } from \"./util/extract-url-variable-names\";\nimport { omit } from \"./util/omit\";\nimport { parseUrl } from \"./util/url-template\";\nexport function parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase();\n // replace :varname with {varname} to make it RFC 6570 compatible\n let url = (options.url || \"/\").replace(/:([a-z]\\w+)/g, \"{+$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"mediaType\",\n ]);\n // extract variable names from URL to calculate remaining variables later\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n const omittedParameters = Object.keys(options)\n .filter((option) => urlVariableNames.includes(option))\n .concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequset = /application\\/octet-stream/i.test(headers.accept);\n if (!isBinaryRequset) {\n if (options.mediaType.format) {\n // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept\n .split(/,/)\n .map((preview) => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))\n .join(\",\");\n }\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader\n .concat(options.mediaType.previews)\n .map((preview) => {\n const format = options.mediaType.format\n ? `.${options.mediaType.format}`\n : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n })\n .join(\",\");\n }\n }\n // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n }\n else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n }\n else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n else {\n headers[\"content-length\"] = 0;\n }\n }\n }\n // default content-type for JSON if body is set\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n // Only return body/request keys if present\n return Object.assign({ method, url, headers }, typeof body !== \"undefined\" ? { body } : null, options.request ? { request: options.request } : null);\n}\n","import { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n","import { endpointWithDefaults } from \"./endpoint-with-defaults\";\nimport { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse,\n });\n}\n","export const VERSION = \"6.0.2\";\n","import { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nconst userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\n// DEFAULTS has all properties set that EndpointOptions has, except url.\n// So we use RequestParameters and add method as additional required property.\nexport const DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent,\n },\n mediaType: {\n format: \"\",\n previews: [],\n },\n};\n","import { withDefaults } from \"./with-defaults\";\nimport { DEFAULTS } from \"./defaults\";\nexport const endpoint = withDefaults(null, DEFAULTS);\n"],"names":["lowercaseKeys","object","Object","keys","reduce","newObj","key","toLowerCase","mergeDeep","defaults","options","result","assign","forEach","isPlainObject","merge","route","method","url","split","headers","mergedOptions","mediaType","previews","length","filter","preview","includes","concat","map","replace","addQueryParameters","parameters","separator","test","names","name","q","encodeURIComponent","join","urlVariableRegex","removeNonChars","variableName","extractUrlVariableNames","matches","match","a","b","omit","keysToOmit","option","obj","encodeReserved","str","part","encodeURI","encodeUnreserved","c","charCodeAt","toString","toUpperCase","encodeValue","operator","value","isDefined","undefined","isKeyOperator","getValues","context","modifier","substring","parseInt","push","Array","isArray","k","tmp","parseUrl","template","expand","bind","operators","_","expression","literal","values","indexOf","charAt","substr","variable","exec","parse","body","urlVariableNames","baseUrl","omittedParameters","remainingParameters","isBinaryRequset","accept","format","previewsFromAcceptHeader","data","request","endpointWithDefaults","withDefaults","oldDefaults","newDefaults","DEFAULTS","endpoint","VERSION","userAgent","getUserAgent"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/defaults.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/defaults.js deleted file mode 100644 index 456e586a..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/defaults.js +++ /dev/null @@ -1,17 +0,0 @@ -import { getUserAgent } from "universal-user-agent"; -import { VERSION } from "./version"; -const userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`; -// DEFAULTS has all properties set that EndpointOptions has, except url. -// So we use RequestParameters and add method as additional required property. -export const DEFAULTS = { - method: "GET", - baseUrl: "https://api.github.com", - headers: { - accept: "application/vnd.github.v3+json", - "user-agent": userAgent, - }, - mediaType: { - format: "", - previews: [], - }, -}; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js deleted file mode 100644 index 5763758f..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js +++ /dev/null @@ -1,5 +0,0 @@ -import { merge } from "./merge"; -import { parse } from "./parse"; -export function endpointWithDefaults(defaults, route, options) { - return parse(merge(defaults, route, options)); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/index.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/index.js deleted file mode 100644 index 599917f9..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/index.js +++ /dev/null @@ -1,3 +0,0 @@ -import { withDefaults } from "./with-defaults"; -import { DEFAULTS } from "./defaults"; -export const endpoint = withDefaults(null, DEFAULTS); diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/merge.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/merge.js deleted file mode 100644 index d79ae65b..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/merge.js +++ /dev/null @@ -1,22 +0,0 @@ -import { lowercaseKeys } from "./util/lowercase-keys"; -import { mergeDeep } from "./util/merge-deep"; -export function merge(defaults, route, options) { - if (typeof route === "string") { - let [method, url] = route.split(" "); - options = Object.assign(url ? { method, url } : { url: method }, options); - } - else { - options = Object.assign({}, route); - } - // lowercase header names before merging with defaults to avoid duplicates - options.headers = lowercaseKeys(options.headers); - const mergedOptions = mergeDeep(defaults || {}, options); - // mediaType.previews arrays are merged, instead of overwritten - if (defaults && defaults.mediaType.previews.length) { - mergedOptions.mediaType.previews = defaults.mediaType.previews - .filter((preview) => !mergedOptions.mediaType.previews.includes(preview)) - .concat(mergedOptions.mediaType.previews); - } - mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, "")); - return mergedOptions; -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/parse.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/parse.js deleted file mode 100644 index 91197c83..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/parse.js +++ /dev/null @@ -1,81 +0,0 @@ -import { addQueryParameters } from "./util/add-query-parameters"; -import { extractUrlVariableNames } from "./util/extract-url-variable-names"; -import { omit } from "./util/omit"; -import { parseUrl } from "./util/url-template"; -export function parse(options) { - // https://fetch.spec.whatwg.org/#methods - let method = options.method.toUpperCase(); - // replace :varname with {varname} to make it RFC 6570 compatible - let url = (options.url || "/").replace(/:([a-z]\w+)/g, "{+$1}"); - let headers = Object.assign({}, options.headers); - let body; - let parameters = omit(options, [ - "method", - "baseUrl", - "url", - "headers", - "request", - "mediaType", - ]); - // extract variable names from URL to calculate remaining variables later - const urlVariableNames = extractUrlVariableNames(url); - url = parseUrl(url).expand(parameters); - if (!/^http/.test(url)) { - url = options.baseUrl + url; - } - const omittedParameters = Object.keys(options) - .filter((option) => urlVariableNames.includes(option)) - .concat("baseUrl"); - const remainingParameters = omit(parameters, omittedParameters); - const isBinaryRequset = /application\/octet-stream/i.test(headers.accept); - if (!isBinaryRequset) { - if (options.mediaType.format) { - // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw - headers.accept = headers.accept - .split(/,/) - .map((preview) => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)) - .join(","); - } - if (options.mediaType.previews.length) { - const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || []; - headers.accept = previewsFromAcceptHeader - .concat(options.mediaType.previews) - .map((preview) => { - const format = options.mediaType.format - ? `.${options.mediaType.format}` - : "+json"; - return `application/vnd.github.${preview}-preview${format}`; - }) - .join(","); - } - } - // for GET/HEAD requests, set URL query parameters from remaining parameters - // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters - if (["GET", "HEAD"].includes(method)) { - url = addQueryParameters(url, remainingParameters); - } - else { - if ("data" in remainingParameters) { - body = remainingParameters.data; - } - else { - if (Object.keys(remainingParameters).length) { - body = remainingParameters; - } - else { - headers["content-length"] = 0; - } - } - } - // default content-type for JSON if body is set - if (!headers["content-type"] && typeof body !== "undefined") { - headers["content-type"] = "application/json; charset=utf-8"; - } - // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body. - // fetch does not allow to set `content-length` header, but we can set body to an empty string - if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") { - body = ""; - } - // Only return body/request keys if present - return Object.assign({ method, url, headers }, typeof body !== "undefined" ? { body } : null, options.request ? { request: options.request } : null); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js deleted file mode 100644 index d26be314..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js +++ /dev/null @@ -1,17 +0,0 @@ -export function addQueryParameters(url, parameters) { - const separator = /\?/.test(url) ? "&" : "?"; - const names = Object.keys(parameters); - if (names.length === 0) { - return url; - } - return (url + - separator + - names - .map((name) => { - if (name === "q") { - return ("q=" + parameters.q.split("+").map(encodeURIComponent).join("+")); - } - return `${name}=${encodeURIComponent(parameters[name])}`; - }) - .join("&")); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js deleted file mode 100644 index 3e75db28..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js +++ /dev/null @@ -1,11 +0,0 @@ -const urlVariableRegex = /\{[^}]+\}/g; -function removeNonChars(variableName) { - return variableName.replace(/^\W+|\W+$/g, "").split(/,/); -} -export function extractUrlVariableNames(url) { - const matches = url.match(urlVariableRegex); - if (!matches) { - return []; - } - return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js deleted file mode 100644 index 07806425..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js +++ /dev/null @@ -1,9 +0,0 @@ -export function lowercaseKeys(object) { - if (!object) { - return {}; - } - return Object.keys(object).reduce((newObj, key) => { - newObj[key.toLowerCase()] = object[key]; - return newObj; - }, {}); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/merge-deep.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/merge-deep.js deleted file mode 100644 index eca9a72b..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/merge-deep.js +++ /dev/null @@ -1,16 +0,0 @@ -import isPlainObject from "is-plain-object"; -export function mergeDeep(defaults, options) { - const result = Object.assign({}, defaults); - Object.keys(options).forEach((key) => { - if (isPlainObject(options[key])) { - if (!(key in defaults)) - Object.assign(result, { [key]: options[key] }); - else - result[key] = mergeDeep(defaults[key], options[key]); - } - else { - Object.assign(result, { [key]: options[key] }); - } - }); - return result; -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/omit.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/omit.js deleted file mode 100644 index 62450310..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/omit.js +++ /dev/null @@ -1,8 +0,0 @@ -export function omit(object, keysToOmit) { - return Object.keys(object) - .filter((option) => !keysToOmit.includes(option)) - .reduce((obj, key) => { - obj[key] = object[key]; - return obj; - }, {}); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/url-template.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/url-template.js deleted file mode 100644 index 439b3fee..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/util/url-template.js +++ /dev/null @@ -1,164 +0,0 @@ -// Based on https://github.com/bramstein/url-template, licensed under BSD -// TODO: create separate package. -// -// Copyright (c) 2012-2014, Bram Stein -// All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// 3. The name of the author may not be used to endorse or promote products -// derived from this software without specific prior written permission. -// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED -// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -/* istanbul ignore file */ -function encodeReserved(str) { - return str - .split(/(%[0-9A-Fa-f]{2})/g) - .map(function (part) { - if (!/%[0-9A-Fa-f]/.test(part)) { - part = encodeURI(part).replace(/%5B/g, "[").replace(/%5D/g, "]"); - } - return part; - }) - .join(""); -} -function encodeUnreserved(str) { - return encodeURIComponent(str).replace(/[!'()*]/g, function (c) { - return "%" + c.charCodeAt(0).toString(16).toUpperCase(); - }); -} -function encodeValue(operator, value, key) { - value = - operator === "+" || operator === "#" - ? encodeReserved(value) - : encodeUnreserved(value); - if (key) { - return encodeUnreserved(key) + "=" + value; - } - else { - return value; - } -} -function isDefined(value) { - return value !== undefined && value !== null; -} -function isKeyOperator(operator) { - return operator === ";" || operator === "&" || operator === "?"; -} -function getValues(context, operator, key, modifier) { - var value = context[key], result = []; - if (isDefined(value) && value !== "") { - if (typeof value === "string" || - typeof value === "number" || - typeof value === "boolean") { - value = value.toString(); - if (modifier && modifier !== "*") { - value = value.substring(0, parseInt(modifier, 10)); - } - result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : "")); - } - else { - if (modifier === "*") { - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function (value) { - result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : "")); - }); - } - else { - Object.keys(value).forEach(function (k) { - if (isDefined(value[k])) { - result.push(encodeValue(operator, value[k], k)); - } - }); - } - } - else { - const tmp = []; - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function (value) { - tmp.push(encodeValue(operator, value)); - }); - } - else { - Object.keys(value).forEach(function (k) { - if (isDefined(value[k])) { - tmp.push(encodeUnreserved(k)); - tmp.push(encodeValue(operator, value[k].toString())); - } - }); - } - if (isKeyOperator(operator)) { - result.push(encodeUnreserved(key) + "=" + tmp.join(",")); - } - else if (tmp.length !== 0) { - result.push(tmp.join(",")); - } - } - } - } - else { - if (operator === ";") { - if (isDefined(value)) { - result.push(encodeUnreserved(key)); - } - } - else if (value === "" && (operator === "&" || operator === "?")) { - result.push(encodeUnreserved(key) + "="); - } - else if (value === "") { - result.push(""); - } - } - return result; -} -export function parseUrl(template) { - return { - expand: expand.bind(null, template), - }; -} -function expand(template, context) { - var operators = ["+", "#", ".", "/", ";", "?", "&"]; - return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) { - if (expression) { - let operator = ""; - const values = []; - if (operators.indexOf(expression.charAt(0)) !== -1) { - operator = expression.charAt(0); - expression = expression.substr(1); - } - expression.split(/,/g).forEach(function (variable) { - var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable); - values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3])); - }); - if (operator && operator !== "+") { - var separator = ","; - if (operator === "?") { - separator = "&"; - } - else if (operator !== "#") { - separator = operator; - } - return (values.length !== 0 ? operator : "") + values.join(separator); - } - else { - return values.join(","); - } - } - else { - return encodeReserved(literal); - } - }); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/version.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/version.js deleted file mode 100644 index 8a0d49cd..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/version.js +++ /dev/null @@ -1 +0,0 @@ -export const VERSION = "6.0.2"; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/with-defaults.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/with-defaults.js deleted file mode 100644 index 81baf6cf..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-src/with-defaults.js +++ /dev/null @@ -1,13 +0,0 @@ -import { endpointWithDefaults } from "./endpoint-with-defaults"; -import { merge } from "./merge"; -import { parse } from "./parse"; -export function withDefaults(oldDefaults, newDefaults) { - const DEFAULTS = merge(oldDefaults, newDefaults); - const endpoint = endpointWithDefaults.bind(null, DEFAULTS); - return Object.assign(endpoint, { - DEFAULTS, - defaults: withDefaults.bind(null, DEFAULTS), - merge: merge.bind(null, DEFAULTS), - parse, - }); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/defaults.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/defaults.d.ts deleted file mode 100644 index 30fcd203..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/defaults.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { EndpointDefaults } from "@octokit/types"; -export declare const DEFAULTS: EndpointDefaults; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/endpoint-with-defaults.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/endpoint-with-defaults.d.ts deleted file mode 100644 index ff39e5e7..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/endpoint-with-defaults.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { EndpointOptions, RequestParameters, Route } from "@octokit/types"; -import { DEFAULTS } from "./defaults"; -export declare function endpointWithDefaults(defaults: typeof DEFAULTS, route: Route | EndpointOptions, options?: RequestParameters): import("@octokit/types").RequestOptions; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/index.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/index.d.ts deleted file mode 100644 index 1ede1366..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const endpoint: import("@octokit/types").EndpointInterface; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/merge.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/merge.d.ts deleted file mode 100644 index b75a15ec..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/merge.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { EndpointDefaults, RequestParameters, Route } from "@octokit/types"; -export declare function merge(defaults: EndpointDefaults | null, route?: Route | RequestParameters, options?: RequestParameters): EndpointDefaults; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/parse.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/parse.d.ts deleted file mode 100644 index fbe21440..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/parse.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { EndpointDefaults, RequestOptions } from "@octokit/types"; -export declare function parse(options: EndpointDefaults): RequestOptions; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/add-query-parameters.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/add-query-parameters.d.ts deleted file mode 100644 index 4b192ac4..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/add-query-parameters.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare function addQueryParameters(url: string, parameters: { - [x: string]: string | undefined; - q?: string; -}): string; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/extract-url-variable-names.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/extract-url-variable-names.d.ts deleted file mode 100644 index 93586d4d..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/extract-url-variable-names.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function extractUrlVariableNames(url: string): string[]; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/lowercase-keys.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/lowercase-keys.d.ts deleted file mode 100644 index 1daf3073..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/lowercase-keys.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare function lowercaseKeys(object?: { - [key: string]: any; -}): { - [key: string]: any; -}; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/merge-deep.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/merge-deep.d.ts deleted file mode 100644 index 914411cf..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/merge-deep.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function mergeDeep(defaults: any, options: any): object; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/omit.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/omit.d.ts deleted file mode 100644 index 06927d6b..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/omit.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare function omit(object: { - [key: string]: any; -}, keysToOmit: string[]): { - [key: string]: any; -}; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/url-template.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/url-template.d.ts deleted file mode 100644 index 5d967cab..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/util/url-template.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare function parseUrl(template: string): { - expand: (context: object) => string; -}; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/version.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/version.d.ts deleted file mode 100644 index 8aaf0c65..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/version.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const VERSION = "6.0.2"; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/with-defaults.d.ts b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/with-defaults.d.ts deleted file mode 100644 index 6f5afd1e..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-types/with-defaults.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { EndpointInterface, RequestParameters, EndpointDefaults } from "@octokit/types"; -export declare function withDefaults(oldDefaults: EndpointDefaults | null, newDefaults: RequestParameters): EndpointInterface; diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-web/index.js b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-web/index.js deleted file mode 100644 index 87b4369e..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-web/index.js +++ /dev/null @@ -1,369 +0,0 @@ -import isPlainObject from 'is-plain-object'; -import { getUserAgent } from 'universal-user-agent'; - -function lowercaseKeys(object) { - if (!object) { - return {}; - } - return Object.keys(object).reduce((newObj, key) => { - newObj[key.toLowerCase()] = object[key]; - return newObj; - }, {}); -} - -function mergeDeep(defaults, options) { - const result = Object.assign({}, defaults); - Object.keys(options).forEach((key) => { - if (isPlainObject(options[key])) { - if (!(key in defaults)) - Object.assign(result, { [key]: options[key] }); - else - result[key] = mergeDeep(defaults[key], options[key]); - } - else { - Object.assign(result, { [key]: options[key] }); - } - }); - return result; -} - -function merge(defaults, route, options) { - if (typeof route === "string") { - let [method, url] = route.split(" "); - options = Object.assign(url ? { method, url } : { url: method }, options); - } - else { - options = Object.assign({}, route); - } - // lowercase header names before merging with defaults to avoid duplicates - options.headers = lowercaseKeys(options.headers); - const mergedOptions = mergeDeep(defaults || {}, options); - // mediaType.previews arrays are merged, instead of overwritten - if (defaults && defaults.mediaType.previews.length) { - mergedOptions.mediaType.previews = defaults.mediaType.previews - .filter((preview) => !mergedOptions.mediaType.previews.includes(preview)) - .concat(mergedOptions.mediaType.previews); - } - mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, "")); - return mergedOptions; -} - -function addQueryParameters(url, parameters) { - const separator = /\?/.test(url) ? "&" : "?"; - const names = Object.keys(parameters); - if (names.length === 0) { - return url; - } - return (url + - separator + - names - .map((name) => { - if (name === "q") { - return ("q=" + parameters.q.split("+").map(encodeURIComponent).join("+")); - } - return `${name}=${encodeURIComponent(parameters[name])}`; - }) - .join("&")); -} - -const urlVariableRegex = /\{[^}]+\}/g; -function removeNonChars(variableName) { - return variableName.replace(/^\W+|\W+$/g, "").split(/,/); -} -function extractUrlVariableNames(url) { - const matches = url.match(urlVariableRegex); - if (!matches) { - return []; - } - return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []); -} - -function omit(object, keysToOmit) { - return Object.keys(object) - .filter((option) => !keysToOmit.includes(option)) - .reduce((obj, key) => { - obj[key] = object[key]; - return obj; - }, {}); -} - -// Based on https://github.com/bramstein/url-template, licensed under BSD -// TODO: create separate package. -// -// Copyright (c) 2012-2014, Bram Stein -// All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// 3. The name of the author may not be used to endorse or promote products -// derived from this software without specific prior written permission. -// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED -// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -/* istanbul ignore file */ -function encodeReserved(str) { - return str - .split(/(%[0-9A-Fa-f]{2})/g) - .map(function (part) { - if (!/%[0-9A-Fa-f]/.test(part)) { - part = encodeURI(part).replace(/%5B/g, "[").replace(/%5D/g, "]"); - } - return part; - }) - .join(""); -} -function encodeUnreserved(str) { - return encodeURIComponent(str).replace(/[!'()*]/g, function (c) { - return "%" + c.charCodeAt(0).toString(16).toUpperCase(); - }); -} -function encodeValue(operator, value, key) { - value = - operator === "+" || operator === "#" - ? encodeReserved(value) - : encodeUnreserved(value); - if (key) { - return encodeUnreserved(key) + "=" + value; - } - else { - return value; - } -} -function isDefined(value) { - return value !== undefined && value !== null; -} -function isKeyOperator(operator) { - return operator === ";" || operator === "&" || operator === "?"; -} -function getValues(context, operator, key, modifier) { - var value = context[key], result = []; - if (isDefined(value) && value !== "") { - if (typeof value === "string" || - typeof value === "number" || - typeof value === "boolean") { - value = value.toString(); - if (modifier && modifier !== "*") { - value = value.substring(0, parseInt(modifier, 10)); - } - result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : "")); - } - else { - if (modifier === "*") { - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function (value) { - result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : "")); - }); - } - else { - Object.keys(value).forEach(function (k) { - if (isDefined(value[k])) { - result.push(encodeValue(operator, value[k], k)); - } - }); - } - } - else { - const tmp = []; - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function (value) { - tmp.push(encodeValue(operator, value)); - }); - } - else { - Object.keys(value).forEach(function (k) { - if (isDefined(value[k])) { - tmp.push(encodeUnreserved(k)); - tmp.push(encodeValue(operator, value[k].toString())); - } - }); - } - if (isKeyOperator(operator)) { - result.push(encodeUnreserved(key) + "=" + tmp.join(",")); - } - else if (tmp.length !== 0) { - result.push(tmp.join(",")); - } - } - } - } - else { - if (operator === ";") { - if (isDefined(value)) { - result.push(encodeUnreserved(key)); - } - } - else if (value === "" && (operator === "&" || operator === "?")) { - result.push(encodeUnreserved(key) + "="); - } - else if (value === "") { - result.push(""); - } - } - return result; -} -function parseUrl(template) { - return { - expand: expand.bind(null, template), - }; -} -function expand(template, context) { - var operators = ["+", "#", ".", "/", ";", "?", "&"]; - return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) { - if (expression) { - let operator = ""; - const values = []; - if (operators.indexOf(expression.charAt(0)) !== -1) { - operator = expression.charAt(0); - expression = expression.substr(1); - } - expression.split(/,/g).forEach(function (variable) { - var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable); - values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3])); - }); - if (operator && operator !== "+") { - var separator = ","; - if (operator === "?") { - separator = "&"; - } - else if (operator !== "#") { - separator = operator; - } - return (values.length !== 0 ? operator : "") + values.join(separator); - } - else { - return values.join(","); - } - } - else { - return encodeReserved(literal); - } - }); -} - -function parse(options) { - // https://fetch.spec.whatwg.org/#methods - let method = options.method.toUpperCase(); - // replace :varname with {varname} to make it RFC 6570 compatible - let url = (options.url || "/").replace(/:([a-z]\w+)/g, "{+$1}"); - let headers = Object.assign({}, options.headers); - let body; - let parameters = omit(options, [ - "method", - "baseUrl", - "url", - "headers", - "request", - "mediaType", - ]); - // extract variable names from URL to calculate remaining variables later - const urlVariableNames = extractUrlVariableNames(url); - url = parseUrl(url).expand(parameters); - if (!/^http/.test(url)) { - url = options.baseUrl + url; - } - const omittedParameters = Object.keys(options) - .filter((option) => urlVariableNames.includes(option)) - .concat("baseUrl"); - const remainingParameters = omit(parameters, omittedParameters); - const isBinaryRequset = /application\/octet-stream/i.test(headers.accept); - if (!isBinaryRequset) { - if (options.mediaType.format) { - // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw - headers.accept = headers.accept - .split(/,/) - .map((preview) => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)) - .join(","); - } - if (options.mediaType.previews.length) { - const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || []; - headers.accept = previewsFromAcceptHeader - .concat(options.mediaType.previews) - .map((preview) => { - const format = options.mediaType.format - ? `.${options.mediaType.format}` - : "+json"; - return `application/vnd.github.${preview}-preview${format}`; - }) - .join(","); - } - } - // for GET/HEAD requests, set URL query parameters from remaining parameters - // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters - if (["GET", "HEAD"].includes(method)) { - url = addQueryParameters(url, remainingParameters); - } - else { - if ("data" in remainingParameters) { - body = remainingParameters.data; - } - else { - if (Object.keys(remainingParameters).length) { - body = remainingParameters; - } - else { - headers["content-length"] = 0; - } - } - } - // default content-type for JSON if body is set - if (!headers["content-type"] && typeof body !== "undefined") { - headers["content-type"] = "application/json; charset=utf-8"; - } - // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body. - // fetch does not allow to set `content-length` header, but we can set body to an empty string - if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") { - body = ""; - } - // Only return body/request keys if present - return Object.assign({ method, url, headers }, typeof body !== "undefined" ? { body } : null, options.request ? { request: options.request } : null); -} - -function endpointWithDefaults(defaults, route, options) { - return parse(merge(defaults, route, options)); -} - -function withDefaults(oldDefaults, newDefaults) { - const DEFAULTS = merge(oldDefaults, newDefaults); - const endpoint = endpointWithDefaults.bind(null, DEFAULTS); - return Object.assign(endpoint, { - DEFAULTS, - defaults: withDefaults.bind(null, DEFAULTS), - merge: merge.bind(null, DEFAULTS), - parse, - }); -} - -const VERSION = "6.0.2"; - -const userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`; -// DEFAULTS has all properties set that EndpointOptions has, except url. -// So we use RequestParameters and add method as additional required property. -const DEFAULTS = { - method: "GET", - baseUrl: "https://api.github.com", - headers: { - accept: "application/vnd.github.v3+json", - "user-agent": userAgent, - }, - mediaType: { - format: "", - previews: [], - }, -}; - -const endpoint = withDefaults(null, DEFAULTS); - -export { endpoint }; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-web/index.js.map b/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-web/index.js.map deleted file mode 100644 index 8f1749ba..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/dist-web/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../dist-src/util/lowercase-keys.js","../dist-src/util/merge-deep.js","../dist-src/merge.js","../dist-src/util/add-query-parameters.js","../dist-src/util/extract-url-variable-names.js","../dist-src/util/omit.js","../dist-src/util/url-template.js","../dist-src/parse.js","../dist-src/endpoint-with-defaults.js","../dist-src/with-defaults.js","../dist-src/version.js","../dist-src/defaults.js","../dist-src/index.js"],"sourcesContent":["export function lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n","import isPlainObject from \"is-plain-object\";\nexport function mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach((key) => {\n if (isPlainObject(options[key])) {\n if (!(key in defaults))\n Object.assign(result, { [key]: options[key] });\n else\n result[key] = mergeDeep(defaults[key], options[key]);\n }\n else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n","import { lowercaseKeys } from \"./util/lowercase-keys\";\nimport { mergeDeep } from \"./util/merge-deep\";\nexport function merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? { method, url } : { url: method }, options);\n }\n else {\n options = Object.assign({}, route);\n }\n // lowercase header names before merging with defaults to avoid duplicates\n options.headers = lowercaseKeys(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n // mediaType.previews arrays are merged, instead of overwritten\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews\n .filter((preview) => !mergedOptions.mediaType.previews.includes(preview))\n .concat(mergedOptions.mediaType.previews);\n }\n mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, \"\"));\n return mergedOptions;\n}\n","export function addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n if (names.length === 0) {\n return url;\n }\n return (url +\n separator +\n names\n .map((name) => {\n if (name === \"q\") {\n return (\"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\"));\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n })\n .join(\"&\"));\n}\n","const urlVariableRegex = /\\{[^}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\nexport function extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n if (!matches) {\n return [];\n }\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n","export function omit(object, keysToOmit) {\n return Object.keys(object)\n .filter((option) => !keysToOmit.includes(option))\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n","// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map(function (part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part).replace(/%5B/g, \"[\").replace(/%5D/g, \"]\");\n }\n return part;\n })\n .join(\"\");\n}\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\nfunction encodeValue(operator, value, key) {\n value =\n operator === \"+\" || operator === \"#\"\n ? encodeReserved(value)\n : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n }\n else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\nfunction getValues(context, operator, key, modifier) {\n var value = context[key], result = [];\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n }\n else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n }\n else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n }\n else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n }\n else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n }\n else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n }\n else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nexport function parseUrl(template) {\n return {\n expand: expand.bind(null, template),\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, function (_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n expression.split(/,/g).forEach(function (variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n if (operator && operator !== \"+\") {\n var separator = \",\";\n if (operator === \"?\") {\n separator = \"&\";\n }\n else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n }\n else {\n return values.join(\",\");\n }\n }\n else {\n return encodeReserved(literal);\n }\n });\n}\n","import { addQueryParameters } from \"./util/add-query-parameters\";\nimport { extractUrlVariableNames } from \"./util/extract-url-variable-names\";\nimport { omit } from \"./util/omit\";\nimport { parseUrl } from \"./util/url-template\";\nexport function parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase();\n // replace :varname with {varname} to make it RFC 6570 compatible\n let url = (options.url || \"/\").replace(/:([a-z]\\w+)/g, \"{+$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"mediaType\",\n ]);\n // extract variable names from URL to calculate remaining variables later\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n const omittedParameters = Object.keys(options)\n .filter((option) => urlVariableNames.includes(option))\n .concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequset = /application\\/octet-stream/i.test(headers.accept);\n if (!isBinaryRequset) {\n if (options.mediaType.format) {\n // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept\n .split(/,/)\n .map((preview) => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))\n .join(\",\");\n }\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader\n .concat(options.mediaType.previews)\n .map((preview) => {\n const format = options.mediaType.format\n ? `.${options.mediaType.format}`\n : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n })\n .join(\",\");\n }\n }\n // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n }\n else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n }\n else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n else {\n headers[\"content-length\"] = 0;\n }\n }\n }\n // default content-type for JSON if body is set\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n // Only return body/request keys if present\n return Object.assign({ method, url, headers }, typeof body !== \"undefined\" ? { body } : null, options.request ? { request: options.request } : null);\n}\n","import { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n","import { endpointWithDefaults } from \"./endpoint-with-defaults\";\nimport { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse,\n });\n}\n","export const VERSION = \"6.0.2\";\n","import { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nconst userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\n// DEFAULTS has all properties set that EndpointOptions has, except url.\n// So we use RequestParameters and add method as additional required property.\nexport const DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent,\n },\n mediaType: {\n format: \"\",\n previews: [],\n },\n};\n","import { withDefaults } from \"./with-defaults\";\nimport { DEFAULTS } from \"./defaults\";\nexport const endpoint = withDefaults(null, DEFAULTS);\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@octokit/request/node_modules/@octokit/endpoint/package.json b/node_modules/@octokit/request/node_modules/@octokit/endpoint/package.json deleted file mode 100644 index ca7c7803..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/endpoint/package.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "name": "@octokit/endpoint", - "description": "Turns REST API endpoints into generic request options", - "version": "6.0.2", - "license": "MIT", - "files": [ - "dist-*/", - "bin/" - ], - "pika": true, - "sideEffects": false, - "keywords": [ - "octokit", - "github", - "api", - "rest" - ], - "homepage": "https://github.com/octokit/endpoint.js#readme", - "bugs": { - "url": "https://github.com/octokit/endpoint.js/issues" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/octokit/endpoint.js.git" - }, - "dependencies": { - "@octokit/types": "^4.0.1", - "is-plain-object": "^3.0.0", - "universal-user-agent": "^5.0.0" - }, - "devDependencies": { - "@pika/pack": "^0.5.0", - "@pika/plugin-build-node": "^0.9.0", - "@pika/plugin-build-web": "^0.9.0", - "@pika/plugin-ts-standard-pkg": "^0.9.0", - "@types/jest": "^25.1.0", - "jest": "^26.0.1", - "prettier": "2.0.5", - "semantic-release": "^17.0.0", - "semantic-release-plugin-update-version-in-files": "^1.0.0", - "ts-jest": "^26.0.0", - "typescript": "^3.4.5" - }, - "publishConfig": { - "access": "public" - }, - "source": "dist-src/index.js", - "types": "dist-types/index.d.ts", - "main": "dist-node/index.js", - "module": "dist-web/index.js" -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/LICENSE b/node_modules/@octokit/request/node_modules/@octokit/request-error/LICENSE deleted file mode 100644 index ef2c18ee..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License - -Copyright (c) 2019 Octokit 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. diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/README.md b/node_modules/@octokit/request/node_modules/@octokit/request-error/README.md deleted file mode 100644 index 315064ce..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/README.md +++ /dev/null @@ -1,67 +0,0 @@ -# http-error.js - -> Error class for Octokit request errors - -[![@latest](https://img.shields.io/npm/v/@octokit/request-error.svg)](https://www.npmjs.com/package/@octokit/request-error) -[![Build Status](https://github.com/octokit/request-error.js/workflows/Test/badge.svg)](https://github.com/octokit/request-error.js/actions?query=workflow%3ATest) - -## Usage - - - - - - -
-Browsers - -Load @octokit/request-error directly from cdn.pika.dev - -```html - -``` - -
-Node - - -Install with npm install @octokit/request-error - -```js -const { RequestError } = require("@octokit/request-error"); -// or: import { RequestError } from "@octokit/request-error"; -``` - -
- -```js -const error = new RequestError("Oops", 500, { - headers: { - "x-github-request-id": "1:2:3:4", - }, // response headers - request: { - method: "POST", - url: "https://api.github.com/foo", - body: { - bar: "baz", - }, - headers: { - authorization: "token secret123", - }, - }, -}); - -error.message; // Oops -error.status; // 500 -error.headers; // { 'x-github-request-id': '1:2:3:4' } -error.request.method; // POST -error.request.url; // https://api.github.com/foo -error.request.body; // { bar: 'baz' } -error.request.headers; // { authorization: 'token [REDACTED]' } -``` - -## LICENSE - -[MIT](LICENSE) diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-node/index.js b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-node/index.js deleted file mode 100644 index 95b9c579..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-node/index.js +++ /dev/null @@ -1,55 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - -var deprecation = require('deprecation'); -var once = _interopDefault(require('once')); - -const logOnce = once(deprecation => console.warn(deprecation)); -/** - * Error with extra properties to help with debugging - */ - -class RequestError extends Error { - constructor(message, statusCode, options) { - super(message); // Maintains proper stack trace (only available on V8) - - /* istanbul ignore next */ - - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - - this.name = "HttpError"; - this.status = statusCode; - Object.defineProperty(this, "code", { - get() { - logOnce(new deprecation.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")); - return statusCode; - } - - }); - this.headers = options.headers || {}; // redact request credentials without mutating original request options - - const requestCopy = Object.assign({}, options.request); - - if (options.request.headers.authorization) { - requestCopy.headers = Object.assign({}, options.request.headers, { - authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]") - }); - } - - requestCopy.url = requestCopy.url // client_id & client_secret can be passed as URL query parameters to increase rate limit - // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications - .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]") // OAuth tokens can be passed as URL query parameters, although it is not recommended - // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header - .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]"); - this.request = requestCopy; - } - -} - -exports.RequestError = RequestError; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-node/index.js.map b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-node/index.js.map deleted file mode 100644 index 25620064..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-node/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../dist-src/index.js"],"sourcesContent":["import { Deprecation } from \"deprecation\";\nimport once from \"once\";\nconst logOnce = once((deprecation) => console.warn(deprecation));\n/**\n * Error with extra properties to help with debugging\n */\nexport class RequestError extends Error {\n constructor(message, statusCode, options) {\n super(message);\n // Maintains proper stack trace (only available on V8)\n /* istanbul ignore next */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n this.name = \"HttpError\";\n this.status = statusCode;\n Object.defineProperty(this, \"code\", {\n get() {\n logOnce(new Deprecation(\"[@octokit/request-error] `error.code` is deprecated, use `error.status`.\"));\n return statusCode;\n },\n });\n this.headers = options.headers || {};\n // redact request credentials without mutating original request options\n const requestCopy = Object.assign({}, options.request);\n if (options.request.headers.authorization) {\n requestCopy.headers = Object.assign({}, options.request.headers, {\n authorization: options.request.headers.authorization.replace(/ .*$/, \" [REDACTED]\"),\n });\n }\n requestCopy.url = requestCopy.url\n // client_id & client_secret can be passed as URL query parameters to increase rate limit\n // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications\n .replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\")\n // OAuth tokens can be passed as URL query parameters, although it is not recommended\n // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header\n .replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n }\n}\n"],"names":["logOnce","once","deprecation","console","warn","RequestError","Error","constructor","message","statusCode","options","captureStackTrace","name","status","Object","defineProperty","get","Deprecation","headers","requestCopy","assign","request","authorization","replace","url"],"mappings":";;;;;;;;;AAEA,MAAMA,OAAO,GAAGC,IAAI,CAAEC,WAAD,IAAiBC,OAAO,CAACC,IAAR,CAAaF,WAAb,CAAlB,CAApB;AACA;;;;AAGO,MAAMG,YAAN,SAA2BC,KAA3B,CAAiC;AACpCC,EAAAA,WAAW,CAACC,OAAD,EAAUC,UAAV,EAAsBC,OAAtB,EAA+B;AACtC,UAAMF,OAAN,EADsC;;AAGtC;;AACA,QAAIF,KAAK,CAACK,iBAAV,EAA6B;AACzBL,MAAAA,KAAK,CAACK,iBAAN,CAAwB,IAAxB,EAA8B,KAAKJ,WAAnC;AACH;;AACD,SAAKK,IAAL,GAAY,WAAZ;AACA,SAAKC,MAAL,GAAcJ,UAAd;AACAK,IAAAA,MAAM,CAACC,cAAP,CAAsB,IAAtB,EAA4B,MAA5B,EAAoC;AAChCC,MAAAA,GAAG,GAAG;AACFhB,QAAAA,OAAO,CAAC,IAAIiB,uBAAJ,CAAgB,0EAAhB,CAAD,CAAP;AACA,eAAOR,UAAP;AACH;;AAJ+B,KAApC;AAMA,SAAKS,OAAL,GAAeR,OAAO,CAACQ,OAAR,IAAmB,EAAlC,CAfsC;;AAiBtC,UAAMC,WAAW,GAAGL,MAAM,CAACM,MAAP,CAAc,EAAd,EAAkBV,OAAO,CAACW,OAA1B,CAApB;;AACA,QAAIX,OAAO,CAACW,OAAR,CAAgBH,OAAhB,CAAwBI,aAA5B,EAA2C;AACvCH,MAAAA,WAAW,CAACD,OAAZ,GAAsBJ,MAAM,CAACM,MAAP,CAAc,EAAd,EAAkBV,OAAO,CAACW,OAAR,CAAgBH,OAAlC,EAA2C;AAC7DI,QAAAA,aAAa,EAAEZ,OAAO,CAACW,OAAR,CAAgBH,OAAhB,CAAwBI,aAAxB,CAAsCC,OAAtC,CAA8C,MAA9C,EAAsD,aAAtD;AAD8C,OAA3C,CAAtB;AAGH;;AACDJ,IAAAA,WAAW,CAACK,GAAZ,GAAkBL,WAAW,CAACK,GAAZ;AAEd;AAFc,KAGbD,OAHa,CAGL,sBAHK,EAGmB,0BAHnB;AAKd;AALc,KAMbA,OANa,CAML,qBANK,EAMkB,yBANlB,CAAlB;AAOA,SAAKF,OAAL,GAAeF,WAAf;AACH;;AAhCmC;;;;"} \ No newline at end of file diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-src/index.js b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-src/index.js deleted file mode 100644 index c880b450..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-src/index.js +++ /dev/null @@ -1,40 +0,0 @@ -import { Deprecation } from "deprecation"; -import once from "once"; -const logOnce = once((deprecation) => console.warn(deprecation)); -/** - * Error with extra properties to help with debugging - */ -export class RequestError extends Error { - constructor(message, statusCode, options) { - super(message); - // Maintains proper stack trace (only available on V8) - /* istanbul ignore next */ - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - this.name = "HttpError"; - this.status = statusCode; - Object.defineProperty(this, "code", { - get() { - logOnce(new Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")); - return statusCode; - }, - }); - this.headers = options.headers || {}; - // redact request credentials without mutating original request options - const requestCopy = Object.assign({}, options.request); - if (options.request.headers.authorization) { - requestCopy.headers = Object.assign({}, options.request.headers, { - authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]"), - }); - } - requestCopy.url = requestCopy.url - // client_id & client_secret can be passed as URL query parameters to increase rate limit - // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications - .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]") - // OAuth tokens can be passed as URL query parameters, although it is not recommended - // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header - .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]"); - this.request = requestCopy; - } -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-types/index.d.ts b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-types/index.d.ts deleted file mode 100644 index baa8a0eb..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-types/index.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { RequestOptions, ResponseHeaders } from "@octokit/types"; -import { RequestErrorOptions } from "./types"; -/** - * Error with extra properties to help with debugging - */ -export declare class RequestError extends Error { - name: "HttpError"; - /** - * http status code - */ - status: number; - /** - * http status code - * - * @deprecated `error.code` is deprecated in favor of `error.status` - */ - code: number; - /** - * error response headers - */ - headers: ResponseHeaders; - /** - * Request options that lead to the error. - */ - request: RequestOptions; - constructor(message: string, statusCode: number, options: RequestErrorOptions); -} diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-types/types.d.ts b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-types/types.d.ts deleted file mode 100644 index 865d2139..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-types/types.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { RequestOptions, ResponseHeaders } from "@octokit/types"; -export declare type RequestErrorOptions = { - headers?: ResponseHeaders; - request: RequestOptions; -}; diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-web/index.js b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-web/index.js deleted file mode 100644 index feec58ef..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-web/index.js +++ /dev/null @@ -1,44 +0,0 @@ -import { Deprecation } from 'deprecation'; -import once from 'once'; - -const logOnce = once((deprecation) => console.warn(deprecation)); -/** - * Error with extra properties to help with debugging - */ -class RequestError extends Error { - constructor(message, statusCode, options) { - super(message); - // Maintains proper stack trace (only available on V8) - /* istanbul ignore next */ - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - this.name = "HttpError"; - this.status = statusCode; - Object.defineProperty(this, "code", { - get() { - logOnce(new Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")); - return statusCode; - }, - }); - this.headers = options.headers || {}; - // redact request credentials without mutating original request options - const requestCopy = Object.assign({}, options.request); - if (options.request.headers.authorization) { - requestCopy.headers = Object.assign({}, options.request.headers, { - authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]"), - }); - } - requestCopy.url = requestCopy.url - // client_id & client_secret can be passed as URL query parameters to increase rate limit - // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications - .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]") - // OAuth tokens can be passed as URL query parameters, although it is not recommended - // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header - .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]"); - this.request = requestCopy; - } -} - -export { RequestError }; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-web/index.js.map b/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-web/index.js.map deleted file mode 100644 index 130740d7..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-web/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../dist-src/index.js"],"sourcesContent":["import { Deprecation } from \"deprecation\";\nimport once from \"once\";\nconst logOnce = once((deprecation) => console.warn(deprecation));\n/**\n * Error with extra properties to help with debugging\n */\nexport class RequestError extends Error {\n constructor(message, statusCode, options) {\n super(message);\n // Maintains proper stack trace (only available on V8)\n /* istanbul ignore next */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n this.name = \"HttpError\";\n this.status = statusCode;\n Object.defineProperty(this, \"code\", {\n get() {\n logOnce(new Deprecation(\"[@octokit/request-error] `error.code` is deprecated, use `error.status`.\"));\n return statusCode;\n },\n });\n this.headers = options.headers || {};\n // redact request credentials without mutating original request options\n const requestCopy = Object.assign({}, options.request);\n if (options.request.headers.authorization) {\n requestCopy.headers = Object.assign({}, options.request.headers, {\n authorization: options.request.headers.authorization.replace(/ .*$/, \" [REDACTED]\"),\n });\n }\n requestCopy.url = requestCopy.url\n // client_id & client_secret can be passed as URL query parameters to increase rate limit\n // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications\n .replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\")\n // OAuth tokens can be passed as URL query parameters, although it is not recommended\n // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header\n .replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n }\n}\n"],"names":[],"mappings":";;;AAEA,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;AACjE;AACA;AACA;AACO,MAAM,YAAY,SAAS,KAAK,CAAC;AACxC,IAAI,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE;AAC9C,QAAQ,KAAK,CAAC,OAAO,CAAC,CAAC;AACvB;AACA;AACA,QAAQ,IAAI,KAAK,CAAC,iBAAiB,EAAE;AACrC,YAAY,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAC5D,SAAS;AACT,QAAQ,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;AAChC,QAAQ,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;AACjC,QAAQ,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE;AAC5C,YAAY,GAAG,GAAG;AAClB,gBAAgB,OAAO,CAAC,IAAI,WAAW,CAAC,0EAA0E,CAAC,CAAC,CAAC;AACrH,gBAAgB,OAAO,UAAU,CAAC;AAClC,aAAa;AACb,SAAS,CAAC,CAAC;AACX,QAAQ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;AAC7C;AACA,QAAQ,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;AAC/D,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE;AACnD,YAAY,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE;AAC7E,gBAAgB,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC;AACnG,aAAa,CAAC,CAAC;AACf,SAAS;AACT,QAAQ,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,GAAG;AACzC;AACA;AACA,aAAa,OAAO,CAAC,sBAAsB,EAAE,0BAA0B,CAAC;AACxE;AACA;AACA,aAAa,OAAO,CAAC,qBAAqB,EAAE,yBAAyB,CAAC,CAAC;AACvE,QAAQ,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC;AACnC,KAAK;AACL;;;;"} \ No newline at end of file diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/package.json b/node_modules/@octokit/request/node_modules/@octokit/request-error/package.json deleted file mode 100644 index 7559a549..00000000 --- a/node_modules/@octokit/request/node_modules/@octokit/request-error/package.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "@octokit/request-error", - "description": "Error class for Octokit request errors", - "version": "2.0.1", - "license": "MIT", - "files": [ - "dist-*/", - "bin/" - ], - "pika": true, - "sideEffects": false, - "keywords": [ - "octokit", - "github", - "api", - "error" - ], - "homepage": "https://github.com/octokit/request-error.js#readme", - "bugs": { - "url": "https://github.com/octokit/request-error.js/issues" - }, - "repository": { - "type": "git", - "url": "https://github.com/octokit/request-error.js.git" - }, - "dependencies": { - "@octokit/types": "^4.0.1", - "deprecation": "^2.0.0", - "once": "^1.4.0" - }, - "devDependencies": { - "@pika/pack": "^0.5.0", - "@pika/plugin-build-node": "^0.9.0", - "@pika/plugin-build-web": "^0.9.0", - "@pika/plugin-bundle-web": "^0.9.0", - "@pika/plugin-ts-standard-pkg": "^0.9.0", - "@types/jest": "^25.1.0", - "@types/node": "^14.0.4", - "@types/once": "^1.4.0", - "jest": "^25.1.0", - "pika-plugin-unpkg-field": "^1.1.0", - "prettier": "^2.0.1", - "semantic-release": "^17.0.0", - "ts-jest": "^25.1.0", - "typescript": "^3.4.5" - }, - "publishConfig": { - "access": "public" - }, - "source": "dist-src/index.js", - "types": "dist-types/index.d.ts", - "main": "dist-node/index.js", - "module": "dist-web/index.js" -} diff --git a/node_modules/@types/babel__traverse/LICENSE b/node_modules/@types/babel__traverse/LICENSE index 4b1ad51b..9e841e7a 100644 --- a/node_modules/@types/babel__traverse/LICENSE +++ b/node_modules/@types/babel__traverse/LICENSE @@ -1,21 +1,21 @@ - MIT License - - Copyright (c) Microsoft Corporation. All rights reserved. - - 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 + MIT License + + Copyright (c) Microsoft Corporation. + + 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 diff --git a/node_modules/@types/babel__traverse/README.md b/node_modules/@types/babel__traverse/README.md index f2e1c54c..ddd8134b 100644 --- a/node_modules/@types/babel__traverse/README.md +++ b/node_modules/@types/babel__traverse/README.md @@ -2,15 +2,15 @@ > `npm install --save @types/babel__traverse` # Summary -This package contains type definitions for @babel/traverse ( https://github.com/babel/babel/tree/master/packages/babel-traverse ). +This package contains type definitions for @babel/traverse (https://github.com/babel/babel/tree/main/packages/babel-traverse). # Details -Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/babel__traverse +Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/babel__traverse. -Additional Details - * Last updated: Tue, 11 Jun 2019 02:00:21 GMT - * Dependencies: @types/babel__types +### Additional Details + * Last updated: Fri, 25 Sep 2020 23:55:30 GMT + * Dependencies: [@types/babel__types](https://npmjs.com/package/@types/babel__types) * Global values: none # Credits -These definitions were written by Troy Gerwien , Marvin Hagemeister , Ryan Petrich , Melvin Groenhoff . +These definitions were written by [Troy Gerwien](https://github.com/yortus), [Marvin Hagemeister](https://github.com/marvinhagemeister), [Ryan Petrich](https://github.com/rpetrich), [Melvin Groenhoff](https://github.com/mgroenhoff), [Dean L.](https://github.com/dlgrit), [Ifiok Jr.](https://github.com/ifiokjr), and [ExE Boss](https://github.com/ExE-Boss). diff --git a/node_modules/@types/babel__traverse/index.d.ts b/node_modules/@types/babel__traverse/index.d.ts index 0e9ff767..827bae1d 100644 --- a/node_modules/@types/babel__traverse/index.d.ts +++ b/node_modules/@types/babel__traverse/index.d.ts @@ -1,44 +1,80 @@ // Type definitions for @babel/traverse 7.0 -// Project: https://github.com/babel/babel/tree/master/packages/babel-traverse, https://babeljs.io +// Project: https://github.com/babel/babel/tree/main/packages/babel-traverse, https://babeljs.io // Definitions by: Troy Gerwien // Marvin Hagemeister // Ryan Petrich // Melvin Groenhoff +// Dean L. +// Ifiok Jr. +// ExE Boss // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.9 +// Minimum TypeScript Version: 3.4 -import * as t from "@babel/types"; +import * as t from '@babel/types'; +export import Node = t.Node; -export type Node = t.Node; +declare const traverse: { + ( + parent: Node | Node[] | null | undefined, + opts: TraverseOptions, + scope: Scope | undefined, + state: S, + parentPath?: NodePath, + ): void; + ( + parent: Node | Node[] | null | undefined, + opts?: TraverseOptions, + scope?: Scope, + state?: any, + parentPath?: NodePath, + ): void; -export default function traverse( - parent: Node | Node[], - opts: TraverseOptions, - scope: Scope | undefined, - state: S, - parentPath?: NodePath, -): void; -export default function traverse( - parent: Node | Node[], - opts: TraverseOptions, - scope?: Scope, - state?: any, - parentPath?: NodePath, -): void; + visitors: typeof visitors; + verify: typeof visitors.verify; + explode: typeof visitors.explode; +}; + +export namespace visitors { + /** + * `explode()` will take a `Visitor` object with all of the various shorthands + * that we support, and validates & normalizes it into a common format, ready + * to be used in traversal. + * + * The various shorthands are: + * - `Identifier() { ... }` -> `Identifier: { enter() { ... } }` + * - `"Identifier|NumericLiteral": { ... }` -> `Identifier: { ... }, NumericLiteral: { ... }` + * - Aliases in `@babel/types`: e.g. `Property: { ... }` -> `ObjectProperty: { ... }, ClassProperty: { ... }` + * + * Other normalizations are: + * - Visitors of virtual types are wrapped, so that they are only visited when their dynamic check passes + * - `enter` and `exit` functions are wrapped in arrays, to ease merging of visitors + */ + function explode( + visitor: Visitor, + ): { + [Type in Node['type']]?: VisitNodeObject>; + }; + function verify(visitor: Visitor): void; + function merge(visitors: Array>, states?: S[]): Visitor; +} + +export default traverse; export interface TraverseOptions extends Visitor { scope?: Scope; noScope?: boolean; } +export type ArrayKeys = { [P in keyof T]: T[P] extends any[] ? P : never }[keyof T]; + export class Scope { constructor(path: NodePath, parentScope?: Scope); path: NodePath; block: Node; parentBlock: Node; parent: Scope; - hub: Hub; - bindings: { [name: string]: Binding; }; + hub: HubInterface; + bindings: { [name: string]: Binding }; /** Traverse node with current scope and path. */ traverse(node: Node | Node[], opts: TraverseOptions, state: S): void; @@ -102,12 +138,7 @@ export class Scope { removeData(key: string): void; - push(opts: { - id: t.LVal, - init?: t.Expression, - unique?: boolean, - kind?: "var" | "let" | "const", - }): void; + push(opts: { id: t.LVal; init?: t.Expression; unique?: boolean; kind?: 'var' | 'let' | 'const' }): void; getProgramParent(): Scope; @@ -143,11 +174,17 @@ export class Scope { } export class Binding { - constructor(opts: { existing: Binding; identifier: t.Identifier; scope: Scope; path: NodePath; kind: "var" | "let" | "const"; }); + constructor(opts: { + existing: Binding; + identifier: t.Identifier; + scope: Scope; + path: NodePath; + kind: 'var' | 'let' | 'const'; + }); identifier: t.Identifier; scope: Scope; path: NodePath; - kind: "var" | "let" | "const" | "module"; + kind: 'var' | 'let' | 'const' | 'module'; referenced: boolean; references: number; referencePaths: NodePath[]; @@ -155,21 +192,29 @@ export class Binding { constantViolations: NodePath[]; } -export type Visitor = VisitNodeObject & { - [Type in Node["type"]]?: VisitNode>; -} & { - [K in keyof t.Aliases]?: VisitNode -}; +export type Visitor = VisitNodeObject & + { + [Type in Node['type']]?: VisitNode>; + } & + { + [K in keyof t.Aliases]?: VisitNode; + }; -export type VisitNode = VisitNodeFunction | VisitNodeObject; +export type VisitNode = VisitNodeFunction | VisitNodeObject; -export type VisitNodeFunction = (this: S, path: NodePath

, state: S) => void; +export type VisitNodeFunction = (this: S, path: NodePath

, state: S) => void; -export interface VisitNodeObject { +export interface VisitNodeObject { enter?: VisitNodeFunction; exit?: VisitNodeFunction; } +export type NodePaths = T extends readonly Node[] + ? { -readonly [K in keyof T]: NodePath> } + : T extends Node + ? [NodePath] + : never; + export class NodePath { constructor(hub: Hub, parent: Node); parent: Node; @@ -191,7 +236,7 @@ export class NodePath { key: string | number; node: T; scope: Scope; - type: T extends undefined | null ? string | null : string; + type: T extends null | undefined ? undefined : T extends Node ? T['type'] : string | undefined; typeAnnotation: object; getScope(scope: Scope): Scope; @@ -212,20 +257,36 @@ export class NodePath { // Example: https://github.com/babel/babel/blob/63204ae51e020d84a5b246312f5eeb4d981ab952/packages/babel-traverse/src/path/modification.js#L83 debug(buildMessage: () => string): void; - // ------------------------- ancestry ------------------------- - /** - * Call the provided `callback` with the `NodePath`s of all the parents. - * When the `callback` returns a truthy value, we return that node path. - */ - findParent(callback: (path: NodePath) => boolean): NodePath; + static get(opts: { + hub: HubInterface; + parentPath: NodePath | null; + parent: Node; + container: C; + listKey?: string; + key: K; + }): NodePath; - find(callback: (path: NodePath) => boolean): NodePath; + //#region ------------------------- ancestry ------------------------- + /** + * Starting at the parent path of the current `NodePath` and going up the + * tree, return the first `NodePath` that causes the provided `callback` + * to return a truthy value, or `null` if the `callback` never returns a + * truthy value. + */ + findParent(callback: (path: NodePath) => boolean): NodePath | null; + + /** + * Starting at current `NodePath` and going up the tree, return the first + * `NodePath` that causes the provided `callback` to return a truthy value, + * or `null` if the `callback` never returns a truthy value. + */ + find(callback: (path: NodePath) => boolean): NodePath | null; /** Get the parent function of the current path. */ - getFunctionParent(): NodePath; + getFunctionParent(): NodePath | null; /** Walk up the tree until we hit a parent node path in a list. */ - getStatementParent(): NodePath; + getStatementParent(): NodePath | null; /** * Get the deepest common ancestor and then from it, get the earliest relationship path @@ -234,12 +295,12 @@ export class NodePath { * Earliest is defined as being "before" all the other nodes in terms of list container * position and visiting key. */ - getEarliestCommonAncestorFrom(paths: NodePath[]): NodePath[]; + getEarliestCommonAncestorFrom(paths: NodePath[]): NodePath; /** Get the earliest path in the tree where the provided `paths` intersect. */ getDeepestCommonAncestorFrom( paths: NodePath[], - filter?: (deepest: Node, i: number, ancestries: NodePath[]) => NodePath + filter?: (deepest: Node, i: number, ancestries: NodePath[]) => NodePath, ): NodePath; /** @@ -247,11 +308,22 @@ export class NodePath { * * NOTE: The current node path is included in this. */ - getAncestry(): NodePath[]; + getAncestry(): [this, ...NodePath[]]; + + /** + * A helper to find if `this` path is an ancestor of `maybeDescendant` + */ + isAncestor(maybeDescendant: NodePath): boolean; + + /** + * A helper to find if `this` path is a descendant of `maybeAncestor` + */ + isDescendant(maybeAncestor: NodePath): boolean; inType(...candidateTypes: string[]): boolean; + //#endregion - // ------------------------- inference ------------------------- + //#region ------------------------- inference ------------------------- /** Infer the type of the current `NodePath`. */ getTypeAnnotation(): t.FlowType; @@ -262,8 +334,9 @@ export class NodePath { baseTypeStrictlyMatches(right: NodePath): boolean; isGenericType(genericName: string): boolean; + //#endregion - // ------------------------- replacement ------------------------- + //#region ------------------------- replacement ------------------------- /** * Replace a node with an array of multiple. This method performs the following steps: * @@ -271,7 +344,7 @@ export class NodePath { * - Insert the provided nodes after the current node. * - Remove the current node. */ - replaceWithMultiple(nodes: Node[]): void; + replaceWithMultiple(nodes: Nodes): NodePaths; /** * Parse a string as an expression and replace the current node with the result. @@ -280,21 +353,22 @@ export class NodePath { * transforming ASTs is an antipattern and SHOULD NOT be encouraged. Even if it's * easier to use, your transforms will be extremely brittle. */ - replaceWithSourceString(replacement: any): void; + replaceWithSourceString(replacement: any): [NodePath]; /** Replace the current node with another. */ - replaceWith(replacement: Node | NodePath): void; + replaceWith(replacement: T | NodePath): [NodePath]; /** * This method takes an array of statements nodes and then explodes it * into expressions. This method retains completion records which is * extremely important to retain original semantics. */ - replaceExpressionWithStatements(nodes: Node[]): Node; + replaceExpressionWithStatements(nodes: Nodes): NodePaths; - replaceInline(nodes: Node | Node[]): void; + replaceInline(nodes: Nodes): NodePaths; + //#endregion - // ------------------------- evaluation ------------------------- + //#region ------------------------- evaluation ------------------------- /** * Walk the input `node` and statically evaluate if it's truthy. * @@ -319,8 +393,9 @@ export class NodePath { * t.evaluate(parse("foo + foo")) // { confident: false, value: undefined } */ evaluate(): { confident: boolean; value: any }; + //#endregion - // ------------------------- introspection ------------------------- + //#region ------------------------- introspection ------------------------- /** * Match the current node if it matches the provided `pattern`. * @@ -389,8 +464,9 @@ export class NodePath { /** Check if the current path will maybe execute before another path */ willIMaybeExecuteBefore(path: NodePath): boolean; + //#endregion - // ------------------------- context ------------------------- + //#region ------------------------- context ------------------------- call(key: string): boolean; isBlacklisted(): boolean; @@ -410,27 +486,44 @@ export class NodePath { popContext(): void; pushContext(context: TraversalContext): void; + //#endregion - // ------------------------- removal ------------------------- + //#region ------------------------- removal ------------------------- remove(): void; + //#endregion - // ------------------------- modification ------------------------- + //#region ------------------------- modification ------------------------- /** Insert the provided nodes before the current one. */ - insertBefore(nodes: Node | Node[]): any; + insertBefore(nodes: Nodes): NodePaths; /** * Insert the provided nodes after the current one. When inserting nodes after an * expression, ensure that the completion record is correct by pushing the current node. */ - insertAfter(nodes: Node | Node[]): any; + insertAfter(nodes: Nodes): NodePaths; /** Update all sibling node paths after `fromIndex` by `incrementBy`. */ updateSiblingKeys(fromIndex: number, incrementBy: number): void; + /** + * Insert child nodes at the start of the current node. + * @param listKey - The key at which the child nodes are stored (usually body). + * @param nodes - the nodes to insert. + */ + unshiftContainer(listKey: ArrayKeys, nodes: Nodes): NodePaths; + + /** + * Insert child nodes at the end of the current node. + * @param listKey - The key at which the child nodes are stored (usually body). + * @param nodes - the nodes to insert. + */ + pushContainer(listKey: ArrayKeys, nodes: Nodes): NodePaths; + /** Hoist the current node to the highest scope possible and return a UID referencing it. */ hoist(scope: Scope): void; + //#endregion - // ------------------------- family ------------------------- + //#region ------------------------- family ------------------------- getOpposite(): NodePath; getCompletionRecords(): NodePath[]; @@ -439,17 +532,22 @@ export class NodePath { getAllPrevSiblings(): NodePath[]; getAllNextSiblings(): NodePath[]; - get(key: K, context?: boolean | TraversalContext): - T[K] extends Array ? Array> : - T[K] extends Node | null | undefined ? NodePath : - never; + get( + key: K, + context?: boolean | TraversalContext, + ): T[K] extends Array + ? Array> + : T[K] extends Node | null | undefined + ? NodePath + : never; get(key: string, context?: boolean | TraversalContext): NodePath | NodePath[]; getBindingIdentifiers(duplicates?: boolean): Node[]; getOuterBindingIdentifiers(duplicates?: boolean): Node[]; + //#endregion - // ------------------------- comments ------------------------- + //#region ------------------------- comments ------------------------- /** Share comments amongst siblings. */ shareCommentsWithSiblings(): void; @@ -457,368 +555,602 @@ export class NodePath { /** Give node `comments` of the specified `type`. */ addComments(type: string, comments: any[]): void; + //#endregion - // ------------------------- isXXX ------------------------- - isArrayExpression(opts?: object): this is NodePath; - isAssignmentExpression(opts?: object): this is NodePath; - isBinaryExpression(opts?: object): this is NodePath; - isDirective(opts?: object): this is NodePath; - isDirectiveLiteral(opts?: object): this is NodePath; - isBlockStatement(opts?: object): this is NodePath; - isBreakStatement(opts?: object): this is NodePath; - isCallExpression(opts?: object): this is NodePath; - isCatchClause(opts?: object): this is NodePath; - isConditionalExpression(opts?: object): this is NodePath; - isContinueStatement(opts?: object): this is NodePath; - isDebuggerStatement(opts?: object): this is NodePath; - isDoWhileStatement(opts?: object): this is NodePath; - isEmptyStatement(opts?: object): this is NodePath; - isExpressionStatement(opts?: object): this is NodePath; - isFile(opts?: object): this is NodePath; - isForInStatement(opts?: object): this is NodePath; - isForStatement(opts?: object): this is NodePath; - isFunctionDeclaration(opts?: object): this is NodePath; - isFunctionExpression(opts?: object): this is NodePath; - isIdentifier(opts?: object): this is NodePath; - isIfStatement(opts?: object): this is NodePath; - isLabeledStatement(opts?: object): this is NodePath; - isStringLiteral(opts?: object): this is NodePath; - isNumericLiteral(opts?: object): this is NodePath; - isNullLiteral(opts?: object): this is NodePath; - isBooleanLiteral(opts?: object): this is NodePath; - isRegExpLiteral(opts?: object): this is NodePath; - isLogicalExpression(opts?: object): this is NodePath; - isMemberExpression(opts?: object): this is NodePath; - isNewExpression(opts?: object): this is NodePath; - isProgram(opts?: object): this is NodePath; - isObjectExpression(opts?: object): this is NodePath; - isObjectMethod(opts?: object): this is NodePath; - isObjectProperty(opts?: object): this is NodePath; - isRestElement(opts?: object): this is NodePath; - isReturnStatement(opts?: object): this is NodePath; - isSequenceExpression(opts?: object): this is NodePath; - isSwitchCase(opts?: object): this is NodePath; - isSwitchStatement(opts?: object): this is NodePath; - isThisExpression(opts?: object): this is NodePath; - isThrowStatement(opts?: object): this is NodePath; - isTryStatement(opts?: object): this is NodePath; - isUnaryExpression(opts?: object): this is NodePath; - isUpdateExpression(opts?: object): this is NodePath; - isVariableDeclaration(opts?: object): this is NodePath; - isVariableDeclarator(opts?: object): this is NodePath; - isWhileStatement(opts?: object): this is NodePath; - isWithStatement(opts?: object): this is NodePath; - isAssignmentPattern(opts?: object): this is NodePath; - isArrayPattern(opts?: object): this is NodePath; - isArrowFunctionExpression(opts?: object): this is NodePath; - isClassBody(opts?: object): this is NodePath; - isClassDeclaration(opts?: object): this is NodePath; - isClassExpression(opts?: object): this is NodePath; - isExportAllDeclaration(opts?: object): this is NodePath; - isExportDefaultDeclaration(opts?: object): this is NodePath; - isExportNamedDeclaration(opts?: object): this is NodePath; - isExportSpecifier(opts?: object): this is NodePath; - isForOfStatement(opts?: object): this is NodePath; - isImportDeclaration(opts?: object): this is NodePath; - isImportDefaultSpecifier(opts?: object): this is NodePath; - isImportNamespaceSpecifier(opts?: object): this is NodePath; - isImportSpecifier(opts?: object): this is NodePath; - isMetaProperty(opts?: object): this is NodePath; - isClassMethod(opts?: object): this is NodePath; - isObjectPattern(opts?: object): this is NodePath; - isSpreadElement(opts?: object): this is NodePath; - isSuper(opts?: object): this is NodePath; - isTaggedTemplateExpression(opts?: object): this is NodePath; - isTemplateElement(opts?: object): this is NodePath; - isTemplateLiteral(opts?: object): this is NodePath; - isYieldExpression(opts?: object): this is NodePath; - isAnyTypeAnnotation(opts?: object): this is NodePath; - isArrayTypeAnnotation(opts?: object): this is NodePath; - isBooleanTypeAnnotation(opts?: object): this is NodePath; - isBooleanLiteralTypeAnnotation(opts?: object): this is NodePath; - isNullLiteralTypeAnnotation(opts?: object): this is NodePath; - isClassImplements(opts?: object): this is NodePath; - isClassProperty(opts?: object): this is NodePath; - isDeclareClass(opts?: object): this is NodePath; - isDeclareFunction(opts?: object): this is NodePath; - isDeclareInterface(opts?: object): this is NodePath; - isDeclareModule(opts?: object): this is NodePath; - isDeclareTypeAlias(opts?: object): this is NodePath; - isDeclareVariable(opts?: object): this is NodePath; - isFunctionTypeAnnotation(opts?: object): this is NodePath; - isFunctionTypeParam(opts?: object): this is NodePath; - isGenericTypeAnnotation(opts?: object): this is NodePath; - isInterfaceExtends(opts?: object): this is NodePath; - isInterfaceDeclaration(opts?: object): this is NodePath; - isIntersectionTypeAnnotation(opts?: object): this is NodePath; - isMixedTypeAnnotation(opts?: object): this is NodePath; - isNullableTypeAnnotation(opts?: object): this is NodePath; - isNumberTypeAnnotation(opts?: object): this is NodePath; - isStringLiteralTypeAnnotation(opts?: object): this is NodePath; - isStringTypeAnnotation(opts?: object): this is NodePath; - isThisTypeAnnotation(opts?: object): this is NodePath; - isTupleTypeAnnotation(opts?: object): this is NodePath; - isTypeofTypeAnnotation(opts?: object): this is NodePath; - isTypeAlias(opts?: object): this is NodePath; - isTypeAnnotation(opts?: object): this is NodePath; - isTypeCastExpression(opts?: object): this is NodePath; - isTypeParameterDeclaration(opts?: object): this is NodePath; - isTypeParameterInstantiation(opts?: object): this is NodePath; - isObjectTypeAnnotation(opts?: object): this is NodePath; - isObjectTypeCallProperty(opts?: object): this is NodePath; - isObjectTypeIndexer(opts?: object): this is NodePath; - isObjectTypeProperty(opts?: object): this is NodePath; - isQualifiedTypeIdentifier(opts?: object): this is NodePath; - isUnionTypeAnnotation(opts?: object): this is NodePath; - isVoidTypeAnnotation(opts?: object): this is NodePath; - isJSXAttribute(opts?: object): this is NodePath; - isJSXClosingElement(opts?: object): this is NodePath; - isJSXElement(opts?: object): this is NodePath; - isJSXEmptyExpression(opts?: object): this is NodePath; - isJSXExpressionContainer(opts?: object): this is NodePath; - isJSXIdentifier(opts?: object): this is NodePath; - isJSXMemberExpression(opts?: object): this is NodePath; - isJSXNamespacedName(opts?: object): this is NodePath; - isJSXOpeningElement(opts?: object): this is NodePath; - isJSXSpreadAttribute(opts?: object): this is NodePath; - isJSXText(opts?: object): this is NodePath; - isNoop(opts?: object): this is NodePath; - isParenthesizedExpression(opts?: object): this is NodePath; - isAwaitExpression(opts?: object): this is NodePath; - isBindExpression(opts?: object): this is NodePath; - isDecorator(opts?: object): this is NodePath; - isDoExpression(opts?: object): this is NodePath; - isExportDefaultSpecifier(opts?: object): this is NodePath; - isExportNamespaceSpecifier(opts?: object): this is NodePath; - isRestProperty(opts?: object): this is NodePath; - isSpreadProperty(opts?: object): this is NodePath; - isExpression(opts?: object): this is NodePath; - isBinary(opts?: object): this is NodePath; - isScopable(opts?: object): this is NodePath; - isBlockParent(opts?: object): this is NodePath; - isBlock(opts?: object): this is NodePath; - isStatement(opts?: object): this is NodePath; - isTerminatorless(opts?: object): this is NodePath; - isCompletionStatement(opts?: object): this is NodePath; - isConditional(opts?: object): this is NodePath; - isLoop(opts?: object): this is NodePath; - isWhile(opts?: object): this is NodePath; - isExpressionWrapper(opts?: object): this is NodePath; - isFor(opts?: object): this is NodePath; - isForXStatement(opts?: object): this is NodePath; - isFunction(opts?: object): this is NodePath; - isFunctionParent(opts?: object): this is NodePath; - isPureish(opts?: object): this is NodePath; - isDeclaration(opts?: object): this is NodePath; - isLVal(opts?: object): this is NodePath; - isLiteral(opts?: object): this is NodePath; - isImmutable(opts?: object): this is NodePath; - isUserWhitespacable(opts?: object): this is NodePath; - isMethod(opts?: object): this is NodePath; - isObjectMember(opts?: object): this is NodePath; - isProperty(opts?: object): this is NodePath; - isUnaryLike(opts?: object): this is NodePath; - isPattern(opts?: object): this is NodePath; - isClass(opts?: object): this is NodePath; - isModuleDeclaration(opts?: object): this is NodePath; - isExportDeclaration(opts?: object): this is NodePath; - isModuleSpecifier(opts?: object): this is NodePath; - isFlow(opts?: object): this is NodePath; - isFlowBaseAnnotation(opts?: object): this is NodePath; - isFlowDeclaration(opts?: object): this is NodePath; - isJSX(opts?: object): this is NodePath; - isNumberLiteral(opts?: object): this is NodePath; - isRegexLiteral(opts?: object): this is NodePath; - isReferencedIdentifier(opts?: object): this is NodePath; - isReferencedMemberExpression(opts?: object): this is NodePath; - isBindingIdentifier(opts?: object): this is NodePath; - isScope(opts?: object): this is NodePath; - isReferenced(opts?: object): boolean; - isBlockScoped(opts?: object): this is NodePath; - isVar(opts?: object): this is NodePath; - isUser(opts?: object): boolean; - isGenerated(opts?: object): boolean; - isPure(opts?: object): boolean; + //#region ------------------------- isXXX ------------------------- + isAnyTypeAnnotation(props?: object | null): this is NodePath; + isArrayExpression(props?: object | null): this is NodePath; + isArrayPattern(props?: object | null): this is NodePath; + isArrayTypeAnnotation(props?: object | null): this is NodePath; + isArrowFunctionExpression(props?: object | null): this is NodePath; + isAssignmentExpression(props?: object | null): this is NodePath; + isAssignmentPattern(props?: object | null): this is NodePath; + isAwaitExpression(props?: object | null): this is NodePath; + isBigIntLiteral(props?: object | null): this is NodePath; + isBinary(props?: object | null): this is NodePath; + isBinaryExpression(props?: object | null): this is NodePath; + isBindExpression(props?: object | null): this is NodePath; + isBlock(props?: object | null): this is NodePath; + isBlockParent(props?: object | null): this is NodePath; + isBlockStatement(props?: object | null): this is NodePath; + isBooleanLiteral(props?: object | null): this is NodePath; + isBooleanLiteralTypeAnnotation(props?: object | null): this is NodePath; + isBooleanTypeAnnotation(props?: object | null): this is NodePath; + isBreakStatement(props?: object | null): this is NodePath; + isCallExpression(props?: object | null): this is NodePath; + isCatchClause(props?: object | null): this is NodePath; + isClass(props?: object | null): this is NodePath; + isClassBody(props?: object | null): this is NodePath; + isClassDeclaration(props?: object | null): this is NodePath; + isClassExpression(props?: object | null): this is NodePath; + isClassImplements(props?: object | null): this is NodePath; + isClassMethod(props?: object | null): this is NodePath; + isClassPrivateMethod(props?: object | null): this is NodePath; + isClassPrivateProperty(props?: object | null): this is NodePath; + isClassProperty(props?: object | null): this is NodePath; + isCompletionStatement(props?: object | null): this is NodePath; + isConditional(props?: object | null): this is NodePath; + isConditionalExpression(props?: object | null): this is NodePath; + isContinueStatement(props?: object | null): this is NodePath; + isDebuggerStatement(props?: object | null): this is NodePath; + isDeclaration(props?: object | null): this is NodePath; + isDeclareClass(props?: object | null): this is NodePath; + isDeclareExportAllDeclaration(props?: object | null): this is NodePath; + isDeclareExportDeclaration(props?: object | null): this is NodePath; + isDeclareFunction(props?: object | null): this is NodePath; + isDeclareInterface(props?: object | null): this is NodePath; + isDeclareModule(props?: object | null): this is NodePath; + isDeclareModuleExports(props?: object | null): this is NodePath; + isDeclareOpaqueType(props?: object | null): this is NodePath; + isDeclareTypeAlias(props?: object | null): this is NodePath; + isDeclareVariable(props?: object | null): this is NodePath; + isDeclaredPredicate(props?: object | null): this is NodePath; + isDecorator(props?: object | null): this is NodePath; + isDirective(props?: object | null): this is NodePath; + isDirectiveLiteral(props?: object | null): this is NodePath; + isDoExpression(props?: object | null): this is NodePath; + isDoWhileStatement(props?: object | null): this is NodePath; + isEmptyStatement(props?: object | null): this is NodePath; + isEmptyTypeAnnotation(props?: object | null): this is NodePath; + isExistsTypeAnnotation(props?: object | null): this is NodePath; + isExportAllDeclaration(props?: object | null): this is NodePath; + isExportDeclaration(props?: object | null): this is NodePath; + isExportDefaultDeclaration(props?: object | null): this is NodePath; + isExportDefaultSpecifier(props?: object | null): this is NodePath; + isExportNamedDeclaration(props?: object | null): this is NodePath; + isExportNamespaceSpecifier(props?: object | null): this is NodePath; + isExportSpecifier(props?: object | null): this is NodePath; + isExpression(props?: object | null): this is NodePath; + isExpressionStatement(props?: object | null): this is NodePath; + isExpressionWrapper(props?: object | null): this is NodePath; + isFile(props?: object | null): this is NodePath; + isFlow(props?: object | null): this is NodePath; + isFlowBaseAnnotation(props?: object | null): this is NodePath; + isFlowDeclaration(props?: object | null): this is NodePath; + isFlowPredicate(props?: object | null): this is NodePath; + isFlowType(props?: object | null): this is NodePath; + isFor(props?: object | null): this is NodePath; + isForInStatement(props?: object | null): this is NodePath; + isForOfStatement(props?: object | null): this is NodePath; + isForStatement(props?: object | null): this is NodePath; + isForXStatement(props?: object | null): this is NodePath; + isFunction(props?: object | null): this is NodePath; + isFunctionDeclaration(props?: object | null): this is NodePath; + isFunctionExpression(props?: object | null): this is NodePath; + isFunctionParent(props?: object | null): this is NodePath; + isFunctionTypeAnnotation(props?: object | null): this is NodePath; + isFunctionTypeParam(props?: object | null): this is NodePath; + isGenericTypeAnnotation(props?: object | null): this is NodePath; + isIdentifier(props?: object | null): this is NodePath; + isIfStatement(props?: object | null): this is NodePath; + isImmutable(props?: object | null): this is NodePath; + isImport(props?: object | null): this is NodePath; + isImportDeclaration(props?: object | null): this is NodePath; + isImportDefaultSpecifier(props?: object | null): this is NodePath; + isImportNamespaceSpecifier(props?: object | null): this is NodePath; + isImportSpecifier(props?: object | null): this is NodePath; + isInferredPredicate(props?: object | null): this is NodePath; + isInterfaceDeclaration(props?: object | null): this is NodePath; + isInterfaceExtends(props?: object | null): this is NodePath; + isInterfaceTypeAnnotation(props?: object | null): this is NodePath; + isInterpreterDirective(props?: object | null): this is NodePath; + isIntersectionTypeAnnotation(props?: object | null): this is NodePath; + isJSX(props?: object | null): this is NodePath; + isJSXAttribute(props?: object | null): this is NodePath; + isJSXClosingElement(props?: object | null): this is NodePath; + isJSXClosingFragment(props?: object | null): this is NodePath; + isJSXElement(props?: object | null): this is NodePath; + isJSXEmptyExpression(props?: object | null): this is NodePath; + isJSXExpressionContainer(props?: object | null): this is NodePath; + isJSXFragment(props?: object | null): this is NodePath; + isJSXIdentifier(props?: object | null): this is NodePath; + isJSXMemberExpression(props?: object | null): this is NodePath; + isJSXNamespacedName(props?: object | null): this is NodePath; + isJSXOpeningElement(props?: object | null): this is NodePath; + isJSXOpeningFragment(props?: object | null): this is NodePath; + isJSXSpreadAttribute(props?: object | null): this is NodePath; + isJSXSpreadChild(props?: object | null): this is NodePath; + isJSXText(props?: object | null): this is NodePath; + isLVal(props?: object | null): this is NodePath; + isLabeledStatement(props?: object | null): this is NodePath; + isLiteral(props?: object | null): this is NodePath; + isLogicalExpression(props?: object | null): this is NodePath; + isLoop(props?: object | null): this is NodePath; + isMemberExpression(props?: object | null): this is NodePath; + isMetaProperty(props?: object | null): this is NodePath; + isMethod(props?: object | null): this is NodePath; + isMixedTypeAnnotation(props?: object | null): this is NodePath; + isModuleDeclaration(props?: object | null): this is NodePath; + isModuleSpecifier(props?: object | null): this is NodePath; + isNewExpression(props?: object | null): this is NodePath; + isNoop(props?: object | null): this is NodePath; + isNullLiteral(props?: object | null): this is NodePath; + isNullLiteralTypeAnnotation(props?: object | null): this is NodePath; + isNullableTypeAnnotation(props?: object | null): this is NodePath; - // ------------------------- assertXXX ------------------------- - assertArrayExpression(opts?: object): void; - assertAssignmentExpression(opts?: object): void; - assertBinaryExpression(opts?: object): void; - assertDirective(opts?: object): void; - assertDirectiveLiteral(opts?: object): void; - assertBlockStatement(opts?: object): void; - assertBreakStatement(opts?: object): void; - assertCallExpression(opts?: object): void; - assertCatchClause(opts?: object): void; - assertConditionalExpression(opts?: object): void; - assertContinueStatement(opts?: object): void; - assertDebuggerStatement(opts?: object): void; - assertDoWhileStatement(opts?: object): void; - assertEmptyStatement(opts?: object): void; - assertExpressionStatement(opts?: object): void; - assertFile(opts?: object): void; - assertForInStatement(opts?: object): void; - assertForStatement(opts?: object): void; - assertFunctionDeclaration(opts?: object): void; - assertFunctionExpression(opts?: object): void; - assertIdentifier(opts?: object): void; - assertIfStatement(opts?: object): void; - assertLabeledStatement(opts?: object): void; - assertStringLiteral(opts?: object): void; - assertNumericLiteral(opts?: object): void; - assertNullLiteral(opts?: object): void; - assertBooleanLiteral(opts?: object): void; - assertRegExpLiteral(opts?: object): void; - assertLogicalExpression(opts?: object): void; - assertMemberExpression(opts?: object): void; - assertNewExpression(opts?: object): void; - assertProgram(opts?: object): void; - assertObjectExpression(opts?: object): void; - assertObjectMethod(opts?: object): void; - assertObjectProperty(opts?: object): void; - assertRestElement(opts?: object): void; - assertReturnStatement(opts?: object): void; - assertSequenceExpression(opts?: object): void; - assertSwitchCase(opts?: object): void; - assertSwitchStatement(opts?: object): void; - assertThisExpression(opts?: object): void; - assertThrowStatement(opts?: object): void; - assertTryStatement(opts?: object): void; - assertUnaryExpression(opts?: object): void; - assertUpdateExpression(opts?: object): void; - assertVariableDeclaration(opts?: object): void; - assertVariableDeclarator(opts?: object): void; - assertWhileStatement(opts?: object): void; - assertWithStatement(opts?: object): void; - assertAssignmentPattern(opts?: object): void; - assertArrayPattern(opts?: object): void; - assertArrowFunctionExpression(opts?: object): void; - assertClassBody(opts?: object): void; - assertClassDeclaration(opts?: object): void; - assertClassExpression(opts?: object): void; - assertExportAllDeclaration(opts?: object): void; - assertExportDefaultDeclaration(opts?: object): void; - assertExportNamedDeclaration(opts?: object): void; - assertExportSpecifier(opts?: object): void; - assertForOfStatement(opts?: object): void; - assertImportDeclaration(opts?: object): void; - assertImportDefaultSpecifier(opts?: object): void; - assertImportNamespaceSpecifier(opts?: object): void; - assertImportSpecifier(opts?: object): void; - assertMetaProperty(opts?: object): void; - assertClassMethod(opts?: object): void; - assertObjectPattern(opts?: object): void; - assertSpreadElement(opts?: object): void; - assertSuper(opts?: object): void; - assertTaggedTemplateExpression(opts?: object): void; - assertTemplateElement(opts?: object): void; - assertTemplateLiteral(opts?: object): void; - assertYieldExpression(opts?: object): void; - assertAnyTypeAnnotation(opts?: object): void; - assertArrayTypeAnnotation(opts?: object): void; - assertBooleanTypeAnnotation(opts?: object): void; - assertBooleanLiteralTypeAnnotation(opts?: object): void; - assertNullLiteralTypeAnnotation(opts?: object): void; - assertClassImplements(opts?: object): void; - assertClassProperty(opts?: object): void; - assertDeclareClass(opts?: object): void; - assertDeclareFunction(opts?: object): void; - assertDeclareInterface(opts?: object): void; - assertDeclareModule(opts?: object): void; - assertDeclareTypeAlias(opts?: object): void; - assertDeclareVariable(opts?: object): void; - assertExistentialTypeParam(opts?: object): void; - assertFunctionTypeAnnotation(opts?: object): void; - assertFunctionTypeParam(opts?: object): void; - assertGenericTypeAnnotation(opts?: object): void; - assertInterfaceExtends(opts?: object): void; - assertInterfaceDeclaration(opts?: object): void; - assertIntersectionTypeAnnotation(opts?: object): void; - assertMixedTypeAnnotation(opts?: object): void; - assertNullableTypeAnnotation(opts?: object): void; - assertNumericLiteralTypeAnnotation(opts?: object): void; - assertNumberTypeAnnotation(opts?: object): void; - assertStringLiteralTypeAnnotation(opts?: object): void; - assertStringTypeAnnotation(opts?: object): void; - assertThisTypeAnnotation(opts?: object): void; - assertTupleTypeAnnotation(opts?: object): void; - assertTypeofTypeAnnotation(opts?: object): void; - assertTypeAlias(opts?: object): void; - assertTypeAnnotation(opts?: object): void; - assertTypeCastExpression(opts?: object): void; - assertTypeParameterDeclaration(opts?: object): void; - assertTypeParameterInstantiation(opts?: object): void; - assertObjectTypeAnnotation(opts?: object): void; - assertObjectTypeCallProperty(opts?: object): void; - assertObjectTypeIndexer(opts?: object): void; - assertObjectTypeProperty(opts?: object): void; - assertQualifiedTypeIdentifier(opts?: object): void; - assertUnionTypeAnnotation(opts?: object): void; - assertVoidTypeAnnotation(opts?: object): void; - assertJSXAttribute(opts?: object): void; - assertJSXClosingElement(opts?: object): void; - assertJSXElement(opts?: object): void; - assertJSXEmptyExpression(opts?: object): void; - assertJSXExpressionContainer(opts?: object): void; - assertJSXIdentifier(opts?: object): void; - assertJSXMemberExpression(opts?: object): void; - assertJSXNamespacedName(opts?: object): void; - assertJSXOpeningElement(opts?: object): void; - assertJSXSpreadAttribute(opts?: object): void; - assertJSXText(opts?: object): void; - assertNoop(opts?: object): void; - assertParenthesizedExpression(opts?: object): void; - assertAwaitExpression(opts?: object): void; - assertBindExpression(opts?: object): void; - assertDecorator(opts?: object): void; - assertDoExpression(opts?: object): void; - assertExportDefaultSpecifier(opts?: object): void; - assertExportNamespaceSpecifier(opts?: object): void; - assertRestProperty(opts?: object): void; - assertSpreadProperty(opts?: object): void; - assertExpression(opts?: object): void; - assertBinary(opts?: object): void; - assertScopable(opts?: object): void; - assertBlockParent(opts?: object): void; - assertBlock(opts?: object): void; - assertStatement(opts?: object): void; - assertTerminatorless(opts?: object): void; - assertCompletionStatement(opts?: object): void; - assertConditional(opts?: object): void; - assertLoop(opts?: object): void; - assertWhile(opts?: object): void; - assertExpressionWrapper(opts?: object): void; - assertFor(opts?: object): void; - assertForXStatement(opts?: object): void; - assertFunction(opts?: object): void; - assertFunctionParent(opts?: object): void; - assertPureish(opts?: object): void; - assertDeclaration(opts?: object): void; - assertLVal(opts?: object): void; - assertLiteral(opts?: object): void; - assertImmutable(opts?: object): void; - assertUserWhitespacable(opts?: object): void; - assertMethod(opts?: object): void; - assertObjectMember(opts?: object): void; - assertProperty(opts?: object): void; - assertUnaryLike(opts?: object): void; - assertPattern(opts?: object): void; - assertClass(opts?: object): void; - assertModuleDeclaration(opts?: object): void; - assertExportDeclaration(opts?: object): void; - assertModuleSpecifier(opts?: object): void; - assertFlow(opts?: object): void; - assertFlowBaseAnnotation(opts?: object): void; - assertFlowDeclaration(opts?: object): void; - assertJSX(opts?: object): void; - assertNumberLiteral(opts?: object): void; - assertRegexLiteral(opts?: object): void; + /** @deprecated Use `isNumericLiteral` */ + isNumberLiteral(props?: object | null): this is NodePath; + isNumberLiteralTypeAnnotation(props?: object | null): this is NodePath; + isNumberTypeAnnotation(props?: object | null): this is NodePath; + isNumericLiteral(props?: object | null): this is NodePath; + isObjectExpression(props?: object | null): this is NodePath; + isObjectMember(props?: object | null): this is NodePath; + isObjectMethod(props?: object | null): this is NodePath; + isObjectPattern(props?: object | null): this is NodePath; + isObjectProperty(props?: object | null): this is NodePath; + isObjectTypeAnnotation(props?: object | null): this is NodePath; + isObjectTypeCallProperty(props?: object | null): this is NodePath; + isObjectTypeIndexer(props?: object | null): this is NodePath; + isObjectTypeInternalSlot(props?: object | null): this is NodePath; + isObjectTypeProperty(props?: object | null): this is NodePath; + isObjectTypeSpreadProperty(props?: object | null): this is NodePath; + isOpaqueType(props?: object | null): this is NodePath; + isOptionalCallExpression(props?: object | null): this is NodePath; + isOptionalMemberExpression(props?: object | null): this is NodePath; + isParenthesizedExpression(props?: object | null): this is NodePath; + isPattern(props?: object | null): this is NodePath; + isPatternLike(props?: object | null): this is NodePath; + isPipelineBareFunction(props?: object | null): this is NodePath; + isPipelinePrimaryTopicReference(props?: object | null): this is NodePath; + isPipelineTopicExpression(props?: object | null): this is NodePath; + isPrivate(props?: object | null): this is NodePath; + isPrivateName(props?: object | null): this is NodePath; + isProgram(props?: object | null): this is NodePath; + isProperty(props?: object | null): this is NodePath; + isPureish(props?: object | null): this is NodePath; + isQualifiedTypeIdentifier(props?: object | null): this is NodePath; + isRegExpLiteral(props?: object | null): this is NodePath; + + /** @deprecated Use `isRegExpLiteral` */ + isRegexLiteral(props?: object | null): this is NodePath; + isRestElement(props?: object | null): this is NodePath; + + /** @deprecated Use `isRestElement` */ + isRestProperty(props?: object | null): this is NodePath; + isReturnStatement(props?: object | null): this is NodePath; + isScopable(props?: object | null): this is NodePath; + isSequenceExpression(props?: object | null): this is NodePath; + isSpreadElement(props?: object | null): this is NodePath; + + /** @deprecated Use `isSpreadElement` */ + isSpreadProperty(props?: object | null): this is NodePath; + isStatement(props?: object | null): this is NodePath; + isStringLiteral(props?: object | null): this is NodePath; + isStringLiteralTypeAnnotation(props?: object | null): this is NodePath; + isStringTypeAnnotation(props?: object | null): this is NodePath; + isSuper(props?: object | null): this is NodePath; + isSwitchCase(props?: object | null): this is NodePath; + isSwitchStatement(props?: object | null): this is NodePath; + isTSAnyKeyword(props?: object | null): this is NodePath; + isTSArrayType(props?: object | null): this is NodePath; + isTSAsExpression(props?: object | null): this is NodePath; + isTSBooleanKeyword(props?: object | null): this is NodePath; + isTSCallSignatureDeclaration(props?: object | null): this is NodePath; + isTSConditionalType(props?: object | null): this is NodePath; + isTSConstructSignatureDeclaration(props?: object | null): this is NodePath; + isTSConstructorType(props?: object | null): this is NodePath; + isTSDeclareFunction(props?: object | null): this is NodePath; + isTSDeclareMethod(props?: object | null): this is NodePath; + isTSEntityName(props?: object | null): this is NodePath; + isTSEnumDeclaration(props?: object | null): this is NodePath; + isTSEnumMember(props?: object | null): this is NodePath; + isTSExportAssignment(props?: object | null): this is NodePath; + isTSExpressionWithTypeArguments(props?: object | null): this is NodePath; + isTSExternalModuleReference(props?: object | null): this is NodePath; + isTSFunctionType(props?: object | null): this is NodePath; + isTSImportEqualsDeclaration(props?: object | null): this is NodePath; + isTSImportType(props?: object | null): this is NodePath; + isTSIndexSignature(props?: object | null): this is NodePath; + isTSIndexedAccessType(props?: object | null): this is NodePath; + isTSInferType(props?: object | null): this is NodePath; + isTSInterfaceBody(props?: object | null): this is NodePath; + isTSInterfaceDeclaration(props?: object | null): this is NodePath; + isTSIntersectionType(props?: object | null): this is NodePath; + isTSLiteralType(props?: object | null): this is NodePath; + isTSMappedType(props?: object | null): this is NodePath; + isTSMethodSignature(props?: object | null): this is NodePath; + isTSModuleBlock(props?: object | null): this is NodePath; + isTSModuleDeclaration(props?: object | null): this is NodePath; + isTSNamespaceExportDeclaration(props?: object | null): this is NodePath; + isTSNeverKeyword(props?: object | null): this is NodePath; + isTSNonNullExpression(props?: object | null): this is NodePath; + isTSNullKeyword(props?: object | null): this is NodePath; + isTSNumberKeyword(props?: object | null): this is NodePath; + isTSObjectKeyword(props?: object | null): this is NodePath; + isTSOptionalType(props?: object | null): this is NodePath; + isTSParameterProperty(props?: object | null): this is NodePath; + isTSParenthesizedType(props?: object | null): this is NodePath; + isTSPropertySignature(props?: object | null): this is NodePath; + isTSQualifiedName(props?: object | null): this is NodePath; + isTSRestType(props?: object | null): this is NodePath; + isTSStringKeyword(props?: object | null): this is NodePath; + isTSSymbolKeyword(props?: object | null): this is NodePath; + isTSThisType(props?: object | null): this is NodePath; + isTSTupleType(props?: object | null): this is NodePath; + isTSType(props?: object | null): this is NodePath; + isTSTypeAliasDeclaration(props?: object | null): this is NodePath; + isTSTypeAnnotation(props?: object | null): this is NodePath; + isTSTypeAssertion(props?: object | null): this is NodePath; + isTSTypeElement(props?: object | null): this is NodePath; + isTSTypeLiteral(props?: object | null): this is NodePath; + isTSTypeOperator(props?: object | null): this is NodePath; + isTSTypeParameter(props?: object | null): this is NodePath; + isTSTypeParameterDeclaration(props?: object | null): this is NodePath; + isTSTypeParameterInstantiation(props?: object | null): this is NodePath; + isTSTypePredicate(props?: object | null): this is NodePath; + isTSTypeQuery(props?: object | null): this is NodePath; + isTSTypeReference(props?: object | null): this is NodePath; + isTSUndefinedKeyword(props?: object | null): this is NodePath; + isTSUnionType(props?: object | null): this is NodePath; + isTSUnknownKeyword(props?: object | null): this is NodePath; + isTSVoidKeyword(props?: object | null): this is NodePath; + isTaggedTemplateExpression(props?: object | null): this is NodePath; + isTemplateElement(props?: object | null): this is NodePath; + isTemplateLiteral(props?: object | null): this is NodePath; + isTerminatorless(props?: object | null): this is NodePath; + isThisExpression(props?: object | null): this is NodePath; + isThisTypeAnnotation(props?: object | null): this is NodePath; + isThrowStatement(props?: object | null): this is NodePath; + isTryStatement(props?: object | null): this is NodePath; + isTupleTypeAnnotation(props?: object | null): this is NodePath; + isTypeAlias(props?: object | null): this is NodePath; + isTypeAnnotation(props?: object | null): this is NodePath; + isTypeCastExpression(props?: object | null): this is NodePath; + isTypeParameter(props?: object | null): this is NodePath; + isTypeParameterDeclaration(props?: object | null): this is NodePath; + isTypeParameterInstantiation(props?: object | null): this is NodePath; + isTypeofTypeAnnotation(props?: object | null): this is NodePath; + isUnaryExpression(props?: object | null): this is NodePath; + isUnaryLike(props?: object | null): this is NodePath; + isUnionTypeAnnotation(props?: object | null): this is NodePath; + isUpdateExpression(props?: object | null): this is NodePath; + isUserWhitespacable(props?: object | null): this is NodePath; + isVariableDeclaration(props?: object | null): this is NodePath; + isVariableDeclarator(props?: object | null): this is NodePath; + isVariance(props?: object | null): this is NodePath; + isVoidTypeAnnotation(props?: object | null): this is NodePath; + isWhile(props?: object | null): this is NodePath; + isWhileStatement(props?: object | null): this is NodePath; + isWithStatement(props?: object | null): this is NodePath; + isYieldExpression(props?: object | null): this is NodePath; + + isBindingIdentifier(props?: object | null): this is NodePath; + isBlockScoped( + props?: object | null, + ): this is NodePath; + isGenerated(props?: object | null): boolean; + isPure(props?: object | null): boolean; + isReferenced(props?: object | null): boolean; + isReferencedIdentifier(props?: object | null): this is NodePath; + isReferencedMemberExpression(props?: object | null): this is NodePath; + isScope(props?: object | null): this is NodePath; + isUser(props?: object | null): boolean; + isVar(props?: object | null): this is NodePath; + //#endregion + + //#region ------------------------- assertXXX ------------------------- + assertAnyTypeAnnotation(props?: object | null): void; + assertArrayExpression(props?: object | null): void; + assertArrayPattern(props?: object | null): void; + assertArrayTypeAnnotation(props?: object | null): void; + assertArrowFunctionExpression(props?: object | null): void; + assertAssignmentExpression(props?: object | null): void; + assertAssignmentPattern(props?: object | null): void; + assertAwaitExpression(props?: object | null): void; + assertBigIntLiteral(props?: object | null): void; + assertBinary(props?: object | null): void; + assertBinaryExpression(props?: object | null): void; + assertBindExpression(props?: object | null): void; + assertBlock(props?: object | null): void; + assertBlockParent(props?: object | null): void; + assertBlockStatement(props?: object | null): void; + assertBooleanLiteral(props?: object | null): void; + assertBooleanLiteralTypeAnnotation(props?: object | null): void; + assertBooleanTypeAnnotation(props?: object | null): void; + assertBreakStatement(props?: object | null): void; + assertCallExpression(props?: object | null): void; + assertCatchClause(props?: object | null): void; + assertClass(props?: object | null): void; + assertClassBody(props?: object | null): void; + assertClassDeclaration(props?: object | null): void; + assertClassExpression(props?: object | null): void; + assertClassImplements(props?: object | null): void; + assertClassMethod(props?: object | null): void; + assertClassPrivateMethod(props?: object | null): void; + assertClassPrivateProperty(props?: object | null): void; + assertClassProperty(props?: object | null): void; + assertCompletionStatement(props?: object | null): void; + assertConditional(props?: object | null): void; + assertConditionalExpression(props?: object | null): void; + assertContinueStatement(props?: object | null): void; + assertDebuggerStatement(props?: object | null): void; + assertDeclaration(props?: object | null): void; + assertDeclareClass(props?: object | null): void; + assertDeclareExportAllDeclaration(props?: object | null): void; + assertDeclareExportDeclaration(props?: object | null): void; + assertDeclareFunction(props?: object | null): void; + assertDeclareInterface(props?: object | null): void; + assertDeclareModule(props?: object | null): void; + assertDeclareModuleExports(props?: object | null): void; + assertDeclareOpaqueType(props?: object | null): void; + assertDeclareTypeAlias(props?: object | null): void; + assertDeclareVariable(props?: object | null): void; + assertDeclaredPredicate(props?: object | null): void; + assertDecorator(props?: object | null): void; + assertDirective(props?: object | null): void; + assertDirectiveLiteral(props?: object | null): void; + assertDoExpression(props?: object | null): void; + assertDoWhileStatement(props?: object | null): void; + assertEmptyStatement(props?: object | null): void; + assertEmptyTypeAnnotation(props?: object | null): void; + assertExistsTypeAnnotation(props?: object | null): void; + assertExportAllDeclaration(props?: object | null): void; + assertExportDeclaration(props?: object | null): void; + assertExportDefaultDeclaration(props?: object | null): void; + assertExportDefaultSpecifier(props?: object | null): void; + assertExportNamedDeclaration(props?: object | null): void; + assertExportNamespaceSpecifier(props?: object | null): void; + assertExportSpecifier(props?: object | null): void; + assertExpression(props?: object | null): void; + assertExpressionStatement(props?: object | null): void; + assertExpressionWrapper(props?: object | null): void; + assertFile(props?: object | null): void; + assertFlow(props?: object | null): void; + assertFlowBaseAnnotation(props?: object | null): void; + assertFlowDeclaration(props?: object | null): void; + assertFlowPredicate(props?: object | null): void; + assertFlowType(props?: object | null): void; + assertFor(props?: object | null): void; + assertForInStatement(props?: object | null): void; + assertForOfStatement(props?: object | null): void; + assertForStatement(props?: object | null): void; + assertForXStatement(props?: object | null): void; + assertFunction(props?: object | null): void; + assertFunctionDeclaration(props?: object | null): void; + assertFunctionExpression(props?: object | null): void; + assertFunctionParent(props?: object | null): void; + assertFunctionTypeAnnotation(props?: object | null): void; + assertFunctionTypeParam(props?: object | null): void; + assertGenericTypeAnnotation(props?: object | null): void; + assertIdentifier(props?: object | null): void; + assertIfStatement(props?: object | null): void; + assertImmutable(props?: object | null): void; + assertImport(props?: object | null): void; + assertImportDeclaration(props?: object | null): void; + assertImportDefaultSpecifier(props?: object | null): void; + assertImportNamespaceSpecifier(props?: object | null): void; + assertImportSpecifier(props?: object | null): void; + assertInferredPredicate(props?: object | null): void; + assertInterfaceDeclaration(props?: object | null): void; + assertInterfaceExtends(props?: object | null): void; + assertInterfaceTypeAnnotation(props?: object | null): void; + assertInterpreterDirective(props?: object | null): void; + assertIntersectionTypeAnnotation(props?: object | null): void; + assertJSX(props?: object | null): void; + assertJSXAttribute(props?: object | null): void; + assertJSXClosingElement(props?: object | null): void; + assertJSXClosingFragment(props?: object | null): void; + assertJSXElement(props?: object | null): void; + assertJSXEmptyExpression(props?: object | null): void; + assertJSXExpressionContainer(props?: object | null): void; + assertJSXFragment(props?: object | null): void; + assertJSXIdentifier(props?: object | null): void; + assertJSXMemberExpression(props?: object | null): void; + assertJSXNamespacedName(props?: object | null): void; + assertJSXOpeningElement(props?: object | null): void; + assertJSXOpeningFragment(props?: object | null): void; + assertJSXSpreadAttribute(props?: object | null): void; + assertJSXSpreadChild(props?: object | null): void; + assertJSXText(props?: object | null): void; + assertLVal(props?: object | null): void; + assertLabeledStatement(props?: object | null): void; + assertLiteral(props?: object | null): void; + assertLogicalExpression(props?: object | null): void; + assertLoop(props?: object | null): void; + assertMemberExpression(props?: object | null): void; + assertMetaProperty(props?: object | null): void; + assertMethod(props?: object | null): void; + assertMixedTypeAnnotation(props?: object | null): void; + assertModuleDeclaration(props?: object | null): void; + assertModuleSpecifier(props?: object | null): void; + assertNewExpression(props?: object | null): void; + assertNoop(props?: object | null): void; + assertNullLiteral(props?: object | null): void; + assertNullLiteralTypeAnnotation(props?: object | null): void; + assertNullableTypeAnnotation(props?: object | null): void; + + /** @deprecated Use `assertNumericLiteral` */ + assertNumberLiteral(props?: object | null): void; + assertNumberLiteralTypeAnnotation(props?: object | null): void; + assertNumberTypeAnnotation(props?: object | null): void; + assertNumericLiteral(props?: object | null): void; + assertObjectExpression(props?: object | null): void; + assertObjectMember(props?: object | null): void; + assertObjectMethod(props?: object | null): void; + assertObjectPattern(props?: object | null): void; + assertObjectProperty(props?: object | null): void; + assertObjectTypeAnnotation(props?: object | null): void; + assertObjectTypeCallProperty(props?: object | null): void; + assertObjectTypeIndexer(props?: object | null): void; + assertObjectTypeInternalSlot(props?: object | null): void; + assertObjectTypeProperty(props?: object | null): void; + assertObjectTypeSpreadProperty(props?: object | null): void; + assertOpaqueType(props?: object | null): void; + assertOptionalCallExpression(props?: object | null): void; + assertOptionalMemberExpression(props?: object | null): void; + assertParenthesizedExpression(props?: object | null): void; + assertPattern(props?: object | null): void; + assertPatternLike(props?: object | null): void; + assertPipelineBareFunction(props?: object | null): void; + assertPipelinePrimaryTopicReference(props?: object | null): void; + assertPipelineTopicExpression(props?: object | null): void; + assertPrivate(props?: object | null): void; + assertPrivateName(props?: object | null): void; + assertProgram(props?: object | null): void; + assertProperty(props?: object | null): void; + assertPureish(props?: object | null): void; + assertQualifiedTypeIdentifier(props?: object | null): void; + assertRegExpLiteral(props?: object | null): void; + + /** @deprecated Use `assertRegExpLiteral` */ + assertRegexLiteral(props?: object | null): void; + assertRestElement(props?: object | null): void; + + /** @deprecated Use `assertRestElement` */ + assertRestProperty(props?: object | null): void; + assertReturnStatement(props?: object | null): void; + assertScopable(props?: object | null): void; + assertSequenceExpression(props?: object | null): void; + assertSpreadElement(props?: object | null): void; + + /** @deprecated Use `assertSpreadElement` */ + assertSpreadProperty(props?: object | null): void; + assertStatement(props?: object | null): void; + assertStringLiteral(props?: object | null): void; + assertStringLiteralTypeAnnotation(props?: object | null): void; + assertStringTypeAnnotation(props?: object | null): void; + assertSuper(props?: object | null): void; + assertSwitchCase(props?: object | null): void; + assertSwitchStatement(props?: object | null): void; + assertTSAnyKeyword(props?: object | null): void; + assertTSArrayType(props?: object | null): void; + assertTSAsExpression(props?: object | null): void; + assertTSBooleanKeyword(props?: object | null): void; + assertTSCallSignatureDeclaration(props?: object | null): void; + assertTSConditionalType(props?: object | null): void; + assertTSConstructSignatureDeclaration(props?: object | null): void; + assertTSConstructorType(props?: object | null): void; + assertTSDeclareFunction(props?: object | null): void; + assertTSDeclareMethod(props?: object | null): void; + assertTSEntityName(props?: object | null): void; + assertTSEnumDeclaration(props?: object | null): void; + assertTSEnumMember(props?: object | null): void; + assertTSExportAssignment(props?: object | null): void; + assertTSExpressionWithTypeArguments(props?: object | null): void; + assertTSExternalModuleReference(props?: object | null): void; + assertTSFunctionType(props?: object | null): void; + assertTSImportEqualsDeclaration(props?: object | null): void; + assertTSImportType(props?: object | null): void; + assertTSIndexSignature(props?: object | null): void; + assertTSIndexedAccessType(props?: object | null): void; + assertTSInferType(props?: object | null): void; + assertTSInterfaceBody(props?: object | null): void; + assertTSInterfaceDeclaration(props?: object | null): void; + assertTSIntersectionType(props?: object | null): void; + assertTSLiteralType(props?: object | null): void; + assertTSMappedType(props?: object | null): void; + assertTSMethodSignature(props?: object | null): void; + assertTSModuleBlock(props?: object | null): void; + assertTSModuleDeclaration(props?: object | null): void; + assertTSNamespaceExportDeclaration(props?: object | null): void; + assertTSNeverKeyword(props?: object | null): void; + assertTSNonNullExpression(props?: object | null): void; + assertTSNullKeyword(props?: object | null): void; + assertTSNumberKeyword(props?: object | null): void; + assertTSObjectKeyword(props?: object | null): void; + assertTSOptionalType(props?: object | null): void; + assertTSParameterProperty(props?: object | null): void; + assertTSParenthesizedType(props?: object | null): void; + assertTSPropertySignature(props?: object | null): void; + assertTSQualifiedName(props?: object | null): void; + assertTSRestType(props?: object | null): void; + assertTSStringKeyword(props?: object | null): void; + assertTSSymbolKeyword(props?: object | null): void; + assertTSThisType(props?: object | null): void; + assertTSTupleType(props?: object | null): void; + assertTSType(props?: object | null): void; + assertTSTypeAliasDeclaration(props?: object | null): void; + assertTSTypeAnnotation(props?: object | null): void; + assertTSTypeAssertion(props?: object | null): void; + assertTSTypeElement(props?: object | null): void; + assertTSTypeLiteral(props?: object | null): void; + assertTSTypeOperator(props?: object | null): void; + assertTSTypeParameter(props?: object | null): void; + assertTSTypeParameterDeclaration(props?: object | null): void; + assertTSTypeParameterInstantiation(props?: object | null): void; + assertTSTypePredicate(props?: object | null): void; + assertTSTypeQuery(props?: object | null): void; + assertTSTypeReference(props?: object | null): void; + assertTSUndefinedKeyword(props?: object | null): void; + assertTSUnionType(props?: object | null): void; + assertTSUnknownKeyword(props?: object | null): void; + assertTSVoidKeyword(props?: object | null): void; + assertTaggedTemplateExpression(props?: object | null): void; + assertTemplateElement(props?: object | null): void; + assertTemplateLiteral(props?: object | null): void; + assertTerminatorless(props?: object | null): void; + assertThisExpression(props?: object | null): void; + assertThisTypeAnnotation(props?: object | null): void; + assertThrowStatement(props?: object | null): void; + assertTryStatement(props?: object | null): void; + assertTupleTypeAnnotation(props?: object | null): void; + assertTypeAlias(props?: object | null): void; + assertTypeAnnotation(props?: object | null): void; + assertTypeCastExpression(props?: object | null): void; + assertTypeParameter(props?: object | null): void; + assertTypeParameterDeclaration(props?: object | null): void; + assertTypeParameterInstantiation(props?: object | null): void; + assertTypeofTypeAnnotation(props?: object | null): void; + assertUnaryExpression(props?: object | null): void; + assertUnaryLike(props?: object | null): void; + assertUnionTypeAnnotation(props?: object | null): void; + assertUpdateExpression(props?: object | null): void; + assertUserWhitespacable(props?: object | null): void; + assertVariableDeclaration(props?: object | null): void; + assertVariableDeclarator(props?: object | null): void; + assertVariance(props?: object | null): void; + assertVoidTypeAnnotation(props?: object | null): void; + assertWhile(props?: object | null): void; + assertWhileStatement(props?: object | null): void; + assertWithStatement(props?: object | null): void; + assertYieldExpression(props?: object | null): void; + + assertBindingIdentifier(props?: object | null): void; + assertBlockScoped(props?: object | null): void; + assertGenerated(props?: object | null): void; + assertPure(props?: object | null): void; + assertReferenced(props?: object | null): void; + assertReferencedIdentifier(props?: object | null): void; + assertReferencedMemberExpression(props?: object | null): void; + assertScope(props?: object | null): void; + assertUser(props?: object | null): void; + assertVar(props?: object | null): void; + //#endregion } -export class Hub { - constructor(file: any, options: any); - file: any; - options: any; +export interface HubInterface { + getCode(): string | undefined; + getScope(): Scope | undefined; + addHelper(name: string): any; + buildError(node: Node, msg: string, Error: new (message?: string) => E): E; +} + +export class Hub implements HubInterface { + constructor(); + getCode(): string | undefined; + getScope(): Scope | undefined; + addHelper(name: string): any; + buildError(node: Node, msg: string, Constructor: new (message?: string) => E): E; } export interface TraversalContext { diff --git a/node_modules/@types/babel__traverse/package.json b/node_modules/@types/babel__traverse/package.json index ff9b6e17..5a40b28e 100644 --- a/node_modules/@types/babel__traverse/package.json +++ b/node_modules/@types/babel__traverse/package.json @@ -1,6 +1,6 @@ { "name": "@types/babel__traverse", - "version": "7.0.7", + "version": "7.0.15", "description": "TypeScript definitions for @babel/traverse", "license": "MIT", "contributors": [ @@ -23,10 +23,25 @@ "name": "Melvin Groenhoff", "url": "https://github.com/mgroenhoff", "githubUsername": "mgroenhoff" + }, + { + "name": "Dean L.", + "url": "https://github.com/dlgrit", + "githubUsername": "dlgrit" + }, + { + "name": "Ifiok Jr.", + "url": "https://github.com/ifiokjr", + "githubUsername": "ifiokjr" + }, + { + "name": "ExE Boss", + "url": "https://github.com/ExE-Boss", + "githubUsername": "ExE-Boss" } ], "main": "", - "types": "index", + "types": "index.d.ts", "repository": { "type": "git", "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git", @@ -36,6 +51,6 @@ "dependencies": { "@babel/types": "^7.3.0" }, - "typesPublisherContentHash": "37e6c080b57f5b07ab86b0af01352617892a3cd9fc9db8bd3c69fa0610672457", - "typeScriptVersion": "2.9" + "typesPublisherContentHash": "b641c5a48237d080c85b2821d25a5c49c2677fe8418c25b0b0d1df7b70cbcda9", + "typeScriptVersion": "3.4" } \ No newline at end of file diff --git a/node_modules/@types/eslint-visitor-keys/LICENSE b/node_modules/@types/eslint-visitor-keys/LICENSE deleted file mode 100644 index 21071075..00000000 --- a/node_modules/@types/eslint-visitor-keys/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ - MIT License - - Copyright (c) Microsoft Corporation. All rights reserved. - - 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 diff --git a/node_modules/@types/eslint-visitor-keys/README.md b/node_modules/@types/eslint-visitor-keys/README.md deleted file mode 100644 index 46bc8341..00000000 --- a/node_modules/@types/eslint-visitor-keys/README.md +++ /dev/null @@ -1,16 +0,0 @@ -# Installation -> `npm install --save @types/eslint-visitor-keys` - -# Summary -This package contains type definitions for eslint-visitor-keys (https://github.com/eslint/eslint-visitor-keys#readme). - -# Details -Files were exported from https://www.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/eslint-visitor-keys - -Additional Details - * Last updated: Sun, 18 Feb 2018 01:53:11 GMT - * Dependencies: none - * Global values: none - -# Credits -These definitions were written by Toru Nagashima . diff --git a/node_modules/@types/eslint-visitor-keys/index.d.ts b/node_modules/@types/eslint-visitor-keys/index.d.ts deleted file mode 100644 index b63c4f83..00000000 --- a/node_modules/@types/eslint-visitor-keys/index.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Type definitions for eslint-visitor-keys 1.0 -// Project: https://github.com/eslint/eslint-visitor-keys#readme -// Definitions by: Toru Nagashima -// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.2 - -export interface VisitorKeys { - readonly [type: string]: ReadonlyArray | undefined; -} - -export const KEYS: VisitorKeys; -export function getKeys(node: {}): ReadonlyArray; -export function unionWith(keys: VisitorKeys): VisitorKeys; diff --git a/node_modules/@types/eslint-visitor-keys/package.json b/node_modules/@types/eslint-visitor-keys/package.json deleted file mode 100644 index a004d669..00000000 --- a/node_modules/@types/eslint-visitor-keys/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "@types/eslint-visitor-keys", - "version": "1.0.0", - "description": "TypeScript definitions for eslint-visitor-keys", - "license": "MIT", - "contributors": [ - { - "name": "Toru Nagashima", - "url": "https://github.com/mysticatea", - "githubUsername": "mysticatea" - } - ], - "main": "", - "repository": { - "type": "git", - "url": "https://www.github.com/DefinitelyTyped/DefinitelyTyped.git" - }, - "scripts": {}, - "dependencies": {}, - "typesPublisherContentHash": "439a0b912c49f6aedb6456cd8485eddf2444a36dd4ae5767258b663df3dfb6dc", - "typeScriptVersion": "2.2" -} \ No newline at end of file diff --git a/node_modules/@types/json5/README.md b/node_modules/@types/json5/README.md new file mode 100644 index 00000000..ea81c5cc --- /dev/null +++ b/node_modules/@types/json5/README.md @@ -0,0 +1,18 @@ +# Installation +> `npm install --save @types/json5` + +# Summary +This package contains type definitions for JSON5 (http://json5.org/). + +# Details +Files were exported from https://www.github.com/DefinitelyTyped/DefinitelyTyped/tree/types-2.0/json5 + +Additional Details + * Last updated: Mon, 19 Sep 2016 17:28:59 GMT + * File structure: ProperModule + * Library Dependencies: none + * Module Dependencies: none + * Global values: json5 + +# Credits +These definitions were written by Jason Swearingen . diff --git a/node_modules/@types/json5/index.d.ts b/node_modules/@types/json5/index.d.ts new file mode 100644 index 00000000..76a03526 --- /dev/null +++ b/node_modules/@types/json5/index.d.ts @@ -0,0 +1,44 @@ +// Type definitions for JSON5 +// Project: http://json5.org/ +// Definitions by: Jason Swearingen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + + +//commonjs loader + +/** + * The following is the exact list of additions to JSON's syntax introduced by JSON5. All of these are optional, and all of these come from ES5. + +Objects + +Object keys can be unquoted if they're valid identifiers. Yes, even reserved keywords (like default) are valid unquoted keys in ES5 [§11.1.5, §7.6]. (More info) + +(TODO: Unicode characters and escape sequences aren’t yet supported in this implementation.) + +Objects can have trailing commas. + +Arrays + +Arrays can have trailing commas. +Strings + +Strings can be single-quoted. + +Strings can be split across multiple lines; just prefix each newline with a backslash. [ES5 §7.8.4] + +Numbers + +Numbers can be hexadecimal (base 16). + +Numbers can begin or end with a (leading or trailing) decimal point. + +Numbers can include Infinity, -Infinity, NaN, and -NaN. + +Numbers can begin with an explicit plus sign. + +Comments + +Both inline (single-line) and block (multi-line) comments are allowed. + */ +declare var json5: JSON; +export = json5; diff --git a/node_modules/@types/json5/package.json b/node_modules/@types/json5/package.json new file mode 100644 index 00000000..ff784d59 --- /dev/null +++ b/node_modules/@types/json5/package.json @@ -0,0 +1,16 @@ +{ + "name": "@types/json5", + "version": "0.0.29", + "description": "TypeScript definitions for JSON5", + "license": "MIT", + "author": "Jason Swearingen ", + "main": "", + "repository": { + "type": "git", + "url": "https://www.github.com/DefinitelyTyped/DefinitelyTyped.git" + }, + "scripts": {}, + "dependencies": {}, + "typings": "index.d.ts", + "typesPublisherContentHash": "1ed77f2bfd59d290798abf89db281c36565f4a78d97d4e9caab25319d54c6331" +} \ No newline at end of file diff --git a/node_modules/@types/json5/types-metadata.json b/node_modules/@types/json5/types-metadata.json new file mode 100644 index 00000000..1c02afee --- /dev/null +++ b/node_modules/@types/json5/types-metadata.json @@ -0,0 +1,25 @@ +{ + "authors": "Jason Swearingen ", + "definitionFilename": "index.d.ts", + "libraryDependencies": [], + "moduleDependencies": [], + "libraryMajorVersion": "0", + "libraryMinorVersion": "0", + "libraryName": "JSON5", + "typingsPackageName": "json5", + "projectName": "http://json5.org/", + "sourceRepoURL": "https://www.github.com/DefinitelyTyped/DefinitelyTyped", + "sourceBranch": "types-2.0", + "kind": "ProperModule", + "globals": [ + "json5" + ], + "declaredModules": [ + "json5" + ], + "files": [ + "index.d.ts" + ], + "hasPackageJson": false, + "contentHash": "1ed77f2bfd59d290798abf89db281c36565f4a78d97d4e9caab25319d54c6331" +} \ No newline at end of file diff --git a/node_modules/@types/node/README.md b/node_modules/@types/node/README.md index 2e47ae2b..2a792d60 100644 --- a/node_modules/@types/node/README.md +++ b/node_modules/@types/node/README.md @@ -8,7 +8,7 @@ This package contains type definitions for Node.js (http://nodejs.org/). Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node. ### Additional Details - * Last updated: Tue, 22 Sep 2020 00:22:04 GMT + * Last updated: Fri, 09 Oct 2020 06:51:10 GMT * Dependencies: none * Global values: `Buffer`, `__dirname`, `__filename`, `clearImmediate`, `clearInterval`, `clearTimeout`, `console`, `exports`, `global`, `module`, `process`, `queueMicrotask`, `require`, `setImmediate`, `setInterval`, `setTimeout` diff --git a/node_modules/@types/node/assert.d.ts b/node_modules/@types/node/assert.d.ts index 5feaa34f..3706d99e 100644 --- a/node_modules/@types/node/assert.d.ts +++ b/node_modules/@types/node/assert.d.ts @@ -1,4 +1,4 @@ -declare module "assert" { +declare module 'assert' { /** An alias of `assert.ok()`. */ function assert(value: any, message?: string | Error): asserts value; namespace assert { @@ -21,7 +21,7 @@ declare module "assert" { /** The `operator` property on the error instance. */ operator?: string; /** If provided, the generated stack trace omits frames before this function. */ - stackStartFn?: Function + stackStartFn?: Function; }); } @@ -43,11 +43,17 @@ declare module "assert" { stack: object; } - type AssertPredicate = RegExp | (new() => object) | ((thrown: any) => boolean) | object | Error; + type AssertPredicate = RegExp | (new () => object) | ((thrown: any) => boolean) | object | Error; function fail(message?: string | Error): never; /** @deprecated since v10.0.0 - use fail([message]) or other assert functions instead. */ - function fail(actual: any, expected: any, message?: string | Error, operator?: string, stackStartFn?: Function): never; + function fail( + actual: any, + expected: any, + message?: string | Error, + operator?: string, + stackStartFn?: Function, + ): never; function ok(value: any, message?: string | Error): asserts value; /** @deprecated since v9.9.0 - use strictEqual() instead. */ function equal(actual: any, expected: any, message?: string | Error): void; @@ -70,14 +76,44 @@ declare module "assert" { function ifError(value: any): asserts value is null | undefined; function rejects(block: (() => Promise) | Promise, message?: string | Error): Promise; - function rejects(block: (() => Promise) | Promise, error: AssertPredicate, message?: string | Error): Promise; + function rejects( + block: (() => Promise) | Promise, + error: AssertPredicate, + message?: string | Error, + ): Promise; function doesNotReject(block: (() => Promise) | Promise, message?: string | Error): Promise; - function doesNotReject(block: (() => Promise) | Promise, error: RegExp | Function, message?: string | Error): Promise; + function doesNotReject( + block: (() => Promise) | Promise, + error: RegExp | Function, + message?: string | Error, + ): Promise; function match(value: string, regExp: RegExp, message?: string | Error): void; function doesNotMatch(value: string, regExp: RegExp, message?: string | Error): void; - const strict: typeof assert; + const strict: Omit< + typeof assert, + | 'strict' + | 'deepEqual' + | 'notDeepEqual' + | 'equal' + | 'notEqual' + | 'ok' + | 'strictEqual' + | 'deepStrictEqual' + | 'ifError' + > & { + (value: any, message?: string | Error): asserts value; + strict: typeof strict; + deepEqual: typeof deepStrictEqual; + notDeepEqual: typeof notDeepStrictEqual; + equal: typeof strictEqual; + notEqual: typeof notStrictEqual; + ok(value: any, message?: string | Error): asserts value; + strictEqual(actual: any, expected: T, message?: string | Error): asserts actual is T; + deepStrictEqual(actual: any, expected: T, message?: string | Error): asserts actual is T; + ifError(value: any): asserts value is null | undefined; + }; } export = assert; diff --git a/node_modules/@types/node/crypto.d.ts b/node_modules/@types/node/crypto.d.ts index 258ea7f0..17660cf5 100644 --- a/node_modules/@types/node/crypto.d.ts +++ b/node_modules/@types/node/crypto.d.ts @@ -278,7 +278,7 @@ declare module "crypto" { function createPrivateKey(key: PrivateKeyInput | string | Buffer): KeyObject; function createPublicKey(key: PublicKeyInput | string | Buffer | KeyObject): KeyObject; - function createSecretKey(key: Buffer): KeyObject; + function createSecretKey(key: NodeJS.ArrayBufferView): KeyObject; function createSign(algorithm: string, options?: stream.WritableOptions): Signer; @@ -448,7 +448,7 @@ declare module "crypto" { /** @deprecated since v10.0.0 */ const DEFAULT_ENCODING: BufferEncoding; - type KeyType = 'rsa' | 'dsa' | 'ec' | 'ed25519' | 'x25519'; + type KeyType = 'rsa' | 'dsa' | 'ec' | 'ed25519' | 'ed448' | 'x25519' | 'x448'; type KeyFormat = 'pem' | 'der'; interface BasePrivateKeyEncodingOptions { @@ -468,12 +468,24 @@ declare module "crypto" { */ } + interface ED448KeyPairKeyObjectOptions { + /** + * No options. + */ + } + interface X25519KeyPairKeyObjectOptions { /** * No options. */ } + interface X448KeyPairKeyObjectOptions { + /** + * No options. + */ + } + interface ECKeyPairKeyObjectOptions { /** * Name of the curve to use. @@ -568,6 +580,16 @@ declare module "crypto" { }; } + interface ED448KeyPairOptions { + publicKeyEncoding: { + type: 'spki'; + format: PubF; + }; + privateKeyEncoding: BasePrivateKeyEncodingOptions & { + type: 'pkcs8'; + }; + } + interface X25519KeyPairOptions { publicKeyEncoding: { type: 'spki'; @@ -578,6 +600,16 @@ declare module "crypto" { }; } + interface X448KeyPairOptions { + publicKeyEncoding: { + type: 'spki'; + format: PubF; + }; + privateKeyEncoding: BasePrivateKeyEncodingOptions & { + type: 'pkcs8'; + }; + } + interface KeyPairSyncResult { publicKey: T1; privateKey: T2; @@ -605,13 +637,25 @@ declare module "crypto" { function generateKeyPairSync(type: 'ed25519', options: ED25519KeyPairOptions<'pem', 'der'>): KeyPairSyncResult; function generateKeyPairSync(type: 'ed25519', options: ED25519KeyPairOptions<'der', 'pem'>): KeyPairSyncResult; function generateKeyPairSync(type: 'ed25519', options: ED25519KeyPairOptions<'der', 'der'>): KeyPairSyncResult; - function generateKeyPairSync(type: 'ed25519', options: ED25519KeyPairKeyObjectOptions): KeyPairKeyObjectResult; + function generateKeyPairSync(type: 'ed25519', options?: ED25519KeyPairKeyObjectOptions): KeyPairKeyObjectResult; + + function generateKeyPairSync(type: 'ed448', options: ED448KeyPairOptions<'pem', 'pem'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'ed448', options: ED448KeyPairOptions<'pem', 'der'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'ed448', options: ED448KeyPairOptions<'der', 'pem'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'ed448', options: ED448KeyPairOptions<'der', 'der'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'ed448', options?: ED448KeyPairKeyObjectOptions): KeyPairKeyObjectResult; function generateKeyPairSync(type: 'x25519', options: X25519KeyPairOptions<'pem', 'pem'>): KeyPairSyncResult; function generateKeyPairSync(type: 'x25519', options: X25519KeyPairOptions<'pem', 'der'>): KeyPairSyncResult; function generateKeyPairSync(type: 'x25519', options: X25519KeyPairOptions<'der', 'pem'>): KeyPairSyncResult; function generateKeyPairSync(type: 'x25519', options: X25519KeyPairOptions<'der', 'der'>): KeyPairSyncResult; - function generateKeyPairSync(type: 'x25519', options: X25519KeyPairKeyObjectOptions): KeyPairKeyObjectResult; + function generateKeyPairSync(type: 'x25519', options?: X25519KeyPairKeyObjectOptions): KeyPairKeyObjectResult; + + function generateKeyPairSync(type: 'x448', options: X448KeyPairOptions<'pem', 'pem'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'x448', options: X448KeyPairOptions<'pem', 'der'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'x448', options: X448KeyPairOptions<'der', 'pem'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'x448', options: X448KeyPairOptions<'der', 'der'>): KeyPairSyncResult; + function generateKeyPairSync(type: 'x448', options?: X448KeyPairKeyObjectOptions): KeyPairKeyObjectResult; function generateKeyPair(type: 'rsa', options: RSAKeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void; function generateKeyPair(type: 'rsa', options: RSAKeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void; @@ -635,13 +679,25 @@ declare module "crypto" { function generateKeyPair(type: 'ed25519', options: ED25519KeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void; function generateKeyPair(type: 'ed25519', options: ED25519KeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void; function generateKeyPair(type: 'ed25519', options: ED25519KeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void; - function generateKeyPair(type: 'ed25519', options: ED25519KeyPairKeyObjectOptions, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void; + function generateKeyPair(type: 'ed25519', options: ED25519KeyPairKeyObjectOptions | undefined, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void; + + function generateKeyPair(type: 'ed448', options: ED448KeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void; + function generateKeyPair(type: 'ed448', options: ED448KeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void; + function generateKeyPair(type: 'ed448', options: ED448KeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void; + function generateKeyPair(type: 'ed448', options: ED448KeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void; + function generateKeyPair(type: 'ed448', options: ED448KeyPairKeyObjectOptions | undefined, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void; function generateKeyPair(type: 'x25519', options: X25519KeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void; function generateKeyPair(type: 'x25519', options: X25519KeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void; function generateKeyPair(type: 'x25519', options: X25519KeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void; function generateKeyPair(type: 'x25519', options: X25519KeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void; - function generateKeyPair(type: 'x25519', options: X25519KeyPairKeyObjectOptions, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void; + function generateKeyPair(type: 'x25519', options: X25519KeyPairKeyObjectOptions | undefined, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void; + + function generateKeyPair(type: 'x448', options: X448KeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void; + function generateKeyPair(type: 'x448', options: X448KeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void; + function generateKeyPair(type: 'x448', options: X448KeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void; + function generateKeyPair(type: 'x448', options: X448KeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void; + function generateKeyPair(type: 'x448', options: X448KeyPairKeyObjectOptions | undefined, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void; namespace generateKeyPair { function __promisify__(type: "rsa", options: RSAKeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>; @@ -666,13 +722,25 @@ declare module "crypto" { function __promisify__(type: "ed25519", options: ED25519KeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>; function __promisify__(type: "ed25519", options: ED25519KeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>; function __promisify__(type: "ed25519", options: ED25519KeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>; - function __promisify__(type: "ed25519", options: ED25519KeyPairKeyObjectOptions): Promise; + function __promisify__(type: "ed25519", options?: ED25519KeyPairKeyObjectOptions): Promise; + + function __promisify__(type: "ed448", options: ED448KeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>; + function __promisify__(type: "ed448", options: ED448KeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>; + function __promisify__(type: "ed448", options: ED448KeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>; + function __promisify__(type: "ed448", options: ED448KeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>; + function __promisify__(type: "ed448", options?: ED448KeyPairKeyObjectOptions): Promise; function __promisify__(type: "x25519", options: X25519KeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>; function __promisify__(type: "x25519", options: X25519KeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>; function __promisify__(type: "x25519", options: X25519KeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>; function __promisify__(type: "x25519", options: X25519KeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>; - function __promisify__(type: "x25519", options: X25519KeyPairKeyObjectOptions): Promise; + function __promisify__(type: "x25519", options?: X25519KeyPairKeyObjectOptions): Promise; + + function __promisify__(type: "x448", options: X448KeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>; + function __promisify__(type: "x448", options: X448KeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>; + function __promisify__(type: "x448", options: X448KeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>; + function __promisify__(type: "x448", options: X448KeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>; + function __promisify__(type: "x448", options?: X448KeyPairKeyObjectOptions): Promise; } /** diff --git a/node_modules/@types/node/http.d.ts b/node_modules/@types/node/http.d.ts index 673196cc..0cfb456e 100644 --- a/node_modules/@types/node/http.d.ts +++ b/node_modules/@types/node/http.d.ts @@ -160,8 +160,8 @@ declare module "http" { /** * @deprecate Use `socket` instead. */ - connection: Socket; - socket: Socket; + connection: Socket | null; + socket: Socket | null; constructor(); @@ -205,8 +205,6 @@ declare module "http" { // https://github.com/nodejs/node/blob/master/lib/_http_client.js#L77 class ClientRequest extends OutgoingMessage { - connection: Socket; - socket: Socket; aborted: number; constructor(url: string | URL | ClientRequestArgs, cb?: (res: IncomingMessage) => void); diff --git a/node_modules/@types/node/package.json b/node_modules/@types/node/package.json index 58a0d64c..e15aee1c 100644 --- a/node_modules/@types/node/package.json +++ b/node_modules/@types/node/package.json @@ -1,6 +1,6 @@ { "name": "@types/node", - "version": "14.11.2", + "version": "14.11.8", "description": "TypeScript definitions for Node.js", "license": "MIT", "contributors": [ @@ -246,6 +246,6 @@ }, "scripts": {}, "dependencies": {}, - "typesPublisherContentHash": "95c31ecd7dac923f86a6c9be84dca043a8e12b784d38a9fd13883ee95fac1971", + "typesPublisherContentHash": "2648fdcf6d0b183d3a081cb17833d47c55084f5245aa4f9a8ea246ed71a45a8b", "typeScriptVersion": "3.2" } \ No newline at end of file diff --git a/node_modules/@types/node/punycode.d.ts b/node_modules/@types/node/punycode.d.ts index 75d2811d..9089773c 100644 --- a/node_modules/@types/node/punycode.d.ts +++ b/node_modules/@types/node/punycode.d.ts @@ -1,12 +1,68 @@ declare module "punycode" { + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ function decode(string: string): string; + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ function encode(string: string): string; + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ function toUnicode(domain: string): string; + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ function toASCII(domain: string): string; + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ const ucs2: ucs2; interface ucs2 { + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ decode(string: string): number[]; + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ encode(codePoints: number[]): string; } + /** + * @deprecated since v7.0.0 + * The version of the punycode module bundled in Node.js is being deprecated. + * In a future major version of Node.js this module will be removed. + * Users currently depending on the punycode module should switch to using + * the userland-provided Punycode.js module instead. + */ const version: string; } diff --git a/node_modules/@types/node/ts3.4/assert.d.ts b/node_modules/@types/node/ts3.4/assert.d.ts index 3f01820b..68b189ce 100644 --- a/node_modules/@types/node/ts3.4/assert.d.ts +++ b/node_modules/@types/node/ts3.4/assert.d.ts @@ -1,4 +1,4 @@ -declare module "assert" { +declare module 'assert' { function assert(value: any, message?: string | Error): void; namespace assert { class AssertionError implements Error { @@ -11,16 +11,25 @@ declare module "assert" { code: 'ERR_ASSERTION'; constructor(options?: { - message?: string; actual?: any; expected?: any; - operator?: string; stackStartFn?: Function + message?: string; + actual?: any; + expected?: any; + operator?: string; + stackStartFn?: Function; }); } - type AssertPredicate = RegExp | (new() => object) | ((thrown: any) => boolean) | object | Error; + type AssertPredicate = RegExp | (new () => object) | ((thrown: any) => boolean) | object | Error; function fail(message?: string | Error): never; /** @deprecated since v10.0.0 - use `fail([message])` or other assert functions instead. */ - function fail(actual: any, expected: any, message?: string | Error, operator?: string, stackStartFn?: Function): never; + function fail( + actual: any, + expected: any, + message?: string | Error, + operator?: string, + stackStartFn?: Function, + ): never; function ok(value: any, message?: string | Error): void; /** @deprecated since v9.9.0 - use `strictEqual()` instead. */ function equal(actual: any, expected: any, message?: string | Error): void; @@ -43,9 +52,17 @@ declare module "assert" { function ifError(value: any): void; function rejects(block: (() => Promise) | Promise, message?: string | Error): Promise; - function rejects(block: (() => Promise) | Promise, error: AssertPredicate, message?: string | Error): Promise; + function rejects( + block: (() => Promise) | Promise, + error: AssertPredicate, + message?: string | Error, + ): Promise; function doesNotReject(block: (() => Promise) | Promise, message?: string | Error): Promise; - function doesNotReject(block: (() => Promise) | Promise, error: RegExp | Function, message?: string | Error): Promise; + function doesNotReject( + block: (() => Promise) | Promise, + error: RegExp | Function, + message?: string | Error, + ): Promise; function match(value: string, regExp: RegExp, message?: string | Error): void; function doesNotMatch(value: string, regExp: RegExp, message?: string | Error): void; diff --git a/node_modules/@types/node/wasi.d.ts b/node_modules/@types/node/wasi.d.ts index ecf31707..fe2b2aab 100644 --- a/node_modules/@types/node/wasi.d.ts +++ b/node_modules/@types/node/wasi.d.ts @@ -6,11 +6,13 @@ declare module 'wasi' { * WASI command itself. */ args?: string[]; + /** * An object similar to `process.env` that the WebAssembly * application will see as its environment. */ env?: object; + /** * This object represents the WebAssembly application's * sandbox directory structure. The string keys of `preopens` are treated as @@ -27,6 +29,24 @@ declare module 'wasi' { * @default false */ returnOnExit?: boolean; + + /** + * The file descriptor used as standard input in the WebAssembly application. + * @default 0 + */ + stdin?: number; + + /** + * The file descriptor used as standard output in the WebAssembly application. + * @default 1 + */ + stdout?: number; + + /** + * The file descriptor used as standard error in the WebAssembly application. + * @default 2 + */ + stderr?: number; } class WASI { @@ -40,11 +60,25 @@ declare module 'wasi' { * * `start()` requires that `instance` exports a [`WebAssembly.Memory`][] named * `memory`. If `instance` does not have a `memory` export an exception is thrown. + * + * If `start()` is called more than once, an exception is thrown. */ start(instance: object): void; // TODO: avoid DOM dependency until WASM moved to own lib. + + /** + * Attempt to initialize `instance` as a WASI reactor by invoking its `_initialize()` export, if it is present. + * If `instance` contains a `_start()` export, then an exception is thrown. + * + * `start()` requires that `instance` exports a [`WebAssembly.Memory`][] named + * `memory`. If `instance` does not have a `memory` export an exception is thrown. + * + * If `initialize()` is called more than once, an exception is thrown. + */ + initialize(instance: object): void; // TODO: avoid DOM dependency until WASM moved to own lib. + /** * Is an object that implements the WASI system call API. This object - * should be passed as the `wasi_unstable` import during the instantiation of a + * should be passed as the `wasi_snapshot_preview1` import during the instantiation of a * [`WebAssembly.Instance`][]. */ readonly wasiImport: NodeJS.Dict; // TODO: Narrow to DOM types diff --git a/node_modules/@types/node/worker_threads.d.ts b/node_modules/@types/node/worker_threads.d.ts index 1aea5d48..b1e59dff 100644 --- a/node_modules/@types/node/worker_threads.d.ts +++ b/node_modules/@types/node/worker_threads.d.ts @@ -3,9 +3,11 @@ declare module "worker_threads" { import { EventEmitter } from "events"; import { Readable, Writable } from "stream"; import { URL } from "url"; + import { FileHandle } from "fs/promises"; const isMainThread: boolean; const parentPort: null | MessagePort; + const resourceLimits: ResourceLimits; const SHARE_ENV: unique symbol; const threadId: number; const workerData: any; @@ -15,43 +17,53 @@ declare module "worker_threads" { readonly port2: MessagePort; } + type TransferListItem = ArrayBuffer | MessagePort | FileHandle; + class MessagePort extends EventEmitter { close(): void; - postMessage(value: any, transferList?: Array): void; + postMessage(value: any, transferList?: TransferListItem[]): void; ref(): void; unref(): void; start(): void; addListener(event: "close", listener: () => void): this; addListener(event: "message", listener: (value: any) => void): this; + addListener(event: "messageerror", listener: (error: Error) => void): this; addListener(event: string | symbol, listener: (...args: any[]) => void): this; emit(event: "close"): boolean; emit(event: "message", value: any): boolean; + emit(event: "messageerror", error: Error): boolean; emit(event: string | symbol, ...args: any[]): boolean; on(event: "close", listener: () => void): this; on(event: "message", listener: (value: any) => void): this; + on(event: "messageerror", listener: (error: Error) => void): this; on(event: string | symbol, listener: (...args: any[]) => void): this; once(event: "close", listener: () => void): this; once(event: "message", listener: (value: any) => void): this; + once(event: "messageerror", listener: (error: Error) => void): this; once(event: string | symbol, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: () => void): this; prependListener(event: "message", listener: (value: any) => void): this; + prependListener(event: "messageerror", listener: (error: Error) => void): this; prependListener(event: string | symbol, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: () => void): this; prependOnceListener(event: "message", listener: (value: any) => void): this; + prependOnceListener(event: "messageerror", listener: (error: Error) => void): this; prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; removeListener(event: "close", listener: () => void): this; removeListener(event: "message", listener: (value: any) => void): this; + removeListener(event: "messageerror", listener: (error: Error) => void): this; removeListener(event: string | symbol, listener: (...args: any[]) => void): this; off(event: "close", listener: () => void): this; off(event: "message", listener: (value: any) => void): this; + off(event: "messageerror", listener: (error: Error) => void): this; off(event: string | symbol, listener: (...args: any[]) => void): this; } @@ -74,14 +86,28 @@ declare module "worker_threads" { /** * Additional data to send in the first worker message. */ - transferList?: Array; + transferList?: TransferListItem[]; trackUnmanagedFds?: boolean; } interface ResourceLimits { + /** + * The maximum size of a heap space for recently created objects. + */ maxYoungGenerationSizeMb?: number; + /** + * The maximum size of the main heap in MB. + */ maxOldGenerationSizeMb?: number; + /** + * The size of a pre-allocated memory range used for generated code. + */ codeRangeSizeMb?: number; + /** + * The default maximum stack size for the thread. Small values may lead to unusable Worker instances. + * @default 4 + */ + stackSizeMb?: number; } class Worker extends EventEmitter { @@ -98,7 +124,7 @@ declare module "worker_threads" { */ constructor(filename: string | URL, options?: WorkerOptions); - postMessage(value: any, transferList?: Array): void; + postMessage(value: any, transferList?: TransferListItem[]): void; ref(): void; unref(): void; /** @@ -120,52 +146,72 @@ declare module "worker_threads" { addListener(event: "error", listener: (err: Error) => void): this; addListener(event: "exit", listener: (exitCode: number) => void): this; addListener(event: "message", listener: (value: any) => void): this; + addListener(event: "messageerror", listener: (error: Error) => void): this; addListener(event: "online", listener: () => void): this; addListener(event: string | symbol, listener: (...args: any[]) => void): this; emit(event: "error", err: Error): boolean; emit(event: "exit", exitCode: number): boolean; emit(event: "message", value: any): boolean; + emit(event: "messageerror", error: Error): boolean; emit(event: "online"): boolean; emit(event: string | symbol, ...args: any[]): boolean; on(event: "error", listener: (err: Error) => void): this; on(event: "exit", listener: (exitCode: number) => void): this; on(event: "message", listener: (value: any) => void): this; + on(event: "messageerror", listener: (error: Error) => void): this; on(event: "online", listener: () => void): this; on(event: string | symbol, listener: (...args: any[]) => void): this; once(event: "error", listener: (err: Error) => void): this; once(event: "exit", listener: (exitCode: number) => void): this; once(event: "message", listener: (value: any) => void): this; + once(event: "messageerror", listener: (error: Error) => void): this; once(event: "online", listener: () => void): this; once(event: string | symbol, listener: (...args: any[]) => void): this; prependListener(event: "error", listener: (err: Error) => void): this; prependListener(event: "exit", listener: (exitCode: number) => void): this; prependListener(event: "message", listener: (value: any) => void): this; + prependListener(event: "messageerror", listener: (error: Error) => void): this; prependListener(event: "online", listener: () => void): this; prependListener(event: string | symbol, listener: (...args: any[]) => void): this; prependOnceListener(event: "error", listener: (err: Error) => void): this; prependOnceListener(event: "exit", listener: (exitCode: number) => void): this; prependOnceListener(event: "message", listener: (value: any) => void): this; + prependOnceListener(event: "messageerror", listener: (error: Error) => void): this; prependOnceListener(event: "online", listener: () => void): this; prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; removeListener(event: "error", listener: (err: Error) => void): this; removeListener(event: "exit", listener: (exitCode: number) => void): this; removeListener(event: "message", listener: (value: any) => void): this; + removeListener(event: "messageerror", listener: (error: Error) => void): this; removeListener(event: "online", listener: () => void): this; removeListener(event: string | symbol, listener: (...args: any[]) => void): this; off(event: "error", listener: (err: Error) => void): this; off(event: "exit", listener: (exitCode: number) => void): this; off(event: "message", listener: (value: any) => void): this; + off(event: "messageerror", listener: (error: Error) => void): this; off(event: "online", listener: () => void): this; off(event: string | symbol, listener: (...args: any[]) => void): this; } + /** + * Mark an object as not transferable. + * If `object` occurs in the transfer list of a `port.postMessage()` call, it will be ignored. + * + * In particular, this makes sense for objects that can be cloned, rather than transferred, + * and which are used by other objects on the sending side. For example, Node.js marks + * the `ArrayBuffer`s it uses for its Buffer pool with this. + * + * This operation cannot be undone. + */ + function markAsUntransferable(object: object): void; + /** * Transfer a `MessagePort` to a different `vm` Context. The original `port` * object will be rendered unusable, and the returned `MessagePort` instance will diff --git a/node_modules/@types/node/zlib.d.ts b/node_modules/@types/node/zlib.d.ts index a03e900c..5ed1a0c8 100644 --- a/node_modules/@types/node/zlib.d.ts +++ b/node_modules/@types/node/zlib.d.ts @@ -19,6 +19,8 @@ declare module "zlib" { memLevel?: number; // compression only strategy?: number; // compression only dictionary?: NodeJS.ArrayBufferView | ArrayBuffer; // deflate/inflate only, empty dictionary by default + info?: boolean; + maxOutputLength?: number; } interface BrotliOptions { @@ -40,6 +42,7 @@ declare module "zlib" { */ [key: number]: boolean | number; }; + maxOutputLength?: number; } interface Zlib { @@ -111,6 +114,43 @@ declare module "zlib" { function unzip(buf: InputType, options: ZlibOptions, callback: CompressCallback): void; function unzipSync(buf: InputType, options?: ZlibOptions): Buffer; + namespace brotliCompress { + function __promisify__(buffer: InputType, options: BrotliOptions): Promise; + function __promisify__(buffer: InputType): Promise; + } + namespace brotliDecompress { + function __promisify__(buffer: InputType, options: BrotliOptions): Promise; + function __promisify__(buffer: InputType): Promise; + } + namespace deflate { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace deflateRaw { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace gzip { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace gunzip { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace inflate { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace inflateRaw { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace unzip { + function __promisify__(buffer: InputType): Promise; + function __promisify__(buffer: InputType, options: ZlibOptions): Promise; + } + namespace constants { const BROTLI_DECODE: number; const BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: number; diff --git a/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md b/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md index 09fdc418..eb0a0c0d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md +++ b/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md @@ -3,6 +3,638 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + + +### Bug Fixes + +* **eslint-plugin:** added safe getTypeOfPropertyOfType wrapper ([#2567](https://github.com/typescript-eslint/typescript-eslint/issues/2567)) ([7cba2de](https://github.com/typescript-eslint/typescript-eslint/commit/7cba2de138542563d678fbfc738cd1b3ebf01e07)) +* **experimental-utils:** treat RuleTester arrays as readonly ([#2601](https://github.com/typescript-eslint/typescript-eslint/issues/2601)) ([8025777](https://github.com/typescript-eslint/typescript-eslint/commit/80257776b78bd2b2b4389d6bd530b009a75fb520)) + + +### Features + +* **eslint-plugin:** [no-invalid-void-type] add option to allow `this: void` ([#2481](https://github.com/typescript-eslint/typescript-eslint/issues/2481)) ([ddf5660](https://github.com/typescript-eslint/typescript-eslint/commit/ddf5660846784003cab4b10ae7a5e510b9dd562b)) + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + + +### Bug Fixes + +* **eslint-plugin:** [naming-convention] ignore properties inside object patterns ([#2566](https://github.com/typescript-eslint/typescript-eslint/issues/2566)) ([53a3cbc](https://github.com/typescript-eslint/typescript-eslint/commit/53a3cbc6f002e55135efbdf4982a3ad308ac708b)) +* **eslint-plugin:** [prefer-ts-expect-error] support block comments ([#2541](https://github.com/typescript-eslint/typescript-eslint/issues/2541)) ([c6f72fb](https://github.com/typescript-eslint/typescript-eslint/commit/c6f72fbd3ccc19e39954cfe3d36d358ef43b7daa)) +* **scope-manager:** correct analysis of inferred types in conditional types ([#2537](https://github.com/typescript-eslint/typescript-eslint/issues/2537)) ([4f660fd](https://github.com/typescript-eslint/typescript-eslint/commit/4f660fd31acbb88b30719f925dcb2b3022cc2bab)) + + +### Features + +* **eslint-plugin:** add extension rule `comma-dangle` ([#2416](https://github.com/typescript-eslint/typescript-eslint/issues/2416)) ([f7babcf](https://github.com/typescript-eslint/typescript-eslint/commit/f7babcf4e6da3e5cba8f2c75d57abf8089432d05)) + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + + +### Bug Fixes + +* **eslint-plugin:** [naming-convention] allow an array of selectors with types and modifiers ([#2415](https://github.com/typescript-eslint/typescript-eslint/issues/2415)) ([7ca54c3](https://github.com/typescript-eslint/typescript-eslint/commit/7ca54c3e4601ad07db5b882a67965cd67a18c4b3)) +* **eslint-plugin:** [no-implied-eval] handle the `Function` type ([#2435](https://github.com/typescript-eslint/typescript-eslint/issues/2435)) ([e1401dc](https://github.com/typescript-eslint/typescript-eslint/commit/e1401dc5897d01da516802cfb2333cf4bc6d0e93)) +* **eslint-plugin:** [no-unused-vars] better handling for declared modules ([#2553](https://github.com/typescript-eslint/typescript-eslint/issues/2553)) ([02d72d4](https://github.com/typescript-eslint/typescript-eslint/commit/02d72d480be7a8f7ddc66a028338cfb996886f3c)), closes [#2523](https://github.com/typescript-eslint/typescript-eslint/issues/2523) +* **eslint-plugin:** [no-use-before-define] false positive for function type arguments ([#2554](https://github.com/typescript-eslint/typescript-eslint/issues/2554)) ([189162d](https://github.com/typescript-eslint/typescript-eslint/commit/189162d46ecb116c420232937a7f86df913f4e79)), closes [#2527](https://github.com/typescript-eslint/typescript-eslint/issues/2527) +* **eslint-plugin:** [prefer-function-type] handle `this` return ([#2437](https://github.com/typescript-eslint/typescript-eslint/issues/2437)) ([7c6fcee](https://github.com/typescript-eslint/typescript-eslint/commit/7c6fcee657dffd041e389e0aeaa4f3e278e92986)) +* **eslint-plugin:** [return-await] don't error for `in-try-catch` if the return is in a `catch` without a `finally` ([#2356](https://github.com/typescript-eslint/typescript-eslint/issues/2356)) ([efdd521](https://github.com/typescript-eslint/typescript-eslint/commit/efdd5213ceaef332cf0b2c26573176f844d22a09)) + + + + + +# [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) + + +### Bug Fixes + +* **eslint-plugin:** [explicit-module-boundary-types] cyclical reference infinite recursion crash ([#2482](https://github.com/typescript-eslint/typescript-eslint/issues/2482)) ([8693653](https://github.com/typescript-eslint/typescript-eslint/commit/86936537bd6f1075cbceeb8d2d4e254d75188409)) +* **eslint-plugin:** [no-unused-vars] correct detection of unused vars in a declared module with `export =` ([#2505](https://github.com/typescript-eslint/typescript-eslint/issues/2505)) ([3d07a99](https://github.com/typescript-eslint/typescript-eslint/commit/3d07a99faa0a5fc1b44acdb43ddbfc90a5105833)) +* **eslint-plugin:** [no-unused-vars] properly handle ambient declaration exports ([#2496](https://github.com/typescript-eslint/typescript-eslint/issues/2496)) ([4d3ce5f](https://github.com/typescript-eslint/typescript-eslint/commit/4d3ce5f696985389bf53a31d62766041c703c70c)) +* **eslint-plugin:** [no-use-before-define] false positive with jsx pragma reference ([#2503](https://github.com/typescript-eslint/typescript-eslint/issues/2503)) ([5afeeab](https://github.com/typescript-eslint/typescript-eslint/commit/5afeeab24ad013142f2431750f24e6085d0a6f3a)), closes [#2502](https://github.com/typescript-eslint/typescript-eslint/issues/2502) +* **eslint-plugin:** [typedef] false positive for rest parameter with array destructuring ([#2441](https://github.com/typescript-eslint/typescript-eslint/issues/2441)) ([2ada5af](https://github.com/typescript-eslint/typescript-eslint/commit/2ada5aff1ef37bc260d7a0eaafe9ff04f8a08fe4)) +* **eslint-plugin:** handle missing message IDs in eslint v5/v6 ([#2461](https://github.com/typescript-eslint/typescript-eslint/issues/2461)) ([ffdfade](https://github.com/typescript-eslint/typescript-eslint/commit/ffdfade106d602bcc12b074bdfa489e9f661491e)) +* **scope-manager:** add `const` as a global type variable ([#2499](https://github.com/typescript-eslint/typescript-eslint/issues/2499)) ([eb3f6e3](https://github.com/typescript-eslint/typescript-eslint/commit/eb3f6e39391d62ac424baa305a15e61806b2fd65)) +* **scope-manager:** correctly handle inferred types in nested type scopes ([#2497](https://github.com/typescript-eslint/typescript-eslint/issues/2497)) ([95f6bf4](https://github.com/typescript-eslint/typescript-eslint/commit/95f6bf4818cdec48a0583bf82f928c598af22736)) +* **scope-manager:** don't create references for intrinsic JSX elements ([#2504](https://github.com/typescript-eslint/typescript-eslint/issues/2504)) ([cdb9807](https://github.com/typescript-eslint/typescript-eslint/commit/cdb9807a5a368a136856cd03048b68e0f2dfb405)) +* **scope-manager:** support rest function type parameters ([#2491](https://github.com/typescript-eslint/typescript-eslint/issues/2491)) ([9d8b4c4](https://github.com/typescript-eslint/typescript-eslint/commit/9d8b4c479c98623e4198aa07639321929a8a876f)), closes [#2449](https://github.com/typescript-eslint/typescript-eslint/issues/2449) +* **scope-manager:** support tagged template string generic type parameters ([#2492](https://github.com/typescript-eslint/typescript-eslint/issues/2492)) ([a2686c0](https://github.com/typescript-eslint/typescript-eslint/commit/a2686c04293ab9070c1500a0dab7e205bd1fa9d2)) +* **scope-manager:** support type predicates ([#2493](https://github.com/typescript-eslint/typescript-eslint/issues/2493)) ([a40f54c](https://github.com/typescript-eslint/typescript-eslint/commit/a40f54c39d59096a0d12a492807dcd52fbcdc384)), closes [#2462](https://github.com/typescript-eslint/typescript-eslint/issues/2462) +* **scope-manager:** treat type imports as both values and types ([#2494](https://github.com/typescript-eslint/typescript-eslint/issues/2494)) ([916e95a](https://github.com/typescript-eslint/typescript-eslint/commit/916e95a505689746dda38a67148c95cc7d207d9f)), closes [#2453](https://github.com/typescript-eslint/typescript-eslint/issues/2453) + + +### Features + +* **eslint-plugin:** [no-shadow] add option `ignoreFunctionTypeParameterNameValueShadow` ([#2470](https://github.com/typescript-eslint/typescript-eslint/issues/2470)) ([bfe255f](https://github.com/typescript-eslint/typescript-eslint/commit/bfe255fde0cb5fe5e32c02eb5ba35d27fb23d9ea)) +* **eslint-plugin:** add extension rule `no-loop-func` ([#2490](https://github.com/typescript-eslint/typescript-eslint/issues/2490)) ([36305df](https://github.com/typescript-eslint/typescript-eslint/commit/36305df74b3c26b60364f7ec13390be492b4b2ec)) +* **scope-manager:** add support for JSX scope analysis ([#2498](https://github.com/typescript-eslint/typescript-eslint/issues/2498)) ([f887ab5](https://github.com/typescript-eslint/typescript-eslint/commit/f887ab51f58c1b3571f9a14832864bc0ca59623f)), closes [#2455](https://github.com/typescript-eslint/typescript-eslint/issues/2455) [#2477](https://github.com/typescript-eslint/typescript-eslint/issues/2477) + + + + + +## [4.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.0...v4.0.1) (2020-08-31) + + +### Bug Fixes + +* **eslint-plugin:** update parser dependency range ([#2445](https://github.com/typescript-eslint/typescript-eslint/issues/2445)) ([2cb6620](https://github.com/typescript-eslint/typescript-eslint/commit/2cb66205de797479d9b2d362652c42fe032e913b)), closes [#2444](https://github.com/typescript-eslint/typescript-eslint/issues/2444) + + + + + +# [4.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.1...v4.0.0) (2020-08-31) + +## [Please see the release notes for v4.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v4.0.0) + +### Bug Fixes + +* **eslint-plugin:** [no-shadow] fix false-positive on enum declaration ([#2374](https://github.com/typescript-eslint/typescript-eslint/issues/2374)) ([9de669f](https://github.com/typescript-eslint/typescript-eslint/commit/9de669f339fef62a98f745dc08b833aa5c632e62)) +* **eslint-plugin:** [no-unused-vars] handle TSCallSignature ([#2336](https://github.com/typescript-eslint/typescript-eslint/issues/2336)) ([c70f54f](https://github.com/typescript-eslint/typescript-eslint/commit/c70f54fd3a46a12060ae3aec0faae872c431dd88)) +* correct decorator traversal for AssignmentPattern ([#2375](https://github.com/typescript-eslint/typescript-eslint/issues/2375)) ([d738fa4](https://github.com/typescript-eslint/typescript-eslint/commit/d738fa4eff0a5c4cfc9b30b1c0502f8d1e78d7b6)) +* **scope-manager:** correct analysis of abstract class properties ([#2420](https://github.com/typescript-eslint/typescript-eslint/issues/2420)) ([cd84549](https://github.com/typescript-eslint/typescript-eslint/commit/cd84549beba3cf471d75cfd9ba26f80366842ed5)) +* **typescript-estree:** correct ChainExpression interaction with parentheses and non-nulls ([#2380](https://github.com/typescript-eslint/typescript-eslint/issues/2380)) ([762bc99](https://github.com/typescript-eslint/typescript-eslint/commit/762bc99584ede4d0b8099a743991e957aec86aa8)) + + +### Features + +* consume new scope analysis package ([#2039](https://github.com/typescript-eslint/typescript-eslint/issues/2039)) ([3be125d](https://github.com/typescript-eslint/typescript-eslint/commit/3be125d9bdbee1984ac6037874edf619213bd3d0)) +* support ESTree optional chaining representation ([#2308](https://github.com/typescript-eslint/typescript-eslint/issues/2308)) ([e9d2ab6](https://github.com/typescript-eslint/typescript-eslint/commit/e9d2ab638b6767700b52797e74b814ea059beaae)) +* **eslint-plugin:** [ban-ts-comment] change default for `ts-expect-error` to `allow-with-description` ([#2351](https://github.com/typescript-eslint/typescript-eslint/issues/2351)) ([a3f163a](https://github.com/typescript-eslint/typescript-eslint/commit/a3f163abc03f0fefc6dca1f205b728a4425209e4)), closes [#2146](https://github.com/typescript-eslint/typescript-eslint/issues/2146) +* **eslint-plugin:** [no-unnecessary-condition][strict-boolean-expressions] add option to make the rules error on files without `strictNullChecks` turned on ([#2345](https://github.com/typescript-eslint/typescript-eslint/issues/2345)) ([9273441](https://github.com/typescript-eslint/typescript-eslint/commit/9273441f7592b52620e10432cb2dd4dc5c3b4db1)) +* **eslint-plugin:** [typedef] remove all defaults ([#2352](https://github.com/typescript-eslint/typescript-eslint/issues/2352)) ([a9cd6fb](https://github.com/typescript-eslint/typescript-eslint/commit/a9cd6fb893074e4f2ca9ad3497eaddfacb3cfd25)) +* **eslint-plugin:** add `consistent-type-imports` rule ([#2367](https://github.com/typescript-eslint/typescript-eslint/issues/2367)) ([58b1c2d](https://github.com/typescript-eslint/typescript-eslint/commit/58b1c2d463f34895798b9a61340e49ffc3ec4f1a)) + + +### BREAKING CHANGES + +* - Removed decorators property from several Nodes that could never semantically have them (FunctionDeclaration, TSEnumDeclaration, and TSInterfaceDeclaration) +- Removed AST_NODE_TYPES.Import. This is a minor breaking change as the node type that used this was removed ages ago. +* **eslint-plugin:** Default rule options is a breaking change. + + + + + +## [3.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.0...v3.10.1) (2020-08-25) + + +### Bug Fixes + +* **eslint-plugin:** [no-unnecessary-condition] correct regression with unary negations ([#2422](https://github.com/typescript-eslint/typescript-eslint/issues/2422)) ([d1f0887](https://github.com/typescript-eslint/typescript-eslint/commit/d1f08879338c825a1a20406fe47c051a287d6519)), closes [#2421](https://github.com/typescript-eslint/typescript-eslint/issues/2421) + + + + + +# [3.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.1...v3.10.0) (2020-08-24) + + +### Bug Fixes + +* **eslint-plugin:** [explicit-module-boundary-types] ignore abstract setters ([#2410](https://github.com/typescript-eslint/typescript-eslint/issues/2410)) ([3764248](https://github.com/typescript-eslint/typescript-eslint/commit/3764248084455409f085c5bc4706079405cef618)) +* **eslint-plugin:** [explicit-module-boundary-types] ignore all bodyless setters ([#2413](https://github.com/typescript-eslint/typescript-eslint/issues/2413)) ([a53f8c6](https://github.com/typescript-eslint/typescript-eslint/commit/a53f8c6ff37aa47b3fc1b729e359d81ea079ff75)) +* **eslint-plugin:** [no-unnecessary-condition] better handling for unary negation ([#2382](https://github.com/typescript-eslint/typescript-eslint/issues/2382)) ([32fe2bb](https://github.com/typescript-eslint/typescript-eslint/commit/32fe2bb4fe5524355eef4f3a9bd85c824e9d7f46)) + + +### Features + +* **eslint-plugin:** add `no-implicit-any-catch` rule ([#2202](https://github.com/typescript-eslint/typescript-eslint/issues/2202)) ([fde89d4](https://github.com/typescript-eslint/typescript-eslint/commit/fde89d4d392ef35cac2bc09f2774bfe397b20100)) + + + + + +## [3.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.0...v3.9.1) (2020-08-17) + + +### Bug Fixes + +* **eslint-plugin:** [no-unnecessary-condition] fix false positive with nullish coalescing ([#2385](https://github.com/typescript-eslint/typescript-eslint/issues/2385)) ([092c969](https://github.com/typescript-eslint/typescript-eslint/commit/092c96967fd9b58fb2d8d325e1dbc750ccbeb746)) +* **eslint-plugin:** [prefer-includes] don't auto fix when `test` method's argument type doesn't have an 'includes' method ([#2391](https://github.com/typescript-eslint/typescript-eslint/issues/2391)) ([71c4c72](https://github.com/typescript-eslint/typescript-eslint/commit/71c4c729e90e308e0afd70af7db5e9d9ff238527)) + + + + + +# [3.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.8.0...v3.9.0) (2020-08-10) + + +### Bug Fixes + +* **eslint-plugin:** [no-throw-literal] support type assertions ([#2354](https://github.com/typescript-eslint/typescript-eslint/issues/2354)) ([470174a](https://github.com/typescript-eslint/typescript-eslint/commit/470174ad51fdb12d82129a896559075513f6c912)) + + +### Features + +* **eslint-plugin:** [no-unsafe-assignment/return] allow assigning any => unknown ([#2371](https://github.com/typescript-eslint/typescript-eslint/issues/2371)) ([e7528e6](https://github.com/typescript-eslint/typescript-eslint/commit/e7528e686f5fe5cce8504fc15d3cd06b8733712e)) +* **typescript-estree:** support TSv4 labelled tuple members ([#2378](https://github.com/typescript-eslint/typescript-eslint/issues/2378)) ([00d84ff](https://github.com/typescript-eslint/typescript-eslint/commit/00d84ffbcbe9d0ec98bdb2f2ce59959a27ce4dbe)) + + + + + +# [3.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.1...v3.8.0) (2020-08-03) + + +### Bug Fixes + +* **eslint-plugin:** [no-implied-eval] don't report when `Function` is imported ([#2348](https://github.com/typescript-eslint/typescript-eslint/issues/2348)) ([fa169e7](https://github.com/typescript-eslint/typescript-eslint/commit/fa169e79661821f0e0e64a56d6db9da42c3c8654)) +* **eslint-plugin:** [no-unsafe-assignment] fix typo in message ([#2347](https://github.com/typescript-eslint/typescript-eslint/issues/2347)) ([2027bb1](https://github.com/typescript-eslint/typescript-eslint/commit/2027bb11689b76c297f93ba8a918b35fe68e5b9d)) + + +### Features + +* **eslint-plugin:** [naming-convention] allow specifying an array of selectors ([#2335](https://github.com/typescript-eslint/typescript-eslint/issues/2335)) ([3ef6bd5](https://github.com/typescript-eslint/typescript-eslint/commit/3ef6bd5cadc225e42ef1330d15919a39f53f2a2b)) +* **eslint-plugin:** add `prefer-enum-initializers` rule ([#2326](https://github.com/typescript-eslint/typescript-eslint/issues/2326)) ([4f38ea3](https://github.com/typescript-eslint/typescript-eslint/commit/4f38ea39c97289db11501d6368d01db8c5787257)) + + + + + +## [3.7.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.0...v3.7.1) (2020-07-27) + + +### Bug Fixes + +* **eslint-plugin:** [adjacent-overload-signatures] fix false positive on call signatures and a method named `call` ([#2313](https://github.com/typescript-eslint/typescript-eslint/issues/2313)) ([30fafb0](https://github.com/typescript-eslint/typescript-eslint/commit/30fafb09422b3aca881f4785d89b0536092d4952)) +* **eslint-plugin:** [no-extra-parens] stop reporting on calling generic functions with one argument and type parameters containing parentheses ([#2319](https://github.com/typescript-eslint/typescript-eslint/issues/2319)) ([616a841](https://github.com/typescript-eslint/typescript-eslint/commit/616a841032bec310d9f31f1c987888273df27008)) + + + + + +# [3.7.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.1...v3.7.0) (2020-07-20) + + +### Features + +* **eslint-plugin:** [naming-convention] allow selecting only `const` variables ([#2291](https://github.com/typescript-eslint/typescript-eslint/issues/2291)) ([156d058](https://github.com/typescript-eslint/typescript-eslint/commit/156d058fee835fdf1ed827a5ad4a80d57190cc54)) +* **eslint-plugin:** [no-empty-function] add `decoratedFunctions` option ([#2295](https://github.com/typescript-eslint/typescript-eslint/issues/2295)) ([88f08f4](https://github.com/typescript-eslint/typescript-eslint/commit/88f08f410760f58fdc2de58ecd9dab9610821642)) + + + + + +## [3.6.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.0...v3.6.1) (2020-07-13) + + +### Bug Fixes + +* **eslint-plugin:** [no-unnecessary-condition] handle computed member access ([#2288](https://github.com/typescript-eslint/typescript-eslint/issues/2288)) ([3a187ca](https://github.com/typescript-eslint/typescript-eslint/commit/3a187cafb7302a3c05de0e6a236dd142a5e2d741)) +* **eslint-plugin:** [prefer-literal-enum-member] allow negative numbers ([#2277](https://github.com/typescript-eslint/typescript-eslint/issues/2277)) ([00ac9c3](https://github.com/typescript-eslint/typescript-eslint/commit/00ac9c3ccaad27bab08ec3c3a104f612bb593df5)) +* **eslint-plugin:** [space-before-function-paren] incorrect handling of abstract methods ([#2275](https://github.com/typescript-eslint/typescript-eslint/issues/2275)) ([ced6591](https://github.com/typescript-eslint/typescript-eslint/commit/ced65918b16f46c383496a9b4bd43eca8a76baf6)), closes [#2274](https://github.com/typescript-eslint/typescript-eslint/issues/2274) +* **eslint-plugin:** [switch-exhaustiveness-check] handle special characters in enum keys ([#2207](https://github.com/typescript-eslint/typescript-eslint/issues/2207)) ([98ab010](https://github.com/typescript-eslint/typescript-eslint/commit/98ab010fb7fca884984bb4200fd806ecee8071b6)) + + + + + +# [3.6.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.5.0...v3.6.0) (2020-07-06) + + +### Bug Fixes + +* **eslint-plugin:** [no-namespace] allow namespaces in nested declarations with `allowDeclarations` ([#2238](https://github.com/typescript-eslint/typescript-eslint/issues/2238)) ([c1df669](https://github.com/typescript-eslint/typescript-eslint/commit/c1df6694f7866d3ef7ede0b1c6c9dd6f3955e682)) +* **eslint-plugin:** [space-before-function-paren] handle abstract functions ([#2199](https://github.com/typescript-eslint/typescript-eslint/issues/2199)) ([88a3edf](https://github.com/typescript-eslint/typescript-eslint/commit/88a3edfce8349f871b7b660d2b76508b67c94eda)) + + +### Features + +* **eslint-plugin:** add rule `prefer-literal-enum-member` ([#1898](https://github.com/typescript-eslint/typescript-eslint/issues/1898)) ([fe2b2ec](https://github.com/typescript-eslint/typescript-eslint/commit/fe2b2ec39ef04ac8b73eef9d29d12fd1b24fa183)) + + + + + +# [3.5.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.4.0...v3.5.0) (2020-06-29) + + +### Bug Fixes + +* **eslint-plugin:** [naming-convention] support unicode in regex ([#2241](https://github.com/typescript-eslint/typescript-eslint/issues/2241)) ([5fdd21a](https://github.com/typescript-eslint/typescript-eslint/commit/5fdd21a1726fb6928098c4152aec55a30df960d4)) + + +### Features + +* add package scope-manager ([#1939](https://github.com/typescript-eslint/typescript-eslint/issues/1939)) ([682eb7e](https://github.com/typescript-eslint/typescript-eslint/commit/682eb7e009c3f22a542882dfd3602196a60d2a1e)) + + + + + +# [3.4.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.3.0...v3.4.0) (2020-06-22) + + +### Bug Fixes + +* **eslint-plugin:** [no-base-to-string] handle intersection types ([#2170](https://github.com/typescript-eslint/typescript-eslint/issues/2170)) ([9cca3a9](https://github.com/typescript-eslint/typescript-eslint/commit/9cca3a9584d5d5ef0536219c5a734f4e87efb543)) +* **eslint-plugin:** [unbound-method] handling destructuring ([#2228](https://github.com/typescript-eslint/typescript-eslint/issues/2228)) ([c3753c2](https://github.com/typescript-eslint/typescript-eslint/commit/c3753c21768d355ecdb9e7ae8e0bfdfbbc1d3bbe)) + + +### Features + +* **eslint-plugin:** [no-unnecessary-boolean-literal-compare] add option to check nullable booleans ([#1983](https://github.com/typescript-eslint/typescript-eslint/issues/1983)) ([c0b3057](https://github.com/typescript-eslint/typescript-eslint/commit/c0b3057b7f7d515891ad2efe32e4ef8c01e0478f)) +* **eslint-plugin:** add extension rule `no-loss-of-precision` ([#2196](https://github.com/typescript-eslint/typescript-eslint/issues/2196)) ([535b0f2](https://github.com/typescript-eslint/typescript-eslint/commit/535b0f2ddd82efa6a2c40307a61c480f4b3cdea3)) + + + + + +# [3.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.2.0...v3.3.0) (2020-06-15) + + +### Bug Fixes + +* **eslint-plugin:** [no-unused-expressions] handle ternary and short-circuit options ([#2194](https://github.com/typescript-eslint/typescript-eslint/issues/2194)) ([ee9f100](https://github.com/typescript-eslint/typescript-eslint/commit/ee9f100a2f9a874c2b361482742686eeaa9bdac7)) + + +### Features + +* **eslint-plugin:** [naming-convention] better error message and docs for prefix/suffix ([#2195](https://github.com/typescript-eslint/typescript-eslint/issues/2195)) ([a2ffe55](https://github.com/typescript-eslint/typescript-eslint/commit/a2ffe5568df0f7224bfe9141d298e538383d5f09)) + + + + + +# [3.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.1.0...v3.2.0) (2020-06-08) + + +### Bug Fixes + +* **eslint-plugin:** [explicit-module-boundary-types] dont report return type errors on constructor overloads ([#2158](https://github.com/typescript-eslint/typescript-eslint/issues/2158)) ([53232d7](https://github.com/typescript-eslint/typescript-eslint/commit/53232d775ca0b808e2d75d9501f4411a868b2b48)) +* **eslint-plugin:** [explicit-module-boundary-types] handle bodyless arrow functions with explicit return types that return functions ([#2169](https://github.com/typescript-eslint/typescript-eslint/issues/2169)) ([58db655](https://github.com/typescript-eslint/typescript-eslint/commit/58db655133aaae006efe3e3ceee971cf88dc348f)) +* **eslint-plugin:** [explicit-module-boundary-types] handle nested functions and functions expressions in a typed variable declaration ([#2176](https://github.com/typescript-eslint/typescript-eslint/issues/2176)) ([6ff450d](https://github.com/typescript-eslint/typescript-eslint/commit/6ff450da3abec93223a33f6b52484c9ca99b7abe)) +* **eslint-plugin:** [no-extra-non-null-assertion] dont report for assertions not followed by the optional chain ([#2167](https://github.com/typescript-eslint/typescript-eslint/issues/2167)) ([e4c1834](https://github.com/typescript-eslint/typescript-eslint/commit/e4c1834c7c5934332dd1d58c09018453568c4889)) +* **eslint-plugin:** [no-unnecessary-conditionals] Handle comparison of generics and loose comparisons with undefined values ([#2152](https://github.com/typescript-eslint/typescript-eslint/issues/2152)) ([c86e2a2](https://github.com/typescript-eslint/typescript-eslint/commit/c86e2a235372149db9b1700d39c2145e0ce5221a)) +* **eslint-plugin:** [prefer-optional-chain] handling first member expression ([#2156](https://github.com/typescript-eslint/typescript-eslint/issues/2156)) ([de18660](https://github.com/typescript-eslint/typescript-eslint/commit/de18660a8cf8f7033798646d8c5b0938d1accb12)) +* **eslint-plugin:** [return-await] correct handling of ternaries ([#2168](https://github.com/typescript-eslint/typescript-eslint/issues/2168)) ([fe4c0bf](https://github.com/typescript-eslint/typescript-eslint/commit/fe4c0bf8c04f070d6642fbe86c5e5614bc88e8fd)) + + +### Features + +* **eslint-plugin:** [naming-convention] put identifiers in quotes in error messages ([#2182](https://github.com/typescript-eslint/typescript-eslint/issues/2182)) ([fc61932](https://github.com/typescript-eslint/typescript-eslint/commit/fc619326eedf7ef2efa51444ecdead81a36a204f)), closes [#2178](https://github.com/typescript-eslint/typescript-eslint/issues/2178) +* **eslint-plugin:** [require-array-sort-compare] add `ignoreStringArrays` option ([#1972](https://github.com/typescript-eslint/typescript-eslint/issues/1972)) ([6dee784](https://github.com/typescript-eslint/typescript-eslint/commit/6dee7840a3af1dfe4c38a128d1c4655bdac625df)) +* **eslint-plugin:** add rule `ban-tslint-comment` ([#2140](https://github.com/typescript-eslint/typescript-eslint/issues/2140)) ([43ee226](https://github.com/typescript-eslint/typescript-eslint/commit/43ee226ffbaaa3e7126081db9476c24b89ec16e9)) +* **eslint-plugin:** add rule `no-confusing-non-null-assertion` ([#1941](https://github.com/typescript-eslint/typescript-eslint/issues/1941)) ([9b51c44](https://github.com/typescript-eslint/typescript-eslint/commit/9b51c44f29d8b3e95a510985544e8ded8a14404d)) + + + + + +# [3.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.2...v3.1.0) (2020-06-01) + + +### Bug Fixes + +* **eslint-plugin:** [explicit-module-boundary-types] don't check returned functions if parent function has return type ([#2084](https://github.com/typescript-eslint/typescript-eslint/issues/2084)) ([d7d4eeb](https://github.com/typescript-eslint/typescript-eslint/commit/d7d4eeb03f2918d5d9e361fdb47c2d42e83bd593)) +* **eslint-plugin:** [no-unnecessary-condition] handle comparison of any, unknown and loose comparisons with nullish values ([#2123](https://github.com/typescript-eslint/typescript-eslint/issues/2123)) ([1ae1d01](https://github.com/typescript-eslint/typescript-eslint/commit/1ae1d01e5603ec7cef8051ed018c3c3c88b29867)) +* **eslint-plugin:** [no-unnecessary-condition] improve optional chain handling ([#2111](https://github.com/typescript-eslint/typescript-eslint/issues/2111)) ([9ee399b](https://github.com/typescript-eslint/typescript-eslint/commit/9ee399b5906e82f346ff89141207a6630786de54)) +* **eslint-plugin:** [no-unnecessary-condition] improve optional chain handling 2 - electric boogaloo ([#2138](https://github.com/typescript-eslint/typescript-eslint/issues/2138)) ([c87cfaf](https://github.com/typescript-eslint/typescript-eslint/commit/c87cfaf6746775bb8ad9eb45b0002f068a822dbe)) +* **eslint-plugin:** [no-unused-expressions] ignore import expressions ([#2130](https://github.com/typescript-eslint/typescript-eslint/issues/2130)) ([e383691](https://github.com/typescript-eslint/typescript-eslint/commit/e3836910efdafd9edf04daed149c9e839c08047e)) +* **eslint-plugin:** [no-var-requires] false negative for TSAsExpression and MemberExpression ([#2139](https://github.com/typescript-eslint/typescript-eslint/issues/2139)) ([df95338](https://github.com/typescript-eslint/typescript-eslint/commit/df953388913b22d45242e65ce231d92a8b8a0080)) +* **experimental-utils:** downlevel type declarations for versions older than 3.8 ([#2133](https://github.com/typescript-eslint/typescript-eslint/issues/2133)) ([7925823](https://github.com/typescript-eslint/typescript-eslint/commit/792582326a8065270b69a0ffcaad5a7b4b103ff3)) + + +### Features + +* **eslint-plugin:** [ban-ts-comments] add "allow-with-description" option ([#2099](https://github.com/typescript-eslint/typescript-eslint/issues/2099)) ([8a0fd18](https://github.com/typescript-eslint/typescript-eslint/commit/8a0fd1899f544470a35afb3117f4c71aad7e4e42)) +* **eslint-plugin:** [ban-types] allow selective disable of default options with `false` value ([#2137](https://github.com/typescript-eslint/typescript-eslint/issues/2137)) ([1cb8ca4](https://github.com/typescript-eslint/typescript-eslint/commit/1cb8ca483d029935310e6904580df8501837084d)) +* **eslint-plugin:** [explicit-module-boundary-types] improve accuracy and coverage ([#2135](https://github.com/typescript-eslint/typescript-eslint/issues/2135)) ([caaa859](https://github.com/typescript-eslint/typescript-eslint/commit/caaa8599284d02ab3341e282cad35a52d0fb86c7)) + + + + + +## [3.0.2](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.1...v3.0.2) (2020-05-27) + +**Note:** Version bump only for package @typescript-eslint/eslint-plugin + + + + + +## [3.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.0...v3.0.1) (2020-05-25) + + +### Bug Fixes + +* **eslint-plugin:** [naming-convention] handle no options correctly ([#2095](https://github.com/typescript-eslint/typescript-eslint/issues/2095)) ([fd7d02b](https://github.com/typescript-eslint/typescript-eslint/commit/fd7d02b31ebd995b7fdd857d7c054042aa4f2001)) +* **eslint-plugin:** [no-throw-literal] handle intersection and union types ([#2085](https://github.com/typescript-eslint/typescript-eslint/issues/2085)) ([cae037f](https://github.com/typescript-eslint/typescript-eslint/commit/cae037ff9b20363b970cc600a09505b98bf10a14)) +* **eslint-plugin:** [unbound-method] fix crash due to missing `Intl` ([#2090](https://github.com/typescript-eslint/typescript-eslint/issues/2090)) ([f2fa82c](https://github.com/typescript-eslint/typescript-eslint/commit/f2fa82c532ae858ccfb064268cfcc9df657a54be)) + + + + + +# [3.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.34.0...v3.0.0) (2020-05-21) + +## [Please see the release notes for v3.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v3.0.0) + +### Bug Fixes + +* **eslint-plugin:** [dot-notation] fix typo in schema ([#2040](https://github.com/typescript-eslint/typescript-eslint/issues/2040)) ([242328f](https://github.com/typescript-eslint/typescript-eslint/commit/242328fa749ee4c72af93433a9bef95f329ac62f)) +* **eslint-plugin:** correct parser peerDep version ([fe59f69](https://github.com/typescript-eslint/typescript-eslint/commit/fe59f69381a0915a4f5135e2e88637a5eea246ba)) +* **experimental-utils:** add back SourceCode.isSpaceBetweenTokens ([ae82ea4](https://github.com/typescript-eslint/typescript-eslint/commit/ae82ea4a85a4ca332ebe6104e96c59dba30411be)) +* **typescript-estree:** remove now defunct `Import` node type ([f199cbd](https://github.com/typescript-eslint/typescript-eslint/commit/f199cbdbbd892b5ba03bfff66f463f3d9c92ee9b)) +* **typescript-estree:** use `TSEmptyBodyFunctionExpression` for body-less nodes ([#1289](https://github.com/typescript-eslint/typescript-eslint/issues/1289)) ([82e7163](https://github.com/typescript-eslint/typescript-eslint/commit/82e7163214b56ccde93ba97807b161669a50a60b)) + + +### Features + +* **eslint-plugin:** [ban-types] rework default options ([#848](https://github.com/typescript-eslint/typescript-eslint/issues/848)) ([8e31d5d](https://github.com/typescript-eslint/typescript-eslint/commit/8e31d5dbe9fe5227fdbefcecfd50ce5dd51360c3)) +* **eslint-plugin:** [no-floating-promises] ignore void operator by default ([#2003](https://github.com/typescript-eslint/typescript-eslint/issues/2003)) ([3626a67](https://github.com/typescript-eslint/typescript-eslint/commit/3626a673cf8117cc995245cd86e466e2553e9b0e)) +* **eslint-plugin:** [prefer-nullish-coalescing][prefer-optional-chain] remove unsafe fixers ([52b6085](https://github.com/typescript-eslint/typescript-eslint/commit/52b60852d0ba6bb6abe519c9d3ec1b231793e91d)) +* **experimental-utils:** upgrade eslint types for v7 ([#2023](https://github.com/typescript-eslint/typescript-eslint/issues/2023)) ([06869c9](https://github.com/typescript-eslint/typescript-eslint/commit/06869c9656fa37936126666845aee40aad546ebd)) +* upgrade to ESLint v7 ([#2022](https://github.com/typescript-eslint/typescript-eslint/issues/2022)) ([208de71](https://github.com/typescript-eslint/typescript-eslint/commit/208de71059746bf38e94bd460346ffb2698a3e12)) +* **eslint-plugin:** [no-unnecessary-condition] remove `checkArrayPredicates` and always check it ([#1579](https://github.com/typescript-eslint/typescript-eslint/issues/1579)) ([bfd9b60](https://github.com/typescript-eslint/typescript-eslint/commit/bfd9b606d17d30d5694967a1f01e0e1501ba1022)) +* **eslint-plugin:** [no-unnecessary-condition] remove option `ignoreRHS` ([#1163](https://github.com/typescript-eslint/typescript-eslint/issues/1163)) ([ee8dd8f](https://github.com/typescript-eslint/typescript-eslint/commit/ee8dd8f8a9e6c25ac426ce9bb71c5f012c51f264)) +* **eslint-plugin:** [no-unnecessary-condition] report when non-nullish is compared to `null`/`undefined` ([#1659](https://github.com/typescript-eslint/typescript-eslint/issues/1659)) ([7fa9060](https://github.com/typescript-eslint/typescript-eslint/commit/7fa906073903c5eb70609c25f1a91ada14dcdc71)) +* **eslint-plugin:** [restrict-template-expressions] `allowNumber: true` by default ([#2005](https://github.com/typescript-eslint/typescript-eslint/issues/2005)) ([643ec24](https://github.com/typescript-eslint/typescript-eslint/commit/643ec240bd901295d9e9ea5c43fc20109c33e982)) +* **eslint-plugin:** [restrict-template-expressions] rename `allowNullable` to `allowNullish` ([#2006](https://github.com/typescript-eslint/typescript-eslint/issues/2006)) ([264b017](https://github.com/typescript-eslint/typescript-eslint/commit/264b017c11c2ab132fcbad18b42a9a0fe639386e)) +* **eslint-plugin:** [strict-boolean-expression] rework options ([#1631](https://github.com/typescript-eslint/typescript-eslint/issues/1631)) ([cd14482](https://github.com/typescript-eslint/typescript-eslint/commit/cd1448240dca11762fcb9c10e18bb6541a840485)) +* **eslint-plugin:** delete deprecated rules ([#2002](https://github.com/typescript-eslint/typescript-eslint/issues/2002)) ([da0aec2](https://github.com/typescript-eslint/typescript-eslint/commit/da0aec2cfa27902aae7c438a2fe91343c822e4ae)) +* **eslint-plugin:** eslint-recommended: disable no-func-assign ([#984](https://github.com/typescript-eslint/typescript-eslint/issues/984)) ([ae9b8a9](https://github.com/typescript-eslint/typescript-eslint/commit/ae9b8a9c73c0328287de956466257d8bbfbdb20f)) +* **eslint-plugin:** eslint-recommended: disable no-obj-calls ([#1000](https://github.com/typescript-eslint/typescript-eslint/issues/1000)) ([b9ca14c](https://github.com/typescript-eslint/typescript-eslint/commit/b9ca14c5f5ec28a3fde1a9b2d2f6a4dc74d903e4)) +* **eslint-plugin:** update `eslint-recommended` set ([#1996](https://github.com/typescript-eslint/typescript-eslint/issues/1996)) ([9a96e18](https://github.com/typescript-eslint/typescript-eslint/commit/9a96e18400e0a0d738d159d9d01faf41d3586249)) +* **eslint-plugin:** update recommended sets ([#2001](https://github.com/typescript-eslint/typescript-eslint/issues/2001)) ([0126b4f](https://github.com/typescript-eslint/typescript-eslint/commit/0126b4f56f9197d561e90b09962ccceb4f88bc41)) +* **typescript-estree:** align nodes with estree 2020 ([#1389](https://github.com/typescript-eslint/typescript-eslint/issues/1389)) ([aff5b62](https://github.com/typescript-eslint/typescript-eslint/commit/aff5b62044f9b93f2087a1d261e9be3f8d6fd54d)) +* drop support for node v8 ([#1997](https://github.com/typescript-eslint/typescript-eslint/issues/1997)) ([b6c3b7b](https://github.com/typescript-eslint/typescript-eslint/commit/b6c3b7b84b8d199fa75a46432febd4a364a63217)) +* **typescript-estree:** always return parserServices ([#716](https://github.com/typescript-eslint/typescript-eslint/issues/716)) ([5b23443](https://github.com/typescript-eslint/typescript-eslint/commit/5b23443c48f3f62424db3e742243f3568080b946)) +* **typescript-estree:** handle 3.9's non-null assertion changes ([#2036](https://github.com/typescript-eslint/typescript-eslint/issues/2036)) ([06bec63](https://github.com/typescript-eslint/typescript-eslint/commit/06bec63c56536db070608ab136d2ad57083f0c6a)) + + + + + +# [2.34.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.33.0...v2.34.0) (2020-05-18) + + +### Features + +* **eslint-plugin:** [no-invalid-void-type] allow union of void and `allowInGenericTypeArguments` ([#1960](https://github.com/typescript-eslint/typescript-eslint/issues/1960)) ([1bc105a](https://github.com/typescript-eslint/typescript-eslint/commit/1bc105a2c6ae3fde9596f0419fed0de699dc57c7)) +* **eslint-plugin:** [restrict-template-expressions] improve error message ([#1926](https://github.com/typescript-eslint/typescript-eslint/issues/1926)) ([1af59ba](https://github.com/typescript-eslint/typescript-eslint/commit/1af59ba8ac0ceabb008d9c61556acf7db0a1d352)) +* **experimental-utils:** add `suggestion` property for rule modules ([#2033](https://github.com/typescript-eslint/typescript-eslint/issues/2033)) ([f42a5b0](https://github.com/typescript-eslint/typescript-eslint/commit/f42a5b09ebfa173f418a99c552b0cbe221567194)) + + + + + +# [2.33.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.32.0...v2.33.0) (2020-05-12) + + +### Features + +* **eslint-plugin:** add extension rule `lines-between-class-members` ([#1684](https://github.com/typescript-eslint/typescript-eslint/issues/1684)) ([08f93e6](https://github.com/typescript-eslint/typescript-eslint/commit/08f93e69347a8e7f3a7e8a1455bb5d069c2faeef)) + + + + + +# [2.32.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.31.0...v2.32.0) (2020-05-11) + + +### Bug Fixes + +* **eslint-plugin:** [no-base-to-string] support boolean in unions ([#1979](https://github.com/typescript-eslint/typescript-eslint/issues/1979)) ([6987ecc](https://github.com/typescript-eslint/typescript-eslint/commit/6987ecc1dacfb45c0f8ed3e81d08aa708eb96ad1)) +* **eslint-plugin:** [no-type-alias] handle readonly types in aliases ([#1990](https://github.com/typescript-eslint/typescript-eslint/issues/1990)) ([56d9870](https://github.com/typescript-eslint/typescript-eslint/commit/56d987070f83d1b6410b04750b20a761fd793073)) +* **eslint-plugin:** [no-unused-expressions] inherit `messages` from base rule ([#1992](https://github.com/typescript-eslint/typescript-eslint/issues/1992)) ([51ca404](https://github.com/typescript-eslint/typescript-eslint/commit/51ca404af645eed194269ab7f8f67b97bd52e32d)) + + +### Features + +* bump dependencies and align AST ([#2007](https://github.com/typescript-eslint/typescript-eslint/issues/2007)) ([18668b7](https://github.com/typescript-eslint/typescript-eslint/commit/18668b78fd7d1e5281af7fc26c76e0ca53297f69)) + + + + + +# [2.31.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.30.0...v2.31.0) (2020-05-04) + + +### Bug Fixes + +* **eslint-plugin:** [dot-notation] handle missing declarations ([#1947](https://github.com/typescript-eslint/typescript-eslint/issues/1947)) ([383f931](https://github.com/typescript-eslint/typescript-eslint/commit/383f93182599c00e231a0f0d36575ca0e19369a6)) +* **eslint-plugin:** [method-signature-style] fix overloaded methods to an intersection type ([#1966](https://github.com/typescript-eslint/typescript-eslint/issues/1966)) ([7f3fba3](https://github.com/typescript-eslint/typescript-eslint/commit/7f3fba348d432d7637e1c737df943ee1f9105062)) +* **eslint-plugin:** [return-await] await in a normal function ([#1962](https://github.com/typescript-eslint/typescript-eslint/issues/1962)) ([f82fd7b](https://github.com/typescript-eslint/typescript-eslint/commit/f82fd7bb81f986c4861d0b4e2ecdb0c496d7a602)) +* **eslint-plugin:** [unbound-method] false positives for unary expressions ([#1964](https://github.com/typescript-eslint/typescript-eslint/issues/1964)) ([b35070e](https://github.com/typescript-eslint/typescript-eslint/commit/b35070ec6f84ad5ce606386cdb6eeb91488dfdd7)) +* **eslint-plugin:** no-base-to-string boolean expression detect ([#1969](https://github.com/typescript-eslint/typescript-eslint/issues/1969)) ([f78f13a](https://github.com/typescript-eslint/typescript-eslint/commit/f78f13aedd59d5b5880903d48c779a6c50fd937e)) + + +### Features + +* **eslint-plugin:** [member-ordering] add decorators support ([#1870](https://github.com/typescript-eslint/typescript-eslint/issues/1870)) ([f7ec192](https://github.com/typescript-eslint/typescript-eslint/commit/f7ec1920607cb8eec8020b08cd7247de0bf19ce1)) +* **eslint-plugin:** [prefer-optional-chain] added option to convert to suggestion fixer ([#1965](https://github.com/typescript-eslint/typescript-eslint/issues/1965)) ([2f0824b](https://github.com/typescript-eslint/typescript-eslint/commit/2f0824b0a41f3043b6242fc1d49faae540abaf22)) +* **eslint-plugin:** new extended rule 'no-invalid-this' ([#1823](https://github.com/typescript-eslint/typescript-eslint/issues/1823)) ([b18bc35](https://github.com/typescript-eslint/typescript-eslint/commit/b18bc357507337b9725f8d9c1b549513075a0da5)) +* **experimental-utils:** expose our RuleTester extension ([#1948](https://github.com/typescript-eslint/typescript-eslint/issues/1948)) ([2dd1638](https://github.com/typescript-eslint/typescript-eslint/commit/2dd1638aaa2658ba99b2341861146b586f489121)) + + + + + +# [2.30.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.29.0...v2.30.0) (2020-04-27) + + +### Bug Fixes + +* **eslint-plugin:** [prefer-string-starts-ends-with] check for negative start index in slice ([#1920](https://github.com/typescript-eslint/typescript-eslint/issues/1920)) ([ed2bd60](https://github.com/typescript-eslint/typescript-eslint/commit/ed2bd6067f74ae33e36a084719bb91efedfba599)) +* **eslint-plugin:** fix no-base-to-string boolean literal check ([#1850](https://github.com/typescript-eslint/typescript-eslint/issues/1850)) ([2f45e99](https://github.com/typescript-eslint/typescript-eslint/commit/2f45e9992a8f12b6233716e77a6159f9cea2c879)) + + +### Features + +* **eslint-plugin:** add extension rule `dot-notation` ([#1867](https://github.com/typescript-eslint/typescript-eslint/issues/1867)) ([a85c3e1](https://github.com/typescript-eslint/typescript-eslint/commit/a85c3e1515d735b6c245cc658cdaec6deb05d630)) +* **eslint-plugin:** create `no-invalid-void-type` rule ([#1847](https://github.com/typescript-eslint/typescript-eslint/issues/1847)) ([f667ff1](https://github.com/typescript-eslint/typescript-eslint/commit/f667ff1708d4ed28b7ea5beea742889da69a76d9)) + + + + + +# [2.29.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.28.0...v2.29.0) (2020-04-20) + + +### Bug Fixes + +* **eslint-plugin:** [no-base-to-string] soft remove `ignoreTaggedTemplateExpressions` option ([#1916](https://github.com/typescript-eslint/typescript-eslint/issues/1916)) ([369978e](https://github.com/typescript-eslint/typescript-eslint/commit/369978e9685bacb3e3882b0510ff06eaf8df4ca1)) + + +### Features + +* **eslint-plugin:** [no-floating-promise] add option to ignore IIFEs ([#1799](https://github.com/typescript-eslint/typescript-eslint/issues/1799)) ([cea51bf](https://github.com/typescript-eslint/typescript-eslint/commit/cea51bf130d6d3c2935f5e2dcc468196f2ad9d00)) +* **eslint-plugin:** [restrict-template-expressions] add support for intersection types ([#1803](https://github.com/typescript-eslint/typescript-eslint/issues/1803)) ([cc70e4f](https://github.com/typescript-eslint/typescript-eslint/commit/cc70e4fbadd0b15fd6af913a2e1e2ddd346fa558)) +* **eslint-plugin:** add extension rule `init-declarations` ([#1814](https://github.com/typescript-eslint/typescript-eslint/issues/1814)) ([b01f5e7](https://github.com/typescript-eslint/typescript-eslint/commit/b01f5e778ac28e0797a3734fc58d025bb224f418)) +* **eslint-plugin:** add extension rule `keyword-spacing` ([#1739](https://github.com/typescript-eslint/typescript-eslint/issues/1739)) ([c5106dd](https://github.com/typescript-eslint/typescript-eslint/commit/c5106dd4bf2bc8846cc39aa8bb50c33bec026d4d)) + + + + + +# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13) + + +### Bug Fixes + +* **eslint-plugin:** [method-signature-style] handle multiline params ([#1861](https://github.com/typescript-eslint/typescript-eslint/issues/1861)) ([5832a86](https://github.com/typescript-eslint/typescript-eslint/commit/5832a8643bbe174ec02df5966bb333e506e45f5d)) +* **eslint-plugin:** [no-empty-interface] use suggestion fixer for ambient contexts ([#1880](https://github.com/typescript-eslint/typescript-eslint/issues/1880)) ([62b2278](https://github.com/typescript-eslint/typescript-eslint/commit/62b2278aec0011c93eae17bed8b278114d3379a2)) +* **eslint-plugin:** [unbound-method] false positive on property function initializer ([#1890](https://github.com/typescript-eslint/typescript-eslint/issues/1890)) ([f1c3b18](https://github.com/typescript-eslint/typescript-eslint/commit/f1c3b18f7aadc81f7dca7aa32aa1a8fe424e04e7)) +* **eslint-plugin:** [unbound-method] ignore assignments _to_ methods ([#1736](https://github.com/typescript-eslint/typescript-eslint/issues/1736)) ([6b4680b](https://github.com/typescript-eslint/typescript-eslint/commit/6b4680b6e7343d9d98fa1de170f387a36d98b73e)) +* **eslint-plugin:** no-empty-interface autofix ([#1865](https://github.com/typescript-eslint/typescript-eslint/issues/1865)) ([829a2f7](https://github.com/typescript-eslint/typescript-eslint/commit/829a2f728f876d356908e2338c2d6620e58f9943)), closes [#1864](https://github.com/typescript-eslint/typescript-eslint/issues/1864) +* **eslint-plugin:** use `isTypeArrayTypeOrUnionOfArrayTypes` util for checking if type is array ([#1728](https://github.com/typescript-eslint/typescript-eslint/issues/1728)) ([05030f8](https://github.com/typescript-eslint/typescript-eslint/commit/05030f8d2bd5a50e95053bc61380891da71cc567)) + + +### Features + +* **eslint-plugin:** [ban-ts-comment] support `ts-expect-error` ([#1706](https://github.com/typescript-eslint/typescript-eslint/issues/1706)) ([469cff3](https://github.com/typescript-eslint/typescript-eslint/commit/469cff332c041f38f60de052769287342455cff1)) +* **eslint-plugin:** [consistent-type-assertions] always allow `const` assertions ([#1713](https://github.com/typescript-eslint/typescript-eslint/issues/1713)) ([af2c00d](https://github.com/typescript-eslint/typescript-eslint/commit/af2c00de62f7e31eaeb88996ebf3f330cc8473b9)) +* **eslint-plugin:** [explicit-function-return-type] add option to allow concise arrows that start with void ([#1732](https://github.com/typescript-eslint/typescript-eslint/issues/1732)) ([2e9c202](https://github.com/typescript-eslint/typescript-eslint/commit/2e9c2028a8a0b226e0f87d4bcc997fa259ca3ebd)) +* **eslint-plugin:** [explicit-module-boundary-types] add optio… ([#1778](https://github.com/typescript-eslint/typescript-eslint/issues/1778)) ([3eee804](https://github.com/typescript-eslint/typescript-eslint/commit/3eee804461d017ea6189cd7f64fcd473623684b4)) +* **eslint-plugin:** [no-base-to-string] add option to ignore tagged templates ([#1763](https://github.com/typescript-eslint/typescript-eslint/issues/1763)) ([f5edb99](https://github.com/typescript-eslint/typescript-eslint/commit/f5edb9938c33f8b68f026eba00db3abe9359ced3)) +* **eslint-plugin:** [restrict-template-expressions] add option `allowAny` ([#1762](https://github.com/typescript-eslint/typescript-eslint/issues/1762)) ([d44c0f9](https://github.com/typescript-eslint/typescript-eslint/commit/d44c0f9bed2404ca00b020b35fd825929e213398)) +* **eslint-plugin:** add rule `prefer-reduce-type-parameter` ([#1707](https://github.com/typescript-eslint/typescript-eslint/issues/1707)) ([c92d240](https://github.com/typescript-eslint/typescript-eslint/commit/c92d240e49113779053eac32038382b282812afc)) +* **eslint-plugin:** add rule `prefer-ts-expect-error` ([#1705](https://github.com/typescript-eslint/typescript-eslint/issues/1705)) ([7021f21](https://github.com/typescript-eslint/typescript-eslint/commit/7021f2151a25db2a8edf17e06cd6f21e90761ec8)) +* **eslint-plugin:** add rule no-unsafe-assignment ([#1694](https://github.com/typescript-eslint/typescript-eslint/issues/1694)) ([a49b860](https://github.com/typescript-eslint/typescript-eslint/commit/a49b860cbbb2c7d718b99f561e2fb6eaadf16f17)) + + + + + +# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06) + + +### Bug Fixes + +* **eslint-plugin:** [no-throw-literal] fix crash caused by getBaseTypes ([#1830](https://github.com/typescript-eslint/typescript-eslint/issues/1830)) ([9d53c76](https://github.com/typescript-eslint/typescript-eslint/commit/9d53c761983dd964109b9f13eb9bfe20caf9defb)) +* **eslint-plugin:** [no-unsafe-call] fix incorrect selector ([#1826](https://github.com/typescript-eslint/typescript-eslint/issues/1826)) ([8ec53a3](https://github.com/typescript-eslint/typescript-eslint/commit/8ec53a3579fcb59cdffea0c60fbb755d056f4c8a)) +* **eslint-plugin:** [require-await] handle async generators ([#1782](https://github.com/typescript-eslint/typescript-eslint/issues/1782)) ([9642d9d](https://github.com/typescript-eslint/typescript-eslint/commit/9642d9dce693befac89a4e9d8bf8dd18f4361e2a)) +* **eslint-plugin:** no-explicit-any constructor functions (& mo… ([#1711](https://github.com/typescript-eslint/typescript-eslint/issues/1711)) ([ab8572e](https://github.com/typescript-eslint/typescript-eslint/commit/ab8572e30e14ebda91c8437be5ee35e7dc9add2e)) + + +### Features + +* **eslint-plugin:** new rule method-signature-style ([#1685](https://github.com/typescript-eslint/typescript-eslint/issues/1685)) ([c49d771](https://github.com/typescript-eslint/typescript-eslint/commit/c49d771ba62f1a21d3c1aec106341daddfcd3c9a)) +* **eslint-plugin:** sort members alphabetically ([#263](https://github.com/typescript-eslint/typescript-eslint/issues/263)) ([485e902](https://github.com/typescript-eslint/typescript-eslint/commit/485e90213a0f8baac0587f7d56925448883fc5bd)) +* **eslint-plugin-internal:** add plugin-test-formatting rule ([#1821](https://github.com/typescript-eslint/typescript-eslint/issues/1821)) ([9b0023a](https://github.com/typescript-eslint/typescript-eslint/commit/9b0023a4996ecdd7dfcb30abd1678091a78f3064)) + + + + + +# [2.26.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.25.0...v2.26.0) (2020-03-30) + + +### Bug Fixes + +* **eslint-plugin:** [no-explicit-any] error with ignoreRestArgs ([#1796](https://github.com/typescript-eslint/typescript-eslint/issues/1796)) ([638d84d](https://github.com/typescript-eslint/typescript-eslint/commit/638d84ddd77d07117b3ec7c5431f3b0e44b1995d)) +* **eslint-plugin:** [no-unsafe-call] allow import expressions ([#1800](https://github.com/typescript-eslint/typescript-eslint/issues/1800)) ([4fa7107](https://github.com/typescript-eslint/typescript-eslint/commit/4fa710754ecc412b65ac3864fe0c7857c254ac1b)) +* **eslint-plugin:** [no-unsafe-return] error with ESLint Plugin TypeScript +

An ESLint plugin which provides lint rules for TypeScript codebases.

+

- Azure Pipelines - GitHub license + CI NPM Version NPM Downloads - Commitizen friendly

## Getting Started @@ -19,10 +19,18 @@ These docs walk you through setting up ESLint, this plugin, and our parser. If y ### Installation -Make sure you have TypeScript and [`@typescript-eslint/parser`](../parser) installed, then install the plugin: +Make sure you have TypeScript and [`@typescript-eslint/parser`](../parser) installed: -```sh -yarn add -D @typescript-eslint/eslint-plugin +```bash +$ yarn add -D typescript @typescript-eslint/parser +$ npm i --save-dev typescript @typescript-eslint/parser +``` + +Then install the plugin: + +```bash +$ yarn add -D @typescript-eslint/eslint-plugin +$ npm i --save-dev @typescript-eslint/eslint-plugin ``` It is important that you use the same version number for `@typescript-eslint/parser` and `@typescript-eslint/eslint-plugin`. @@ -55,15 +63,11 @@ You can also enable all the recommended rules for our plugin. Add `plugin:@types ### Recommended Configs -You can also use [`eslint:recommended`](https://eslint.org/docs/rules/) (the set of rules which are recommended for all projects by the ESLint Team) with this plugin. As noted in the root README, not all ESLint core rules are compatible with TypeScript, so you need to add both `eslint:recommended` and `plugin:@typescript-eslint/eslint-recommended` (which will adjust the one from ESLint appropriately for TypeScript) to your config: +You can also use [`eslint:recommended`](https://eslint.org/docs/rules/) (the set of rules which are recommended for all projects by the ESLint Team) with this plugin: ```json { - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/eslint-recommended", - "plugin:@typescript-eslint/recommended" - ] + "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"] } ``` @@ -75,7 +79,6 @@ Some highly valuable rules simply require type-checking in order to be implement { "extends": [ "eslint:recommended", - "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking" ] @@ -97,30 +100,37 @@ Pro Tip: For larger codebases you may want to consider splitting our linting int | [`@typescript-eslint/adjacent-overload-signatures`](./docs/rules/adjacent-overload-signatures.md) | Require that member overloads be consecutive | :heavy_check_mark: | | | | [`@typescript-eslint/array-type`](./docs/rules/array-type.md) | Requires using either `T[]` or `Array` for arrays | | :wrench: | | | [`@typescript-eslint/await-thenable`](./docs/rules/await-thenable.md) | Disallows awaiting a value that is not a Thenable | :heavy_check_mark: | | :thought_balloon: | -| [`@typescript-eslint/ban-ts-comment`](./docs/rules/ban-ts-comment.md) | Bans `// @ts-` comments from being used | | | | +| [`@typescript-eslint/ban-ts-comment`](./docs/rules/ban-ts-comment.md) | Bans `// @ts-` comments from being used or requires descriptions after directive | :heavy_check_mark: | | | +| [`@typescript-eslint/ban-tslint-comment`](./docs/rules/ban-tslint-comment.md) | Bans `// tslint:` comments from being used | | :wrench: | | | [`@typescript-eslint/ban-types`](./docs/rules/ban-types.md) | Bans specific types from being used | :heavy_check_mark: | :wrench: | | -| [`@typescript-eslint/consistent-type-assertions`](./docs/rules/consistent-type-assertions.md) | Enforces consistent usage of type assertions | :heavy_check_mark: | | | +| [`@typescript-eslint/class-literal-property-style`](./docs/rules/class-literal-property-style.md) | Ensures that literals on classes are exposed in a consistent style | | :wrench: | | +| [`@typescript-eslint/consistent-type-assertions`](./docs/rules/consistent-type-assertions.md) | Enforces consistent usage of type assertions | | | | | [`@typescript-eslint/consistent-type-definitions`](./docs/rules/consistent-type-definitions.md) | Consistent with type definition either `interface` or `type` | | :wrench: | | -| [`@typescript-eslint/explicit-function-return-type`](./docs/rules/explicit-function-return-type.md) | Require explicit return types on functions and class methods | :heavy_check_mark: | | | +| [`@typescript-eslint/consistent-type-imports`](./docs/rules/consistent-type-imports.md) | Enforces consistent usage of type imports | | :wrench: | | +| [`@typescript-eslint/explicit-function-return-type`](./docs/rules/explicit-function-return-type.md) | Require explicit return types on functions and class methods | | | | | [`@typescript-eslint/explicit-member-accessibility`](./docs/rules/explicit-member-accessibility.md) | Require explicit accessibility modifiers on class properties and methods | | :wrench: | | -| [`@typescript-eslint/explicit-module-boundary-types`](./docs/rules/explicit-module-boundary-types.md) | Require explicit return and argument types on exported functions' and classes' public class methods | | | | -| [`@typescript-eslint/member-delimiter-style`](./docs/rules/member-delimiter-style.md) | Require a specific member delimiter style for interfaces and type literals | :heavy_check_mark: | :wrench: | | +| [`@typescript-eslint/explicit-module-boundary-types`](./docs/rules/explicit-module-boundary-types.md) | Require explicit return and argument types on exported functions' and classes' public class methods | :heavy_check_mark: | | | +| [`@typescript-eslint/member-delimiter-style`](./docs/rules/member-delimiter-style.md) | Require a specific member delimiter style for interfaces and type literals | | :wrench: | | | [`@typescript-eslint/member-ordering`](./docs/rules/member-ordering.md) | Require a consistent member declaration order | | | | +| [`@typescript-eslint/method-signature-style`](./docs/rules/method-signature-style.md) | Enforces using a particular method signature syntax. | | :wrench: | | | [`@typescript-eslint/naming-convention`](./docs/rules/naming-convention.md) | Enforces naming conventions for everything across a codebase | | | :thought_balloon: | | [`@typescript-eslint/no-base-to-string`](./docs/rules/no-base-to-string.md) | Requires that `.toString()` is only called on objects which provide useful information when stringified | | | :thought_balloon: | +| [`@typescript-eslint/no-confusing-non-null-assertion`](./docs/rules/no-confusing-non-null-assertion.md) | Disallow non-null assertion in locations that may be confusing | | :wrench: | | | [`@typescript-eslint/no-dynamic-delete`](./docs/rules/no-dynamic-delete.md) | Disallow the delete operator with computed key expressions | | :wrench: | | | [`@typescript-eslint/no-empty-interface`](./docs/rules/no-empty-interface.md) | Disallow the declaration of empty interfaces | :heavy_check_mark: | :wrench: | | | [`@typescript-eslint/no-explicit-any`](./docs/rules/no-explicit-any.md) | Disallow usage of the `any` type | :heavy_check_mark: | :wrench: | | -| [`@typescript-eslint/no-extra-non-null-assertion`](./docs/rules/no-extra-non-null-assertion.md) | Disallow extra non-null assertion | | :wrench: | | +| [`@typescript-eslint/no-extra-non-null-assertion`](./docs/rules/no-extra-non-null-assertion.md) | Disallow extra non-null assertion | :heavy_check_mark: | :wrench: | | | [`@typescript-eslint/no-extraneous-class`](./docs/rules/no-extraneous-class.md) | Forbids the use of classes as namespaces | | | | -| [`@typescript-eslint/no-floating-promises`](./docs/rules/no-floating-promises.md) | Requires Promise-like values to be handled appropriately | | | :thought_balloon: | +| [`@typescript-eslint/no-floating-promises`](./docs/rules/no-floating-promises.md) | Requires Promise-like values to be handled appropriately | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/no-for-in-array`](./docs/rules/no-for-in-array.md) | Disallow iterating over an array with a for-in loop | :heavy_check_mark: | | :thought_balloon: | -| [`@typescript-eslint/no-implied-eval`](./docs/rules/no-implied-eval.md) | Disallow the use of `eval()`-like methods | | | :thought_balloon: | +| [`@typescript-eslint/no-implicit-any-catch`](./docs/rules/no-implicit-any-catch.md) | Disallow usage of the implicit `any` type in catch clauses | | :wrench: | | +| [`@typescript-eslint/no-implied-eval`](./docs/rules/no-implied-eval.md) | Disallow the use of `eval()`-like methods | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/no-inferrable-types`](./docs/rules/no-inferrable-types.md) | Disallows explicit type declarations for variables or parameters initialized to a number, string, or boolean | :heavy_check_mark: | :wrench: | | +| [`@typescript-eslint/no-invalid-void-type`](./docs/rules/no-invalid-void-type.md) | Disallows usage of `void` type outside of generic or return types | | | | | [`@typescript-eslint/no-misused-new`](./docs/rules/no-misused-new.md) | Enforce valid definition of `new` and `constructor` | :heavy_check_mark: | | | | [`@typescript-eslint/no-misused-promises`](./docs/rules/no-misused-promises.md) | Avoid using promises in places not designed to handle them | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/no-namespace`](./docs/rules/no-namespace.md) | Disallow the use of custom TypeScript modules and namespaces | :heavy_check_mark: | | | -| [`@typescript-eslint/no-non-null-asserted-optional-chain`](./docs/rules/no-non-null-asserted-optional-chain.md) | Disallows using a non-null assertion after an optional chain expression | | | | +| [`@typescript-eslint/no-non-null-asserted-optional-chain`](./docs/rules/no-non-null-asserted-optional-chain.md) | Disallows using a non-null assertion after an optional chain expression | :heavy_check_mark: | | | | [`@typescript-eslint/no-non-null-assertion`](./docs/rules/no-non-null-assertion.md) | Disallows non-null assertions using the `!` postfix operator | :heavy_check_mark: | | | | [`@typescript-eslint/no-parameter-properties`](./docs/rules/no-parameter-properties.md) | Disallow the use of parameter properties in class constructors | | | | | [`@typescript-eslint/no-require-imports`](./docs/rules/no-require-imports.md) | Disallows invocation of `require()` | | | | @@ -132,27 +142,34 @@ Pro Tip: For larger codebases you may want to consider splitting our linting int | [`@typescript-eslint/no-unnecessary-qualifier`](./docs/rules/no-unnecessary-qualifier.md) | Warns when a namespace qualifier is unnecessary | | :wrench: | :thought_balloon: | | [`@typescript-eslint/no-unnecessary-type-arguments`](./docs/rules/no-unnecessary-type-arguments.md) | Enforces that type arguments will not be used if not required | | :wrench: | :thought_balloon: | | [`@typescript-eslint/no-unnecessary-type-assertion`](./docs/rules/no-unnecessary-type-assertion.md) | Warns if a type assertion does not change the type of an expression | :heavy_check_mark: | :wrench: | :thought_balloon: | -| [`@typescript-eslint/no-unused-vars-experimental`](./docs/rules/no-unused-vars-experimental.md) | Disallow unused variables and arguments | | | :thought_balloon: | +| [`@typescript-eslint/no-unsafe-assignment`](./docs/rules/no-unsafe-assignment.md) | Disallows assigning any to variables and properties | :heavy_check_mark: | | :thought_balloon: | +| [`@typescript-eslint/no-unsafe-call`](./docs/rules/no-unsafe-call.md) | Disallows calling an any type value | :heavy_check_mark: | | :thought_balloon: | +| [`@typescript-eslint/no-unsafe-member-access`](./docs/rules/no-unsafe-member-access.md) | Disallows member access on any typed variables | :heavy_check_mark: | | :thought_balloon: | +| [`@typescript-eslint/no-unsafe-return`](./docs/rules/no-unsafe-return.md) | Disallows returning any from a function | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/no-var-requires`](./docs/rules/no-var-requires.md) | Disallows the use of require statements except in import statements | :heavy_check_mark: | | | -| [`@typescript-eslint/prefer-as-const`](./docs/rules/prefer-as-const.md) | Prefer usage of `as const` over literal type | | :wrench: | | +| [`@typescript-eslint/prefer-as-const`](./docs/rules/prefer-as-const.md) | Prefer usage of `as const` over literal type | :heavy_check_mark: | :wrench: | | +| [`@typescript-eslint/prefer-enum-initializers`](./docs/rules/prefer-enum-initializers.md) | Prefer initializing each enums member value | | | | | [`@typescript-eslint/prefer-for-of`](./docs/rules/prefer-for-of.md) | Prefer a ‘for-of’ loop over a standard ‘for’ loop if the index is only used to access the array being iterated | | | | | [`@typescript-eslint/prefer-function-type`](./docs/rules/prefer-function-type.md) | Use function types instead of interfaces with call signatures | | :wrench: | | -| [`@typescript-eslint/prefer-includes`](./docs/rules/prefer-includes.md) | Enforce `includes` method over `indexOf` method | :heavy_check_mark: | :wrench: | :thought_balloon: | +| [`@typescript-eslint/prefer-includes`](./docs/rules/prefer-includes.md) | Enforce `includes` method over `indexOf` method | | :wrench: | :thought_balloon: | +| [`@typescript-eslint/prefer-literal-enum-member`](./docs/rules/prefer-literal-enum-member.md) | Require that all enum members be literal values to prevent unintended enum member name shadow issues | | | | | [`@typescript-eslint/prefer-namespace-keyword`](./docs/rules/prefer-namespace-keyword.md) | Require the use of the `namespace` keyword instead of the `module` keyword to declare custom TypeScript modules | :heavy_check_mark: | :wrench: | | -| [`@typescript-eslint/prefer-nullish-coalescing`](./docs/rules/prefer-nullish-coalescing.md) | Enforce the usage of the nullish coalescing operator instead of logical chaining | | :wrench: | :thought_balloon: | -| [`@typescript-eslint/prefer-optional-chain`](./docs/rules/prefer-optional-chain.md) | Prefer using concise optional chain expressions instead of chained logical ands | | :wrench: | | +| [`@typescript-eslint/prefer-nullish-coalescing`](./docs/rules/prefer-nullish-coalescing.md) | Enforce the usage of the nullish coalescing operator instead of logical chaining | | | :thought_balloon: | +| [`@typescript-eslint/prefer-optional-chain`](./docs/rules/prefer-optional-chain.md) | Prefer using concise optional chain expressions instead of chained logical ands | | | | | [`@typescript-eslint/prefer-readonly`](./docs/rules/prefer-readonly.md) | Requires that private members are marked as `readonly` if they're never modified outside of the constructor | | :wrench: | :thought_balloon: | | [`@typescript-eslint/prefer-readonly-parameter-types`](./docs/rules/prefer-readonly-parameter-types.md) | Requires that function parameters are typed as readonly to prevent accidental mutation of inputs | | | :thought_balloon: | +| [`@typescript-eslint/prefer-reduce-type-parameter`](./docs/rules/prefer-reduce-type-parameter.md) | Prefer using type parameter when calling `Array#reduce` instead of casting | | :wrench: | :thought_balloon: | | [`@typescript-eslint/prefer-regexp-exec`](./docs/rules/prefer-regexp-exec.md) | Enforce that `RegExp#exec` is used instead of `String#match` if no global flag is provided | :heavy_check_mark: | | :thought_balloon: | -| [`@typescript-eslint/prefer-string-starts-ends-with`](./docs/rules/prefer-string-starts-ends-with.md) | Enforce the use of `String#startsWith` and `String#endsWith` instead of other equivalent methods of checking substrings | :heavy_check_mark: | :wrench: | :thought_balloon: | +| [`@typescript-eslint/prefer-string-starts-ends-with`](./docs/rules/prefer-string-starts-ends-with.md) | Enforce the use of `String#startsWith` and `String#endsWith` instead of other equivalent methods of checking substrings | | :wrench: | :thought_balloon: | +| [`@typescript-eslint/prefer-ts-expect-error`](./docs/rules/prefer-ts-expect-error.md) | Recommends using `@ts-expect-error` over `@ts-ignore` | | :wrench: | | | [`@typescript-eslint/promise-function-async`](./docs/rules/promise-function-async.md) | Requires any function or method that returns a Promise to be marked async | | | :thought_balloon: | | [`@typescript-eslint/require-array-sort-compare`](./docs/rules/require-array-sort-compare.md) | Requires `Array#sort` calls to always provide a `compareFunction` | | | :thought_balloon: | -| [`@typescript-eslint/restrict-plus-operands`](./docs/rules/restrict-plus-operands.md) | When adding two variables, operands must both be of type number or of type string | | | :thought_balloon: | -| [`@typescript-eslint/restrict-template-expressions`](./docs/rules/restrict-template-expressions.md) | Enforce template literal expressions to be of string type | | | :thought_balloon: | +| [`@typescript-eslint/restrict-plus-operands`](./docs/rules/restrict-plus-operands.md) | When adding two variables, operands must both be of type number or of type string | :heavy_check_mark: | | :thought_balloon: | +| [`@typescript-eslint/restrict-template-expressions`](./docs/rules/restrict-template-expressions.md) | Enforce template literal expressions to be of string type | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/strict-boolean-expressions`](./docs/rules/strict-boolean-expressions.md) | Restricts the types allowed in boolean expressions | | | :thought_balloon: | | [`@typescript-eslint/switch-exhaustiveness-check`](./docs/rules/switch-exhaustiveness-check.md) | Exhaustiveness checking in switch with union type | | | :thought_balloon: | | [`@typescript-eslint/triple-slash-reference`](./docs/rules/triple-slash-reference.md) | Sets preference level for triple slash directives versus ES6-style import declarations | :heavy_check_mark: | | | -| [`@typescript-eslint/type-annotation-spacing`](./docs/rules/type-annotation-spacing.md) | Require consistent spacing around type annotations | :heavy_check_mark: | :wrench: | | +| [`@typescript-eslint/type-annotation-spacing`](./docs/rules/type-annotation-spacing.md) | Require consistent spacing around type annotations | | :wrench: | | | [`@typescript-eslint/typedef`](./docs/rules/typedef.md) | Requires type annotations to exist | | | | | [`@typescript-eslint/unbound-method`](./docs/rules/unbound-method.md) | Enforces unbound methods are called with their expected scope | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/unified-signatures`](./docs/rules/unified-signatures.md) | Warns for any two overloads that could be unified into one by using a union or an optional/rest parameter | | | | @@ -168,28 +185,38 @@ In these cases, we create what we call an extension rule; a rule within our plug **Key**: :heavy_check_mark: = recommended, :wrench: = fixable, :thought_balloon: = requires type information -| Name | Description | :heavy_check_mark: | :wrench: | :thought_balloon: | -| ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------ | -------- | ----------------- | -| [`@typescript-eslint/brace-style`](./docs/rules/brace-style.md) | Enforce consistent brace style for blocks | | :wrench: | | -| [`@typescript-eslint/comma-spacing`](./docs/rules/comma-spacing.md) | Enforces consistent spacing before and after commas | | :wrench: | | -| [`@typescript-eslint/default-param-last`](./docs/rules/default-param-last.md) | Enforce default parameters to be last | | | | -| [`@typescript-eslint/func-call-spacing`](./docs/rules/func-call-spacing.md) | Require or disallow spacing between function identifiers and their invocations | | :wrench: | | -| [`@typescript-eslint/indent`](./docs/rules/indent.md) | Enforce consistent indentation | | :wrench: | | -| [`@typescript-eslint/no-array-constructor`](./docs/rules/no-array-constructor.md) | Disallow generic `Array` constructors | :heavy_check_mark: | :wrench: | | -| [`@typescript-eslint/no-dupe-class-members`](./docs/rules/no-dupe-class-members.md) | Disallow duplicate class members | | | | -| [`@typescript-eslint/no-empty-function`](./docs/rules/no-empty-function.md) | Disallow empty functions | :heavy_check_mark: | | | -| [`@typescript-eslint/no-extra-parens`](./docs/rules/no-extra-parens.md) | Disallow unnecessary parentheses | | :wrench: | | -| [`@typescript-eslint/no-extra-semi`](./docs/rules/no-extra-semi.md) | Disallow unnecessary semicolons | | :wrench: | | -| [`@typescript-eslint/no-magic-numbers`](./docs/rules/no-magic-numbers.md) | Disallow magic numbers | | | | -| [`@typescript-eslint/no-unused-expressions`](./docs/rules/no-unused-expressions.md) | Disallow unused expressions | | | | -| [`@typescript-eslint/no-unused-vars`](./docs/rules/no-unused-vars.md) | Disallow unused variables | :heavy_check_mark: | | | -| [`@typescript-eslint/no-use-before-define`](./docs/rules/no-use-before-define.md) | Disallow the use of variables before they are defined | :heavy_check_mark: | | | -| [`@typescript-eslint/no-useless-constructor`](./docs/rules/no-useless-constructor.md) | Disallow unnecessary constructors | | | | -| [`@typescript-eslint/quotes`](./docs/rules/quotes.md) | Enforce the consistent use of either backticks, double, or single quotes | | :wrench: | | -| [`@typescript-eslint/require-await`](./docs/rules/require-await.md) | Disallow async functions which have no `await` expression | :heavy_check_mark: | | :thought_balloon: | -| [`@typescript-eslint/return-await`](./docs/rules/return-await.md) | Enforces consistent returning of awaited values | | :wrench: | :thought_balloon: | -| [`@typescript-eslint/semi`](./docs/rules/semi.md) | Require or disallow semicolons instead of ASI | | :wrench: | | -| [`@typescript-eslint/space-before-function-paren`](./docs/rules/space-before-function-paren.md) | Enforces consistent spacing before function parenthesis | | :wrench: | | +| Name | Description | :heavy_check_mark: | :wrench: | :thought_balloon: | +| ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ | ------------------ | -------- | ----------------- | +| [`@typescript-eslint/brace-style`](./docs/rules/brace-style.md) | Enforce consistent brace style for blocks | | :wrench: | | +| [`@typescript-eslint/comma-dangle`](./docs/rules/comma-dangle.md) | Require or disallow trailing comma | | :wrench: | | +| [`@typescript-eslint/comma-spacing`](./docs/rules/comma-spacing.md) | Enforces consistent spacing before and after commas | | :wrench: | | +| [`@typescript-eslint/default-param-last`](./docs/rules/default-param-last.md) | Enforce default parameters to be last | | | | +| [`@typescript-eslint/dot-notation`](./docs/rules/dot-notation.md) | enforce dot notation whenever possible | | :wrench: | :thought_balloon: | +| [`@typescript-eslint/func-call-spacing`](./docs/rules/func-call-spacing.md) | Require or disallow spacing between function identifiers and their invocations | | :wrench: | | +| [`@typescript-eslint/indent`](./docs/rules/indent.md) | Enforce consistent indentation | | :wrench: | | +| [`@typescript-eslint/init-declarations`](./docs/rules/init-declarations.md) | require or disallow initialization in variable declarations | | | | +| [`@typescript-eslint/keyword-spacing`](./docs/rules/keyword-spacing.md) | Enforce consistent spacing before and after keywords | | :wrench: | | +| [`@typescript-eslint/lines-between-class-members`](./docs/rules/lines-between-class-members.md) | Require or disallow an empty line between class members | | :wrench: | | +| [`@typescript-eslint/no-array-constructor`](./docs/rules/no-array-constructor.md) | Disallow generic `Array` constructors | :heavy_check_mark: | :wrench: | | +| [`@typescript-eslint/no-dupe-class-members`](./docs/rules/no-dupe-class-members.md) | Disallow duplicate class members | | | | +| [`@typescript-eslint/no-empty-function`](./docs/rules/no-empty-function.md) | Disallow empty functions | :heavy_check_mark: | | | +| [`@typescript-eslint/no-extra-parens`](./docs/rules/no-extra-parens.md) | Disallow unnecessary parentheses | | :wrench: | | +| [`@typescript-eslint/no-extra-semi`](./docs/rules/no-extra-semi.md) | Disallow unnecessary semicolons | :heavy_check_mark: | :wrench: | | +| [`@typescript-eslint/no-invalid-this`](./docs/rules/no-invalid-this.md) | disallow `this` keywords outside of classes or class-like objects | | | | +| [`@typescript-eslint/no-loop-func`](./docs/rules/no-loop-func.md) | Disallow function declarations that contain unsafe references inside loop statements | | | | +| [`@typescript-eslint/no-loss-of-precision`](./docs/rules/no-loss-of-precision.md) | Disallow literal numbers that lose precision | | | | +| [`@typescript-eslint/no-magic-numbers`](./docs/rules/no-magic-numbers.md) | Disallow magic numbers | | | | +| [`@typescript-eslint/no-redeclare`](./docs/rules/no-redeclare.md) | Disallow variable redeclaration | | | | +| [`@typescript-eslint/no-shadow`](./docs/rules/no-shadow.md) | Disallow variable declarations from shadowing variables declared in the outer scope | | | | +| [`@typescript-eslint/no-unused-expressions`](./docs/rules/no-unused-expressions.md) | Disallow unused expressions | | | | +| [`@typescript-eslint/no-unused-vars`](./docs/rules/no-unused-vars.md) | Disallow unused variables | :heavy_check_mark: | | | +| [`@typescript-eslint/no-use-before-define`](./docs/rules/no-use-before-define.md) | Disallow the use of variables before they are defined | | | | +| [`@typescript-eslint/no-useless-constructor`](./docs/rules/no-useless-constructor.md) | Disallow unnecessary constructors | | | | +| [`@typescript-eslint/quotes`](./docs/rules/quotes.md) | Enforce the consistent use of either backticks, double, or single quotes | | :wrench: | | +| [`@typescript-eslint/require-await`](./docs/rules/require-await.md) | Disallow async functions which have no `await` expression | :heavy_check_mark: | | :thought_balloon: | +| [`@typescript-eslint/return-await`](./docs/rules/return-await.md) | Enforces consistent returning of awaited values | | :wrench: | :thought_balloon: | +| [`@typescript-eslint/semi`](./docs/rules/semi.md) | Require or disallow semicolons instead of ASI | | :wrench: | | +| [`@typescript-eslint/space-before-function-paren`](./docs/rules/space-before-function-paren.md) | Enforces consistent spacing before function parenthesis | | :wrench: | | diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js new file mode 100644 index 00000000..cf3bab7a --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js @@ -0,0 +1,146 @@ +"use strict"; +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// YOU CAN REGENERATE IT USING yarn generate:configs +module.exports = { + extends: ['./configs/base', './configs/eslint-recommended'], + rules: { + '@typescript-eslint/adjacent-overload-signatures': 'error', + '@typescript-eslint/array-type': 'error', + '@typescript-eslint/await-thenable': 'error', + '@typescript-eslint/ban-ts-comment': 'error', + '@typescript-eslint/ban-tslint-comment': 'error', + '@typescript-eslint/ban-types': 'error', + 'brace-style': 'off', + '@typescript-eslint/brace-style': 'error', + '@typescript-eslint/class-literal-property-style': 'error', + 'comma-spacing': 'off', + '@typescript-eslint/comma-spacing': 'error', + '@typescript-eslint/consistent-type-assertions': 'error', + '@typescript-eslint/consistent-type-definitions': 'error', + '@typescript-eslint/consistent-type-imports': 'error', + 'default-param-last': 'off', + '@typescript-eslint/default-param-last': 'error', + 'dot-notation': 'off', + '@typescript-eslint/dot-notation': 'error', + '@typescript-eslint/explicit-function-return-type': 'error', + '@typescript-eslint/explicit-member-accessibility': 'error', + '@typescript-eslint/explicit-module-boundary-types': 'error', + 'func-call-spacing': 'off', + '@typescript-eslint/func-call-spacing': 'error', + indent: 'off', + '@typescript-eslint/indent': 'error', + 'init-declarations': 'off', + '@typescript-eslint/init-declarations': 'error', + 'keyword-spacing': 'off', + '@typescript-eslint/keyword-spacing': 'error', + 'lines-between-class-members': 'off', + '@typescript-eslint/lines-between-class-members': 'error', + '@typescript-eslint/member-delimiter-style': 'error', + '@typescript-eslint/member-ordering': 'error', + '@typescript-eslint/method-signature-style': 'error', + '@typescript-eslint/naming-convention': 'error', + 'no-array-constructor': 'off', + '@typescript-eslint/no-array-constructor': 'error', + '@typescript-eslint/no-base-to-string': 'error', + '@typescript-eslint/no-confusing-non-null-assertion': 'error', + 'no-dupe-class-members': 'off', + '@typescript-eslint/no-dupe-class-members': 'error', + '@typescript-eslint/no-dynamic-delete': 'error', + 'no-empty-function': 'off', + '@typescript-eslint/no-empty-function': 'error', + '@typescript-eslint/no-empty-interface': 'error', + '@typescript-eslint/no-explicit-any': 'error', + '@typescript-eslint/no-extra-non-null-assertion': 'error', + 'no-extra-parens': 'off', + '@typescript-eslint/no-extra-parens': 'error', + 'no-extra-semi': 'off', + '@typescript-eslint/no-extra-semi': 'error', + '@typescript-eslint/no-extraneous-class': 'error', + '@typescript-eslint/no-floating-promises': 'error', + '@typescript-eslint/no-for-in-array': 'error', + '@typescript-eslint/no-implicit-any-catch': 'error', + '@typescript-eslint/no-implied-eval': 'error', + '@typescript-eslint/no-inferrable-types': 'error', + 'no-invalid-this': 'off', + '@typescript-eslint/no-invalid-this': 'error', + '@typescript-eslint/no-invalid-void-type': 'error', + 'no-loop-func': 'off', + '@typescript-eslint/no-loop-func': 'error', + 'no-loss-of-precision': 'off', + '@typescript-eslint/no-loss-of-precision': 'error', + 'no-magic-numbers': 'off', + '@typescript-eslint/no-magic-numbers': 'error', + '@typescript-eslint/no-misused-new': 'error', + '@typescript-eslint/no-misused-promises': 'error', + '@typescript-eslint/no-namespace': 'error', + '@typescript-eslint/no-non-null-asserted-optional-chain': 'error', + '@typescript-eslint/no-non-null-assertion': 'error', + '@typescript-eslint/no-parameter-properties': 'error', + 'no-redeclare': 'off', + '@typescript-eslint/no-redeclare': 'error', + '@typescript-eslint/no-require-imports': 'error', + 'no-shadow': 'off', + '@typescript-eslint/no-shadow': 'error', + '@typescript-eslint/no-this-alias': 'error', + '@typescript-eslint/no-throw-literal': 'error', + '@typescript-eslint/no-type-alias': 'error', + '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'error', + '@typescript-eslint/no-unnecessary-condition': 'error', + '@typescript-eslint/no-unnecessary-qualifier': 'error', + '@typescript-eslint/no-unnecessary-type-arguments': 'error', + '@typescript-eslint/no-unnecessary-type-assertion': 'error', + '@typescript-eslint/no-unsafe-assignment': 'error', + '@typescript-eslint/no-unsafe-call': 'error', + '@typescript-eslint/no-unsafe-member-access': 'error', + '@typescript-eslint/no-unsafe-return': 'error', + 'no-unused-expressions': 'off', + '@typescript-eslint/no-unused-expressions': 'error', + 'no-unused-vars': 'off', + '@typescript-eslint/no-unused-vars': 'error', + 'no-use-before-define': 'off', + '@typescript-eslint/no-use-before-define': 'error', + 'no-useless-constructor': 'off', + '@typescript-eslint/no-useless-constructor': 'error', + '@typescript-eslint/no-var-requires': 'error', + '@typescript-eslint/prefer-as-const': 'error', + '@typescript-eslint/prefer-enum-initializers': 'error', + '@typescript-eslint/prefer-for-of': 'error', + '@typescript-eslint/prefer-function-type': 'error', + '@typescript-eslint/prefer-includes': 'error', + '@typescript-eslint/prefer-literal-enum-member': 'error', + '@typescript-eslint/prefer-namespace-keyword': 'error', + '@typescript-eslint/prefer-nullish-coalescing': 'error', + '@typescript-eslint/prefer-optional-chain': 'error', + '@typescript-eslint/prefer-readonly': 'error', + '@typescript-eslint/prefer-readonly-parameter-types': 'error', + '@typescript-eslint/prefer-reduce-type-parameter': 'error', + '@typescript-eslint/prefer-regexp-exec': 'error', + '@typescript-eslint/prefer-string-starts-ends-with': 'error', + '@typescript-eslint/prefer-ts-expect-error': 'error', + '@typescript-eslint/promise-function-async': 'error', + quotes: 'off', + '@typescript-eslint/quotes': 'error', + '@typescript-eslint/require-array-sort-compare': 'error', + 'require-await': 'off', + '@typescript-eslint/require-await': 'error', + '@typescript-eslint/restrict-plus-operands': 'error', + '@typescript-eslint/restrict-template-expressions': 'error', + 'no-return-await': 'off', + '@typescript-eslint/return-await': 'error', + semi: 'off', + '@typescript-eslint/semi': 'error', + 'space-before-function-paren': 'off', + '@typescript-eslint/space-before-function-paren': 'error', + '@typescript-eslint/strict-boolean-expressions': 'error', + '@typescript-eslint/switch-exhaustiveness-check': 'error', + '@typescript-eslint/triple-slash-reference': 'error', + '@typescript-eslint/type-annotation-spacing': 'error', + '@typescript-eslint/typedef': 'error', + '@typescript-eslint/unbound-method': 'error', + '@typescript-eslint/unified-signatures': 'error', + 'comma-dangle': 'off', + '@typescript-eslint/comma-dangle': 'error', + }, +}; +//# sourceMappingURL=all.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map new file mode 100644 index 00000000..35b7760a --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map @@ -0,0 +1 @@ +{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/configs/all.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.json b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.json deleted file mode 100644 index ff629e06..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "extends": "./configs/base.json", - "rules": { - "@typescript-eslint/adjacent-overload-signatures": "error", - "@typescript-eslint/array-type": "error", - "@typescript-eslint/await-thenable": "error", - "@typescript-eslint/ban-ts-comment": "error", - "@typescript-eslint/ban-types": "error", - "brace-style": "off", - "@typescript-eslint/brace-style": "error", - "comma-spacing": "off", - "@typescript-eslint/comma-spacing": "error", - "@typescript-eslint/consistent-type-assertions": "error", - "@typescript-eslint/consistent-type-definitions": "error", - "default-param-last": "off", - "@typescript-eslint/default-param-last": "error", - "@typescript-eslint/explicit-function-return-type": "error", - "@typescript-eslint/explicit-member-accessibility": "error", - "@typescript-eslint/explicit-module-boundary-types": "error", - "func-call-spacing": "off", - "@typescript-eslint/func-call-spacing": "error", - "indent": "off", - "@typescript-eslint/indent": "error", - "@typescript-eslint/member-delimiter-style": "error", - "@typescript-eslint/member-ordering": "error", - "@typescript-eslint/naming-convention": "error", - "no-array-constructor": "off", - "@typescript-eslint/no-array-constructor": "error", - "@typescript-eslint/no-base-to-string": "error", - "no-dupe-class-members": "off", - "@typescript-eslint/no-dupe-class-members": "error", - "@typescript-eslint/no-dynamic-delete": "error", - "no-empty-function": "off", - "@typescript-eslint/no-empty-function": "error", - "@typescript-eslint/no-empty-interface": "error", - "@typescript-eslint/no-explicit-any": "error", - "@typescript-eslint/no-extra-non-null-assertion": "error", - "no-extra-parens": "off", - "@typescript-eslint/no-extra-parens": "error", - "no-extra-semi": "off", - "@typescript-eslint/no-extra-semi": "error", - "@typescript-eslint/no-extraneous-class": "error", - "@typescript-eslint/no-floating-promises": "error", - "@typescript-eslint/no-for-in-array": "error", - "@typescript-eslint/no-implied-eval": "error", - "@typescript-eslint/no-inferrable-types": "error", - "no-magic-numbers": "off", - "@typescript-eslint/no-magic-numbers": "error", - "@typescript-eslint/no-misused-new": "error", - "@typescript-eslint/no-misused-promises": "error", - "@typescript-eslint/no-namespace": "error", - "@typescript-eslint/no-non-null-asserted-optional-chain": "error", - "@typescript-eslint/no-non-null-assertion": "error", - "@typescript-eslint/no-parameter-properties": "error", - "@typescript-eslint/no-require-imports": "error", - "@typescript-eslint/no-this-alias": "error", - "@typescript-eslint/no-throw-literal": "error", - "@typescript-eslint/no-type-alias": "error", - "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error", - "@typescript-eslint/no-unnecessary-condition": "error", - "@typescript-eslint/no-unnecessary-qualifier": "error", - "@typescript-eslint/no-unnecessary-type-arguments": "error", - "@typescript-eslint/no-unnecessary-type-assertion": "error", - "no-unused-expressions": "off", - "@typescript-eslint/no-unused-expressions": "error", - "no-unused-vars": "off", - "@typescript-eslint/no-unused-vars": "error", - "@typescript-eslint/no-unused-vars-experimental": "error", - "no-use-before-define": "off", - "@typescript-eslint/no-use-before-define": "error", - "no-useless-constructor": "off", - "@typescript-eslint/no-useless-constructor": "error", - "@typescript-eslint/no-var-requires": "error", - "@typescript-eslint/prefer-as-const": "error", - "@typescript-eslint/prefer-for-of": "error", - "@typescript-eslint/prefer-function-type": "error", - "@typescript-eslint/prefer-includes": "error", - "@typescript-eslint/prefer-namespace-keyword": "error", - "@typescript-eslint/prefer-nullish-coalescing": "error", - "@typescript-eslint/prefer-optional-chain": "error", - "@typescript-eslint/prefer-readonly": "error", - "@typescript-eslint/prefer-readonly-parameter-types": "error", - "@typescript-eslint/prefer-regexp-exec": "error", - "@typescript-eslint/prefer-string-starts-ends-with": "error", - "@typescript-eslint/promise-function-async": "error", - "quotes": "off", - "@typescript-eslint/quotes": "error", - "@typescript-eslint/require-array-sort-compare": "error", - "require-await": "off", - "@typescript-eslint/require-await": "error", - "@typescript-eslint/restrict-plus-operands": "error", - "@typescript-eslint/restrict-template-expressions": "error", - "no-return-await": "off", - "@typescript-eslint/return-await": "error", - "semi": "off", - "@typescript-eslint/semi": "error", - "space-before-function-paren": "off", - "@typescript-eslint/space-before-function-paren": "error", - "@typescript-eslint/strict-boolean-expressions": "error", - "@typescript-eslint/switch-exhaustiveness-check": "error", - "@typescript-eslint/triple-slash-reference": "error", - "@typescript-eslint/type-annotation-spacing": "error", - "@typescript-eslint/typedef": "error", - "@typescript-eslint/unbound-method": "error", - "@typescript-eslint/unified-signatures": "error" - } -} diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js new file mode 100644 index 00000000..52d1fe8b --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js @@ -0,0 +1,10 @@ +"use strict"; +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// YOU CAN REGENERATE IT USING yarn generate:configs +module.exports = { + parser: '@typescript-eslint/parser', + parserOptions: { sourceType: 'module' }, + plugins: ['@typescript-eslint'], +}; +//# sourceMappingURL=base.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js.map new file mode 100644 index 00000000..a2f415fc --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js.map @@ -0,0 +1 @@ +{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/configs/base.ts"],"names":[],"mappings":";AAAA,wCAAwC;AACxC,gCAAgC;AAChC,oDAAoD;AAEpD,iBAAS;IACP,MAAM,EAAE,2BAA2B;IACnC,aAAa,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,oBAAoB,CAAC;CAChC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.json b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.json deleted file mode 100644 index e5af6029..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "parser": "@typescript-eslint/parser", - "parserOptions": { "sourceType": "module" }, - "plugins": ["@typescript-eslint"] -} diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js index 43959199..f1b5191e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js @@ -1,36 +1,30 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -/** - * This is a compatibility ruleset that disables rules from eslint:recommended - * which are already handled by TypeScript. - */ -exports.default = { +module.exports = { overrides: [ { files: ['*.ts', '*.tsx'], rules: { - // Checked by Typescript - ts(2378) + 'constructor-super': 'off', 'getter-return': 'off', - // Checked by Typescript - ts(2300) - 'no-dupe-args': 'off', - // Checked by Typescript - ts(1117) - 'no-dupe-keys': 'off', - // Checked by Typescript - ts(7027) - 'no-unreachable': 'off', - // Checked by Typescript - ts(2367) - 'valid-typeof': 'off', - // Checked by Typescript - ts(2588) 'no-const-assign': 'off', - // Checked by Typescript - ts(2588) - 'no-new-symbol': 'off', - // Checked by Typescript - ts(2376) - 'no-this-before-super': 'off', - // This is checked by Typescript using the option `strictNullChecks`. - 'no-undef': 'off', - // This is already checked by Typescript. + 'no-dupe-args': 'off', 'no-dupe-class-members': 'off', - // This is already checked by Typescript. + 'no-dupe-keys': 'off', + 'no-func-assign': 'off', + 'no-import-assign': 'off', + 'no-new-symbol': 'off', + 'no-obj-calls': 'off', 'no-redeclare': 'off', + 'no-setter-return': 'off', + 'no-this-before-super': 'off', + 'no-undef': 'off', + 'no-unreachable': 'off', + 'no-unsafe-negation': 'off', + 'no-var': 'error', + 'prefer-const': 'error', + 'prefer-rest-params': 'error', + 'prefer-spread': 'error', + 'valid-typeof': 'off', }, }, ], diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map index 21b2ecb2..8181881a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js.map @@ -1 +1 @@ -{"version":3,"file":"eslint-recommended.js","sourceRoot":"","sources":["../../src/configs/eslint-recommended.ts"],"names":[],"mappings":";;AAAA;;;GAGG;AACH,kBAAe;IACb,SAAS,EAAE;QACT;YACE,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;YACxB,KAAK,EAAE;gBACL,mCAAmC;gBACnC,eAAe,EAAE,KAAK;gBACtB,mCAAmC;gBACnC,cAAc,EAAE,KAAK;gBACrB,mCAAmC;gBACnC,cAAc,EAAE,KAAK;gBACrB,mCAAmC;gBACnC,gBAAgB,EAAE,KAAK;gBACvB,mCAAmC;gBACnC,cAAc,EAAE,KAAK;gBACrB,mCAAmC;gBACnC,iBAAiB,EAAE,KAAK;gBACxB,mCAAmC;gBACnC,eAAe,EAAE,KAAK;gBACtB,mCAAmC;gBACnC,sBAAsB,EAAE,KAAK;gBAC7B,qEAAqE;gBACrE,UAAU,EAAE,KAAK;gBACjB,yCAAyC;gBACzC,uBAAuB,EAAE,KAAK;gBAC9B,yCAAyC;gBACzC,cAAc,EAAE,KAAK;aACtB;SACF;KACF;CACF,CAAC"} \ No newline at end of file +{"version":3,"file":"eslint-recommended.js","sourceRoot":"","sources":["../../src/configs/eslint-recommended.ts"],"names":[],"mappings":";AAKA,iBAAS;IACP,SAAS,EAAE;QACT;YACE,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;YACxB,KAAK,EAAE;gBACL,mBAAmB,EAAE,KAAK;gBAC1B,eAAe,EAAE,KAAK;gBACtB,iBAAiB,EAAE,KAAK;gBACxB,cAAc,EAAE,KAAK;gBACrB,uBAAuB,EAAE,KAAK;gBAC9B,cAAc,EAAE,KAAK;gBACrB,gBAAgB,EAAE,KAAK;gBACvB,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,KAAK;gBACrB,kBAAkB,EAAE,KAAK;gBACzB,sBAAsB,EAAE,KAAK;gBAC7B,UAAU,EAAE,KAAK;gBACjB,gBAAgB,EAAE,KAAK;gBACvB,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,OAAO;gBACjB,cAAc,EAAE,OAAO;gBACvB,oBAAoB,EAAE,OAAO;gBAC7B,eAAe,EAAE,OAAO;gBACxB,cAAc,EAAE,KAAK;aACtB;SACF;KACF;CACF,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.js b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.js new file mode 100644 index 00000000..cb31319f --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.js @@ -0,0 +1,26 @@ +"use strict"; +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// YOU CAN REGENERATE IT USING yarn generate:configs +module.exports = { + extends: ['./configs/base', './configs/eslint-recommended'], + rules: { + '@typescript-eslint/await-thenable': 'error', + '@typescript-eslint/no-floating-promises': 'error', + '@typescript-eslint/no-for-in-array': 'error', + '@typescript-eslint/no-implied-eval': 'error', + '@typescript-eslint/no-misused-promises': 'error', + '@typescript-eslint/no-unnecessary-type-assertion': 'error', + '@typescript-eslint/no-unsafe-assignment': 'error', + '@typescript-eslint/no-unsafe-call': 'error', + '@typescript-eslint/no-unsafe-member-access': 'error', + '@typescript-eslint/no-unsafe-return': 'error', + '@typescript-eslint/prefer-regexp-exec': 'error', + 'require-await': 'off', + '@typescript-eslint/require-await': 'error', + '@typescript-eslint/restrict-plus-operands': 'error', + '@typescript-eslint/restrict-template-expressions': 'error', + '@typescript-eslint/unbound-method': 'error', + }, +}; +//# sourceMappingURL=recommended-requiring-type-checking.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.js.map new file mode 100644 index 00000000..ef219919 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.js.map @@ -0,0 +1 @@ +{"version":3,"file":"recommended-requiring-type-checking.js","sourceRoot":"","sources":["../../src/configs/recommended-requiring-type-checking.ts"],"names":[],"mappings":";AAAA,wCAAwC;AACxC,gCAAgC;AAChC,oDAAoD;AAEpD,iBAAS;IACP,OAAO,EAAE,CAAC,gBAAgB,EAAE,8BAA8B,CAAC;IAC3D,KAAK,EAAE;QACL,mCAAmC,EAAE,OAAO;QAC5C,yCAAyC,EAAE,OAAO;QAClD,oCAAoC,EAAE,OAAO;QAC7C,oCAAoC,EAAE,OAAO;QAC7C,wCAAwC,EAAE,OAAO;QACjD,kDAAkD,EAAE,OAAO;QAC3D,yCAAyC,EAAE,OAAO;QAClD,mCAAmC,EAAE,OAAO;QAC5C,4CAA4C,EAAE,OAAO;QACrD,qCAAqC,EAAE,OAAO;QAC9C,uCAAuC,EAAE,OAAO;QAChD,eAAe,EAAE,KAAK;QACtB,kCAAkC,EAAE,OAAO;QAC3C,2CAA2C,EAAE,OAAO;QACpD,kDAAkD,EAAE,OAAO;QAC3D,mCAAmC,EAAE,OAAO;KAC7C;CACF,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.json b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.json deleted file mode 100644 index 2f56a1b1..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended-requiring-type-checking.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "./configs/base.json", - "rules": { - "@typescript-eslint/await-thenable": "error", - "@typescript-eslint/no-for-in-array": "error", - "@typescript-eslint/no-misused-promises": "error", - "@typescript-eslint/no-unnecessary-type-assertion": "error", - "@typescript-eslint/prefer-includes": "error", - "@typescript-eslint/prefer-regexp-exec": "error", - "@typescript-eslint/prefer-string-starts-ends-with": "error", - "require-await": "off", - "@typescript-eslint/require-await": "error", - "@typescript-eslint/unbound-method": "error", - "no-var": "error", - "prefer-const": "error", - "prefer-rest-params": "error", - "prefer-spread": "error" - } -} diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js new file mode 100644 index 00000000..e8e5a6f7 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js @@ -0,0 +1,35 @@ +"use strict"; +// THIS CODE WAS AUTOMATICALLY GENERATED +// DO NOT EDIT THIS CODE BY HAND +// YOU CAN REGENERATE IT USING yarn generate:configs +module.exports = { + extends: ['./configs/base', './configs/eslint-recommended'], + rules: { + '@typescript-eslint/adjacent-overload-signatures': 'error', + '@typescript-eslint/ban-ts-comment': 'error', + '@typescript-eslint/ban-types': 'error', + '@typescript-eslint/explicit-module-boundary-types': 'warn', + 'no-array-constructor': 'off', + '@typescript-eslint/no-array-constructor': 'error', + 'no-empty-function': 'off', + '@typescript-eslint/no-empty-function': 'error', + '@typescript-eslint/no-empty-interface': 'error', + '@typescript-eslint/no-explicit-any': 'warn', + '@typescript-eslint/no-extra-non-null-assertion': 'error', + 'no-extra-semi': 'off', + '@typescript-eslint/no-extra-semi': 'error', + '@typescript-eslint/no-inferrable-types': 'error', + '@typescript-eslint/no-misused-new': 'error', + '@typescript-eslint/no-namespace': 'error', + '@typescript-eslint/no-non-null-asserted-optional-chain': 'error', + '@typescript-eslint/no-non-null-assertion': 'warn', + '@typescript-eslint/no-this-alias': 'error', + 'no-unused-vars': 'off', + '@typescript-eslint/no-unused-vars': 'warn', + '@typescript-eslint/no-var-requires': 'error', + '@typescript-eslint/prefer-as-const': 'error', + '@typescript-eslint/prefer-namespace-keyword': 'error', + '@typescript-eslint/triple-slash-reference': 'error', + }, +}; +//# sourceMappingURL=recommended.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js.map new file mode 100644 index 00000000..406ea3ff --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.js.map @@ -0,0 +1 @@ +{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../src/configs/recommended.ts"],"names":[],"mappings":";AAAA,wCAAwC;AACxC,gCAAgC;AAChC,oDAAoD;AAEpD,iBAAS;IACP,OAAO,EAAE,CAAC,gBAAgB,EAAE,8BAA8B,CAAC;IAC3D,KAAK,EAAE;QACL,iDAAiD,EAAE,OAAO;QAC1D,mCAAmC,EAAE,OAAO;QAC5C,8BAA8B,EAAE,OAAO;QACvC,mDAAmD,EAAE,MAAM;QAC3D,sBAAsB,EAAE,KAAK;QAC7B,yCAAyC,EAAE,OAAO;QAClD,mBAAmB,EAAE,KAAK;QAC1B,sCAAsC,EAAE,OAAO;QAC/C,uCAAuC,EAAE,OAAO;QAChD,oCAAoC,EAAE,MAAM;QAC5C,gDAAgD,EAAE,OAAO;QACzD,eAAe,EAAE,KAAK;QACtB,kCAAkC,EAAE,OAAO;QAC3C,wCAAwC,EAAE,OAAO;QACjD,mCAAmC,EAAE,OAAO;QAC5C,iCAAiC,EAAE,OAAO;QAC1C,wDAAwD,EAAE,OAAO;QACjE,0CAA0C,EAAE,MAAM;QAClD,kCAAkC,EAAE,OAAO;QAC3C,gBAAgB,EAAE,KAAK;QACvB,mCAAmC,EAAE,MAAM;QAC3C,oCAAoC,EAAE,OAAO;QAC7C,oCAAoC,EAAE,OAAO;QAC7C,6CAA6C,EAAE,OAAO;QACtD,2CAA2C,EAAE,OAAO;KACrD;CACF,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.json b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.json deleted file mode 100644 index 2ea1819c..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/recommended.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "extends": "./configs/base.json", - "rules": { - "@typescript-eslint/adjacent-overload-signatures": "error", - "@typescript-eslint/ban-ts-ignore": "error", - "@typescript-eslint/ban-types": "error", - "camelcase": "off", - "@typescript-eslint/camelcase": "error", - "@typescript-eslint/class-name-casing": "error", - "@typescript-eslint/consistent-type-assertions": "error", - "@typescript-eslint/explicit-function-return-type": "warn", - "@typescript-eslint/interface-name-prefix": "error", - "@typescript-eslint/member-delimiter-style": "error", - "no-array-constructor": "off", - "@typescript-eslint/no-array-constructor": "error", - "no-empty-function": "off", - "@typescript-eslint/no-empty-function": "error", - "@typescript-eslint/no-empty-interface": "error", - "@typescript-eslint/no-explicit-any": "warn", - "@typescript-eslint/no-inferrable-types": "error", - "@typescript-eslint/no-misused-new": "error", - "@typescript-eslint/no-namespace": "error", - "@typescript-eslint/no-non-null-assertion": "warn", - "@typescript-eslint/no-this-alias": "error", - "no-unused-vars": "off", - "@typescript-eslint/no-unused-vars": "warn", - "no-use-before-define": "off", - "@typescript-eslint/no-use-before-define": "error", - "@typescript-eslint/no-var-requires": "error", - "@typescript-eslint/prefer-namespace-keyword": "error", - "@typescript-eslint/triple-slash-reference": "error", - "@typescript-eslint/type-annotation-spacing": "error", - "no-var": "error", - "prefer-const": "error", - "prefer-rest-params": "error", - "prefer-spread": "error" - } -} diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/index.js b/node_modules/@typescript-eslint/eslint-plugin/dist/index.js index 12dffdf6..37426f23 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/index.js @@ -3,19 +3,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; const rules_1 = __importDefault(require("./rules")); -const all_json_1 = __importDefault(require("./configs/all.json")); -const base_json_1 = __importDefault(require("./configs/base.json")); -const recommended_json_1 = __importDefault(require("./configs/recommended.json")); -const recommended_requiring_type_checking_json_1 = __importDefault(require("./configs/recommended-requiring-type-checking.json")); +const all_1 = __importDefault(require("./configs/all")); +const base_1 = __importDefault(require("./configs/base")); +const recommended_1 = __importDefault(require("./configs/recommended")); +const recommended_requiring_type_checking_1 = __importDefault(require("./configs/recommended-requiring-type-checking")); const eslint_recommended_1 = __importDefault(require("./configs/eslint-recommended")); module.exports = { rules: rules_1.default, configs: { - all: all_json_1.default, - base: base_json_1.default, - recommended: recommended_json_1.default, + all: all_1.default, + base: base_1.default, + recommended: recommended_1.default, 'eslint-recommended': eslint_recommended_1.default, - 'recommended-requiring-type-checking': recommended_requiring_type_checking_json_1.default, + 'recommended-requiring-type-checking': recommended_requiring_type_checking_1.default, }, }; //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map index 13a4000a..24698092 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,oDAA4B;AAE5B,kEAAqC;AACrC,oEAAuC;AACvC,kFAAqD;AACrD,kIAAkG;AAClG,sFAA6D;AAE7D,iBAAS;IACP,KAAK,EAAL,eAAK;IACL,OAAO,EAAE;QACP,GAAG,EAAH,kBAAG;QACH,IAAI,EAAJ,mBAAI;QACJ,WAAW,EAAX,0BAAW;QACX,oBAAoB,EAAE,4BAAiB;QACvC,qCAAqC,EAAE,kDAAgC;KACxE;CACF,CAAC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,oDAA4B;AAE5B,wDAAgC;AAChC,0DAAkC;AAClC,wEAAgD;AAChD,wHAA6F;AAC7F,sFAA6D;AAE7D,iBAAS;IACP,KAAK,EAAL,eAAK;IACL,OAAO,EAAE;QACP,GAAG,EAAH,aAAG;QACH,IAAI,EAAJ,cAAI;QACJ,WAAW,EAAX,qBAAW;QACX,oBAAoB,EAAE,4BAAiB;QACvC,qCAAqC,EAAE,6CAAgC;KACxE;CACF,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js index 06c8facb..6b687146 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -27,14 +39,16 @@ exports.default = util.createRule({ create(context) { const sourceCode = context.getSourceCode(); /** - * Gets the name of the member being processed. + * Gets the name and attribute of the member being processed. * @param member the member being processed. - * @returns the name of the member or null if it's a member not relevant to the rule. + * @returns the name and attribute of the member or null if it's a member not relevant to the rule. */ - function getMemberName(member) { + function getMemberMethod(member) { + var _a, _b; if (!member) { return null; } + const isStatic = 'static' in member && !!member.static; switch (member.type) { case experimental_utils_1.AST_NODE_TYPES.ExportDefaultDeclaration: case experimental_utils_1.AST_NODE_TYPES.ExportNamedDeclaration: { @@ -43,26 +57,52 @@ exports.default = util.createRule({ if (!member.declaration) { return null; } - return getMemberName(member.declaration); + return getMemberMethod(member.declaration); } case experimental_utils_1.AST_NODE_TYPES.TSDeclareFunction: - case experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration: - return member.id && member.id.name; + case experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration: { + const name = (_b = (_a = member.id) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : null; + if (name === null) { + return null; + } + return { + name, + static: isStatic, + callSignature: false, + }; + } case experimental_utils_1.AST_NODE_TYPES.TSMethodSignature: - return util.getNameFromMember(member, sourceCode); + return { + name: util.getNameFromMember(member, sourceCode), + static: isStatic, + callSignature: false, + }; case experimental_utils_1.AST_NODE_TYPES.TSCallSignatureDeclaration: - return 'call'; + return { + name: 'call', + static: isStatic, + callSignature: true, + }; case experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration: - return 'new'; + return { + name: 'new', + static: isStatic, + callSignature: false, + }; case experimental_utils_1.AST_NODE_TYPES.MethodDefinition: - return util.getNameFromMember(member, sourceCode); + return { + name: util.getNameFromMember(member, sourceCode), + static: isStatic, + callSignature: false, + }; } return null; } function isSameMethod(method1, method2) { return (!!method2 && method1.name === method2.name && - method1.static === method2.static); + method1.static === method2.static && + method1.callSignature === method2.callSignature); } function getMembers(node) { switch (node.type) { @@ -85,15 +125,11 @@ exports.default = util.createRule({ let lastMethod = null; const seenMethods = []; members.forEach(member => { - const name = getMemberName(member); - if (name === null) { + const method = getMemberMethod(member); + if (method === null) { lastMethod = null; return; } - const method = { - name, - static: 'static' in member && !!member.static, - }; const index = seenMethods.findIndex(seenMethod => isSameMethod(method, seenMethod)); if (index > -1 && !isSameMethod(method, lastMethod)) { context.report({ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map index 0a117716..73710907 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js.map @@ -1 +1 @@ -{"version":3,"file":"adjacent-overload-signatures.js","sourceRoot":"","sources":["../../src/rules/adjacent-overload-signatures.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,8BAA8B;IACpC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,iBAAiB,EAAE,+CAA+C;SACnE;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C;;;;WAIG;QACH,SAAS,aAAa,CAAC,MAAqB;YAC1C,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO,IAAI,CAAC;aACb;YAED,QAAQ,MAAM,CAAC,IAAI,EAAE;gBACnB,KAAK,mCAAc,CAAC,wBAAwB,CAAC;gBAC7C,KAAK,mCAAc,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,yCAAyC;oBACzC,uCAAuC;oBACvC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;wBACvB,OAAO,IAAI,CAAC;qBACb;oBAED,OAAO,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;iBAC1C;gBACD,KAAK,mCAAc,CAAC,iBAAiB,CAAC;gBACtC,KAAK,mCAAc,CAAC,mBAAmB;oBACrC,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;gBACrC,KAAK,mCAAc,CAAC,iBAAiB;oBACnC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBACpD,KAAK,mCAAc,CAAC,0BAA0B;oBAC5C,OAAO,MAAM,CAAC;gBAChB,KAAK,mCAAc,CAAC,+BAA+B;oBACjD,OAAO,KAAK,CAAC;gBACf,KAAK,mCAAc,CAAC,gBAAgB;oBAClC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;aACrD;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAMD,SAAS,YAAY,CAAC,OAAe,EAAE,OAAsB;YAC3D,OAAO,CACL,CAAC,CAAC,OAAO;gBACT,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI;gBAC7B,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAClC,CAAC;QACJ,CAAC;QAED,SAAS,UAAU,CAAC,IAAc;YAChC,QAAQ,IAAI,CAAC,IAAI,EAAE;gBACjB,KAAK,mCAAc,CAAC,SAAS,CAAC;gBAC9B,KAAK,mCAAc,CAAC,OAAO,CAAC;gBAC5B,KAAK,mCAAc,CAAC,aAAa,CAAC;gBAClC,KAAK,mCAAc,CAAC,eAAe;oBACjC,OAAO,IAAI,CAAC,IAAI,CAAC;gBAEnB,KAAK,mCAAc,CAAC,aAAa;oBAC/B,OAAO,IAAI,CAAC,OAAO,CAAC;aACvB;QACH,CAAC;QAED;;;WAGG;QACH,SAAS,2BAA2B,CAAC,IAAc;YACjD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAEjC,IAAI,OAAO,EAAE;gBACX,IAAI,UAAU,GAAkB,IAAI,CAAC;gBACrC,MAAM,WAAW,GAAa,EAAE,CAAC;gBAEjC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;oBACvB,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;oBACnC,IAAI,IAAI,KAAK,IAAI,EAAE;wBACjB,UAAU,GAAG,IAAI,CAAC;wBAClB,OAAO;qBACR;oBACD,MAAM,MAAM,GAAG;wBACb,IAAI;wBACJ,MAAM,EAAE,QAAQ,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM;qBAC9C,CAAC;oBAEF,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAC/C,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CACjC,CAAC;oBACF,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;wBACnD,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,MAAM;4BACZ,SAAS,EAAE,mBAAmB;4BAC9B,IAAI,EAAE;gCACJ,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI;6BACrD;yBACF,CAAC,CAAC;qBACJ;yBAAM,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBACvB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC1B;oBAED,UAAU,GAAG,MAAM,CAAC;gBACtB,CAAC,CAAC,CAAC;aACJ;QACH,CAAC;QAED,OAAO;YACL,SAAS,EAAE,2BAA2B;YACtC,OAAO,EAAE,2BAA2B;YACpC,aAAa,EAAE,2BAA2B;YAC1C,aAAa,EAAE,2BAA2B;YAC1C,eAAe,EAAE,2BAA2B;SAC7C,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"adjacent-overload-signatures.js","sourceRoot":"","sources":["../../src/rules/adjacent-overload-signatures.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js index 3ab552ad..4f4d2d19 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -110,7 +122,7 @@ exports.default = util.createRule({ var _a; const sourceCode = context.getSourceCode(); const defaultOption = options.default; - const readonlyOption = (_a = options.readonly, (_a !== null && _a !== void 0 ? _a : defaultOption)); + const readonlyOption = (_a = options.readonly) !== null && _a !== void 0 ? _a : defaultOption; const isArraySimpleOption = defaultOption === 'array-simple' && readonlyOption === 'array-simple'; const isArrayOption = defaultOption === 'array' && readonlyOption === 'array'; const isGenericOption = defaultOption === 'generic' && readonlyOption === 'generic'; @@ -206,6 +218,7 @@ exports.default = util.createRule({ }); }, TSTypeReference(node) { + var _a; if (isGenericOption || node.typeName.type !== experimental_utils_1.AST_NODE_TYPES.Identifier) { return; @@ -218,7 +231,7 @@ exports.default = util.createRule({ return; } const readonlyPrefix = isReadonlyArrayType ? 'readonly ' : ''; - const typeParams = node.typeParameters && node.typeParameters.params; + const typeParams = (_a = node.typeParameters) === null || _a === void 0 ? void 0 : _a.params; const messageId = defaultOption === 'array' ? 'errorStringArray' : 'errorStringArraySimple'; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map index 02df7017..2acd2d28 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js.map @@ -1 +1 @@ -{"version":3,"file":"array-type.js","sourceRoot":"","sources":["../../src/rules/array-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"array-type.js","sourceRoot":"","sources":["../../src/rules/array-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js index 3e588585..e00e853d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js @@ -1,14 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const tsutils = __importStar(require("tsutils")); -const ts = __importStar(require("typescript")); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'await-thenable', @@ -33,8 +44,8 @@ exports.default = util.createRule({ AwaitExpression(node) { const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); const type = checker.getTypeAtLocation(originalNode.expression); - if (!tsutils.isTypeFlagSet(type, ts.TypeFlags.Any) && - !tsutils.isTypeFlagSet(type, ts.TypeFlags.Unknown) && + if (!util.isTypeAnyType(type) && + !util.isTypeUnknownType(type) && !tsutils.isThenableType(checker, originalNode.expression, type)) { context.report({ messageId: 'await', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map index d8df6703..b53e8dc8 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js.map @@ -1 +1 @@ -{"version":3,"file":"await-thenable.js","sourceRoot":"","sources":["../../src/rules/await-thenable.ts"],"names":[],"mappings":";;;;;;;;;AAAA,iDAAmC;AACnC,+CAAiC;AAEjC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,6DAA6D;SACrE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAChB;IACD,cAAc,EAAE,EAAE;IAElB,MAAM,CAAC,OAAO;QACZ,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAExD,OAAO;YACL,eAAe,CAAC,IAAI;gBAClB,MAAM,YAAY,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACpE,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAEhE,IACE,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;oBAC9C,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;oBAClD,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,EAC/D;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,SAAS,EAAE,OAAO;wBAClB,IAAI;qBACL,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"await-thenable.js","sourceRoot":"","sources":["../../src/rules/await-thenable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,6DAA6D;SACrE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAChB;IACD,cAAc,EAAE,EAAE;IAElB,MAAM,CAAC,OAAO;QACZ,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAExD,OAAO;YACL,eAAe,CAAC,IAAI;gBAClB,MAAM,YAAY,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACpE,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAEhE,IACE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;oBACzB,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;oBAC7B,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,EAC/D;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,SAAS,EAAE,OAAO;wBAClB,IAAI;qBACL,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js index 83f25bce..d2a19b45 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js @@ -1,57 +1,109 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.defaultMinimumDescriptionLength = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); -const defaultOptions = [ - { - 'ts-ignore': true, - 'ts-nocheck': true, - 'ts-check': false, - }, -]; +exports.defaultMinimumDescriptionLength = 3; exports.default = util.createRule({ name: 'ban-ts-comment', meta: { type: 'problem', docs: { - description: 'Bans `// @ts-` comments from being used', + description: 'Bans `// @ts-` comments from being used or requires descriptions after directive', category: 'Best Practices', - recommended: false, + recommended: 'error', }, messages: { - tsDirectiveComment: 'Do not use "// @ts-{directive}" because it alters compilation errors.', + tsDirectiveComment: 'Do not use "// @ts-{{directive}}" because it alters compilation errors.', + tsDirectiveCommentRequiresDescription: 'Include a description after the "// @ts-{{directive}}" directive to explain why the @ts-{{directive}} is necessary. The description must be {{minimumDescriptionLength}} characters or longer.', }, schema: [ { type: 'object', properties: { + 'ts-expect-error': { + oneOf: [ + { + type: 'boolean', + default: true, + }, + { + enum: ['allow-with-description'], + }, + ], + }, 'ts-ignore': { - type: 'boolean', - default: true, + oneOf: [ + { + type: 'boolean', + default: true, + }, + { + enum: ['allow-with-description'], + }, + ], }, 'ts-nocheck': { - type: 'boolean', - default: true, + oneOf: [ + { + type: 'boolean', + default: true, + }, + { + enum: ['allow-with-description'], + }, + ], }, 'ts-check': { - type: 'boolean', - default: false, + oneOf: [ + { + type: 'boolean', + default: true, + }, + { + enum: ['allow-with-description'], + }, + ], + }, + minimumDescriptionLength: { + type: 'number', + default: exports.defaultMinimumDescriptionLength, }, }, additionalProperties: false, }, ], }, - defaultOptions, + defaultOptions: [ + { + 'ts-expect-error': 'allow-with-description', + 'ts-ignore': true, + 'ts-nocheck': true, + 'ts-check': false, + minimumDescriptionLength: exports.defaultMinimumDescriptionLength, + }, + ], create(context, [options]) { - const tsCommentRegExp = /^\/*\s*@ts-(ignore|check|nocheck)/; + const tsCommentRegExp = /^\/*\s*@ts-(expect-error|ignore|check|nocheck)(.*)/; const sourceCode = context.getSourceCode(); return { Program() { @@ -61,15 +113,26 @@ exports.default = util.createRule({ if (comment.type !== experimental_utils_1.AST_TOKEN_TYPES.Line) { return; } - const [, directive] = (_a = tsCommentRegExp.exec(comment.value), (_a !== null && _a !== void 0 ? _a : [])); + const [, directive, description] = (_a = tsCommentRegExp.exec(comment.value)) !== null && _a !== void 0 ? _a : []; const fullDirective = `ts-${directive}`; - if (options[fullDirective]) { + const option = options[fullDirective]; + if (option === true) { context.report({ data: { directive }, node: comment, messageId: 'tsDirectiveComment', }); } + if (option === 'allow-with-description') { + const { minimumDescriptionLength = exports.defaultMinimumDescriptionLength, } = options; + if (description.trim().length < minimumDescriptionLength) { + context.report({ + data: { directive, minimumDescriptionLength }, + node: comment, + messageId: 'tsDirectiveCommentRequiresDescription', + }); + } + } }); }, }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map index 2766ba55..7d6e4210 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js.map @@ -1 +1 @@ -{"version":3,"file":"ban-ts-comment.js","sourceRoot":"","sources":["../../src/rules/ban-ts-comment.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAAwE;AACxE,8CAAgC;AAQhC,MAAM,cAAc,GAAc;IAChC;QACE,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,KAAK;KAClB;CACF,CAAC;AAIF,kBAAe,IAAI,CAAC,UAAU,CAAwB;IACpD,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,oDAAoD;YACjE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,kBAAkB,EAChB,uEAAuE;SAC1E;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,IAAI;qBACd;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,IAAI;qBACd;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,KAAK;qBACf;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc;IACd,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,eAAe,GAAG,mCAAmC,CAAC;QAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,OAAO;YACL,OAAO;gBACL,MAAM,QAAQ,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;gBAE7C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;;oBACzB,IAAI,OAAO,CAAC,IAAI,KAAK,oCAAe,CAAC,IAAI,EAAE;wBACzC,OAAO;qBACR;oBAED,MAAM,CAAC,EAAE,SAAS,CAAC,SAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uCAAI,EAAE,EAAA,CAAC;oBAEhE,MAAM,aAAa,GAAG,MAAM,SAAS,EAAmB,CAAC;oBAEzD,IAAI,OAAO,CAAC,aAAa,CAAC,EAAE;wBAC1B,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,EAAE,SAAS,EAAE;4BACnB,IAAI,EAAE,OAAO;4BACb,SAAS,EAAE,oBAAoB;yBAChC,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"ban-ts-comment.js","sourceRoot":"","sources":["../../src/rules/ban-ts-comment.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-ignore.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-ignore.js deleted file mode 100644 index 8c2e4412..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-ignore.js +++ /dev/null @@ -1,50 +0,0 @@ -"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 }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const util = __importStar(require("../util")); -exports.default = util.createRule({ - name: 'ban-ts-ignore', - meta: { - type: 'problem', - docs: { - description: 'Bans “// @ts-ignore” comments from being used', - category: 'Best Practices', - recommended: 'error', - }, - schema: [], - messages: { - tsIgnoreComment: 'Do not use "// @ts-ignore" comments because they suppress compilation errors.', - }, - deprecated: true, - replacedBy: ['@typescript-eslint/ban-ts-comment'], - }, - defaultOptions: [], - create(context) { - const tsIgnoreRegExp = /^\/*\s*@ts-ignore/; - const sourceCode = context.getSourceCode(); - return { - Program() { - const comments = sourceCode.getAllComments(); - comments.forEach(comment => { - if (comment.type !== experimental_utils_1.AST_TOKEN_TYPES.Line) { - return; - } - if (tsIgnoreRegExp.test(comment.value)) { - context.report({ - node: comment, - messageId: 'tsIgnoreComment', - }); - } - }); - }, - }; - }, -}); -//# sourceMappingURL=ban-ts-ignore.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-ignore.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-ignore.js.map deleted file mode 100644 index 077bc4a2..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-ignore.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ban-ts-ignore.js","sourceRoot":"","sources":["../../src/rules/ban-ts-ignore.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAAwE;AACxE,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,eAAe,EACb,+EAA+E;SAClF;QACD,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,CAAC,mCAAmC,CAAC;KAClD;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,cAAc,GAAG,mBAAmB,CAAC;QAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,OAAO;YACL,OAAO;gBACL,MAAM,QAAQ,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;gBAE7C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBACzB,IAAI,OAAO,CAAC,IAAI,KAAK,oCAAe,CAAC,IAAI,EAAE;wBACzC,OAAO;qBACR;oBACD,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBACtC,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,OAAO;4BACb,SAAS,EAAE,iBAAiB;yBAC7B,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js new file mode 100644 index 00000000..46cab0de --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js @@ -0,0 +1,75 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +// tslint regex +// https://github.com/palantir/tslint/blob/95d9d958833fd9dc0002d18cbe34db20d0fbf437/src/enableDisableRules.ts#L32 +const ENABLE_DISABLE_REGEX = /^\s*tslint:(enable|disable)(?:-(line|next-line))?(:|\s|$)/; +const toText = (text, type) => type === experimental_utils_1.AST_TOKEN_TYPES.Line + ? ['//', text.trim()].join(' ') + : ['/*', text.trim(), '*/'].join(' '); +exports.default = util.createRule({ + name: 'ban-tslint-comment', + meta: { + type: 'suggestion', + docs: { + description: 'Bans `// tslint:` comments from being used', + category: 'Stylistic Issues', + recommended: false, + }, + messages: { + commentDetected: 'tslint comment detected: "{{ text }}"', + }, + schema: [], + fixable: 'code', + }, + defaultOptions: [], + create: context => { + const sourceCode = context.getSourceCode(); + return { + Program() { + const comments = sourceCode.getAllComments(); + comments.forEach(c => { + if (ENABLE_DISABLE_REGEX.test(c.value)) { + context.report({ + data: { text: toText(c.value, c.type) }, + node: c, + messageId: 'commentDetected', + fix(fixer) { + const rangeStart = sourceCode.getIndexFromLoc({ + column: c.loc.start.column > 0 ? c.loc.start.column - 1 : 0, + line: c.loc.start.line, + }); + const rangeEnd = sourceCode.getIndexFromLoc({ + column: c.loc.end.column, + line: c.loc.end.line, + }); + return fixer.removeRange([rangeStart, rangeEnd + 1]); + }, + }); + } + }); + }, + }; + }, +}); +//# sourceMappingURL=ban-tslint-comment.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js.map new file mode 100644 index 00000000..301958f1 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ban-tslint-comment.js","sourceRoot":"","sources":["../../src/rules/ban-tslint-comment.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAAwE;AACxE,8CAAgC;AAEhC,eAAe;AACf,iHAAiH;AACjH,MAAM,oBAAoB,GAAG,2DAA2D,CAAC;AAEzF,MAAM,MAAM,GAAG,CACb,IAAY,EACZ,IAAkD,EAC1C,EAAE,CACV,IAAI,KAAK,oCAAe,CAAC,IAAI;IAC3B,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;IAC/B,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE1C,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,eAAe,EAAE,uCAAuC;SACzD;QACD,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,MAAM;KAChB;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,EAAE,OAAO,CAAC,EAAE;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,OAAO;YACL,OAAO;gBACL,MAAM,QAAQ,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;gBAC7C,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACnB,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;wBACtC,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE;4BACvC,IAAI,EAAE,CAAC;4BACP,SAAS,EAAE,iBAAiB;4BAC5B,GAAG,CAAC,KAAK;gCACP,MAAM,UAAU,GAAG,UAAU,CAAC,eAAe,CAAC;oCAC5C,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oCAC3D,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI;iCACvB,CAAC,CAAC;gCACH,MAAM,QAAQ,GAAG,UAAU,CAAC,eAAe,CAAC;oCAC1C,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM;oCACxB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI;iCACrB,CAAC,CAAC;gCACH,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;4BACvD,CAAC;yBACF,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js index f0cba4ba..eb9fc2d5 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js @@ -1,12 +1,26 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.TYPE_KEYWORDS = void 0; +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); function removeSpaces(str) { return str.replace(/ /g, ''); @@ -26,12 +40,6 @@ function getCustomMessage(bannedType) { } return ''; } -/* - Defaults for this rule should be treated as an "all or nothing" - merge, so we need special handling here. - - See: https://github.com/typescript-eslint/typescript-eslint/issues/686 - */ const defaultTypes = { String: { message: 'Use string instead', @@ -45,14 +53,52 @@ const defaultTypes = { message: 'Use number instead', fixWith: 'number', }, - Object: { - message: 'Use Record instead', - fixWith: 'Record', - }, Symbol: { message: 'Use symbol instead', fixWith: 'symbol', }, + Function: { + message: [ + 'The `Function` type accepts any function-like value.', + 'It provides no type safety when calling the function, which can be a common source of bugs.', + 'It also accepts things like class declarations, which will throw at runtime as they will not be called with `new`.', + 'If you are expecting the function to accept certain arguments, you should explicitly define the function shape.', + ].join('\n'), + }, + // object typing + Object: { + message: [ + 'The `Object` type actually means "any non-nullish value", so it is marginally better than `unknown`.', + '- If you want a type meaning "any object", you probably want `Record` instead.', + '- If you want a type meaning "any value", you probably want `unknown` instead.', + ].join('\n'), + }, + '{}': { + message: [ + '`{}` actually means "any non-nullish value".', + '- If you want a type meaning "any object", you probably want `Record` instead.', + '- If you want a type meaning "any value", you probably want `unknown` instead.', + ].join('\n'), + }, + object: { + message: [ + 'The `object` type is currently hard to use ([see this issue](https://github.com/microsoft/TypeScript/issues/21732)).', + 'Consider using `Record` instead, as it allows you to more easily inspect and use the keys.', + ].join('\n'), + }, +}; +exports.TYPE_KEYWORDS = { + bigint: experimental_utils_1.AST_NODE_TYPES.TSBigIntKeyword, + boolean: experimental_utils_1.AST_NODE_TYPES.TSBooleanKeyword, + never: experimental_utils_1.AST_NODE_TYPES.TSNeverKeyword, + null: experimental_utils_1.AST_NODE_TYPES.TSNullKeyword, + number: experimental_utils_1.AST_NODE_TYPES.TSNumberKeyword, + object: experimental_utils_1.AST_NODE_TYPES.TSObjectKeyword, + string: experimental_utils_1.AST_NODE_TYPES.TSStringKeyword, + symbol: experimental_utils_1.AST_NODE_TYPES.TSSymbolKeyword, + undefined: experimental_utils_1.AST_NODE_TYPES.TSUndefinedKeyword, + unknown: experimental_utils_1.AST_NODE_TYPES.TSUnknownKeyword, + void: experimental_utils_1.AST_NODE_TYPES.TSVoidKeyword, }; exports.default = util.createRule({ name: 'ban-types', @@ -65,7 +111,7 @@ exports.default = util.createRule({ }, fixable: 'code', messages: { - bannedTypeMessage: "Don't use '{{name}}' as a type.{{customMessage}}", + bannedTypeMessage: "Don't use `{{name}}` as a type.{{customMessage}}", }, schema: [ { @@ -76,6 +122,7 @@ exports.default = util.createRule({ additionalProperties: { oneOf: [ { type: 'null' }, + { type: 'boolean' }, { type: 'string' }, { type: 'object', @@ -99,37 +146,36 @@ exports.default = util.createRule({ defaultOptions: [{}], create(context, [options]) { var _a, _b; - const extendDefaults = (_a = options.extendDefaults, (_a !== null && _a !== void 0 ? _a : true)); - const customTypes = (_b = options.types, (_b !== null && _b !== void 0 ? _b : {})); - const types = Object.assign(Object.assign({}, (extendDefaults ? defaultTypes : {})), customTypes); + const extendDefaults = (_a = options.extendDefaults) !== null && _a !== void 0 ? _a : true; + const customTypes = (_b = options.types) !== null && _b !== void 0 ? _b : {}; + const types = Object.assign({}, extendDefaults ? defaultTypes : {}, customTypes); const bannedTypes = new Map(Object.entries(types).map(([type, data]) => [removeSpaces(type), data])); function checkBannedTypes(typeNode, name = stringifyTypeName(typeNode, context.getSourceCode())) { const bannedType = bannedTypes.get(name); - if (bannedType !== undefined) { - const customMessage = getCustomMessage(bannedType); - const fixWith = bannedType && typeof bannedType === 'object' && bannedType.fixWith; - context.report({ - node: typeNode, - messageId: 'bannedTypeMessage', - data: { - name, - customMessage, - }, - fix: fixWith - ? (fixer) => fixer.replaceText(typeNode, fixWith) - : null, - }); + if (bannedType === undefined || bannedType === false) { + return; } + const customMessage = getCustomMessage(bannedType); + const fixWith = bannedType && typeof bannedType === 'object' && bannedType.fixWith; + context.report({ + node: typeNode, + messageId: 'bannedTypeMessage', + data: { + name, + customMessage, + }, + fix: fixWith + ? (fixer) => fixer.replaceText(typeNode, fixWith) + : null, + }); } - return Object.assign(Object.assign(Object.assign({}, (bannedTypes.has('null') && { - TSNullKeyword(node) { - checkBannedTypes(node, 'null'); - }, - })), (bannedTypes.has('undefined') && { - TSUndefinedKeyword(node) { - checkBannedTypes(node, 'undefined'); - }, - })), { TSTypeLiteral(node) { + const keywordSelectors = util.objectReduceKey(exports.TYPE_KEYWORDS, (acc, keyword) => { + if (bannedTypes.has(keyword)) { + acc[exports.TYPE_KEYWORDS[keyword]] = (node) => checkBannedTypes(node, keyword); + } + return acc; + }, {}); + return Object.assign(Object.assign({}, keywordSelectors), { TSTypeLiteral(node) { if (node.members.length) { return; } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map index 686410e7..3f3eb618 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-types.js.map @@ -1 +1 @@ -{"version":3,"file":"ban-types.js","sourceRoot":"","sources":["../../src/rules/ban-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ban-types.js","sourceRoot":"","sources":["../../src/rules/ban-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/camelcase.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/camelcase.js deleted file mode 100644 index 9a31bc09..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/camelcase.js +++ /dev/null @@ -1,144 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -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 }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const camelcase_1 = __importDefault(require("eslint/lib/rules/camelcase")); -const util = __importStar(require("../util")); -const schema = util.deepMerge(Array.isArray(camelcase_1.default.meta.schema) - ? camelcase_1.default.meta.schema[0] - : camelcase_1.default.meta.schema, { - properties: { - genericType: { - enum: ['always', 'never'], - }, - }, -}); -exports.default = util.createRule({ - name: 'camelcase', - meta: { - type: 'suggestion', - docs: { - description: 'Enforce camelCase naming convention', - category: 'Stylistic Issues', - recommended: 'error', - extendsBaseRule: true, - }, - deprecated: true, - replacedBy: ['naming-convention'], - schema: [schema], - messages: camelcase_1.default.meta.messages, - }, - defaultOptions: [ - { - allow: ['^UNSAFE_'], - ignoreDestructuring: false, - properties: 'never', - genericType: 'never', - }, - ], - create(context, [options]) { - var _a, _b; - const rules = camelcase_1.default.create(context); - const TS_PROPERTY_TYPES = [ - experimental_utils_1.AST_NODE_TYPES.TSPropertySignature, - experimental_utils_1.AST_NODE_TYPES.ClassProperty, - experimental_utils_1.AST_NODE_TYPES.TSParameterProperty, - experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty, - ]; - const genericType = options.genericType; - const properties = options.properties; - const allow = (_b = (_a = options.allow) === null || _a === void 0 ? void 0 : _a.map(entry => ({ - name: entry, - regex: new RegExp(entry), - })), (_b !== null && _b !== void 0 ? _b : [])); - /** - * Checks if a string contains an underscore and isn't all upper-case - * @param name The string to check. - */ - function isUnderscored(name) { - // if there's an underscore, it might be A_CONSTANT, which is okay - return name.includes('_') && name !== name.toUpperCase(); - } - /** - * Checks if a string match the ignore list - * @param name The string to check. - * @returns if the string is ignored - * @private - */ - function isAllowed(name) { - return (allow.findIndex(entry => name === entry.name || entry.regex.test(name)) !== -1); - } - /** - * Checks if the the node is a valid TypeScript property type. - * @param node the node to be validated. - * @returns true if the node is a TypeScript property type. - * @private - */ - function isTSPropertyType(node) { - if (TS_PROPERTY_TYPES.includes(node.type)) { - return true; - } - if (node.type === experimental_utils_1.AST_NODE_TYPES.AssignmentPattern) { - return (node.parent !== undefined && - TS_PROPERTY_TYPES.includes(node.parent.type)); - } - return false; - } - function report(node) { - context.report({ - node, - messageId: 'notCamelCase', - data: { name: node.name }, - }); - } - return { - Identifier(node) { - /* - * Leading and trailing underscores are commonly used to flag - * private/protected identifiers, strip them - */ - const name = node.name.replace(/^_+|_+$/g, ''); - // First, we ignore the node if it match the ignore list - if (isAllowed(name)) { - return; - } - // Check TypeScript specific nodes - const parent = node.parent; - if (parent && isTSPropertyType(parent)) { - if (properties === 'always' && isUnderscored(name)) { - report(node); - } - return; - } - if (parent && parent.type === experimental_utils_1.AST_NODE_TYPES.TSTypeParameter) { - if (genericType === 'always' && isUnderscored(name)) { - report(node); - } - return; - } - if (parent && parent.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression) { - // Report underscored object names - if (properties === 'always' && - parent.object.type === experimental_utils_1.AST_NODE_TYPES.Identifier && - parent.object.name === node.name && - isUnderscored(name)) { - report(node); - } - return; - } - // Let the base rule deal with the rest - rules.Identifier(node); - }, - }; - }, -}); -//# sourceMappingURL=camelcase.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/camelcase.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/camelcase.js.map deleted file mode 100644 index 73957ec3..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/camelcase.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"camelcase.js","sourceRoot":"","sources":["../../src/rules/camelcase.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js new file mode 100644 index 00000000..2d6e0624 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js @@ -0,0 +1,114 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +const printNodeModifiers = (node, final) => { + var _a; + return `${(_a = node.accessibility) !== null && _a !== void 0 ? _a : ''}${node.static ? ' static' : ''} ${final} `.trimLeft(); +}; +const isSupportedLiteral = (node) => { + if (node.type === experimental_utils_1.AST_NODE_TYPES.Literal) { + return true; + } + if (node.type === experimental_utils_1.AST_NODE_TYPES.TaggedTemplateExpression || + node.type === experimental_utils_1.AST_NODE_TYPES.TemplateLiteral) { + return ('quasi' in node ? node.quasi.quasis : node.quasis).length === 1; + } + return false; +}; +exports.default = util.createRule({ + name: 'class-literal-property-style', + meta: { + type: 'problem', + docs: { + description: 'Ensures that literals on classes are exposed in a consistent style', + category: 'Best Practices', + recommended: false, + }, + fixable: 'code', + messages: { + preferFieldStyle: 'Literals should be exposed using readonly fields.', + preferGetterStyle: 'Literals should be exposed using getters.', + }, + schema: [{ enum: ['fields', 'getters'] }], + }, + defaultOptions: ['fields'], + create(context, [style]) { + if (style === 'fields') { + return { + MethodDefinition(node) { + if (node.kind !== 'get' || + !node.value.body || + !node.value.body.body.length) { + return; + } + const [statement] = node.value.body.body; + if (statement.type !== experimental_utils_1.AST_NODE_TYPES.ReturnStatement) { + return; + } + const { argument } = statement; + if (!argument || !isSupportedLiteral(argument)) { + return; + } + context.report({ + node: node.key, + messageId: 'preferFieldStyle', + fix(fixer) { + const sourceCode = context.getSourceCode(); + const name = sourceCode.getText(node.key); + let text = ''; + text += printNodeModifiers(node, 'readonly'); + text += node.computed ? `[${name}]` : name; + text += ` = ${sourceCode.getText(argument)};`; + return fixer.replaceText(node, text); + }, + }); + }, + }; + } + return { + ClassProperty(node) { + if (!node.readonly || node.declare) { + return; + } + const { value } = node; + if (!value || !isSupportedLiteral(value)) { + return; + } + context.report({ + node: node.key, + messageId: 'preferGetterStyle', + fix(fixer) { + const sourceCode = context.getSourceCode(); + const name = sourceCode.getText(node.key); + let text = ''; + text += printNodeModifiers(node, 'get'); + text += node.computed ? `[${name}]` : name; + text += `() { return ${sourceCode.getText(value)}; }`; + return fixer.replaceText(node, text); + }, + }); + }, + }; + }, +}); +//# sourceMappingURL=class-literal-property-style.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js.map new file mode 100644 index 00000000..99fba142 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js.map @@ -0,0 +1 @@ +{"version":3,"file":"class-literal-property-style.js","sourceRoot":"","sources":["../../src/rules/class-literal-property-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-name-casing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-name-casing.js deleted file mode 100644 index 21035640..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-name-casing.js +++ /dev/null @@ -1,112 +0,0 @@ -"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 }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const util = __importStar(require("../util")); -exports.default = util.createRule({ - name: 'class-name-casing', - meta: { - type: 'suggestion', - docs: { - description: 'Require PascalCased class and interface names', - category: 'Best Practices', - recommended: 'error', - }, - deprecated: true, - replacedBy: ['naming-convention'], - messages: { - notPascalCased: "{{friendlyName}} '{{name}}' must be PascalCased.", - }, - schema: [ - { - type: 'object', - properties: { - allowUnderscorePrefix: { - type: 'boolean', - default: false, - }, - }, - additionalProperties: false, - }, - ], - }, - defaultOptions: [{ allowUnderscorePrefix: false }], - create(context, [options]) { - const UNDERSCORE = '_'; - /** - * Determine if the string is Upper cased - * @param str - */ - function isUpperCase(str) { - return str === str.toUpperCase(); - } - /** - * Determine if the identifier name is PascalCased - * @param name The identifier name - */ - function isPascalCase(name) { - const startIndex = options.allowUnderscorePrefix && name.startsWith(UNDERSCORE) ? 1 : 0; - return (isUpperCase(name.charAt(startIndex)) && - !name.includes(UNDERSCORE, startIndex)); - } - /** - * Report a class declaration as invalid - * @param decl The declaration - * @param id The name of the declaration - */ - function report(decl, id) { - let friendlyName; - switch (decl.type) { - case experimental_utils_1.AST_NODE_TYPES.ClassDeclaration: - case experimental_utils_1.AST_NODE_TYPES.ClassExpression: - friendlyName = decl.abstract ? 'Abstract class' : 'Class'; - break; - case experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration: - friendlyName = 'Interface'; - break; - } - context.report({ - node: id, - messageId: 'notPascalCased', - data: { - friendlyName, - name: id.name, - }, - }); - } - return { - 'ClassDeclaration, TSInterfaceDeclaration, ClassExpression'(node) { - // class expressions (i.e. export default class {}) are OK - if (node.id && !isPascalCase(node.id.name)) { - report(node, node.id); - } - }, - "VariableDeclarator[init.type='ClassExpression']"(node) { - if (node.id.type === experimental_utils_1.AST_NODE_TYPES.ArrayPattern || - node.id.type === experimental_utils_1.AST_NODE_TYPES.ObjectPattern) { - // TODO - handle the BindingPattern case maybe? - /* - // this example makes me barf, but it's valid code - var { bar } = class { - static bar() { return 2 } - } - */ - } - else { - const id = node.id; - const nodeInit = node.init; - if (id && !nodeInit.id && !isPascalCase(id.name)) { - report(nodeInit, id); - } - } - }, - }; - }, -}); -//# sourceMappingURL=class-name-casing.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-name-casing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-name-casing.js.map deleted file mode 100644 index cd520f2e..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-name-casing.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"class-name-casing.js","sourceRoot":"","sources":["../../src/rules/class-name-casing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js new file mode 100644 index 00000000..5083584c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js @@ -0,0 +1,177 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = __importStar(require("../util")); +const comma_dangle_1 = __importDefault(require("eslint/lib/rules/comma-dangle")); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const OPTION_VALUE_SCHEME = [ + 'always-multiline', + 'always', + 'never', + 'only-multiline', +]; +const DEFAULT_OPTION_VALUE = 'never'; +function normalizeOptions(options) { + var _a, _b, _c; + if (typeof options === 'string') { + return { + enums: options, + generics: options, + tuples: options, + }; + } + return { + enums: (_a = options.enums) !== null && _a !== void 0 ? _a : DEFAULT_OPTION_VALUE, + generics: (_b = options.generics) !== null && _b !== void 0 ? _b : DEFAULT_OPTION_VALUE, + tuples: (_c = options.tuples) !== null && _c !== void 0 ? _c : DEFAULT_OPTION_VALUE, + }; +} +exports.default = util.createRule({ + name: 'comma-dangle', + meta: { + type: 'layout', + docs: { + description: 'Require or disallow trailing comma', + category: 'Stylistic Issues', + recommended: false, + extendsBaseRule: true, + }, + schema: { + definitions: { + value: { + enum: OPTION_VALUE_SCHEME, + }, + valueWithIgnore: { + enum: [...OPTION_VALUE_SCHEME, 'ignore'], + }, + }, + type: 'array', + items: [ + { + oneOf: [ + { + $ref: '#/definitions/value', + }, + { + type: 'object', + properties: { + arrays: { $ref: '#/definitions/valueWithIgnore' }, + objects: { $ref: '#/definitions/valueWithIgnore' }, + imports: { $ref: '#/definitions/valueWithIgnore' }, + exports: { $ref: '#/definitions/valueWithIgnore' }, + functions: { $ref: '#/definitions/valueWithIgnore' }, + enums: { $ref: '#/definitions/valueWithIgnore' }, + generics: { $ref: '#/definitions/valueWithIgnore' }, + tuples: { $ref: '#/definitions/valueWithIgnore' }, + }, + additionalProperties: false, + }, + ], + }, + ], + }, + fixable: 'code', + messages: comma_dangle_1.default.meta.messages, + }, + defaultOptions: ['never'], + create(context, [options]) { + const rules = comma_dangle_1.default.create(context); + const sourceCode = context.getSourceCode(); + const normalizedOptions = normalizeOptions(options); + const predicate = { + always: forceComma, + 'always-multiline': forceCommaIfMultiline, + 'only-multiline': allowCommaIfMultiline, + never: forbidComma, + ignore: () => { }, + }; + function last(nodes) { + var _a; + return (_a = nodes[nodes.length - 1]) !== null && _a !== void 0 ? _a : null; + } + function getLastItem(node) { + switch (node.type) { + case experimental_utils_1.AST_NODE_TYPES.TSEnumDeclaration: + return last(node.members); + case experimental_utils_1.AST_NODE_TYPES.TSTypeParameterDeclaration: + return last(node.params); + case experimental_utils_1.AST_NODE_TYPES.TSTupleType: + return last(node.elementTypes); + default: + return null; + } + } + function getTrailingToken(node) { + const last = getLastItem(node); + const trailing = last && sourceCode.getTokenAfter(last); + return trailing; + } + function isMultiline(node) { + const last = getLastItem(node); + const lastToken = sourceCode.getLastToken(node); + return (last === null || last === void 0 ? void 0 : last.loc.end.line) !== (lastToken === null || lastToken === void 0 ? void 0 : lastToken.loc.end.line); + } + function forbidComma(node) { + const last = getLastItem(node); + const trailing = getTrailingToken(node); + if (last && trailing && util.isCommaToken(trailing)) { + context.report({ + node, + messageId: 'unexpected', + fix(fixer) { + return fixer.remove(trailing); + }, + }); + } + } + function forceComma(node) { + const last = getLastItem(node); + const trailing = getTrailingToken(node); + if (last && trailing && !util.isCommaToken(trailing)) { + context.report({ + node, + messageId: 'missing', + fix(fixer) { + return fixer.insertTextAfter(last, ','); + }, + }); + } + } + function allowCommaIfMultiline(node) { + if (!isMultiline(node)) { + forbidComma(node); + } + } + function forceCommaIfMultiline(node) { + if (isMultiline(node)) { + forceComma(node); + } + else { + forbidComma(node); + } + } + return Object.assign(Object.assign({}, rules), { TSEnumDeclaration: predicate[normalizedOptions.enums], TSTypeParameterDeclaration: predicate[normalizedOptions.generics], TSTupleType: predicate[normalizedOptions.tuples] }); + }, +}); +//# sourceMappingURL=comma-dangle.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map new file mode 100644 index 00000000..d9f1400c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comma-dangle.js","sourceRoot":"","sources":["../../src/rules/comma-dangle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js index 59a10e27..6e2c4406 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js @@ -1,7 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const util_1 = require("../util"); exports.default = util_1.createRule({ name: 'comma-spacing', @@ -55,7 +54,7 @@ exports.default = util_1.createRule({ let token; if (element === null) { token = sourceCode.getTokenAfter(previousToken); - if (token && eslint_utils_1.isCommaToken(token)) { + if (token && util_1.isCommaToken(token)) { ignoredTokens.add(token); } } @@ -72,7 +71,7 @@ exports.default = util_1.createRule({ function addTypeParametersTrailingCommaToIgnoreList(node) { const param = node.params[node.params.length - 1]; const afterToken = sourceCode.getTokenAfter(param); - if (afterToken && eslint_utils_1.isCommaToken(afterToken)) { + if (afterToken && util_1.isCommaToken(afterToken)) { ignoredTokens.add(afterToken); } } @@ -85,7 +84,7 @@ exports.default = util_1.createRule({ function validateCommaSpacing(commaToken, prevToken, nextToken) { if (prevToken && util_1.isTokenOnSameLine(prevToken, commaToken) && - spaceBefore !== sourceCode.isSpaceBetween(prevToken, commaToken)) { + spaceBefore !== sourceCode.isSpaceBetweenTokens(prevToken, commaToken)) { context.report({ node: commaToken, data: { @@ -97,7 +96,7 @@ exports.default = util_1.createRule({ : fixer.replaceTextRange([prevToken.range[1], commaToken.range[0]], ''), }); } - if (nextToken && eslint_utils_1.isClosingParenToken(nextToken)) { + if (nextToken && util_1.isClosingParenToken(nextToken)) { return; } if (!spaceAfter && nextToken && nextToken.type === experimental_utils_1.AST_TOKEN_TYPES.Line) { @@ -105,7 +104,7 @@ exports.default = util_1.createRule({ } if (nextToken && util_1.isTokenOnSameLine(commaToken, nextToken) && - spaceAfter !== sourceCode.isSpaceBetween(commaToken, nextToken)) { + spaceAfter !== sourceCode.isSpaceBetweenTokens(commaToken, nextToken)) { context.report({ node: commaToken, data: { @@ -124,14 +123,14 @@ exports.default = util_1.createRule({ ArrayPattern: addNullElementsToIgnoreList, 'Program:exit'() { tokensAndComments.forEach((token, i) => { - if (!eslint_utils_1.isCommaToken(token)) { + if (!util_1.isCommaToken(token)) { return; } const prevToken = tokensAndComments[i - 1]; const nextToken = tokensAndComments[i + 1]; - validateCommaSpacing(token, eslint_utils_1.isCommaToken(prevToken) || ignoredTokens.has(token) + validateCommaSpacing(token, util_1.isCommaToken(prevToken) || ignoredTokens.has(token) ? null - : prevToken, eslint_utils_1.isCommaToken(nextToken) || ignoredTokens.has(token) + : prevToken, util_1.isCommaToken(nextToken) || ignoredTokens.has(token) ? null : nextToken); }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map index 82702c1c..9ddd17a6 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map @@ -1 +1 @@ -{"version":3,"file":"comma-spacing.js","sourceRoot":"","sources":["../../src/rules/comma-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"comma-spacing.js","sourceRoot":"","sources":["../../src/rules/comma-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js index 7f517a19..00e292ad 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -16,7 +28,7 @@ exports.default = util.createRule({ docs: { category: 'Best Practices', description: 'Enforces consistent usage of type assertions', - recommended: 'error', + recommended: false, }, messages: { as: "Use 'as {{cast}}' instead of '<{{cast}}>'.", @@ -62,7 +74,18 @@ exports.default = util.createRule({ ], create(context, [options]) { const sourceCode = context.getSourceCode(); + function isConst(node) { + if (node.type !== experimental_utils_1.AST_NODE_TYPES.TSTypeReference) { + return false; + } + return (node.typeName.type === experimental_utils_1.AST_NODE_TYPES.Identifier && + node.typeName.name === 'const'); + } function reportIncorrectAssertionType(node) { + // If this node is `as const`, then don't report an error. + if (isConst(node.typeAnnotation)) { + return; + } const messageId = options.assertionStyle; context.report({ node, @@ -80,8 +103,7 @@ exports.default = util.createRule({ case experimental_utils_1.AST_NODE_TYPES.TSTypeReference: return ( // Ignore `as const` and `` - (node.typeName.type === experimental_utils_1.AST_NODE_TYPES.Identifier && - node.typeName.name !== 'const') || + !isConst(node) || // Allow qualified names which have dots between identifiers, `Foo.Bar` node.typeName.type === experimental_utils_1.AST_NODE_TYPES.TSQualifiedName); default: @@ -98,7 +120,6 @@ exports.default = util.createRule({ node.parent && (node.parent.type === experimental_utils_1.AST_NODE_TYPES.NewExpression || node.parent.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - node.parent.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression || node.parent.type === experimental_utils_1.AST_NODE_TYPES.ThrowStatement || node.parent.type === experimental_utils_1.AST_NODE_TYPES.AssignmentPattern)) { return; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map index b30cb146..41dd8b12 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js.map @@ -1 +1 @@ -{"version":3,"file":"consistent-type-assertions.js","sourceRoot":"","sources":["../../src/rules/consistent-type-assertions.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"consistent-type-assertions.js","sourceRoot":"","sources":["../../src/rules/consistent-type-assertions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js index 27891406..cd0de69e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -20,8 +32,8 @@ exports.default = util.createRule({ recommended: false, }, messages: { - interfaceOverType: 'Use an `interface` instead of a `type`', - typeOverInterface: 'Use a `type` instead of an `interface`', + interfaceOverType: 'Use an `interface` instead of a `type`.', + typeOverInterface: 'Use a `type` instead of an `interface`.', }, schema: [ { @@ -41,7 +53,7 @@ exports.default = util.createRule({ messageId: 'interfaceOverType', fix(fixer) { var _a; - const typeNode = (_a = node.typeParameters, (_a !== null && _a !== void 0 ? _a : node.id)); + const typeNode = (_a = node.typeParameters) !== null && _a !== void 0 ? _a : node.id; const fixes = []; const firstToken = sourceCode.getFirstToken(node); if (firstToken) { @@ -66,7 +78,7 @@ exports.default = util.createRule({ messageId: 'typeOverInterface', fix(fixer) { var _a; - const typeNode = (_a = node.typeParameters, (_a !== null && _a !== void 0 ? _a : node.id)); + const typeNode = (_a = node.typeParameters) !== null && _a !== void 0 ? _a : node.id; const fixes = []; const firstToken = sourceCode.getFirstToken(node); if (firstToken) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map index 593e029a..a9d96cba 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js.map @@ -1 +1 @@ -{"version":3,"file":"consistent-type-definitions.js","sourceRoot":"","sources":["../../src/rules/consistent-type-definitions.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"consistent-type-definitions.js","sourceRoot":"","sources":["../../src/rules/consistent-type-definitions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js new file mode 100644 index 00000000..c61196c5 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js @@ -0,0 +1,392 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +function isImportToken(token) { + return token.type === experimental_utils_1.AST_TOKEN_TYPES.Keyword && token.value === 'import'; +} +function isTypeToken(token) { + return token.type === experimental_utils_1.AST_TOKEN_TYPES.Identifier && token.value === 'type'; +} +exports.default = util.createRule({ + name: 'consistent-type-imports', + meta: { + type: 'suggestion', + docs: { + description: 'Enforces consistent usage of type imports', + category: 'Stylistic Issues', + recommended: false, + }, + messages: { + typeOverValue: 'All imports in the declaration are only used as types. Use `import type`', + someImportsAreOnlyTypes: 'Imports {{typeImports}} are only used as types', + aImportIsOnlyTypes: 'Import {{typeImports}} is only used as types', + valueOverType: 'Use an `import` instead of an `import type`.', + noImportTypeAnnotations: '`import()` type annotations are forbidden.', + }, + schema: [ + { + type: 'object', + properties: { + prefer: { + enum: ['type-imports', 'no-type-imports'], + }, + disallowTypeAnnotations: { + type: 'boolean', + }, + }, + additionalProperties: false, + }, + ], + fixable: 'code', + }, + defaultOptions: [ + { + prefer: 'type-imports', + disallowTypeAnnotations: true, + }, + ], + create(context, [option]) { + var _a; + const prefer = (_a = option.prefer) !== null && _a !== void 0 ? _a : 'type-imports'; + const disallowTypeAnnotations = option.disallowTypeAnnotations !== false; + const sourceCode = context.getSourceCode(); + const sourceImportsMap = {}; + return Object.assign(Object.assign({}, (prefer === 'type-imports' + ? { + // prefer type imports + ImportDeclaration(node) { + var _a; + const source = node.source.value; + const sourceImports = (_a = sourceImportsMap[source]) !== null && _a !== void 0 ? _a : (sourceImportsMap[source] = { + source, + reportValueImports: [], + typeOnlyNamedImport: null, + }); + if (node.importKind === 'type') { + if (!sourceImports.typeOnlyNamedImport && + node.specifiers.every(specifier => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier)) { + sourceImports.typeOnlyNamedImport = node; + } + return; + } + // if importKind === 'value' + const typeSpecifiers = []; + const valueSpecifiers = []; + const unusedSpecifiers = []; + for (const specifier of node.specifiers) { + const [variable] = context.getDeclaredVariables(specifier); + if (variable.references.length === 0) { + unusedSpecifiers.push(specifier); + } + else { + const onlyHasTypeReferences = variable.references.every(ref => { + if (ref.isValueReference) { + // `type T = typeof foo` will create a value reference because "foo" must be a value type + // however this value reference is safe to use with type-only imports + let parent = ref.identifier.parent; + while (parent) { + if (parent.type === experimental_utils_1.AST_NODE_TYPES.TSTypeQuery) { + return true; + } + // TSTypeQuery must have a TSESTree.EntityName as its child, so we can filter here and break early + if (parent.type !== experimental_utils_1.AST_NODE_TYPES.TSQualifiedName) { + break; + } + parent = parent.parent; + } + return false; + } + return ref.isTypeReference; + }); + if (onlyHasTypeReferences) { + typeSpecifiers.push(specifier); + } + else { + valueSpecifiers.push(specifier); + } + } + } + if (typeSpecifiers.length) { + sourceImports.reportValueImports.push({ + node, + typeSpecifiers, + valueSpecifiers, + unusedSpecifiers, + }); + } + }, + 'Program:exit'() { + for (const sourceImports of Object.values(sourceImportsMap)) { + if (sourceImports.reportValueImports.length === 0) { + continue; + } + for (const report of sourceImports.reportValueImports) { + if (report.valueSpecifiers.length === 0 && + report.unusedSpecifiers.length === 0) { + // import is all type-only, convert the entire import to `import type` + context.report({ + node: report.node, + messageId: 'typeOverValue', + *fix(fixer) { + yield* fixToTypeImport(fixer, report, sourceImports); + }, + }); + } + else { + // we have a mixed type/value import, so we need to split them out into multiple exports + const typeImportNames = report.typeSpecifiers.map(specifier => `"${specifier.local.name}"`); + context.report({ + node: report.node, + messageId: typeImportNames.length === 1 + ? 'aImportIsOnlyTypes' + : 'someImportsAreOnlyTypes', + data: { + typeImports: typeImportNames.length === 1 + ? typeImportNames[0] + : [ + typeImportNames.slice(0, -1).join(', '), + typeImportNames.slice(-1)[0], + ].join(' and '), + }, + *fix(fixer) { + yield* fixToTypeImport(fixer, report, sourceImports); + }, + }); + } + } + } + }, + } + : { + // prefer no type imports + 'ImportDeclaration[importKind = "type"]'(node) { + context.report({ + node, + messageId: 'valueOverType', + fix(fixer) { + return fixToValueImport(fixer, node); + }, + }); + }, + })), (disallowTypeAnnotations + ? { + // disallow `import()` type + TSImportType(node) { + context.report({ + node, + messageId: 'noImportTypeAnnotations', + }); + }, + } + : {})); + function* fixToTypeImport(fixer, report, sourceImports) { + const { node } = report; + const defaultSpecifier = node.specifiers[0].type === experimental_utils_1.AST_NODE_TYPES.ImportDefaultSpecifier + ? node.specifiers[0] + : null; + const namespaceSpecifier = node.specifiers[0].type === experimental_utils_1.AST_NODE_TYPES.ImportNamespaceSpecifier + ? node.specifiers[0] + : null; + const namedSpecifiers = node.specifiers.filter((specifier) => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier); + if (namespaceSpecifier) { + // e.g. + // import * as types from 'foo' + yield* fixToTypeImportByInsertType(fixer, node, false); + return; + } + else if (defaultSpecifier) { + if (report.typeSpecifiers.includes(defaultSpecifier) && + namedSpecifiers.length === 0) { + // e.g. + // import Type from 'foo' + yield* fixToTypeImportByInsertType(fixer, node, true); + return; + } + } + else { + if (namedSpecifiers.every(specifier => report.typeSpecifiers.includes(specifier))) { + // e.g. + // import {Type1, Type2} from 'foo' + yield* fixToTypeImportByInsertType(fixer, node, false); + return; + } + } + const typeNamedSpecifiers = namedSpecifiers.filter(specifier => report.typeSpecifiers.includes(specifier)); + const fixesNamedSpecifiers = getFixesNamedSpecifiers(typeNamedSpecifiers, namedSpecifiers); + const afterFixes = []; + if (typeNamedSpecifiers.length) { + if (sourceImports.typeOnlyNamedImport) { + const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(sourceCode.getFirstToken(sourceImports.typeOnlyNamedImport), sourceImports.typeOnlyNamedImport.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', sourceImports.typeOnlyNamedImport.type)); + let insertText = fixesNamedSpecifiers.typeNamedSpecifiersText; + const before = sourceCode.getTokenBefore(closingBraceToken); + if (!util.isCommaToken(before) && !util.isOpeningBraceToken(before)) { + insertText = ',' + insertText; + } + // import type { Already, Type1, Type2 } from 'foo' + // ^^^^^^^^^^^^^ insert + const insertTypeNamedSpecifiers = fixer.insertTextBefore(closingBraceToken, insertText); + if (sourceImports.typeOnlyNamedImport.range[1] <= node.range[0]) { + yield insertTypeNamedSpecifiers; + } + else { + afterFixes.push(insertTypeNamedSpecifiers); + } + } + else { + yield fixer.insertTextBefore(node, `import type {${fixesNamedSpecifiers.typeNamedSpecifiersText}} from ${sourceCode.getText(node.source)};\n`); + } + } + if (defaultSpecifier && + report.typeSpecifiers.includes(defaultSpecifier)) { + if (typeNamedSpecifiers.length === namedSpecifiers.length) { + const importToken = util.nullThrows(sourceCode.getFirstToken(node, isImportToken), util.NullThrowsReasons.MissingToken('import', node.type)); + // import type Type from 'foo' + // ^^^^ insert + yield fixer.insertTextAfter(importToken, ' type'); + } + else { + yield fixer.insertTextBefore(node, `import type ${sourceCode.getText(defaultSpecifier)} from ${sourceCode.getText(node.source)};\n`); + // import Type , {...} from 'foo' + // ^^^^^^ remove + yield fixer.remove(defaultSpecifier); + yield fixer.remove(sourceCode.getTokenAfter(defaultSpecifier)); + } + } + yield* fixesNamedSpecifiers.removeTypeNamedSpecifiers; + yield* afterFixes; + /** + * Returns information for fixing named specifiers. + */ + function getFixesNamedSpecifiers(typeNamedSpecifiers, allNamedSpecifiers) { + const typeNamedSpecifiersTexts = []; + const removeTypeNamedSpecifiers = []; + if (typeNamedSpecifiers.length === allNamedSpecifiers.length) { + // e.g. + // import Foo, {Type1, Type2} from 'foo' + // import DefType, {Type1, Type2} from 'foo' + const openingBraceToken = util.nullThrows(sourceCode.getTokenBefore(typeNamedSpecifiers[0], util.isOpeningBraceToken), util.NullThrowsReasons.MissingToken('{', node.type)); + const commaToken = util.nullThrows(sourceCode.getTokenBefore(openingBraceToken, util.isCommaToken), util.NullThrowsReasons.MissingToken(',', node.type)); + const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(openingBraceToken, node.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', node.type)); + // import DefType, {...} from 'foo' + // ^^^^^^^ remove + removeTypeNamedSpecifiers.push(fixer.removeRange([ + commaToken.range[0], + closingBraceToken.range[1], + ])); + typeNamedSpecifiersTexts.push(sourceCode.text.slice(openingBraceToken.range[1], closingBraceToken.range[0])); + } + else { + const typeNamedSpecifierGroups = []; + let group = []; + for (const namedSpecifier of allNamedSpecifiers) { + if (typeNamedSpecifiers.includes(namedSpecifier)) { + group.push(namedSpecifier); + } + else if (group.length) { + typeNamedSpecifierGroups.push(group); + group = []; + } + } + if (group.length) { + typeNamedSpecifierGroups.push(group); + } + for (const namedSpecifiers of typeNamedSpecifierGroups) { + const { removeRange, textRange } = getNamedSpecifierRanges(namedSpecifiers, allNamedSpecifiers); + removeTypeNamedSpecifiers.push(fixer.removeRange(removeRange)); + typeNamedSpecifiersTexts.push(sourceCode.text.slice(...textRange)); + } + } + return { + typeNamedSpecifiersText: typeNamedSpecifiersTexts.join(','), + removeTypeNamedSpecifiers, + }; + } + /** + * Returns ranges for fixing named specifier. + */ + function getNamedSpecifierRanges(namedSpecifierGroup, allNamedSpecifiers) { + const first = namedSpecifierGroup[0]; + const last = namedSpecifierGroup[namedSpecifierGroup.length - 1]; + const removeRange = [first.range[0], last.range[1]]; + const textRange = [...removeRange]; + const before = sourceCode.getTokenBefore(first); + textRange[0] = before.range[1]; + if (util.isCommaToken(before)) { + removeRange[0] = before.range[0]; + } + else { + removeRange[0] = before.range[1]; + } + const isFirst = allNamedSpecifiers[0] === first; + const isLast = allNamedSpecifiers[allNamedSpecifiers.length - 1] === last; + const after = sourceCode.getTokenAfter(last); + textRange[1] = after.range[0]; + if (isFirst || isLast) { + if (util.isCommaToken(after)) { + removeRange[1] = after.range[1]; + } + } + return { + textRange, + removeRange, + }; + } + } + function* fixToTypeImportByInsertType(fixer, node, isDefaultImport) { + // import type Foo from 'foo' + // ^^^^^ insert + const importToken = util.nullThrows(sourceCode.getFirstToken(node, isImportToken), util.NullThrowsReasons.MissingToken('import', node.type)); + yield fixer.insertTextAfter(importToken, ' type'); + if (isDefaultImport) { + // Has default import + const openingBraceToken = sourceCode.getFirstTokenBetween(importToken, node.source, util.isOpeningBraceToken); + if (openingBraceToken) { + // Only braces. e.g. import Foo, {} from 'foo' + const commaToken = util.nullThrows(sourceCode.getTokenBefore(openingBraceToken, util.isCommaToken), util.NullThrowsReasons.MissingToken(',', node.type)); + const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(openingBraceToken, node.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', node.type)); + // import type Foo, {} from 'foo' + // ^^ remove + yield fixer.removeRange([ + commaToken.range[0], + closingBraceToken.range[1], + ]); + const specifiersText = sourceCode.text.slice(commaToken.range[1], closingBraceToken.range[1]); + if (node.specifiers.length > 1) { + // import type Foo from 'foo' + // import type {...} from 'foo' // <- insert + yield fixer.insertTextAfter(node, `\nimport type${specifiersText} from ${sourceCode.getText(node.source)};`); + } + } + } + } + function fixToValueImport(fixer, node) { + var _a, _b; + // import type Foo from 'foo' + // ^^^^ remove + const importToken = util.nullThrows(sourceCode.getFirstToken(node, isImportToken), util.NullThrowsReasons.MissingToken('import', node.type)); + const typeToken = util.nullThrows(sourceCode.getFirstTokenBetween(importToken, (_b = (_a = node.specifiers[0]) === null || _a === void 0 ? void 0 : _a.local) !== null && _b !== void 0 ? _b : node.source, isTypeToken), util.NullThrowsReasons.MissingToken('type', node.type)); + return fixer.remove(typeToken); + } + }, +}); +//# sourceMappingURL=consistent-type-imports.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map new file mode 100644 index 00000000..ce74bfdb --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map @@ -0,0 +1 @@ +{"version":3,"file":"consistent-type-imports.js","sourceRoot":"","sources":["../../src/rules/consistent-type-imports.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js new file mode 100644 index 00000000..a4a89d0a --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js @@ -0,0 +1,90 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const ts = __importStar(require("typescript")); +const dot_notation_1 = __importDefault(require("eslint/lib/rules/dot-notation")); +const util_1 = require("../util"); +exports.default = util_1.createRule({ + name: 'dot-notation', + meta: { + type: 'suggestion', + docs: { + description: 'enforce dot notation whenever possible', + category: 'Best Practices', + recommended: false, + extendsBaseRule: true, + requiresTypeChecking: true, + }, + schema: [ + { + type: 'object', + properties: { + allowKeywords: { + type: 'boolean', + default: true, + }, + allowPattern: { + type: 'string', + default: '', + }, + allowPrivateClassPropertyAccess: { + type: 'boolean', + default: false, + }, + }, + additionalProperties: false, + }, + ], + fixable: dot_notation_1.default.meta.fixable, + messages: dot_notation_1.default.meta.messages, + }, + defaultOptions: [ + { + allowPrivateClassPropertyAccess: false, + allowKeywords: true, + allowPattern: '', + }, + ], + create(context, [options]) { + const rules = dot_notation_1.default.create(context); + const allowPrivateClassPropertyAccess = options.allowPrivateClassPropertyAccess; + const parserServices = util_1.getParserServices(context); + const typeChecker = parserServices.program.getTypeChecker(); + return { + MemberExpression(node) { + var _a, _b, _c; + if (allowPrivateClassPropertyAccess && node.computed) { + // for perf reasons - only fetch the symbol if we have to + const objectSymbol = typeChecker.getSymbolAtLocation(parserServices.esTreeNodeToTSNodeMap.get(node.property)); + if (((_c = (_b = (_a = objectSymbol === null || objectSymbol === void 0 ? void 0 : objectSymbol.getDeclarations()) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.modifiers) === null || _c === void 0 ? void 0 : _c[0].kind) === + ts.SyntaxKind.PrivateKeyword) { + return; + } + } + rules.MemberExpression(node); + }, + }; + }, +}); +//# sourceMappingURL=dot-notation.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js.map new file mode 100644 index 00000000..297244e7 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dot-notation.js","sourceRoot":"","sources":["../../src/rules/dot-notation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,+CAAiC;AACjC,iFAAqD;AACrD,kCAKiB;AAKjB,kBAAe,iBAAU,CAAsB;IAC7C,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,IAAI;SAC3B;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,aAAa,EAAE;wBACb,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,IAAI;qBACd;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,EAAE;qBACZ;oBACD,+BAA+B,EAAE;wBAC/B,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,KAAK;qBACf;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;QACD,OAAO,EAAE,sBAAQ,CAAC,IAAI,CAAC,OAAO;QAC9B,QAAQ,EAAE,sBAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE;QACd;YACE,+BAA+B,EAAE,KAAK;YACtC,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,EAAE;SACjB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,KAAK,GAAG,sBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,+BAA+B,GACnC,OAAO,CAAC,+BAA+B,CAAC;QAE1C,MAAM,cAAc,GAAG,wBAAiB,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAE5D,OAAO;YACL,gBAAgB,CAAC,IAA+B;;gBAC9C,IAAI,+BAA+B,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACpD,yDAAyD;oBACzD,MAAM,YAAY,GAAG,WAAW,CAAC,mBAAmB,CAClD,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CACxD,CAAC;oBACF,IACE,mBAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,eAAe,4CAAK,CAAC,2CAAG,SAAS,0CAAG,CAAC,EAAE,IAAI;wBACzD,EAAE,CAAC,UAAU,CAAC,cAAc,EAC5B;wBACA,OAAO;qBACR;iBACF;gBACD,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js index 4bac6cc5..5f391680 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js @@ -1,12 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); const explicitReturnTypeUtils_1 = require("../util/explicitReturnTypeUtils"); exports.default = util.createRule({ @@ -16,7 +29,7 @@ exports.default = util.createRule({ docs: { description: 'Require explicit return types on functions and class methods', category: 'Stylistic Issues', - recommended: 'warn', + recommended: false, }, messages: { missingReturnType: 'Missing return type on function.', @@ -37,6 +50,9 @@ exports.default = util.createRule({ allowDirectConstAssertionInArrowFunctions: { type: 'boolean', }, + allowConciseArrowFunctionExpressionsStartingWithVoid: { + type: 'boolean', + }, }, additionalProperties: false, }, @@ -48,12 +64,20 @@ exports.default = util.createRule({ allowTypedFunctionExpressions: true, allowHigherOrderFunctions: true, allowDirectConstAssertionInArrowFunctions: true, + allowConciseArrowFunctionExpressionsStartingWithVoid: false, }, ], create(context, [options]) { const sourceCode = context.getSourceCode(); return { 'ArrowFunctionExpression, FunctionExpression'(node) { + if (options.allowConciseArrowFunctionExpressionsStartingWithVoid && + node.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression && + node.expression && + node.body.type === experimental_utils_1.AST_NODE_TYPES.UnaryExpression && + node.body.operator === 'void') { + return; + } explicitReturnTypeUtils_1.checkFunctionExpressionReturnType(node, options, sourceCode, loc => context.report({ node, loc, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map index 2cca7b63..6384a05e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map @@ -1 +1 @@ -{"version":3,"file":"explicit-function-return-type.js","sourceRoot":"","sources":["../../src/rules/explicit-function-return-type.ts"],"names":[],"mappings":";;;;;;;;;AACA,8CAAgC;AAChC,6EAGyC;AAYzC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,+BAA+B;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,8DAA8D;YAChE,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,MAAM;SACpB;QACD,QAAQ,EAAE;YACR,iBAAiB,EAAE,kCAAkC;SACtD;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,gBAAgB,EAAE;wBAChB,IAAI,EAAE,SAAS;qBAChB;oBACD,6BAA6B,EAAE;wBAC7B,IAAI,EAAE,SAAS;qBAChB;oBACD,yBAAyB,EAAE;wBACzB,IAAI,EAAE,SAAS;qBAChB;oBACD,yCAAyC,EAAE;wBACzC,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,gBAAgB,EAAE,KAAK;YACvB,6BAA6B,EAAE,IAAI;YACnC,yBAAyB,EAAE,IAAI;YAC/B,yCAAyC,EAAE,IAAI;SAChD;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,OAAO;YACL,6CAA6C,CAC3C,IAAoE;gBAEpE,2DAAiC,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CACjE,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,GAAG;oBACH,SAAS,EAAE,mBAAmB;iBAC/B,CAAC,CACH,CAAC;YACJ,CAAC;YACD,mBAAmB,CAAC,IAAI;gBACtB,iDAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CACvD,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,GAAG;oBACH,SAAS,EAAE,mBAAmB;iBAC/B,CAAC,CACH,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"explicit-function-return-type.js","sourceRoot":"","sources":["../../src/rules/explicit-function-return-type.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAChC,6EAGyC;AAazC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,+BAA+B;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,8DAA8D;YAChE,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,iBAAiB,EAAE,kCAAkC;SACtD;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,gBAAgB,EAAE;wBAChB,IAAI,EAAE,SAAS;qBAChB;oBACD,6BAA6B,EAAE;wBAC7B,IAAI,EAAE,SAAS;qBAChB;oBACD,yBAAyB,EAAE;wBACzB,IAAI,EAAE,SAAS;qBAChB;oBACD,yCAAyC,EAAE;wBACzC,IAAI,EAAE,SAAS;qBAChB;oBACD,oDAAoD,EAAE;wBACpD,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,gBAAgB,EAAE,KAAK;YACvB,6BAA6B,EAAE,IAAI;YACnC,yBAAyB,EAAE,IAAI;YAC/B,yCAAyC,EAAE,IAAI;YAC/C,oDAAoD,EAAE,KAAK;SAC5D;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,OAAO;YACL,6CAA6C,CAC3C,IAAoE;gBAEpE,IACE,OAAO,CAAC,oDAAoD;oBAC5D,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,uBAAuB;oBACpD,IAAI,CAAC,UAAU;oBACf,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe;oBACjD,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,EAC7B;oBACA,OAAO;iBACR;gBAED,2DAAiC,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CACjE,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,GAAG;oBACH,SAAS,EAAE,mBAAmB;iBAC/B,CAAC,CACH,CAAC;YACJ,CAAC;YACD,mBAAmB,CAAC,IAAI;gBACtB,iDAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CACvD,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,GAAG;oBACH,SAAS,EAAE,mBAAmB;iBAC/B,CAAC,CACH,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js index 3e48adb1..d6d70630 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -56,14 +68,14 @@ exports.default = util.createRule({ create(context, [option]) { var _a, _b, _c, _d, _e, _f, _g, _h; const sourceCode = context.getSourceCode(); - const baseCheck = (_a = option.accessibility, (_a !== null && _a !== void 0 ? _a : 'explicit')); - const overrides = (_b = option.overrides, (_b !== null && _b !== void 0 ? _b : {})); - const ctorCheck = (_c = overrides.constructors, (_c !== null && _c !== void 0 ? _c : baseCheck)); - const accessorCheck = (_d = overrides.accessors, (_d !== null && _d !== void 0 ? _d : baseCheck)); - const methodCheck = (_e = overrides.methods, (_e !== null && _e !== void 0 ? _e : baseCheck)); - const propCheck = (_f = overrides.properties, (_f !== null && _f !== void 0 ? _f : baseCheck)); - const paramPropCheck = (_g = overrides.parameterProperties, (_g !== null && _g !== void 0 ? _g : baseCheck)); - const ignoredMethodNames = new Set((_h = option.ignoredMethodNames, (_h !== null && _h !== void 0 ? _h : []))); + const baseCheck = (_a = option.accessibility) !== null && _a !== void 0 ? _a : 'explicit'; + const overrides = (_b = option.overrides) !== null && _b !== void 0 ? _b : {}; + const ctorCheck = (_c = overrides.constructors) !== null && _c !== void 0 ? _c : baseCheck; + const accessorCheck = (_d = overrides.accessors) !== null && _d !== void 0 ? _d : baseCheck; + const methodCheck = (_e = overrides.methods) !== null && _e !== void 0 ? _e : baseCheck; + const propCheck = (_f = overrides.properties) !== null && _f !== void 0 ? _f : baseCheck; + const paramPropCheck = (_g = overrides.parameterProperties) !== null && _g !== void 0 ? _g : baseCheck; + const ignoredMethodNames = new Set((_h = option.ignoredMethodNames) !== null && _h !== void 0 ? _h : []); /** * Generates the report for rule violations */ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map index feac814f..ba2416f7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js.map @@ -1 +1 @@ -{"version":3,"file":"explicit-member-accessibility.js","sourceRoot":"","sources":["../../src/rules/explicit-member-accessibility.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAK+C;AAC/C,8CAAgC;AAuBhC,MAAM,kBAAkB,GAAG,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;AAEtE,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,+BAA+B;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,0EAA0E;YAC5E,QAAQ,EAAE,kBAAkB;YAC5B,oCAAoC;YACpC,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,oBAAoB,EAClB,sDAAsD;YACxD,2BAA2B,EACzB,qDAAqD;SACxD;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,aAAa,EAAE,kBAAkB;oBACjC,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,SAAS,EAAE,kBAAkB;4BAC7B,YAAY,EAAE,kBAAkB;4BAChC,OAAO,EAAE,kBAAkB;4BAC3B,UAAU,EAAE,kBAAkB;4BAC9B,mBAAmB,EAAE,kBAAkB;yBACxC;wBAED,oBAAoB,EAAE,KAAK;qBAC5B;oBACD,kBAAkB,EAAE;wBAClB,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;IAC/C,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;;QACtB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,SAAS,SAAuB,MAAM,CAAC,aAAa,uCAAI,UAAU,EAAA,CAAC;QACzE,MAAM,SAAS,SAAG,MAAM,CAAC,SAAS,uCAAI,EAAE,EAAA,CAAC;QACzC,MAAM,SAAS,SAAG,SAAS,CAAC,YAAY,uCAAI,SAAS,EAAA,CAAC;QACtD,MAAM,aAAa,SAAG,SAAS,CAAC,SAAS,uCAAI,SAAS,EAAA,CAAC;QACvD,MAAM,WAAW,SAAG,SAAS,CAAC,OAAO,uCAAI,SAAS,EAAA,CAAC;QACnD,MAAM,SAAS,SAAG,SAAS,CAAC,UAAU,uCAAI,SAAS,EAAA,CAAC;QACpD,MAAM,cAAc,SAAG,SAAS,CAAC,mBAAmB,uCAAI,SAAS,EAAA,CAAC;QAClE,MAAM,kBAAkB,GAAG,IAAI,GAAG,OAAC,MAAM,CAAC,kBAAkB,uCAAI,EAAE,GAAC,CAAC;QACpE;;WAEG;QACH,SAAS,WAAW,CAClB,SAAqB,EACrB,QAAgB,EAChB,IAAmB,EACnB,QAAgB,EAChB,MAAyC,IAAI;YAE7C,OAAO,CAAC,MAAM,CAAC;gBACb,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,SAAS;gBACpB,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ;iBACf;gBACD,GAAG,EAAE,GAAG;aACT,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,SAAS,gCAAgC,CACvC,gBAA2C;YAE3C,IAAI,QAAQ,GAAG,mBAAmB,CAAC;YACnC,IAAI,KAAK,GAAG,SAAS,CAAC;YACtB,QAAQ,gBAAgB,CAAC,IAAI,EAAE;gBAC7B,KAAK,QAAQ;oBACX,KAAK,GAAG,WAAW,CAAC;oBACpB,MAAM;gBACR,KAAK,aAAa;oBAChB,KAAK,GAAG,SAAS,CAAC;oBAClB,MAAM;gBACR,KAAK,KAAK,CAAC;gBACX,KAAK,KAAK;oBACR,KAAK,GAAG,aAAa,CAAC;oBACtB,QAAQ,GAAG,GAAG,gBAAgB,CAAC,IAAI,oBAAoB,CAAC;oBACxD,MAAM;aACT;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAExE,IAAI,KAAK,KAAK,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;gBACzD,OAAO;aACR;YAED,IACE,KAAK,KAAK,WAAW;gBACrB,gBAAgB,CAAC,aAAa,KAAK,QAAQ,EAC3C;gBACA,WAAW,CACT,6BAA6B,EAC7B,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,mCAAmC,CAAC,gBAAgB,CAAC,CACtD,CAAC;aACH;iBAAM,IAAI,KAAK,KAAK,UAAU,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE;gBAClE,WAAW,CACT,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EAChB,UAAU,CACX,CAAC;aACH;QACH,CAAC;QAED;;WAEG;QACH,SAAS,mCAAmC,CAC1C,IAGgC;YAEhC,OAAO,UAAS,KAAyB;gBACvC,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,aAAiC,CAAC;gBACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACtC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBACxB,IACE,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,OAAO;wBACtC,KAAK,CAAC,KAAK,KAAK,QAAQ,EACxB;wBACA,MAAM,yBAAyB,GAAG,UAAU,CAAC,gBAAgB,CAC3D,KAAK,CACN,CAAC;wBACF,IAAI,yBAAyB,CAAC,MAAM,EAAE;4BACpC,sCAAsC;4BACtC,UAAU;4BACV,aAAa,GAAG;gCACd,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gCACd,yBAAyB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;6BACtC,CAAC;4BACF,MAAM;yBACP;6BAAM;4BACL,sBAAsB;4BACtB,UAAU;4BACV,aAAa,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;4BACzD,MAAM;yBACP;qBACF;iBACF;gBACD,OAAO,KAAK,CAAC,WAAW,CAAC,aAAc,CAAC,CAAC;YAC3C,CAAC,CAAC;QACJ,CAAC;QAED;;;WAGG;QACH,SAAS,kCAAkC,CACzC,aAAqC;YAErC,MAAM,QAAQ,GAAG,gBAAgB,CAAC;YAElC,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YACvE,IACE,SAAS,KAAK,WAAW;gBACzB,aAAa,CAAC,aAAa,KAAK,QAAQ,EACxC;gBACA,WAAW,CACT,6BAA6B,EAC7B,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,mCAAmC,CAAC,aAAa,CAAC,CACnD,CAAC;aACH;iBAAM,IAAI,SAAS,KAAK,UAAU,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;gBACnE,WAAW,CACT,sBAAsB,EACtB,QAAQ,EACR,aAAa,EACb,YAAY,CACb,CAAC;aACH;QACH,CAAC;QAED;;;WAGG;QACH,SAAS,2CAA2C,CAClD,IAAkC;YAElC,MAAM,QAAQ,GAAG,oBAAoB,CAAC;YACtC,0DAA0D;YAC1D,IACE,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;gBACjD,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB,EACxD;gBACA,OAAO;aACR;YAED,MAAM,QAAQ,GACZ,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;gBAC/C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI;gBACrB,CAAC,CAAC,qDAAqD;oBACpD,IAAI,CAAC,SAAS,CAAC,IAA4B,CAAC,IAAI,CAAC;YAExD,QAAQ,cAAc,EAAE;gBACtB,KAAK,UAAU,CAAC,CAAC;oBACf,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;wBACvB,WAAW,CAAC,sBAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;qBAC/D;oBACD,MAAM;iBACP;gBACD,KAAK,WAAW,CAAC,CAAC;oBAChB,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;wBACpD,WAAW,CACT,6BAA6B,EAC7B,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,mCAAmC,CAAC,IAAI,CAAC,CAC1C,CAAC;qBACH;oBACD,MAAM;iBACP;aACF;QACH,CAAC;QAED,OAAO;YACL,mBAAmB,EAAE,2CAA2C;YAChE,aAAa,EAAE,kCAAkC;YACjD,gBAAgB,EAAE,gCAAgC;SACnD,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"explicit-member-accessibility.js","sourceRoot":"","sources":["../../src/rules/explicit-member-accessibility.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js index 2b982e09..61858dcc 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -17,20 +29,20 @@ exports.default = util.createRule({ docs: { description: "Require explicit return and argument types on exported functions' and classes' public class methods", category: 'Stylistic Issues', - recommended: false, + recommended: 'warn', }, messages: { missingReturnType: 'Missing return type on function.', missingArgType: "Argument '{{name}}' should be typed.", + missingArgTypeUnnamed: '{{type}} argument should be typed.', + anyTypedArg: "Argument '{{name}}' should be typed with a non-any type.", + anyTypedArgUnnamed: '{{type}} argument should be typed with a non-any type.', }, schema: [ { type: 'object', properties: { - allowTypedFunctionExpressions: { - type: 'boolean', - }, - allowHigherOrderFunctions: { + allowArgumentsExplicitlyTypedAsAny: { type: 'boolean', }, allowDirectConstAssertionInArrowFunctions: { @@ -42,6 +54,16 @@ exports.default = util.createRule({ type: 'string', }, }, + allowHigherOrderFunctions: { + type: 'boolean', + }, + allowTypedFunctionExpressions: { + type: 'boolean', + }, + // DEPRECATED - To be removed in next major + shouldTrackReferences: { + type: 'boolean', + }, }, additionalProperties: false, }, @@ -49,57 +71,124 @@ exports.default = util.createRule({ }, defaultOptions: [ { - allowTypedFunctionExpressions: true, - allowHigherOrderFunctions: true, + allowArgumentsExplicitlyTypedAsAny: false, allowDirectConstAssertionInArrowFunctions: true, allowedNames: [], + allowHigherOrderFunctions: true, + allowTypedFunctionExpressions: true, }, ], create(context, [options]) { const sourceCode = context.getSourceCode(); - function isUnexported(node) { - let isReturnedValue = false; - while (node) { - if (node.type === experimental_utils_1.AST_NODE_TYPES.ExportDefaultDeclaration || - node.type === experimental_utils_1.AST_NODE_TYPES.ExportNamedDeclaration || - node.type === experimental_utils_1.AST_NODE_TYPES.ExportSpecifier) { - return false; + // tracks all of the functions we've already checked + const checkedFunctions = new Set(); + // tracks functions that were found whilst traversing + const foundFunctions = []; + // all nodes visited, avoids infinite recursion for cyclic references + // (such as class member referring to itself) + const alreadyVisited = new Set(); + /* + # How the rule works: + + As the rule traverses the AST, it immediately checks every single function that it finds is exported. + "exported" means that it is either directly exported, or that its name is exported. + + It also collects a list of every single function it finds on the way, but does not check them. + After it's finished traversing the AST, it then iterates through the list of found functions, and checks to see if + any of them are part of a higher-order function + */ + return { + ExportDefaultDeclaration(node) { + checkNode(node.declaration); + }, + 'ExportNamedDeclaration:not([source])'(node) { + if (node.declaration) { + checkNode(node.declaration); } - if (node.type === experimental_utils_1.AST_NODE_TYPES.JSXExpressionContainer) { - return true; + else { + for (const specifier of node.specifiers) { + followReference(specifier.local); + } } - if (node.type === experimental_utils_1.AST_NODE_TYPES.ReturnStatement) { - isReturnedValue = true; + }, + TSExportAssignment(node) { + checkNode(node.expression); + }, + 'ArrowFunctionExpression, FunctionDeclaration, FunctionExpression'(node) { + foundFunctions.push(node); + }, + 'Program:exit'() { + for (const func of foundFunctions) { + if (isExportedHigherOrderFunction(func)) { + checkNode(func); + } } - if (node.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration || - node.type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression) { - isReturnedValue = false; + }, + }; + function checkParameters(node) { + function checkParameter(param) { + function report(namedMessageId, unnamedMessageId) { + if (param.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { + context.report({ + node: param, + messageId: namedMessageId, + data: { name: param.name }, + }); + } + else if (param.type === experimental_utils_1.AST_NODE_TYPES.ArrayPattern) { + context.report({ + node: param, + messageId: unnamedMessageId, + data: { type: 'Array pattern' }, + }); + } + else if (param.type === experimental_utils_1.AST_NODE_TYPES.ObjectPattern) { + context.report({ + node: param, + messageId: unnamedMessageId, + data: { type: 'Object pattern' }, + }); + } + else if (param.type === experimental_utils_1.AST_NODE_TYPES.RestElement) { + if (param.argument.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { + context.report({ + node: param, + messageId: namedMessageId, + data: { name: param.argument.name }, + }); + } + else { + context.report({ + node: param, + messageId: unnamedMessageId, + data: { type: 'Rest' }, + }); + } + } } - if (node.type === experimental_utils_1.AST_NODE_TYPES.BlockStatement && !isReturnedValue) { - return true; + switch (param.type) { + case experimental_utils_1.AST_NODE_TYPES.ArrayPattern: + case experimental_utils_1.AST_NODE_TYPES.Identifier: + case experimental_utils_1.AST_NODE_TYPES.ObjectPattern: + case experimental_utils_1.AST_NODE_TYPES.RestElement: + if (!param.typeAnnotation) { + report('missingArgType', 'missingArgTypeUnnamed'); + } + else if (options.allowArgumentsExplicitlyTypedAsAny !== true && + param.typeAnnotation.typeAnnotation.type === + experimental_utils_1.AST_NODE_TYPES.TSAnyKeyword) { + report('anyTypedArg', 'anyTypedArgUnnamed'); + } + return; + case experimental_utils_1.AST_NODE_TYPES.TSParameterProperty: + return checkParameter(param.parameter); + case experimental_utils_1.AST_NODE_TYPES.AssignmentPattern: // ignored as it has a type via its assignment + return; } - node = node.parent; } - return true; - } - function isArgumentUntyped(node) { - return (!node.typeAnnotation || - node.typeAnnotation.typeAnnotation.type === experimental_utils_1.AST_NODE_TYPES.TSAnyKeyword); - } - /** - * Checks if a function declaration/expression has a return type. - */ - function checkArguments(node) { - const paramIdentifiers = node.params.filter(util.isIdentifier); - const untypedArgs = paramIdentifiers.filter(isArgumentUntyped); - untypedArgs.forEach(untypedArg => context.report({ - node, - messageId: 'missingArgType', - data: { - name: untypedArg.name, - }, - })); + for (const arg of node.params) { + checkParameter(arg); + } } /** * Checks if a function name is allowed and should not be checked. @@ -128,38 +217,196 @@ exports.default = util.createRule({ } return false; } - return { - 'ArrowFunctionExpression, FunctionExpression'(node) { - var _a; - if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && - node.parent.accessibility === 'private') { - // don't check private methods as they aren't part of the public signature - return; + function isExportedHigherOrderFunction(node) { + var _a; + let current = node.parent; + while (current) { + if (current.type === experimental_utils_1.AST_NODE_TYPES.ReturnStatement) { + // the parent of a return will always be a block statement, so we can skip over it + current = (_a = current.parent) === null || _a === void 0 ? void 0 : _a.parent; + continue; } - if (isAllowedName(node.parent) || - isUnexported(node) || - explicitReturnTypeUtils_1.isTypedFunctionExpression(node, options)) { - return; + if (!util.isFunction(current) || + !explicitReturnTypeUtils_1.doesImmediatelyReturnFunctionExpression(current)) { + return false; } - explicitReturnTypeUtils_1.checkFunctionExpressionReturnType(node, options, sourceCode, loc => context.report({ + if (checkedFunctions.has(current)) { + return true; + } + current = current.parent; + } + return false; + } + function followReference(node) { + const scope = context.getScope(); + const variable = scope.set.get(node.name); + /* istanbul ignore if */ if (!variable) { + return; + } + // check all of the definitions + for (const definition of variable.defs) { + // cases we don't care about in this rule + if (definition.type === 'ImplicitGlobalVariable' || + definition.type === 'ImportBinding' || + // eslint-disable-next-line @typescript-eslint/internal/prefer-ast-types-enum + definition.type === 'CatchClause' || + definition.type === 'Parameter') { + continue; + } + checkNode(definition.node); + } + // follow references to find writes to the variable + for (const reference of variable.references) { + if ( + // we don't want to check the initialization ref, as this is handled by the declaration check + !reference.init && + reference.writeExpr) { + checkNode(reference.writeExpr); + } + } + } + function checkNode(node) { + if (node == null || alreadyVisited.has(node)) { + return; + } + alreadyVisited.add(node); + switch (node.type) { + case experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression: + case experimental_utils_1.AST_NODE_TYPES.FunctionExpression: + return checkFunctionExpression(node); + case experimental_utils_1.AST_NODE_TYPES.ArrayExpression: + for (const element of node.elements) { + checkNode(element); + } + return; + case experimental_utils_1.AST_NODE_TYPES.ClassProperty: + case experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty: + if (node.accessibility === 'private') { + return; + } + return checkNode(node.value); + case experimental_utils_1.AST_NODE_TYPES.ClassDeclaration: + case experimental_utils_1.AST_NODE_TYPES.ClassExpression: + for (const element of node.body.body) { + checkNode(element); + } + return; + case experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration: + return checkFunction(node); + case experimental_utils_1.AST_NODE_TYPES.MethodDefinition: + case experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition: + if (node.accessibility === 'private') { + return; + } + return checkNode(node.value); + case experimental_utils_1.AST_NODE_TYPES.Identifier: + return followReference(node); + case experimental_utils_1.AST_NODE_TYPES.ObjectExpression: + for (const property of node.properties) { + checkNode(property); + } + return; + case experimental_utils_1.AST_NODE_TYPES.Property: + return checkNode(node.value); + case experimental_utils_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression: + return checkEmptyBodyFunctionExpression(node); + case experimental_utils_1.AST_NODE_TYPES.VariableDeclaration: + for (const declaration of node.declarations) { + checkNode(declaration); + } + return; + case experimental_utils_1.AST_NODE_TYPES.VariableDeclarator: + return checkNode(node.init); + } + } + /** + * Check whether any ancestor of the provided function has a valid return type. + * This function assumes that the function either: + * - belongs to an exported function chain validated by isExportedHigherOrderFunction + * - is directly exported itself + */ + function ancestorHasReturnType(node) { + let ancestor = node.parent; + // if the ancestor is not a return, then this function was not returned at all, so we can exit early + const isReturnStatement = (ancestor === null || ancestor === void 0 ? void 0 : ancestor.type) === experimental_utils_1.AST_NODE_TYPES.ReturnStatement; + const isBodylessArrow = (ancestor === null || ancestor === void 0 ? void 0 : ancestor.type) === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression && + ancestor.body.type !== experimental_utils_1.AST_NODE_TYPES.BlockStatement; + if (!isReturnStatement && !isBodylessArrow) { + return false; + } + while (ancestor) { + switch (ancestor.type) { + case experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression: + case experimental_utils_1.AST_NODE_TYPES.FunctionExpression: + case experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration: + if (ancestor.returnType) { + return true; + } + // assume + break; + // const x: Foo = () => {}; + // Assume that a typed variable types the function expression + case experimental_utils_1.AST_NODE_TYPES.VariableDeclarator: + if (ancestor.id.typeAnnotation) { + return true; + } + break; + } + ancestor = ancestor.parent; + } + return false; + } + function checkEmptyBodyFunctionExpression(node) { + var _a, _b, _c; + const isConstructor = ((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && + node.parent.kind === 'constructor'; + const isSetAccessor = (((_b = node.parent) === null || _b === void 0 ? void 0 : _b.type) === experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition || + ((_c = node.parent) === null || _c === void 0 ? void 0 : _c.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition) && + node.parent.kind === 'set'; + if (!isConstructor && !isSetAccessor && !node.returnType) { + context.report({ + node, + messageId: 'missingReturnType', + }); + } + checkParameters(node); + } + function checkFunctionExpression(node) { + if (checkedFunctions.has(node)) { + return; + } + checkedFunctions.add(node); + if (isAllowedName(node.parent) || + explicitReturnTypeUtils_1.isTypedFunctionExpression(node, options) || + ancestorHasReturnType(node)) { + return; + } + explicitReturnTypeUtils_1.checkFunctionExpressionReturnType(node, options, sourceCode, loc => { + context.report({ node, loc, messageId: 'missingReturnType', - })); - checkArguments(node); - }, - FunctionDeclaration(node) { - if (isAllowedName(node.parent) || isUnexported(node)) { - return; - } - explicitReturnTypeUtils_1.checkFunctionReturnType(node, options, sourceCode, loc => context.report({ + }); + }); + checkParameters(node); + } + function checkFunction(node) { + if (checkedFunctions.has(node)) { + return; + } + checkedFunctions.add(node); + if (isAllowedName(node.parent) || ancestorHasReturnType(node)) { + return; + } + explicitReturnTypeUtils_1.checkFunctionReturnType(node, options, sourceCode, loc => { + context.report({ node, loc, messageId: 'missingReturnType', - })); - checkArguments(node); - }, - }; + }); + }); + checkParameters(node); + } }, }); //# sourceMappingURL=explicit-module-boundary-types.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map index 5f6e0d53..564b7928 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js.map @@ -1 +1 @@ -{"version":3,"file":"explicit-module-boundary-types.js","sourceRoot":"","sources":["../../src/rules/explicit-module-boundary-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"explicit-module-boundary-types.js","sourceRoot":"","sources":["../../src/rules/explicit-module-boundary-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js index 02c709f6..ab51deea 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js @@ -1,13 +1,24 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const eslint_utils_1 = require("eslint-utils"); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'func-call-spacing', @@ -54,7 +65,8 @@ exports.default = util.createRule({ ], }, messages: { - unexpected: 'Unexpected space or newline between function name and paren.', + unexpectedWhitespace: 'Unexpected whitespace between function name and paren.', + unexpectedNewline: 'Unexpected newline between function name and paren.', missing: 'Missing space between function name and paren.', }, }, @@ -70,10 +82,10 @@ exports.default = util.createRule({ */ function checkSpacing(node) { var _a; - const isOptionalCall = util.isOptionalOptionalChain(node); + const isOptionalCall = util.isOptionalCallExpression(node); const closingParenToken = sourceCode.getLastToken(node); - const lastCalleeTokenWithoutPossibleParens = sourceCode.getLastToken((_a = node.typeParameters, (_a !== null && _a !== void 0 ? _a : node.callee))); - const openingParenToken = sourceCode.getFirstTokenBetween(lastCalleeTokenWithoutPossibleParens, closingParenToken, eslint_utils_1.isOpeningParenToken); + const lastCalleeTokenWithoutPossibleParens = sourceCode.getLastToken((_a = node.typeParameters) !== null && _a !== void 0 ? _a : node.callee); + const openingParenToken = sourceCode.getFirstTokenBetween(lastCalleeTokenWithoutPossibleParens, closingParenToken, util.isOpeningParenToken); if (!openingParenToken || openingParenToken.range[1] >= node.range[1]) { // new expression with no parens... return; @@ -89,7 +101,7 @@ exports.default = util.createRule({ return context.report({ node, loc: lastCalleeToken.loc.start, - messageId: 'unexpected', + messageId: 'unexpectedWhitespace', fix(fixer) { /* * Only autofix if there is no newline @@ -117,7 +129,7 @@ exports.default = util.createRule({ context.report({ node, loc: lastCalleeToken.loc.start, - messageId: 'unexpected', + messageId: 'unexpectedWhitespace', }); } } @@ -136,7 +148,7 @@ exports.default = util.createRule({ context.report({ node, loc: lastCalleeToken.loc.start, - messageId: 'unexpected', + messageId: 'unexpectedNewline', fix(fixer) { return fixer.replaceTextRange([lastCalleeToken.range[1], openingParenToken.range[0]], ' '); }, @@ -146,7 +158,6 @@ exports.default = util.createRule({ } return { CallExpression: checkSpacing, - OptionalCallExpression: checkSpacing, NewExpression: checkSpacing, }; }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map index e03cb08f..a677e9d2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/func-call-spacing.js.map @@ -1 +1 @@ -{"version":3,"file":"func-call-spacing.js","sourceRoot":"","sources":["../../src/rules/func-call-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"func-call-spacing.js","sourceRoot":"","sources":["../../src/rules/func-call-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/generic-type-naming.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/generic-type-naming.js deleted file mode 100644 index c7da0b08..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/generic-type-naming.js +++ /dev/null @@ -1,55 +0,0 @@ -"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 }); -const util = __importStar(require("../util")); -exports.default = util.createRule({ - name: 'generic-type-naming', - meta: { - type: 'suggestion', - docs: { - description: 'Enforces naming of generic type variables', - category: 'Stylistic Issues', - // too opinionated to be recommended - recommended: false, - }, - deprecated: true, - replacedBy: ['naming-convention'], - messages: { - paramNotMatchRule: 'Type parameter {{name}} does not match rule {{rule}}.', - }, - schema: [ - { - type: 'string', - }, - ], - }, - defaultOptions: [ - // Matches: T , TA , TAbc , TA1Bca , T1 , T2 - '^T([A-Z0-9][a-zA-Z0-9]*){0,1}$', - ], - create(context, [rule]) { - const regex = new RegExp(rule); - return { - TSTypeParameter(node) { - const name = node.name.name; - if (name && !regex.test(name)) { - context.report({ - node, - messageId: 'paramNotMatchRule', - data: { - name, - rule, - }, - }); - } - }, - }; - }, -}); -//# sourceMappingURL=generic-type-naming.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/generic-type-naming.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/generic-type-naming.js.map deleted file mode 100644 index 3dc33ca9..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/generic-type-naming.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"generic-type-naming.js","sourceRoot":"","sources":["../../src/rules/generic-type-naming.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,kBAAkB;YAC5B,oCAAoC;YACpC,WAAW,EAAE,KAAK;SACnB;QACD,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,CAAC,mBAAmB,CAAC;QACjC,QAAQ,EAAE;YACR,iBAAiB,EACf,uDAAuD;SAC1D;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;aACf;SACF;KACF;IACD,cAAc,EAAE;QACd,4CAA4C;QAC5C,gCAAgC;KACjC;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;QACpB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAK,CAAC,CAAC;QAEhC,OAAO;YACL,eAAe,CAAC,IAAI;gBAClB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAE5B,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC7B,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,mBAAmB;wBAC9B,IAAI,EAAE;4BACJ,IAAI;4BACJ,IAAI;yBACL;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js index f9d4b5f4..9ae71062 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js @@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.BinarySearchTree = void 0; const functional_red_black_tree_1 = __importDefault(require("functional-red-black-tree")); /** * A mutable balanced binary search tree that stores (key, value) pairs. The keys are numeric, and must be unique. diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js.map index 1101ca45..6f0c20ea 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/BinarySearchTree.js.map @@ -1 +1 @@ -{"version":3,"file":"BinarySearchTree.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/BinarySearchTree.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,kGAAkG;;;;;AAGlG,0FAAmD;AASnD;;;;GAIG;AACH,MAAa,gBAAgB;IAA7B;QACU,WAAM,GAAG,mCAAU,EAAa,CAAC;IAwC3C,CAAC;IAtCC;;OAEG;IACI,MAAM,CAAC,GAAW,EAAE,KAAgB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,QAAQ,CAAC,KAAK,EAAE;YAClB,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACtC;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SAC9C;IACH,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,GAAW;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAErC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;IACtD,CAAC;IAED;;OAEG;IACI,WAAW,CAAC,KAAa,EAAE,GAAW;QAC3C,+DAA+D;QAC/D,IAAI,KAAK,KAAK,GAAG,EAAE;YACjB,OAAO;SACR;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAEvC,OAAO,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,GAAG,GAAG,EAAE;YAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,EAAE,CAAC;SACjB;IACH,CAAC;CACF;AAzCD,4CAyCC"} \ No newline at end of file +{"version":3,"file":"BinarySearchTree.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/BinarySearchTree.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,kGAAkG;;;;;;AAGlG,0FAAmD;AASnD;;;;GAIG;AACH,MAAa,gBAAgB;IAA7B;QACU,WAAM,GAAG,mCAAU,EAAa,CAAC;IAwC3C,CAAC;IAtCC;;OAEG;IACI,MAAM,CAAC,GAAW,EAAE,KAAgB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,QAAQ,CAAC,KAAK,EAAE;YAClB,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACtC;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SAC9C;IACH,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,GAAW;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAErC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;IACtD,CAAC;IAED;;OAEG;IACI,WAAW,CAAC,KAAa,EAAE,GAAW;QAC3C,+DAA+D;QAC/D,IAAI,KAAK,KAAK,GAAG,EAAE;YACjB,OAAO;SACR;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAEvC,OAAO,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,GAAG,GAAG,EAAE;YAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,EAAE,CAAC;SACjB;IACH,CAAC;CACF;AAzCD,4CAyCC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js index 7a2fdf16..a48651d8 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js @@ -2,6 +2,7 @@ // The following code is adapted from the the code in eslint. // License: https://github.com/eslint/eslint/blob/48700fc8408f394887cdedd071b22b757700fdcb/LICENSE Object.defineProperty(exports, "__esModule", { value: true }); +exports.OffsetStorage = void 0; const BinarySearchTree_1 = require("./BinarySearchTree"); /** * A class to store information on desired offsets of tokens from each other diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js.map index 74d053e5..dc3aa667 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/OffsetStorage.js.map @@ -1 +1 @@ -{"version":3,"file":"OffsetStorage.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/OffsetStorage.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,kGAAkG;;AAGlG,yDAI4B;AAG5B;;GAEG;AACH,MAAa,aAAa;IAQxB;;;;OAIG;IACH,YAAY,SAAoB,EAAE,UAAkB,EAAE,UAAkB;QACtE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,IAAI,CAAC,IAAI,GAAG,IAAI,mCAAgB,EAAE,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAE7D,IAAI,CAAC,iBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC,kBAAkB,GAAG,IAAI,OAAO,EAAE,CAAC;QACxC,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,EAAE,CAAC;IACrC,CAAC;IAEO,mBAAmB,CAAC,KAAqB;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChD,CAAC;IAED;;;;;;OAMG;IACI,aAAa,CAClB,SAAyB,EACzB,WAA2B;QAE3B;;;;;;WAMG;QACH,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACI,gBAAgB,CACrB,KAAqB,EACrB,SAAgC,EAChC,MAAc;QAEd,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACI,iBAAiB,CACtB,KAAuB,EACvB,SAAgC,EAChC,MAAM,GAAG,CAAC,EACV,KAAK,GAAG,KAAK;QAEb;;;;;;;;;;;;;WAaG;QAEH,MAAM,kBAAkB,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAE9D,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE9D,MAAM,kBAAkB,GACtB,SAAS;YACT,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAC9B,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,kFAAkF;QAClF,MAAM,mBAAmB,GAAG,kBAAkB;YAC5C,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAU,CAAC;YACtC,CAAC,CAAC,IAAI,CAAC;QAET,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9C,iDAAiD;QACjD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAE/C;;;WAGG;QACH,IAAI,kBAAkB,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,mBAAoB,CAAC,CAAC;YAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;SAC3D;QAED;;;WAGG;QACH,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,KAAqB;QAC3C,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACvC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACjC;;;mBAGG;gBACH,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACzB,KAAK,EACL,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CACrC,CAAC;aACH;iBAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;gBAEtD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACzB,KAAK;gBAEL,6CAA6C;gBAC7C,IAAI,CAAC,gBAAgB,CACnB,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAC/C;oBACC,8EAA8E;oBAC9E,IAAI,CAAC,UAAU,CAAC,MAAM,CACpB,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM;wBACzB,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAClE,CACJ,CAAC;aACH;iBAAM;gBACL,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,MAAM,GACV,UAAU,CAAC,IAAI;oBACf,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI;oBACvD,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC7B,CAAC,UAAU,CAAC,KAAK;oBACf,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;gBAE1C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACzB,KAAK,EACL,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CACjC,CAAC;aACH;SACF;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAqB;QAC/B,IAAI,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE;YAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAC/B;IACH,CAAC;IAQD,kBAAkB,CAAC,KAAqB;QACtC,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;CACF;AA1QD,sCA0QC"} \ No newline at end of file +{"version":3,"file":"OffsetStorage.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/OffsetStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js index 7fb64dd3..5da8a48b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js @@ -2,6 +2,7 @@ // The following code is adapted from the the code in eslint. // License: https://github.com/eslint/eslint/blob/48700fc8408f394887cdedd071b22b757700fdcb/LICENSE Object.defineProperty(exports, "__esModule", { value: true }); +exports.TokenInfo = void 0; /** * A helper class to get token-based info related to indentation */ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js.map index 2c96727e..7bc04ad4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/TokenInfo.js.map @@ -1 +1 @@ -{"version":3,"file":"TokenInfo.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/TokenInfo.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,kGAAkG;;AAKlG;;GAEG;AACH,MAAa,SAAS;IAIpB,YAAY,UAA+B;QACzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAChE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACb,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAClC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACtC;YACD,IACE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC5B,UAAU,CAAC,IAAI;qBACZ,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;qBAC5D,IAAI,EAAE,EACT;gBACA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACpC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EACD,IAAI,GAAG,EAAE,CACV,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,mBAAmB,CACxB,KAAqC;QAErC,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC;IACjE,CAAC;IAED;;;OAGG;IACI,kBAAkB,CAAC,KAAqB;QAC7C,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,KAAqB;QACzC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAC/B,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EACvC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CACf,CAAC;IACJ,CAAC;CACF;AAtDD,8BAsDC"} \ No newline at end of file +{"version":3,"file":"TokenInfo.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/TokenInfo.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,kGAAkG;;;AAKlG;;GAEG;AACH,MAAa,SAAS;IAIpB,YAAY,UAA+B;QACzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAChE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACb,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAClC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACtC;YACD,IACE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC5B,UAAU,CAAC,IAAI;qBACZ,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;qBAC5D,IAAI,EAAE,EACT;gBACA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACpC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EACD,IAAI,GAAG,EAAE,CACV,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,mBAAmB,CACxB,KAAqC;QAErC,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC;IACjE,CAAC;IAED;;;OAGG;IACI,kBAAkB,CAAC,KAAqB;QAC7C,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,KAAqB;QACzC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAC/B,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EACvC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CACf,CAAC;IACJ,CAAC;CACF;AAtDD,8BAsDC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js index 536a9f84..c43a8a37 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js @@ -4,7 +4,6 @@ //------------------------------------------------------------------------------ Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const OffsetStorage_1 = require("./OffsetStorage"); const TokenInfo_1 = require("./TokenInfo"); const util_1 = require("../../util"); @@ -425,6 +424,7 @@ exports.default = util_1.createRule({ * @returns True if the node is the outer IIFE */ function isOuterIIFE(node) { + var _a; /* * Verify that the node is an IIFE */ @@ -438,7 +438,7 @@ exports.default = util_1.createRule({ * A "legal ancestor" is an expression or statement that causes the function to get executed immediately. * For example, `!(function(){})()` is an outer IIFE even though it is preceded by a ! operator. */ - let statement = node.parent && node.parent.parent; + let statement = (_a = node.parent) === null || _a === void 0 ? void 0 : _a.parent; while (statement && ((statement.type === experimental_utils_1.AST_NODE_TYPES.UnaryExpression && ['!', '~', '+', '-'].includes(statement.operator)) || @@ -480,7 +480,7 @@ exports.default = util_1.createRule({ */ function getFirstToken(element) { let token = sourceCode.getTokenBefore(element); - while (eslint_utils_1.isOpeningParenToken(token) && token !== startToken) { + while (util_1.isOpeningParenToken(token) && token !== startToken) { token = sourceCode.getTokenBefore(token); } return sourceCode.getTokenAfter(token); @@ -530,11 +530,11 @@ exports.default = util_1.createRule({ */ function addBlocklessNodeIndent(node) { if (node.type !== experimental_utils_1.AST_NODE_TYPES.BlockStatement) { - const lastParentToken = sourceCode.getTokenBefore(node, eslint_utils_1.isNotOpeningParenToken); + const lastParentToken = sourceCode.getTokenBefore(node, util_1.isNotOpeningParenToken); let firstBodyToken = sourceCode.getFirstToken(node); let lastBodyToken = sourceCode.getLastToken(node); - while (eslint_utils_1.isOpeningParenToken(sourceCode.getTokenBefore(firstBodyToken)) && - eslint_utils_1.isClosingParenToken(sourceCode.getTokenAfter(lastBodyToken))) { + while (util_1.isOpeningParenToken(sourceCode.getTokenBefore(firstBodyToken)) && + util_1.isClosingParenToken(sourceCode.getTokenAfter(lastBodyToken))) { firstBodyToken = sourceCode.getTokenBefore(firstBodyToken); lastBodyToken = sourceCode.getTokenAfter(lastBodyToken); } @@ -548,7 +548,7 @@ exports.default = util_1.createRule({ const lastToken = sourceCode.getLastToken(node); if (lastToken && node.type !== experimental_utils_1.AST_NODE_TYPES.EmptyStatement && - eslint_utils_1.isSemicolonToken(lastToken)) { + util_1.isSemicolonToken(lastToken)) { offsets.setDesiredOffset(lastToken, lastParentToken, 0); } } @@ -558,7 +558,7 @@ exports.default = util_1.createRule({ */ function addFunctionCallIndent(node) { const openingParen = node.arguments.length - ? sourceCode.getFirstTokenBetween(node.callee, node.arguments[0], eslint_utils_1.isOpeningParenToken) + ? sourceCode.getFirstTokenBetween(node.callee, node.arguments[0], util_1.isOpeningParenToken) : sourceCode.getLastToken(node, 1); const closingParen = sourceCode.getLastToken(node); parameterParens.add(openingParen); @@ -575,10 +575,10 @@ exports.default = util_1.createRule({ const parenPairs = []; tokens.forEach(nextToken => { // Accumulate a list of parenthesis pairs - if (eslint_utils_1.isOpeningParenToken(nextToken)) { + if (util_1.isOpeningParenToken(nextToken)) { parenStack.push(nextToken); } - else if (eslint_utils_1.isClosingParenToken(nextToken)) { + else if (util_1.isClosingParenToken(nextToken)) { parenPairs.unshift({ left: parenStack.pop(), right: nextToken }); } }); @@ -656,14 +656,14 @@ exports.default = util_1.createRule({ 'ArrayExpression, ArrayPattern'(node) { var _a; const openingBracket = sourceCode.getFirstToken(node); - const closingBracket = sourceCode.getTokenAfter((_a = node.elements[node.elements.length - 1], (_a !== null && _a !== void 0 ? _a : openingBracket)), eslint_utils_1.isClosingBracketToken); + const closingBracket = sourceCode.getTokenAfter((_a = node.elements[node.elements.length - 1]) !== null && _a !== void 0 ? _a : openingBracket, util_1.isClosingBracketToken); addElementListIndent(node.elements, openingBracket, closingBracket, options.ArrayExpression); }, ArrowFunctionExpression(node) { const firstToken = sourceCode.getFirstToken(node); - if (eslint_utils_1.isOpeningParenToken(firstToken)) { + if (util_1.isOpeningParenToken(firstToken)) { const openingParen = firstToken; - const closingParen = sourceCode.getTokenBefore(node.body, eslint_utils_1.isClosingParenToken); + const closingParen = sourceCode.getTokenBefore(node.body, util_1.isClosingParenToken); parameterParens.add(openingParen); parameterParens.add(closingParen); addElementListIndent(node.params, openingParen, closingParen, options.FunctionExpression.parameters); @@ -717,7 +717,7 @@ exports.default = util_1.createRule({ CallExpression: addFunctionCallIndent, 'ClassDeclaration[superClass], ClassExpression[superClass]'(node) { const classToken = sourceCode.getFirstToken(node); - const extendsToken = sourceCode.getTokenBefore(node.superClass, eslint_utils_1.isNotOpeningParenToken); + const extendsToken = sourceCode.getTokenBefore(node.superClass, util_1.isNotOpeningParenToken); offsets.setDesiredOffsets([extendsToken.range[0], node.body.range[0]], classToken, 1); }, ConditionalExpression(node) { @@ -771,7 +771,7 @@ exports.default = util_1.createRule({ }, ExportNamedDeclaration(node) { if (node.declaration === null) { - const closingCurly = sourceCode.getLastToken(node, eslint_utils_1.isClosingBraceToken); + const closingCurly = sourceCode.getLastToken(node, util_1.isClosingBraceToken); // Indent the specifiers in `export {foo, bar, baz}` addElementListIndent(node.specifiers, sourceCode.getFirstToken(node, { skip: 1 }), closingCurly, 1); if (node.source) { @@ -809,8 +809,8 @@ exports.default = util_1.createRule({ }, ImportDeclaration(node) { if (node.specifiers.some(specifier => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier)) { - const openingCurly = sourceCode.getFirstToken(node, eslint_utils_1.isOpeningBraceToken); - const closingCurly = sourceCode.getLastToken(node, eslint_utils_1.isClosingBraceToken); + const openingCurly = sourceCode.getFirstToken(node, util_1.isOpeningBraceToken); + const closingCurly = sourceCode.getLastToken(node, util_1.isClosingBraceToken); addElementListIndent(node.specifiers.filter(specifier => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier), openingCurly, closingCurly, options.ImportDeclaration); } const fromToken = sourceCode.getLastToken(node, token => token.type === experimental_utils_1.AST_TOKEN_TYPES.Identifier && token.value === 'from'); @@ -826,9 +826,9 @@ exports.default = util_1.createRule({ 'MemberExpression, JSXMemberExpression, MetaProperty'(node) { const object = node.type === experimental_utils_1.AST_NODE_TYPES.MetaProperty ? node.meta : node.object; const isComputed = 'computed' in node && node.computed; - const firstNonObjectToken = sourceCode.getFirstTokenBetween(object, node.property, eslint_utils_1.isNotClosingParenToken); + const firstNonObjectToken = sourceCode.getFirstTokenBetween(object, node.property, util_1.isNotClosingParenToken); const secondNonObjectToken = sourceCode.getTokenAfter(firstNonObjectToken); - const objectParenCount = sourceCode.getTokensBetween(object, node.property, { filter: eslint_utils_1.isClosingParenToken }).length; + const objectParenCount = sourceCode.getTokensBetween(object, node.property, { filter: util_1.isClosingParenToken }).length; const firstObjectToken = objectParenCount ? sourceCode.getTokenBefore(object, { skip: objectParenCount - 1 }) : sourceCode.getFirstToken(object); @@ -874,8 +874,8 @@ exports.default = util_1.createRule({ NewExpression(node) { // Only indent the arguments if the NewExpression has parens (e.g. `new Foo(bar)` or `new Foo()`, but not `new Foo` if (node.arguments.length > 0 || - (eslint_utils_1.isClosingParenToken(sourceCode.getLastToken(node)) && - eslint_utils_1.isOpeningParenToken(sourceCode.getLastToken(node, 1)))) { + (util_1.isClosingParenToken(sourceCode.getLastToken(node)) && + util_1.isOpeningParenToken(sourceCode.getLastToken(node, 1)))) { addFunctionCallIndent(node); } }, @@ -883,24 +883,24 @@ exports.default = util_1.createRule({ const openingCurly = sourceCode.getFirstToken(node); const closingCurly = sourceCode.getTokenAfter(node.properties.length ? node.properties[node.properties.length - 1] - : openingCurly, eslint_utils_1.isClosingBraceToken); + : openingCurly, util_1.isClosingBraceToken); addElementListIndent(node.properties, openingCurly, closingCurly, options.ObjectExpression); }, Property(node) { if (!node.shorthand && !node.method && node.kind === 'init') { - const colon = sourceCode.getFirstTokenBetween(node.key, node.value, eslint_utils_1.isColonToken); + const colon = sourceCode.getFirstTokenBetween(node.key, node.value, util_1.isColonToken); offsets.ignoreToken(sourceCode.getTokenAfter(colon)); } }, SwitchStatement(node) { - const openingCurly = sourceCode.getTokenAfter(node.discriminant, eslint_utils_1.isOpeningBraceToken); + const openingCurly = sourceCode.getTokenAfter(node.discriminant, util_1.isOpeningBraceToken); const closingCurly = sourceCode.getLastToken(node); offsets.setDesiredOffsets([openingCurly.range[1], closingCurly.range[0]], openingCurly, options.SwitchCase); if (node.cases.length) { sourceCode .getTokensBetween(node.cases[node.cases.length - 1], closingCurly, { includeComments: true, - filter: eslint_utils_1.isCommentToken, + filter: util_1.isCommentToken, }) .forEach(token => offsets.ignoreToken(token)); } @@ -966,13 +966,13 @@ exports.default = util_1.createRule({ else { offsets.setDesiredOffsets(node.range, firstToken, variableIndent); } - if (eslint_utils_1.isSemicolonToken(lastToken)) { + if (util_1.isSemicolonToken(lastToken)) { offsets.ignoreToken(lastToken); } }, VariableDeclarator(node) { if (node.init) { - const equalOperator = sourceCode.getTokenBefore(node.init, eslint_utils_1.isNotOpeningParenToken); + const equalOperator = sourceCode.getTokenBefore(node.init, util_1.isNotOpeningParenToken); const tokenAfterOperator = sourceCode.getTokenAfter(equalOperator); offsets.ignoreToken(equalOperator); offsets.ignoreToken(tokenAfterOperator); @@ -1117,7 +1117,7 @@ exports.default = util_1.createRule({ if (validateTokenIndent(firstTokenOfLine, offsets.getDesiredIndent(firstTokenOfLine))) { return; } - if (eslint_utils_1.isCommentToken(firstTokenOfLine)) { + if (util_1.isCommentToken(firstTokenOfLine)) { const tokenBefore = precedingTokens.get(firstTokenOfLine); const tokenAfter = tokenBefore ? sourceCode.getTokenAfter(tokenBefore) diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js.map index c26f1676..5556626d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent-new-do-not-use/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rules/indent-new-do-not-use/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,eAAe;AACf,gFAAgF;;AAEhF,8EAK+C;AAG/C,mDAAgD;AAChD,2CAAwC;AACxC,qCAcoB;AAEpB,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;AAC3D,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAEjC,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,mCAAc,CAAC,oBAAoB;IACnC,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,uBAAuB;IACtC,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,WAAW;IAC1B,mCAAc,CAAC,SAAS;IACxB,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,qBAAqB;IACpC,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,UAAU;IACzB,mCAAc,CAAC,WAAW;IAC1B,mCAAc,CAAC,OAAO;IACtB,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,OAAO;IACtB,mCAAc,CAAC,QAAQ;IACvB,mCAAc,CAAC,WAAW;IAC1B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,KAAK;IACpB,mCAAc,CAAC,UAAU;IACzB,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,wBAAwB;IACvC,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,sBAAsB;IACrC,mCAAc,CAAC,UAAU;IACzB,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,OAAO;IACtB,mCAAc,CAAC,wBAAwB;IACvC,mCAAc,CAAC,sBAAsB;IACrC,mCAAc,CAAC,oBAAoB;IACnC,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,sBAAsB;IACrC,mCAAc,CAAC,wBAAwB;IAEvC,qDAAqD;IACrD,mCAAc,CAAC,aAAa;IAE5B,cAAc;IACd,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,aAAa;IAE5B,uCAAuC;IACvC,mCAAc,CAAC,uBAAuB;IACtC,mCAAc,CAAC,0BAA0B;IACzC,mCAAc,CAAC,WAAW;IAC1B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,0BAA0B;IACzC,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,+BAA+B;IAC9C,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,6BAA6B;IAC5C,mCAAc,CAAC,iBAAiB;IAChC,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,yBAAyB;IACxC,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,WAAW;IAC1B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,sBAAsB;IACrC,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,kBAAkB;IACjC,mCAAc,CAAC,yBAAyB;IACxC,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,YAAY;IAC3B,mCAAc,CAAC,iBAAiB;IAChC,cAAc;IACd,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,mBAAmB;IAClC,aAAa;IACb,mCAAc,CAAC,mBAAmB;IAClC,mCAAc,CAAC,eAAe;IAC9B,iBAAiB;IACjB,mCAAc,CAAC,UAAU;IACzB,mCAAc,CAAC,UAAU;IACzB,mCAAc,CAAC,WAAW;IAC1B,mCAAc,CAAC,gBAAgB;IAC/B,mCAAc,CAAC,aAAa;IAC5B,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,0BAA0B;IACzC,mCAAc,CAAC,4BAA4B;IAC3C,mCAAc,CAAC,eAAe;IAC9B,mCAAc,CAAC,WAAW;CAC3B,CAAC,CAAC;AACH,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,mCAAc,CAAC,OAAO;IACtB,mCAAc,CAAC,cAAc;IAC7B,mCAAc,CAAC,UAAU;CAC1B,CAAC,CAAC;AACH,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAClC,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;;;;GAWG;AAEH,MAAM,mBAAmB,GAAG;IAC1B,KAAK,EAAE;QACL;YACE,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,CAAC;SACX;QACD;YACE,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC;SACvB;KACF;CACF,CAAC;AA0CF,kBAAe,iBAAU,CAAsB;IAC7C,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE;YACN;gBACE,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,CAAC,KAAK,CAAC;qBACd;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,CAAC;qBACX;iBACF;aACF;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE;wBACV,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;oBACD,kBAAkB,EAAE;wBAClB,KAAK,EAAE;4BACL,mBAAmB;4BACnB;gCACE,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,GAAG,EAAE,mBAAmB;oCACxB,GAAG,EAAE,mBAAmB;oCACxB,KAAK,EAAE,mBAAmB;iCAC3B;gCACD,oBAAoB,EAAE,KAAK;6BAC5B;yBACF;qBACF;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,CAAC;qBACX;oBACD,gBAAgB,EAAE;wBAChB,KAAK,EAAE;4BACL;gCACE,IAAI,EAAE,SAAS;gCACf,OAAO,EAAE,CAAC;6BACX;4BACD;gCACE,IAAI,EAAE,CAAC,KAAK,CAAC;6BACd;yBACF;qBACF;oBACD,mBAAmB,EAAE;wBACnB,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE,mBAAmB;4BAC/B,IAAI,EAAE;gCACJ,IAAI,EAAE,SAAS;gCACf,OAAO,EAAE,CAAC;6BACX;yBACF;wBACD,oBAAoB,EAAE,KAAK;qBAC5B;oBACD,kBAAkB,EAAE;wBAClB,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE,mBAAmB;4BAC/B,IAAI,EAAE;gCACJ,IAAI,EAAE,SAAS;gCACf,OAAO,EAAE,CAAC;6BACX;yBACF;wBACD,oBAAoB,EAAE,KAAK;qBAC5B;oBACD,cAAc,EAAE;wBACd,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,SAAS,EAAE,mBAAmB;yBAC/B;wBACD,oBAAoB,EAAE,KAAK;qBAC5B;oBACD,eAAe,EAAE,mBAAmB;oBACpC,gBAAgB,EAAE,mBAAmB;oBACrC,iBAAiB,EAAE,mBAAmB;oBACtC,sBAAsB,EAAE;wBACtB,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,KAAK;qBACf;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,GAAG,EAAE;gCACH,OAAO,EAAE,QAAQ;6BAClB;yBACF;qBACF;oBACD,cAAc,EAAE;wBACd,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,KAAK;qBACf;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;QACD,QAAQ,EAAE;YACR,gBAAgB,EACd,4DAA4D;SAC/D;KACF;IACD,cAAc,EAAE;QACd,oDAAoD;QACpD,CAAC;QACD;YACE,kDAAkD;YAClD,2FAA2F;YAC3F,UAAU,EAAE,CAAC;YACb,kBAAkB,EAAE;gBAClB,GAAG,EAAE,uBAAuB;gBAC5B,GAAG,EAAE,uBAAuB;gBAC5B,KAAK,EAAE,uBAAuB;aAC/B;YACD,aAAa,EAAE,CAAC;YAChB,mBAAmB,EAAE;gBACnB,UAAU,EAAE,wBAAwB;gBACpC,IAAI,EAAE,4BAA4B;aACnC;YACD,kBAAkB,EAAE;gBAClB,UAAU,EAAE,wBAAwB;gBACpC,IAAI,EAAE,4BAA4B;aACnC;YACD,cAAc,EAAE;gBACd,SAAS,EAAE,wBAAwB;aACpC;YACD,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,CAAC;YAClB,gBAAgB,EAAE,CAAC;YACnB,iBAAiB,EAAE,CAAC;YACpB,sBAAsB,EAAE,KAAK;YAC7B,YAAY,EAAE,EAAE;YAChB,cAAc,EAAE,KAAK;SACtB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;QACvC,MAAM,UAAU,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;QAC1D,MAAM,UAAU,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAW,CAAC;QAE1D,MAAM,OAAO,GAAG,WAA6B,CAAC;QAC9C,IACE,OAAO,WAAY,CAAC,kBAAkB,KAAK,QAAQ;YACnD,WAAY,CAAC,kBAAkB,KAAK,OAAO,EAC3C;YACA,qDAAqD;YACrD,OAAO,CAAC,kBAAkB,GAAG;gBAC3B,GAAG,EAAE,WAAY,CAAC,kBAAsC;gBACxD,GAAG,EAAE,WAAY,CAAC,kBAAsC;gBACxD,KAAK,EAAE,WAAY,CAAC,kBAAsC;aAC3D,CAAC;SACH;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,6BAAa,CAC/B,SAAS,EACT,UAAU,EACV,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CACpC,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,OAAO,EAAkB,CAAC;QAEtD;;;;;;WAMG;QACH,SAAS,sBAAsB,CAC7B,cAAsB,EACtB,YAAoB,EACpB,UAAkB;YAElB,MAAM,iBAAiB,GAAG,GAAG,cAAc,IAAI,UAAU,GACvD,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC9B,EAAE,CAAC,CAAC,gBAAgB;YACpB,MAAM,eAAe,GAAG,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,eAAe;YAChF,MAAM,aAAa,GAAG,MAAM,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,cAAc;YACzE,IAAI,cAAc,CAAC;YAEnB,IAAI,YAAY,GAAG,CAAC,EAAE;gBACpB;;;mBAGG;gBACH,cAAc;oBACZ,UAAU,KAAK,OAAO;wBACpB,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,GAAG,YAAY,IAAI,eAAe,EAAE,CAAC;aAC5C;iBAAM,IAAI,UAAU,GAAG,CAAC,EAAE;gBACzB,cAAc;oBACZ,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,aAAa,EAAE,CAAC;aACxE;iBAAM;gBACL,cAAc,GAAG,GAAG,CAAC;aACtB;YACD,OAAO;gBACL,QAAQ,EAAE,iBAAiB;gBAC3B,MAAM,EAAE,cAAc;aACvB,CAAC;QACJ,CAAC;QAED;;;;WAIG;QACH,SAAS,MAAM,CAAC,KAAqB,EAAE,YAAoB;YACzD,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YACjE,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;YACnE,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;YAElE,OAAO,CAAC,MAAM,CAAC;gBACb,IAAI,EAAE,KAAK;gBACX,SAAS,EAAE,kBAAkB;gBAC7B,IAAI,EAAE,sBAAsB,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;gBACrE,GAAG,EAAE;oBACH,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;oBAChD,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE;iBACpE;gBACD,GAAG,CAAC,KAAK;oBACP,OAAO,KAAK,CAAC,gBAAgB,CAC3B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACzD,YAAY,CACb,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAED;;;;;WAKG;QACH,SAAS,mBAAmB,CAC1B,KAAqB,EACrB,aAAqB;YAErB,MAAM,WAAW,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEpD,OAAO,CACL,WAAW,KAAK,aAAa;gBAC7B,wFAAwF;gBACxF,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAC1D,CAAC;QACJ,CAAC;QAED;;;;WAIG;QACH,SAAS,WAAW,CAAC,IAAmB;;YACtC;;eAEG;YACH,IACE,CAAC,IAAI,CAAC,MAAM;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc;gBAClD,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,EAC3B;gBACA,OAAO,KAAK,CAAC;aACd;YAED;;;;eAIG;YACH,IAAI,SAAS,SAAG,IAAI,CAAC,MAAM,0CAAE,MAAM,CAAC;YAEpC,OACE,SAAS;gBACT,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe;oBACjD,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAClD,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,oBAAoB;oBACtD,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB;oBACnD,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB;oBACpD,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB,CAAC,EACvD;gBACA,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;aAC9B;YAED,OAAO,CACL,CAAC,CAAC,SAAS;gBACX,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB;oBACpD,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAAC;gBACxD,CAAC,CAAC,SAAS,CAAC,MAAM;gBAClB,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,CACjD,CAAC;QACJ,CAAC;QAED;;;;;WAKG;QACH,SAAS,uBAAuB,CAAC,GAAW;YAC1C,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,CAAC;YAC1D,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAEzE,OAAO,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC;QACjE,CAAC;QAED;;;;;;WAMG;QACH,SAAS,oBAAoB,CAC3B,QAAkC,EAClC,UAA0B,EAC1B,QAAwB,EACxB,MAAuB;YAEvB;;;;eAIG;YACH,SAAS,aAAa,CAAC,OAAsB;gBAC3C,IAAI,KAAK,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAE,CAAC;gBAEhD,OAAO,0BAAmB,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,UAAU,EAAE;oBACzD,KAAK,GAAG,UAAU,CAAC,cAAc,CAAC,KAAK,CAAE,CAAC;iBAC3C;gBACD,OAAO,UAAU,CAAC,aAAa,CAAC,KAAK,CAAE,CAAC;YAC1C,CAAC;YAED,yIAAyI;YACzI,OAAO,CAAC,iBAAiB,CACvB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACxC,UAAU,EACV,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CACxC,CAAC;YACF,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YAElD,6HAA6H;YAC7H,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,MAAM,KAAK,OAAO,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE;gBAC1D,OAAO;aACR;YACD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBAClC,IAAI,CAAC,OAAO,EAAE;oBACZ,uBAAuB;oBACvB,OAAO;iBACR;gBACD,IAAI,MAAM,KAAK,KAAK,EAAE;oBACpB,sEAAsE;oBACtE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC7C;gBAED,wEAAwE;gBACxE,IAAI,KAAK,KAAK,CAAC,EAAE;oBACf,OAAO;iBACR;gBACD,IACE,MAAM,KAAK,OAAO;oBAClB,SAAS,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,EACpD;oBACA,OAAO,CAAC,aAAa,CACnB,aAAa,CAAC,YAAa,CAAC,EAC5B,aAAa,CAAC,OAAO,CAAC,CACvB,CAAC;iBACH;qBAAM;oBACL,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;oBAC5C,MAAM,2BAA2B,GAC/B,eAAe,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC;oBACpD,MAAM,wBAAwB,GAC5B,eAAe,IAAI,UAAU,CAAC,YAAY,CAAC,eAAe,CAAE,CAAC;oBAE/D,IACE,eAAe;wBACf,wBAAwB;wBACxB,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI;4BACnC,uBAAuB,CAAC,wBAAwB,CAAC,KAAK,CAAC;4BACvD,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EACzB;wBACA,OAAO,CAAC,iBAAiB,CACvB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC5C,2BAA2B,EAC3B,CAAC,CACF,CAAC;qBACH;iBACF;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,SAAS,sBAAsB,CAAC,IAAmB;YACjD,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc,EAAE;gBAC/C,MAAM,eAAe,GAAG,UAAU,CAAC,cAAc,CAC/C,IAAI,EACJ,6BAAsB,CACtB,CAAC;gBAEH,IAAI,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACrD,IAAI,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;gBAEnD,OACE,0BAAmB,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAE,CAAC;oBAC/D,0BAAmB,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAE,CAAC,EAC7D;oBACA,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,cAAc,CAAE,CAAC;oBAC5D,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC,aAAa,CAAE,CAAC;iBAC1D;gBAED,OAAO,CAAC,iBAAiB,CACvB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACjD,eAAe,EACf,CAAC,CACF,CAAC;gBAEF;;;;;mBAKG;gBACH,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAEhD,IACE,SAAS;oBACT,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc;oBAC3C,uBAAgB,CAAC,SAAS,CAAC,EAC3B;oBACA,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;iBACzD;aACF;QACH,CAAC;QAED;;WAEG;QACH,SAAS,qBAAqB,CAC5B,IAAsD;YAEtD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;gBACxC,CAAC,CAAC,UAAU,CAAC,oBAAoB,CAC7B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EACjB,0BAAmB,CACnB;gBACJ,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAE,CAAC;YACtC,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;YAEpD,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAClC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAClC,OAAO,CAAC,gBAAgB,CACtB,YAAY,EACZ,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,EACvC,CAAC,CACF,CAAC;YAEF,oBAAoB,CAClB,IAAI,CAAC,SAAS,EACd,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,cAAc,CAAC,SAAU,CAClC,CAAC;QACJ,CAAC;QAED;;;WAGG;QACH,SAAS,eAAe,CAAC,MAAwB;YAC/C,MAAM,UAAU,GAAqB,EAAE,CAAC;YACxC,MAAM,UAAU,GAAsD,EAAE,CAAC;YAEzE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACzB,yCAAyC;gBACzC,IAAI,0BAAmB,CAAC,SAAS,CAAC,EAAE;oBAClC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAC5B;qBAAM,IAAI,0BAAmB,CAAC,SAAS,CAAC,EAAE;oBACzC,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,EAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;iBACnE;YACH,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACxB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;gBAE9B,wIAAwI;gBACxI,IACE,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;oBAC/B,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAChC;oBACA,MAAM,mBAAmB,GAAG,IAAI,GAAG,CACjC,UAAU,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CACnD,CAAC;oBAEF,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBAClC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAE,CAAC,EAAE;4BAChE,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;yBAC/C;oBACH,CAAC,CAAC,CAAC;iBACJ;gBAED,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,SAAS,UAAU,CAAC,IAAmB;YACrC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CACtD,CAAC;YAEF,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBAChC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAE,CAAC,EAAE;oBAC9D,MAAM,gBAAgB,GAAG,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;oBAE9D,IAAI,KAAK,KAAK,gBAAgB,EAAE;wBAC9B,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;qBAC5B;yBAAM;wBACL,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;qBACtD;iBACF;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED;;;;WAIG;QACH,SAAS,wBAAwB,CAC/B,KAAqB,EACrB,QAAuB;YAEvB,IAAI,IAAI,GAA8B,QAAQ,CAAC;YAE/C,OACE,IAAI,CAAC,MAAM;gBACX,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACvC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EACzC;gBACA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;aACpB;YACD,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;YAEnB,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QAC/D,CAAC;QAED;;;;;WAKG;QACH,SAAS,oBAAoB,CAC3B,UAA0B,EAC1B,WAA2B;YAE3B,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YAC/C,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAEnD,IACE,cAAc,KAAK,eAAe;gBAClC,cAAc,KAAK,eAAe,GAAG,CAAC,EACtC;gBACA,OAAO,KAAK,CAAC;aACd;YAED,KAAK,IAAI,IAAI,GAAG,cAAc,GAAG,CAAC,EAAE,IAAI,GAAG,eAAe,EAAE,EAAE,IAAI,EAAE;gBAClE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAChD,OAAO,IAAI,CAAC;iBACb;aACF;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAE,CAAC;QAEzC,MAAM,mBAAmB,GAA0B;YACjD,+BAA+B,CAC7B,IAAsD;;gBAEtD,MAAM,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACvD,MAAM,cAAc,GAAG,UAAU,CAAC,aAAa,OAC7C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,mCAAI,cAAc,EACzD,4BAAqB,CACrB,CAAC;gBAEH,oBAAoB,CAClB,IAAI,CAAC,QAAQ,EACb,cAAc,EACd,cAAc,EACd,OAAO,CAAC,eAAe,CACxB,CAAC;YACJ,CAAC;YAED,uBAAuB,CAAC,IAAI;gBAC1B,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBAEnD,IAAI,0BAAmB,CAAC,UAAU,CAAC,EAAE;oBACnC,MAAM,YAAY,GAAG,UAAU,CAAC;oBAChC,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAC5C,IAAI,CAAC,IAAI,EACT,0BAAmB,CACnB,CAAC;oBAEH,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAClC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAClC,oBAAoB,CAClB,IAAI,CAAC,MAAM,EACX,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,kBAAkB,CAAC,UAAW,CACvC,CAAC;iBACH;gBACD,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,oBAAoB,CAAC,IAAI;gBACvB,MAAM,QAAQ,GAAG,UAAU,CAAC,oBAAoB,CAC9C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,KAAK,EACV,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CACtC,CAAC;gBAEH,OAAO,CAAC,iBAAiB,CACvB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAClC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAClC,CAAC,CACF,CAAC;gBACF,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC9B,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAE,CAAC,CAAC;YAC3D,CAAC;YAED,qCAAqC,CACnC,IAA4D;gBAE5D,MAAM,QAAQ,GAAG,UAAU,CAAC,oBAAoB,CAC9C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,KAAK,EACV,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CACtC,CAAC;gBAEH;;;;mBAIG;gBAEH,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAE,CAAC;gBAE/D,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC9B,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;gBACxC,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC5D,CAAC;YAED,2BAA2B,CACzB,IAAkD;gBAElD,IAAI,gBAAgB,CAAC;gBAErB,IAAI,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAC3C,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;iBAC1C;qBAAM,IACL,IAAI,CAAC,MAAM;oBACX,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB;wBACrD,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,uBAAuB,CAAC,EAC9D;oBACA,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC;iBACpD;qBAAM,IACL,IAAI,CAAC,MAAM;oBACX,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,EACvD;oBACA,gBAAgB,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC;iBACrD;qBAAM;oBACL,gBAAgB,GAAG,CAAC,CAAC;iBACtB;gBAED;;;mBAGG;gBACH,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;oBAChE,OAAO,CAAC,gBAAgB,CACtB,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,EAC/B,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EACrC,CAAC,CACF,CAAC;iBACH;gBACD,oBAAoB,CAClB,IAAI,CAAC,IAAI,EACT,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,EAC/B,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,EAC9B,gBAAiB,CAClB,CAAC;YACJ,CAAC;YAED,cAAc,EAAE,qBAAqB;YAErC,2DAA2D,CACzD,IAA0D;gBAE1D,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACnD,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAC5C,IAAI,CAAC,UAAW,EAChB,6BAAsB,CACtB,CAAC;gBAEH,OAAO,CAAC,iBAAiB,CACvB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC3C,UAAU,EACV,CAAC,CACF,CAAC;YACJ,CAAC;YAED,qBAAqB,CAAC,IAAI;gBACxB,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBAEnD,8DAA8D;gBAC9D,UAAU;gBACV,sBAAsB;gBACtB,sBAAsB;gBACtB,qBAAqB;gBACrB,IACE,CAAC,OAAO,CAAC,sBAAsB;oBAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI;oBACzD,wBAAwB,CAAC,UAAU,EAAE,IAAI,CAAC,EAC1C;oBACA,MAAM,iBAAiB,GAAG,UAAU,CAAC,oBAAoB,CACvD,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,CAClE,CAAC;oBACH,MAAM,UAAU,GAAG,UAAU,CAAC,oBAAoB,CAChD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,EACd,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,CAClE,CAAC;oBAEH,MAAM,oBAAoB,GAAG,UAAU,CAAC,aAAa,CACnD,iBAAiB,CACjB,CAAC;oBACH,MAAM,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,UAAU,CAAE,CAAC;oBACnE,MAAM,mBAAmB,GAAG,UAAU,CAAC,aAAa,CAAC,UAAU,CAAE,CAAC;oBAElE,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;oBAC3D,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;oBAEpD,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;oBAE9D;;;;;;;;;uBASG;oBACH,IACE,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI;wBAChC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAClC;wBACA,OAAO,CAAC,gBAAgB,CACtB,mBAAmB,EACnB,oBAAoB,EACpB,CAAC,CACF,CAAC;qBACH;yBAAM;wBACL;;;;;;;;2BAQG;wBACH,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;qBAC9D;iBACF;YACH,CAAC;YAED,kEAAkE,EAAE,CAClE,IAI2B,EAC3B,EAAE;gBACF,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,sBAAsB,CAAC,IAAI;gBACzB,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;oBAC7B,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAC1C,IAAI,EACJ,0BAAmB,CACnB,CAAC;oBAEH,oDAAoD;oBACpD,oBAAoB,CAClB,IAAI,CAAC,UAAU,EACf,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAE,EAC5C,YAAY,EACZ,CAAC,CACF,CAAC;oBAEF,IAAI,IAAI,CAAC,MAAM,EAAE;wBACf,gGAAgG;wBAChG,OAAO,CAAC,iBAAiB,CACvB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACtC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,EAC9B,CAAC,CACF,CAAC;qBACH;iBACF;YACH,CAAC;YAED,YAAY,CAAC,IAAI;gBACf,MAAM,eAAe,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAE,CAAC;gBAE3D,IAAI,IAAI,CAAC,IAAI,EAAE;oBACb,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;iBAChE;gBACD,IAAI,IAAI,CAAC,IAAI,EAAE;oBACb,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;iBAChE;gBACD,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;iBAClE;gBACD,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,yCAAyC,CACvC,IAAgE;gBAEhE,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC;gBAC3D,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAC5C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAClD,CAAC;gBAEH,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAClC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAClC,oBAAoB,CAClB,IAAI,CAAC,MAAM,EACX,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAW,CAC/B,CAAC;YACJ,CAAC;YAED,WAAW,CAAC,IAAI;gBACd,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACxC,IACE,IAAI,CAAC,SAAS;oBACd,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW,EAClD;oBACA,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACxC;YACH,CAAC;YAED,iBAAiB,CAAC,IAAI;gBACpB,IACE,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,CAC/D,EACD;oBACA,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAC3C,IAAI,EACJ,0BAAmB,CACnB,CAAC;oBACH,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAC1C,IAAI,EACJ,0BAAmB,CACnB,CAAC;oBAEH,oBAAoB,CAClB,IAAI,CAAC,UAAU,CAAC,MAAM,CACpB,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,CAC/D,EACD,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,iBAAiB,CAC1B,CAAC;iBACH;gBAED,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,CACvC,IAAI,EACJ,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,CACrE,CAAC;gBACH,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,CACzC,IAAI,EACJ,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,MAAM,CAC9C,CAAC;gBACH,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,CACvC,IAAI,EACJ,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,CAClE,CAAC;gBAEH,IAAI,SAAS,EAAE;oBACb,MAAM,GAAG,GACP,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;wBACtD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;wBACf,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAE3B,OAAO,CAAC,iBAAiB,CACvB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EACzB,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,EAC9B,CAAC,CACF,CAAC;iBACH;YACH,CAAC;YAED,qDAAqD,CACnD,IAGyB;gBAEzB,MAAM,MAAM,GACV,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBACtE,MAAM,UAAU,GAAG,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC;gBACvD,MAAM,mBAAmB,GAAG,UAAU,CAAC,oBAAoB,CACzD,MAAM,EACN,IAAI,CAAC,QAAQ,EACb,6BAAsB,CACtB,CAAC;gBACH,MAAM,oBAAoB,GAAG,UAAU,CAAC,aAAa,CACnD,mBAAmB,CACnB,CAAC;gBAEH,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAClD,MAAM,EACN,IAAI,CAAC,QAAQ,EACb,EAAE,MAAM,EAAE,0BAAmB,EAAE,CAChC,CAAC,MAAM,CAAC;gBACT,MAAM,gBAAgB,GAAG,gBAAgB;oBACvC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,CAAC,EAAE,CAAE;oBACpE,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAE,CAAC;gBACtC,MAAM,eAAe,GAAG,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAE,CAAC;gBACxE,MAAM,kBAAkB,GAAG,UAAU;oBACnC,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,oBAAoB,CAAC;gBAEzB,IAAI,UAAU,EAAE;oBACd,sFAAsF;oBACtF,OAAO,CAAC,gBAAgB,CACtB,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,EAC9B,mBAAmB,EACnB,CAAC,CACF,CAAC;oBACF,OAAO,CAAC,iBAAiB,CACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,EACnB,mBAAmB,EACnB,CAAC,CACF,CAAC;iBACH;gBAED;;;;;;;;mBAQG;gBACH,MAAM,UAAU,GACd,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI;oBAChE,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,gBAAgB,CAAC;gBAEvB,IAAI,OAAO,OAAO,CAAC,gBAAgB,KAAK,QAAQ,EAAE;oBAChD,mHAAmH;oBACnH,OAAO,CAAC,gBAAgB,CACtB,mBAAmB,EACnB,UAAU,EACV,OAAO,CAAC,gBAAgB,CACzB,CAAC;oBAEF;;;uBAGG;oBACH,OAAO,CAAC,gBAAgB,CACtB,oBAAoB,EACpB,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,EAC7C,OAAO,CAAC,gBAAgB,CACzB,CAAC;iBACH;qBAAM;oBACL,6FAA6F;oBAC7F,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;oBACzC,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;oBAE1C,oGAAoG;oBACpG,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;oBAC7D,OAAO,CAAC,gBAAgB,CACtB,oBAAoB,EACpB,mBAAmB,EACnB,CAAC,CACF,CAAC;iBACH;YACH,CAAC;YAED,aAAa,CAAC,IAAI;gBAChB,mHAAmH;gBACnH,IACE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;oBACzB,CAAC,0BAAmB,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;wBAClD,0BAAmB,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAE,CAAC,CAAC,EACzD;oBACA,qBAAqB,CAAC,IAAI,CAAC,CAAC;iBAC7B;YACH,CAAC;YAED,iCAAiC,CAC/B,IAAwD;gBAExD,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACrD,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAC3C,IAAI,CAAC,UAAU,CAAC,MAAM;oBACpB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC7C,CAAC,CAAC,YAAY,EAChB,0BAAmB,CACnB,CAAC;gBAEH,oBAAoB,CAClB,IAAI,CAAC,UAAU,EACf,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,gBAAgB,CACzB,CAAC;YACJ,CAAC;YAED,QAAQ,CAAC,IAAI;gBACX,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;oBAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,oBAAoB,CAC3C,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,KAAK,EACV,mBAAY,CACZ,CAAC;oBAEH,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAE,CAAC,CAAC;iBACvD;YACH,CAAC;YAED,eAAe,CAAC,IAAI;gBAClB,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAC3C,IAAI,CAAC,YAAY,EACjB,0BAAmB,CACnB,CAAC;gBACH,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;gBAEpD,OAAO,CAAC,iBAAiB,CACvB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC9C,YAAY,EACZ,OAAO,CAAC,UAAU,CACnB,CAAC;gBAEF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;oBACrB,UAAU;yBACP,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE;wBACjE,eAAe,EAAE,IAAI;wBACrB,MAAM,EAAE,qBAAc;qBACvB,CAAC;yBACD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;iBACjD;YACH,CAAC;YAED,UAAU,CAAC,IAAI;gBACb,IACE,CAAC,CACC,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;oBAC5B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc,CAC1D,EACD;oBACA,MAAM,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;oBACpD,MAAM,qBAAqB,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;oBAE9D,OAAO,CAAC,iBAAiB,CACvB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACtD,WAAW,EACX,CAAC,CACF,CAAC;iBACH;YACH,CAAC;YAED,eAAe,CAAC,IAAI;gBAClB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;oBACpC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACzC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;oBACzC,MAAM,gBAAgB,GACpB,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI;wBACzD,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC;wBACzC,CAAC,CAAC,IAAI,CAAC;oBAEX,OAAO,CAAC,iBAAiB,CACvB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC5C,gBAAgB,EAChB,CAAC,CACF,CAAC;oBACF,OAAO,CAAC,gBAAgB,CACtB,UAAU,CAAC,aAAa,CAAC,SAAS,CAAE,EACpC,gBAAgB,EAChB,CAAC,CACF,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;YAED,mBAAmB,CAAC,IAAI;gBACtB,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;oBAClC,OAAO;iBACR;gBAED,IAAI,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CACvD,OAAO,CAAC,kBAAkB,EAC1B,IAAI,CAAC,IAAI,CACV;oBACC,CAAC,CAAE,OAAO,CAAC,kBAA4C,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClE,CAAC,CAAC,uBAAuB,CAAC;gBAE5B,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACnD,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;gBAEjD,IAAI,cAAc,KAAK,OAAO,EAAE;oBAC9B,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;wBAChC,oBAAoB,CAClB,IAAI,CAAC,YAAY,EACjB,UAAU,EACV,SAAS,EACT,OAAO,CACR,CAAC;wBACF,OAAO;qBACR;oBAED,cAAc,GAAG,uBAAuB,CAAC;iBAC1C;gBAED,IACE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI;oBAC9D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EACnB;oBACA;;;;;;;;;;;;;;;;;;uBAkBG;oBACH,OAAO,CAAC,iBAAiB,CACvB,IAAI,CAAC,KAAK,EACV,UAAU,EACV,cAAwB,EACxB,IAAI,CACL,CAAC;iBACH;qBAAM;oBACL,OAAO,CAAC,iBAAiB,CACvB,IAAI,CAAC,KAAK,EACV,UAAU,EACV,cAAwB,CACzB,CAAC;iBACH;gBAED,IAAI,uBAAgB,CAAC,SAAS,CAAC,EAAE;oBAC/B,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;iBAChC;YACH,CAAC;YAED,kBAAkB,CAAC,IAAI;gBACrB,IAAI,IAAI,CAAC,IAAI,EAAE;oBACb,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAC7C,IAAI,CAAC,IAAI,EACT,6BAAsB,CACtB,CAAC;oBACH,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa,CAAC,aAAa,CAAE,CAAC;oBAEpE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;oBACnC,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;oBACxC,OAAO,CAAC,iBAAiB,CACvB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC5C,aAAa,EACb,CAAC,CACF,CAAC;oBACF,OAAO,CAAC,gBAAgB,CACtB,aAAa,EACb,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAChC,CAAC,CACF,CAAC;iBACH;YACH,CAAC;YAED,qBAAqB,CAAC,IAA2B;gBAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAM,CAAC;gBAC9B,MAAM,WAAW,GAAG,UAAU,CAAC,oBAAoB,CACjD,IAAI,CAAC,IAAI,EACT,SAAS,EACT,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,CAClE,CAAC;gBAEH,OAAO,CAAC,iBAAiB,CACvB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC1C,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,CAAC,CACF,CAAC;YACJ,CAAC;YAED,UAAU,CAAC,IAAI;gBACb,IAAI,IAAI,CAAC,cAAc,EAAE;oBACvB,oBAAoB,CAClB,IAAI,CAAC,QAAQ,EACb,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAE,EAC9C,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAE,EAC9C,CAAC,CACF,CAAC;iBACH;YACH,CAAC;YAED,iBAAiB,CAAC,IAAI;gBACpB,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACnD,IAAI,YAAY,CAAC;gBAEjB,IAAI,IAAI,CAAC,WAAW,EAAE;oBACpB,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAE,CAAC;oBAC3D,OAAO,CAAC,gBAAgB,CACtB,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,EAC9B,YAAY,EACZ,CAAC,CACF,CAAC;iBACH;qBAAM;oBACL,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;iBAC/C;gBACD,OAAO,CAAC,iBAAiB,CACvB,IAAI,CAAC,IAAI,CAAC,KAAK,EACf,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAC/B,CAAC;gBACF,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;YACrE,CAAC;YAED,iBAAiB,CAAC,IAAI;gBACpB,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAElD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YAC5D,CAAC;YAED,sBAAsB,CAAC,IAAI;gBACzB,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;gBACrD,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;gBAEpD,OAAO,CAAC,iBAAiB,CACvB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC9C,YAAY,EACZ,CAAC,CACF,CAAC;YACJ,CAAC;YAED,GAAG,CAAC,IAAmB;gBACrB,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAElD,2FAA2F;gBAC3F,IAAI,UAAU,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;oBACzD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;iBACtD;YACH,CAAC;SACF,CAAC;QAEF,MAAM,iBAAiB,GAGjB,EAAE,CAAC;QAET;;;;;WAKG;QACH,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM;QAG7D;;;;;;;;;;;;;;;WAeG;QACH,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACX,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAEvC,CAAC;YACF,4EAA4E;YAC5E,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAE9D,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAAE,CACH,CAAC;QAEF,+FAA+F;QAC/F,MAAM,YAAY,GAAG,IAAI,GAAG,EAAiB,CAAC;QAE9C;;;WAGG;QACH,SAAS,iBAAiB,CAAC,IAAmB;YAC5C,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvB,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CACtD,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,CAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC,EACpE,EAAE,CACH,CAAC;QAEF;;;;;;;WAOG;QACH,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,EAAE;YAC1D,QAAQ,CAAC,IAAmB;gBAC1B,kGAAkG;gBAClG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC/B,iBAAiB,CAAC,IAAI,CAAC,CAAC;iBACzB;YACH,CAAC;YACD,cAAc;gBACZ,kEAAkE;gBAClE,IAAI,OAAO,CAAC,cAAc,EAAE;oBAC1B,UAAU;yBACP,cAAc,EAAE;yBAChB,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;iBACrD;gBAED,wEAAwE;gBACxE,iBAAiB;qBACd,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;qBACpD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;gBAEzD,0FAA0F;gBAC1F,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAEjC,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAEvC;;;mBAGG;gBACH,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CACpD,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE;oBACtB,MAAM,oBAAoB,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE;wBAC9D,eAAe,EAAE,IAAI;qBACtB,CAAE,CAAC;oBAEJ,OAAO,UAAU,CAAC,GAAG,CACnB,OAAO,EACP,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC;wBAClC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,CAAC;wBACtC,CAAC,CAAC,oBAAoB,CACzB,CAAC;gBACJ,CAAC,EACD,IAAI,OAAO,EAAE,CACd,CAAC;gBAEF,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;oBACxC,MAAM,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC;oBAEjC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;wBACtD,yCAAyC;wBACzC,OAAO;qBACR;oBAED,MAAM,gBAAgB,GAAG,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAC5D,UAAU,CACV,CAAC;oBAEH,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE;wBAClD,qGAAqG;wBACrG,OAAO;qBACR;oBAED,2EAA2E;oBAC3E,IACE,mBAAmB,CACjB,gBAAgB,EAChB,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAC3C,EACD;wBACA,OAAO;qBACR;oBAED,IAAI,qBAAc,CAAC,gBAAgB,CAAC,EAAE;wBACpC,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;wBAC1D,MAAM,UAAU,GAAG,WAAW;4BAC5B,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAE;4BACxC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAE7B,MAAM,kBAAkB,GACtB,WAAW;4BACX,CAAC,oBAAoB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;wBACvD,MAAM,iBAAiB,GACrB,UAAU,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;wBAEpE,2GAA2G;wBAC3G,IACE,CAAC,kBAAkB;4BACjB,mBAAmB,CACjB,gBAAgB,EAChB,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CACtC,CAAC;4BACJ,CAAC,iBAAiB;gCAChB,mBAAmB,CACjB,gBAAgB,EAChB,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CACrC,CAAC,EACJ;4BACA,OAAO;yBACR;qBACF;oBAED,uCAAuC;oBACvC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBACvE,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js index abb3c231..bdb0d7a2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js @@ -5,16 +5,29 @@ * This is done intentionally based on the internal implementation of the base indent rule. */ /* eslint-disable @typescript-eslint/no-explicit-any */ -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const indent_1 = __importDefault(require("eslint/lib/rules/indent")); @@ -98,7 +111,9 @@ exports.default = util.createRule({ }, fixable: 'whitespace', schema: indent_1.default.meta.schema, - messages: indent_1.default.meta.messages, + messages: (_a = indent_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + wrongIndentation: 'Expected indentation of {{expected}} but found {{actual}}.', + }, }, defaultOptions: [ // typescript docs and playground use 4 space indent diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map index d4c35b41..9ec4bd57 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/indent.js.map @@ -1 +1 @@ -{"version":3,"file":"indent.js","sourceRoot":"","sources":["../../src/rules/indent.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"indent.js","sourceRoot":"","sources":["../../src/rules/indent.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js index 4a9a552d..314f327b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js @@ -7,25 +7,29 @@ const adjacent_overload_signatures_1 = __importDefault(require("./adjacent-overl const array_type_1 = __importDefault(require("./array-type")); const await_thenable_1 = __importDefault(require("./await-thenable")); const ban_ts_comment_1 = __importDefault(require("./ban-ts-comment")); -const ban_ts_ignore_1 = __importDefault(require("./ban-ts-ignore")); +const ban_tslint_comment_1 = __importDefault(require("./ban-tslint-comment")); const ban_types_1 = __importDefault(require("./ban-types")); const brace_style_1 = __importDefault(require("./brace-style")); -const camelcase_1 = __importDefault(require("./camelcase")); -const class_name_casing_1 = __importDefault(require("./class-name-casing")); +const class_literal_property_style_1 = __importDefault(require("./class-literal-property-style")); +const comma_dangle_1 = __importDefault(require("./comma-dangle")); const comma_spacing_1 = __importDefault(require("./comma-spacing")); +const no_confusing_non_null_assertion_1 = __importDefault(require("./no-confusing-non-null-assertion")); const consistent_type_assertions_1 = __importDefault(require("./consistent-type-assertions")); const consistent_type_definitions_1 = __importDefault(require("./consistent-type-definitions")); +const consistent_type_imports_1 = __importDefault(require("./consistent-type-imports")); const default_param_last_1 = __importDefault(require("./default-param-last")); +const dot_notation_1 = __importDefault(require("./dot-notation")); const explicit_function_return_type_1 = __importDefault(require("./explicit-function-return-type")); const explicit_member_accessibility_1 = __importDefault(require("./explicit-member-accessibility")); const explicit_module_boundary_types_1 = __importDefault(require("./explicit-module-boundary-types")); const func_call_spacing_1 = __importDefault(require("./func-call-spacing")); -const generic_type_naming_1 = __importDefault(require("./generic-type-naming")); const indent_1 = __importDefault(require("./indent")); -const interface_name_prefix_1 = __importDefault(require("./interface-name-prefix")); +const init_declarations_1 = __importDefault(require("./init-declarations")); +const keyword_spacing_1 = __importDefault(require("./keyword-spacing")); +const lines_between_class_members_1 = __importDefault(require("./lines-between-class-members")); const member_delimiter_style_1 = __importDefault(require("./member-delimiter-style")); -const member_naming_1 = __importDefault(require("./member-naming")); const member_ordering_1 = __importDefault(require("./member-ordering")); +const method_signature_style_1 = __importDefault(require("./method-signature-style")); const naming_convention_1 = __importDefault(require("./naming-convention")); const no_array_constructor_1 = __importDefault(require("./no-array-constructor")); const no_base_to_string_1 = __importDefault(require("./no-base-to-string")); @@ -34,14 +38,20 @@ const no_dynamic_delete_1 = __importDefault(require("./no-dynamic-delete")); const no_empty_function_1 = __importDefault(require("./no-empty-function")); const no_empty_interface_1 = __importDefault(require("./no-empty-interface")); const no_explicit_any_1 = __importDefault(require("./no-explicit-any")); +const no_implicit_any_catch_1 = __importDefault(require("./no-implicit-any-catch")); const no_extraneous_class_1 = __importDefault(require("./no-extraneous-class")); const no_extra_non_null_assertion_1 = __importDefault(require("./no-extra-non-null-assertion")); const no_extra_parens_1 = __importDefault(require("./no-extra-parens")); const no_extra_semi_1 = __importDefault(require("./no-extra-semi")); const no_floating_promises_1 = __importDefault(require("./no-floating-promises")); const no_for_in_array_1 = __importDefault(require("./no-for-in-array")); +const prefer_literal_enum_member_1 = __importDefault(require("./prefer-literal-enum-member")); const no_implied_eval_1 = __importDefault(require("./no-implied-eval")); const no_inferrable_types_1 = __importDefault(require("./no-inferrable-types")); +const no_invalid_this_1 = __importDefault(require("./no-invalid-this")); +const no_invalid_void_type_1 = __importDefault(require("./no-invalid-void-type")); +const no_loss_of_precision_1 = __importDefault(require("./no-loss-of-precision")); +const no_loop_func_1 = __importDefault(require("./no-loop-func")); const no_magic_numbers_1 = __importDefault(require("./no-magic-numbers")); const no_misused_new_1 = __importDefault(require("./no-misused-new")); const no_misused_promises_1 = __importDefault(require("./no-misused-promises")); @@ -49,7 +59,9 @@ const no_namespace_1 = __importDefault(require("./no-namespace")); const no_non_null_asserted_optional_chain_1 = __importDefault(require("./no-non-null-asserted-optional-chain")); const no_non_null_assertion_1 = __importDefault(require("./no-non-null-assertion")); const no_parameter_properties_1 = __importDefault(require("./no-parameter-properties")); +const no_redeclare_1 = __importDefault(require("./no-redeclare")); const no_require_imports_1 = __importDefault(require("./no-require-imports")); +const no_shadow_1 = __importDefault(require("./no-shadow")); const no_this_alias_1 = __importDefault(require("./no-this-alias")); const no_throw_literal_1 = __importDefault(require("./no-throw-literal")); const no_type_alias_1 = __importDefault(require("./no-type-alias")); @@ -58,7 +70,10 @@ const no_unnecessary_condition_1 = __importDefault(require("./no-unnecessary-con const no_unnecessary_qualifier_1 = __importDefault(require("./no-unnecessary-qualifier")); const no_unnecessary_type_arguments_1 = __importDefault(require("./no-unnecessary-type-arguments")); const no_unnecessary_type_assertion_1 = __importDefault(require("./no-unnecessary-type-assertion")); -const no_untyped_public_signature_1 = __importDefault(require("./no-untyped-public-signature")); +const no_unsafe_assignment_1 = __importDefault(require("./no-unsafe-assignment")); +const no_unsafe_call_1 = __importDefault(require("./no-unsafe-call")); +const no_unsafe_member_access_1 = __importDefault(require("./no-unsafe-member-access")); +const no_unsafe_return_1 = __importDefault(require("./no-unsafe-return")); const no_unused_expressions_1 = __importDefault(require("./no-unused-expressions")); const no_unused_vars_1 = __importDefault(require("./no-unused-vars")); const no_unused_vars_experimental_1 = __importDefault(require("./no-unused-vars-experimental")); @@ -66,6 +81,7 @@ const no_use_before_define_1 = __importDefault(require("./no-use-before-define") const no_useless_constructor_1 = __importDefault(require("./no-useless-constructor")); const no_var_requires_1 = __importDefault(require("./no-var-requires")); const prefer_as_const_1 = __importDefault(require("./prefer-as-const")); +const prefer_enum_initializers_1 = __importDefault(require("./prefer-enum-initializers")); const prefer_for_of_1 = __importDefault(require("./prefer-for-of")); const prefer_function_type_1 = __importDefault(require("./prefer-function-type")); const prefer_includes_1 = __importDefault(require("./prefer-includes")); @@ -74,8 +90,10 @@ const prefer_nullish_coalescing_1 = __importDefault(require("./prefer-nullish-co const prefer_optional_chain_1 = __importDefault(require("./prefer-optional-chain")); const prefer_readonly_1 = __importDefault(require("./prefer-readonly")); const prefer_readonly_parameter_types_1 = __importDefault(require("./prefer-readonly-parameter-types")); +const prefer_reduce_type_parameter_1 = __importDefault(require("./prefer-reduce-type-parameter")); const prefer_regexp_exec_1 = __importDefault(require("./prefer-regexp-exec")); const prefer_string_starts_ends_with_1 = __importDefault(require("./prefer-string-starts-ends-with")); +const prefer_ts_expect_error_1 = __importDefault(require("./prefer-ts-expect-error")); const promise_function_async_1 = __importDefault(require("./promise-function-async")); const quotes_1 = __importDefault(require("./quotes")); const require_array_sort_compare_1 = __importDefault(require("./require-array-sort-compare")); @@ -97,28 +115,31 @@ exports.default = { 'array-type': array_type_1.default, 'await-thenable': await_thenable_1.default, 'ban-ts-comment': ban_ts_comment_1.default, - 'ban-ts-ignore': ban_ts_ignore_1.default, + 'ban-tslint-comment': ban_tslint_comment_1.default, 'ban-types': ban_types_1.default, - 'no-base-to-string': no_base_to_string_1.default, 'brace-style': brace_style_1.default, - camelcase: camelcase_1.default, - 'class-name-casing': class_name_casing_1.default, + 'class-literal-property-style': class_literal_property_style_1.default, + 'comma-dangle': comma_dangle_1.default, 'comma-spacing': comma_spacing_1.default, 'consistent-type-assertions': consistent_type_assertions_1.default, 'consistent-type-definitions': consistent_type_definitions_1.default, + 'consistent-type-imports': consistent_type_imports_1.default, 'default-param-last': default_param_last_1.default, + 'dot-notation': dot_notation_1.default, 'explicit-function-return-type': explicit_function_return_type_1.default, 'explicit-member-accessibility': explicit_member_accessibility_1.default, 'explicit-module-boundary-types': explicit_module_boundary_types_1.default, 'func-call-spacing': func_call_spacing_1.default, - 'generic-type-naming': generic_type_naming_1.default, - indent: indent_1.default, - 'interface-name-prefix': interface_name_prefix_1.default, + 'init-declarations': init_declarations_1.default, + 'keyword-spacing': keyword_spacing_1.default, + 'lines-between-class-members': lines_between_class_members_1.default, 'member-delimiter-style': member_delimiter_style_1.default, - 'member-naming': member_naming_1.default, 'member-ordering': member_ordering_1.default, + 'method-signature-style': method_signature_style_1.default, 'naming-convention': naming_convention_1.default, 'no-array-constructor': no_array_constructor_1.default, + 'no-base-to-string': no_base_to_string_1.default, + 'no-confusing-non-null-assertion': no_confusing_non_null_assertion_1.default, 'no-dupe-class-members': no_dupe_class_members_1.default, 'no-dynamic-delete': no_dynamic_delete_1.default, 'no-empty-function': no_empty_function_1.default, @@ -130,8 +151,13 @@ exports.default = { 'no-extraneous-class': no_extraneous_class_1.default, 'no-floating-promises': no_floating_promises_1.default, 'no-for-in-array': no_for_in_array_1.default, + 'no-implicit-any-catch': no_implicit_any_catch_1.default, 'no-implied-eval': no_implied_eval_1.default, 'no-inferrable-types': no_inferrable_types_1.default, + 'no-invalid-this': no_invalid_this_1.default, + 'no-invalid-void-type': no_invalid_void_type_1.default, + 'no-loop-func': no_loop_func_1.default, + 'no-loss-of-precision': no_loss_of_precision_1.default, 'no-magic-numbers': no_magic_numbers_1.default, 'no-misused-new': no_misused_new_1.default, 'no-misused-promises': no_misused_promises_1.default, @@ -139,7 +165,9 @@ exports.default = { 'no-non-null-asserted-optional-chain': no_non_null_asserted_optional_chain_1.default, 'no-non-null-assertion': no_non_null_assertion_1.default, 'no-parameter-properties': no_parameter_properties_1.default, + 'no-redeclare': no_redeclare_1.default, 'no-require-imports': no_require_imports_1.default, + 'no-shadow': no_shadow_1.default, 'no-this-alias': no_this_alias_1.default, 'no-throw-literal': no_throw_literal_1.default, 'no-type-alias': no_type_alias_1.default, @@ -148,7 +176,10 @@ exports.default = { 'no-unnecessary-qualifier': no_unnecessary_qualifier_1.default, 'no-unnecessary-type-arguments': no_unnecessary_type_arguments_1.default, 'no-unnecessary-type-assertion': no_unnecessary_type_assertion_1.default, - 'no-untyped-public-signature': no_untyped_public_signature_1.default, + 'no-unsafe-assignment': no_unsafe_assignment_1.default, + 'no-unsafe-call': no_unsafe_call_1.default, + 'no-unsafe-member-access': no_unsafe_member_access_1.default, + 'no-unsafe-return': no_unsafe_return_1.default, 'no-unused-expressions': no_unused_expressions_1.default, 'no-unused-vars-experimental': no_unused_vars_experimental_1.default, 'no-unused-vars': no_unused_vars_1.default, @@ -156,31 +187,36 @@ exports.default = { 'no-useless-constructor': no_useless_constructor_1.default, 'no-var-requires': no_var_requires_1.default, 'prefer-as-const': prefer_as_const_1.default, + 'prefer-enum-initializers': prefer_enum_initializers_1.default, 'prefer-for-of': prefer_for_of_1.default, 'prefer-function-type': prefer_function_type_1.default, 'prefer-includes': prefer_includes_1.default, + 'prefer-literal-enum-member': prefer_literal_enum_member_1.default, 'prefer-namespace-keyword': prefer_namespace_keyword_1.default, 'prefer-nullish-coalescing': prefer_nullish_coalescing_1.default, 'prefer-optional-chain': prefer_optional_chain_1.default, 'prefer-readonly-parameter-types': prefer_readonly_parameter_types_1.default, 'prefer-readonly': prefer_readonly_1.default, + 'prefer-reduce-type-parameter': prefer_reduce_type_parameter_1.default, 'prefer-regexp-exec': prefer_regexp_exec_1.default, 'prefer-string-starts-ends-with': prefer_string_starts_ends_with_1.default, + 'prefer-ts-expect-error': prefer_ts_expect_error_1.default, 'promise-function-async': promise_function_async_1.default, - quotes: quotes_1.default, 'require-array-sort-compare': require_array_sort_compare_1.default, 'require-await': require_await_1.default, 'restrict-plus-operands': restrict_plus_operands_1.default, 'restrict-template-expressions': restrict_template_expressions_1.default, 'return-await': return_await_1.default, - semi: semi_1.default, 'space-before-function-paren': space_before_function_paren_1.default, 'strict-boolean-expressions': strict_boolean_expressions_1.default, 'switch-exhaustiveness-check': switch_exhaustiveness_check_1.default, 'triple-slash-reference': triple_slash_reference_1.default, 'type-annotation-spacing': type_annotation_spacing_1.default, - typedef: typedef_1.default, 'unbound-method': unbound_method_1.default, 'unified-signatures': unified_signatures_1.default, + indent: indent_1.default, + quotes: quotes_1.default, + semi: semi_1.default, + typedef: typedef_1.default, }; //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map index 531d336b..ca137408 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js new file mode 100644 index 00000000..9b4b3311 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js @@ -0,0 +1,47 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const init_declarations_1 = __importDefault(require("eslint/lib/rules/init-declarations")); +const util_1 = require("../util"); +exports.default = util_1.createRule({ + name: 'init-declarations', + meta: { + type: 'suggestion', + docs: { + description: 'require or disallow initialization in variable declarations', + category: 'Variables', + recommended: false, + extendsBaseRule: true, + }, + schema: init_declarations_1.default.meta.schema, + messages: (_a = init_declarations_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + initialized: "Variable '{{idName}}' should be initialized on declaration.", + notInitialized: "Variable '{{idName}}' should not be initialized on declaration.", + }, + }, + defaultOptions: ['always'], + create(context) { + const rules = init_declarations_1.default.create(context); + const mode = context.options[0] || 'always'; + return { + 'VariableDeclaration:exit'(node) { + var _a, _b, _c; + if (mode === 'always') { + if (node.declare) { + return; + } + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSModuleBlock && + ((_b = node.parent.parent) === null || _b === void 0 ? void 0 : _b.type) === experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration && ((_c = node.parent.parent) === null || _c === void 0 ? void 0 : _c.declare)) { + return; + } + } + rules['VariableDeclaration:exit'](node); + }, + }; + }, +}); +//# sourceMappingURL=init-declarations.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js.map new file mode 100644 index 00000000..99bf077b --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js.map @@ -0,0 +1 @@ +{"version":3,"file":"init-declarations.js","sourceRoot":"","sources":["../../src/rules/init-declarations.ts"],"names":[],"mappings":";;;;;;AAAA,8EAG+C;AAC/C,2FAA0D;AAC1D,kCAIiB;AAKjB,kBAAe,iBAAU,CAAsB;IAC7C,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,6DAA6D;YAC/D,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,2BAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,QAAE,2BAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,WAAW,EACT,6DAA6D;YAC/D,cAAc,EACZ,iEAAiE;SACpE;KACF;IACD,cAAc,EAAE,CAAC,QAAQ,CAAC;IAC1B,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,2BAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;QAE5C,OAAO;YACL,0BAA0B,CAAC,IAAkC;;gBAC3D,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,IAAI,IAAI,CAAC,OAAO,EAAE;wBAChB,OAAO;qBACR;oBACD,IACE,OAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,MAAK,mCAAc,CAAC,aAAa;wBAClD,OAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,IAAI,MAAK,mCAAc,CAAC,mBAAmB,WAC/D,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,OAAO,CAAA,EAC3B;wBACA,OAAO;qBACR;iBACF;gBAED,KAAK,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/interface-name-prefix.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/interface-name-prefix.js deleted file mode 100644 index 17ca3f47..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/interface-name-prefix.js +++ /dev/null @@ -1,132 +0,0 @@ -"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 }); -const util = __importStar(require("../util")); -/** - * Parses a given value as options. - */ -function parseOptions([options]) { - if (options === 'always') { - return { prefixWithI: 'always', allowUnderscorePrefix: false }; - } - if (options !== 'never' && options.prefixWithI === 'always') { - return { - prefixWithI: 'always', - allowUnderscorePrefix: !!options.allowUnderscorePrefix, - }; - } - return { prefixWithI: 'never' }; -} -exports.parseOptions = parseOptions; -exports.default = util.createRule({ - name: 'interface-name-prefix', - meta: { - type: 'suggestion', - docs: { - description: 'Require that interface names should or should not prefixed with `I`', - category: 'Stylistic Issues', - // this will always be recommended as there's no reason to use this convention - // https://github.com/typescript-eslint/typescript-eslint/issues/374 - recommended: 'error', - }, - deprecated: true, - replacedBy: ['naming-convention'], - messages: { - noPrefix: 'Interface name must not be prefixed with "I".', - alwaysPrefix: 'Interface name must be prefixed with "I".', - }, - schema: [ - { - oneOf: [ - { - enum: [ - // Deprecated, equivalent to: { prefixWithI: 'never' } - 'never', - // Deprecated, equivalent to: { prefixWithI: 'always', allowUnderscorePrefix: false } - 'always', - ], - }, - { - type: 'object', - properties: { - prefixWithI: { - type: 'string', - enum: ['never'], - }, - }, - additionalProperties: false, - }, - { - type: 'object', - properties: { - prefixWithI: { - type: 'string', - enum: ['always'], - }, - allowUnderscorePrefix: { - type: 'boolean', - }, - }, - required: ['prefixWithI'], - additionalProperties: false, - }, - ], - }, - ], - }, - defaultOptions: [{ prefixWithI: 'never' }], - create(context, [options]) { - const parsedOptions = parseOptions([options]); - /** - * Checks if a string is prefixed with "I". - * @param name The string to check - */ - function isPrefixedWithI(name) { - return /^I[A-Z]/.test(name); - } - /** - * Checks if a string is prefixed with "I" or "_I". - * @param name The string to check - */ - function isPrefixedWithIOrUnderscoreI(name) { - return /^_?I[A-Z]/.test(name); - } - return { - TSInterfaceDeclaration(node) { - if (parsedOptions.prefixWithI === 'never') { - if (isPrefixedWithIOrUnderscoreI(node.id.name)) { - context.report({ - node: node.id, - messageId: 'noPrefix', - }); - } - } - else { - if (parsedOptions.allowUnderscorePrefix) { - if (!isPrefixedWithIOrUnderscoreI(node.id.name)) { - context.report({ - node: node.id, - messageId: 'alwaysPrefix', - }); - } - } - else { - if (!isPrefixedWithI(node.id.name)) { - context.report({ - node: node.id, - messageId: 'alwaysPrefix', - }); - } - } - } - }, - }; - }, -}); -//# sourceMappingURL=interface-name-prefix.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/interface-name-prefix.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/interface-name-prefix.js.map deleted file mode 100644 index a0154645..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/interface-name-prefix.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"interface-name-prefix.js","sourceRoot":"","sources":["../../src/rules/interface-name-prefix.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js new file mode 100644 index 00000000..a0d98718 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js @@ -0,0 +1,67 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const keyword_spacing_1 = __importDefault(require("eslint/lib/rules/keyword-spacing")); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'keyword-spacing', + meta: { + type: 'layout', + docs: { + description: 'Enforce consistent spacing before and after keywords', + category: 'Stylistic Issues', + recommended: false, + extendsBaseRule: true, + }, + fixable: 'whitespace', + schema: keyword_spacing_1.default.meta.schema, + messages: (_a = keyword_spacing_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + expectedBefore: 'Expected space(s) before "{{value}}".', + expectedAfter: 'Expected space(s) after "{{value}}".', + unexpectedBefore: 'Unexpected space(s) before "{{value}}".', + unexpectedAfter: 'Unexpected space(s) after "{{value}}".', + }, + }, + defaultOptions: [{}], + create(context) { + const sourceCode = context.getSourceCode(); + const baseRules = keyword_spacing_1.default.create(context); + return Object.assign(Object.assign({}, baseRules), { TSAsExpression(node) { + const asToken = util.nullThrows(sourceCode.getTokenAfter(node.expression, token => token.value === 'as'), util.NullThrowsReasons.MissingToken('as', node.type)); + const oldTokenType = asToken.type; + // as is a contextual keyword, so it's always reported as an Identifier + // the rule looks for keyword tokens, so we temporarily override it + // we mutate it at the token level because the rule calls sourceCode.getFirstToken, + // so mutating a copy would not change the underlying copy returned by that method + asToken.type = experimental_utils_1.AST_TOKEN_TYPES.Keyword; + // use this selector just because it is just a call to `checkSpacingAroundFirstToken` + baseRules.DebuggerStatement(asToken); + // make sure to reset the type afterward so we don't permanently mutate the AST + asToken.type = oldTokenType; + } }); + }, +}); +//# sourceMappingURL=keyword-spacing.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js.map new file mode 100644 index 00000000..181f8eea --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/keyword-spacing.js.map @@ -0,0 +1 @@ +{"version":3,"file":"keyword-spacing.js","sourceRoot":"","sources":["../../src/rules/keyword-spacing.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAwE;AACxE,uFAAwD;AACxD,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EAAE,sDAAsD;YACnE,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,yBAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,QAAE,yBAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,cAAc,EAAE,uCAAuC;YACvD,aAAa,EAAE,sCAAsC;YACrD,gBAAgB,EAAE,yCAAyC;YAC3D,eAAe,EAAE,wCAAwC;SAC1D;KACF;IACD,cAAc,EAAE,CAAC,EAAE,CAAC;IAEpB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,yBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,uCACK,SAAS,KACZ,cAAc,CAAC,IAAI;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAC7B,UAAU,CAAC,aAAa,CACtB,IAAI,CAAC,UAAU,EACf,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAC9B,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CACrD,CAAC;gBACF,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;gBAClC,uEAAuE;gBACvE,mEAAmE;gBACnE,mFAAmF;gBACnF,kFAAkF;gBAClF,OAAO,CAAC,IAAI,GAAG,oCAAe,CAAC,OAAO,CAAC;gBAEvC,qFAAqF;gBACrF,SAAS,CAAC,iBAAiB,CAAC,OAAgB,CAAC,CAAC;gBAE9C,+EAA+E;gBAC/E,OAAO,CAAC,IAAI,GAAG,YAAY,CAAC;YAC9B,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js new file mode 100644 index 00000000..7d55e433 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js @@ -0,0 +1,79 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const lines_between_class_members_1 = __importDefault(require("eslint/lib/rules/lines-between-class-members")); +const util = __importStar(require("../util")); +const schema = util.deepMerge(Object.assign({}, lines_between_class_members_1.default.meta.schema), { + 1: { + exceptAfterOverload: { + type: 'booleean', + default: true, + }, + }, +}); +exports.default = util.createRule({ + name: 'lines-between-class-members', + meta: { + type: 'layout', + docs: { + description: 'Require or disallow an empty line between class members', + category: 'Stylistic Issues', + recommended: false, + extendsBaseRule: true, + }, + fixable: 'whitespace', + schema, + messages: (_a = lines_between_class_members_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + never: 'Unexpected blank line between class members.', + always: 'Expected blank line between class members.', + }, + }, + defaultOptions: [ + 'always', + { + exceptAfterOverload: true, + exceptAfterSingleLine: false, + }, + ], + create(context, options) { + var _a; + const rules = lines_between_class_members_1.default.create(context); + const exceptAfterOverload = ((_a = options[1]) === null || _a === void 0 ? void 0 : _a.exceptAfterOverload) && options[0] === 'always'; + function isOverload(node) { + return (node.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && + node.value.type === experimental_utils_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression); + } + return { + ClassBody(node) { + const body = exceptAfterOverload + ? node.body.filter(node => !isOverload(node)) + : node.body; + rules.ClassBody(Object.assign(Object.assign({}, node), { body })); + }, + }; + }, +}); +//# sourceMappingURL=lines-between-class-members.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js.map new file mode 100644 index 00000000..f8300c0e --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-between-class-members.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lines-between-class-members.js","sourceRoot":"","sources":["../../src/rules/lines-between-class-members.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,+GAAoE;AACpE,8CAAgC;AAKhC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,mBACtB,qCAAQ,CAAC,IAAI,CAAC,MAAM,GACzB;IACE,CAAC,EAAE;QACD,mBAAmB,EAAE;YACnB,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,IAAI;SACd;KACF;CACF,CACF,CAAC;AAEF,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EAAE,yDAAyD;YACtE,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,YAAY;QACrB,MAAM;QACN,QAAQ,QAAE,qCAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,KAAK,EAAE,8CAA8C;YACrD,MAAM,EAAE,4CAA4C;SACrD;KACF;IACD,cAAc,EAAE;QACd,QAAQ;QACR;YACE,mBAAmB,EAAE,IAAI;YACzB,qBAAqB,EAAE,KAAK;SAC7B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,OAAO;;QACrB,MAAM,KAAK,GAAG,qCAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,mBAAmB,GACvB,OAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,mBAAmB,KAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC;QAE7D,SAAS,UAAU,CAAC,IAAmB;YACrC,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB;gBAC7C,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,6BAA6B,CACjE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,SAAS,CAAC,IAAI;gBACZ,MAAM,IAAI,GAAG,mBAAmB;oBAC9B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAC7C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAEd,KAAK,CAAC,SAAS,iCAAM,IAAI,KAAE,IAAI,IAAG,CAAC;YACrC,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js index c9de8f9f..2faac1c3 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -39,7 +51,7 @@ exports.default = util.createRule({ docs: { description: 'Require a specific member delimiter style for interfaces and type literals', category: 'Stylistic Issues', - recommended: 'error', + recommended: false, }, fixable: 'code', messages: { @@ -82,7 +94,7 @@ exports.default = util.createRule({ const sourceCode = context.getSourceCode(); // use the base options as the defaults for the cases const baseOptions = options; - const overrides = (_a = baseOptions.overrides, (_a !== null && _a !== void 0 ? _a : {})); + const overrides = (_a = baseOptions.overrides) !== null && _a !== void 0 ? _a : {}; const interfaceOptions = util.deepMerge(baseOptions, overrides.interface); const typeLiteralOptions = util.deepMerge(baseOptions, overrides.typeLiteral); /** @@ -184,7 +196,7 @@ exports.default = util.createRule({ : typeLiteralOptions; const opts = isSingleLine ? typeOpts.singleline : typeOpts.multiline; members.forEach((member, index) => { - checkLastToken(member, (opts !== null && opts !== void 0 ? opts : {}), index === members.length - 1); + checkLastToken(member, opts !== null && opts !== void 0 ? opts : {}, index === members.length - 1); }); } return { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map index 1b063908..f48cf7b4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-delimiter-style.js.map @@ -1 +1 @@ -{"version":3,"file":"member-delimiter-style.js","sourceRoot":"","sources":["../../src/rules/member-delimiter-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"member-delimiter-style.js","sourceRoot":"","sources":["../../src/rules/member-delimiter-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-naming.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-naming.js deleted file mode 100644 index 6b31f7f5..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-naming.js +++ /dev/null @@ -1,107 +0,0 @@ -"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 }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const util = __importStar(require("../util")); -exports.default = util.createRule({ - name: 'member-naming', - meta: { - type: 'suggestion', - docs: { - description: 'Enforces naming conventions for class members by visibility', - category: 'Stylistic Issues', - recommended: false, - }, - deprecated: true, - replacedBy: ['naming-convention'], - messages: { - incorrectName: '{{accessibility}} property {{name}} should match {{convention}}.', - }, - schema: [ - { - type: 'object', - properties: { - public: { - type: 'string', - minLength: 1, - format: 'regex', - }, - protected: { - type: 'string', - minLength: 1, - format: 'regex', - }, - private: { - type: 'string', - minLength: 1, - format: 'regex', - }, - }, - additionalProperties: false, - minProperties: 1, - }, - ], - }, - defaultOptions: [{}], - create(context, [config]) { - const sourceCode = context.getSourceCode(); - const conventions = Object.keys(config).reduce((acc, accessibility) => { - acc[accessibility] = new RegExp(config[accessibility]); - return acc; - }, {}); - function getParameterNode(node) { - if (node.parameter.type === experimental_utils_1.AST_NODE_TYPES.AssignmentPattern) { - return node.parameter.left; - } - if (node.parameter.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { - return node.parameter; - } - return null; - } - function validateParameterName(node) { - const parameterNode = getParameterNode(node); - if (!parameterNode) { - return; - } - validate(parameterNode, parameterNode.name, node.accessibility); - } - function validateName(node) { - if (node.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && - node.kind === 'constructor') { - return; - } - validate(node.key, util.getNameFromMember(node, sourceCode), node.accessibility); - } - /** - * Check that the name matches the convention for its accessibility. - * @param {ASTNode} node the named node to evaluate. - * @param {string} name - * @param {Modifiers} accessibility - * @returns {void} - * @private - */ - function validate(node, name, accessibility = 'public') { - const convention = conventions[accessibility]; - if (!convention || convention.test(name)) { - return; - } - context.report({ - node, - messageId: 'incorrectName', - data: { accessibility, name, convention }, - }); - } - return { - TSParameterProperty: validateParameterName, - MethodDefinition: validateName, - ClassProperty: validateName, - }; - }, -}); -//# sourceMappingURL=member-naming.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-naming.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-naming.js.map deleted file mode 100644 index 8d39643b..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-naming.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"member-naming.js","sourceRoot":"","sources":["../../src/rules/member-naming.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js index 8eb1f946..2dbbe7df 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js @@ -1,20 +1,120 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.defaultOrder = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); -const allMemberTypes = ['field', 'method', 'constructor'].reduce((all, type) => { +const neverConfig = { + type: 'string', + enum: ['never'], +}; +const arrayConfig = (memberTypes) => ({ + type: 'array', + items: { + enum: memberTypes, + }, +}); +const objectConfig = (memberTypes) => ({ + type: 'object', + properties: { + memberTypes: { + oneOf: [arrayConfig(memberTypes), neverConfig], + }, + order: { + type: 'string', + enum: ['alphabetically', 'as-written'], + }, + }, + additionalProperties: false, +}); +exports.defaultOrder = [ + // Index signature + 'signature', + // Fields + 'public-static-field', + 'protected-static-field', + 'private-static-field', + 'public-decorated-field', + 'protected-decorated-field', + 'private-decorated-field', + 'public-instance-field', + 'protected-instance-field', + 'private-instance-field', + 'public-abstract-field', + 'protected-abstract-field', + 'private-abstract-field', + 'public-field', + 'protected-field', + 'private-field', + 'static-field', + 'instance-field', + 'abstract-field', + 'decorated-field', + 'field', + // Constructors + 'public-constructor', + 'protected-constructor', + 'private-constructor', + 'constructor', + // Methods + 'public-static-method', + 'protected-static-method', + 'private-static-method', + 'public-decorated-method', + 'protected-decorated-method', + 'private-decorated-method', + 'public-instance-method', + 'protected-instance-method', + 'private-instance-method', + 'public-abstract-method', + 'protected-abstract-method', + 'private-abstract-method', + 'public-method', + 'protected-method', + 'private-method', + 'static-method', + 'instance-method', + 'abstract-method', + 'decorated-method', + 'method', +]; +const allMemberTypes = ['signature', 'field', 'method', 'constructor'].reduce((all, type) => { all.push(type); ['public', 'protected', 'private'].forEach(accessibility => { - all.push(`${accessibility}-${type}`); // e.g. `public-field` - if (type !== 'constructor') { - // There is no `static-constructor` or `instance-constructor or `abstract-constructor` + if (type !== 'signature') { + all.push(`${accessibility}-${type}`); // e.g. `public-field` + } + // Only class instance fields and methods can have decorators attached to them + if (type === 'field' || type === 'method') { + const decoratedMemberType = `${accessibility}-decorated-${type}`; + const decoratedMemberTypeNoAccessibility = `decorated-${type}`; + if (!all.includes(decoratedMemberType)) { + all.push(decoratedMemberType); + } + if (!all.includes(decoratedMemberTypeNoAccessibility)) { + all.push(decoratedMemberTypeNoAccessibility); + } + } + if (type !== 'constructor' && type !== 'signature') { + // There is no `static-constructor` or `instance-constructor` or `abstract-constructor` ['static', 'instance', 'abstract'].forEach(scope => { if (!all.includes(`${scope}-${type}`)) { all.push(`${scope}-${type}`); @@ -25,7 +125,152 @@ const allMemberTypes = ['field', 'method', 'constructor'].reduce((all, type) => }); return all; }, []); -allMemberTypes.unshift('signature'); +const functionExpressions = [ + experimental_utils_1.AST_NODE_TYPES.FunctionExpression, + experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression, +]; +/** + * Gets the node type. + * + * @param node the node to be evaluated. + */ +function getNodeType(node) { + // TODO: add missing TSCallSignatureDeclaration + switch (node.type) { + case experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition: + case experimental_utils_1.AST_NODE_TYPES.MethodDefinition: + return node.kind; + case experimental_utils_1.AST_NODE_TYPES.TSMethodSignature: + return 'method'; + case experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration: + return 'constructor'; + case experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty: + case experimental_utils_1.AST_NODE_TYPES.ClassProperty: + return node.value && functionExpressions.includes(node.value.type) + ? 'method' + : 'field'; + case experimental_utils_1.AST_NODE_TYPES.TSPropertySignature: + return 'field'; + case experimental_utils_1.AST_NODE_TYPES.TSIndexSignature: + return 'signature'; + default: + return null; + } +} +/** + * Gets the member name based on the member type. + * + * @param node the node to be evaluated. + * @param sourceCode + */ +function getMemberName(node, sourceCode) { + switch (node.type) { + case experimental_utils_1.AST_NODE_TYPES.TSPropertySignature: + case experimental_utils_1.AST_NODE_TYPES.TSMethodSignature: + case experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty: + case experimental_utils_1.AST_NODE_TYPES.ClassProperty: + return util.getNameFromMember(node, sourceCode); + case experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition: + case experimental_utils_1.AST_NODE_TYPES.MethodDefinition: + return node.kind === 'constructor' + ? 'constructor' + : util.getNameFromMember(node, sourceCode); + case experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration: + return 'new'; + case experimental_utils_1.AST_NODE_TYPES.TSIndexSignature: + return util.getNameFromIndexSignature(node); + default: + return null; + } +} +/** + * Gets the calculated rank using the provided method definition. + * The algorithm is as follows: + * - Get the rank based on the accessibility-scope-type name, e.g. public-instance-field + * - If there is no order for accessibility-scope-type, then strip out the accessibility. + * - If there is no order for scope-type, then strip out the scope. + * - If there is no order for type, then return -1 + * @param memberGroups the valid names to be validated. + * @param orderConfig the current order to be validated. + * + * @return Index of the matching member type in the order configuration. + */ +function getRankOrder(memberGroups, orderConfig) { + let rank = -1; + const stack = memberGroups.slice(); // Get a copy of the member groups + while (stack.length > 0 && rank === -1) { + rank = orderConfig.indexOf(stack.shift()); + } + return rank; +} +/** + * Gets the rank of the node given the order. + * @param node the node to be evaluated. + * @param orderConfig the current order to be validated. + * @param supportsModifiers a flag indicating whether the type supports modifiers (scope or accessibility) or not. + */ +function getRank(node, orderConfig, supportsModifiers) { + const type = getNodeType(node); + if (type === null) { + // shouldn't happen but just in case, put it on the end + return orderConfig.length - 1; + } + const abstract = node.type === experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty || + node.type === experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition; + const scope = 'static' in node && node.static + ? 'static' + : abstract + ? 'abstract' + : 'instance'; + const accessibility = 'accessibility' in node && node.accessibility + ? node.accessibility + : 'public'; + // Collect all existing member groups (e.g. 'public-instance-field', 'instance-field', 'public-field', 'constructor' etc.) + const memberGroups = []; + if (supportsModifiers) { + const decorated = 'decorators' in node && node.decorators.length > 0; + if (decorated && (type === 'field' || type === 'method')) { + memberGroups.push(`${accessibility}-decorated-${type}`); + memberGroups.push(`decorated-${type}`); + } + if (type !== 'constructor') { + // Constructors have no scope + memberGroups.push(`${accessibility}-${scope}-${type}`); + memberGroups.push(`${scope}-${type}`); + } + memberGroups.push(`${accessibility}-${type}`); + } + memberGroups.push(type); + return getRankOrder(memberGroups, orderConfig); +} +/** + * Gets the lowest possible rank higher than target. + * e.g. given the following order: + * ... + * public-static-method + * protected-static-method + * private-static-method + * public-instance-method + * protected-instance-method + * private-instance-method + * ... + * and considering that a public-instance-method has already been declared, so ranks contains + * public-instance-method, then the lowest possible rank for public-static-method is + * public-instance-method. + * @param ranks the existing ranks in the object. + * @param target the target rank. + * @param order the current order to be validated. + * @returns the name of the lowest possible rank without dashes (-). + */ +function getLowestRank(ranks, target, order) { + let lowest = ranks[ranks.length - 1]; + ranks.forEach(rank => { + if (rank > target) { + lowest = Math.min(lowest, rank); + } + }); + return order[lowest].replace(/-/g, ' '); +} exports.default = util.createRule({ name: 'member-ordering', meta: { @@ -36,7 +281,8 @@ exports.default = util.createRule({ recommended: false, }, messages: { - incorrectOrder: 'Member {{name}} should be declared before all {{rank}} definitions.', + incorrectOrder: 'Member "{{member}}" should be declared before member "{{beforeMember}}".', + incorrectGroupOrder: 'Member {{name}} should be declared before all {{rank}} definitions.', }, schema: [ { @@ -44,67 +290,37 @@ exports.default = util.createRule({ properties: { default: { oneOf: [ - { - enum: ['never'], - }, - { - type: 'array', - items: { - enum: allMemberTypes, - }, - }, + neverConfig, + arrayConfig(allMemberTypes), + objectConfig(allMemberTypes), ], }, classes: { oneOf: [ - { - enum: ['never'], - }, - { - type: 'array', - items: { - enum: allMemberTypes, - }, - }, + neverConfig, + arrayConfig(allMemberTypes), + objectConfig(allMemberTypes), ], }, classExpressions: { oneOf: [ - { - enum: ['never'], - }, - { - type: 'array', - items: { - enum: allMemberTypes, - }, - }, + neverConfig, + arrayConfig(allMemberTypes), + objectConfig(allMemberTypes), ], }, interfaces: { oneOf: [ - { - enum: ['never'], - }, - { - type: 'array', - items: { - enum: ['signature', 'field', 'method', 'constructor'], - }, - }, + neverConfig, + arrayConfig(['signature', 'field', 'method', 'constructor']), + objectConfig(['signature', 'field', 'method', 'constructor']), ], }, typeLiterals: { oneOf: [ - { - enum: ['never'], - }, - { - type: 'array', - items: { - enum: ['signature', 'field', 'method', 'constructor'], - }, - }, + neverConfig, + arrayConfig(['signature', 'field', 'method', 'constructor']), + objectConfig(['signature', 'field', 'method', 'constructor']), ], }, }, @@ -114,230 +330,137 @@ exports.default = util.createRule({ }, defaultOptions: [ { - default: [ - 'signature', - 'public-static-field', - 'protected-static-field', - 'private-static-field', - 'public-instance-field', - 'protected-instance-field', - 'private-instance-field', - 'public-abstract-field', - 'protected-abstract-field', - 'private-abstract-field', - 'public-field', - 'protected-field', - 'private-field', - 'static-field', - 'instance-field', - 'abstract-field', - 'field', - 'constructor', - 'public-static-method', - 'protected-static-method', - 'private-static-method', - 'public-instance-method', - 'protected-instance-method', - 'private-instance-method', - 'public-abstract-method', - 'protected-abstract-method', - 'private-abstract-method', - 'public-method', - 'protected-method', - 'private-method', - 'static-method', - 'instance-method', - 'abstract-method', - 'method', - ], + default: exports.defaultOrder, }, ], create(context, [options]) { - const sourceCode = context.getSourceCode(); - const functionExpressions = [ - experimental_utils_1.AST_NODE_TYPES.FunctionExpression, - experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression, - ]; /** - * Gets the node type. - * @param node the node to be evaluated. - */ - function getNodeType(node) { - // TODO: add missing TSCallSignatureDeclaration - switch (node.type) { - case experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition: - case experimental_utils_1.AST_NODE_TYPES.MethodDefinition: - return node.kind; - case experimental_utils_1.AST_NODE_TYPES.TSMethodSignature: - return 'method'; - case experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration: - return 'constructor'; - case experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty: - case experimental_utils_1.AST_NODE_TYPES.ClassProperty: - return node.value && functionExpressions.includes(node.value.type) - ? 'method' - : 'field'; - case experimental_utils_1.AST_NODE_TYPES.TSPropertySignature: - return 'field'; - case experimental_utils_1.AST_NODE_TYPES.TSIndexSignature: - return 'signature'; - default: - return null; - } - } - /** - * Gets the member name based on the member type. - * @param node the node to be evaluated. - */ - function getMemberName(node) { - switch (node.type) { - case experimental_utils_1.AST_NODE_TYPES.TSPropertySignature: - case experimental_utils_1.AST_NODE_TYPES.TSMethodSignature: - case experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty: - case experimental_utils_1.AST_NODE_TYPES.ClassProperty: - return util.getNameFromMember(node, sourceCode); - case experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition: - case experimental_utils_1.AST_NODE_TYPES.MethodDefinition: - return node.kind === 'constructor' - ? 'constructor' - : util.getNameFromMember(node, sourceCode); - case experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration: - return 'new'; - case experimental_utils_1.AST_NODE_TYPES.TSIndexSignature: - return util.getNameFromIndexSignature(node); - default: - return null; - } - } - /** - * Gets the calculated rank using the provided method definition. - * The algorithm is as follows: - * - Get the rank based on the accessibility-scope-type name, e.g. public-instance-field - * - If there is no order for accessibility-scope-type, then strip out the accessibility. - * - If there is no order for scope-type, then strip out the scope. - * - If there is no order for type, then return -1 - * @param memberTypes the valid names to be validated. - * @param order the current order to be validated. + * Checks if the member groups are correctly sorted. * - * @return Index of the matching member type in the order configuration. + * @param members Members to be validated. + * @param groupOrder Group order to be validated. + * @param supportsModifiers A flag indicating whether the type supports modifiers (scope or accessibility) or not. + * + * @return Array of member groups or null if one of the groups is not correctly sorted. */ - function getRankOrder(memberTypes, order) { - let rank = -1; - const stack = memberTypes.slice(); // Get a copy of the member types - while (stack.length > 0 && rank === -1) { - rank = order.indexOf(stack.shift()); - } - return rank; - } - /** - * Gets the rank of the node given the order. - * @param node the node to be evaluated. - * @param order the current order to be validated. - * @param supportsModifiers a flag indicating whether the type supports modifiers (scope or accessibility) or not. - */ - function getRank(node, order, supportsModifiers) { - const type = getNodeType(node); - if (type === null) { - // shouldn't happen but just in case, put it on the end - return order.length - 1; - } - const abstract = node.type === experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty || - node.type === experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition; - const scope = 'static' in node && node.static - ? 'static' - : abstract - ? 'abstract' - : 'instance'; - const accessibility = 'accessibility' in node && node.accessibility - ? node.accessibility - : 'public'; - const memberTypes = []; - if (supportsModifiers) { - if (type !== 'constructor') { - // Constructors have no scope - memberTypes.push(`${accessibility}-${scope}-${type}`); - memberTypes.push(`${scope}-${type}`); + function checkGroupSort(members, groupOrder, supportsModifiers) { + const previousRanks = []; + const memberGroups = []; + let isCorrectlySorted = true; + // Find first member which isn't correctly sorted + members.forEach(member => { + const rank = getRank(member, groupOrder, supportsModifiers); + const name = getMemberName(member, context.getSourceCode()); + const rankLastMember = previousRanks[previousRanks.length - 1]; + if (rank === -1) { + return; } - memberTypes.push(`${accessibility}-${type}`); - } - memberTypes.push(type); - return getRankOrder(memberTypes, order); - } - /** - * Gets the lowest possible rank higher than target. - * e.g. given the following order: - * ... - * public-static-method - * protected-static-method - * private-static-method - * public-instance-method - * protected-instance-method - * private-instance-method - * ... - * and considering that a public-instance-method has already been declared, so ranks contains - * public-instance-method, then the lowest possible rank for public-static-method is - * public-instance-method. - * @param ranks the existing ranks in the object. - * @param target the target rank. - * @param order the current order to be validated. - * @returns the name of the lowest possible rank without dashes (-). - */ - function getLowestRank(ranks, target, order) { - let lowest = ranks[ranks.length - 1]; - ranks.forEach(rank => { - if (rank > target) { - lowest = Math.min(lowest, rank); + // Works for 1st item because x < undefined === false for any x (typeof string) + if (rank < rankLastMember) { + context.report({ + node: member, + messageId: 'incorrectGroupOrder', + data: { + name, + rank: getLowestRank(previousRanks, rank, groupOrder), + }, + }); + isCorrectlySorted = false; + } + else if (rank === rankLastMember) { + // Same member group --> Push to existing member group array + memberGroups[memberGroups.length - 1].push(member); + } + else { + // New member group --> Create new member group array + previousRanks.push(rank); + memberGroups.push([member]); } }); - return order[lowest].replace(/-/g, ' '); + return isCorrectlySorted ? memberGroups : null; + } + /** + * Checks if the members are alphabetically sorted. + * + * @param members Members to be validated. + * + * @return True if all members are correctly sorted. + */ + function checkAlphaSort(members) { + let previousName = ''; + let isCorrectlySorted = true; + // Find first member which isn't correctly sorted + members.forEach(member => { + const name = getMemberName(member, context.getSourceCode()); + // Note: Not all members have names + if (name) { + if (name < previousName) { + context.report({ + node: member, + messageId: 'incorrectOrder', + data: { + member: name, + beforeMember: previousName, + }, + }); + isCorrectlySorted = false; + } + previousName = name; + } + }); + return isCorrectlySorted; } /** * Validates if all members are correctly sorted. * * @param members Members to be validated. - * @param order Current order to be validated. + * @param orderConfig Order config to be validated. * @param supportsModifiers A flag indicating whether the type supports modifiers (scope or accessibility) or not. */ - function validateMembersOrder(members, order, supportsModifiers) { - if (members && order !== 'never') { - const previousRanks = []; - // Find first member which isn't correctly sorted - members.forEach(member => { - const rank = getRank(member, order, supportsModifiers); - if (rank !== -1) { - if (rank < previousRanks[previousRanks.length - 1]) { - context.report({ - node: member, - messageId: 'incorrectOrder', - data: { - name: getMemberName(member), - rank: getLowestRank(previousRanks, rank, order), - }, - }); - } - else { - previousRanks.push(rank); - } - } - }); + function validateMembersOrder(members, orderConfig, supportsModifiers) { + if (orderConfig === 'never') { + return; + } + // Standardize config + let order = null; + let memberTypes; + if (Array.isArray(orderConfig)) { + memberTypes = orderConfig; + } + else { + order = orderConfig.order; + memberTypes = orderConfig.memberTypes; + } + // Check order + if (Array.isArray(memberTypes)) { + const grouped = checkGroupSort(members, memberTypes, supportsModifiers); + if (grouped === null) { + return; + } + if (order === 'alphabetically') { + grouped.some(groupMember => !checkAlphaSort(groupMember)); + } + } + else if (order === 'alphabetically') { + checkAlphaSort(members); } } return { ClassDeclaration(node) { var _a; - validateMembersOrder(node.body.body, (_a = options.classes, (_a !== null && _a !== void 0 ? _a : options.default)), true); + validateMembersOrder(node.body.body, (_a = options.classes) !== null && _a !== void 0 ? _a : options.default, true); }, ClassExpression(node) { var _a; - validateMembersOrder(node.body.body, (_a = options.classExpressions, (_a !== null && _a !== void 0 ? _a : options.default)), true); + validateMembersOrder(node.body.body, (_a = options.classExpressions) !== null && _a !== void 0 ? _a : options.default, true); }, TSInterfaceDeclaration(node) { var _a; - validateMembersOrder(node.body.body, (_a = options.interfaces, (_a !== null && _a !== void 0 ? _a : options.default)), false); + validateMembersOrder(node.body.body, (_a = options.interfaces) !== null && _a !== void 0 ? _a : options.default, false); }, TSTypeLiteral(node) { var _a; - validateMembersOrder(node.members, (_a = options.typeLiterals, (_a !== null && _a !== void 0 ? _a : options.default)), false); + validateMembersOrder(node.members, (_a = options.typeLiterals) !== null && _a !== void 0 ? _a : options.default, false); }, }; }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map index 27863fd9..912eb4b4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js.map @@ -1 +1 @@ -{"version":3,"file":"member-ordering.js","sourceRoot":"","sources":["../../src/rules/member-ordering.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"member-ordering.js","sourceRoot":"","sources":["../../src/rules/member-ordering.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js new file mode 100644 index 00000000..f73a0173 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js @@ -0,0 +1,162 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'method-signature-style', + meta: { + type: 'suggestion', + docs: { + description: 'Enforces using a particular method signature syntax.', + category: 'Best Practices', + recommended: false, + }, + fixable: 'code', + messages: { + errorMethod: 'Shorthand method signature is forbidden. Use a function property instead.', + errorProperty: 'Function property signature is forbidden. Use a method shorthand instead.', + }, + schema: [ + { + enum: ['property', 'method'], + }, + ], + }, + defaultOptions: ['property'], + create(context, [mode]) { + const sourceCode = context.getSourceCode(); + function getMethodKey(node) { + let key = sourceCode.getText(node.key); + if (node.computed) { + key = `[${key}]`; + } + if (node.optional) { + key = `${key}?`; + } + if (node.readonly) { + key = `readonly ${key}`; + } + return key; + } + function getMethodParams(node) { + let params = '()'; + if (node.params.length > 0) { + const openingParen = util.nullThrows(sourceCode.getTokenBefore(node.params[0], util.isOpeningParenToken), 'Missing opening paren before first parameter'); + const closingParen = util.nullThrows(sourceCode.getTokenAfter(node.params[node.params.length - 1], util.isClosingParenToken), 'Missing closing paren after last parameter'); + params = sourceCode.text.substring(openingParen.range[0], closingParen.range[1]); + } + if (node.typeParameters != null) { + const typeParams = sourceCode.getText(node.typeParameters); + params = `${typeParams}${params}`; + } + return params; + } + function getMethodReturnType(node) { + return sourceCode.getText(node.returnType.typeAnnotation); + } + function getDelimiter(node) { + const lastToken = sourceCode.getLastToken(node); + if (lastToken && + (util.isSemicolonToken(lastToken) || util.isCommaToken(lastToken))) { + return lastToken.value; + } + return ''; + } + return { + TSMethodSignature(methodNode) { + var _a; + if (mode === 'method') { + return; + } + const duplicatedKeyMethodNodes = ((_a = methodNode.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSInterfaceBody + ? methodNode.parent.body.filter((element) => element.type === experimental_utils_1.AST_NODE_TYPES.TSMethodSignature && + element !== methodNode && + getMethodKey(element) === getMethodKey(methodNode)) + : []; + if (duplicatedKeyMethodNodes.length > 0) { + context.report({ + node: methodNode, + messageId: 'errorMethod', + *fix(fixer) { + const methodNodes = [ + methodNode, + ...duplicatedKeyMethodNodes, + ].sort((a, b) => (a.range[0] < b.range[0] ? -1 : 1)); + const typeString = methodNodes.reduce((str, node, idx, nodes) => { + const params = getMethodParams(node); + const returnType = getMethodReturnType(node); + return `${str}(${params} => ${returnType})${idx !== nodes.length - 1 ? ' & ' : ''}`; + }, ''); + const key = getMethodKey(methodNode); + const delimiter = getDelimiter(methodNode); + yield fixer.replaceText(methodNode, `${key}: ${typeString}${delimiter}`); + for (const node of duplicatedKeyMethodNodes) { + const lastToken = sourceCode.getLastToken(node); + if (lastToken) { + const nextToken = sourceCode.getTokenAfter(lastToken); + if (nextToken) { + yield fixer.remove(node); + yield fixer.replaceTextRange([lastToken.range[1], nextToken.range[0]], ''); + } + } + } + }, + }); + return; + } + context.report({ + node: methodNode, + messageId: 'errorMethod', + fix: fixer => { + const key = getMethodKey(methodNode); + const params = getMethodParams(methodNode); + const returnType = getMethodReturnType(methodNode); + const delimiter = getDelimiter(methodNode); + return fixer.replaceText(methodNode, `${key}: ${params} => ${returnType}${delimiter}`); + }, + }); + }, + TSPropertySignature(propertyNode) { + var _a; + const typeNode = (_a = propertyNode.typeAnnotation) === null || _a === void 0 ? void 0 : _a.typeAnnotation; + if ((typeNode === null || typeNode === void 0 ? void 0 : typeNode.type) !== experimental_utils_1.AST_NODE_TYPES.TSFunctionType) { + return; + } + if (mode === 'property') { + return; + } + context.report({ + node: propertyNode, + messageId: 'errorProperty', + fix: fixer => { + const key = getMethodKey(propertyNode); + const params = getMethodParams(typeNode); + const returnType = getMethodReturnType(typeNode); + const delimiter = getDelimiter(propertyNode); + return fixer.replaceText(propertyNode, `${key}${params}: ${returnType}${delimiter}`); + }, + }); + }, + }; + }, +}); +//# sourceMappingURL=method-signature-style.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map new file mode 100644 index 00000000..e7081d2c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map @@ -0,0 +1 @@ +{"version":3,"file":"method-signature-style.js","sourceRoot":"","sources":["../../src/rules/method-signature-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js index 7f2e651b..e709fd71 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js @@ -1,12 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.selectorTypeToMessageString = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); // #region Options Type Config @@ -16,7 +29,6 @@ var PredefinedFormats; PredefinedFormats[PredefinedFormats["strictCamelCase"] = 2] = "strictCamelCase"; PredefinedFormats[PredefinedFormats["PascalCase"] = 4] = "PascalCase"; PredefinedFormats[PredefinedFormats["StrictPascalCase"] = 8] = "StrictPascalCase"; - // eslint-disable-next-line @typescript-eslint/camelcase PredefinedFormats[PredefinedFormats["snake_case"] = 16] = "snake_case"; PredefinedFormats[PredefinedFormats["UPPER_CASE"] = 32] = "UPPER_CASE"; })(PredefinedFormats || (PredefinedFormats = {})); @@ -55,12 +67,13 @@ var MetaSelectors; })(MetaSelectors || (MetaSelectors = {})); var Modifiers; (function (Modifiers) { - Modifiers[Modifiers["readonly"] = 1] = "readonly"; - Modifiers[Modifiers["static"] = 2] = "static"; - Modifiers[Modifiers["public"] = 4] = "public"; - Modifiers[Modifiers["protected"] = 8] = "protected"; - Modifiers[Modifiers["private"] = 16] = "private"; - Modifiers[Modifiers["abstract"] = 32] = "abstract"; + Modifiers[Modifiers["const"] = 1] = "const"; + Modifiers[Modifiers["readonly"] = 2] = "readonly"; + Modifiers[Modifiers["static"] = 4] = "static"; + Modifiers[Modifiers["public"] = 8] = "public"; + Modifiers[Modifiers["protected"] = 16] = "protected"; + Modifiers[Modifiers["private"] = 32] = "private"; + Modifiers[Modifiers["abstract"] = 64] = "abstract"; })(Modifiers || (Modifiers = {})); var TypeModifiers; (function (TypeModifiers) { @@ -159,13 +172,59 @@ function selectorSchema(selectorString, allowType, modifiers) { }, ]; } +function selectorsSchema() { + return { + type: 'object', + properties: Object.assign(Object.assign({}, FORMAT_OPTIONS_PROPERTIES), { + filter: { + oneOf: [ + { + type: 'string', + minLength: 1, + }, + MATCH_REGEX_SCHEMA, + ], + }, + selector: { + type: 'array', + items: { + type: 'string', + enum: [ + ...util.getEnumNames(MetaSelectors), + ...util.getEnumNames(Selectors), + ], + }, + additionalItems: false, + }, + modifiers: { + type: 'array', + items: { + type: 'string', + enum: util.getEnumNames(Modifiers), + }, + additionalItems: false, + }, + types: { + type: 'array', + items: { + type: 'string', + enum: util.getEnumNames(TypeModifiers), + }, + additionalItems: false, + }, + }), + required: ['selector', 'format'], + additionalProperties: false, + }; +} const SCHEMA = { type: 'array', items: { oneOf: [ + selectorsSchema(), ...selectorSchema('default', false, util.getEnumNames(Modifiers)), ...selectorSchema('variableLike', false), - ...selectorSchema('variable', true), + ...selectorSchema('variable', true, ['const']), ...selectorSchema('function', false), ...selectorSchema('parameter', true), ...selectorSchema('memberLike', false, [ @@ -248,17 +307,19 @@ exports.default = util.createRule({ }, type: 'suggestion', messages: { - unexpectedUnderscore: '{{type}} name {{name}} must not have a {{position}} underscore.', - missingUnderscore: '{{type}} name {{name}} must have a {{position}} underscore', - missingAffix: '{{type}} name {{name}} must have one of the following {{position}}es: {{affixes}}', - satisfyCustom: '{{type}} name {{name}} must {{regexMatch}} the RegExp: {{regex}}', - doesNotMatchFormat: '{{type}} name {{name}} must match one of the following formats: {{formats}}', + unexpectedUnderscore: '{{type}} name `{{name}}` must not have a {{position}} underscore.', + missingUnderscore: '{{type}} name `{{name}}` must have a {{position}} underscore.', + missingAffix: '{{type}} name `{{name}}` must have one of the following {{position}}es: {{affixes}}', + satisfyCustom: '{{type}} name `{{name}}` must {{regexMatch}} the RegExp: {{regex}}', + doesNotMatchFormat: '{{type}} name `{{name}}` must match one of the following formats: {{formats}}', + doesNotMatchFormatTrimmed: '{{type}} name `{{name}}` trimmed as `{{processedName}}` must match one of the following formats: {{formats}}', }, schema: SCHEMA, }, defaultOptions: defaultCamelCaseAllTheThingsConfig, create(contextWithoutDefaults) { - const context = contextWithoutDefaults.options + const context = contextWithoutDefaults.options && + contextWithoutDefaults.options.length > 0 ? contextWithoutDefaults : // only apply the defaults when the user provides no config Object.setPrototypeOf({ @@ -301,8 +362,15 @@ exports.default = util.createRule({ } const identifiers = []; getIdentifiersFromPattern(node.id, identifiers); + const modifiers = new Set(); + const parent = node.parent; + if (parent && + parent.type === experimental_utils_1.AST_NODE_TYPES.VariableDeclaration && + parent.kind === 'const') { + modifiers.add(Modifiers.const); + } identifiers.forEach(i => { - validator(i); + validator(i, modifiers); }); }, // #endregion @@ -348,7 +416,7 @@ exports.default = util.createRule({ }, // #endregion parameterProperty // #region property - 'Property[computed = false][kind = "init"][value.type != "ArrowFunctionExpression"][value.type != "FunctionExpression"][value.type != "TSEmptyBodyFunctionExpression"]'(node) { + ':not(ObjectPattern) > Property[computed = false][kind = "init"][value.type != "ArrowFunctionExpression"][value.type != "FunctionExpression"][value.type != "TSEmptyBodyFunctionExpression"]'(node) { const modifiers = new Set([Modifiers.public]); handleMember(validators.property, node, modifiers); }, @@ -502,12 +570,13 @@ function getIdentifiersFromPattern(pattern, identifiers) { } } function parseOptions(context) { - const normalizedOptions = context.options.map(opt => normalizeOption(opt)); - const parsedOptions = util.getEnumNames(Selectors).reduce((acc, k) => { + const normalizedOptions = context.options + .map(opt => normalizeOption(opt)) + .reduce((acc, val) => acc.concat(val), []); + return util.getEnumNames(Selectors).reduce((acc, k) => { acc[k] = createValidator(k, context, normalizedOptions); return acc; }, {}); - return parsedOptions; } function createValidator(type, context, allConfigs) { // make sure the "highest priority" configs are checked first @@ -589,18 +658,19 @@ function createValidator(type, context, allConfigs) { } }; // centralizes the logic for formatting the report data - function formatReportData({ affixes, formats, originalName, position, custom, }) { - var _a, _b, _c, _d, _e, _f; + function formatReportData({ affixes, formats, originalName, processedName, position, custom, }) { + var _a; return { type: selectorTypeToMessageString(type), name: originalName, + processedName, position, - affixes: (_a = affixes) === null || _a === void 0 ? void 0 : _a.join(', '), - formats: (_b = formats) === null || _b === void 0 ? void 0 : _b.map(f => PredefinedFormats[f]).join(', '), - regex: (_d = (_c = custom) === null || _c === void 0 ? void 0 : _c.regex) === null || _d === void 0 ? void 0 : _d.toString(), - regexMatch: ((_e = custom) === null || _e === void 0 ? void 0 : _e.match) === true + affixes: affixes === null || affixes === void 0 ? void 0 : affixes.join(', '), + formats: formats === null || formats === void 0 ? void 0 : formats.map(f => PredefinedFormats[f]).join(', '), + regex: (_a = custom === null || custom === void 0 ? void 0 : custom.regex) === null || _a === void 0 ? void 0 : _a.toString(), + regexMatch: (custom === null || custom === void 0 ? void 0 : custom.match) === true ? 'match' - : ((_f = custom) === null || _f === void 0 ? void 0 : _f.match) === false + : (custom === null || custom === void 0 ? void 0 : custom.match) === false ? 'not match' : null, }; @@ -721,9 +791,12 @@ function createValidator(type, context, allConfigs) { } context.report({ node, - messageId: 'doesNotMatchFormat', + messageId: originalName === name + ? 'doesNotMatchFormat' + : 'doesNotMatchFormatTrimmed', data: formatReportData({ originalName, + processedName: name, formats, }), }); @@ -745,22 +818,18 @@ https://gist.github.com/mathiasbynens/6334847 */ function isPascalCase(name) { return (name.length === 0 || - // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with (name[0] === name[0].toUpperCase() && !name.includes('_'))); } function isStrictPascalCase(name) { return (name.length === 0 || - // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with (name[0] === name[0].toUpperCase() && hasStrictCamelHumps(name, true))); } function isCamelCase(name) { return (name.length === 0 || - // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with (name[0] === name[0].toLowerCase() && !name.includes('_'))); } function isStrictCamelCase(name) { return (name.length === 0 || - // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with (name[0] === name[0].toLowerCase() && hasStrictCamelHumps(name, false))); } function hasStrictCamelHumps(name, isUpper) { @@ -842,12 +911,12 @@ function normalizeOption(option) { if (option.filter) { weight |= 1 << 30; } - return { + const normalizedOption = { // format options format: option.format ? option.format.map(f => PredefinedFormats[f]) : null, custom: option.custom ? { - regex: new RegExp(option.custom.regex), + regex: new RegExp(option.custom.regex, 'u'), match: option.custom.match, } : null, @@ -859,23 +928,36 @@ function normalizeOption(option) { : null, prefix: option.prefix && option.prefix.length > 0 ? option.prefix : null, suffix: option.suffix && option.suffix.length > 0 ? option.suffix : null, - // selector options - selector: isMetaSelector(option.selector) - ? MetaSelectors[option.selector] - : Selectors[option.selector], - modifiers: (_d = (_c = option.modifiers) === null || _c === void 0 ? void 0 : _c.map(m => Modifiers[m]), (_d !== null && _d !== void 0 ? _d : null)), - types: (_f = (_e = option.types) === null || _e === void 0 ? void 0 : _e.map(m => TypeModifiers[m]), (_f !== null && _f !== void 0 ? _f : null)), + modifiers: (_d = (_c = option.modifiers) === null || _c === void 0 ? void 0 : _c.map(m => Modifiers[m])) !== null && _d !== void 0 ? _d : null, + types: (_f = (_e = option.types) === null || _e === void 0 ? void 0 : _e.map(m => TypeModifiers[m])) !== null && _f !== void 0 ? _f : null, filter: option.filter !== undefined ? typeof option.filter === 'string' - ? { regex: new RegExp(option.filter), match: true } + ? { regex: new RegExp(option.filter, 'u'), match: true } : { - regex: new RegExp(option.filter.regex), + regex: new RegExp(option.filter.regex, 'u'), match: option.filter.match, } : null, // calculated ordering weight based on modifiers modifierWeight: weight, }; + const selectors = Array.isArray(option.selector) + ? option.selector + : [option.selector]; + const selectorsAllowedToHaveTypes = [ + Selectors.variable, + Selectors.parameter, + Selectors.property, + Selectors.parameterProperty, + Selectors.accessor, + ]; + const config = []; + selectors + .map(selector => isMetaSelector(selector) ? MetaSelectors[selector] : Selectors[selector]) + .forEach(selector => selectorsAllowedToHaveTypes.includes(selector) + ? config.push(Object.assign({ selector: selector }, normalizedOption)) + : config.push(Object.assign(Object.assign({ selector: selector }, normalizedOption), { types: null }))); + return config; } function isCorrectType(node, config, context) { if (config.types === null) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map index 200d2ce0..76ea393d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js.map @@ -1 +1 @@ -{"version":3,"file":"naming-convention.js","sourceRoot":"","sources":["../../src/rules/naming-convention.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"naming-convention.js","sourceRoot":"","sources":["../../src/rules/naming-convention.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js index 861a4c4e..806672e9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -36,7 +48,7 @@ exports.default = util.createRule({ node.callee.type === experimental_utils_1.AST_NODE_TYPES.Identifier && node.callee.name === 'Array' && !node.typeParameters && - !util.isOptionalOptionalChain(node)) { + !util.isOptionalCallExpression(node)) { context.report({ node, messageId: 'useLiteral', @@ -53,7 +65,6 @@ exports.default = util.createRule({ } return { CallExpression: check, - OptionalCallExpression: check, NewExpression: check, }; }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map index 7f4596e6..db44e489 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js.map @@ -1 +1 @@ -{"version":3,"file":"no-array-constructor.js","sourceRoot":"","sources":["../../src/rules/no-array-constructor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,OAAO;YACpB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,UAAU,EAAE,8CAA8C;SAC3D;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ;;;WAGG;QACH,SAAS,KAAK,CACZ,IAG0B;YAE1B,IACE,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;gBAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;gBAC5B,CAAC,IAAI,CAAC,cAAc;gBACpB,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EACnC;gBACA,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,YAAY;oBACvB,GAAG,CAAC,KAAK;wBACP,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;4BAC/B,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;yBACtC;wBACD,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACvD,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAE5D,OAAO,KAAK,CAAC,WAAW,CACtB,IAAI,EACJ,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAC9C,CAAC;oBACJ,CAAC;iBACF,CAAC,CAAC;aACJ;QACH,CAAC;QAED,OAAO;YACL,cAAc,EAAE,KAAK;YACrB,sBAAsB,EAAE,KAAK;YAC7B,aAAa,EAAE,KAAK;SACrB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-array-constructor.js","sourceRoot":"","sources":["../../src/rules/no-array-constructor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,OAAO;YACpB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,UAAU,EAAE,8CAA8C;SAC3D;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ;;;WAGG;QACH,SAAS,KAAK,CACZ,IAAsD;YAEtD,IACE,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;gBAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;gBAC5B,CAAC,IAAI,CAAC,cAAc;gBACpB,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EACpC;gBACA,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,YAAY;oBACvB,GAAG,CAAC,KAAK;wBACP,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;4BAC/B,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;yBACtC;wBACD,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACvD,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAE5D,OAAO,KAAK,CAAC,WAAW,CACtB,IAAI,EACJ,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAC9C,CAAC;oBACJ,CAAC;iBACF,CAAC,CAAC;aACJ;QACH,CAAC;QAED,OAAO;YACL,cAAc,EAAE,KAAK;YACrB,aAAa,EAAE,KAAK;SACrB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js index c2f33cc6..b3b994b1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -26,20 +38,39 @@ exports.default = util.createRule({ requiresTypeChecking: true, }, messages: { - baseToString: "'{{name}} {{certainty}} evaluate to '[Object object]' when stringified.", + baseToString: "'{{name}} {{certainty}} evaluate to '[object Object]' when stringified.", }, - schema: [], + schema: [ + { + type: 'object', + properties: { + ignoredTypeNames: { + type: 'array', + items: { + type: 'string', + }, + }, + }, + additionalProperties: false, + }, + ], type: 'suggestion', }, - defaultOptions: [], - create(context) { + defaultOptions: [ + { + ignoredTypeNames: ['RegExp'], + }, + ], + create(context, [option]) { + var _a; const parserServices = util.getParserServices(context); const typeChecker = parserServices.program.getTypeChecker(); + const ignoredTypeNames = (_a = option.ignoredTypeNames) !== null && _a !== void 0 ? _a : []; function checkExpression(node, type) { if (node.type === experimental_utils_1.AST_NODE_TYPES.Literal) { return; } - const certainty = collectToStringCertainty((type !== null && type !== void 0 ? type : typeChecker.getTypeAtLocation(parserServices.esTreeNodeToTSNodeMap.get(node)))); + const certainty = collectToStringCertainty(type !== null && type !== void 0 ? type : typeChecker.getTypeAtLocation(parserServices.esTreeNodeToTSNodeMap.get(node))); if (certainty === Usefulness.Always) { return; } @@ -54,19 +85,49 @@ exports.default = util.createRule({ } function collectToStringCertainty(type) { const toString = typeChecker.getPropertyOfType(type, 'toString'); - if (toString === undefined || toString.declarations.length === 0) { + const declarations = toString === null || toString === void 0 ? void 0 : toString.getDeclarations(); + if (!toString || !declarations || declarations.length === 0) { return Usefulness.Always; } - if (toString.declarations.every(({ parent }) => !ts.isInterfaceDeclaration(parent) || parent.name.text !== 'Object')) { + // Patch for old version TypeScript, the Boolean type definition missing toString() + if (type.flags & ts.TypeFlags.Boolean || + type.flags & ts.TypeFlags.BooleanLiteral) { return Usefulness.Always; } + if (ignoredTypeNames.includes(util.getTypeName(typeChecker, type))) { + return Usefulness.Always; + } + if (declarations.every(({ parent }) => !ts.isInterfaceDeclaration(parent) || parent.name.text !== 'Object')) { + return Usefulness.Always; + } + if (type.isIntersection()) { + for (const subType of type.types) { + const subtypeUsefulness = collectToStringCertainty(subType); + if (subtypeUsefulness === Usefulness.Always) { + return Usefulness.Always; + } + } + return Usefulness.Never; + } if (!type.isUnion()) { return Usefulness.Never; } + let allSubtypesUseful = true; + let someSubtypeUseful = false; for (const subType of type.types) { - if (collectToStringCertainty(subType) !== Usefulness.Never) { - return Usefulness.Sometimes; + const subtypeUsefulness = collectToStringCertainty(subType); + if (subtypeUsefulness !== Usefulness.Always && allSubtypesUseful) { + allSubtypesUseful = false; } + if (subtypeUsefulness !== Usefulness.Never && !someSubtypeUseful) { + someSubtypeUseful = true; + } + } + if (allSubtypesUseful && someSubtypeUseful) { + return Usefulness.Always; + } + if (someSubtypeUseful) { + return Usefulness.Sometimes; } return Usefulness.Never; } @@ -86,6 +147,10 @@ exports.default = util.createRule({ checkExpression(memberExpr.object); }, TemplateLiteral(node) { + if (node.parent && + node.parent.type === experimental_utils_1.AST_NODE_TYPES.TaggedTemplateExpression) { + return; + } for (const expression of node.expressions) { checkExpression(expression); } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map index 48f5468a..378fe4c7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js.map @@ -1 +1 @@ -{"version":3,"file":"no-base-to-string.js","sourceRoot":"","sources":["../../src/rules/no-base-to-string.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-base-to-string.js","sourceRoot":"","sources":["../../src/rules/no-base-to-string.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js new file mode 100644 index 00000000..9369dc9f --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js @@ -0,0 +1,97 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-confusing-non-null-assertion', + meta: { + type: 'problem', + docs: { + description: 'Disallow non-null assertion in locations that may be confusing', + category: 'Stylistic Issues', + recommended: false, + }, + fixable: 'code', + messages: { + confusingEqual: 'Confusing combinations of non-null assertion and equal test like "a! == b", which looks very similar to not equal "a !== b"', + confusingAssign: 'Confusing combinations of non-null assertion and equal test like "a! = b", which looks very similar to not equal "a != b"', + notNeedInEqualTest: 'Unnecessary non-null assertion (!) in equal test', + notNeedInAssign: 'Unnecessary non-null assertion (!) in assignment left hand', + wrapUpLeft: 'Wrap up left hand to avoid putting non-null assertion "!" and "=" together', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const sourceCode = context.getSourceCode(); + return { + 'BinaryExpression, AssignmentExpression'(node) { + function isLeftHandPrimaryExpression(node) { + return node.type === experimental_utils_1.AST_NODE_TYPES.TSNonNullExpression; + } + if (node.operator === '==' || + node.operator === '===' || + node.operator === '=') { + const isAssign = node.operator === '='; + const leftHandFinalToken = sourceCode.getLastToken(node.left); + const tokenAfterLeft = sourceCode.getTokenAfter(node.left); + if ((leftHandFinalToken === null || leftHandFinalToken === void 0 ? void 0 : leftHandFinalToken.type) === experimental_utils_1.AST_TOKEN_TYPES.Punctuator && + (leftHandFinalToken === null || leftHandFinalToken === void 0 ? void 0 : leftHandFinalToken.value) === '!' && + (tokenAfterLeft === null || tokenAfterLeft === void 0 ? void 0 : tokenAfterLeft.value) !== ')') { + if (isLeftHandPrimaryExpression(node.left)) { + context.report({ + node, + messageId: isAssign ? 'confusingAssign' : 'confusingEqual', + suggest: [ + { + messageId: isAssign + ? 'notNeedInAssign' + : 'notNeedInEqualTest', + fix: (fixer) => [ + fixer.remove(leftHandFinalToken), + ], + }, + ], + }); + } + else { + context.report({ + node, + messageId: isAssign ? 'confusingAssign' : 'confusingEqual', + suggest: [ + { + messageId: 'wrapUpLeft', + fix: (fixer) => [ + fixer.insertTextBefore(node.left, '('), + fixer.insertTextAfter(node.left, ')'), + ], + }, + ], + }); + } + } + } + }, + }; + }, +}); +//# sourceMappingURL=no-confusing-non-null-assertion.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js.map new file mode 100644 index 00000000..d789e544 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-confusing-non-null-assertion.js","sourceRoot":"","sources":["../../src/rules/no-confusing-non-null-assertion.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAK+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,iCAAiC;IACvC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,gEAAgE;YAClE,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,cAAc,EACZ,6HAA6H;YAC/H,eAAe,EACb,2HAA2H;YAC7H,kBAAkB,EAAE,kDAAkD;YACtE,eAAe,EACb,4DAA4D;YAC9D,UAAU,EACR,4EAA4E;SAC/E;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,OAAO;YACL,wCAAwC,CACtC,IAA+D;gBAE/D,SAAS,2BAA2B,CAClC,IAAyB;oBAEzB,OAAO,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAAC;gBAC1D,CAAC;gBAED,IACE,IAAI,CAAC,QAAQ,KAAK,IAAI;oBACtB,IAAI,CAAC,QAAQ,KAAK,KAAK;oBACvB,IAAI,CAAC,QAAQ,KAAK,GAAG,EACrB;oBACA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,GAAG,CAAC;oBACvC,MAAM,kBAAkB,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC9D,MAAM,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC3D,IACE,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,IAAI,MAAK,oCAAe,CAAC,UAAU;wBACvD,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,KAAK,MAAK,GAAG;wBACjC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,MAAK,GAAG,EAC7B;wBACA,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BAC1C,OAAO,CAAC,MAAM,CAAC;gCACb,IAAI;gCACJ,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB;gCAC1D,OAAO,EAAE;oCACP;wCACE,SAAS,EAAE,QAAQ;4CACjB,CAAC,CAAC,iBAAiB;4CACnB,CAAC,CAAC,oBAAoB;wCACxB,GAAG,EAAE,CAAC,KAAK,EAAsB,EAAE,CAAC;4CAClC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC;yCACjC;qCACF;iCACF;6BACF,CAAC,CAAC;yBACJ;6BAAM;4BACL,OAAO,CAAC,MAAM,CAAC;gCACb,IAAI;gCACJ,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB;gCAC1D,OAAO,EAAE;oCACP;wCACE,SAAS,EAAE,YAAY;wCACvB,GAAG,EAAE,CAAC,KAAK,EAAsB,EAAE,CAAC;4CAClC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;4CACtC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;yCACtC;qCACF;iCACF;6BACF,CAAC,CAAC;yBACJ;qBACF;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js index 9c4a211b..a823830e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js @@ -1,14 +1,26 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const no_dupe_class_members_1 = __importDefault(require("eslint/lib/rules/no-dupe-class-members")); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map index 010b7b72..7e93badc 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js.map @@ -1 +1 @@ -{"version":3,"file":"no-dupe-class-members.js","sourceRoot":"","sources":["../../src/rules/no-dupe-class-members.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAAuE;AACvE,mGAA8D;AAC9D,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,+BAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,+BAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,+BAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,uCACK,KAAK,KACR,gBAAgB,CAAC,IAAI;gBACnB,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,6BAA6B,EAAE;oBACpE,OAAO;iBACR;gBAED,OAAO,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-dupe-class-members.js","sourceRoot":"","sources":["../../src/rules/no-dupe-class-members.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAuE;AACvE,mGAA8D;AAC9D,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,+BAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,+BAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,+BAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,uCACK,KAAK,KACR,gBAAgB,CAAC,IAAI;gBACnB,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,6BAA6B,EAAE;oBACpE,OAAO;iBACR;gBAED,OAAO,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js index 8d254e0c..911e4012 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map index fc1a44e2..bf3450bc 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js.map @@ -1 +1 @@ -{"version":3,"file":"no-dynamic-delete.js","sourceRoot":"","sources":["../../src/rules/no-dynamic-delete.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAI+C;AAC/C,iDAAmC;AACnC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,4DAA4D;YACzE,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,aAAa,EAAE,mDAAmD;SACnE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACnB;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,WAAW,CAClB,MAAiC;YAEjC,IACE,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO;gBAC/C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EACzC;gBACA,OAAO,yBAAyB,CAC9B,MAAM,CAAC,QAAQ,EACf,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAC5B,CAAC;aACH;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO;YACL,kCAAkC,CAAC,IAA8B;gBAC/D,IACE,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB;oBACtD,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ;oBACvB,wBAAwB,CACtB,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACnD,EACD;oBACA,OAAO;iBACR;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAC/B,SAAS,EAAE,eAAe;oBAC1B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;iBAC7B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;QAEF,SAAS,yBAAyB,CAChC,QAA6B,EAC7B,WAAmB;YAEnB,OAAO,CAAC,KAAyB,EAAoB,EAAE,CACrD,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC;QACjE,CAAC;QAED,SAAS,aAAa,CAAC,QAA6B;YAClD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;YAE3C,OAAO;gBACL,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7C,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC;aAC7C,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,0BAA0B,CACjC,IAAyB;IAEzB,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,EAAE;QAChD,OAAO,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAClD;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAAC,QAA6B;IAC7D,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;QAC5C,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE;QACtC,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ;QAClC,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC/C,CAAC;AACJ,CAAC"} \ No newline at end of file +{"version":3,"file":"no-dynamic-delete.js","sourceRoot":"","sources":["../../src/rules/no-dynamic-delete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAI+C;AAC/C,iDAAmC;AACnC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,4DAA4D;YACzE,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,aAAa,EAAE,mDAAmD;SACnE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACnB;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,WAAW,CAClB,MAAiC;YAEjC,IACE,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO;gBAC/C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EACzC;gBACA,OAAO,yBAAyB,CAC9B,MAAM,CAAC,QAAQ,EACf,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAC5B,CAAC;aACH;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO;YACL,kCAAkC,CAAC,IAA8B;gBAC/D,IACE,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB;oBACtD,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ;oBACvB,wBAAwB,CACtB,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACnD,EACD;oBACA,OAAO;iBACR;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAC/B,SAAS,EAAE,eAAe;oBAC1B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;iBAC7B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;QAEF,SAAS,yBAAyB,CAChC,QAA6B,EAC7B,WAAmB;YAEnB,OAAO,CAAC,KAAyB,EAAoB,EAAE,CACrD,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC;QACjE,CAAC;QAED,SAAS,aAAa,CAAC,QAA6B;YAClD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;YAE3C,OAAO;gBACL,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7C,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC;aAC7C,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,0BAA0B,CACjC,IAAyB;IAEzB,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,EAAE;QAChD,OAAO,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAClD;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAAC,QAA6B;IAC7D,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;QAC5C,OAAO,KAAK,CAAC;KACd;IAED,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE;QACtC,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ;QAClC,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC/C,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js index c2ac27d5..775e85cc 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js @@ -1,14 +1,26 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const no_empty_function_1 = __importDefault(require("eslint/lib/rules/no-empty-function")); @@ -30,6 +42,9 @@ const schema = util.deepMerge(Array.isArray(no_empty_function_1.default.meta.sch 'constructors', 'private-constructors', 'protected-constructors', + 'asyncFunctions', + 'asyncMethods', + 'decoratedFunctions', ], }, }, @@ -57,6 +72,7 @@ exports.default = util.createRule({ const rules = no_empty_function_1.default.create(context); const isAllowedProtectedConstructors = allow.includes('protected-constructors'); const isAllowedPrivateConstructors = allow.includes('private-constructors'); + const isAllowedDecoratedFunctions = allow.includes('decoratedFunctions'); /** * Check if the method body is empty * @param node the node to be validated @@ -73,8 +89,8 @@ exports.default = util.createRule({ * @private */ function hasParameterProperties(node) { - return (node.params && - node.params.some(param => param.type === experimental_utils_1.AST_NODE_TYPES.TSParameterProperty)); + var _a; + return (_a = node.params) === null || _a === void 0 ? void 0 : _a.some(param => param.type === experimental_utils_1.AST_NODE_TYPES.TSParameterProperty); } /** * @param node the node to be validated @@ -82,10 +98,9 @@ exports.default = util.createRule({ * @private */ function isAllowedEmptyConstructor(node) { - var _a; const parent = node.parent; if (isBodyEmpty(node) && - ((_a = parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && + (parent === null || parent === void 0 ? void 0 : parent.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && parent.kind === 'constructor') { const { accessibility } = parent; return ( @@ -98,11 +113,33 @@ exports.default = util.createRule({ } return false; } + /** + * @param node the node to be validated + * @returns true if a function has decorators + * @private + */ + function isAllowedEmptyDecoratedFunctions(node) { + var _a; + if (isAllowedDecoratedFunctions && isBodyEmpty(node)) { + const decorators = ((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition + ? node.parent.decorators + : undefined; + return !!decorators && !!decorators.length; + } + return false; + } return Object.assign(Object.assign({}, rules), { FunctionExpression(node) { - if (isAllowedEmptyConstructor(node)) { + if (isAllowedEmptyConstructor(node) || + isAllowedEmptyDecoratedFunctions(node)) { return; } rules.FunctionExpression(node); + }, + FunctionDeclaration(node) { + if (isAllowedEmptyDecoratedFunctions(node)) { + return; + } + rules.FunctionDeclaration(node); } }); }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map index 45071255..e081d10c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js.map @@ -1 +1 @@ -{"version":3,"file":"no-empty-function.js","sourceRoot":"","sources":["../../src/rules/no-empty-function.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-empty-function.js","sourceRoot":"","sources":["../../src/rules/no-empty-function.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js index 6944792b..f4037c20 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -16,6 +28,7 @@ exports.default = util.createRule({ description: 'Disallow the declaration of empty interfaces', category: 'Best Practices', recommended: 'error', + suggestion: true, }, fixable: 'code', messages: { @@ -43,6 +56,7 @@ exports.default = util.createRule({ return { TSInterfaceDeclaration(node) { const sourceCode = context.getSourceCode(); + const filename = context.getFilename(); if (node.body.body.length !== 0) { // interface contains members --> Nothing to report return; @@ -57,11 +71,31 @@ exports.default = util.createRule({ else if (extend.length === 1) { // interface extends exactly 1 interface --> Report depending on rule setting if (!allowSingleExtends) { - context.report({ - node: node.id, - messageId: 'noEmptyWithSuper', - fix: fixer => fixer.replaceText(node, `type ${sourceCode.getText(node.id)} = ${sourceCode.getText(extend[0])}`), - }); + const fix = (fixer) => { + let typeParam = ''; + if (node.typeParameters) { + typeParam = sourceCode.getText(node.typeParameters); + } + return fixer.replaceText(node, `type ${sourceCode.getText(node.id)}${typeParam} = ${sourceCode.getText(extend[0])}`); + }; + // Check if interface is within ambient declaration + let useAutoFix = true; + if (util.isDefinitionFile(filename)) { + const scope = context.getScope(); + if (scope.type === 'tsModule' && scope.block.declare) { + useAutoFix = false; + } + } + context.report(Object.assign({ node: node.id, messageId: 'noEmptyWithSuper' }, (useAutoFix + ? { fix } + : { + suggest: [ + { + messageId: 'noEmptyWithSuper', + fix, + }, + ], + }))); } } }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map index 1588210d..ba663fe0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js.map @@ -1 +1 @@ -{"version":3,"file":"no-empty-interface.js","sourceRoot":"","sources":["../../src/rules/no-empty-interface.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8CAAgC;AAShC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,OAAO,EAAE,2CAA2C;YACpD,gBAAgB,EACd,mEAAmE;SACtE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,kBAAkB,EAAE,KAAK;SAC1B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC;QACtC,OAAO;YACL,sBAAsB,CAAC,IAAI;gBACzB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;gBAE3C,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC/B,mDAAmD;oBACnD,OAAO;iBACR;gBAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;oBAClC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,IAAI,CAAC,EAAE;wBACb,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;iBACJ;qBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC9B,6EAA6E;oBAC7E,IAAI,CAAC,kBAAkB,EAAE;wBACvB,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,IAAI,CAAC,EAAE;4BACb,SAAS,EAAE,kBAAkB;4BAC7B,GAAG,EAAE,KAAK,CAAC,EAAE,CACX,KAAK,CAAC,WAAW,CACf,IAAI,EACJ,QAAQ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,UAAU,CAAC,OAAO,CACzD,MAAM,CAAC,CAAC,CAAC,CACV,EAAE,CACJ;yBACJ,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-empty-interface.js","sourceRoot":"","sources":["../../src/rules/no-empty-interface.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,UAAU,EAAE,IAAI;SACjB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,OAAO,EAAE,2CAA2C;YACpD,gBAAgB,EACd,mEAAmE;SACtE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,kBAAkB,EAAE,KAAK;SAC1B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC;QACtC,OAAO;YACL,sBAAsB,CAAC,IAAI;gBACzB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;gBAEvC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC/B,mDAAmD;oBACnD,OAAO;iBACR;gBAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;oBAClC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,IAAI,CAAC,EAAE;wBACb,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;iBACJ;qBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC9B,6EAA6E;oBAC7E,IAAI,CAAC,kBAAkB,EAAE;wBACvB,MAAM,GAAG,GAAG,CAAC,KAAyB,EAAoB,EAAE;4BAC1D,IAAI,SAAS,GAAG,EAAE,CAAC;4BACnB,IAAI,IAAI,CAAC,cAAc,EAAE;gCACvB,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;6BACrD;4BACD,OAAO,KAAK,CAAC,WAAW,CACtB,IAAI,EACJ,QAAQ,UAAU,CAAC,OAAO,CACxB,IAAI,CAAC,EAAE,CACR,GAAG,SAAS,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CACnD,CAAC;wBACJ,CAAC,CAAC;wBAEF,mDAAmD;wBACnD,IAAI,UAAU,GAAG,IAAI,CAAC;wBACtB,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;4BACnC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;4BACjC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE;gCACpD,UAAU,GAAG,KAAK,CAAC;6BACpB;yBACF;wBAED,OAAO,CAAC,MAAM,iBACZ,IAAI,EAAE,IAAI,CAAC,EAAE,EACb,SAAS,EAAE,kBAAkB,IAC1B,CAAC,UAAU;4BACZ,CAAC,CAAC,EAAE,GAAG,EAAE;4BACT,CAAC,CAAC;gCACE,OAAO,EAAE;oCACP;wCACE,SAAS,EAAE,kBAAkB;wCAC7B,GAAG;qCACJ;iCACF;6BACF,CAAC,EACN,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js index 49404917..f64ee147 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -17,6 +29,7 @@ exports.default = util.createRule({ description: 'Disallow usage of the `any` type', category: 'Best Practices', recommended: 'warn', + suggestion: true, }, fixable: 'code', messages: { @@ -47,9 +60,9 @@ exports.default = util.createRule({ ], create(context, [{ ignoreRestArgs, fixToUnknown }]) { /** - * Checks if the node is an arrow function, function declaration or function expression + * Checks if the node is an arrow function, function/constructor declaration or function expression * @param node the node to be validated. - * @returns true if the node is an arrow function, function declaration, function expression, function type, or call signature + * @returns true if the node is any kind of function declaration or expression * @private */ function isNodeValidFunction(node) { @@ -57,8 +70,13 @@ exports.default = util.createRule({ experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression, experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration, experimental_utils_1.AST_NODE_TYPES.FunctionExpression, + experimental_utils_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression, experimental_utils_1.AST_NODE_TYPES.TSFunctionType, + experimental_utils_1.AST_NODE_TYPES.TSConstructorType, experimental_utils_1.AST_NODE_TYPES.TSCallSignatureDeclaration, + experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration, + experimental_utils_1.AST_NODE_TYPES.TSMethodSignature, + experimental_utils_1.AST_NODE_TYPES.TSDeclareFunction, ].includes(node.type); } /** @@ -111,9 +129,8 @@ exports.default = util.createRule({ * @private */ function isGreatGrandparentRestElement(node) { - return (typeof node.parent !== 'undefined' && - typeof node.parent.parent !== 'undefined' && - typeof node.parent.parent.parent !== 'undefined' && + var _a, _b; + return (((_b = (_a = node === null || node === void 0 ? void 0 : node.parent) === null || _a === void 0 ? void 0 : _a.parent) === null || _b === void 0 ? void 0 : _b.parent) != null && isNodeRestElementInFunction(node.parent.parent.parent)); } /** @@ -123,11 +140,9 @@ exports.default = util.createRule({ * @private */ function isGreatGreatGrandparentRestElement(node) { - return (typeof node.parent !== 'undefined' && - typeof node.parent.parent !== 'undefined' && + var _a, _b, _c; + return (((_c = (_b = (_a = node.parent) === null || _a === void 0 ? void 0 : _a.parent) === null || _b === void 0 ? void 0 : _b.parent) === null || _c === void 0 ? void 0 : _c.parent) != null && isNodeValidTSType(node.parent.parent) && - typeof node.parent.parent.parent !== 'undefined' && - typeof node.parent.parent.parent.parent !== 'undefined' && isNodeRestElementInFunction(node.parent.parent.parent.parent)); } /** diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map index f3311cdb..d9f8f546 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js.map @@ -1 +1 @@ -{"version":3,"file":"no-explicit-any.js","sourceRoot":"","sources":["../../src/rules/no-explicit-any.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-explicit-any.js","sourceRoot":"","sources":["../../src/rules/no-explicit-any.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js index 47a814d8..9c0ac371 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -15,7 +27,7 @@ exports.default = util.createRule({ docs: { description: 'Disallow extra non-null assertion', category: 'Stylistic Issues', - recommended: false, + recommended: 'error', }, fixable: 'code', schema: [], @@ -36,8 +48,8 @@ exports.default = util.createRule({ } return { 'TSNonNullExpression > TSNonNullExpression': checkExtraNonNullAssertion, - 'OptionalMemberExpression > TSNonNullExpression': checkExtraNonNullAssertion, - 'OptionalCallExpression > TSNonNullExpression.callee': checkExtraNonNullAssertion, + 'MemberExpression[optional = true] > TSNonNullExpression': checkExtraNonNullAssertion, + 'CallExpression[optional = true] > TSNonNullExpression.callee': checkExtraNonNullAssertion, }; }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map index 47999847..ad93d3fe 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js.map @@ -1 +1 @@ -{"version":3,"file":"no-extra-non-null-assertion.js","sourceRoot":"","sources":["../../src/rules/no-extra-non-null-assertion.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8CAAgC;AAGhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,uBAAuB,EAAE,qCAAqC;SAC/D;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,0BAA0B,CACjC,IAAkC;YAElC,OAAO,CAAC,MAAM,CAAC;gBACb,IAAI;gBACJ,SAAS,EAAE,yBAAyB;gBACpC,GAAG,CAAC,KAAK;oBACP,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,2CAA2C,EAAE,0BAA0B;YACvE,gDAAgD,EAAE,0BAA0B;YAC5E,qDAAqD,EAAE,0BAA0B;SAClF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-extra-non-null-assertion.js","sourceRoot":"","sources":["../../src/rules/no-extra-non-null-assertion.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,OAAO;SACrB;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,uBAAuB,EAAE,qCAAqC;SAC/D;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,0BAA0B,CACjC,IAAkC;YAElC,OAAO,CAAC,MAAM,CAAC;gBACb,IAAI;gBACJ,SAAS,EAAE,yBAAyB;gBACpC,GAAG,CAAC,KAAK;oBACP,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,2CAA2C,EAAE,0BAA0B;YACvE,yDAAyD,EAAE,0BAA0B;YACrF,8DAA8D,EAAE,0BAA0B;SAC3F,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js index 18d7a2ae..713be4dd 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js @@ -1,16 +1,28 @@ "use strict"; // any is required to work around manipulating the AST in weird ways /* eslint-disable @typescript-eslint/no-explicit-any */ -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const no_extra_parens_1 = __importDefault(require("eslint/lib/rules/no-extra-parens")); @@ -49,11 +61,18 @@ exports.default = util.createRule({ return rule(node); } function callExp(node) { + var _a; const rule = rules.CallExpression; if (util.isTypeAssertion(node.callee)) { // reduces the precedence of the node so the rule thinks it needs to be wrapped return rule(Object.assign(Object.assign({}, node), { callee: Object.assign(Object.assign({}, node.callee), { type: experimental_utils_1.AST_NODE_TYPES.SequenceExpression }) })); } + if (node.arguments.length === 1 && ((_a = node.typeParameters) === null || _a === void 0 ? void 0 : _a.params.some(param => param.type === experimental_utils_1.AST_NODE_TYPES.TSParenthesizedType || + param.type === experimental_utils_1.AST_NODE_TYPES.TSImportType))) { + return rule(Object.assign(Object.assign({}, node), { arguments: [ + Object.assign(Object.assign({}, node.arguments[0]), { type: experimental_utils_1.AST_NODE_TYPES.SequenceExpression }), + ] })); + } return rule(node); } function unaryUpdateExpression(node) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map index a010fc28..b3b7d7ea 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map @@ -1 +1 @@ -{"version":3,"file":"no-extra-parens.js","sourceRoot":"","sources":["../../src/rules/no-extra-parens.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-extra-parens.js","sourceRoot":"","sources":["../../src/rules/no-extra-parens.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js index 0c1d99b8..7c89f97d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js @@ -1,14 +1,26 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); const no_extra_semi_1 = __importDefault(require("eslint/lib/rules/no-extra-semi")); const util = __importStar(require("../util")); @@ -19,7 +31,7 @@ exports.default = util.createRule({ docs: { description: 'Disallow unnecessary semicolons', category: 'Possible Errors', - recommended: false, + recommended: 'error', extendsBaseRule: true, }, fixable: 'code', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map index ac68a4f5..c7e87d7a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-semi.js.map @@ -1 +1 @@ -{"version":3,"file":"no-extra-semi.js","sourceRoot":"","sources":["../../src/rules/no-extra-semi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mFAAsD;AACtD,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,uBAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,uBAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,uBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,uCACK,KAAK,KACR,aAAa,CAAC,IAAI;gBAChB,KAAK,CAAC,gBAAgB,CAAC,IAAa,CAAC,CAAC;YACxC,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-extra-semi.js","sourceRoot":"","sources":["../../src/rules/no-extra-semi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,mFAAsD;AACtD,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,OAAO;YACpB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,uBAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,uBAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,uBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,uCACK,KAAK,KACR,aAAa,CAAC,IAAI;gBAChB,KAAK,CAAC,gBAAgB,CAAC,IAAa,CAAC,CAAC;YACxC,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js index 1b7c9714..3e813697 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map index aa83cc00..6865a15f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js.map @@ -1 +1 @@ -{"version":3,"file":"no-extraneous-class.js","sourceRoot":"","sources":["../../src/rules/no-extraneous-class.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAYhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;SACnB;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,oBAAoB,EAAE;wBACpB,IAAI,EAAE,SAAS;qBAChB;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,SAAS;qBAChB;oBACD,eAAe,EAAE;wBACf,IAAI,EAAE,SAAS;qBAChB;oBACD,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,yBAAyB;YAChC,UAAU,EAAE,+CAA+C;YAC3D,eAAe,EAAE,2CAA2C;SAC7D;KACF;IACD,cAAc,EAAE;QACd;YACE,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE,KAAK;YACjB,eAAe,EAAE,KAAK;YACtB,kBAAkB,EAAE,KAAK;SAC1B;KACF;IACD,MAAM,CACJ,OAAO,EACP,CAAC,EAAE,oBAAoB,EAAE,UAAU,EAAE,eAAe,EAAE,kBAAkB,EAAE,CAAC;QAE3E,MAAM,oBAAoB,GAAG,CAC3B,IAAsE,EAC7D,EAAE;YACX,OAAO,CAAC,CAAC,CACP,kBAAkB;gBAClB,IAAI;gBACJ,IAAI,CAAC,UAAU;gBACf,IAAI,CAAC,UAAU,CAAC,MAAM,CACvB,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO;YACL,SAAS,CAAC,IAAI;gBACZ,MAAM,MAAM,GAAG,IAAI,CAAC,MAGP,CAAC;gBAEd,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,EAAE;oBAChC,OAAO;iBACR;gBAED,MAAM,UAAU,GAAG,IAAI,IAAI,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;gBACpE,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC1B,IAAI,UAAU,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE;wBAC9C,OAAO;qBACR;oBAED,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,OAAO;qBACnB,CAAC,CAAC;oBAEH,OAAO;iBACR;gBAED,IAAI,UAAU,GAAG,IAAI,CAAC;gBACtB,IAAI,eAAe,GAAG,IAAI,CAAC;gBAE3B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;oBAC5B,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;wBACjD,IACE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CACpB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAC3D,EACD;4BACA,eAAe,GAAG,KAAK,CAAC;4BACxB,UAAU,GAAG,KAAK,CAAC;yBACpB;qBACF;yBAAM;wBACL,eAAe,GAAG,KAAK,CAAC;wBACxB,IAAI,QAAQ,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;4BACpC,UAAU,GAAG,KAAK,CAAC;yBACpB;qBACF;oBACD,IAAI,CAAC,CAAC,UAAU,IAAI,eAAe,CAAC,EAAE;wBACpC,MAAM;qBACP;iBACF;gBAED,IAAI,eAAe,EAAE;oBACnB,IAAI,CAAC,oBAAoB,EAAE;wBACzB,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,UAAU;4BAChB,SAAS,EAAE,iBAAiB;yBAC7B,CAAC,CAAC;qBACJ;oBACD,OAAO;iBACR;gBACD,IAAI,UAAU,IAAI,CAAC,eAAe,EAAE;oBAClC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,YAAY;qBACxB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-extraneous-class.js","sourceRoot":"","sources":["../../src/rules/no-extraneous-class.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js index 6ee0cb65..38191bcb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js @@ -1,14 +1,27 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const tsutils = __importStar(require("tsutils")); const ts = __importStar(require("typescript")); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'no-floating-promises', @@ -16,20 +29,22 @@ exports.default = util.createRule({ docs: { description: 'Requires Promise-like values to be handled appropriately', category: 'Best Practices', - recommended: false, + recommended: 'error', + suggestion: true, requiresTypeChecking: true, }, messages: { - floating: 'Promises must be handled appropriately', + floating: 'Promises must be handled appropriately.', floatingVoid: 'Promises must be handled appropriately' + - ' or explicitly marked as ignored with the `void` operator', - floatingFixVoid: 'Add void operator to ignore', + ' or explicitly marked as ignored with the `void` operator.', + floatingFixVoid: 'Add void operator to ignore.', }, schema: [ { type: 'object', properties: { ignoreVoid: { type: 'boolean' }, + ignoreIIFE: { type: 'boolean' }, }, additionalProperties: false, }, @@ -38,7 +53,8 @@ exports.default = util.createRule({ }, defaultOptions: [ { - ignoreVoid: false, + ignoreVoid: true, + ignoreIIFE: false, }, ], create(context, [options]) { @@ -48,6 +64,9 @@ exports.default = util.createRule({ return { ExpressionStatement(node) { const { expression } = parserServices.esTreeNodeToTSNodeMap.get(node); + if (options.ignoreIIFE && isAsyncIife(node)) { + return; + } if (isUnhandledPromise(checker, expression)) { if (options.ignoreVoid) { context.report({ @@ -74,6 +93,15 @@ exports.default = util.createRule({ } }, }; + function isAsyncIife(node) { + if (node.expression.type !== experimental_utils_1.AST_NODE_TYPES.CallExpression) { + return false; + } + return (node.expression.type === experimental_utils_1.AST_NODE_TYPES.CallExpression && + (node.expression.callee.type === + experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression || + node.expression.callee.type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression)); + } function isUnhandledPromise(checker, node) { // First, check expressions whose resulting types may not be promise-like if (ts.isBinaryExpression(node) && diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map index bbc262e7..d0252878 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js.map @@ -1 +1 @@ -{"version":3,"file":"no-floating-promises.js","sourceRoot":"","sources":["../../src/rules/no-floating-promises.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-floating-promises.js","sourceRoot":"","sources":["../../src/rules/no-floating-promises.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js index 8f6d962d..e1b7fc7d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -31,9 +43,8 @@ exports.default = util.createRule({ const parserServices = util.getParserServices(context); const checker = parserServices.program.getTypeChecker(); const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); - const type = checker.getTypeAtLocation(originalNode.expression); - if ((typeof type.symbol !== 'undefined' && - type.symbol.name === 'Array') || + const type = util.getConstrainedTypeAtLocation(checker, originalNode.expression); + if (util.isTypeArrayTypeOrUnionOfArrayTypes(type, checker) || (type.flags & ts.TypeFlags.StringLike) !== 0) { context.report({ node, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map index 88288ab3..67767b3c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map @@ -1 +1 @@ -{"version":3,"file":"no-for-in-array.js","sourceRoot":"","sources":["../../src/rules/no-for-in-array.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+CAAiC;AACjC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,cAAc,EACZ,8EAA8E;SACjF;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAChB;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,cAAc,CAAC,IAAI;gBACjB,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBACxD,MAAM,YAAY,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEpE,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAEhE,IACE,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,WAAW;oBACjC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC;oBAC/B,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAC5C;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,gBAAgB;qBAC5B,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-for-in-array.js","sourceRoot":"","sources":["../../src/rules/no-for-in-array.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,cAAc,EACZ,8EAA8E;SACjF;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAChB;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,cAAc,CAAC,IAAI;gBACjB,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBACxD,MAAM,YAAY,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEpE,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAC5C,OAAO,EACP,YAAY,CAAC,UAAU,CACxB,CAAC;gBAEF,IACE,IAAI,CAAC,kCAAkC,CAAC,IAAI,EAAE,OAAO,CAAC;oBACtD,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAC5C;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,gBAAgB;qBAC5B,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js new file mode 100644 index 00000000..fb3d31ef --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js @@ -0,0 +1,97 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = __importStar(require("../util")); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +exports.default = util.createRule({ + name: 'no-implicit-any-catch', + meta: { + type: 'suggestion', + docs: { + description: 'Disallow usage of the implicit `any` type in catch clauses', + category: 'Best Practices', + recommended: false, + suggestion: true, + }, + fixable: 'code', + messages: { + implicitAnyInCatch: 'Implicit any in catch clause', + explicitAnyInCatch: 'Explicit any in catch clause', + suggestExplicitUnknown: 'Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct.', + }, + schema: [ + { + type: 'object', + additionalProperties: false, + properties: { + allowExplicitAny: { + type: 'boolean', + }, + }, + }, + ], + }, + defaultOptions: [ + { + allowExplicitAny: false, + }, + ], + create(context, [{ allowExplicitAny }]) { + return { + CatchClause(node) { + if (!node.param) { + return; // ignore catch without variable + } + if (!node.param.typeAnnotation) { + context.report({ + node, + messageId: 'implicitAnyInCatch', + suggest: [ + { + messageId: 'suggestExplicitUnknown', + fix(fixer) { + return fixer.insertTextAfter(node.param, ': unknown'); + }, + }, + ], + }); + } + else if (!allowExplicitAny && + node.param.typeAnnotation.typeAnnotation.type === + experimental_utils_1.AST_NODE_TYPES.TSAnyKeyword) { + context.report({ + node, + messageId: 'explicitAnyInCatch', + suggest: [ + { + messageId: 'suggestExplicitUnknown', + fix(fixer) { + return fixer.replaceText(node.param.typeAnnotation, ': unknown'); + }, + }, + ], + }); + } + }, + }; + }, +}); +//# sourceMappingURL=no-implicit-any-catch.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js.map new file mode 100644 index 00000000..e5ed504f --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implicit-any-catch.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-implicit-any-catch.js","sourceRoot":"","sources":["../../src/rules/no-implicit-any-catch.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8CAAgC;AAChC,8EAG+C;AAY/C,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,4DAA4D;YACzE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,IAAI;SACjB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,kBAAkB,EAAE,8BAA8B;YAClD,kBAAkB,EAAE,8BAA8B;YAClD,sBAAsB,EACpB,kGAAkG;SACrG;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,gBAAgB,EAAE;wBAChB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,gBAAgB,EAAE,KAAK;SACxB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;QACpC,OAAO;YACL,WAAW,CAAC,IAAI;gBACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBACf,OAAO,CAAC,gCAAgC;iBACzC;gBAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;oBAC9B,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,oBAAoB;wBAC/B,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE,wBAAwB;gCACnC,GAAG,CAAC,KAAK;oCACP,OAAO,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,KAAM,EAAE,WAAW,CAAC,CAAC;gCACzD,CAAC;6BACF;yBACF;qBACF,CAAC,CAAC;iBACJ;qBAAM,IACL,CAAC,gBAAgB;oBACjB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI;wBAC3C,mCAAc,CAAC,YAAY,EAC7B;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,oBAAoB;wBAC/B,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE,wBAAwB;gCACnC,GAAG,CAAC,KAAK;oCACP,OAAO,KAAK,CAAC,WAAW,CACtB,IAAI,CAAC,KAAM,CAAC,cAAe,EAC3B,WAAW,CACZ,CAAC;gCACJ,CAAC;6BACF;yBACF;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js index f4d4f62e..86eb806e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -12,6 +24,7 @@ const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const tsutils = __importStar(require("tsutils")); const util = __importStar(require("../util")); const FUNCTION_CONSTRUCTOR = 'Function'; +const GLOBAL_CANDIDATES = new Set(['global', 'window', 'globalThis']); const EVAL_LIKE_METHODS = new Set([ 'setImmediate', 'setInterval', @@ -24,7 +37,7 @@ exports.default = util.createRule({ docs: { description: 'Disallow the use of `eval()`-like methods', category: 'Best Practices', - recommended: false, + recommended: 'error', requiresTypeChecking: true, }, messages: { @@ -37,6 +50,7 @@ exports.default = util.createRule({ defaultOptions: [], create(context) { const parserServices = util.getParserServices(context); + const program = parserServices.program; const checker = parserServices.program.getTypeChecker(); function getCalleeName(node) { if (node.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { @@ -44,7 +58,7 @@ exports.default = util.createRule({ } if (node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression && node.object.type === experimental_utils_1.AST_NODE_TYPES.Identifier && - node.object.name === 'window') { + GLOBAL_CANDIDATES.has(node.object.name)) { if (node.property.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { return node.property.name; } @@ -56,6 +70,7 @@ exports.default = util.createRule({ return null; } function isFunctionType(node) { + var _a; const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node); const type = checker.getTypeAtLocation(tsNode); const symbol = type.getSymbol(); @@ -63,6 +78,15 @@ exports.default = util.createRule({ tsutils.isSymbolFlagSet(symbol, ts.SymbolFlags.Function | ts.SymbolFlags.Method)) { return true; } + if (symbol && symbol.escapedName === FUNCTION_CONSTRUCTOR) { + const declarations = (_a = symbol.getDeclarations()) !== null && _a !== void 0 ? _a : []; + for (const declaration of declarations) { + const sourceFile = declaration.getSourceFile(); + if (program.isSourceFileDefaultLibrary(sourceFile)) { + return true; + } + } + } const signatures = checker.getSignaturesOfType(type, ts.SignatureKind.Call); return signatures.length > 0; } @@ -84,13 +108,29 @@ exports.default = util.createRule({ } } function checkImpliedEval(node) { + var _a; + const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node.callee); + const type = checker.getTypeAtLocation(tsNode); const calleeName = getCalleeName(node.callee); if (calleeName === null) { return; } if (calleeName === FUNCTION_CONSTRUCTOR) { - context.report({ node, messageId: 'noFunctionConstructor' }); - return; + const symbol = type.getSymbol(); + if (symbol) { + const declarations = (_a = symbol.getDeclarations()) !== null && _a !== void 0 ? _a : []; + for (const declaration of declarations) { + const sourceFile = declaration.getSourceFile(); + if (program.isSourceFileDefaultLibrary(sourceFile)) { + context.report({ node, messageId: 'noFunctionConstructor' }); + return; + } + } + } + else { + context.report({ node, messageId: 'noFunctionConstructor' }); + return; + } } if (node.arguments.length === 0) { return; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map index a20d4594..38b1988d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js.map @@ -1 +1 @@ -{"version":3,"file":"no-implied-eval.js","sourceRoot":"","sources":["../../src/rules/no-implied-eval.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-implied-eval.js","sourceRoot":"","sources":["../../src/rules/no-implied-eval.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js index b4006a01..60ff6fb1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -45,8 +57,10 @@ exports.default = util.createRule({ ], create(context, [{ ignoreParameters, ignoreProperties }]) { function isFunctionCall(init, callName) { - return ((init.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - init.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) && + if (init.type === experimental_utils_1.AST_NODE_TYPES.ChainExpression) { + return isFunctionCall(init.expression, callName); + } + return (init.type === experimental_utils_1.AST_NODE_TYPES.CallExpression && init.callee.type === experimental_utils_1.AST_NODE_TYPES.Identifier && init.callee.name === callName); } @@ -80,7 +94,8 @@ exports.default = util.createRule({ ? init.argument : init; return (isFunctionCall(unwrappedInit, 'BigInt') || - unwrappedInit.type === experimental_utils_1.AST_NODE_TYPES.BigIntLiteral); + (unwrappedInit.type === experimental_utils_1.AST_NODE_TYPES.Literal && + 'bigint' in unwrappedInit)); } case experimental_utils_1.AST_NODE_TYPES.TSBooleanKeyword: return (hasUnaryPrefix(init, '!') || diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map index 25be70ae..a31baf22 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map @@ -1 +1 @@ -{"version":3,"file":"no-inferrable-types.js","sourceRoot":"","sources":["../../src/rules/no-inferrable-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-inferrable-types.js","sourceRoot":"","sources":["../../src/rules/no-inferrable-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js new file mode 100644 index 00000000..bfa7ae2c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js @@ -0,0 +1,59 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const no_invalid_this_1 = __importDefault(require("eslint/lib/rules/no-invalid-this")); +const util_1 = require("../util"); +exports.default = util_1.createRule({ + name: 'no-invalid-this', + meta: { + type: 'suggestion', + docs: { + description: 'disallow `this` keywords outside of classes or class-like objects', + category: 'Best Practices', + recommended: false, + extendsBaseRule: true, + }, + messages: (_a = no_invalid_this_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + unexpectedThis: "Unexpected 'this'.", + }, + schema: no_invalid_this_1.default.meta.schema, + }, + defaultOptions: [{ capIsConstructor: true }], + create(context) { + const rules = no_invalid_this_1.default.create(context); + const argList = []; + return Object.assign(Object.assign({}, rules), { FunctionDeclaration(node) { + argList.push(node.params.some(param => param.type === experimental_utils_1.AST_NODE_TYPES.Identifier && param.name === 'this')); + // baseRule's work + rules.FunctionDeclaration(node); + }, + 'FunctionDeclaration:exit'(node) { + argList.pop(); + // baseRule's work + rules['FunctionDeclaration:exit'](node); + }, + FunctionExpression(node) { + argList.push(node.params.some(param => param.type === experimental_utils_1.AST_NODE_TYPES.Identifier && param.name === 'this')); + // baseRule's work + rules.FunctionExpression(node); + }, + 'FunctionExpression:exit'(node) { + argList.pop(); + // baseRule's work + rules['FunctionExpression:exit'](node); + }, + ThisExpression(node) { + const lastFnArg = argList[argList.length - 1]; + if (lastFnArg) { + return; + } + // baseRule's work + rules.ThisExpression(node); + } }); + }, +}); +//# sourceMappingURL=no-invalid-this.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js.map new file mode 100644 index 00000000..1d60a4ee --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-invalid-this.js","sourceRoot":"","sources":["../../src/rules/no-invalid-this.ts"],"names":[],"mappings":";;;;;;AAAA,8EAG+C;AAC/C,uFAAwD;AACxD,kCAIiB;AAKjB,kBAAe,iBAAU,CAAsB;IAC7C,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,mEAAmE;YACrE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,QAAQ,QAAE,yBAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,cAAc,EAAE,oBAAoB;SACrC;QACD,MAAM,EAAE,yBAAQ,CAAC,IAAI,CAAC,MAAM;KAC7B;IACD,cAAc,EAAE,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;IAC5C,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,yBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,OAAO,GAAc,EAAE,CAAC;QAE9B,uCACK,KAAK,KACR,mBAAmB,CAAC,IAAkC;gBACpD,OAAO,CAAC,IAAI,CACV,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CACpE,CACF,CAAC;gBACF,kBAAkB;gBAClB,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,0BAA0B,CAAC,IAAkC;gBAC3D,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,kBAAkB;gBAClB,KAAK,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;YACD,kBAAkB,CAAC,IAAiC;gBAClD,OAAO,CAAC,IAAI,CACV,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CACpE,CACF,CAAC;gBACF,kBAAkB;gBAClB,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,yBAAyB,CAAC,IAAiC;gBACzD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,kBAAkB;gBAClB,KAAK,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YACD,cAAc,CAAC,IAA6B;gBAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAE9C,IAAI,SAAS,EAAE;oBACb,OAAO;iBACR;gBAED,kBAAkB;gBAClB,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js new file mode 100644 index 00000000..f58aa23c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js @@ -0,0 +1,183 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-invalid-void-type', + meta: { + type: 'problem', + docs: { + description: 'Disallows usage of `void` type outside of generic or return types', + category: 'Best Practices', + recommended: false, + }, + messages: { + invalidVoidForGeneric: '{{ generic }} may not have void as a type variable', + invalidVoidNotReturnOrGeneric: 'void is only valid as a return type or generic type variable', + invalidVoidNotReturn: 'void is only valid as a return type', + invalidVoidNotReturnOrThisParam: 'void is only valid as return type or type of `this` parameter', + invalidVoidNotReturnOrThisParamOrGeneric: 'void is only valid as a return type or generic type variable or the type of a `this` parameter', + }, + schema: [ + { + type: 'object', + properties: { + allowInGenericTypeArguments: { + oneOf: [ + { type: 'boolean' }, + { + type: 'array', + items: { type: 'string' }, + minLength: 1, + }, + ], + }, + allowAsThisParameter: { + type: 'boolean', + }, + }, + additionalProperties: false, + }, + ], + }, + defaultOptions: [ + { allowInGenericTypeArguments: true, allowAsThisParameter: false }, + ], + create(context, [{ allowInGenericTypeArguments, allowAsThisParameter }]) { + const validParents = [ + experimental_utils_1.AST_NODE_TYPES.TSTypeAnnotation, + ]; + const invalidGrandParents = [ + experimental_utils_1.AST_NODE_TYPES.TSPropertySignature, + experimental_utils_1.AST_NODE_TYPES.CallExpression, + experimental_utils_1.AST_NODE_TYPES.ClassProperty, + experimental_utils_1.AST_NODE_TYPES.Identifier, + ]; + const validUnionMembers = [ + experimental_utils_1.AST_NODE_TYPES.TSVoidKeyword, + experimental_utils_1.AST_NODE_TYPES.TSNeverKeyword, + ]; + if (allowInGenericTypeArguments === true) { + validParents.push(experimental_utils_1.AST_NODE_TYPES.TSTypeParameterInstantiation); + } + /** + * @brief check if the given void keyword is used as a valid generic type + * + * reports if the type parametrized by void is not in the whitelist, or + * allowInGenericTypeArguments is false. + * no-op if the given void keyword is not used as generic type + */ + function checkGenericTypeArgument(node) { + var _a, _b; + // only matches T<..., void, ...> + // extra check for precaution + /* istanbul ignore next */ + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) !== experimental_utils_1.AST_NODE_TYPES.TSTypeParameterInstantiation || + ((_b = node.parent.parent) === null || _b === void 0 ? void 0 : _b.type) !== experimental_utils_1.AST_NODE_TYPES.TSTypeReference) { + return; + } + // check whitelist + if (Array.isArray(allowInGenericTypeArguments)) { + const sourceCode = context.getSourceCode(); + const fullyQualifiedName = sourceCode + .getText(node.parent.parent.typeName) + .replace(/ /gu, ''); + if (!allowInGenericTypeArguments + .map(s => s.replace(/ /gu, '')) + .includes(fullyQualifiedName)) { + context.report({ + messageId: 'invalidVoidForGeneric', + data: { generic: fullyQualifiedName }, + node, + }); + } + return; + } + if (!allowInGenericTypeArguments) { + context.report({ + messageId: allowAsThisParameter + ? 'invalidVoidNotReturnOrThisParam' + : 'invalidVoidNotReturn', + node, + }); + } + } + /** + * @brief checks that a union containing void is valid + * @return true if every member of the union is specified as a valid type in + * validUnionMembers, or is a valid generic type parametrized by void + */ + function isValidUnionType(node) { + return node.types.every(member => { + var _a, _b; + return validUnionMembers.includes(member.type) || + // allows any T<..., void, ...> here, checked by checkGenericTypeArgument + (member.type === experimental_utils_1.AST_NODE_TYPES.TSTypeReference && + ((_a = member.typeParameters) === null || _a === void 0 ? void 0 : _a.type) === + experimental_utils_1.AST_NODE_TYPES.TSTypeParameterInstantiation && ((_b = member.typeParameters) === null || _b === void 0 ? void 0 : _b.params.map(param => param.type).includes(experimental_utils_1.AST_NODE_TYPES.TSVoidKeyword))); + }); + } + return { + TSVoidKeyword(node) { + var _a; + /* istanbul ignore next */ + if (!((_a = node.parent) === null || _a === void 0 ? void 0 : _a.parent)) { + return; + } + // checks T<..., void, ...> against specification of allowInGenericArguments option + if (node.parent.type === experimental_utils_1.AST_NODE_TYPES.TSTypeParameterInstantiation && + node.parent.parent.type === experimental_utils_1.AST_NODE_TYPES.TSTypeReference) { + checkGenericTypeArgument(node); + return; + } + // union w/ void must contain types from validUnionMembers, or a valid generic void type + if (node.parent.type === experimental_utils_1.AST_NODE_TYPES.TSUnionType && + isValidUnionType(node.parent)) { + return; + } + // this parameter is ok to be void. + if (allowAsThisParameter && + node.parent.type === experimental_utils_1.AST_NODE_TYPES.TSTypeAnnotation && + node.parent.parent.type === experimental_utils_1.AST_NODE_TYPES.Identifier && + node.parent.parent.name === 'this') { + return; + } + // default cases + if (validParents.includes(node.parent.type) && + !invalidGrandParents.includes(node.parent.parent.type)) { + return; + } + context.report({ + messageId: allowInGenericTypeArguments && allowAsThisParameter + ? 'invalidVoidNotReturnOrThisParamOrGeneric' + : allowInGenericTypeArguments + ? 'invalidVoidNotReturnOrGeneric' + : allowAsThisParameter + ? 'invalidVoidNotReturnOrThisParam' + : 'invalidVoidNotReturn', + node, + }); + }, + }; + }, +}); +//# sourceMappingURL=no-invalid-void-type.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map new file mode 100644 index 00000000..bd9e5aeb --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-invalid-void-type.js","sourceRoot":"","sources":["../../src/rules/no-invalid-void-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js new file mode 100644 index 00000000..50e42bb2 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js @@ -0,0 +1,196 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const no_loop_func_1 = __importDefault(require("eslint/lib/rules/no-loop-func")); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-loop-func', + meta: { + type: 'suggestion', + docs: { + description: 'Disallow function declarations that contain unsafe references inside loop statements', + category: 'Best Practices', + recommended: false, + extendsBaseRule: true, + }, + schema: [], + messages: (_a = no_loop_func_1.default === null || no_loop_func_1.default === void 0 ? void 0 : no_loop_func_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + unsafeRefs: 'Function declared in a loop contains unsafe references to variable(s) {{ varNames }}.', + }, + }, + defaultOptions: [], + create(context) { + /** + * Reports functions which match the following condition: + * - has a loop node in ancestors. + * - has any references which refers to an unsafe variable. + * + * @param node The AST node to check. + * @returns Whether or not the node is within a loop. + */ + function checkForLoops(node) { + const loopNode = getContainingLoopNode(node); + if (!loopNode) { + return; + } + const references = context.getScope().through; + const unsafeRefs = references + .filter(r => !isSafe(loopNode, r)) + .map(r => r.identifier.name); + if (unsafeRefs.length > 0) { + context.report({ + node, + messageId: 'unsafeRefs', + data: { varNames: `'${unsafeRefs.join("', '")}'` }, + }); + } + } + return { + ArrowFunctionExpression: checkForLoops, + FunctionExpression: checkForLoops, + FunctionDeclaration: checkForLoops, + }; + }, +}); +/** + * Gets the containing loop node of a specified node. + * + * We don't need to check nested functions, so this ignores those. + * `Scope.through` contains references of nested functions. + * + * @param node An AST node to get. + * @returns The containing loop node of the specified node, or `null`. + */ +function getContainingLoopNode(node) { + for (let currentNode = node; currentNode.parent; currentNode = currentNode.parent) { + const parent = currentNode.parent; + switch (parent.type) { + case experimental_utils_1.AST_NODE_TYPES.WhileStatement: + case experimental_utils_1.AST_NODE_TYPES.DoWhileStatement: + return parent; + case experimental_utils_1.AST_NODE_TYPES.ForStatement: + // `init` is outside of the loop. + if (parent.init !== currentNode) { + return parent; + } + break; + case experimental_utils_1.AST_NODE_TYPES.ForInStatement: + case experimental_utils_1.AST_NODE_TYPES.ForOfStatement: + // `right` is outside of the loop. + if (parent.right !== currentNode) { + return parent; + } + break; + case experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression: + case experimental_utils_1.AST_NODE_TYPES.FunctionExpression: + case experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration: + // We don't need to check nested functions. + return null; + default: + break; + } + } + return null; +} +/** + * Gets the containing loop node of a given node. + * If the loop was nested, this returns the most outer loop. + * @param node A node to get. This is a loop node. + * @param excludedNode A node that the result node should not include. + * @returns The most outer loop node. + */ +function getTopLoopNode(node, excludedNode) { + const border = excludedNode ? excludedNode.range[1] : 0; + let retv = node; + let containingLoopNode = node; + while (containingLoopNode && containingLoopNode.range[0] >= border) { + retv = containingLoopNode; + containingLoopNode = getContainingLoopNode(containingLoopNode); + } + return retv; +} +/** + * Checks whether a given reference which refers to an upper scope's variable is + * safe or not. + * @param loopNode A containing loop node. + * @param reference A reference to check. + * @returns `true` if the reference is safe or not. + */ +function isSafe(loopNode, reference) { + var _a; + const variable = reference.resolved; + const definition = variable === null || variable === void 0 ? void 0 : variable.defs[0]; + const declaration = definition === null || definition === void 0 ? void 0 : definition.parent; + const kind = (declaration === null || declaration === void 0 ? void 0 : declaration.type) === experimental_utils_1.AST_NODE_TYPES.VariableDeclaration + ? declaration.kind + : ''; + // type references are all safe + // this only really matters for global types that haven't been configured + if (reference.isTypeReference) { + return true; + } + // Variables which are declared by `const` is safe. + if (kind === 'const') { + return true; + } + /* + * Variables which are declared by `let` in the loop is safe. + * It's a different instance from the next loop step's. + */ + if (kind === 'let' && + declaration && + declaration.range[0] > loopNode.range[0] && + declaration.range[1] < loopNode.range[1]) { + return true; + } + /* + * WriteReferences which exist after this border are unsafe because those + * can modify the variable. + */ + const border = getTopLoopNode(loopNode, kind === 'let' ? declaration : null) + .range[0]; + /** + * Checks whether a given reference is safe or not. + * The reference is every reference of the upper scope's variable we are + * looking now. + * + * It's safe if the reference matches one of the following condition. + * - is readonly. + * - doesn't exist inside a local function and after the border. + * + * @param upperRef A reference to check. + * @returns `true` if the reference is safe. + */ + function isSafeReference(upperRef) { + var _a; + const id = upperRef.identifier; + return (!upperRef.isWrite() || + (((_a = variable === null || variable === void 0 ? void 0 : variable.scope) === null || _a === void 0 ? void 0 : _a.variableScope) === upperRef.from.variableScope && + id.range[0] < border)); + } + return (_a = variable === null || variable === void 0 ? void 0 : variable.references.every(isSafeReference)) !== null && _a !== void 0 ? _a : false; +} +//# sourceMappingURL=no-loop-func.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js.map new file mode 100644 index 00000000..45c6496c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-loop-func.js","sourceRoot":"","sources":["../../src/rules/no-loop-func.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js new file mode 100644 index 00000000..154caa18 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js @@ -0,0 +1,63 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var _a; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = __importStar(require("../util")); +const baseRule = (() => { + try { + return require('eslint/lib/rules/no-loss-of-precision'); + } + catch (_a) { + /* istanbul ignore next */ + return null; + } +})(); +exports.default = util.createRule({ + name: 'no-loss-of-precision', + meta: { + type: 'problem', + docs: { + description: 'Disallow literal numbers that lose precision', + category: 'Possible Errors', + recommended: false, + extendsBaseRule: true, + }, + schema: [], + messages: (_a = baseRule === null || baseRule === void 0 ? void 0 : baseRule.meta.messages) !== null && _a !== void 0 ? _a : { noLossOfPrecision: '' }, + }, + defaultOptions: [], + create(context) { + /* istanbul ignore if */ if (baseRule === null) { + throw new Error('@typescript-eslint/no-loss-of-precision requires at least ESLint v7.1.0'); + } + // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + const rules = baseRule.create(context); + function isSeperatedNumeric(node) { + return typeof node.value === 'number' && node.raw.includes('_'); + } + return { + Literal(node) { + rules.Literal(Object.assign(Object.assign({}, node), { raw: isSeperatedNumeric(node) ? node.raw.replace(/_/g, '') : node.raw })); + }, + }; + }, +}); +//# sourceMappingURL=no-loss-of-precision.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js.map new file mode 100644 index 00000000..ad268ed9 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-loss-of-precision.js","sourceRoot":"","sources":["../../src/rules/no-loss-of-precision.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAEA,8CAAgC;AAEhC,MAAM,QAAQ,GAAG,CAAC,GAA2B,EAAE;IAC7C,IAAI;QACF,OAAO,OAAO,CAAC,uCAAuC,CAAC,CAAC;KACzD;IAAC,WAAM;QACN,0BAA0B;QAC1B,OAAO,IAAI,CAAC;KACb;AACH,CAAC,CAAC,EAAE,CAAC;AAKL,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,QAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC,QAAQ,mCAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE;KAC/D;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,wBAAwB,CAAC,IAAI,QAAQ,KAAK,IAAI,EAAE;YAC9C,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;SACH;QAED,4EAA4E;QAC5E,MAAM,KAAK,GAAG,QAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAExC,SAAS,kBAAkB,CAAC,IAAsB;YAChD,OAAO,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,OAAO;YACL,OAAO,CAAC,IAAsB;gBAC5B,KAAK,CAAC,OAAO,iCACR,IAAI,KACP,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IACrE,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js index 9d4c33f3..f413422e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js @@ -1,14 +1,27 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const no_magic_numbers_1 = __importDefault(require("eslint/lib/rules/no-magic-numbers")); @@ -36,7 +49,10 @@ exports.default = util.createRule({ type: 'boolean', } }) }), ], - messages: no_magic_numbers_1.default.meta.messages, + messages: (_a = no_magic_numbers_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + useConst: "Number constants declarations must use 'const'.", + noMagic: 'No magic number: {{raw}}.', + }, }, defaultOptions: [ { @@ -133,9 +149,8 @@ function isGrandparentTSUnionType(node) { * @private */ function isParentTSEnumDeclaration(node) { - var _a; const parent = getLiteralParent(node); - return ((_a = parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSEnumMember; + return (parent === null || parent === void 0 ? void 0 : parent.type) === experimental_utils_1.AST_NODE_TYPES.TSEnumMember; } /** * Checks if the node parent is a Typescript literal type @@ -181,9 +196,8 @@ function isTSNumericLiteralType(node) { * @private */ function isParentTSReadonlyClassProperty(node) { - var _a; const parent = getLiteralParent(node); - if (((_a = parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.ClassProperty && parent.readonly) { + if ((parent === null || parent === void 0 ? void 0 : parent.type) === experimental_utils_1.AST_NODE_TYPES.ClassProperty && parent.readonly) { return true; } return false; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map index 76a327aa..98542b9b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js.map @@ -1 +1 @@ -{"version":3,"file":"no-magic-numbers.js","sourceRoot":"","sources":["../../src/rules/no-magic-numbers.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-magic-numbers.js","sourceRoot":"","sources":["../../src/rules/no-magic-numbers.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js index 2c3b8e92..3a310def 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map index f04b8f5f..36e0d346 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js.map @@ -1 +1 @@ -{"version":3,"file":"no-misused-new.js","sourceRoot":"","sources":["../../src/rules/no-misused-new.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,qBAAqB,EAAE,iDAAiD;YACxE,iBAAiB,EAAE,uCAAuC;SAC3D;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ;;;WAGG;QACH,SAAS,oBAAoB,CAC3B,IAIa;YAEb,IAAI,IAAI,EAAE;gBACR,QAAQ,IAAI,CAAC,IAAI,EAAE;oBACjB,KAAK,mCAAc,CAAC,gBAAgB;wBAClC,OAAO,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACnD,KAAK,mCAAc,CAAC,eAAe;wBACjC,OAAO,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC7C,KAAK,mCAAc,CAAC,UAAU;wBAC5B,OAAO,IAAI,CAAC,IAAI,CAAC;oBACnB;wBACE,MAAM;iBACT;aACF;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED;;;WAGG;QACH,SAAS,oBAAoB,CAC3B,MAAiC,EACjC,UAAiD;YAEjD,IACE,MAAM;gBACN,IAAI,IAAI,MAAM;gBACd,MAAM,CAAC,EAAE;gBACT,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,EAC5C;gBACA,OAAO,oBAAoB,CAAC,UAAU,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;aAC5D;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO;YACL,mDAAmD,CACjD,IAA8C;gBAE9C,IACE,oBAAoB,CAClB,IAAI,CAAC,MAAO,CAAC,MAAyC,EACtD,IAAI,CAAC,UAAU,CAChB,EACD;oBACA,cAAc;oBACd,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,uBAAuB;qBACnC,CAAC,CAAC;iBACJ;YACH,CAAC;YACD,2CAA2C,CACzC,IAAgC;gBAEhC,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,uBAAuB;iBACnC,CAAC,CAAC;YACL,CAAC;YACD,8CAA8C,CAC5C,IAA+B;gBAE/B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,6BAA6B,EAAE;oBACpE,IACE,IAAI,CAAC,MAAM;wBACX,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAC/D;wBACA,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,mBAAmB;yBAC/B,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-misused-new.js","sourceRoot":"","sources":["../../src/rules/no-misused-new.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,qBAAqB,EAAE,iDAAiD;YACxE,iBAAiB,EAAE,uCAAuC;SAC3D;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ;;;WAGG;QACH,SAAS,oBAAoB,CAC3B,IAIa;YAEb,IAAI,IAAI,EAAE;gBACR,QAAQ,IAAI,CAAC,IAAI,EAAE;oBACjB,KAAK,mCAAc,CAAC,gBAAgB;wBAClC,OAAO,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACnD,KAAK,mCAAc,CAAC,eAAe;wBACjC,OAAO,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC7C,KAAK,mCAAc,CAAC,UAAU;wBAC5B,OAAO,IAAI,CAAC,IAAI,CAAC;oBACnB;wBACE,MAAM;iBACT;aACF;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED;;;WAGG;QACH,SAAS,oBAAoB,CAC3B,MAAiC,EACjC,UAAiD;YAEjD,IACE,MAAM;gBACN,IAAI,IAAI,MAAM;gBACd,MAAM,CAAC,EAAE;gBACT,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,EAC5C;gBACA,OAAO,oBAAoB,CAAC,UAAU,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;aAC5D;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO;YACL,mDAAmD,CACjD,IAA8C;gBAE9C,IACE,oBAAoB,CAClB,IAAI,CAAC,MAAO,CAAC,MAAyC,EACtD,IAAI,CAAC,UAAU,CAChB,EACD;oBACA,cAAc;oBACd,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,uBAAuB;qBACnC,CAAC,CAAC;iBACJ;YACH,CAAC;YACD,2CAA2C,CACzC,IAAgC;gBAEhC,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,uBAAuB;iBACnC,CAAC,CAAC;YACL,CAAC;YACD,8CAA8C,CAC5C,IAA+B;gBAE/B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,6BAA6B,EAAE;oBACpE,IACE,IAAI,CAAC,MAAM;wBACX,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAC/D;wBACA,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,mBAAmB;yBAC/B,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js index acaaca1d..5c5b72fc 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -66,7 +78,6 @@ exports.default = util.createRule({ }; const voidReturnChecks = { CallExpression: checkArguments, - OptionalCallExpression: checkArguments, NewExpression: checkArguments, }; function checkTestConditional(node) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map index 097ee077..ae246360 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map @@ -1 +1 @@ -{"version":3,"file":"no-misused-promises.js","sourceRoot":"","sources":["../../src/rules/no-misused-promises.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-misused-promises.js","sourceRoot":"","sources":["../../src/rules/no-misused-promises.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js index ad0ec8e4..cfd3d374 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -44,12 +56,18 @@ exports.default = util.createRule({ ], create(context, [{ allowDeclarations, allowDefinitionFiles }]) { const filename = context.getFilename(); + function isDeclaration(node) { + var _a; + return (node.declare === true || + (((_a = node.parent.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration && + isDeclaration(node.parent.parent))); + } return { "TSModuleDeclaration[global!=true][id.type='Identifier']"(node) { if ((node.parent && node.parent.type === experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration) || (allowDefinitionFiles && util.isDefinitionFile(filename)) || - (allowDeclarations && node.declare === true)) { + (allowDeclarations && isDeclaration(node))) { return; } context.report({ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map index d1b04f6c..db4bd761 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js.map @@ -1 +1 @@ -{"version":3,"file":"no-namespace.js","sourceRoot":"","sources":["../../src/rules/no-namespace.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,8DAA8D;YAChE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,QAAQ,EAAE;YACR,uBAAuB,EACrB,kFAAkF;SACrF;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,iBAAiB,EAAE;wBACjB,IAAI,EAAE,SAAS;qBAChB;oBACD,oBAAoB,EAAE;wBACpB,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,iBAAiB,EAAE,KAAK;YACxB,oBAAoB,EAAE,IAAI;SAC3B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAEvC,OAAO;YACL,yDAAyD,CACvD,IAAkC;gBAElC,IACE,CAAC,IAAI,CAAC,MAAM;oBACV,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAAC;oBAC1D,CAAC,oBAAoB,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oBACzD,CAAC,iBAAiB,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,EAC5C;oBACA,OAAO;iBACR;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,yBAAyB;iBACrC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-namespace.js","sourceRoot":"","sources":["../../src/rules/no-namespace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,8DAA8D;YAChE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,QAAQ,EAAE;YACR,uBAAuB,EACrB,kFAAkF;SACrF;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,iBAAiB,EAAE;wBACjB,IAAI,EAAE,SAAS;qBAChB;oBACD,oBAAoB,EAAE;wBACpB,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,iBAAiB,EAAE,KAAK;YACxB,oBAAoB,EAAE,IAAI;SAC3B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAEvC,SAAS,aAAa,CAAC,IAAkC;;YACvD,OAAO,CACL,IAAI,CAAC,OAAO,KAAK,IAAI;gBACrB,CAAC,OAAA,IAAI,CAAC,MAAO,CAAC,MAAM,0CAAE,IAAI,MAAK,mCAAc,CAAC,mBAAmB;oBAC/D,aAAa,CAAC,IAAI,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,CACtC,CAAC;QACJ,CAAC;QAED,OAAO;YACL,yDAAyD,CACvD,IAAkC;gBAElC,IACE,CAAC,IAAI,CAAC,MAAM;oBACV,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAAC;oBAC1D,CAAC,oBAAoB,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oBACzD,CAAC,iBAAiB,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,EAC1C;oBACA,OAAO;iBACR;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,yBAAyB;iBACrC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js index 2fbea0f4..e86f3ce7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js @@ -1,13 +1,31 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const ts = __importStar(require("typescript")); +const semver = __importStar(require("semver")); const util = __importStar(require("../util")); +const is3dot9 = semver.satisfies(ts.version, `>= 3.9.0 || >= 3.9.1-rc || >= 3.9.0-beta`, { + includePrerelease: true, +}); exports.default = util.createRule({ name: 'no-non-null-asserted-optional-chain', meta: { @@ -15,7 +33,8 @@ exports.default = util.createRule({ docs: { description: 'Disallows using a non-null assertion after an optional chain expression', category: 'Possible Errors', - recommended: false, + recommended: 'error', + suggestion: true, }, messages: { noNonNullOptionalChain: 'Optional chain expressions can return undefined by design - using a non-null assertion is unsafe and wrong.', @@ -25,8 +44,19 @@ exports.default = util.createRule({ }, defaultOptions: [], create(context) { - return { - 'TSNonNullExpression > :matches(OptionalMemberExpression, OptionalCallExpression)'(node) { + // TS3.9 made a breaking change to how non-null works with optional chains. + // Pre-3.9, `x?.y!.z` means `(x?.y).z` - i.e. it essentially scrubbed the optionality from the chain + // Post-3.9, `x?.y!.z` means `x?.y!.z` - i.e. it just asserts that the property `y` is non-null, not the result of `x?.y`. + // This means that for > 3.9, x?.y!.z is valid! + // + // NOTE: these cases are still invalid for 3.9: + // - x?.y.z! + // - (x?.y)!.z + const baseSelectors = { + // non-nulling a wrapped chain will scrub all nulls introduced by the chain + // (x?.y)! + // (x?.())! + 'TSNonNullExpression > ChainExpression'(node) { // selector guarantees this assertion const parent = node.parent; context.report({ @@ -46,7 +76,71 @@ exports.default = util.createRule({ ], }); }, + // non-nulling at the end of a chain will scrub all nulls introduced by the chain + // x?.y! + // x?.()! + 'ChainExpression > TSNonNullExpression'(node) { + context.report({ + node, + messageId: 'noNonNullOptionalChain', + // use a suggestion instead of a fixer, because this can obviously break type checks + suggest: [ + { + messageId: 'suggestRemovingNonNull', + fix(fixer) { + return fixer.removeRange([node.range[1] - 1, node.range[1]]); + }, + }, + ], + }); + }, }; + if (is3dot9) { + return baseSelectors; + } + return Object.assign(Object.assign({}, baseSelectors), { [[ + // > :not(ChainExpression) because that case is handled by a previous selector + 'MemberExpression > TSNonNullExpression.object > :not(ChainExpression)', + 'CallExpression > TSNonNullExpression.callee > :not(ChainExpression)', + ].join(', ')](child) { + // selector guarantees this assertion + const node = child.parent; + let current = child; + while (current) { + switch (current.type) { + case experimental_utils_1.AST_NODE_TYPES.MemberExpression: + if (current.optional) { + // found an optional chain! stop traversing + break; + } + current = current.object; + continue; + case experimental_utils_1.AST_NODE_TYPES.CallExpression: + if (current.optional) { + // found an optional chain! stop traversing + break; + } + current = current.callee; + continue; + default: + // something that's not a ChainElement, which means this is not an optional chain we want to check + return; + } + } + context.report({ + node, + messageId: 'noNonNullOptionalChain', + // use a suggestion instead of a fixer, because this can obviously break type checks + suggest: [ + { + messageId: 'suggestRemovingNonNull', + fix(fixer) { + return fixer.removeRange([node.range[1] - 1, node.range[1]]); + }, + }, + ], + }); + } }); }, }); //# sourceMappingURL=no-non-null-asserted-optional-chain.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map index 63375b61..21f40560 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js.map @@ -1 +1 @@ -{"version":3,"file":"no-non-null-asserted-optional-chain.js","sourceRoot":"","sources":["../../src/rules/no-non-null-asserted-optional-chain.ts"],"names":[],"mappings":";;;;;;;;;AACA,8CAAgC;AAIhC,kBAAe,IAAI,CAAC,UAAU,CAAiB;IAC7C,IAAI,EAAE,qCAAqC;IAC3C,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,yEAAyE;YAC3E,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,sBAAsB,EACpB,6GAA6G;YAC/G,sBAAsB,EAAE,2CAA2C;SACpE;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,kFAAkF,CAChF,IAEqC;gBAErC,qCAAqC;gBACrC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAsC,CAAC;gBAC3D,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,wBAAwB;oBACnC,oFAAoF;oBACpF,OAAO,EAAE;wBACP;4BACE,SAAS,EAAE,wBAAwB;4BACnC,GAAG,CAAC,KAAK;gCACP,OAAO,KAAK,CAAC,WAAW,CAAC;oCACvB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;oCACnB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;iCAChB,CAAC,CAAC;4BACL,CAAC;yBACF;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-non-null-asserted-optional-chain.js","sourceRoot":"","sources":["../../src/rules/no-non-null-asserted-optional-chain.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js index e9e03333..82ab1fdb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -17,6 +29,7 @@ exports.default = util.createRule({ description: 'Disallows non-null assertions using the `!` postfix operator', category: 'Stylistic Issues', recommended: 'warn', + suggestion: true, }, messages: { noNonNull: 'Forbidden non-null assertion.', @@ -29,6 +42,7 @@ exports.default = util.createRule({ const sourceCode = context.getSourceCode(); return { TSNonNullExpression(node) { + var _a, _b; const suggest = []; function convertTokenToOptional(replacement) { return (fixer) => { @@ -48,60 +62,56 @@ exports.default = util.createRule({ return null; }; } - if (node.parent) { - if ((node.parent.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || - node.parent.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression) && - node.parent.object === node) { - if (!node.parent.optional) { - if (node.parent.computed) { - // it is x![y]?.z - suggest.push({ - messageId: 'suggestOptionalChain', - fix: convertTokenToOptional('?.'), - }); - } - else { - // it is x!.y?.z - suggest.push({ - messageId: 'suggestOptionalChain', - fix: convertTokenToOptional('?'), - }); - } - } - else { - if (node.parent.computed) { - // it is x!?.[y].z - suggest.push({ - messageId: 'suggestOptionalChain', - fix: removeToken(), - }); - } - else { - // it is x!?.y.z - suggest.push({ - messageId: 'suggestOptionalChain', - fix: removeToken(), - }); - } - } - } - else if ((node.parent.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - node.parent.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) && - node.parent.callee === node) { - if (!node.parent.optional) { - // it is x.y?.z!() + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.MemberExpression && + node.parent.object === node) { + if (!node.parent.optional) { + if (node.parent.computed) { + // it is x![y]?.z suggest.push({ messageId: 'suggestOptionalChain', fix: convertTokenToOptional('?.'), }); } else { - // it is x.y.z!?.() + // it is x!.y?.z + suggest.push({ + messageId: 'suggestOptionalChain', + fix: convertTokenToOptional('?'), + }); + } + } + else { + if (node.parent.computed) { + // it is x!?.[y].z suggest.push({ messageId: 'suggestOptionalChain', fix: removeToken(), }); } + else { + // it is x!?.y.z + suggest.push({ + messageId: 'suggestOptionalChain', + fix: removeToken(), + }); + } + } + } + else if (((_b = node.parent) === null || _b === void 0 ? void 0 : _b.type) === experimental_utils_1.AST_NODE_TYPES.CallExpression && + node.parent.callee === node) { + if (!node.parent.optional) { + // it is x.y?.z!() + suggest.push({ + messageId: 'suggestOptionalChain', + fix: convertTokenToOptional('?.'), + }); + } + else { + // it is x.y.z!?.() + suggest.push({ + messageId: 'suggestOptionalChain', + fix: removeToken(), + }); } } context.report({ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map index 4a3b4d2d..4f1d31dd 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js.map @@ -1 +1 @@ -{"version":3,"file":"no-non-null-assertion.js","sourceRoot":"","sources":["../../src/rules/no-non-null-assertion.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-non-null-assertion.js","sourceRoot":"","sources":["../../src/rules/no-non-null-assertion.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js index daef997d..7e7a10b6 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js.map index 43e9a716..3a15f4c9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-parameter-properties.js.map @@ -1 +1 @@ -{"version":3,"file":"no-parameter-properties.js","sourceRoot":"","sources":["../../src/rules/no-parameter-properties.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAiBhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,gEAAgE;YAClE,QAAQ,EAAE,kBAAkB;YAC5B,oCAAoC;YACpC,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,WAAW,EACT,+DAA+D;SAClE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE;gCACJ,UAAU;gCACV,SAAS;gCACT,WAAW;gCACX,QAAQ;gCACR,kBAAkB;gCAClB,oBAAoB;gCACpB,iBAAiB;6BAClB;yBACF;wBACD,QAAQ,EAAE,CAAC;qBACZ;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,MAAM,EAAE,EAAE;SACX;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B;;;WAGG;QACH,SAAS,YAAY,CAAC,IAAkC;YACtD,MAAM,SAAS,GAAe,EAAE,CAAC;YAEjC,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACpC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC5B;YAED,OAAO,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAa,CAAC;QACzD,CAAC;QAED,OAAO;YACL,mBAAmB,CAAC,IAAI;gBACtB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBAErC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;oBAC/B,0DAA0D;oBAC1D,IACE,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;wBACjD,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB,EACxD;wBACA,OAAO;qBACR;oBAED,MAAM,IAAI,GACR,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;wBAC/C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI;wBACrB,CAAC,CAAC,qDAAqD;4BACpD,IAAI,CAAC,SAAS,CAAC,IAA4B,CAAC,IAAI,CAAC;oBAExD,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,aAAa;wBACxB,IAAI,EAAE;4BACJ,SAAS,EAAE,IAAI;yBAChB;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-parameter-properties.js","sourceRoot":"","sources":["../../src/rules/no-parameter-properties.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAiBhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,gEAAgE;YAClE,QAAQ,EAAE,kBAAkB;YAC5B,oCAAoC;YACpC,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,WAAW,EACT,+DAA+D;SAClE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE;gCACJ,UAAU;gCACV,SAAS;gCACT,WAAW;gCACX,QAAQ;gCACR,kBAAkB;gCAClB,oBAAoB;gCACpB,iBAAiB;6BAClB;yBACF;wBACD,QAAQ,EAAE,CAAC;qBACZ;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,MAAM,EAAE,EAAE;SACX;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B;;;WAGG;QACH,SAAS,YAAY,CAAC,IAAkC;YACtD,MAAM,SAAS,GAAe,EAAE,CAAC;YAEjC,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACpC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC5B;YAED,OAAO,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAa,CAAC;QACzD,CAAC;QAED,OAAO;YACL,mBAAmB,CAAC,IAAI;gBACtB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBAErC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;oBAC/B,0DAA0D;oBAC1D,IACE,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;wBACjD,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB,EACxD;wBACA,OAAO;qBACR;oBAED,MAAM,IAAI,GACR,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;wBAC/C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI;wBACrB,CAAC,CAAC,qDAAqD;4BACpD,IAAI,CAAC,SAAS,CAAC,IAA4B,CAAC,IAAI,CAAC;oBAExD,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,aAAa;wBACxB,IAAI,EAAE;4BACJ,SAAS,EAAE,IAAI;yBAChB;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js new file mode 100644 index 00000000..ccea8a95 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js @@ -0,0 +1,224 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +// https://github.com/lodash/lodash/blob/86a852fe763935bb64c12589df5391fd7d3bb14d/escapeRegExp.js +const reRegExpChar = /[\\^$.*+?()[\]{}|]/g; +const reHasRegExpChar = RegExp(reRegExpChar.source); +function escapeRegExp(str) { + return str && reHasRegExpChar.test(str) + ? str.replace(reRegExpChar, '\\$&') + : str || ''; +} +function getNameLocationInGlobalDirectiveComment(sourceCode, comment, name) { + const namePattern = new RegExp(`[\\s,]${escapeRegExp(name)}(?:$|[\\s,:])`, 'gu'); + // To ignore the first text "global". + namePattern.lastIndex = comment.value.indexOf('global') + 6; + // Search a given variable name. + const match = namePattern.exec(comment.value); + // Convert the index to loc. + const start = sourceCode.getLocFromIndex(comment.range[0] + '/*'.length + (match ? match.index + 1 : 0)); + const end = { + line: start.line, + column: start.column + (match ? name.length : 1), + }; + return { start, end }; +} +exports.default = util.createRule({ + name: 'no-redeclare', + meta: { + type: 'suggestion', + docs: { + description: 'Disallow variable redeclaration', + category: 'Best Practices', + recommended: false, + extendsBaseRule: true, + }, + schema: [ + { + type: 'object', + properties: { + builtinGlobals: { + type: 'boolean', + }, + ignoreDeclarationMerge: { + type: 'boolean', + }, + }, + additionalProperties: false, + }, + ], + messages: { + redeclared: "'{{id}}' is already defined.", + redeclaredAsBuiltin: "'{{id}}' is already defined as a built-in global variable.", + redeclaredBySyntax: "'{{id}}' is already defined by a variable declaration.", + }, + }, + defaultOptions: [ + { + builtinGlobals: true, + ignoreDeclarationMerge: true, + }, + ], + create(context, [options]) { + const sourceCode = context.getSourceCode(); + const CLASS_DECLARATION_MERGE_NODES = new Set([ + experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration, + experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration, + experimental_utils_1.AST_NODE_TYPES.ClassDeclaration, + ]); + const FUNCTION_DECLARATION_MERGE_NODES = new Set([ + experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration, + experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration, + ]); + function* iterateDeclarations(variable) { + if ((options === null || options === void 0 ? void 0 : options.builtinGlobals) && + 'eslintImplicitGlobalSetting' in variable && + (variable.eslintImplicitGlobalSetting === 'readonly' || + variable.eslintImplicitGlobalSetting === 'writable')) { + yield { type: 'builtin' }; + } + if ('eslintExplicitGlobalComments' in variable && + variable.eslintExplicitGlobalComments) { + for (const comment of variable.eslintExplicitGlobalComments) { + yield { + type: 'comment', + node: comment, + loc: getNameLocationInGlobalDirectiveComment(sourceCode, comment, variable.name), + }; + } + } + const identifiers = variable.identifiers + .map(id => ({ + identifier: id, + parent: id.parent, + })) + // ignore function declarations because TS will treat them as an overload + .filter(({ parent }) => parent.type !== experimental_utils_1.AST_NODE_TYPES.TSDeclareFunction); + if (options.ignoreDeclarationMerge && identifiers.length > 1) { + if ( + // interfaces merging + identifiers.every(({ parent }) => parent.type === experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration)) { + return; + } + if ( + // namespace/module merging + identifiers.every(({ parent }) => parent.type === experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration)) { + return; + } + if ( + // class + interface/namespace merging + identifiers.every(({ parent }) => CLASS_DECLARATION_MERGE_NODES.has(parent.type))) { + const classDecls = identifiers.filter(({ parent }) => parent.type === experimental_utils_1.AST_NODE_TYPES.ClassDeclaration); + if (classDecls.length === 1) { + // safe declaration merging + return; + } + // there's more than one class declaration, which needs to be reported + for (const { identifier } of classDecls) { + yield { type: 'syntax', node: identifier, loc: identifier.loc }; + } + return; + } + if ( + // class + interface/namespace merging + identifiers.every(({ parent }) => FUNCTION_DECLARATION_MERGE_NODES.has(parent.type))) { + const functionDecls = identifiers.filter(({ parent }) => parent.type === experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration); + if (functionDecls.length === 1) { + // safe declaration merging + return; + } + // there's more than one class declaration, which needs to be reported + for (const { identifier } of functionDecls) { + yield { type: 'syntax', node: identifier, loc: identifier.loc }; + } + return; + } + } + for (const { identifier } of identifiers) { + yield { type: 'syntax', node: identifier, loc: identifier.loc }; + } + } + function findVariablesInScope(scope) { + for (const variable of scope.variables) { + const [declaration, ...extraDeclarations] = iterateDeclarations(variable); + if (extraDeclarations.length === 0) { + continue; + } + /* + * If the type of a declaration is different from the type of + * the first declaration, it shows the location of the first + * declaration. + */ + const detailMessageId = declaration.type === 'builtin' + ? 'redeclaredAsBuiltin' + : 'redeclaredBySyntax'; + const data = { id: variable.name }; + // Report extra declarations. + for (const { type, node, loc } of extraDeclarations) { + const messageId = type === declaration.type ? 'redeclared' : detailMessageId; + if (node) { + context.report({ node, loc, messageId, data }); + } + else if (loc) { + context.report({ loc, messageId, data }); + } + } + } + } + /** + * Find variables in the current scope. + */ + function checkForBlock(node) { + const scope = context.getScope(); + /* + * In ES5, some node type such as `BlockStatement` doesn't have that scope. + * `scope.block` is a different node in such a case. + */ + if (scope.block === node) { + findVariablesInScope(scope); + } + } + return { + Program() { + const scope = context.getScope(); + findVariablesInScope(scope); + // Node.js or ES modules has a special scope. + if (scope.type === 'global' && + scope.childScopes[0] && + // The special scope's block is the Program node. + scope.block === scope.childScopes[0].block) { + findVariablesInScope(scope.childScopes[0]); + } + }, + FunctionDeclaration: checkForBlock, + FunctionExpression: checkForBlock, + ArrowFunctionExpression: checkForBlock, + BlockStatement: checkForBlock, + ForStatement: checkForBlock, + ForInStatement: checkForBlock, + ForOfStatement: checkForBlock, + SwitchStatement: checkForBlock, + }; + }, +}); +//# sourceMappingURL=no-redeclare.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map new file mode 100644 index 00000000..38aac7aa --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-redeclare.js","sourceRoot":"","sources":["../../src/rules/no-redeclare.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js index 1439b2bb..3bf5f6b1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -25,7 +37,7 @@ exports.default = util.createRule({ defaultOptions: [], create(context) { return { - ':matches(CallExpression, OptionalCallExpression) > Identifier[name="require"]'(node) { + 'CallExpression > Identifier[name="require"]'(node) { context.report({ node: node.parent, messageId: 'noRequireImports', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map index c3f3da7d..48ae71e9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js.map @@ -1 +1 @@ -{"version":3,"file":"no-require-imports.js","sourceRoot":"","sources":["../../src/rules/no-require-imports.ts"],"names":[],"mappings":";;;;;;;;;AACA,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;SACnB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,gBAAgB,EAAE,0CAA0C;SAC7D;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,+EAA+E,CAC7E,IAAyB;gBAEzB,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,IAAI,CAAC,MAAO;oBAClB,SAAS,EAAE,kBAAkB;iBAC9B,CAAC,CAAC;YACL,CAAC;YACD,yBAAyB,CAAC,IAAI;gBAC5B,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,kBAAkB;iBAC9B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-require-imports.js","sourceRoot":"","sources":["../../src/rules/no-require-imports.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;SACnB;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACR,gBAAgB,EAAE,0CAA0C;SAC7D;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,6CAA6C,CAC3C,IAAyB;gBAEzB,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,IAAI,CAAC,MAAO;oBAClB,SAAS,EAAE,kBAAkB;iBAC9B,CAAC,CAAC;YACL,CAAC;YACD,yBAAyB,CAAC,IAAI;gBAC5B,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,kBAAkB;iBAC9B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js new file mode 100644 index 00000000..e70d5c17 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js @@ -0,0 +1,278 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-shadow', + meta: { + type: 'suggestion', + docs: { + description: 'Disallow variable declarations from shadowing variables declared in the outer scope', + category: 'Variables', + recommended: false, + extendsBaseRule: true, + }, + schema: [ + { + type: 'object', + properties: { + builtinGlobals: { + type: 'boolean', + }, + hoist: { + enum: ['all', 'functions', 'never'], + }, + allow: { + type: 'array', + items: { + type: 'string', + }, + }, + ignoreTypeValueShadow: { + type: 'boolean', + }, + ignoreFunctionTypeParameterNameValueShadow: { + type: 'boolean', + }, + }, + additionalProperties: false, + }, + ], + messages: { + noShadow: "'{{name}}' is already declared in the upper scope.", + }, + }, + defaultOptions: [ + { + allow: [], + builtinGlobals: false, + hoist: 'functions', + ignoreTypeValueShadow: true, + ignoreFunctionTypeParameterNameValueShadow: true, + }, + ], + create(context, [options]) { + /** + * Check if variable is a `this` parameter. + */ + function isThisParam(variable) { + return variable.defs[0].type === 'Parameter' && variable.name === 'this'; + } + function isTypeValueShadow(variable, shadowed) { + if (options.ignoreTypeValueShadow !== true) { + return false; + } + if (!('isValueVariable' in variable)) { + // this shouldn't happen... + return false; + } + const isShadowedValue = 'isValueVariable' in shadowed ? shadowed.isValueVariable : true; + return variable.isValueVariable !== isShadowedValue; + } + function isFunctionTypeParameterNameValueShadow(variable, shadowed) { + if (options.ignoreFunctionTypeParameterNameValueShadow !== true) { + return false; + } + if (!('isValueVariable' in variable)) { + // this shouldn't happen... + return false; + } + const isShadowedValue = 'isValueVariable' in shadowed ? shadowed.isValueVariable : true; + if (!isShadowedValue) { + return false; + } + const id = variable.identifiers[0]; + return util.isFunctionType(id.parent); + } + /** + * Check if variable name is allowed. + * @param variable The variable to check. + * @returns Whether or not the variable name is allowed. + */ + function isAllowed(variable) { + return options.allow.indexOf(variable.name) !== -1; + } + /** + * Checks if a variable of the class name in the class scope of ClassDeclaration. + * + * ClassDeclaration creates two variables of its name into its outer scope and its class scope. + * So we should ignore the variable in the class scope. + * @param variable The variable to check. + * @returns Whether or not the variable of the class name in the class scope of ClassDeclaration. + */ + function isDuplicatedClassNameVariable(variable) { + const block = variable.scope.block; + return (block.type === experimental_utils_1.AST_NODE_TYPES.ClassDeclaration && + block.id === variable.identifiers[0]); + } + /** + * Checks if a variable of the class name in the class scope of TSEnumDeclaration. + * + * TSEnumDeclaration creates two variables of its name into its outer scope and its class scope. + * So we should ignore the variable in the class scope. + * @param variable The variable to check. + * @returns Whether or not the variable of the class name in the class scope of TSEnumDeclaration. + */ + function isDuplicatedEnumNameVariable(variable) { + const block = variable.scope.block; + return (block.type === experimental_utils_1.AST_NODE_TYPES.TSEnumDeclaration && + block.id === variable.identifiers[0]); + } + /** + * Checks if a variable is inside the initializer of scopeVar. + * + * To avoid reporting at declarations such as `var a = function a() {};`. + * But it should report `var a = function(a) {};` or `var a = function() { function a() {} };`. + * @param variable The variable to check. + * @param scopeVar The scope variable to look for. + * @returns Whether or not the variable is inside initializer of scopeVar. + */ + function isOnInitializer(variable, scopeVar) { + var _a; + const outerScope = scopeVar.scope; + const outerDef = scopeVar.defs[0]; + const outer = (_a = outerDef === null || outerDef === void 0 ? void 0 : outerDef.parent) === null || _a === void 0 ? void 0 : _a.range; + const innerScope = variable.scope; + const innerDef = variable.defs[0]; + const inner = innerDef === null || innerDef === void 0 ? void 0 : innerDef.name.range; + return !!(outer && + inner && + outer[0] < inner[0] && + inner[1] < outer[1] && + ((innerDef.type === 'FunctionName' && + innerDef.node.type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression) || + innerDef.node.type === experimental_utils_1.AST_NODE_TYPES.ClassExpression) && + outerScope === innerScope.upper); + } + /** + * Get a range of a variable's identifier node. + * @param variable The variable to get. + * @returns The range of the variable's identifier node. + */ + function getNameRange(variable) { + const def = variable.defs[0]; + return def === null || def === void 0 ? void 0 : def.name.range; + } + /** + * Checks if a variable is in TDZ of scopeVar. + * @param variable The variable to check. + * @param scopeVar The variable of TDZ. + * @returns Whether or not the variable is in TDZ of scopeVar. + */ + function isInTdz(variable, scopeVar) { + const outerDef = scopeVar.defs[0]; + const inner = getNameRange(variable); + const outer = getNameRange(scopeVar); + return !!(inner && + outer && + inner[1] < outer[0] && + // Excepts FunctionDeclaration if is {"hoist":"function"}. + (options.hoist !== 'functions' || + !outerDef || + outerDef.node.type !== experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration)); + } + /** + * Finds the variable by a given name in a given scope and its upper scopes. + * @param initScope A scope to start find. + * @param name A variable name to find. + * @returns A found variable or `null`. + */ + function getVariableByName(initScope, name) { + let scope = initScope; + while (scope) { + const variable = scope.set.get(name); + if (variable) { + return variable; + } + scope = scope.upper; + } + return null; + } + /** + * Checks the current context for shadowed variables. + * @param {Scope} scope Fixme + */ + function checkForShadows(scope) { + const variables = scope.variables; + for (const variable of variables) { + // ignore "arguments" + if (variable.identifiers.length === 0) { + continue; + } + // this params are pseudo-params that cannot be shadowed + if (isThisParam(variable)) { + continue; + } + // ignore variables of a class name in the class scope of ClassDeclaration + if (isDuplicatedClassNameVariable(variable)) { + continue; + } + // ignore variables of a class name in the class scope of ClassDeclaration + if (isDuplicatedEnumNameVariable(variable)) { + continue; + } + // ignore configured allowed names + if (isAllowed(variable)) { + continue; + } + // Gets shadowed variable. + const shadowed = getVariableByName(scope.upper, variable.name); + if (!shadowed) { + continue; + } + // ignore type value variable shadowing if configured + if (isTypeValueShadow(variable, shadowed)) { + continue; + } + // ignore function type parameter name shadowing if configured + if (isFunctionTypeParameterNameValueShadow(variable, shadowed)) { + continue; + } + const isESLintGlobal = 'writeable' in shadowed; + if ((shadowed.identifiers.length > 0 || + (options.builtinGlobals && isESLintGlobal)) && + !isOnInitializer(variable, shadowed) && + !(options.hoist !== 'all' && isInTdz(variable, shadowed))) { + context.report({ + node: variable.identifiers[0], + messageId: 'noShadow', + data: { + name: variable.name, + }, + }); + } + } + } + return { + 'Program:exit'() { + const globalScope = context.getScope(); + const stack = globalScope.childScopes.slice(); + while (stack.length) { + const scope = stack.pop(); + stack.push(...scope.childScopes); + checkForShadows(scope); + } + }, + }; + }, +}); +//# sourceMappingURL=no-shadow.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js.map new file mode 100644 index 00000000..188c1727 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-shadow.js","sourceRoot":"","sources":["../../src/rules/no-shadow.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js index ca6e7e31..cd0ae568 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map index fb804812..99bf7d34 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js.map @@ -1 +1 @@ -{"version":3,"file":"no-this-alias.js","sourceRoot":"","sources":["../../src/rules/no-this-alias.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,0BAA0B;YACvC,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;qBAChB;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF;aACF;SACF;QACD,QAAQ,EAAE;YACR,cAAc,EAAE,kDAAkD;YAClE,eAAe,EACb,8DAA8D;SACjE;KACF;IACD,cAAc,EAAE;QACd;YACE,kBAAkB,EAAE,IAAI;YACxB,YAAY,EAAE,EAAE;SACjB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,YAAY,EAAE,CAAC;QACpD,OAAO;YACL,gDAAgD,CAC9C,IAAiC;gBAEjC,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;gBAEpB,IAAI,kBAAkB,IAAI,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,EAAE;oBAC/D,OAAO;iBACR;gBAED,MAAM,cAAc,GAClB,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;oBACnC,CAAC,CAAC,YAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;oBACjC,CAAC,CAAC,KAAK,CAAC;gBACZ,IAAI,CAAC,cAAc,EAAE;oBACnB,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,EAAE;wBACR,SAAS,EACP,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;4BACnC,CAAC,CAAC,gBAAgB;4BAClB,CAAC,CAAC,iBAAiB;qBACxB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-this-alias.js","sourceRoot":"","sources":["../../src/rules/no-this-alias.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,0BAA0B;YACvC,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;qBAChB;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF;aACF;SACF;QACD,QAAQ,EAAE;YACR,cAAc,EAAE,kDAAkD;YAClE,eAAe,EACb,8DAA8D;SACjE;KACF;IACD,cAAc,EAAE;QACd;YACE,kBAAkB,EAAE,IAAI;YACxB,YAAY,EAAE,EAAE;SACjB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,YAAY,EAAE,CAAC;QACpD,OAAO;YACL,gDAAgD,CAC9C,IAAiC;gBAEjC,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;gBAEpB,IAAI,kBAAkB,IAAI,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,EAAE;oBAC/D,OAAO;iBACR;gBAED,MAAM,cAAc,GAClB,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;oBACnC,CAAC,CAAC,YAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;oBACjC,CAAC,CAAC,KAAK,CAAC;gBACZ,IAAI,CAAC,cAAc,EAAE;oBACnB,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,EAAE;wBACR,SAAS,EACP,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;4BACnC,CAAC,CAAC,gBAAgB;4BAClB,CAAC,CAAC,iBAAiB;qBACxB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js index bb155f83..b11fa4b4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -33,12 +45,18 @@ exports.default = util.createRule({ const checker = program.getTypeChecker(); function isErrorLike(type) { var _a; + if (type.isIntersection()) { + return type.types.some(isErrorLike); + } + if (type.isUnion()) { + return type.types.every(isErrorLike); + } const symbol = type.getSymbol(); if (!symbol) { return false; } if (symbol.getName() === 'Error') { - const declarations = (_a = symbol.getDeclarations(), (_a !== null && _a !== void 0 ? _a : [])); + const declarations = (_a = symbol.getDeclarations()) !== null && _a !== void 0 ? _a : []; for (const declaration of declarations) { const sourceFile = declaration.getSourceFile(); if (program.isSourceFileDefaultLibrary(sourceFile)) { @@ -46,10 +64,11 @@ exports.default = util.createRule({ } } } - const baseTypes = checker.getBaseTypes(type); - for (const baseType of baseTypes) { - if (isErrorLike(baseType)) { - return true; + if (symbol.flags & (ts.SymbolFlags.Class | ts.SymbolFlags.Interface)) { + for (const baseType of checker.getBaseTypes(type)) { + if (isErrorLike(baseType)) { + return true; + } } } return false; @@ -59,7 +78,8 @@ exports.default = util.createRule({ case experimental_utils_1.AST_NODE_TYPES.Identifier: case experimental_utils_1.AST_NODE_TYPES.CallExpression: case experimental_utils_1.AST_NODE_TYPES.NewExpression: - case experimental_utils_1.AST_NODE_TYPES.MemberExpression: { + case experimental_utils_1.AST_NODE_TYPES.MemberExpression: + case experimental_utils_1.AST_NODE_TYPES.TSAsExpression: { const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node); return checker.getTypeAtLocation(tsNode); } @@ -69,11 +89,11 @@ exports.default = util.createRule({ return tryGetThrowArgumentType(node.expressions[node.expressions.length - 1]); case experimental_utils_1.AST_NODE_TYPES.LogicalExpression: { const left = tryGetThrowArgumentType(node.left); - return (left !== null && left !== void 0 ? left : tryGetThrowArgumentType(node.right)); + return left !== null && left !== void 0 ? left : tryGetThrowArgumentType(node.right); } case experimental_utils_1.AST_NODE_TYPES.ConditionalExpression: { const consequent = tryGetThrowArgumentType(node.consequent); - return (consequent !== null && consequent !== void 0 ? consequent : tryGetThrowArgumentType(node.alternate)); + return consequent !== null && consequent !== void 0 ? consequent : tryGetThrowArgumentType(node.alternate); } default: return null; @@ -90,7 +110,8 @@ exports.default = util.createRule({ context.report({ node, messageId: 'undef' }); return; } - if (type.flags & (ts.TypeFlags.Any | ts.TypeFlags.Unknown) || + if (util.isTypeAnyType(type) || + util.isTypeUnknownType(type) || isErrorLike(type)) { return; } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map index 9a52e806..86d94ff0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-throw-literal.js.map @@ -1 +1 @@ -{"version":3,"file":"no-throw-literal.js","sourceRoot":"","sources":["../../src/rules/no-throw-literal.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-throw-literal.js","sourceRoot":"","sources":["../../src/rules/no-throw-literal.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js index b03e5df6..62b9398b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -191,7 +203,11 @@ exports.default = util.createRule({ else if ( // eslint-disable-next-line @typescript-eslint/internal/prefer-ast-types-enum type.node.type.endsWith('Keyword') || - aliasTypes.has(type.node.type)) { + aliasTypes.has(type.node.type) || + (type.node.type === experimental_utils_1.AST_NODE_TYPES.TSTypeOperator && + type.node.operator === 'readonly' && + type.node.typeAnnotation && + aliasTypes.has(type.node.typeAnnotation.type))) { // alias / keyword checkAndReport(allowAliases, isTopLevel, type, 'Aliases'); } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map index 22018ede..ad555080 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js.map @@ -1 +1 @@ -{"version":3,"file":"no-type-alias.js","sourceRoot":"","sources":["../../src/rules/no-type-alias.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-type-alias.js","sourceRoot":"","sources":["../../src/rules/no-type-alias.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js index 935feb1c..7da37add 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -22,14 +34,35 @@ exports.default = util.createRule({ }, fixable: 'code', messages: { - direct: 'This expression unnecessarily compares a boolean value to a boolean instead of using it directly', + direct: 'This expression unnecessarily compares a boolean value to a boolean instead of using it directly.', negated: 'This expression unnecessarily compares a boolean value to a boolean instead of negating it.', + comparingNullableToTrueDirect: 'This expression unnecessarily compares a nullable boolean value to true instead of using it directly.', + comparingNullableToTrueNegated: 'This expression unnecessarily compares a nullable boolean value to true instead of negating it.', + comparingNullableToFalse: 'This expression unnecessarily compares a nullable boolean value to false instead of using the ?? operator to provide a default.', }, - schema: [], + schema: [ + { + type: 'object', + properties: { + allowComparingNullableBooleansToTrue: { + type: 'boolean', + }, + allowComparingNullableBooleansToFalse: { + type: 'boolean', + }, + }, + additionalProperties: false, + }, + ], type: 'suggestion', }, - defaultOptions: [], - create(context) { + defaultOptions: [ + { + allowComparingNullableBooleansToTrue: true, + allowComparingNullableBooleansToFalse: true, + }, + ], + create(context, [options]) { const parserServices = util.getParserServices(context); const checker = parserServices.program.getTypeChecker(); function getBooleanComparison(node) { @@ -38,10 +71,42 @@ exports.default = util.createRule({ return undefined; } const expressionType = checker.getTypeAtLocation(parserServices.esTreeNodeToTSNodeMap.get(comparison.expression)); - if (!tsutils.isTypeFlagSet(expressionType, ts.TypeFlags.Boolean | ts.TypeFlags.BooleanLiteral)) { - return undefined; + if (isBooleanType(expressionType)) { + return Object.assign(Object.assign({}, comparison), { expressionIsNullableBoolean: false }); } - return comparison; + if (isNullableBoolean(expressionType)) { + return Object.assign(Object.assign({}, comparison), { expressionIsNullableBoolean: true }); + } + return undefined; + } + function isBooleanType(expressionType) { + return tsutils.isTypeFlagSet(expressionType, ts.TypeFlags.Boolean | ts.TypeFlags.BooleanLiteral); + } + /** + * checks if the expressionType is a union that + * 1) contains at least one nullish type (null or undefined) + * 2) contains at least once boolean type (true or false or boolean) + * 3) does not contain any types besides nullish and boolean types + */ + function isNullableBoolean(expressionType) { + if (!expressionType.isUnion()) { + return false; + } + const { types } = expressionType; + const nonNullishTypes = types.filter(type => !tsutils.isTypeFlagSet(type, ts.TypeFlags.Undefined | ts.TypeFlags.Null)); + const hasNonNullishType = nonNullishTypes.length > 0; + if (!hasNonNullishType) { + return false; + } + const hasNullableType = nonNullishTypes.length < types.length; + if (!hasNullableType) { + return false; + } + const allNonNullishTypesAreBoolean = nonNullishTypes.every(isBooleanType); + if (!allNonNullishTypesAreBoolean) { + return false; + } + return true; } function deconstructComparison(node) { const comparisonType = util.getEqualsKind(node.operator); @@ -56,10 +121,11 @@ exports.default = util.createRule({ typeof against.value !== 'boolean') { continue; } - const { value } = against; - const negated = node.operator.startsWith('!'); + const { value: literalBooleanInComparison } = against; + const negated = !comparisonType.isPositive; return { - forTruthy: value ? !negated : negated, + literalBooleanInComparison, + forTruthy: literalBooleanInComparison ? !negated : negated, expression, negated, range: expression.range[0] < against.range[0] @@ -69,21 +135,71 @@ exports.default = util.createRule({ } return undefined; } + function nodeIsUnaryNegation(node) { + return (node.type === experimental_utils_1.AST_NODE_TYPES.UnaryExpression && + node.prefix && + node.operator === '!'); + } return { BinaryExpression(node) { const comparison = getBooleanComparison(node); - if (comparison) { - context.report({ - fix: function* (fixer) { - yield fixer.removeRange(comparison.range); + if (comparison === undefined) { + return; + } + if (comparison.expressionIsNullableBoolean) { + if (comparison.literalBooleanInComparison && + options.allowComparingNullableBooleansToTrue) { + return; + } + if (!comparison.literalBooleanInComparison && + options.allowComparingNullableBooleansToFalse) { + return; + } + } + context.report({ + fix: function* (fixer) { + yield fixer.removeRange(comparison.range); + // if the expression `exp` isn't nullable, or we're comparing to `true`, + // we can just replace the entire comparison with `exp` or `!exp` + if (!comparison.expressionIsNullableBoolean || + comparison.literalBooleanInComparison) { if (!comparison.forTruthy) { yield fixer.insertTextBefore(node, '!'); } - }, - messageId: comparison.negated ? 'negated' : 'direct', - node, - }); - } + return; + } + // if we're here, then the expression is a nullable boolean and we're + // comparing to a literal `false` + // if we're doing `== false` or `=== false`, then we need to negate the expression + if (!comparison.negated) { + const { parent } = node; + // if the parent is a negation, we can instead just get rid of the parent's negation. + // i.e. instead of resulting in `!(!(exp))`, we can just result in `exp` + if (parent != null && nodeIsUnaryNegation(parent)) { + // remove from the beginning of the parent to the beginning of this node + yield fixer.removeRange([parent.range[0], node.range[0]]); + // remove from the end of the node to the end of the parent + yield fixer.removeRange([node.range[1], parent.range[1]]); + } + else { + yield fixer.insertTextBefore(node, '!'); + } + } + // provide the default `true` + yield fixer.insertTextBefore(node, '('); + yield fixer.insertTextAfter(node, ' ?? true)'); + }, + messageId: comparison.expressionIsNullableBoolean + ? comparison.literalBooleanInComparison + ? comparison.negated + ? 'comparingNullableToTrueNegated' + : 'comparingNullableToTrueDirect' + : 'comparingNullableToFalse' + : comparison.negated + ? 'negated' + : 'direct', + node, + }); }, }; }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map index 6c7c1700..be36dbf9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unnecessary-boolean-literal-compare.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-boolean-literal-compare.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-unnecessary-boolean-literal-compare.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-boolean-literal-compare.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js index eeacb862..32b71398 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -18,11 +30,11 @@ const isPossiblyFalsy = (type) => tsutils_1.unionTypeParts(type) // PossiblyFalsy flag includes literal values, so exclude ones that // are definitely truthy .filter(t => !isTruthyLiteral(t)) - .some(type => tsutils_1.isTypeFlagSet(type, ts.TypeFlags.PossiblyFalsy)); + .some(type => util_1.isTypeFlagSet(type, ts.TypeFlags.PossiblyFalsy)); const isPossiblyTruthy = (type) => tsutils_1.unionTypeParts(type).some(type => !tsutils_1.isFalsyType(type)); // Nullish utilities const nullishFlag = ts.TypeFlags.Undefined | ts.TypeFlags.Null; -const isNullishType = (type) => tsutils_1.isTypeFlagSet(type, nullishFlag); +const isNullishType = (type) => util_1.isTypeFlagSet(type, nullishFlag); const isPossiblyNullish = (type) => tsutils_1.unionTypeParts(type).some(isNullishType); const isAlwaysNullish = (type) => tsutils_1.unionTypeParts(type).every(isNullishType); // isLiteralType only covers numbers and strings, this is a more exhaustive check. @@ -49,10 +61,7 @@ exports.default = util_1.createRule({ allowConstantLoopConditions: { type: 'boolean', }, - ignoreRhs: { - type: 'boolean', - }, - checkArrayPredicates: { + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: { type: 'boolean', }, }, @@ -63,71 +72,133 @@ exports.default = util_1.createRule({ messages: { alwaysTruthy: 'Unnecessary conditional, value is always truthy.', alwaysFalsy: 'Unnecessary conditional, value is always falsy.', - alwaysTruthyFunc: 'This callback should return a conditional, but return is always truthy', - alwaysFalsyFunc: 'This callback should return a conditional, but return is always falsy', + alwaysTruthyFunc: 'This callback should return a conditional, but return is always truthy.', + alwaysFalsyFunc: 'This callback should return a conditional, but return is always falsy.', neverNullish: 'Unnecessary conditional, expected left-hand side of `??` operator to be possibly null or undefined.', - alwaysNullish: 'Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`', + alwaysNullish: 'Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`.', literalBooleanExpression: 'Unnecessary conditional, both sides of the expression are literal values', + noOverlapBooleanExpression: 'Unnecessary conditional, the types have no overlap', never: 'Unnecessary conditional, value is `never`', neverOptionalChain: 'Unnecessary optional chain on a non-nullish value', + noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.', }, }, defaultOptions: [ { allowConstantLoopConditions: false, - ignoreRhs: false, - checkArrayPredicates: false, + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false, }, ], - create(context, [{ allowConstantLoopConditions, checkArrayPredicates, ignoreRhs }]) { + create(context, [{ allowConstantLoopConditions, allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing, },]) { const service = util_1.getParserServices(context); const checker = service.program.getTypeChecker(); const sourceCode = context.getSourceCode(); + const compilerOptions = service.program.getCompilerOptions(); + const isStrictNullChecks = tsutils_1.isStrictCompilerOptionEnabled(compilerOptions, 'strictNullChecks'); + if (!isStrictNullChecks && + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing !== true) { + context.report({ + loc: { + start: { line: 0, column: 0 }, + end: { line: 0, column: 0 }, + }, + messageId: 'noStrictNullCheck', + }); + } function getNodeType(node) { const tsNode = service.esTreeNodeToTSNodeMap.get(node); return util_1.getConstrainedTypeAtLocation(checker, tsNode); } function nodeIsArrayType(node) { const nodeType = getNodeType(node); - return checker.isArrayType(nodeType) || checker.isTupleType(nodeType); + return checker.isArrayType(nodeType); + } + function nodeIsTupleType(node) { + const nodeType = getNodeType(node); + return checker.isTupleType(nodeType); + } + function isArrayIndexExpression(node) { + return ( + // Is an index signature + node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression && + node.computed && + // ...into an array type + (nodeIsArrayType(node.object) || + // ... or a tuple type + (nodeIsTupleType(node.object) && + // Exception: literal index into a tuple - will have a sound type + node.property.type !== experimental_utils_1.AST_NODE_TYPES.Literal))); } /** * Checks if a conditional node is necessary: * if the type of the node is always true or always false, it's not necessary. */ - function checkNode(node) { + function checkNode(node, isUnaryNotArgument = false) { + // Check if the node is Unary Negation expression and handle it + if (node.type === experimental_utils_1.AST_NODE_TYPES.UnaryExpression && + node.operator === '!') { + return checkNode(node.argument, true); + } + // Since typescript array index signature types don't represent the + // possibility of out-of-bounds access, if we're indexing into an array + // just skip the check, to avoid false positives + if (isArrayIndexExpression(node)) { + return; + } + // When checking logical expressions, only check the right side + // as the left side has been checked by checkLogicalExpressionForUnnecessaryConditionals + // + // Unless the node is nullish coalescing, as it's common to use patterns like `nullBool ?? true` to to strict + // boolean checks if we inspect the right here, it'll usually be a constant condition on purpose. + // In this case it's better to inspect the type of the expression as a whole. + if (node.type === experimental_utils_1.AST_NODE_TYPES.LogicalExpression && + node.operator !== '??') { + return checkNode(node.right); + } const type = getNodeType(node); // Conditional is always necessary if it involves: // `any` or `unknown` or a naked type parameter - if (tsutils_1.unionTypeParts(type).some(part => tsutils_1.isTypeFlagSet(part, ts.TypeFlags.Any | - ts.TypeFlags.Unknown | - ts.TypeFlags.TypeParameter))) { + if (tsutils_1.unionTypeParts(type).some(part => util_1.isTypeAnyType(part) || + util_1.isTypeUnknownType(part) || + util_1.isTypeFlagSet(part, ts.TypeFlags.TypeParameter))) { return; } - const messageId = tsutils_1.isTypeFlagSet(type, ts.TypeFlags.Never) - ? 'never' - : !isPossiblyTruthy(type) - ? 'alwaysFalsy' - : !isPossiblyFalsy(type) - ? 'alwaysTruthy' - : undefined; + let messageId = null; + if (util_1.isTypeFlagSet(type, ts.TypeFlags.Never)) { + messageId = 'never'; + } + else if (!isPossiblyTruthy(type)) { + messageId = !isUnaryNotArgument ? 'alwaysFalsy' : 'alwaysTruthy'; + } + else if (!isPossiblyFalsy(type)) { + messageId = !isUnaryNotArgument ? 'alwaysTruthy' : 'alwaysFalsy'; + } if (messageId) { context.report({ node, messageId }); } } function checkNodeForNullish(node) { - const type = getNodeType(node); - // Conditional is always necessary if it involves `any` or `unknown` - if (tsutils_1.isTypeFlagSet(type, ts.TypeFlags.Any | ts.TypeFlags.Unknown)) { + // Since typescript array index signature types don't represent the + // possibility of out-of-bounds access, if we're indexing into an array + // just skip the check, to avoid false positives + if (isArrayIndexExpression(node)) { return; } - const messageId = tsutils_1.isTypeFlagSet(type, ts.TypeFlags.Never) - ? 'never' - : !isPossiblyNullish(type) - ? 'neverNullish' - : isAlwaysNullish(type) - ? 'alwaysNullish' - : undefined; + const type = getNodeType(node); + // Conditional is always necessary if it involves `any` or `unknown` + if (util_1.isTypeAnyType(type) || util_1.isTypeUnknownType(type)) { + return; + } + let messageId = null; + if (util_1.isTypeFlagSet(type, ts.TypeFlags.Never)) { + messageId = 'never'; + } + else if (!isPossiblyNullish(type)) { + messageId = 'neverNullish'; + } + else if (isAlwaysNullish(type)) { + messageId = 'alwaysNullish'; + } if (messageId) { context.report({ node, messageId }); } @@ -138,6 +209,9 @@ exports.default = util_1.createRule({ * * NOTE: It's also unnecessary if the types that don't overlap at all * but that case is handled by the Typescript compiler itself. + * Known exceptions: + * * https://github.com/microsoft/TypeScript/issues/32627 + * * https://github.com/microsoft/TypeScript/issues/37160 (handled) */ const BOOL_OPERATORS = new Set([ '<', @@ -150,21 +224,41 @@ exports.default = util_1.createRule({ '!==', ]); function checkIfBinaryExpressionIsNecessaryConditional(node) { - if (BOOL_OPERATORS.has(node.operator) && - isLiteral(getNodeType(node.left)) && - isLiteral(getNodeType(node.right))) { - context.report({ node, messageId: 'literalBooleanExpression' }); - } - } - /** - * Checks that a testable expression is necessarily conditional, reports otherwise. - * Filters all LogicalExpressions to prevent some duplicate reports. - */ - function checkIfTestExpressionIsNecessaryConditional(node) { - if (node.test.type === experimental_utils_1.AST_NODE_TYPES.LogicalExpression) { + if (!BOOL_OPERATORS.has(node.operator)) { return; } - checkNode(node.test); + const leftType = getNodeType(node.left); + const rightType = getNodeType(node.right); + if (isLiteral(leftType) && isLiteral(rightType)) { + context.report({ node, messageId: 'literalBooleanExpression' }); + return; + } + // Workaround for https://github.com/microsoft/TypeScript/issues/37160 + if (isStrictNullChecks) { + const UNDEFINED = ts.TypeFlags.Undefined; + const NULL = ts.TypeFlags.Null; + const isComparable = (type, flag) => { + // Allow comparison to `any`, `unknown` or a naked type parameter. + flag |= + ts.TypeFlags.Any | + ts.TypeFlags.Unknown | + ts.TypeFlags.TypeParameter; + // Allow loose comparison to nullish values. + if (node.operator === '==' || node.operator === '!=') { + flag |= NULL | UNDEFINED; + } + return util_1.isTypeFlagSet(type, flag); + }; + if ((leftType.flags === UNDEFINED && + !isComparable(rightType, UNDEFINED)) || + (rightType.flags === UNDEFINED && + !isComparable(leftType, UNDEFINED)) || + (leftType.flags === NULL && !isComparable(rightType, NULL)) || + (rightType.flags === NULL && !isComparable(leftType, NULL))) { + context.report({ node, messageId: 'noOverlapBooleanExpression' }); + return; + } + } } /** * Checks that a logical expression contains a boolean, reports otherwise. @@ -174,17 +268,16 @@ exports.default = util_1.createRule({ checkNodeForNullish(node.left); return; } + // Only checks the left side, since the right side might not be "conditional" at all. + // The right side will be checked if the LogicalExpression is used in a conditional context checkNode(node.left); - if (!ignoreRhs) { - checkNode(node.right); - } } /** * Checks that a testable expression of a loop is necessarily conditional, reports otherwise. */ function checkIfLoopIsNecessaryConditional(node) { - if (node.test === null || - node.test.type === experimental_utils_1.AST_NODE_TYPES.LogicalExpression) { + if (node.test === null) { + // e.g. `for(;;)` return; } /** @@ -205,21 +298,20 @@ exports.default = util_1.createRule({ 'some', 'every', ]); - function shouldCheckCallback(node) { + function isArrayPredicateFunction(node) { const { callee } = node; return ( - // option is on - !!checkArrayPredicates && - // looks like `something.filter` or `something.find` - callee.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression && + // looks like `something.filter` or `something.find` + callee.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression && callee.property.type === experimental_utils_1.AST_NODE_TYPES.Identifier && ARRAY_PREDICATE_FUNCTIONS.has(callee.property.name) && // and the left-hand side is an array, according to the types - nodeIsArrayType(callee.object)); + (nodeIsArrayType(callee.object) || nodeIsTupleType(callee.object))); } function checkCallExpression(node) { - const { arguments: [callback], } = node; - if (callback && shouldCheckCallback(node)) { + // If this is something like arr.filter(x => /*condition*/), check `condition` + if (isArrayPredicateFunction(node) && node.arguments.length) { + const callback = node.arguments[0]; // Inline defined functions if ((callback.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression || callback.type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression) && @@ -260,16 +352,88 @@ exports.default = util_1.createRule({ } } } + // Recursively searches an optional chain for an array index expression + // Has to search the entire chain, because an array index will "infect" the rest of the types + // Example: + // ``` + // [{x: {y: "z"} }][n] // type is {x: {y: "z"}} + // ?.x // type is {y: "z"} + // ?.y // This access is considered "unnecessary" according to the types + // ``` + function optionChainContainsArrayIndex(node) { + const lhsNode = node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression ? node.callee : node.object; + if (isArrayIndexExpression(lhsNode)) { + return true; + } + if (lhsNode.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || + lhsNode.type === experimental_utils_1.AST_NODE_TYPES.CallExpression) { + return optionChainContainsArrayIndex(lhsNode); + } + return false; + } + function isNullablePropertyType(objType, propertyType) { + if (propertyType.isUnion()) { + return propertyType.types.some(type => isNullablePropertyType(objType, type)); + } + if (propertyType.isNumberLiteral() || propertyType.isStringLiteral()) { + const propType = util_1.getTypeOfPropertyOfName(checker, objType, propertyType.value.toString()); + if (propType) { + return util_1.isNullableType(propType, { allowUndefined: true }); + } + } + const typeName = util_1.getTypeName(checker, propertyType); + return !!((typeName === 'string' && + checker.getIndexInfoOfType(objType, ts.IndexKind.String)) || + (typeName === 'number' && + checker.getIndexInfoOfType(objType, ts.IndexKind.Number))); + } + // Checks whether a member expression is nullable or not regardless of it's previous node. + // Example: + // ``` + // // 'bar' is nullable if 'foo' is null. + // // but this function checks regardless of 'foo' type, so returns 'true'. + // declare const foo: { bar : { baz: string } } | null + // foo?.bar; + // ``` + function isNullableOriginFromPrev(node) { + const prevType = getNodeType(node.object); + const property = node.property; + if (prevType.isUnion() && util_1.isIdentifier(property)) { + const isOwnNullable = prevType.types.some(type => { + if (node.computed) { + const propertyType = getNodeType(node.property); + return isNullablePropertyType(type, propertyType); + } + const propType = util_1.getTypeOfPropertyOfName(checker, type, property.name); + return propType && util_1.isNullableType(propType, { allowUndefined: true }); + }); + return (!isOwnNullable && util_1.isNullableType(prevType, { allowUndefined: true })); + } + return false; + } + function isOptionableExpression(node) { + const type = getNodeType(node); + const isOwnNullable = node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression + ? !isNullableOriginFromPrev(node) + : true; + return (util_1.isTypeAnyType(type) || + util_1.isTypeUnknownType(type) || + (util_1.isNullableType(type, { allowUndefined: true }) && isOwnNullable)); + } function checkOptionalChain(node, beforeOperator, fix) { // We only care if this step in the chain is optional. If just descend // from an optional chain, then that's fine. if (!node.optional) { return; } - const type = getNodeType(node); - if (tsutils_1.isTypeFlagSet(type, ts.TypeFlags.Any) || - tsutils_1.isTypeFlagSet(type, ts.TypeFlags.Unknown) || - util_1.isNullableType(type, { allowUndefined: true })) { + // Since typescript array index signature types don't represent the + // possibility of out-of-bounds access, if we're indexing into an array + // just skip the check, to avoid false positives + if (optionChainContainsArrayIndex(node)) { + return; + } + const nodeToCheck = node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression ? node.callee : node.object; + if (isOptionableExpression(nodeToCheck)) { return; } const questionDotOperator = util_1.nullThrows(sourceCode.getTokenAfter(beforeOperator, token => token.type === experimental_utils_1.AST_TOKEN_TYPES.Punctuator && token.value === '?.'), util_1.NullThrowsReasons.MissingToken('operator', node.type)); @@ -283,7 +447,7 @@ exports.default = util_1.createRule({ }); } function checkOptionalMemberExpression(node) { - checkOptionalChain(node, node.object, '.'); + checkOptionalChain(node, node.object, node.computed ? '' : '.'); } function checkOptionalCallExpression(node) { checkOptionalChain(node, node.callee, ''); @@ -291,14 +455,14 @@ exports.default = util_1.createRule({ return { BinaryExpression: checkIfBinaryExpressionIsNecessaryConditional, CallExpression: checkCallExpression, - ConditionalExpression: checkIfTestExpressionIsNecessaryConditional, + ConditionalExpression: (node) => checkNode(node.test), DoWhileStatement: checkIfLoopIsNecessaryConditional, ForStatement: checkIfLoopIsNecessaryConditional, - IfStatement: checkIfTestExpressionIsNecessaryConditional, + IfStatement: (node) => checkNode(node.test), LogicalExpression: checkLogicalExpressionForUnnecessaryConditionals, WhileStatement: checkIfLoopIsNecessaryConditional, - OptionalMemberExpression: checkOptionalMemberExpression, - OptionalCallExpression: checkOptionalCallExpression, + 'MemberExpression[optional = true]': checkOptionalMemberExpression, + 'CallExpression[optional = true]': checkOptionalCallExpression, }; }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map index c0bb104a..d3b5c58c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unnecessary-condition.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-condition.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-unnecessary-condition.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-condition.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js index aca12b04..52202a04 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -43,7 +55,7 @@ exports.default = util.createRule({ } function symbolIsNamespaceInScope(symbol) { var _a; - const symbolDeclarations = (_a = symbol.getDeclarations(), (_a !== null && _a !== void 0 ? _a : [])); + const symbolDeclarations = (_a = symbol.getDeclarations()) !== null && _a !== void 0 ? _a : []; if (symbolDeclarations.some(decl => namespacesInScope.some(ns => ns === decl))) { return true; } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map index ecb696f6..c516a452 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unnecessary-qualifier.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-qualifier.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-unnecessary-qualifier.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-qualifier.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js index 5fa768bd..d8fab611 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -33,13 +45,12 @@ exports.default = util.createRule({ const checker = parserServices.program.getTypeChecker(); const sourceCode = context.getSourceCode(); function checkTSArgsAndParameters(esParameters, typeParameters) { - var _a; // Just check the last one. Must specify previous type parameters if the last one is specified. const i = esParameters.params.length - 1; const arg = esParameters.params[i]; const param = typeParameters[i]; // TODO: would like checker.areTypesEquivalent. https://github.com/Microsoft/TypeScript/issues/13502 - if (!((_a = param) === null || _a === void 0 ? void 0 : _a.default) || + if (!(param === null || param === void 0 ? void 0 : param.default) || param.default.getText() !== sourceCode.getText(arg)) { return; } @@ -80,19 +91,19 @@ function getTypeParametersFromType(type, checker) { return undefined; } const sym = getAliasedSymbol(symAtLocation, checker); - if (!sym.declarations) { + const declarations = sym.getDeclarations(); + if (!declarations) { return undefined; } - return util_1.findFirstResult(sym.declarations, decl => tsutils.isClassLikeDeclaration(decl) || + return util_1.findFirstResult(declarations, decl => tsutils.isClassLikeDeclaration(decl) || ts.isTypeAliasDeclaration(decl) || ts.isInterfaceDeclaration(decl) ? decl.typeParameters : undefined); } function getTypeParametersFromCall(node, checker) { - var _a; const sig = checker.getResolvedSignature(node); - const sigDecl = (_a = sig) === null || _a === void 0 ? void 0 : _a.getDeclaration(); + const sigDecl = sig === null || sig === void 0 ? void 0 : sig.getDeclaration(); if (!sigDecl) { return ts.isNewExpression(node) ? getTypeParametersFromType(node.expression, checker) diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map index 9cf40b24..c669509a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unnecessary-type-arguments.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-type-arguments.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-unnecessary-type-arguments.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-type-arguments.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js index 379c8467..249849fe 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js @@ -1,12 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const tsutils_1 = require("tsutils"); const ts = __importStar(require("typescript")); const util = __importStar(require("../util")); @@ -72,39 +85,6 @@ exports.default = util.createRule({ } return true; } - /** - * Returns the contextual type of a given node. - * Contextual type is the type of the target the node is going into. - * i.e. the type of a called function's parameter, or the defined type of a variable declaration - */ - function getContextualType(checker, node) { - const parent = node.parent; - if (!parent) { - return; - } - if (tsutils_1.isCallExpression(parent) || tsutils_1.isNewExpression(parent)) { - if (node === parent.expression) { - // is the callee, so has no contextual type - return; - } - } - else if (tsutils_1.isVariableDeclaration(parent) || - tsutils_1.isPropertyDeclaration(parent) || - tsutils_1.isParameterDeclaration(parent)) { - return parent.type - ? checker.getTypeFromTypeNode(parent.type) - : undefined; - } - else if (tsutils_1.isJsxExpression(parent)) { - return checker.getContextualType(parent); - } - else if (![ts.SyntaxKind.TemplateSpan, ts.SyntaxKind.JsxExpression].includes(parent.kind)) { - // parent is not something we know we can get the contextual type of - return; - } - // TODO - support return statement checking - return checker.getContextualType(node); - } /** * Returns true if there's a chance the variable has been used before a value has been assigned to it */ @@ -138,6 +118,11 @@ exports.default = util.createRule({ } return false; } + function isConstAssertion(node) { + return (node.type === experimental_utils_1.AST_NODE_TYPES.TSTypeReference && + node.typeName.type === experimental_utils_1.AST_NODE_TYPES.Identifier && + node.typeName.name === 'const'); + } return { TSNonNullExpression(node) { const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); @@ -160,7 +145,7 @@ exports.default = util.createRule({ else { // we know it's a nullable type // so figure out if the variable is used in a place that accepts nullable types - const contextualType = getContextualType(checker, originalNode); + const contextualType = util.getContextualType(checker, originalNode); if (contextualType) { // in strict mode you can't assign null to undefined, so we have to make sure that // the two types share a nullable type @@ -193,7 +178,8 @@ exports.default = util.createRule({ }, 'TSAsExpression, TSTypeAssertion'(node) { var _a; - if ((_a = options.typesToIgnore) === null || _a === void 0 ? void 0 : _a.includes(sourceCode.getText(node.typeAnnotation))) { + if (((_a = options.typesToIgnore) === null || _a === void 0 ? void 0 : _a.includes(sourceCode.getText(node.typeAnnotation))) || + isConstAssertion(node.typeAnnotation)) { return; } const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map index e9e09576..31dfa14d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unnecessary-type-assertion.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-type-assertion.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-unnecessary-type-assertion.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-type-assertion.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js new file mode 100644 index 00000000..42b1f9c5 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js @@ -0,0 +1,265 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-unsafe-assignment', + meta: { + type: 'problem', + docs: { + description: 'Disallows assigning any to variables and properties', + category: 'Possible Errors', + recommended: 'error', + requiresTypeChecking: true, + }, + messages: { + anyAssignment: 'Unsafe assignment of an any value.', + unsafeArrayPattern: 'Unsafe array destructuring of an any array value.', + unsafeArrayPatternFromTuple: 'Unsafe array destructuring of a tuple element with an any value.', + unsafeAssignment: 'Unsafe assignment of type {{sender}} to a variable of type {{receiver}}.', + unsafeArraySpread: 'Unsafe spread of an any value in an array.', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const { program, esTreeNodeToTSNodeMap } = util.getParserServices(context); + const checker = program.getTypeChecker(); + // returns true if the assignment reported + function checkArrayDestructureHelper(receiverNode, senderNode) { + if (receiverNode.type !== experimental_utils_1.AST_NODE_TYPES.ArrayPattern) { + return false; + } + const senderTsNode = esTreeNodeToTSNodeMap.get(senderNode); + const senderType = checker.getTypeAtLocation(senderTsNode); + return checkArrayDestructure(receiverNode, senderType, senderTsNode); + } + // returns true if the assignment reported + function checkArrayDestructure(receiverNode, senderType, senderNode) { + // any array + // const [x] = ([] as any[]); + if (util.isTypeAnyArrayType(senderType, checker)) { + context.report({ + node: receiverNode, + messageId: 'unsafeArrayPattern', + }); + return false; + } + if (!checker.isTupleType(senderType)) { + return true; + } + const tupleElements = util.getTypeArguments(senderType, checker); + // tuple with any + // const [x] = [1 as any]; + let didReport = false; + for (let receiverIndex = 0; receiverIndex < receiverNode.elements.length; receiverIndex += 1) { + const receiverElement = receiverNode.elements[receiverIndex]; + if (!receiverElement) { + continue; + } + if (receiverElement.type === experimental_utils_1.AST_NODE_TYPES.RestElement) { + // don't handle rests as they're not a 1:1 assignment + continue; + } + const senderType = tupleElements[receiverIndex]; + if (!senderType) { + continue; + } + // check for the any type first so we can handle [[[x]]] = [any] + if (util.isTypeAnyType(senderType)) { + context.report({ + node: receiverElement, + messageId: 'unsafeArrayPatternFromTuple', + }); + // we want to report on every invalid element in the tuple + didReport = true; + } + else if (receiverElement.type === experimental_utils_1.AST_NODE_TYPES.ArrayPattern) { + didReport = checkArrayDestructure(receiverElement, senderType, senderNode); + } + else if (receiverElement.type === experimental_utils_1.AST_NODE_TYPES.ObjectPattern) { + didReport = checkObjectDestructure(receiverElement, senderType, senderNode); + } + } + return didReport; + } + // returns true if the assignment reported + function checkObjectDestructureHelper(receiverNode, senderNode) { + if (receiverNode.type !== experimental_utils_1.AST_NODE_TYPES.ObjectPattern) { + return false; + } + const senderTsNode = esTreeNodeToTSNodeMap.get(senderNode); + const senderType = checker.getTypeAtLocation(senderTsNode); + return checkObjectDestructure(receiverNode, senderType, senderTsNode); + } + // returns true if the assignment reported + function checkObjectDestructure(receiverNode, senderType, senderNode) { + const properties = new Map(senderType + .getProperties() + .map(property => [ + property.getName(), + checker.getTypeOfSymbolAtLocation(property, senderNode), + ])); + let didReport = false; + for (let receiverIndex = 0; receiverIndex < receiverNode.properties.length; receiverIndex += 1) { + const receiverProperty = receiverNode.properties[receiverIndex]; + if (receiverProperty.type === experimental_utils_1.AST_NODE_TYPES.RestElement) { + // don't bother checking rest + continue; + } + let key; + if (receiverProperty.computed === false) { + key = + receiverProperty.key.type === experimental_utils_1.AST_NODE_TYPES.Identifier + ? receiverProperty.key.name + : String(receiverProperty.key.value); + } + else if (receiverProperty.key.type === experimental_utils_1.AST_NODE_TYPES.Literal) { + key = String(receiverProperty.key.value); + } + else if (receiverProperty.key.type === experimental_utils_1.AST_NODE_TYPES.TemplateLiteral && + receiverProperty.key.quasis.length === 1) { + key = String(receiverProperty.key.quasis[0].value.cooked); + } + else { + // can't figure out the name, so skip it + continue; + } + const senderType = properties.get(key); + if (!senderType) { + continue; + } + // check for the any type first so we can handle {x: {y: z}} = {x: any} + if (util.isTypeAnyType(senderType)) { + context.report({ + node: receiverProperty.value, + messageId: 'unsafeArrayPatternFromTuple', + }); + didReport = true; + } + else if (receiverProperty.value.type === experimental_utils_1.AST_NODE_TYPES.ArrayPattern) { + didReport = checkArrayDestructure(receiverProperty.value, senderType, senderNode); + } + else if (receiverProperty.value.type === experimental_utils_1.AST_NODE_TYPES.ObjectPattern) { + didReport = checkObjectDestructure(receiverProperty.value, senderType, senderNode); + } + } + return didReport; + } + // returns true if the assignment reported + function checkAssignment(receiverNode, senderNode, reportingNode, comparisonType) { + var _a; + const receiverTsNode = esTreeNodeToTSNodeMap.get(receiverNode); + const receiverType = comparisonType === 2 /* Contextual */ + ? (_a = util.getContextualType(checker, receiverTsNode)) !== null && _a !== void 0 ? _a : checker.getTypeAtLocation(receiverTsNode) : checker.getTypeAtLocation(receiverTsNode); + const senderType = checker.getTypeAtLocation(esTreeNodeToTSNodeMap.get(senderNode)); + if (util.isTypeAnyType(senderType)) { + // handle cases when we assign any ==> unknown. + if (util.isTypeUnknownType(receiverType)) { + return false; + } + context.report({ + node: reportingNode, + messageId: 'anyAssignment', + }); + return true; + } + if (comparisonType === 0 /* None */) { + return false; + } + const result = util.isUnsafeAssignment(senderType, receiverType, checker); + if (!result) { + return false; + } + const { sender, receiver } = result; + context.report({ + node: reportingNode, + messageId: 'unsafeAssignment', + data: { + sender: checker.typeToString(sender), + receiver: checker.typeToString(receiver), + }, + }); + return true; + } + function getComparisonType(typeAnnotation) { + return typeAnnotation + ? // if there's a type annotation, we can do a comparison + 1 /* Basic */ + : // no type annotation means the variable's type will just be inferred, thus equal + 0 /* None */; + } + return { + 'VariableDeclarator[init != null]'(node) { + const init = util.nullThrows(node.init, util.NullThrowsReasons.MissingToken(node.type, 'init')); + let didReport = checkAssignment(node.id, init, node, getComparisonType(node.id.typeAnnotation)); + if (!didReport) { + didReport = checkArrayDestructureHelper(node.id, init); + } + if (!didReport) { + checkObjectDestructureHelper(node.id, init); + } + }, + 'ClassProperty[value != null]'(node) { + checkAssignment(node.key, node.value, node, getComparisonType(node.typeAnnotation)); + }, + 'AssignmentExpression[operator = "="], AssignmentPattern'(node) { + let didReport = checkAssignment(node.left, node.right, node, 1 /* Basic */); + if (!didReport) { + didReport = checkArrayDestructureHelper(node.left, node.right); + } + if (!didReport) { + checkObjectDestructureHelper(node.left, node.right); + } + }, + // object pattern props are checked via assignments + ':not(ObjectPattern) > Property'(node) { + if (node.value.type === experimental_utils_1.AST_NODE_TYPES.AssignmentPattern || + node.value.type === experimental_utils_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression) { + // handled by other selector + return; + } + checkAssignment(node.key, node.value, node, 2 /* Contextual */); + }, + 'ArrayExpression > SpreadElement'(node) { + const resetNode = esTreeNodeToTSNodeMap.get(node.argument); + const restType = checker.getTypeAtLocation(resetNode); + if (util.isTypeAnyType(restType) || + util.isTypeAnyArrayType(restType, checker)) { + context.report({ + node: node, + messageId: 'unsafeArraySpread', + }); + } + }, + 'JSXAttribute[value != null]'(node) { + const value = util.nullThrows(node.value, util.NullThrowsReasons.MissingToken(node.type, 'value')); + if (value.type !== experimental_utils_1.AST_NODE_TYPES.JSXExpressionContainer || + value.expression.type === experimental_utils_1.AST_NODE_TYPES.JSXEmptyExpression) { + return; + } + checkAssignment(node.name, value.expression, value.expression, 2 /* Contextual */); + }, + }; + }, +}); +//# sourceMappingURL=no-unsafe-assignment.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js.map new file mode 100644 index 00000000..272d4ac3 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-unsafe-assignment.js","sourceRoot":"","sources":["../../src/rules/no-unsafe-assignment.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js new file mode 100644 index 00000000..b3d4b5d6 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js @@ -0,0 +1,67 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-unsafe-call', + meta: { + type: 'problem', + docs: { + description: 'Disallows calling an any type value', + category: 'Possible Errors', + recommended: 'error', + requiresTypeChecking: true, + }, + messages: { + unsafeCall: 'Unsafe call of an any typed value.', + unsafeNew: 'Unsafe construction of an any type value.', + unsafeTemplateTag: 'Unsafe any typed template tag.', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const { program, esTreeNodeToTSNodeMap } = util.getParserServices(context); + const checker = program.getTypeChecker(); + function checkCall(node, reportingNode, messageId) { + const tsNode = esTreeNodeToTSNodeMap.get(node); + const type = util.getConstrainedTypeAtLocation(checker, tsNode); + if (util.isTypeAnyType(type)) { + context.report({ + node: reportingNode, + messageId: messageId, + }); + } + } + return { + 'CallExpression > *.callee'(node) { + checkCall(node, node, 'unsafeCall'); + }, + NewExpression(node) { + checkCall(node.callee, node, 'unsafeNew'); + }, + 'TaggedTemplateExpression > *.tag'(node) { + checkCall(node, node, 'unsafeTemplateTag'); + }, + }; + }, +}); +//# sourceMappingURL=no-unsafe-call.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js.map new file mode 100644 index 00000000..2f8e7e8b --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-unsafe-call.js","sourceRoot":"","sources":["../../src/rules/no-unsafe-call.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,8CAAgC;AAIhC,kBAAe,IAAI,CAAC,UAAU,CAAiB;IAC7C,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,UAAU,EAAE,oCAAoC;YAChD,SAAS,EAAE,2CAA2C;YACtD,iBAAiB,EAAE,gCAAgC;SACpD;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QAEzC,SAAS,SAAS,CAChB,IAAmB,EACnB,aAA4B,EAC5B,SAAqB;YAErB,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;gBAC5B,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,aAAa;oBACnB,SAAS,EAAE,SAAS;iBACrB,CAAC,CAAC;aACJ;QACH,CAAC;QAED,OAAO;YACL,2BAA2B,CACzB,IAAuC;gBAEvC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YACtC,CAAC;YACD,aAAa,CAAC,IAAI;gBAChB,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YAC5C,CAAC;YACD,kCAAkC,CAAC,IAAmB;gBACpD,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js new file mode 100644 index 00000000..21c6c315 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js @@ -0,0 +1,105 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-unsafe-member-access', + meta: { + type: 'problem', + docs: { + description: 'Disallows member access on any typed variables', + category: 'Possible Errors', + recommended: 'error', + requiresTypeChecking: true, + }, + messages: { + unsafeMemberExpression: 'Unsafe member access {{property}} on an any value.', + unsafeComputedMemberAccess: 'Computed name {{property}} resolves to an any value.', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const { program, esTreeNodeToTSNodeMap } = util.getParserServices(context); + const checker = program.getTypeChecker(); + const sourceCode = context.getSourceCode(); + const stateCache = new Map(); + function checkMemberExpression(node) { + const cachedState = stateCache.get(node); + if (cachedState) { + return cachedState; + } + if (node.object.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression) { + const objectState = checkMemberExpression(node.object); + if (objectState === 1 /* Unsafe */) { + // if the object is unsafe, we know this will be unsafe as well + // we don't need to report, as we have already reported on the inner member expr + stateCache.set(node, objectState); + return objectState; + } + } + const tsNode = esTreeNodeToTSNodeMap.get(node.object); + const type = checker.getTypeAtLocation(tsNode); + const state = util.isTypeAnyType(type) ? 1 /* Unsafe */ : 2 /* Safe */; + stateCache.set(node, state); + if (state === 1 /* Unsafe */) { + const propertyName = sourceCode.getText(node.property); + context.report({ + node, + messageId: 'unsafeMemberExpression', + data: { + property: node.computed ? `[${propertyName}]` : `.${propertyName}`, + }, + }); + } + return state; + } + return { + MemberExpression: checkMemberExpression, + 'MemberExpression[computed = true] > *.property'(node) { + if ( + // x[1] + node.type === experimental_utils_1.AST_NODE_TYPES.Literal || + // x[1++] x[++x] etc + // FUN FACT - **all** update expressions return type number, regardless of the argument's type, + // because JS engines return NaN if there the argument is not a number. + node.type === experimental_utils_1.AST_NODE_TYPES.UpdateExpression) { + // perf optimizations - literals can obviously never be `any` + return; + } + const tsNode = esTreeNodeToTSNodeMap.get(node); + const type = checker.getTypeAtLocation(tsNode); + if (util.isTypeAnyType(type)) { + const propertyName = sourceCode.getText(node); + context.report({ + node, + messageId: 'unsafeComputedMemberAccess', + data: { + property: `[${propertyName}]`, + }, + }); + } + }, + }; + }, +}); +//# sourceMappingURL=no-unsafe-member-access.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js.map new file mode 100644 index 00000000..4a2df7a7 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-unsafe-member-access.js","sourceRoot":"","sources":["../../src/rules/no-unsafe-member-access.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js new file mode 100644 index 00000000..50b809c8 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js @@ -0,0 +1,137 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const tsutils_1 = require("tsutils"); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'no-unsafe-return', + meta: { + type: 'problem', + docs: { + description: 'Disallows returning any from a function', + category: 'Possible Errors', + recommended: 'error', + requiresTypeChecking: true, + }, + messages: { + unsafeReturn: 'Unsafe return of an {{type}} typed value', + unsafeReturnAssignment: 'Unsafe return of type {{sender}} from function with return type {{receiver}}.', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const { program, esTreeNodeToTSNodeMap } = util.getParserServices(context); + const checker = program.getTypeChecker(); + function getParentFunctionNode(node) { + let current = node.parent; + while (current) { + if (current.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression || + current.type === experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration || + current.type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression) { + return current; + } + current = current.parent; + } + // this shouldn't happen in correct code, but someone may attempt to parse bad code + // the parser won't error, so we shouldn't throw here + /* istanbul ignore next */ return null; + } + function checkReturn(returnNode, reportingNode = returnNode) { + const tsNode = esTreeNodeToTSNodeMap.get(returnNode); + const anyType = util.isAnyOrAnyArrayTypeDiscriminated(tsNode, checker); + const functionNode = getParentFunctionNode(returnNode); + /* istanbul ignore if */ if (!functionNode) { + return; + } + // function has an explicit return type, so ensure it's a safe return + const returnNodeType = util.getConstrainedTypeAtLocation(checker, esTreeNodeToTSNodeMap.get(returnNode)); + const functionTSNode = esTreeNodeToTSNodeMap.get(functionNode); + // function expressions will not have their return type modified based on receiver typing + // so we have to use the contextual typing in these cases, i.e. + // const foo1: () => Set = () => new Set(); + // the return type of the arrow function is Set even though the variable is typed as Set + let functionType = tsutils_1.isExpression(functionTSNode) + ? util.getContextualType(checker, functionTSNode) + : checker.getTypeAtLocation(functionTSNode); + if (!functionType) { + functionType = checker.getTypeAtLocation(functionTSNode); + } + if (anyType !== 2 /* Safe */) { + // Allow cases when the declared return type of the function is either unknown or unknown[] + // and the function is returning any or any[]. + for (const signature of functionType.getCallSignatures()) { + const functionReturnType = signature.getReturnType(); + if (anyType === 0 /* Any */ && + util.isTypeUnknownType(functionReturnType)) { + return; + } + if (anyType === 1 /* AnyArray */ && + util.isTypeUnknownArrayType(functionReturnType, checker)) { + return; + } + } + // If the function return type was not unknown/unknown[], mark usage as unsafeReturn. + return context.report({ + node: reportingNode, + messageId: 'unsafeReturn', + data: { + type: anyType === 0 /* Any */ ? 'any' : 'any[]', + }, + }); + } + for (const signature of functionType.getCallSignatures()) { + const functionReturnType = signature.getReturnType(); + if (returnNodeType === functionReturnType) { + // don't bother checking if they're the same + // either the function is explicitly declared to return the same type + // or there was no declaration, so the return type is implicit + return; + } + const result = util.isUnsafeAssignment(returnNodeType, functionReturnType, checker); + if (!result) { + return; + } + const { sender, receiver } = result; + return context.report({ + node: reportingNode, + messageId: 'unsafeReturnAssignment', + data: { + sender: checker.typeToString(sender), + receiver: checker.typeToString(receiver), + }, + }); + } + } + return { + ReturnStatement(node) { + const argument = node.argument; + if (!argument) { + return; + } + checkReturn(argument, node); + }, + 'ArrowFunctionExpression > :not(BlockStatement).body': checkReturn, + }; + }, +}); +//# sourceMappingURL=no-unsafe-return.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js.map new file mode 100644 index 00000000..e2f30ca0 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js.map @@ -0,0 +1 @@ +{"version":3,"file":"no-unsafe-return.js","sourceRoot":"","sources":["../../src/rules/no-unsafe-return.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-untyped-public-signature.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-untyped-public-signature.js deleted file mode 100644 index 6834e580..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-untyped-public-signature.js +++ /dev/null @@ -1,99 +0,0 @@ -"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 }); -const util = __importStar(require("../util")); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -exports.default = util.createRule({ - name: 'no-untyped-public-signature', - meta: { - deprecated: true, - replacedBy: ['explicit-module-boundary-types'], - docs: { - description: 'Disallow untyped public methods', - category: 'Best Practices', - recommended: false, - }, - messages: { - noReturnType: 'Public method has no return type', - untypedParameter: 'Public method parameters should be typed', - }, - schema: [ - { - allowAdditionalProperties: false, - properties: { - ignoredMethods: { - type: 'array', - items: { - type: 'string', - }, - }, - }, - type: 'object', - }, - ], - type: 'suggestion', - }, - defaultOptions: [{ ignoredMethods: [] }], - create(context, [options]) { - const ignoredMethods = new Set(options.ignoredMethods); - function isPublicMethod(node) { - return node.accessibility === 'public' || !node.accessibility; - } - function isIgnoredMethod(node, ignoredMethods) { - if (node.key.type === experimental_utils_1.AST_NODE_TYPES.Literal && - typeof node.key.value === 'string') { - return ignoredMethods.has(node.key.value); - } - if (node.key.type === experimental_utils_1.AST_NODE_TYPES.TemplateLiteral && - node.key.expressions.length === 0) { - return ignoredMethods.has(node.key.quasis[0].value.raw); - } - if (!node.computed && node.key.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { - return ignoredMethods.has(node.key.name); - } - return false; - } - function isParamTyped(node) { - return (!!node.typeAnnotation && - node.typeAnnotation.typeAnnotation.type !== experimental_utils_1.AST_NODE_TYPES.TSAnyKeyword); - } - function isReturnTyped(node) { - if (!node) { - return false; - } - return (node.typeAnnotation && - node.typeAnnotation.type !== experimental_utils_1.AST_NODE_TYPES.TSAnyKeyword); - } - return { - 'TSAbstractMethodDefinition, MethodDefinition'(node) { - if (isPublicMethod(node) && !isIgnoredMethod(node, ignoredMethods)) { - const paramIdentifiers = node.value.params.filter(param => param.type === experimental_utils_1.AST_NODE_TYPES.Identifier); - const identifiersHaveTypes = paramIdentifiers.every(isParamTyped); - if (!identifiersHaveTypes) { - context.report({ - node, - messageId: 'untypedParameter', - data: {}, - }); - } - if (node.kind !== 'constructor' && - node.kind !== 'set' && - !isReturnTyped(node.value.returnType)) { - context.report({ - node, - messageId: 'noReturnType', - data: {}, - }); - } - } - }, - }; - }, -}); -//# sourceMappingURL=no-untyped-public-signature.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-untyped-public-signature.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-untyped-public-signature.js.map deleted file mode 100644 index a51d9019..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-untyped-public-signature.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"no-untyped-public-signature.js","sourceRoot":"","sources":["../../src/rules/no-untyped-public-signature.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js index 4842a269..1b3a2d4a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js @@ -1,14 +1,27 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const no_unused_expressions_1 = __importDefault(require("eslint/lib/rules/no-unused-expressions")); @@ -24,15 +37,35 @@ exports.default = util.createRule({ extendsBaseRule: true, }, schema: no_unused_expressions_1.default.meta.schema, - messages: {}, + messages: (_a = no_unused_expressions_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + unusedExpression: 'Expected an assignment or function call and instead saw an expression.', + }, }, - defaultOptions: [], - create(context) { + defaultOptions: [ + { + allowShortCircuit: false, + allowTernary: false, + allowTaggedTemplates: false, + }, + ], + create(context, options) { const rules = no_unused_expressions_1.default.create(context); + const { allowShortCircuit = false, allowTernary = false } = options[0]; + function isValidExpression(node) { + if (allowShortCircuit && node.type === experimental_utils_1.AST_NODE_TYPES.LogicalExpression) { + return isValidExpression(node.right); + } + if (allowTernary && node.type === experimental_utils_1.AST_NODE_TYPES.ConditionalExpression) { + return (isValidExpression(node.alternate) && + isValidExpression(node.consequent)); + } + return ((node.type === experimental_utils_1.AST_NODE_TYPES.ChainExpression && + node.expression.type === experimental_utils_1.AST_NODE_TYPES.CallExpression) || + node.type === experimental_utils_1.AST_NODE_TYPES.ImportExpression); + } return { ExpressionStatement(node) { - if (node.directive || - node.expression.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) { + if (node.directive || isValidExpression(node.expression)) { return; } rules.ExpressionStatement(node); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map index 3fa9a2ef..d9fc6461 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unused-expressions.js","sourceRoot":"","sources":["../../src/rules/no-unused-expressions.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAAuE;AACvE,mGAA8D;AAC9D,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,6BAA6B;YAC1C,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,+BAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,EAAE;KACb;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,+BAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,OAAO;YACL,mBAAmB,CAAC,IAAI;gBACtB,IACE,IAAI,CAAC,SAAS;oBACd,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,mCAAc,CAAC,sBAAsB,EAC9D;oBACA,OAAO;iBACR;gBAED,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-unused-expressions.js","sourceRoot":"","sources":["../../src/rules/no-unused-expressions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,mGAA8D;AAC9D,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,6BAA6B;YAC1C,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,+BAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,QAAE,+BAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,gBAAgB,EACd,wEAAwE;SAC3E;KACF;IACD,cAAc,EAAE;QACd;YACE,iBAAiB,EAAE,KAAK;YACxB,YAAY,EAAE,KAAK;YACnB,oBAAoB,EAAE,KAAK;SAC5B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,OAAO;QACrB,MAAM,KAAK,GAAG,+BAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,EAAE,iBAAiB,GAAG,KAAK,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAEvE,SAAS,iBAAiB,CAAC,IAAmB;YAC5C,IAAI,iBAAiB,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB,EAAE;gBACvE,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACtC;YACD,IAAI,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,qBAAqB,EAAE;gBACtE,OAAO,CACL,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;oBACjC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CACnC,CAAC;aACH;YACD,OAAO,CACL,CAAC,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe;gBAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc,CAAC;gBACzD,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB,CAC9C,CAAC;QACJ,CAAC;QAED,OAAO;YACL,mBAAmB,CAAC,IAAI;gBACtB,IAAI,IAAI,CAAC,SAAS,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACxD,OAAO;iBACR;gBAED,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js index 11b8b77a..fd057221 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js @@ -1,13 +1,26 @@ "use strict"; /* eslint-disable no-fallthrough */ +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.DEFAULT_IGNORED_REGEX_STRING = void 0; const ts = __importStar(require("typescript")); const util = __importStar(require("../util")); exports.DEFAULT_IGNORED_REGEX_STRING = '^_'; @@ -19,8 +32,9 @@ exports.default = util.createRule({ description: 'Disallow unused variables and arguments', category: 'Best Practices', recommended: false, - requiresTypeChecking: true, }, + deprecated: true, + replacedBy: ['no-unused-vars'], schema: [ { type: 'object', @@ -45,7 +59,7 @@ exports.default = util.createRule({ ], messages: { unused: "{{type}} '{{name}}' is declared but its value is never read.", - unusedWithIgnorePattern: "{{type}} '{{name}}' is declared but its value is never read. Allowed unused names must match {{pattern}}", + unusedWithIgnorePattern: "{{type}} '{{name}}' is declared but its value is never read. Allowed unused names must match {{pattern}}.", unusedImport: 'All imports in import declaration are unused.', unusedTypeParameters: 'All type parameters are unused.', }, @@ -58,14 +72,14 @@ exports.default = util.createRule({ ], create(context, [userOptions]) { var _a; - const parserServices = util.getParserServices(context); + const parserServices = util.getParserServices(context, true); const tsProgram = parserServices.program; const afterAllDiagnosticsCallbacks = []; const options = { ignoredNames: userOptions && typeof userOptions.ignoredNamesRegex === 'string' ? new RegExp(userOptions.ignoredNamesRegex) : null, - ignoreArgsIfArgsAfterAreUsed: (_a = userOptions.ignoreArgsIfArgsAfterAreUsed, (_a !== null && _a !== void 0 ? _a : false)), + ignoreArgsIfArgsAfterAreUsed: (_a = userOptions.ignoreArgsIfArgsAfterAreUsed) !== null && _a !== void 0 ? _a : false, }; function handleIdentifier(identifier) { function report(type) { @@ -122,7 +136,6 @@ exports.default = util.createRule({ case ts.SyntaxKind.ImportSpecifier: // a namespace import is NOT used, but the default import is used case ts.SyntaxKind.NamespaceImport: - // eslint-disable-next-line @typescript-eslint/internal/prefer-ast-types-enum report('Import'); break; case ts.SyntaxKind.InterfaceDeclaration: @@ -157,7 +170,7 @@ exports.default = util.createRule({ const unusedParameters = new Set(); function handleParameterDeclaration(identifier, parent) { const name = identifier.getText(); - // regardless of if the paramter is ignored, track that it had a diagnostic fired on it + // regardless of if the parameter is ignored, track that it had a diagnostic fired on it unusedParameters.add(identifier); /* NOTE - Typescript will automatically ignore parameters that have a diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js.map index 55f3d889..d5e15835 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars-experimental.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unused-vars-experimental.js","sourceRoot":"","sources":["../../src/rules/no-unused-vars-experimental.ts"],"names":[],"mappings":";AAAA,mCAAmC;;;;;;;;;AAGnC,+CAAiC;AACjC,8CAAgC;AAkBnB,QAAA,4BAA4B,GAAG,IAAI,CAAC;AACjD,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,IAAI;SAC3B;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,iBAAiB,EAAE;wBACjB,KAAK,EAAE;4BACL;gCACE,IAAI,EAAE,QAAQ;6BACf;4BACD;gCACE,IAAI,EAAE,SAAS;gCACf,IAAI,EAAE,CAAC,KAAK,CAAC;6BACd;yBACF;qBACF;oBACD,4BAA4B,EAAE;wBAC5B,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,8DAA8D;YACtE,uBAAuB,EACrB,0GAA0G;YAC5G,YAAY,EAAE,+CAA+C;YAC7D,oBAAoB,EAAE,iCAAiC;SACxD;KACF;IACD,cAAc,EAAE;QACd;YACE,iBAAiB,EAAE,oCAA4B;YAC/C,4BAA4B,EAAE,KAAK;SACpC;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC;;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC;QACzC,MAAM,4BAA4B,GAAmB,EAAE,CAAC;QAExD,MAAM,OAAO,GAAG;YACd,YAAY,EACV,WAAW,IAAI,OAAO,WAAW,CAAC,iBAAiB,KAAK,QAAQ;gBAC9D,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC;gBAC3C,CAAC,CAAC,IAAI;YACV,4BAA4B,QAC1B,WAAW,CAAC,4BAA4B,uCAAI,KAAK,EAAA;SACpD,CAAC;QAEF,SAAS,gBAAgB,CAAC,UAAyB;YACjD,SAAS,MAAM,CAAC,IAAY;gBAC1B,MAAM,IAAI,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAClE,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC;gBACnC,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;gBAClC,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBACrB,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,yBAAyB;4BACpC,IAAI,EAAE;gCACJ,IAAI;gCACJ,IAAI;gCACJ,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE;6BAC1B;yBACF,CAAC,CAAC;qBACJ;iBACF;qBAAM;oBACL,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,QAAQ;wBACnB,IAAI,EAAE;4BACJ,IAAI;4BACJ,IAAI;yBACL;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;YAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAEjC,kCAAkC;YAClC,QAAQ,MAAM,CAAC,IAAI,EAAE;gBACnB,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;gBAClC,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB;oBACrC,MAAM,CAAC,uBAAuB,CAAC,CAAC;oBAChC,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB;oBACjC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAChB,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe;oBAChC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACf,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB;oBACpC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACnB,MAAM;gBAER,mGAAmG;gBACnG,wCAAwC;gBACxC,gDAAgD;gBAChD,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;gBAC3C,6DAA6D;gBAC7D,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;gBAChC,6FAA6F;gBAC7F,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;gBACnC,iEAAiE;gBACjE,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe;oBAChC,6EAA6E;oBAC7E,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACjB,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB;oBACrC,MAAM,CAAC,WAAW,CAAC,CAAC;oBACpB,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB;oBAClC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACjB,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;oBAC1B,0BAA0B,CACxB,UAAU,EACV,MAAiC,CAClC,CAAC;oBACF,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB;oBACpC,6EAA6E;oBAC7E,MAAM,CAAC,UAAU,CAAC,CAAC;oBACnB,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB;oBACrC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACf,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;oBAC9B,eAAe,CAAC,UAAU,CAAC,CAAC;oBAC5B,MAAM;gBAER,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB;oBACpC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACnB,MAAM;gBAER;oBACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC5D,gDAAgD;gBAChD,0BAA0B;gBAC1B,SAAS;aACV;QACH,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACnD,SAAS,0BAA0B,CACjC,UAAyB,EACzB,MAA+B;YAE/B,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAClC,uFAAuF;YACvF,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAEjC;;;cAGE;YAEF,SAAS,MAAM;gBACb,MAAM,IAAI,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAClE,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI;oBACJ,SAAS,EAAE,QAAQ;oBACnB,IAAI,EAAE;wBACJ,IAAI;wBACJ,IAAI,EAAE,WAAW;qBAClB;iBACF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,eAAe,GACnB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;gBACxC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;YACtC,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,4BAA4B,EAAE;gBAC5D,oFAAoF;gBACpF,4BAA4B,CAAC,IAAI,CAAC,GAAG,EAAE;oBACrC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;wBAC5C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;4BACrC,OAAO;yBACR;qBACF;oBAED,sDAAsD;oBACtD,MAAM,EAAE,CAAC;gBACX,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,EAAE,CAAC;aACV;QACH,CAAC;QAED,SAAS,uBAAuB,CAAC,MAA4B;YAC3D,wCAAwC;YAExC;;;cAGE;YAEF,OAAO,CAAC,MAAM,CAAC;gBACb,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;aACvD,CAAC,CAAC;QACL,CAAC;QAED,SAAS,iBAAiB,CAAC,MAAyB;YAClD,mCAAmC;YACnC,uFAAuF;YACvF,kCAAkC;YAClC,iCAAiC;YACjC,sBAAsB;YAEtB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBAChC,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE;oBACjD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;oBAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE;wBAC1C,gBAAgB,CAAC,IAAI,CAAC,CAAC;qBACxB;iBACF;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,SAAS,mBAAmB,CAAC,IAAwB;YACnD,yCAAyC;YAEzC;;;cAGE;YAEF,MAAM,MAAM,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CACrD,IAAa,CAGd,CAAC;YACF,OAAO,CAAC,MAAM,CAAC;gBACb,SAAS,EAAE,sBAAsB;gBACjC,IAAI,EAAE,MAAM,CAAC,cAAc;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,SAAS,eAAe,CAAC,UAAyB;YAChD,OAAO,CAAC,MAAM,CAAC;gBACb,IAAI,EAAE,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC1D,SAAS,EAAE,QAAQ;gBACnB,IAAI,EAAE;oBACJ,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE;oBAC1B,IAAI,EAAE,gBAAgB;iBACvB;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,cAAc,CAAC,OAAyB;gBACtC,MAAM,MAAM,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACjE,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBACpD,MAAM,WAAW,GAAG,SAAS,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;gBAEjE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACzB,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBACjC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;4BAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;4BAC3B,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE;gCACtB,gBAAgB,CAAC,IAAI,CAAC,CAAC;6BACxB;iCAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;gCAC3B,uBAAuB,CAAC,MAAM,CAAC,CAAC;6BACjC;iCAAM,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE;gCAChC,iBAAiB,CAAC,MAAM,CAAC,CAAC;6BAC3B;iCAAM,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE;gCAClC,mBAAmB,CAAC,MAAM,CAAC,CAAC;6BAC7B;yBACF;qBACF;gBACH,CAAC,CAAC,CAAC;gBAEH,kFAAkF;gBAClF,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,SAAS,kBAAkB,CAAC,IAAY;IACtC,OAAO;QACL,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;KACL,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,IAAa;IAClC,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB;QAChD,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAChD,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAa;IAC7B,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACvD,CAAC;AAED,SAAS,YAAY,CAAC,IAAa;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAChD,CAAC;AAED,SAAS,SAAS,CAChB,IAAa,EACb,MAA6C;IAE7C,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;QACzC,MAAM,CAAC,cAAc,KAAK,SAAS,CACpC,CAAC;AACJ,CAAC"} \ No newline at end of file +{"version":3,"file":"no-unused-vars-experimental.js","sourceRoot":"","sources":["../../src/rules/no-unused-vars-experimental.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js index 2ab3871a..fbb7b031 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js @@ -1,16 +1,30 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const scope_manager_1 = require("@typescript-eslint/scope-manager"); const no_unused_vars_1 = __importDefault(require("eslint/lib/rules/no-unused-vars")); const util = __importStar(require("../util")); exports.default = util.createRule({ @@ -24,61 +38,320 @@ exports.default = util.createRule({ extendsBaseRule: true, }, schema: no_unused_vars_1.default.meta.schema, - messages: no_unused_vars_1.default.meta.messages, + messages: (_a = no_unused_vars_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + unusedVar: "'{{varName}}' is {{action}} but never used{{additional}}.", + }, }, - defaultOptions: [], + defaultOptions: [{}], create(context) { const rules = no_unused_vars_1.default.create(context); + const filename = context.getFilename(); + const MODULE_DECL_CACHE = new Map(); /** - * Mark heritage clause as used - * @param node The node currently being traversed + * Gets a list of TS module definitions for a specified variable. + * @param variable eslint-scope variable object. */ - function markHeritageAsUsed(node) { + function getModuleNameDeclarations(variable) { + const moduleDeclarations = []; + variable.defs.forEach(def => { + if (def.type === 'TSModuleName') { + moduleDeclarations.push(def.node); + } + }); + return moduleDeclarations; + } + /** + * Determine if an identifier is referencing an enclosing name. + * This only applies to declarations that create their own scope (modules, functions, classes) + * @param ref The reference to check. + * @param nodes The candidate function nodes. + * @returns True if it's a self-reference, false if not. + */ + function isBlockSelfReference(ref, nodes) { + let scope = ref.from; + while (scope) { + if (nodes.indexOf(scope.block) >= 0) { + return true; + } + scope = scope.upper; + } + return false; + } + function isExported(variable, target) { + // TS will require that all merged namespaces/interfaces are exported, so we only need to find one + return variable.defs.some(def => { + var _a, _b; + return def.node.type === target && + (((_a = def.node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.ExportNamedDeclaration || + ((_b = def.node.parent) === null || _b === void 0 ? void 0 : _b.type) === experimental_utils_1.AST_NODE_TYPES.ExportDefaultDeclaration); + }); + } + return Object.assign(Object.assign({}, rules), { 'TSCallSignatureDeclaration, TSConstructorType, TSConstructSignatureDeclaration, TSDeclareFunction, TSEmptyBodyFunctionExpression, TSFunctionType, TSMethodSignature'(node) { + // function type signature params create variables because they can be referenced within the signature, + // but they obviously aren't unused variables for the purposes of this rule. + for (const param of node.params) { + visitPattern(param, name => { + context.markVariableAsUsed(name.name); + }); + } + }, + TSEnumDeclaration() { + // enum members create variables because they can be referenced within the enum, + // but they obviously aren't unused variables for the purposes of this rule. + const scope = context.getScope(); + for (const variable of scope.variables) { + context.markVariableAsUsed(variable.name); + } + }, + TSMappedType(node) { + // mapped types create a variable for their type name, but it's not necessary to reference it, + // so we shouldn't consider it as unused for the purpose of this rule. + context.markVariableAsUsed(node.typeParameter.name.name); + }, + TSModuleDeclaration() { + const childScope = context.getScope(); + const scope = util.nullThrows(context.getScope().upper, util.NullThrowsReasons.MissingToken(childScope.type, 'upper scope')); + for (const variable of scope.variables) { + const moduleNodes = getModuleNameDeclarations(variable); + if (moduleNodes.length === 0 || + // ignore unreferenced module definitions, as the base rule will report on them + variable.references.length === 0 || + // ignore exported nodes + isExported(variable, experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration)) { + continue; + } + // check if the only reference to a module's name is a self-reference in its body + // this won't be caught by the base rule because it doesn't understand TS modules + const isOnlySelfReferenced = variable.references.every(ref => { + return isBlockSelfReference(ref, moduleNodes); + }); + if (isOnlySelfReferenced) { + context.report({ + node: variable.identifiers[0], + messageId: 'unusedVar', + data: { + varName: variable.name, + action: 'defined', + additional: '', + }, + }); + } + } + }, + [[ + 'TSParameterProperty > AssignmentPattern > Identifier.left', + 'TSParameterProperty > Identifier.parameter', + ].join(', ')](node) { + // just assume parameter properties are used as property usage tracking is beyond the scope of this rule + context.markVariableAsUsed(node.name); + }, + ':matches(FunctionDeclaration, FunctionExpression, ArrowFunctionExpression) > Identifier[name="this"].params'(node) { + // this parameters should always be considered used as they're pseudo-parameters + context.markVariableAsUsed(node.name); + }, + 'TSInterfaceDeclaration, TSTypeAliasDeclaration'(node) { + const variable = context.getScope().set.get(node.id.name); + if (!variable) { + return; + } + if (variable.references.length === 0 || + // ignore exported nodes + isExported(variable, node.type)) { + return; + } + // check if the type is only self-referenced + // this won't be caught by the base rule because it doesn't understand self-referencing types + const isOnlySelfReferenced = variable.references.every(ref => { + if (ref.identifier.range[0] >= node.range[0] && + ref.identifier.range[1] <= node.range[1]) { + return true; + } + return false; + }); + if (isOnlySelfReferenced) { + context.report({ + node: variable.identifiers[0], + messageId: 'unusedVar', + data: { + varName: variable.name, + action: 'defined', + additional: '', + }, + }); + } + }, + // declaration file handling + [ambientDeclarationSelector(experimental_utils_1.AST_NODE_TYPES.Program, true)](node) { + if (!util.isDefinitionFile(filename)) { + return; + } + markDeclarationChildAsUsed(node); + }, + // global augmentation can be in any file, and they do not need exports + 'TSModuleDeclaration[declare = true][global = true]'() { + context.markVariableAsUsed('global'); + }, + // children of a namespace that is a child of a declared namespace are auto-exported + [ambientDeclarationSelector('TSModuleDeclaration[declare = true] > TSModuleBlock TSModuleDeclaration > TSModuleBlock', false)](node) { + markDeclarationChildAsUsed(node); + }, + // declared namespace handling + [ambientDeclarationSelector('TSModuleDeclaration[declare = true] > TSModuleBlock', false)](node) { + var _a; + const moduleDecl = util.nullThrows((_a = node.parent) === null || _a === void 0 ? void 0 : _a.parent, util.NullThrowsReasons.MissingParent); + // declared ambient modules with an `export =` statement will only export that one thing + // all other statements are not automatically exported in this case + if (moduleDecl.id.type === experimental_utils_1.AST_NODE_TYPES.Literal && + checkModuleDeclForExportEquals(moduleDecl)) { + return; + } + markDeclarationChildAsUsed(node); + } }); + function checkModuleDeclForExportEquals(node) { + var _a, _b; + const cached = MODULE_DECL_CACHE.get(node); + if (cached != null) { + return cached; + } + for (const statement of (_b = (_a = node.body) === null || _a === void 0 ? void 0 : _a.body) !== null && _b !== void 0 ? _b : []) { + if (statement.type === experimental_utils_1.AST_NODE_TYPES.TSExportAssignment) { + MODULE_DECL_CACHE.set(node, true); + return true; + } + } + MODULE_DECL_CACHE.set(node, false); + return false; + } + function ambientDeclarationSelector(parent, childDeclare) { + return [ + // Types are ambiently exported + `${parent} > :matches(${[ + experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration, + experimental_utils_1.AST_NODE_TYPES.TSTypeAliasDeclaration, + ].join(', ')})`, + // Value things are ambiently exported if they are "declare"d + `${parent} > :matches(${[ + experimental_utils_1.AST_NODE_TYPES.ClassDeclaration, + experimental_utils_1.AST_NODE_TYPES.TSDeclareFunction, + experimental_utils_1.AST_NODE_TYPES.TSEnumDeclaration, + experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration, + experimental_utils_1.AST_NODE_TYPES.VariableDeclaration, + ].join(', ')})${childDeclare ? '[declare = true]' : ''}`, + ].join(', '); + } + function markDeclarationChildAsUsed(node) { + var _a; + const identifiers = []; switch (node.type) { - case experimental_utils_1.AST_NODE_TYPES.Identifier: - context.markVariableAsUsed(node.name); + case experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration: + case experimental_utils_1.AST_NODE_TYPES.TSTypeAliasDeclaration: + case experimental_utils_1.AST_NODE_TYPES.ClassDeclaration: + case experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration: + case experimental_utils_1.AST_NODE_TYPES.TSDeclareFunction: + case experimental_utils_1.AST_NODE_TYPES.TSEnumDeclaration: + case experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration: + if (((_a = node.id) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.Identifier) { + identifiers.push(node.id); + } break; - case experimental_utils_1.AST_NODE_TYPES.MemberExpression: - markHeritageAsUsed(node.object); - break; - case experimental_utils_1.AST_NODE_TYPES.CallExpression: - markHeritageAsUsed(node.callee); + case experimental_utils_1.AST_NODE_TYPES.VariableDeclaration: + for (const declaration of node.declarations) { + visitPattern(declaration, pattern => { + identifiers.push(pattern); + }); + } break; } - } - return Object.assign({}, rules, { - 'TSTypeReference Identifier'(node) { - context.markVariableAsUsed(node.name); - }, - TSInterfaceHeritage(node) { - if (node.expression) { - markHeritageAsUsed(node.expression); - } - }, - TSClassImplements(node) { - if (node.expression) { - markHeritageAsUsed(node.expression); - } - }, - 'TSParameterProperty Identifier'(node) { - // just assume parameter properties are used - context.markVariableAsUsed(node.name); - }, - 'TSEnumMember Identifier'(node) { - context.markVariableAsUsed(node.name); - }, - '*[declare=true] Identifier'(node) { - context.markVariableAsUsed(node.name); - const scope = context.getScope(); - const { variableScope } = scope; - if (variableScope !== scope) { - const superVar = variableScope.set.get(node.name); + const scope = context.getScope(); + const { variableScope } = scope; + if (variableScope !== scope) { + for (const id of identifiers) { + const superVar = variableScope.set.get(id.name); if (superVar) { superVar.eslintUsed = true; } } - }, - }); + } + else { + for (const id of identifiers) { + context.markVariableAsUsed(id.name); + } + } + } + function visitPattern(node, cb) { + const visitor = new scope_manager_1.PatternVisitor({}, node, cb); + visitor.visit(node); + } }, }); +/* + +###### TODO ###### + +Edge cases that aren't currently handled due to laziness and them being super edgy edge cases + + +--- function params referenced in typeof type refs in the function declaration --- +--- NOTE - TS gets these cases wrong + +function _foo( + arg: number // arg should be unused +): typeof arg { + return 1 as any; +} + +function _bar( + arg: number, // arg should be unused + _arg2: typeof arg, +) {} + + +--- function names referenced in typeof type refs in the function declaration --- +--- NOTE - TS gets these cases right + +function foo( // foo should be unused +): typeof foo { + return 1 as any; +} + +function bar( // bar should be unused + _arg: typeof bar +) {} + +*/ +/* + +###### TODO ###### + +We currently extend base `no-unused-vars` implementation because it's easier and lighter-weight. + +Because of this, there are a few false-negatives which won't get caught. +We could fix these if we fork the base rule; but that's a lot of code (~650 lines) to add in. +I didn't want to do that just yet without some real-world issues, considering these are pretty rare edge-cases. + +These cases are mishandled because the base rule assumes that each variable has one def, but type-value shadowing +creates a variable with two defs + +--- type-only or value-only references to type/value shadowed variables --- +--- NOTE - TS gets these cases wrong + +type T = 1; +const T = 2; // this T should be unused + +type U = T; // this U should be unused +const U = 3; + +const _V = U; + + +--- partially exported type/value shadowed variables --- +--- NOTE - TS gets these cases wrong + +export interface Foo {} +const Foo = 1; // this Foo should be unused + +interface Bar {} // this Bar should be unused +export const Bar = 1; + +*/ //# sourceMappingURL=no-unused-vars.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map index 2c4990ee..af5677d2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unused-vars.js","sourceRoot":"","sources":["../../src/rules/no-unused-vars.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAG+C;AAC/C,qFAAuD;AACvD,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,2BAA2B;YACxC,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,MAAM;YACnB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,wBAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,wBAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,wBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC;;;WAGG;QACH,SAAS,kBAAkB,CAAC,IAAyB;YACnD,QAAQ,IAAI,CAAC,IAAI,EAAE;gBACjB,KAAK,mCAAc,CAAC,UAAU;oBAC5B,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtC,MAAM;gBACR,KAAK,mCAAc,CAAC,gBAAgB;oBAClC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAChC,MAAM;gBACR,KAAK,mCAAc,CAAC,cAAc;oBAChC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAChC,MAAM;aACT;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;YAC9B,4BAA4B,CAAC,IAAyB;gBACpD,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YACD,mBAAmB,CAAC,IAAkC;gBACpD,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnB,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBACrC;YACH,CAAC;YACD,iBAAiB,CAAC,IAAgC;gBAChD,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnB,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBACrC;YACH,CAAC;YACD,gCAAgC,CAAC,IAAyB;gBACxD,4CAA4C;gBAC5C,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YACD,yBAAyB,CAAC,IAAyB;gBACjD,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YACD,4BAA4B,CAAC,IAAyB;gBACpD,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACjC,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;gBAChC,IAAI,aAAa,KAAK,KAAK,EAAE;oBAC3B,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClD,IAAI,QAAQ,EAAE;wBACZ,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC;qBAC5B;iBACF;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-unused-vars.js","sourceRoot":"","sources":["../../src/rules/no-unused-vars.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js index 5a14dab0..c7807f14 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -19,6 +31,7 @@ function parseOptions(options) { let enums = true; let variables = true; let typedefs = true; + let ignoreTypeReferences = true; if (typeof options === 'string') { functions = options !== 'nofunc'; } @@ -28,26 +41,16 @@ function parseOptions(options) { enums = options.enums !== false; variables = options.variables !== false; typedefs = options.typedefs !== false; + ignoreTypeReferences = options.ignoreTypeReferences !== false; } - return { functions, classes, enums, variables, typedefs }; -} -/** - * Checks whether or not a given scope is a top level scope. - */ -function isTopLevelScope(scope) { - return scope.type === 'module' || scope.type === 'global'; -} -/** - * Checks whether or not a given variable declaration in an upper scope. - */ -function isOuterScope(variable, reference) { - if (variable.scope.variableScope === reference.from.variableScope) { - // allow the same scope only if it's the top level global/module scope - if (!isTopLevelScope(variable.scope.variableScope)) { - return false; - } - } - return true; + return { + functions, + classes, + enums, + variables, + typedefs, + ignoreTypeReferences, + }; } /** * Checks whether or not a given variable is a function declaration. @@ -56,24 +59,31 @@ function isFunction(variable) { return variable.defs[0].type === 'FunctionName'; } /** - * Checks whether or not a given variable is a enum declaration in an upper function scope. + * Checks whether or not a given variable is a type declaration. + */ +function isTypedef(variable) { + return variable.defs[0].type === 'Type'; +} +/** + * Checks whether or not a given variable is a enum declaration. */ function isOuterEnum(variable, reference) { - const node = variable.defs[0].node; - return (node.type === experimental_utils_1.AST_NODE_TYPES.TSEnumDeclaration && - isOuterScope(variable, reference)); + return (variable.defs[0].type == 'TSEnumName' && + variable.scope.variableScope !== reference.from.variableScope); } /** * Checks whether or not a given variable is a class declaration in an upper function scope. */ function isOuterClass(variable, reference) { - return (variable.defs[0].type === 'ClassName' && isOuterScope(variable, reference)); + return (variable.defs[0].type === 'ClassName' && + variable.scope.variableScope !== reference.from.variableScope); } /** * Checks whether or not a given variable is a variable declaration in an upper function scope. */ function isOuterVariable(variable, reference) { - return (variable.defs[0].type === 'Variable' && isOuterScope(variable, reference)); + return (variable.defs[0].type === 'Variable' && + variable.scope.variableScope !== reference.from.variableScope); } /** * Checks whether or not a given location is inside of the range of a given node. @@ -92,6 +102,7 @@ function isInRange(node, location) { * - for (var a of a) {} */ function isInInitializer(variable, reference) { + var _a; if (variable.scope !== reference.from) { return false; } @@ -102,8 +113,7 @@ function isInInitializer(variable, reference) { if (isInRange(node.init, location)) { return true; } - if (node.parent && - node.parent.parent && + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.parent) && (node.parent.parent.type === experimental_utils_1.AST_NODE_TYPES.ForInStatement || node.parent.parent.type === experimental_utils_1.AST_NODE_TYPES.ForOfStatement) && isInRange(node.parent.parent.right, location)) { @@ -130,7 +140,7 @@ exports.default = util.createRule({ docs: { description: 'Disallow the use of variables before they are defined', category: 'Variables', - recommended: 'error', + recommended: false, extendsBaseRule: true, }, messages: { @@ -150,6 +160,7 @@ exports.default = util.createRule({ enums: { type: 'boolean' }, variables: { type: 'boolean' }, typedefs: { type: 'boolean' }, + ignoreTypeReferences: { type: 'boolean' }, }, additionalProperties: false, }, @@ -164,6 +175,7 @@ exports.default = util.createRule({ enums: true, variables: true, typedefs: true, + ignoreTypeReferences: true, }, ], create(context, optionsWithDefault) { @@ -174,17 +186,23 @@ exports.default = util.createRule({ * @param reference The reference to the variable */ function isForbidden(variable, reference) { + if (reference.isTypeReference && options.ignoreTypeReferences) { + return false; + } if (isFunction(variable)) { - return !!options.functions; + return options.functions; } if (isOuterClass(variable, reference)) { - return !!options.classes; + return options.classes; } if (isOuterVariable(variable, reference)) { - return !!options.variables; + return options.variables; } if (isOuterEnum(variable, reference)) { - return !!options.enums; + return options.enums; + } + if (isTypedef(variable)) { + return options.typedefs; } return true; } @@ -203,9 +221,10 @@ exports.default = util.createRule({ if (reference.init || !variable || variable.identifiers.length === 0 || - (variable.identifiers[0].range[1] < reference.identifier.range[1] && + (variable.identifiers[0].range[1] <= reference.identifier.range[1] && !isInInitializer(variable, reference)) || - !isForbidden(variable, reference)) { + !isForbidden(variable, reference) || + reference.from.type === experimental_utils_1.TSESLint.Scope.ScopeType.functionType) { return; } // Reports. diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map index ef846899..e715a5bb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js.map @@ -1 +1 @@ -{"version":3,"file":"no-use-before-define.js","sourceRoot":"","sources":["../../src/rules/no-use-before-define.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAI+C;AAC/C,8CAAgC;AAEhC,MAAM,aAAa,GAAG,iIAAiI,CAAC;AAExJ;;GAEG;AACH,SAAS,YAAY,CAAC,OAA+B;IACnD,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,QAAQ,GAAG,IAAI,CAAC;IAEpB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,SAAS,GAAG,OAAO,KAAK,QAAQ,CAAC;KAClC;SAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE;QAC1D,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC;QACxC,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC;QACpC,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC;QAChC,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC;QACxC,QAAQ,GAAG,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC;KACvC;IAED,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,KAA2B;IAClD,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,QAAiC,EACjC,SAAmC;IAEnC,IAAI,QAAQ,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE;QACjE,sEAAsE;QACtE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;YAClD,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,QAAiC;IACnD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,QAAiC,EACjC,SAAmC;IAEnC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAqB,CAAC;IAEpD,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB;QAC9C,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,QAAiC,EACjC,SAAmC;IAEnC,OAAO,CACL,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAC3E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CACtB,QAAiC,EACjC,SAAmC;IAEnC,OAAO,CACL,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAChB,IAA4C,EAC5C,QAAgB;IAEhB,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,eAAe,CACtB,QAAiC,EACjC,SAAmC;IAEnC,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,EAAE;QACrC,OAAO,KAAK,CAAC;KACd;IAED,IAAI,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC1C,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE/C,OAAO,IAAI,EAAE;QACX,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB,EAAE;YACnD,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE;gBAClC,OAAO,IAAI,CAAC;aACb;YACD,IACE,IAAI,CAAC,MAAM;gBACX,IAAI,CAAC,MAAM,CAAC,MAAM;gBAClB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc;oBACxD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc,CAAC;gBAC5D,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,EAC7C;gBACA,OAAO,IAAI,CAAC;aACb;YACD,MAAM;SACP;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB,EAAE;YACzD,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE;gBACnC,OAAO,IAAI,CAAC;aACb;SACF;aAAM,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACxC,MAAM;SACP;QAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;KACpB;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAYD,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,OAAO;YACpB,eAAe,EAAE,IAAI;SACtB;QACD,QAAQ,EAAE;YACR,iBAAiB,EAAE,4CAA4C;SAChE;QACD,MAAM,EAAE;YACN;gBACE,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,CAAC,QAAQ,CAAC;qBACjB;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC9B,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC1B,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC9B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;yBAC9B;wBACD,oBAAoB,EAAE,KAAK;qBAC5B;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;SACf;KACF;IACD,MAAM,CAAC,OAAO,EAAE,kBAAkB;QAChC,MAAM,OAAO,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpD;;;;WAIG;QACH,SAAS,WAAW,CAClB,QAAiC,EACjC,SAAmC;YAEnC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACxB,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;aAC5B;YACD,IAAI,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE;gBACrC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;aAC1B;YACD,IAAI,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE;gBACxC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;aAC5B;YACD,IAAI,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE;gBACpC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;aACxB;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAED;;WAEG;QACH,SAAS,oBAAoB,CAAC,KAA2B;YACvD,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAEpC,+BAA+B;gBAC/B,qBAAqB;gBACrB,wCAAwC;gBACxC,0EAA0E;gBAC1E,+DAA+D;gBAC/D,wBAAwB;gBACxB,IACE,SAAS,CAAC,IAAI;oBACd,CAAC,QAAQ;oBACT,QAAQ,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;oBACjC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;wBAC/D,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACxC,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,EACjC;oBACA,OAAO;iBACR;gBAED,WAAW;gBACX,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,SAAS,CAAC,UAAU;oBAC1B,SAAS,EAAE,mBAAmB;oBAC9B,IAAI,EAAE;wBACJ,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI;qBAChC;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAClD,CAAC;QAED,OAAO;YACL,OAAO;gBACL,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3C,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-use-before-define.js","sourceRoot":"","sources":["../../src/rules/no-use-before-define.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js index 6c135a46..936e0839 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js @@ -1,14 +1,27 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const no_useless_constructor_1 = __importDefault(require("eslint/lib/rules/no-useless-constructor")); @@ -51,7 +64,9 @@ exports.default = util.createRule({ extendsBaseRule: true, }, schema: no_useless_constructor_1.default.meta.schema, - messages: no_useless_constructor_1.default.meta.messages, + messages: (_a = no_useless_constructor_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + noUselessConstructor: 'Useless constructor.', + }, }, defaultOptions: [], create(context) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map index 5eb8159b..865009c3 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js.map @@ -1 +1 @@ -{"version":3,"file":"no-useless-constructor.js","sourceRoot":"","sources":["../../src/rules/no-useless-constructor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAG+C;AAC/C,qGAA+D;AAC/D,8CAAgC;AAKhC;;GAEG;AACH,SAAS,kBAAkB,CAAC,IAA+B;IACzD,QAAQ,IAAI,CAAC,aAAa,EAAE;QAC1B,KAAK,WAAW,CAAC;QACjB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,IACE,IAAI,CAAC,MAAM;gBACX,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,SAAS;gBAC7C,IAAI,CAAC,MAAM,CAAC,MAAM;gBAClB,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM;gBAClC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAC7B;gBACA,OAAO,KAAK,CAAC;aACd;YACD,MAAM;KACT;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAA+B;IAClD,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;QAClB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CACrB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAC3D,CACF,CAAC;AACJ,CAAC;AAED,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,gCAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,gCAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,gCAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO;YACL,gBAAgB,CAAC,IAAI;gBACnB,IACE,IAAI,CAAC,KAAK;oBACV,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB;oBACrD,IAAI,CAAC,KAAK,CAAC,IAAI;oBACf,kBAAkB,CAAC,IAAI,CAAC;oBACxB,WAAW,CAAC,IAAI,CAAC,EACjB;oBACA,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;iBAC9B;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-useless-constructor.js","sourceRoot":"","sources":["../../src/rules/no-useless-constructor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,qGAA+D;AAC/D,8CAAgC;AAKhC;;GAEG;AACH,SAAS,kBAAkB,CAAC,IAA+B;IACzD,QAAQ,IAAI,CAAC,aAAa,EAAE;QAC1B,KAAK,WAAW,CAAC;QACjB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,IACE,IAAI,CAAC,MAAM;gBACX,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,SAAS;gBAC7C,IAAI,CAAC,MAAM,CAAC,MAAM;gBAClB,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM;gBAClC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAC7B;gBACA,OAAO,KAAK,CAAC;aACd;YACD,MAAM;KACT;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAA+B;IAClD,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;QAClB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CACrB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,CAC3D,CACF,CAAC;AACJ,CAAC;AAED,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE,gCAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,QAAE,gCAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,oBAAoB,EAAE,sBAAsB;SAC7C;KACF;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,gCAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO;YACL,gBAAgB,CAAC,IAAI;gBACnB,IACE,IAAI,CAAC,KAAK;oBACV,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB;oBACrD,IAAI,CAAC,KAAK,CAAC,IAAI;oBACf,kBAAkB,CAAC,IAAI,CAAC;oBACxB,WAAW,CAAC,IAAI,CAAC,EACjB;oBACA,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;iBAC9B;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js index 0e0dc38b..c042fe09 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -26,13 +38,18 @@ exports.default = util.createRule({ defaultOptions: [], create(context) { return { - 'CallExpression, OptionalCallExpression'(node) { + CallExpression(node) { + var _a; + const parent = ((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.ChainExpression + ? node.parent.parent + : node.parent; if (node.callee.type === experimental_utils_1.AST_NODE_TYPES.Identifier && node.callee.name === 'require' && - node.parent && - (node.parent.type === experimental_utils_1.AST_NODE_TYPES.VariableDeclarator || - node.parent.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - node.parent.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression)) { + parent && + (parent.type === experimental_utils_1.AST_NODE_TYPES.VariableDeclarator || + parent.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || + parent.type === experimental_utils_1.AST_NODE_TYPES.TSAsExpression || + parent.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression)) { context.report({ node, messageId: 'noVarReqs', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map index 12dd67c7..3d9eefcb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js.map @@ -1 +1 @@ -{"version":3,"file":"no-var-requires.js","sourceRoot":"","sources":["../../src/rules/no-var-requires.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,qEAAqE;YACvE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,QAAQ,EAAE;YACR,SAAS,EAAE,iDAAiD;SAC7D;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,wCAAwC,CACtC,IAA+D;gBAE/D,IACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;oBAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;oBAC9B,IAAI,CAAC,MAAM;oBACX,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB;wBACrD,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc;wBAClD,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,sBAAsB,CAAC,EAC7D;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,WAAW;qBACvB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"no-var-requires.js","sourceRoot":"","sources":["../../src/rules/no-var-requires.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,qEAAqE;YACvE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,QAAQ,EAAE;YACR,SAAS,EAAE,iDAAiD;SAC7D;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,cAAc,CAAC,IAA6B;;gBAC1C,MAAM,MAAM,GACV,OAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,MAAK,mCAAc,CAAC,eAAe;oBAClD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM;oBACpB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBAClB,IACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU;oBAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;oBAC9B,MAAM;oBACN,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,kBAAkB;wBAChD,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc;wBAC7C,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc;wBAC7C,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB,CAAC,EAClD;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,WAAW;qBACvB,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js index 2c557b42..caf2a55d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -16,12 +28,13 @@ exports.default = util.createRule({ docs: { description: 'Prefer usage of `as const` over literal type', category: 'Best Practices', - recommended: false, + recommended: 'error', + suggestion: true, }, fixable: 'code', messages: { - preferConstAssertion: 'Expected a `const` instead of a literal type assertion', - variableConstAssertion: 'Expected a `const` assertion instead of a literal type annotation', + preferConstAssertion: 'Expected a `const` instead of a literal type assertion.', + variableConstAssertion: 'Expected a `const` assertion instead of a literal type annotation.', variableSuggest: 'You should use `as const` instead of type annotation.', }, schema: [], diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map index 00a715ef..93e89b80 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-as-const.js","sourceRoot":"","sources":["../../src/rules/prefer-as-const.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAI+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,oBAAoB,EAClB,wDAAwD;YAC1D,sBAAsB,EACpB,mEAAmE;YACrE,eAAe,EAAE,uDAAuD;SACzE;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,YAAY,CACnB,SAA8B,EAC9B,QAA2B,EAC3B,MAAe;YAEf,IACE,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO;gBACzC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,aAAa;gBAC9C,KAAK,IAAI,QAAQ,CAAC,OAAO;gBACzB,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,EACtC;gBACA,IAAI,MAAM,EAAE;oBACV,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,sBAAsB;wBACjC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;qBACnD,CAAC,CAAC;iBACJ;qBAAM;oBACL,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,wBAAwB;wBACnC,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE,iBAAiB;gCAC5B,GAAG,EAAE,CAAC,KAAK,EAAsB,EAAE,CAAC;oCAClC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAO,CAAC;oCAC9B,KAAK,CAAC,eAAe,CAAC,SAAS,EAAE,WAAW,CAAC;iCAC9C;6BACF;yBACF;qBACF,CAAC,CAAC;iBACJ;aACF;QACH,CAAC;QAED,OAAO;YACL,cAAc,CAAC,IAAI;gBACjB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;YACD,eAAe,CAAC,IAAI;gBAClB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;YACD,kBAAkB,CAAC,IAAI;gBACrB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE;oBACvC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;iBACvE;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"prefer-as-const.js","sourceRoot":"","sources":["../../src/rules/prefer-as-const.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAI+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,UAAU,EAAE,IAAI;SACjB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,oBAAoB,EAClB,yDAAyD;YAC3D,sBAAsB,EACpB,oEAAoE;YACtE,eAAe,EAAE,uDAAuD;SACzE;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,YAAY,CACnB,SAA8B,EAC9B,QAA2B,EAC3B,MAAe;YAEf,IACE,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO;gBACzC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,aAAa;gBAC9C,KAAK,IAAI,QAAQ,CAAC,OAAO;gBACzB,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,EACtC;gBACA,IAAI,MAAM,EAAE;oBACV,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,sBAAsB;wBACjC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;qBACnD,CAAC,CAAC;iBACJ;qBAAM;oBACL,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,wBAAwB;wBACnC,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE,iBAAiB;gCAC5B,GAAG,EAAE,CAAC,KAAK,EAAsB,EAAE,CAAC;oCAClC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAO,CAAC;oCAC9B,KAAK,CAAC,eAAe,CAAC,SAAS,EAAE,WAAW,CAAC;iCAC9C;6BACF;yBACF;qBACF,CAAC,CAAC;iBACJ;aACF;QACH,CAAC;QAED,OAAO;YACL,cAAc,CAAC,IAAI;gBACjB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;YACD,eAAe,CAAC,IAAI;gBAClB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;YACD,kBAAkB,CAAC,IAAI;gBACrB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE;oBACvC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;iBACvE;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js new file mode 100644 index 00000000..f81e3dc4 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js @@ -0,0 +1,85 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'prefer-enum-initializers', + meta: { + type: 'suggestion', + docs: { + description: 'Prefer initializing each enums member value', + category: 'Best Practices', + recommended: false, + suggestion: true, + }, + messages: { + defineInitializer: "The value of the member '{{ name }}' should be explicitly defined", + defineInitializerSuggestion: 'Can be fixed to {{ name }} = {{ suggested }}', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const sourceCode = context.getSourceCode(); + function TSEnumDeclaration(node) { + const { members } = node; + members.forEach((member, index) => { + if (member.initializer == null) { + const name = sourceCode.getText(member); + context.report({ + node: member, + messageId: 'defineInitializer', + data: { + name, + }, + suggest: [ + { + messageId: 'defineInitializerSuggestion', + data: { name, suggested: index }, + fix: (fixer) => { + return fixer.replaceText(member, `${name} = ${index}`); + }, + }, + { + messageId: 'defineInitializerSuggestion', + data: { name, suggested: index + 1 }, + fix: (fixer) => { + return fixer.replaceText(member, `${name} = ${index + 1}`); + }, + }, + { + messageId: 'defineInitializerSuggestion', + data: { name, suggested: `'${name}'` }, + fix: (fixer) => { + return fixer.replaceText(member, `${name} = '${name}'`); + }, + }, + ], + }); + } + }); + } + return { + TSEnumDeclaration, + }; + }, +}); +//# sourceMappingURL=prefer-enum-initializers.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map new file mode 100644 index 00000000..5a2c3bf2 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"prefer-enum-initializers.js","sourceRoot":"","sources":["../../src/rules/prefer-enum-initializers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAiB;IAC7C,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,IAAI;SACjB;QACD,QAAQ,EAAE;YACR,iBAAiB,EACf,mEAAmE;YACrE,2BAA2B,EACzB,8CAA8C;SACjD;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,SAAS,iBAAiB,CAAC,IAAgC;YACzD,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAEzB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAChC,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE;oBAC9B,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBACxC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,MAAM;wBACZ,SAAS,EAAE,mBAAmB;wBAC9B,IAAI,EAAE;4BACJ,IAAI;yBACL;wBACD,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE,6BAA6B;gCACxC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;gCAChC,GAAG,EAAE,CAAC,KAAK,EAAoB,EAAE;oCAC/B,OAAO,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC;gCACzD,CAAC;6BACF;4BACD;gCACE,SAAS,EAAE,6BAA6B;gCACxC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAG,CAAC,EAAE;gCACpC,GAAG,EAAE,CAAC,KAAK,EAAoB,EAAE;oCAC/B,OAAO,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;gCAC7D,CAAC;6BACF;4BACD;gCACE,SAAS,EAAE,6BAA6B;gCACxC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,GAAG,EAAE;gCACtC,GAAG,EAAE,CAAC,KAAK,EAAoB,EAAE;oCAC/B,OAAO,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,OAAO,IAAI,GAAG,CAAC,CAAC;gCAC1D,CAAC;6BACF;yBACF;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,iBAAiB;SAClB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js index d3d67716..acd31ea2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -19,7 +31,7 @@ exports.default = util.createRule({ recommended: false, }, messages: { - preferForOf: 'Expected a `for-of` loop instead of a `for` loop with this simple iteration', + preferForOf: 'Expected a `for-of` loop instead of a `for` loop with this simple iteration.', }, schema: [], }, @@ -45,8 +57,7 @@ exports.default = util.createRule({ node.type === experimental_utils_1.AST_NODE_TYPES.BinaryExpression && node.operator === '<' && isMatchingIdentifier(node.left, name) && - (node.right.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || - node.right.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression) && + node.right.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression && isMatchingIdentifier(node.right.property, 'length')) { return node.right.object; } @@ -130,8 +141,7 @@ exports.default = util.createRule({ const node = id.parent; return (!contains(body, id) || (node !== undefined && - (node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression) && + node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression && node.property === id && sourceCode.getText(node.object) === arrayText && !isAssignee(node))); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map index cdd145dc..b7cc1d99 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-for-of.js","sourceRoot":"","sources":["../../src/rules/prefer-for-of.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-for-of.js","sourceRoot":"","sources":["../../src/rules/prefer-for-of.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js index 08b3f53d..b10172c0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js @@ -1,14 +1,31 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.phrases = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); +exports.phrases = { + [experimental_utils_1.AST_NODE_TYPES.TSTypeLiteral]: 'Type literal', + [experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration]: 'Interface', +}; exports.default = util.createRule({ name: 'prefer-function-type', meta: { @@ -19,7 +36,8 @@ exports.default = util.createRule({ }, fixable: 'code', messages: { - functionTypeOverCallableType: "{{ type }} has only a call signature - use '{{ sigSuggestion }}' instead.", + functionTypeOverCallableType: '{{ literalOrInterface }} only has a call signature, you should use a function type instead.', + unexpectedThisOnFunctionOnlyInterface: "`this` refers to the function type '{{ interfaceName }}', did you intend to use a generic `this` parameter like `(this: Self, ...) => Self` instead?", }, schema: [], type: 'suggestion', @@ -84,10 +102,24 @@ exports.default = util.createRule({ * @param member The TypeElement being checked * @param node The parent of member being checked */ - function checkMember(member, node) { + function checkMember(member, node, tsThisTypes = null) { if ((member.type === experimental_utils_1.AST_NODE_TYPES.TSCallSignatureDeclaration || member.type === experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration) && typeof member.returnType !== 'undefined') { + if (tsThisTypes !== null && + tsThisTypes.length > 0 && + node.type === experimental_utils_1.AST_NODE_TYPES.TSInterfaceDeclaration) { + // the message can be confusing if we don't point directly to the `this` node instead of the whole member + // and in favour of generating at most one error we'll only report the first occurrence of `this` if there are multiple + context.report({ + node: tsThisTypes[0], + messageId: 'unexpectedThisOnFunctionOnlyInterface', + data: { + interfaceName: node.id.name, + }, + }); + return; + } const suggestion = renderSuggestion(member, node); const fixStart = node.type === experimental_utils_1.AST_NODE_TYPES.TSTypeLiteral ? node.range[0] @@ -99,10 +131,7 @@ exports.default = util.createRule({ node: member, messageId: 'functionTypeOverCallableType', data: { - type: node.type === experimental_utils_1.AST_NODE_TYPES.TSTypeLiteral - ? 'Type literal' - : 'Interface', - sigSuggestion: suggestion, + literalOrInterface: exports.phrases[node.type], }, fix(fixer) { return fixer.replaceTextRange([fixStart, node.range[1]], suggestion); @@ -110,12 +139,35 @@ exports.default = util.createRule({ }); } } + let tsThisTypes = null; + let literalNesting = 0; return { - TSInterfaceDeclaration(node) { - if (!hasOneSupertype(node) && node.body.body.length === 1) { - checkMember(node.body.body[0], node); + TSInterfaceDeclaration() { + // when entering an interface reset the count of `this`s to empty. + tsThisTypes = []; + }, + 'TSInterfaceDeclaration TSThisType'(node) { + // inside an interface keep track of all ThisType references. + // unless it's inside a nested type literal in which case it's invalid code anyway + // we don't want to incorrectly say "it refers to name" while typescript says it's completely invalid. + if (literalNesting === 0 && tsThisTypes !== null) { + tsThisTypes.push(node); } }, + 'TSInterfaceDeclaration:exit'(node) { + if (!hasOneSupertype(node) && node.body.body.length === 1) { + checkMember(node.body.body[0], node, tsThisTypes); + } + // on exit check member and reset the array to nothing. + tsThisTypes = null; + }, + // keep track of nested literals to avoid complaining about invalid `this` uses + 'TSInterfaceDeclaration TSTypeLiteral'() { + literalNesting += 1; + }, + 'TSInterfaceDeclaration TSTypeLiteral:exit'() { + literalNesting -= 1; + }, 'TSTypeLiteral[members.length = 1]'(node) { checkMember(node.members[0], node); }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map index e8bcad28..e87d7e22 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-function-type.js","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-function-type.js","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js index 3627d3e9..e352e964 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js @@ -1,14 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const regexpp_1 = require("regexpp"); const ts = __importStar(require("typescript")); const util_1 = require("../util"); @@ -20,7 +31,7 @@ exports.default = util_1.createRule({ docs: { description: 'Enforce `includes` method over `indexOf` method', category: 'Best Practices', - recommended: 'error', + recommended: false, requiresTypeChecking: true, }, fixable: 'code', @@ -35,7 +46,7 @@ exports.default = util_1.createRule({ const services = util_1.getParserServices(context); const types = services.program.getTypeChecker(); function isNumber(node, value) { - const evaluated = eslint_utils_1.getStaticValue(node, globalScope); + const evaluated = util_1.getStaticValue(node, globalScope); return evaluated !== null && evaluated.value === value; } function isPositiveCheck(node) { @@ -86,7 +97,7 @@ exports.default = util_1.createRule({ * @param node The node to parse. */ function parseRegExp(node) { - const evaluated = eslint_utils_1.getStaticValue(node, globalScope); + const evaluated = util_1.getStaticValue(node, globalScope); if (evaluated == null || !(evaluated.value instanceof RegExp)) { return null; } @@ -105,29 +116,40 @@ exports.default = util_1.createRule({ return String.fromCodePoint(...chars.map(c => c.value)); } return { - "BinaryExpression > :matches(CallExpression, OptionalCallExpression).left > :matches(MemberExpression, OptionalMemberExpression).callee[property.name='indexOf'][computed=false]"(node) { + [[ + // a.indexOf(b) !== 1 + "BinaryExpression > CallExpression.left > MemberExpression.callee[property.name='indexOf'][computed=false]", + // a?.indexOf(b) !== 1 + "BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name='indexOf'][computed=false]", + ].join(', ')](node) { + var _a, _b, _c; // Check if the comparison is equivalent to `includes()`. const callNode = node.parent; - const compareNode = callNode.parent; + const compareNode = (((_a = callNode.parent) === null || _a === void 0 ? void 0 : _a.type) === + experimental_utils_1.AST_NODE_TYPES.ChainExpression + ? callNode.parent.parent + : callNode.parent); const negative = isNegativeCheck(compareNode); if (!negative && !isPositiveCheck(compareNode)) { return; } // Get the symbol of `indexOf` method. const tsNode = services.esTreeNodeToTSNodeMap.get(node.property); - const indexofMethodSymbol = types.getSymbolAtLocation(tsNode); - if (indexofMethodSymbol == null || - indexofMethodSymbol.declarations.length === 0) { + const indexofMethodDeclarations = (_b = types + .getSymbolAtLocation(tsNode)) === null || _b === void 0 ? void 0 : _b.getDeclarations(); + if (indexofMethodDeclarations == null || + indexofMethodDeclarations.length === 0) { return; } // Check if every declaration of `indexOf` method has `includes` method // and the two methods have the same parameters. - for (const instanceofMethodDecl of indexofMethodSymbol.declarations) { + for (const instanceofMethodDecl of indexofMethodDeclarations) { const typeDecl = instanceofMethodDecl.parent; const type = types.getTypeAtLocation(typeDecl); - const includesMethodSymbol = type.getProperty('includes'); - if (includesMethodSymbol == null || - !includesMethodSymbol.declarations.some(includesMethodDecl => hasSameParameters(includesMethodDecl, instanceofMethodDecl))) { + const includesMethodDecl = (_c = type + .getProperty('includes')) === null || _c === void 0 ? void 0 : _c.getDeclarations(); + if (includesMethodDecl == null || + !includesMethodDecl.some(includesMethodDecl => hasSameParameters(includesMethodDecl, instanceofMethodDecl))) { return; } } @@ -145,12 +167,22 @@ exports.default = util_1.createRule({ }); }, // /bar/.test(foo) - ':matches(CallExpression, OptionalCallExpression) > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="test"][computed=false]'(node) { + 'CallExpression > MemberExpression.callee[property.name="test"][computed=false]'(node) { + var _a; const callNode = node.parent; const text = callNode.arguments.length === 1 ? parseRegExp(node.object) : null; if (text == null) { return; } + //check the argument type of test methods + const argument = callNode.arguments[0]; + const tsNode = services.esTreeNodeToTSNodeMap.get(argument); + const type = util_1.getConstrainedTypeAtLocation(types, tsNode); + const includesMethodDecl = (_a = type + .getProperty('includes')) === null || _a === void 0 ? void 0 : _a.getDeclarations(); + if (includesMethodDecl == null) { + return; + } context.report({ node: callNode, messageId: 'preferStringIncludes', @@ -160,17 +192,13 @@ exports.default = util_1.createRule({ argNode.type !== experimental_utils_1.AST_NODE_TYPES.TemplateLiteral && argNode.type !== experimental_utils_1.AST_NODE_TYPES.Identifier && argNode.type !== experimental_utils_1.AST_NODE_TYPES.MemberExpression && - argNode.type !== experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression && - argNode.type !== experimental_utils_1.AST_NODE_TYPES.CallExpression && - argNode.type !== experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression; + argNode.type !== experimental_utils_1.AST_NODE_TYPES.CallExpression; yield fixer.removeRange([callNode.range[0], argNode.range[0]]); if (needsParen) { yield fixer.insertTextBefore(argNode, '('); yield fixer.insertTextAfter(argNode, ')'); } - yield fixer.insertTextAfter(argNode, `${callNode.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression - ? '?.' - : '.'}includes(${JSON.stringify(text)}`); + yield fixer.insertTextAfter(argNode, `${node.optional ? '?.' : '.'}includes(${JSON.stringify(text)}`); }, }); }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map index 4ec9f07d..b0f5b805 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-includes.js","sourceRoot":"","sources":["../../src/rules/prefer-includes.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-includes.js","sourceRoot":"","sources":["../../src/rules/prefer-includes.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js new file mode 100644 index 00000000..475f4e7a --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js @@ -0,0 +1,46 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util_1 = require("../util"); +exports.default = util_1.createRule({ + name: 'prefer-literal-enum-member', + meta: { + type: 'suggestion', + docs: { + description: 'Require that all enum members be literal values to prevent unintended enum member name shadow issues', + category: 'Best Practices', + recommended: false, + requiresTypeChecking: false, + }, + messages: { + notLiteral: `Explicit enum value must only be a literal value (string, number, boolean, etc).`, + }, + schema: [], + }, + defaultOptions: [], + create(context) { + return { + TSEnumMember(node) { + // If there is no initializer, then this node is just the name of the member, so ignore. + if (node.initializer == null) { + return; + } + // any old literal + if (node.initializer.type === experimental_utils_1.AST_NODE_TYPES.Literal) { + return; + } + // -1 and +1 + if (node.initializer.type === experimental_utils_1.AST_NODE_TYPES.UnaryExpression && + ['+', '-'].includes(node.initializer.operator) && + node.initializer.argument.type === experimental_utils_1.AST_NODE_TYPES.Literal) { + return; + } + context.report({ + node: node.id, + messageId: 'notLiteral', + }); + }, + }; + }, +}); +//# sourceMappingURL=prefer-literal-enum-member.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js.map new file mode 100644 index 00000000..9d5f0381 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js.map @@ -0,0 +1 @@ +{"version":3,"file":"prefer-literal-enum-member.js","sourceRoot":"","sources":["../../src/rules/prefer-literal-enum-member.ts"],"names":[],"mappings":";;AAAA,8EAAuE;AACvE,kCAAqC;AAErC,kBAAe,iBAAU,CAAC;IACxB,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,sGAAsG;YACxG,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,KAAK;SAC5B;QACD,QAAQ,EAAE;YACR,UAAU,EAAE,kFAAkF;SAC/F;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,YAAY,CAAC,IAAI;gBACf,wFAAwF;gBACxF,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;oBAC5B,OAAO;iBACR;gBACD,kBAAkB;gBAClB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;oBACpD,OAAO;iBACR;gBACD,YAAY;gBACZ,IACE,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe;oBACxD,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAC9C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EACzD;oBACA,OAAO;iBACR;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,IAAI,CAAC,EAAE;oBACb,SAAS,EAAE,YAAY;iBACxB,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js index 866bf59e..26303e79 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map index cfdf2e84..c4765a05 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-namespace-keyword.js","sourceRoot":"","sources":["../../src/rules/prefer-namespace-keyword.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,iHAAiH;YACnH,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,YAAY,EACV,2EAA2E;SAC9E;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,OAAO;YACL,mBAAmB,CAAC,IAAI;gBACtB,sCAAsC;gBACtC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;oBACvD,OAAO;iBACR;gBACD,wCAAwC;gBACxC,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEtD,IACE,UAAU;oBACV,UAAU,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU;oBAC9C,UAAU,CAAC,KAAK,KAAK,QAAQ,EAC7B;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,cAAc;wBACzB,GAAG,CAAC,KAAK;4BACP,OAAO,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;wBACpD,CAAC;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"prefer-namespace-keyword.js","sourceRoot":"","sources":["../../src/rules/prefer-namespace-keyword.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,iHAAiH;YACnH,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,YAAY,EACV,2EAA2E;SAC9E;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,OAAO;YACL,mBAAmB,CAAC,IAAI;gBACtB,sCAAsC;gBACtC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;oBACvD,OAAO;iBACR;gBACD,wCAAwC;gBACxC,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEtD,IACE,UAAU;oBACV,UAAU,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU;oBAC9C,UAAU,CAAC,KAAK,KAAK,QAAQ,EAC7B;oBACA,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,cAAc;wBACzB,GAAG,CAAC,KAAK;4BACP,OAAO,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;wBACpD,CAAC;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js index f6b4a6d2..840e5c3e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -17,11 +29,12 @@ exports.default = util.createRule({ description: 'Enforce the usage of the nullish coalescing operator instead of logical chaining', category: 'Best Practices', recommended: false, + suggestion: true, requiresTypeChecking: true, }, - fixable: 'code', messages: { preferNullish: 'Prefer using nullish coalescing operator (`??`) instead of a logical or (`||`), as it is a safer operator.', + suggestNullish: 'Fix to nullish coalescing operator (`??`).', }, schema: [ { @@ -45,10 +58,9 @@ exports.default = util.createRule({ { ignoreConditionalTests: true, ignoreMixedLogicalExpressions: true, - forceSuggestionFixer: false, }, ], - create(context, [{ ignoreConditionalTests, ignoreMixedLogicalExpressions, forceSuggestionFixer, },]) { + create(context, [{ ignoreConditionalTests, ignoreMixedLogicalExpressions }]) { const parserServices = util.getParserServices(context); const sourceCode = context.getSourceCode(); const checker = parserServices.program.getTypeChecker(); @@ -83,18 +95,16 @@ exports.default = util.createRule({ } yield fixer.replaceText(barBarOperator, '??'); } - const fixer = isMixedLogical || forceSuggestionFixer - ? // suggestion instead for cases where we aren't sure if the fixer is completely safe + context.report({ + node: barBarOperator, + messageId: 'preferNullish', + suggest: [ { - suggest: [ - { - messageId: 'preferNullish', - fix, - }, - ], - } - : { fix }; - context.report(Object.assign({ node: barBarOperator, messageId: 'preferNullish' }, fixer)); + messageId: 'suggestNullish', + fix, + }, + ], + }); }, }; }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map index 5e24231f..b46f8d4a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-nullish-coalescing.js","sourceRoot":"","sources":["../../src/rules/prefer-nullish-coalescing.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-nullish-coalescing.js","sourceRoot":"","sources":["../../src/rules/prefer-nullish-coalescing.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAK+C;AAC/C,8CAAgC;AAUhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,kFAAkF;YACpF,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,IAAI;YAChB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,aAAa,EACX,4GAA4G;YAC9G,cAAc,EAAE,4CAA4C;SAC7D;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,sBAAsB,EAAE;wBACtB,IAAI,EAAE,SAAS;qBAChB;oBACD,6BAA6B,EAAE;wBAC7B,IAAI,EAAE,SAAS;qBAChB;oBACD,oBAAoB,EAAE;wBACpB,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,sBAAsB,EAAE,IAAI;YAC5B,6BAA6B,EAAE,IAAI;SACpC;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,CAAC;QACzE,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAExD,OAAO;YACL,oCAAoC,CAClC,IAAgC;gBAEhC,MAAM,MAAM,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtE,IAAI,CAAC,SAAS,EAAE;oBACd,OAAO;iBACR;gBAED,IAAI,sBAAsB,KAAK,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE;oBAC9D,OAAO;iBACR;gBAED,MAAM,cAAc,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBACtD,IAAI,6BAA6B,KAAK,IAAI,IAAI,cAAc,EAAE;oBAC5D,OAAO;iBACR;gBAED,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CACpC,UAAU,CAAC,aAAa,CACtB,IAAI,CAAC,IAAI,EACT,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU;oBACzC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CAChC,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAC3D,CAAC;gBAEF,QAAQ,CAAC,CAAC,GAAG,CACX,KAAyB;oBAEzB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;wBACxD,kFAAkF;wBAClF,IACE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB;4BACnD,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EACzC;4BACA,MAAM,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;yBACpD;6BAAM;4BACL,MAAM,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;yBAC9C;wBACD,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;qBAC9C;oBACD,MAAM,KAAK,CAAC,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;gBAChD,CAAC;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE;wBACP;4BACE,SAAS,EAAE,gBAAgB;4BAC3B,GAAG;yBACJ;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,iBAAiB,CAAC,IAAmB;IAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;IAC1B,OAAO,OAAO,EAAE;QACd,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAErB,IACE,CAAC,OAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,qBAAqB;YACpD,OAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB;YAChD,OAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW;YAC3C,OAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,YAAY;YAC5C,OAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,cAAc,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EACzB;YACA,OAAO,IAAI,CAAC;SACb;QAED,IACE;YACE,mCAAc,CAAC,uBAAuB;YACtC,mCAAc,CAAC,kBAAkB;SAClC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EACxB;YACA;;;;eAIG;YACH,OAAO,KAAK,CAAC;SACd;QAED,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;KAC1B;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAgC;IAChE,MAAM,IAAI,GAAG,IAAI,GAAG,EAA6B,CAAC;IAClD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE;QAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACrB,SAAS;SACV;QACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAElB,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,iBAAiB,EAAE;YAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE;gBAC7B,OAAO,IAAI,CAAC;aACb;iBAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,EAAE;gBACpC,sEAAsE;gBACtE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;aACzD;SACF;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js index 3673794b..c8eb961b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js @@ -1,14 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const util = __importStar(require("../util")); /* The AST is always constructed such the first element is always the deepest element. @@ -34,10 +45,11 @@ exports.default = util.createRule({ description: 'Prefer using concise optional chain expressions instead of chained logical ands', category: 'Best Practices', recommended: false, + suggestion: true, }, - fixable: 'code', messages: { preferOptionalChain: "Prefer using an optional chain expression instead, as it's more concise and easier to read.", + optionalChainSuggest: 'Change to an optional chain.', }, schema: [], }, @@ -47,13 +59,18 @@ exports.default = util.createRule({ return { [[ 'LogicalExpression[operator="&&"] > Identifier', + 'LogicalExpression[operator="&&"] > MemberExpression', + 'LogicalExpression[operator="&&"] > ChainExpression > MemberExpression', 'LogicalExpression[operator="&&"] > BinaryExpression[operator="!=="]', 'LogicalExpression[operator="&&"] > BinaryExpression[operator="!="]', ].join(',')](initialIdentifierOrNotEqualsExpr) { + var _a; // selector guarantees this cast - const initialExpression = initialIdentifierOrNotEqualsExpr.parent; + const initialExpression = (((_a = initialIdentifierOrNotEqualsExpr.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.ChainExpression + ? initialIdentifierOrNotEqualsExpr.parent.parent + : initialIdentifierOrNotEqualsExpr.parent); if (initialExpression.left !== initialIdentifierOrNotEqualsExpr) { - // the identifier is not the deepest left node + // the node(identifier or member expression) is not the deepest left node return; } if (!isValidChainTarget(initialIdentifierOrNotEqualsExpr, true)) { @@ -136,9 +153,14 @@ exports.default = util.createRule({ context.report({ node: previous, messageId: 'preferOptionalChain', - fix(fixer) { - return fixer.replaceText(previous, optionallyChainedCode); - }, + suggest: [ + { + messageId: 'optionalChainSuggest', + fix: (fixer) => [ + fixer.replaceText(previous, optionallyChainedCode), + ], + }, + ], }); } }, @@ -149,8 +171,7 @@ exports.default = util.createRule({ // isValidChainTarget ensures this is type safe node.left); } - if (node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) { + if (node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression) { const calleeText = getText( // isValidChainTarget ensures this is type safe node.callee); @@ -158,7 +179,7 @@ exports.default = util.createRule({ // - JSX: // - Unary Operators: typeof foo, await bar, delete baz const closingParenToken = util.nullThrows(sourceCode.getLastToken(node), util.NullThrowsReasons.MissingToken('closing parenthesis', node.type)); - const openingParenToken = util.nullThrows(sourceCode.getFirstTokenBetween(node.callee, closingParenToken, eslint_utils_1.isOpeningParenToken), util.NullThrowsReasons.MissingToken('opening parenthesis', node.type)); + const openingParenToken = util.nullThrows(sourceCode.getFirstTokenBetween(node.callee, closingParenToken, util.isOpeningParenToken), util.NullThrowsReasons.MissingToken('opening parenthesis', node.type)); const argumentsText = sourceCode.text.substring(openingParenToken.range[0], closingParenToken.range[1]); return `${calleeText}${argumentsText}`; } @@ -168,6 +189,13 @@ exports.default = util.createRule({ if (node.type === experimental_utils_1.AST_NODE_TYPES.ThisExpression) { return 'this'; } + if (node.type === experimental_utils_1.AST_NODE_TYPES.ChainExpression) { + /* istanbul ignore if */ if (node.expression.type === experimental_utils_1.AST_NODE_TYPES.TSNonNullExpression) { + // this shouldn't happen + return ''; + } + return getText(node.expression); + } return getMemberExpressionText(node); } /** @@ -178,12 +206,10 @@ exports.default = util.createRule({ // cases should match the list in ALLOWED_MEMBER_OBJECT_TYPES switch (node.object.type) { case experimental_utils_1.AST_NODE_TYPES.CallExpression: - case experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression: case experimental_utils_1.AST_NODE_TYPES.Identifier: objectText = getText(node.object); break; case experimental_utils_1.AST_NODE_TYPES.MemberExpression: - case experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression: objectText = getMemberExpressionText(node.object); break; case experimental_utils_1.AST_NODE_TYPES.ThisExpression: @@ -201,12 +227,10 @@ exports.default = util.createRule({ propertyText = getText(node.property); break; case experimental_utils_1.AST_NODE_TYPES.Literal: - case experimental_utils_1.AST_NODE_TYPES.BigIntLiteral: case experimental_utils_1.AST_NODE_TYPES.TemplateLiteral: propertyText = sourceCode.getText(node.property); break; case experimental_utils_1.AST_NODE_TYPES.MemberExpression: - case experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression: propertyText = getMemberExpressionText(node.property); break; /* istanbul ignore next */ @@ -234,39 +258,35 @@ const ALLOWED_MEMBER_OBJECT_TYPES = new Set([ experimental_utils_1.AST_NODE_TYPES.CallExpression, experimental_utils_1.AST_NODE_TYPES.Identifier, experimental_utils_1.AST_NODE_TYPES.MemberExpression, - experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression, - experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression, experimental_utils_1.AST_NODE_TYPES.ThisExpression, ]); const ALLOWED_COMPUTED_PROP_TYPES = new Set([ - experimental_utils_1.AST_NODE_TYPES.BigIntLiteral, experimental_utils_1.AST_NODE_TYPES.Identifier, experimental_utils_1.AST_NODE_TYPES.Literal, experimental_utils_1.AST_NODE_TYPES.MemberExpression, - experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression, experimental_utils_1.AST_NODE_TYPES.TemplateLiteral, ]); const ALLOWED_NON_COMPUTED_PROP_TYPES = new Set([ experimental_utils_1.AST_NODE_TYPES.Identifier, ]); function isValidChainTarget(node, allowIdentifier) { - if (node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression) { + if (node.type === experimental_utils_1.AST_NODE_TYPES.ChainExpression) { + return isValidChainTarget(node.expression, allowIdentifier); + } + if (node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression) { const isObjectValid = ALLOWED_MEMBER_OBJECT_TYPES.has(node.object.type) && // make sure to validate the expression is of our expected structure isValidChainTarget(node.object, true); const isPropertyValid = node.computed ? ALLOWED_COMPUTED_PROP_TYPES.has(node.property.type) && // make sure to validate the member expression is of our expected structure - (node.property.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || - node.property.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression + (node.property.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression ? isValidChainTarget(node.property, allowIdentifier) : true) : ALLOWED_NON_COMPUTED_PROP_TYPES.has(node.property.type); return isObjectValid && isPropertyValid; } - if (node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) { + if (node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression) { return isValidChainTarget(node.callee, allowIdentifier); } if (allowIdentifier && diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map index bf510658..1ce75dd7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-optional-chain.js","sourceRoot":"","sources":["../../src/rules/prefer-optional-chain.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-optional-chain.js","sourceRoot":"","sources":["../../src/rules/prefer-optional-chain.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js index bb2269bd..1c790495 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -31,7 +43,7 @@ exports.default = util.createRule({ }, ], messages: { - shouldBeReadonly: 'Parameter should be a read only type', + shouldBeReadonly: 'Parameter should be a read only type.', }, }, defaultOptions: [ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map index 58be343b..be616c82 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-readonly-parameter-types.js","sourceRoot":"","sources":["../../src/rules/prefer-readonly-parameter-types.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAShC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,iCAAiC;IACvC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,kGAAkG;YACpG,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,IAAI;SAC3B;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,wBAAwB,EAAE;wBACxB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;QACD,QAAQ,EAAE;YACR,gBAAgB,EAAE,sCAAsC;SACzD;KACF;IACD,cAAc,EAAE;QACd;YACE,wBAAwB,EAAE,IAAI;SAC/B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,wBAAwB,EAAE,CAAC;QAC5C,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QAEzC,OAAO;YACL,CAAC;gBACC,mCAAc,CAAC,uBAAuB;gBACtC,mCAAc,CAAC,mBAAmB;gBAClC,mCAAc,CAAC,kBAAkB;gBACjC,mCAAc,CAAC,0BAA0B;gBACzC,mCAAc,CAAC,+BAA+B;gBAC9C,mCAAc,CAAC,iBAAiB;gBAChC,mCAAc,CAAC,6BAA6B;gBAC5C,mCAAc,CAAC,cAAc;gBAC7B,mCAAc,CAAC,iBAAiB;aACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACX,IAS8B;gBAE9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;oBAC/B,IACE,CAAC,wBAAwB;wBACzB,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,EACjD;wBACA,SAAS;qBACV;oBAED,MAAM,WAAW,GACf,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB;wBAC/C,CAAC,CAAC,KAAK,CAAC,SAAS;wBACjB,CAAC,CAAC,KAAK,CAAC;oBACZ,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBACtD,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAEtD,IAAI,CAAC,UAAU,EAAE;wBACf,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,WAAW;4BACjB,SAAS,EAAE,kBAAkB;yBAC9B,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"prefer-readonly-parameter-types.js","sourceRoot":"","sources":["../../src/rules/prefer-readonly-parameter-types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAShC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,iCAAiC;IACvC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,kGAAkG;YACpG,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,IAAI;SAC3B;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,wBAAwB,EAAE;wBACxB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;QACD,QAAQ,EAAE;YACR,gBAAgB,EAAE,uCAAuC;SAC1D;KACF;IACD,cAAc,EAAE;QACd;YACE,wBAAwB,EAAE,IAAI;SAC/B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,wBAAwB,EAAE,CAAC;QAC5C,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QAEzC,OAAO;YACL,CAAC;gBACC,mCAAc,CAAC,uBAAuB;gBACtC,mCAAc,CAAC,mBAAmB;gBAClC,mCAAc,CAAC,kBAAkB;gBACjC,mCAAc,CAAC,0BAA0B;gBACzC,mCAAc,CAAC,+BAA+B;gBAC9C,mCAAc,CAAC,iBAAiB;gBAChC,mCAAc,CAAC,6BAA6B;gBAC5C,mCAAc,CAAC,cAAc;gBAC7B,mCAAc,CAAC,iBAAiB;aACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACX,IAS8B;gBAE9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;oBAC/B,IACE,CAAC,wBAAwB;wBACzB,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB,EACjD;wBACA,SAAS;qBACV;oBAED,MAAM,WAAW,GACf,KAAK,CAAC,IAAI,KAAK,mCAAc,CAAC,mBAAmB;wBAC/C,CAAC,CAAC,KAAK,CAAC,SAAS;wBACjB,CAAC,CAAC,KAAK,CAAC;oBACZ,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBACtD,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAEtD,IAAI,CAAC,UAAU,EAAE;wBACf,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,WAAW;4BACjB,SAAS,EAAE,kBAAkB;yBAC9B,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js index 74d34adf..ede07d7e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -202,7 +214,7 @@ class ClassScope { } addVariableModification(node) { const modifierType = this.checker.getTypeAtLocation(node.expression); - if (modifierType.symbol === undefined || + if (!modifierType.getSymbol() || !util_1.typeIsOrHasBaseType(modifierType, this.classType)) { return; } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map index e550b411..1aae677d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-readonly.js","sourceRoot":"","sources":["../../src/rules/prefer-readonly.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-readonly.js","sourceRoot":"","sources":["../../src/rules/prefer-readonly.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js new file mode 100644 index 00000000..d1084796 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js @@ -0,0 +1,92 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +const getMemberExpressionName = (member) => { + if (!member.computed) { + return member.property.name; + } + if (member.property.type === experimental_utils_1.AST_NODE_TYPES.Literal && + typeof member.property.value === 'string') { + return member.property.value; + } + return null; +}; +exports.default = util.createRule({ + name: 'prefer-reduce-type-parameter', + meta: { + type: 'problem', + docs: { + category: 'Best Practices', + recommended: false, + description: 'Prefer using type parameter when calling `Array#reduce` instead of casting', + requiresTypeChecking: true, + }, + messages: { + preferTypeParameter: 'Unnecessary cast: Array#reduce accepts a type parameter for the default value.', + }, + fixable: 'code', + schema: [], + }, + defaultOptions: [], + create(context) { + const service = util.getParserServices(context); + const checker = service.program.getTypeChecker(); + return { + 'CallExpression > MemberExpression.callee'(callee) { + if (getMemberExpressionName(callee) !== 'reduce') { + return; + } + const [, secondArg] = callee.parent.arguments; + if (callee.parent.arguments.length < 2 || + !util.isTypeAssertion(secondArg)) { + return; + } + // Get the symbol of the `reduce` method. + const tsNode = service.esTreeNodeToTSNodeMap.get(callee.object); + const calleeObjType = util.getConstrainedTypeAtLocation(checker, tsNode); + // Check the owner type of the `reduce` method. + if (checker.isArrayType(calleeObjType)) { + context.report({ + messageId: 'preferTypeParameter', + node: secondArg, + fix: fixer => [ + fixer.removeRange([ + secondArg.range[0], + secondArg.expression.range[0], + ]), + fixer.removeRange([ + secondArg.expression.range[1], + secondArg.range[1], + ]), + fixer.insertTextAfter(callee, `<${context + .getSourceCode() + .getText(secondArg.typeAnnotation)}>`), + ], + }); + return; + } + }, + }; + }, +}); +//# sourceMappingURL=prefer-reduce-type-parameter.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js.map new file mode 100644 index 00000000..647e7166 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js.map @@ -0,0 +1 @@ +{"version":3,"file":"prefer-reduce-type-parameter.js","sourceRoot":"","sources":["../../src/rules/prefer-reduce-type-parameter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAMhC,MAAM,uBAAuB,GAAG,CAC9B,MAAiC,EAClB,EAAE;IACjB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;QACpB,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;KAC7B;IAED,IACE,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO;QAC/C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EACzC;QACA,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;KAC9B;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,8BAA8B;IACpC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,WAAW,EACT,4EAA4E;YAC9E,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,mBAAmB,EACjB,gFAAgF;SACnF;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjD,OAAO;YACL,0CAA0C,CACxC,MAAgD;gBAEhD,IAAI,uBAAuB,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE;oBAChD,OAAO;iBACR;gBAED,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;gBAE9C,IACE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;oBAClC,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAChC;oBACA,OAAO;iBACR;gBAED,yCAAyC;gBACzC,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChE,MAAM,aAAa,GAAG,IAAI,CAAC,4BAA4B,CACrD,OAAO,EACP,MAAM,CACP,CAAC;gBAEF,+CAA+C;gBAC/C,IAAI,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;oBACtC,OAAO,CAAC,MAAM,CAAC;wBACb,SAAS,EAAE,qBAAqB;wBAChC,IAAI,EAAE,SAAS;wBACf,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;4BACZ,KAAK,CAAC,WAAW,CAAC;gCAChB,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;gCAClB,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;6BAC9B,CAAC;4BACF,KAAK,CAAC,WAAW,CAAC;gCAChB,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gCAC7B,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;6BACnB,CAAC;4BACF,KAAK,CAAC,eAAe,CACnB,MAAM,EACN,IAAI,OAAO;iCACR,aAAa,EAAE;iCACf,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CACxC;yBACF;qBACF,CAAC,CAAC;oBAEH,OAAO;iBACR;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js index 59ccb3f0..a09b6559 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js @@ -1,6 +1,5 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const eslint_utils_1 = require("eslint-utils"); const util_1 = require("../util"); exports.default = util_1.createRule({ name: 'prefer-regexp-exec', @@ -34,7 +33,7 @@ exports.default = util_1.createRule({ "CallExpression[arguments.length=1] > MemberExpression.callee[property.name='match'][computed=false]"(node) { const callNode = node.parent; const arg = callNode.arguments[0]; - const evaluated = eslint_utils_1.getStaticValue(arg, globalScope); + const evaluated = util_1.getStaticValue(arg, globalScope); // Don't report regular expressions with global flag. if (evaluated && evaluated.value instanceof RegExp && diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map index c9b30911..3aa5e736 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-regexp-exec.js","sourceRoot":"","sources":["../../src/rules/prefer-regexp-exec.ts"],"names":[],"mappings":";;AACA,+CAA8C;AAC9C,kCAAqE;AAErE,kBAAe,iBAAU,CAAC;IACxB,IAAI,EAAE,oBAAoB;IAC1B,cAAc,EAAE,EAAE;IAElB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,4FAA4F;YAC9F,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,yBAAyB,EAAE,yCAAyC;SACrE;QACD,MAAM,EAAE,EAAE;KACX;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,wBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAErD;;;WAGG;QACH,SAAS,YAAY,CAAC,IAAqC;YACzD,MAAM,UAAU,GAAG,WAAW,CAAC,iBAAiB,CAC9C,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CACxC,CAAC;YACF,OAAO,kBAAW,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,QAAQ,CAAC;QAC3D,CAAC;QAED,OAAO;YACL,qGAAqG,CACnG,IAA+B;gBAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAiC,CAAC;gBACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,SAAS,GAAG,6BAAc,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBAEnD,qDAAqD;gBACrD,IACE,SAAS;oBACT,SAAS,CAAC,KAAK,YAAY,MAAM;oBACjC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EACnC;oBACA,OAAO;iBACR;gBAED,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAC7B,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,2BAA2B;qBACvC,CAAC,CAAC;oBACH,OAAO;iBACR;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"prefer-regexp-exec.js","sourceRoot":"","sources":["../../src/rules/prefer-regexp-exec.ts"],"names":[],"mappings":";;AACA,kCAKiB;AAEjB,kBAAe,iBAAU,CAAC;IACxB,IAAI,EAAE,oBAAoB;IAC1B,cAAc,EAAE,EAAE;IAElB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,4FAA4F;YAC9F,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,yBAAyB,EAAE,yCAAyC;SACrE;QACD,MAAM,EAAE,EAAE;KACX;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,wBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAErD;;;WAGG;QACH,SAAS,YAAY,CAAC,IAAqC;YACzD,MAAM,UAAU,GAAG,WAAW,CAAC,iBAAiB,CAC9C,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CACxC,CAAC;YACF,OAAO,kBAAW,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,QAAQ,CAAC;QAC3D,CAAC;QAED,OAAO;YACL,qGAAqG,CACnG,IAA+B;gBAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAiC,CAAC;gBACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,SAAS,GAAG,qBAAc,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBAEnD,qDAAqD;gBACrD,IACE,SAAS;oBACT,SAAS,CAAC,KAAK,YAAY,MAAM;oBACjC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EACnC;oBACA,OAAO;iBACR;gBAED,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAC7B,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,2BAA2B;qBACvC,CAAC,CAAC;oBACH,OAAO;iBACR;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js index fa41e4c8..5b3e0283 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js @@ -1,7 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const regexpp_1 = require("regexpp"); const util_1 = require("../util"); const EQ_OPERATORS = /^[=!]=/; @@ -14,7 +13,7 @@ exports.default = util_1.createRule({ docs: { description: 'Enforce the use of `String#startsWith` and `String#endsWith` instead of other equivalent methods of checking substrings', category: 'Best Practices', - recommended: 'error', + recommended: false, requiresTypeChecking: true, }, messages: { @@ -42,7 +41,7 @@ exports.default = util_1.createRule({ * @param node The node to check. */ function isNull(node) { - const evaluated = eslint_utils_1.getStaticValue(node, globalScope); + const evaluated = util_1.getStaticValue(node, globalScope); return evaluated != null && evaluated.value === null; } /** @@ -51,7 +50,7 @@ exports.default = util_1.createRule({ * @param value The expected value of the `Literal` node. */ function isNumber(node, value) { - const evaluated = eslint_utils_1.getStaticValue(node, globalScope); + const evaluated = util_1.getStaticValue(node, globalScope); return evaluated != null && evaluated.value === value; } /** @@ -60,11 +59,10 @@ exports.default = util_1.createRule({ * @param kind The method name to get a character. */ function isCharacter(node) { - const evaluated = eslint_utils_1.getStaticValue(node, globalScope); + const evaluated = util_1.getStaticValue(node, globalScope); return (evaluated != null && typeof evaluated.value === 'string' && // checks if the string is a character long - // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with evaluated.value[0] === evaluated.value); } /** @@ -107,19 +105,33 @@ exports.default = util_1.createRule({ * @param expectedObjectNode The node which is expected as the receiver of `length` property. */ function isLengthExpression(node, expectedObjectNode) { - if (node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression) { - return (eslint_utils_1.getPropertyName(node, globalScope) === 'length' && + if (node.type === experimental_utils_1.AST_NODE_TYPES.MemberExpression) { + return (util_1.getPropertyName(node, globalScope) === 'length' && isSameTokens(node.object, expectedObjectNode)); } - const evaluatedLength = eslint_utils_1.getStaticValue(node, globalScope); - const evaluatedString = eslint_utils_1.getStaticValue(expectedObjectNode, globalScope); + const evaluatedLength = util_1.getStaticValue(node, globalScope); + const evaluatedString = util_1.getStaticValue(expectedObjectNode, globalScope); return (evaluatedLength != null && evaluatedString != null && typeof evaluatedLength.value === 'number' && typeof evaluatedString.value === 'string' && evaluatedLength.value === evaluatedString.value.length); } + /** + * Check if a given node is a negative index expression + * + * E.g. `s.slice(- )`, `s.substring(s.length - )` + * + * @param node The node to check. + * @param expectedIndexedNode The node which is expected as the receiver of index expression. + */ + function isNegativeIndexExpression(node, expectedIndexedNode) { + return ((node.type === experimental_utils_1.AST_NODE_TYPES.UnaryExpression && + node.operator === '-') || + (node.type === experimental_utils_1.AST_NODE_TYPES.BinaryExpression && + node.operator === '-' && + isLengthExpression(node.left, expectedIndexedNode))); + } /** * Check if a given node is the expression of the last index. * @@ -144,7 +156,7 @@ exports.default = util_1.createRule({ * @param node The member expression node to get. */ function getPropertyRange(node) { - const dotOrOpenBracket = sourceCode.getTokenAfter(node.object, eslint_utils_1.isNotClosingParenToken); + const dotOrOpenBracket = sourceCode.getTokenAfter(node.object, util_1.isNotClosingParenToken); return [dotOrOpenBracket.range[0], node.range[1]]; } /** @@ -179,7 +191,7 @@ exports.default = util_1.createRule({ * @param node The node to parse. */ function parseRegExp(node) { - const evaluated = eslint_utils_1.getStaticValue(node, globalScope); + const evaluated = util_1.getStaticValue(node, globalScope); if (evaluated == null || !(evaluated.value instanceof RegExp)) { return null; } @@ -197,6 +209,22 @@ exports.default = util_1.createRule({ } return { isEndsWith, isStartsWith, text }; } + function getLeftNode(node) { + if (node.type === experimental_utils_1.AST_NODE_TYPES.ChainExpression) { + return getLeftNode(node.expression); + } + let leftNode; + if (node.type === experimental_utils_1.AST_NODE_TYPES.CallExpression) { + leftNode = node.callee; + } + else { + leftNode = node; + } + if (leftNode.type !== experimental_utils_1.AST_NODE_TYPES.MemberExpression) { + throw new Error(`Expected a MemberExpression, got ${leftNode.type}`); + } + return leftNode; + } /** * Fix code with using the right operand as the search string. * For example: `foo.slice(0, 3) === 'bar'` → `foo.startsWith('bar')` @@ -207,10 +235,7 @@ exports.default = util_1.createRule({ */ function* fixWithRightOperand(fixer, node, kind, isNegative, isOptional) { // left is CallExpression or MemberExpression. - const leftNode = (node.left.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - node.left.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression - ? node.left.callee - : node.left); + const leftNode = getLeftNode(node.left); const propertyRange = getPropertyRange(leftNode); if (isNegative) { yield fixer.insertTextBefore(node, '!'); @@ -226,32 +251,37 @@ exports.default = util_1.createRule({ * @param kind The kind of the report. * @param negative The flag to fix to negative condition. */ - function* fixWithArgument(fixer, node, kind, negative, isOptional) { - const callNode = node.left; - const calleeNode = callNode.callee; + function* fixWithArgument(fixer, node, callNode, calleeNode, kind, negative, isOptional) { if (negative) { yield fixer.insertTextBefore(node, '!'); } yield fixer.replaceTextRange(getPropertyRange(calleeNode), `${isOptional ? '?.' : '.'}${kind}sWith`); yield fixer.removeRange([callNode.range[1], node.range[1]]); } + function getParent(node) { + var _a; + return util_1.nullThrows(((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.ChainExpression + ? node.parent.parent + : node.parent, util_1.NullThrowsReasons.MissingParent); + } return { // foo[0] === "a" // foo.charAt(0) === "a" // foo[foo.length - 1] === "a" // foo.charAt(foo.length - 1) === "a" [[ - 'BinaryExpression > :matches(MemberExpression, OptionalMemberExpression).left[computed=true]', - 'BinaryExpression > :matches(CallExpression, OptionalCallExpression).left > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="charAt"][computed=false]', + 'BinaryExpression > MemberExpression.left[computed=true]', + 'BinaryExpression > CallExpression.left > MemberExpression.callee[property.name="charAt"][computed=false]', + 'BinaryExpression > ChainExpression.left > MemberExpression[computed=true]', + 'BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name="charAt"][computed=false]', ].join(', ')](node) { - let parentNode = node.parent; + let parentNode = getParent(node); let indexNode = null; - if (parentNode.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - parentNode.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) { + if ((parentNode === null || parentNode === void 0 ? void 0 : parentNode.type) === experimental_utils_1.AST_NODE_TYPES.CallExpression) { if (parentNode.arguments.length === 1) { indexNode = parentNode.arguments[0]; } - parentNode = parentNode.parent; + parentNode = getParent(parentNode); } else { indexNode = node.property; @@ -280,12 +310,14 @@ exports.default = util_1.createRule({ }); }, // foo.indexOf('bar') === 0 - 'BinaryExpression > :matches(CallExpression, OptionalCallExpression).left > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="indexOf"][computed=false]'(node) { - const callNode = node.parent; - const parentNode = callNode.parent; + [[ + 'BinaryExpression > CallExpression.left > MemberExpression.callee[property.name="indexOf"][computed=false]', + 'BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name="indexOf"][computed=false]', + ].join(', ')](node) { + const callNode = getParent(node); + const parentNode = getParent(callNode); if (callNode.arguments.length !== 1 || !isEqualityComparison(parentNode) || - parentNode.left !== callNode || !isNumber(parentNode.right, 0) || !isStringType(node.object)) { return; @@ -294,18 +326,20 @@ exports.default = util_1.createRule({ node: parentNode, messageId: 'preferStartsWith', fix(fixer) { - return fixWithArgument(fixer, parentNode, 'start', parentNode.operator.startsWith('!'), node.optional); + return fixWithArgument(fixer, parentNode, callNode, node, 'start', parentNode.operator.startsWith('!'), node.optional); }, }); }, // foo.lastIndexOf('bar') === foo.length - 3 // foo.lastIndexOf(bar) === foo.length - bar.length - 'BinaryExpression > :matches(CallExpression, OptionalCallExpression).left > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="lastIndexOf"][computed=false]'(node) { - const callNode = node.parent; - const parentNode = callNode.parent; + [[ + 'BinaryExpression > CallExpression.left > MemberExpression.callee[property.name="lastIndexOf"][computed=false]', + 'BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name="lastIndexOf"][computed=false]', + ].join(', ')](node) { + const callNode = getParent(node); + const parentNode = getParent(callNode); if (callNode.arguments.length !== 1 || !isEqualityComparison(parentNode) || - parentNode.left !== callNode || parentNode.right.type !== experimental_utils_1.AST_NODE_TYPES.BinaryExpression || parentNode.right.operator !== '-' || !isLengthExpression(parentNode.right.left, node.object) || @@ -317,15 +351,18 @@ exports.default = util_1.createRule({ node: parentNode, messageId: 'preferEndsWith', fix(fixer) { - return fixWithArgument(fixer, parentNode, 'end', parentNode.operator.startsWith('!'), node.optional); + return fixWithArgument(fixer, parentNode, callNode, node, 'end', parentNode.operator.startsWith('!'), node.optional); }, }); }, // foo.match(/^bar/) === null // foo.match(/bar$/) === null - 'BinaryExpression > :matches(CallExpression, OptionalCallExpression).left > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="match"][computed=false]'(node) { - const callNode = node.parent; - const parentNode = callNode.parent; + [[ + 'BinaryExpression > CallExpression.left > MemberExpression.callee[property.name="match"][computed=false]', + 'BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name="match"][computed=false]', + ].join(', ')](node) { + const callNode = getParent(node); + const parentNode = getParent(callNode); if (!isEqualityComparison(parentNode) || !isNull(parentNode.right) || !isStringType(node.object)) { @@ -358,19 +395,20 @@ exports.default = util_1.createRule({ // foo.substring(foo.length - 3) === 'bar' // foo.substring(foo.length - 3, foo.length) === 'bar' [[ - ':matches(CallExpression, OptionalCallExpression) > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="slice"][computed=false]', - ':matches(CallExpression, OptionalCallExpression) > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="substring"][computed=false]', + 'BinaryExpression > CallExpression.left > MemberExpression.callee[property.name="slice"][computed=false]', + 'BinaryExpression > CallExpression.left > MemberExpression.callee[property.name="substring"][computed=false]', + 'BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name="slice"][computed=false]', + 'BinaryExpression > ChainExpression.left > CallExpression > MemberExpression.callee[property.name="substring"][computed=false]', ].join(', ')](node) { - const callNode = node.parent; - const parentNode = callNode.parent; - if (!isEqualityComparison(parentNode) || - parentNode.left !== callNode || - !isStringType(node.object)) { + const callNode = getParent(node); + const parentNode = getParent(callNode); + if (!isEqualityComparison(parentNode) || !isStringType(node.object)) { return; } - const isEndsWith = callNode.arguments.length === 1 || + const isEndsWith = (callNode.arguments.length === 1 || (callNode.arguments.length === 2 && - isLengthExpression(callNode.arguments[1], node.object)); + isLengthExpression(callNode.arguments[1], node.object))) && + isNegativeIndexExpression(callNode.arguments[0], node.object); const isStartsWith = !isEndsWith && callNode.arguments.length === 2 && isNumber(callNode.arguments[0], 0); @@ -389,6 +427,9 @@ exports.default = util_1.createRule({ typeof eqNode.right.value !== 'string')) { return null; } + // code being checked is likely mistake: + // unequal length of strings being checked for equality + // or reliant on behavior of substring (negative indices interpreted as 0) if (isStartsWith) { if (!isLengthExpression(callNode.arguments[1], eqNode.right)) { return null; @@ -414,8 +455,8 @@ exports.default = util_1.createRule({ }, // /^bar/.test(foo) // /bar$/.test(foo) - ':matches(CallExpression, OptionalCallExpression) > :matches(MemberExpression, OptionalMemberExpression).callee[property.name="test"][computed=false]'(node) { - const callNode = node.parent; + 'CallExpression > MemberExpression.callee[property.name="test"][computed=false]'(node) { + const callNode = getParent(node); const parsed = callNode.arguments.length === 1 ? parseRegExp(node.object) : null; if (parsed == null) { return; @@ -432,17 +473,13 @@ exports.default = util_1.createRule({ argNode.type !== experimental_utils_1.AST_NODE_TYPES.TemplateLiteral && argNode.type !== experimental_utils_1.AST_NODE_TYPES.Identifier && argNode.type !== experimental_utils_1.AST_NODE_TYPES.MemberExpression && - argNode.type !== experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression && - argNode.type !== experimental_utils_1.AST_NODE_TYPES.CallExpression && - argNode.type !== experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression; + argNode.type !== experimental_utils_1.AST_NODE_TYPES.CallExpression; yield fixer.removeRange([callNode.range[0], argNode.range[0]]); if (needsParen) { yield fixer.insertTextBefore(argNode, '('); yield fixer.insertTextAfter(argNode, ')'); } - yield fixer.insertTextAfter(argNode, `${callNode.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression - ? '?.' - : '.'}${methodName}(${JSON.stringify(text)}`); + yield fixer.insertTextAfter(argNode, `${node.optional ? '?.' : '.'}${methodName}(${JSON.stringify(text)}`); }, }); }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map index 9d229c01..55dc08b9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-string-starts-ends-with.js","sourceRoot":"","sources":["../../src/rules/prefer-string-starts-ends-with.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-string-starts-ends-with.js","sourceRoot":"","sources":["../../src/rules/prefer-string-starts-ends-with.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js new file mode 100644 index 00000000..e086529e --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js @@ -0,0 +1,81 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const util = __importStar(require("../util")); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +exports.default = util.createRule({ + name: 'prefer-ts-expect-error', + meta: { + type: 'problem', + docs: { + description: 'Recommends using `@ts-expect-error` over `@ts-ignore`', + category: 'Best Practices', + recommended: false, + }, + fixable: 'code', + messages: { + preferExpectErrorComment: 'Use "@ts-expect-error" to ensure an error is actually being suppressed.', + }, + schema: [], + }, + defaultOptions: [], + create(context) { + const tsIgnoreRegExpSingleLine = /^\s*\/?\s*@ts-ignore/; + const tsIgnoreRegExpMultiLine = /^\s*(?:\/|\*)*\s*@ts-ignore/; + const sourceCode = context.getSourceCode(); + function isLineComment(comment) { + return comment.type === experimental_utils_1.AST_TOKEN_TYPES.Line; + } + function getLastCommentLine(comment) { + if (isLineComment(comment)) { + return comment.value; + } + // For multiline comments - we look at only the last line. + const commentlines = comment.value.split('\n'); + return commentlines[commentlines.length - 1]; + } + function isValidTsIgnorePresent(comment) { + const line = getLastCommentLine(comment); + return isLineComment(comment) + ? tsIgnoreRegExpSingleLine.test(line) + : tsIgnoreRegExpMultiLine.test(line); + } + return { + Program() { + const comments = sourceCode.getAllComments(); + comments.forEach(comment => { + if (isValidTsIgnorePresent(comment)) { + const lineCommentRuleFixer = (fixer) => fixer.replaceText(comment, `//${comment.value.replace('@ts-ignore', '@ts-expect-error')}`); + const blockCommentRuleFixer = (fixer) => fixer.replaceText(comment, `/*${comment.value.replace('@ts-ignore', '@ts-expect-error')}*/`); + context.report({ + node: comment, + messageId: 'preferExpectErrorComment', + fix: isLineComment(comment) + ? lineCommentRuleFixer + : blockCommentRuleFixer, + }); + } + }); + }, + }; + }, +}); +//# sourceMappingURL=prefer-ts-expect-error.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map new file mode 100644 index 00000000..46807474 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map @@ -0,0 +1 @@ +{"version":3,"file":"prefer-ts-expect-error.js","sourceRoot":"","sources":["../../src/rules/prefer-ts-expect-error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8CAAgC;AAChC,8EAG+C;AAQ/C,kBAAe,IAAI,CAAC,UAAU,CAAiB;IAC7C,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,wBAAwB,EACtB,yEAAyE;SAC5E;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;QACxD,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;QAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,SAAS,aAAa,CAAC,OAAyB;YAC9C,OAAO,OAAO,CAAC,IAAI,KAAK,oCAAe,CAAC,IAAI,CAAC;QAC/C,CAAC;QAED,SAAS,kBAAkB,CAAC,OAAyB;YACnD,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE;gBAC1B,OAAO,OAAO,CAAC,KAAK,CAAC;aACtB;YAED,0DAA0D;YAC1D,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/C,OAAO,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,SAAS,sBAAsB,CAAC,OAAyB;YACvD,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,aAAa,CAAC,OAAO,CAAC;gBAC3B,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrC,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,OAAO;YACL,OAAO;gBACL,MAAM,QAAQ,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;gBAC7C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBACzB,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE;wBACnC,MAAM,oBAAoB,GAAG,CAAC,KAAgB,EAAW,EAAE,CACzD,KAAK,CAAC,WAAW,CACf,OAAO,EACP,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,kBAAkB,CAAC,EAAE,CAC/D,CAAC;wBAEJ,MAAM,qBAAqB,GAAG,CAAC,KAAgB,EAAW,EAAE,CAC1D,KAAK,CAAC,WAAW,CACf,OAAO,EACP,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO,CACxB,YAAY,EACZ,kBAAkB,CACnB,IAAI,CACN,CAAC;wBAEJ,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,OAAO;4BACb,SAAS,EAAE,0BAA0B;4BACrC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC;gCACzB,CAAC,CAAC,oBAAoB;gCACtB,CAAC,CAAC,qBAAqB;yBAC1B,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js index c1dcaf55..b216a9c5 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map index 7d8cb4e6..bfd56d5d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map @@ -1 +1 @@ -{"version":3,"file":"promise-function-async.js","sourceRoot":"","sources":["../../src/rules/promise-function-async.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"promise-function-async.js","sourceRoot":"","sources":["../../src/rules/promise-function-async.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js index 34653d8e..17e820c1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js @@ -1,14 +1,27 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const quotes_1 = __importDefault(require("eslint/lib/rules/quotes")); @@ -24,7 +37,9 @@ exports.default = util.createRule({ extendsBaseRule: true, }, fixable: 'code', - messages: quotes_1.default.meta.messages, + messages: (_a = quotes_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + wrongQuotes: 'Strings must use {{description}}.', + }, schema: quotes_1.default.meta.schema, }, defaultOptions: [ @@ -37,14 +52,14 @@ exports.default = util.createRule({ create(context, [option]) { const rules = quotes_1.default.create(context); function isAllowedAsNonBacktick(node) { - var _a; const parent = node.parent; - switch ((_a = parent) === null || _a === void 0 ? void 0 : _a.type) { + switch (parent === null || parent === void 0 ? void 0 : parent.type) { case experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition: case experimental_utils_1.AST_NODE_TYPES.TSMethodSignature: case experimental_utils_1.AST_NODE_TYPES.TSPropertySignature: case experimental_utils_1.AST_NODE_TYPES.TSModuleDeclaration: case experimental_utils_1.AST_NODE_TYPES.TSLiteralType: + case experimental_utils_1.AST_NODE_TYPES.TSExternalModuleReference: return true; case experimental_utils_1.AST_NODE_TYPES.TSEnumMember: return node === parent.id; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map index 95dee9cf..de3a0e5d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/quotes.js.map @@ -1 +1 @@ -{"version":3,"file":"quotes.js","sourceRoot":"","sources":["../../src/rules/quotes.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAG+C;AAC/C,qEAA+C;AAC/C,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EACT,0EAA0E;YAC5E,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,gBAAQ,CAAC,IAAI,CAAC,QAAQ;QAChC,MAAM,EAAE,gBAAQ,CAAC,IAAI,CAAC,MAAM;KAC7B;IACD,cAAc,EAAE;QACd,QAAQ;QACR;YACE,qBAAqB,EAAE,KAAK;YAC5B,WAAW,EAAE,KAAK;SACnB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;QACtB,MAAM,KAAK,GAAG,gBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,SAAS,sBAAsB,CAAC,IAAsB;;YACpD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAE3B,cAAQ,MAAM,0CAAE,IAAI,EAAE;gBACpB,KAAK,mCAAc,CAAC,0BAA0B,CAAC;gBAC/C,KAAK,mCAAc,CAAC,iBAAiB,CAAC;gBACtC,KAAK,mCAAc,CAAC,mBAAmB,CAAC;gBACxC,KAAK,mCAAc,CAAC,mBAAmB,CAAC;gBACxC,KAAK,mCAAc,CAAC,aAAa;oBAC/B,OAAO,IAAI,CAAC;gBAEd,KAAK,mCAAc,CAAC,YAAY;oBAC9B,OAAO,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBAE5B,KAAK,mCAAc,CAAC,uBAAuB,CAAC;gBAC5C,KAAK,mCAAc,CAAC,aAAa;oBAC/B,OAAO,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC;gBAE7B;oBACE,OAAO,KAAK,CAAC;aAChB;QACH,CAAC;QAED,OAAO;YACL,OAAO,CAAC,IAAI;gBACV,IAAI,MAAM,KAAK,UAAU,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE;oBACzD,OAAO;iBACR;gBAED,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;YAED,eAAe,CAAC,IAAI;gBAClB,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"quotes.js","sourceRoot":"","sources":["../../src/rules/quotes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,qEAA+C;AAC/C,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EACT,0EAA0E;YAC5E,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,QAAE,gBAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,WAAW,EAAE,mCAAmC;SACjD;QACD,MAAM,EAAE,gBAAQ,CAAC,IAAI,CAAC,MAAM;KAC7B;IACD,cAAc,EAAE;QACd,QAAQ;QACR;YACE,qBAAqB,EAAE,KAAK;YAC5B,WAAW,EAAE,KAAK;SACnB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;QACtB,MAAM,KAAK,GAAG,gBAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,SAAS,sBAAsB,CAAC,IAAsB;YACpD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAE3B,QAAQ,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;gBACpB,KAAK,mCAAc,CAAC,0BAA0B,CAAC;gBAC/C,KAAK,mCAAc,CAAC,iBAAiB,CAAC;gBACtC,KAAK,mCAAc,CAAC,mBAAmB,CAAC;gBACxC,KAAK,mCAAc,CAAC,mBAAmB,CAAC;gBACxC,KAAK,mCAAc,CAAC,aAAa,CAAC;gBAClC,KAAK,mCAAc,CAAC,yBAAyB;oBAC3C,OAAO,IAAI,CAAC;gBAEd,KAAK,mCAAc,CAAC,YAAY;oBAC9B,OAAO,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBAE5B,KAAK,mCAAc,CAAC,uBAAuB,CAAC;gBAC5C,KAAK,mCAAc,CAAC,aAAa;oBAC/B,OAAO,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC;gBAE7B;oBACE,OAAO,KAAK,CAAC;aAChB;QACH,CAAC;QAED,OAAO;YACL,OAAO,CAAC,IAAI;gBACV,IAAI,MAAM,KAAK,UAAU,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE;oBACzD,OAAO;iBACR;gBAED,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;YAED,eAAe,CAAC,IAAI;gBAClB,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js index 797d0913..e71e0d51 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js @@ -1,17 +1,32 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -const ts = __importStar(require("typescript")); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'require-array-sort-compare', - defaultOptions: [], + defaultOptions: [ + { + ignoreStringArrays: false, + }, + ], meta: { type: 'problem', docs: { @@ -23,28 +38,41 @@ exports.default = util.createRule({ messages: { requireCompare: "Require 'compare' argument.", }, - schema: [], + schema: [ + { + type: 'object', + properties: { + ignoreStringArrays: { + type: 'boolean', + }, + }, + }, + ], }, - create(context) { + create(context, [options]) { const service = util.getParserServices(context); const checker = service.program.getTypeChecker(); + /** + * Check if a given node is an array which all elements are string. + * @param node + */ + function isStringArrayNode(node) { + const type = checker.getTypeAtLocation(service.esTreeNodeToTSNodeMap.get(node)); + if (checker.isArrayType(type) || checker.isTupleType(type)) { + const typeArgs = checker.getTypeArguments(type); + return typeArgs.every(arg => util.getTypeName(checker, arg) === 'string'); + } + return false; + } return { - ":matches(CallExpression, OptionalCallExpression)[arguments.length=0] > :matches(MemberExpression, OptionalMemberExpression)[property.name='sort'][computed=false]"(node) { - // Get the symbol of the `sort` method. - const tsNode = service.esTreeNodeToTSNodeMap.get(node); - const sortSymbol = checker.getSymbolAtLocation(tsNode); - if (sortSymbol == null) { + "CallExpression[arguments.length=0] > MemberExpression[property.name='sort'][computed=false]"(callee) { + const tsNode = service.esTreeNodeToTSNodeMap.get(callee.object); + const calleeObjType = util.getConstrainedTypeAtLocation(checker, tsNode); + if (options.ignoreStringArrays && isStringArrayNode(callee.object)) { return; } - // Check the owner type of the `sort` method. - for (const methodDecl of sortSymbol.declarations) { - const typeDecl = methodDecl.parent; - if (ts.isInterfaceDeclaration(typeDecl) && - ts.isSourceFile(typeDecl.parent) && - typeDecl.name.escapedText === 'Array') { - context.report({ node: node.parent, messageId: 'requireCompare' }); - return; - } + if (util.isTypeArrayTypeOrUnionOfArrayTypes(calleeObjType, checker)) { + context.report({ node: callee.parent, messageId: 'requireCompare' }); } }, }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map index 1e1d48db..1a04cc46 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js.map @@ -1 +1 @@ -{"version":3,"file":"require-array-sort-compare.js","sourceRoot":"","sources":["../../src/rules/require-array-sort-compare.ts"],"names":[],"mappings":";;;;;;;;;AACA,+CAAiC;AACjC,8CAAgC;AAEhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,4BAA4B;IAClC,cAAc,EAAE,EAAE;IAElB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,mEAAmE;YACrE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,cAAc,EAAE,6BAA6B;SAC9C;QACD,MAAM,EAAE,EAAE;KACX;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjD,OAAO;YACL,mKAAmK,CACjK,IAAmE;gBAEnE,uCAAuC;gBACvC,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvD,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBACvD,IAAI,UAAU,IAAI,IAAI,EAAE;oBACtB,OAAO;iBACR;gBAED,6CAA6C;gBAC7C,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,YAAY,EAAE;oBAChD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC;oBACnC,IACE,EAAE,CAAC,sBAAsB,CAAC,QAAQ,CAAC;wBACnC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAChC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,OAAO,EACrC;wBACA,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,MAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;wBACpE,OAAO;qBACR;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"require-array-sort-compare.js","sourceRoot":"","sources":["../../src/rules/require-array-sort-compare.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,8CAAgC;AAShC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,4BAA4B;IAClC,cAAc,EAAE;QACd;YACE,kBAAkB,EAAE,KAAK;SAC1B;KACF;IAED,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,mEAAmE;YACrE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,cAAc,EAAE,6BAA6B;SAC9C;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;KACF;IAED,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjD;;;WAGG;QACH,SAAS,iBAAiB,CAAC,IAAqC;YAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CACpC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CACxC,CAAC;YACF,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;gBAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAChD,OAAO,QAAQ,CAAC,KAAK,CACnB,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,QAAQ,CACnD,CAAC;aACH;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO;YACL,6FAA6F,CAC3F,MAAiC;gBAEjC,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChE,MAAM,aAAa,GAAG,IAAI,CAAC,4BAA4B,CACrD,OAAO,EACP,MAAM,CACP,CAAC;gBAEF,IAAI,OAAO,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;oBAClE,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,kCAAkC,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE;oBACnE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;iBACvE;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js index 0da4691c..3bdbc095 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js @@ -1,14 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const tsutils = __importStar(require("tsutils")); const util = __importStar(require("../util")); exports.default = util.createRule({ @@ -41,6 +52,8 @@ exports.default = util.createRule({ upper: scopeInfo, hasAwait: false, hasAsync: node.async, + isGen: node.generator || false, + isAsyncYield: false, }; } /** @@ -52,13 +65,16 @@ exports.default = util.createRule({ // this shouldn't ever happen, as we have to exit a function after we enter it return; } - if (node.async && !scopeInfo.hasAwait && !isEmptyFunction(node)) { + if (node.async && + !scopeInfo.hasAwait && + !isEmptyFunction(node) && + !(scopeInfo.isGen && scopeInfo.isAsyncYield)) { context.report({ node, loc: getFunctionHeadLoc(node, sourceCode), messageId: 'missingAwait', data: { - name: util.upperCaseFirst(eslint_utils_1.getFunctionNameWithKind(node)), + name: util.upperCaseFirst(util.getFunctionNameWithKind(node)), }, }); } @@ -80,6 +96,28 @@ exports.default = util.createRule({ } scopeInfo.hasAwait = true; } + /** + * mark `scopeInfo.isAsyncYield` to `true` if its a generator + * function and the delegate is `true` + */ + function markAsHasDelegateGen(node) { + var _a; + if (!scopeInfo || !scopeInfo.isGen || !node.argument) { + return; + } + if (((_a = node === null || node === void 0 ? void 0 : node.argument) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.Literal) { + // making this `false` as for literals we don't need to check the definition + // eg : async function* run() { yield* 1 } + scopeInfo.isAsyncYield = false; + } + const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node === null || node === void 0 ? void 0 : node.argument); + const type = checker.getTypeAtLocation(tsNode); + const symbol = type.getSymbol(); + // async function* test1() {yield* asyncGenerator() } + if ((symbol === null || symbol === void 0 ? void 0 : symbol.getName()) === 'AsyncGenerator') { + scopeInfo.isAsyncYield = true; + } + } return { FunctionDeclaration: enterFunction, FunctionExpression: enterFunction, @@ -89,6 +127,7 @@ exports.default = util.createRule({ 'ArrowFunctionExpression:exit': exitFunction, AwaitExpression: markAsHasAwait, 'ForOfStatement[await = true]': markAsHasAwait, + 'YieldExpression[delegate = true]': markAsHasDelegateGen, // check body-less async arrow function. // ignore `async () => await foo` because it's obviously correct 'ArrowFunctionExpression[async = true] > :not(BlockStatement, AwaitExpression)'(node) { @@ -121,8 +160,8 @@ function isEmptyFunction(node) { */ function getOpeningParenOfParams(node, sourceCode) { return util.nullThrows(node.id - ? sourceCode.getTokenAfter(node.id, eslint_utils_1.isOpeningParenToken) - : sourceCode.getFirstToken(node, eslint_utils_1.isOpeningParenToken), util.NullThrowsReasons.MissingToken('(', node.type)); + ? sourceCode.getTokenAfter(node.id, util.isOpeningParenToken) + : sourceCode.getFirstToken(node, util.isOpeningParenToken), util.NullThrowsReasons.MissingToken('(', node.type)); } // https://github.com/eslint/eslint/blob/03a69dbe86d5b5768a310105416ae726822e3c1c/lib/rules/utils/ast-utils.js#L1220-L1242 /** @@ -133,7 +172,7 @@ function getFunctionHeadLoc(node, sourceCode) { let start = null; let end = null; if (node.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression) { - const arrowToken = util.nullThrows(sourceCode.getTokenBefore(node.body, eslint_utils_1.isArrowToken), util.NullThrowsReasons.MissingToken('=>', node.type)); + const arrowToken = util.nullThrows(sourceCode.getTokenBefore(node.body, util.isArrowToken), util.NullThrowsReasons.MissingToken('=>', node.type)); start = arrowToken.loc.start; end = arrowToken.loc.end; } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map index 5c5e6ca8..bab6931d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js.map @@ -1 +1 @@ -{"version":3,"file":"require-await.js","sourceRoot":"","sources":["../../src/rules/require-await.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"require-await.js","sourceRoot":"","sources":["../../src/rules/require-await.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js index b00a983f..aa2ba074 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -16,7 +28,7 @@ exports.default = util.createRule({ docs: { description: 'When adding two variables, operands must both be of type number or of type string', category: 'Best Practices', - recommended: false, + recommended: 'error', requiresTypeChecking: true, }, messages: { @@ -48,13 +60,6 @@ exports.default = util.createRule({ * Helper function to get base type of node */ function getBaseTypeOfLiteralType(type) { - const constraint = type.getConstraint(); - if (constraint && - // for generic types with union constraints, it will return itself from getConstraint - // so we have to guard against infinite recursion... - constraint !== type) { - return getBaseTypeOfLiteralType(constraint); - } if (type.isNumberLiteral()) { return 'number'; } @@ -83,7 +88,7 @@ exports.default = util.createRule({ */ function getNodeType(node) { const tsNode = service.esTreeNodeToTSNodeMap.get(node); - const type = typeChecker.getTypeAtLocation(tsNode); + const type = util.getConstrainedTypeAtLocation(typeChecker, tsNode); return getBaseTypeOfLiteralType(type); } function checkPlusOperands(node) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map index ffacf1d9..df5c3ce7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js.map @@ -1 +1 @@ -{"version":3,"file":"restrict-plus-operands.js","sourceRoot":"","sources":["../../src/rules/restrict-plus-operands.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"restrict-plus-operands.js","sourceRoot":"","sources":["../../src/rules/restrict-plus-operands.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,+CAAiC;AACjC,8CAAgC;AAShC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,mFAAmF;YACrF,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,UAAU,EACR,wEAAwE;YAC1E,UAAU,EACR,2GAA2G;YAC7G,UAAU,EAAE,iDAAiD;SAC9D;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,wBAAwB,EAAE;wBACxB,IAAI,EAAE,SAAS;qBAChB;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,wBAAwB,EAAE,KAAK;SAChC;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,wBAAwB,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAIrD;;WAEG;QACH,SAAS,wBAAwB,CAAC,IAAa;YAC7C,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;gBAC1B,OAAO,QAAQ,CAAC;aACjB;YACD,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;gBAC1B,OAAO,QAAQ,CAAC;aACjB;YACD,mBAAmB;YACnB,IAAI,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE;gBAC3C,OAAO,QAAQ,CAAC;aACjB;YACD,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBAClB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;gBAEvD,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;aACxE;YAED,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAElD,IACE,UAAU,KAAK,QAAQ;gBACvB,UAAU,KAAK,QAAQ;gBACvB,UAAU,KAAK,QAAQ,EACvB;gBACA,OAAO,UAAU,CAAC;aACnB;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED;;;WAGG;QACH,SAAS,WAAW,CAAC,IAAyB;YAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAEpE,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAED,SAAS,iBAAiB,CACxB,IAA+D;YAE/D,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAE1C,IACE,QAAQ,KAAK,SAAS;gBACtB,SAAS,KAAK,SAAS;gBACvB,QAAQ,KAAK,SAAS,EACtB;gBACA,IAAI,QAAQ,KAAK,QAAQ,IAAI,SAAS,KAAK,QAAQ,EAAE;oBACnD,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,YAAY;qBACxB,CAAC,CAAC;iBACJ;qBAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,SAAS,KAAK,QAAQ,EAAE;oBAC1D,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,YAAY;qBACxB,CAAC,CAAC;iBACJ;qBAAM;oBACL,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,YAAY;qBACxB,CAAC,CAAC;iBACJ;aACF;QACH,CAAC;QAED,OAAO;YACL,gCAAgC,EAAE,iBAAiB;YACnD,qCAAqC,CAAC,IAAI;gBACxC,IAAI,wBAAwB,EAAE;oBAC5B,iBAAiB,CAAC,IAAI,CAAC,CAAC;iBACzB;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js index b0bb7b9f..e72f7919 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -17,40 +29,52 @@ exports.default = util.createRule({ docs: { description: 'Enforce template literal expressions to be of string type', category: 'Best Practices', - recommended: false, + recommended: 'error', requiresTypeChecking: true, }, messages: { - invalidType: 'Invalid type of template literal expression.', + invalidType: 'Invalid type "{{type}}" of template literal expression.', }, schema: [ { type: 'object', properties: { - allowBoolean: { type: 'boolean' }, - allowNullable: { type: 'boolean' }, allowNumber: { type: 'boolean' }, + allowBoolean: { type: 'boolean' }, + allowAny: { type: 'boolean' }, + allowNullish: { type: 'boolean' }, }, }, ], }, - defaultOptions: [{}], + defaultOptions: [ + { + allowNumber: true, + }, + ], create(context, [options]) { const service = util.getParserServices(context); const typeChecker = service.program.getTypeChecker(); - const allowedTypes = [ - 'string', - ...(options.allowNumber ? ['number', 'bigint'] : []), - ...(options.allowBoolean ? ['boolean'] : []), - ...(options.allowNullable ? ['null', 'undefined'] : []), - ]; - function isAllowedType(types) { - for (const type of types) { - if (!allowedTypes.includes(type)) { - return false; - } + function isUnderlyingTypePrimitive(type) { + if (util.isTypeFlagSet(type, ts.TypeFlags.StringLike)) { + return true; } - return true; + if (options.allowNumber && + util.isTypeFlagSet(type, ts.TypeFlags.NumberLike | ts.TypeFlags.BigIntLike)) { + return true; + } + if (options.allowBoolean && + util.isTypeFlagSet(type, ts.TypeFlags.BooleanLike)) { + return true; + } + if (options.allowAny && util.isTypeAnyType(type)) { + return true; + } + if (options.allowNullish && + util.isTypeFlagSet(type, ts.TypeFlags.Null | ts.TypeFlags.Undefined)) { + return true; + } + return false; } return { TemplateLiteral(node) { @@ -58,64 +82,29 @@ exports.default = util.createRule({ if (node.parent.type === experimental_utils_1.AST_NODE_TYPES.TaggedTemplateExpression) { return; } - for (const expr of node.expressions) { - const type = getNodeType(expr); - if (!isAllowedType(type)) { + for (const expression of node.expressions) { + const expressionType = util.getConstrainedTypeAtLocation(typeChecker, service.esTreeNodeToTSNodeMap.get(expression)); + if (!isInnerUnionOrIntersectionConformingTo(expressionType, isUnderlyingTypePrimitive)) { context.report({ - node: expr, + node: expression, messageId: 'invalidType', + data: { type: typeChecker.typeToString(expressionType) }, }); } } }, }; - /** - * Helper function to get base type of node - * @param node the node to be evaluated. - */ - function getNodeType(node) { - const tsNode = service.esTreeNodeToTSNodeMap.get(node); - const type = typeChecker.getTypeAtLocation(tsNode); - return getBaseType(type); - } - function getBaseType(type) { - const constraint = type.getConstraint(); - if (constraint && - // for generic types with union constraints, it will return itself - constraint !== type) { - return getBaseType(constraint); + function isInnerUnionOrIntersectionConformingTo(type, predicate) { + return rec(type); + function rec(innerType) { + if (innerType.isUnion()) { + return innerType.types.every(rec); + } + if (innerType.isIntersection()) { + return innerType.types.some(rec); + } + return predicate(innerType); } - if (type.isStringLiteral()) { - return ['string']; - } - if (type.isNumberLiteral()) { - return ['number']; - } - if (type.flags & ts.TypeFlags.BigIntLiteral) { - return ['bigint']; - } - if (type.flags & ts.TypeFlags.BooleanLiteral) { - return ['boolean']; - } - if (type.flags & ts.TypeFlags.Null) { - return ['null']; - } - if (type.flags & ts.TypeFlags.Undefined) { - return ['undefined']; - } - if (type.isUnion()) { - return type.types - .map(getBaseType) - .reduce((all, array) => [...all, ...array], []); - } - const stringType = typeChecker.typeToString(type); - if (stringType === 'string' || - stringType === 'number' || - stringType === 'bigint' || - stringType === 'boolean') { - return [stringType]; - } - return ['other']; } }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map index be2c1777..2e517055 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js.map @@ -1 +1 @@ -{"version":3,"file":"restrict-template-expressions.js","sourceRoot":"","sources":["../../src/rules/restrict-template-expressions.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"restrict-template-expressions.js","sourceRoot":"","sources":["../../src/rules/restrict-template-expressions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,+CAAiC;AACjC,8CAAgC;AAahC,kBAAe,IAAI,CAAC,UAAU,CAAqB;IACjD,IAAI,EAAE,+BAA+B;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,2DAA2D;YACxE,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,yDAAyD;SACvE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAChC,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC7B,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;iBAClC;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,WAAW,EAAE,IAAI;SAClB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAErD,SAAS,yBAAyB,CAAC,IAAa;YAC9C,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;gBACrD,OAAO,IAAI,CAAC;aACb;YAED,IACE,OAAO,CAAC,WAAW;gBACnB,IAAI,CAAC,aAAa,CAChB,IAAI,EACJ,EAAE,CAAC,SAAS,CAAC,UAAU,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAClD,EACD;gBACA,OAAO,IAAI,CAAC;aACb;YAED,IACE,OAAO,CAAC,YAAY;gBACpB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,EAClD;gBACA,OAAO,IAAI,CAAC;aACb;YAED,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;gBAChD,OAAO,IAAI,CAAC;aACb;YAED,IACE,OAAO,CAAC,YAAY;gBACpB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,EACpE;gBACA,OAAO,IAAI,CAAC;aACb;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO;YACL,eAAe,CAAC,IAA8B;gBAC5C,uCAAuC;gBACvC,IAAI,IAAI,CAAC,MAAO,CAAC,IAAI,KAAK,mCAAc,CAAC,wBAAwB,EAAE;oBACjE,OAAO;iBACR;gBAED,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE;oBACzC,MAAM,cAAc,GAAG,IAAI,CAAC,4BAA4B,CACtD,WAAW,EACX,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAC9C,CAAC;oBAEF,IACE,CAAC,sCAAsC,CACrC,cAAc,EACd,yBAAyB,CAC1B,EACD;wBACA,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,UAAU;4BAChB,SAAS,EAAE,aAAa;4BACxB,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE;yBACzD,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;QAEF,SAAS,sCAAsC,CAC7C,IAAa,EACb,SAA+C;YAE/C,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YAEjB,SAAS,GAAG,CAAC,SAAkB;gBAC7B,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE;oBACvB,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACnC;gBAED,IAAI,SAAS,CAAC,cAAc,EAAE,EAAE;oBAC9B,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAClC;gBAED,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js index 193ecab6..910c332a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -24,9 +36,9 @@ exports.default = util.createRule({ fixable: 'code', type: 'problem', messages: { - nonPromiseAwait: 'returning an awaited value that is not a promise is not allowed', - disallowedPromiseAwait: 'returning an awaited promise is not allowed in this context', - requiredPromiseAwait: 'returning an awaited promise is required in this context', + nonPromiseAwait: 'Returning an awaited value that is not a promise is not allowed.', + disallowedPromiseAwait: 'Returning an awaited promise is not allowed in this context.', + requiredPromiseAwait: 'Returning an awaited promise is required in this context.', }, schema: [ { @@ -39,27 +51,61 @@ exports.default = util.createRule({ const parserServices = util.getParserServices(context); const checker = parserServices.program.getTypeChecker(); const sourceCode = context.getSourceCode(); - function inTryCatch(node) { + let scopeInfo = null; + function enterFunction(node) { + scopeInfo = { + hasAsync: node.async, + }; + } + function inTry(node) { let ancestor = node.parent; while (ancestor && !ts.isFunctionLike(ancestor)) { - if (tsutils.isTryStatement(ancestor) || - tsutils.isCatchClause(ancestor)) { + if (tsutils.isTryStatement(ancestor)) { return true; } ancestor = ancestor.parent; } return false; } + function inCatch(node) { + let ancestor = node.parent; + while (ancestor && !ts.isFunctionLike(ancestor)) { + if (tsutils.isCatchClause(ancestor)) { + return true; + } + ancestor = ancestor.parent; + } + return false; + } + function isReturnPromiseInFinally(node) { + let ancestor = node.parent; + while (ancestor && !ts.isFunctionLike(ancestor)) { + if (tsutils.isTryStatement(ancestor.parent) && + tsutils.isBlock(ancestor) && + ancestor.parent.end === ancestor.end) { + return true; + } + ancestor = ancestor.parent; + } + return false; + } + function hasFinallyBlock(node) { + let ancestor = node.parent; + while (ancestor && !ts.isFunctionLike(ancestor)) { + if (tsutils.isTryStatement(ancestor)) { + return !!ancestor.finallyBlock; + } + ancestor = ancestor.parent; + } + return false; + } // function findTokensToRemove() function removeAwait(fixer, node) { - const awaitNode = node.type === experimental_utils_1.AST_NODE_TYPES.ReturnStatement - ? node.argument - : node.body; // Should always be an await node; but let's be safe. - /* istanbul ignore if */ if (!util.isAwaitExpression(awaitNode)) { + /* istanbul ignore if */ if (!util.isAwaitExpression(node)) { return null; } - const awaitToken = sourceCode.getFirstToken(awaitNode, util.isAwaitKeyword); + const awaitToken = sourceCode.getFirstToken(node, util.isAwaitKeyword); // Should always be the case; but let's be safe. /* istanbul ignore if */ if (!awaitToken) { return null; @@ -76,14 +122,7 @@ exports.default = util.createRule({ return fixer.removeRange([startAt, endAt]); } function insertAwait(fixer, node) { - const targetNode = node.type === experimental_utils_1.AST_NODE_TYPES.ReturnStatement - ? node.argument - : node.body; - // There should always be a target node; but let's be safe. - /* istanbul ignore if */ if (!targetNode) { - return null; - } - return fixer.insertTextBefore(targetNode, 'await '); + return fixer.insertTextBefore(node, 'await '); } function test(node, expression) { let child; @@ -128,7 +167,7 @@ exports.default = util.createRule({ return; } if (option === 'in-try-catch') { - const isInTryCatch = inTryCatch(expression); + const isInTryCatch = inTry(expression) || inCatch(expression); if (isAwait && !isInTryCatch) { context.report({ messageId: 'disallowedPromiseAwait', @@ -137,6 +176,12 @@ exports.default = util.createRule({ }); } else if (!isAwait && isInTryCatch) { + if (inCatch(expression) && !hasFinallyBlock(expression)) { + return; + } + if (isReturnPromiseInFinally(expression)) { + return; + } context.report({ messageId: 'requiredPromiseAwait', node, @@ -146,20 +191,35 @@ exports.default = util.createRule({ return; } } + function findPossiblyReturnedNodes(node) { + if (node.type === experimental_utils_1.AST_NODE_TYPES.ConditionalExpression) { + return [ + ...findPossiblyReturnedNodes(node.alternate), + ...findPossiblyReturnedNodes(node.consequent), + ]; + } + return [node]; + } return { + FunctionDeclaration: enterFunction, + FunctionExpression: enterFunction, + ArrowFunctionExpression: enterFunction, 'ArrowFunctionExpression[async = true]:exit'(node) { if (node.body.type !== experimental_utils_1.AST_NODE_TYPES.BlockStatement) { - const expression = parserServices.esTreeNodeToTSNodeMap.get(node.body); - test(node, expression); + findPossiblyReturnedNodes(node.body).forEach(node => { + const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node); + test(node, tsNode); + }); } }, ReturnStatement(node) { - const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); - const { expression } = originalNode; - if (!expression) { + if (!scopeInfo || !scopeInfo.hasAsync || !node.argument) { return; } - test(node, expression); + findPossiblyReturnedNodes(node.argument).forEach(node => { + const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node); + test(node, tsNode); + }); }, }; }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map index e765cc75..3806c18b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js.map @@ -1 +1 @@ -{"version":3,"file":"return-await.js","sourceRoot":"","sources":["../../src/rules/return-await.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"return-await.js","sourceRoot":"","sources":["../../src/rules/return-await.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js index 9a3cf0e1..7e2ccde1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js @@ -1,14 +1,27 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var _a; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const semi_1 = __importDefault(require("eslint/lib/rules/semi")); @@ -26,7 +39,10 @@ exports.default = util.createRule({ }, fixable: 'code', schema: semi_1.default.meta.schema, - messages: semi_1.default.meta.messages, + messages: (_a = semi_1.default.meta.messages) !== null && _a !== void 0 ? _a : { + missingSemi: 'Missing semicolon.', + extraSemi: 'Extra semicolon.', + }, }, defaultOptions: [ 'always', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map index 5295d550..5c2e0f7f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/semi.js.map @@ -1 +1 @@ -{"version":3,"file":"semi.js","sourceRoot":"","sources":["../../src/rules/semi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAI+C;AAC/C,iEAA6C;AAC7C,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,kBAAkB;YAC5B,oCAAoC;YACpC,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,cAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,EAAE,cAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE;QACd,QAAQ;QACR;YACE,sBAAsB,EAAE,KAAK;YAC7B,gCAAgC,EAAE,KAAK;SACxC;KACF;IACD,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,cAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,iBAAiB,GAAG,KAAK,CAAC,mBAE/B,CAAC;QAEF;;;;;;;UAOE;QACF,MAAM,YAAY,GAAG;YACnB,mCAAc,CAAC,aAAa;YAC5B,mCAAc,CAAC,uBAAuB;YACtC,mCAAc,CAAC,0BAA0B;YACzC,mCAAc,CAAC,iBAAiB;YAChC,mCAAc,CAAC,kBAAkB;YACjC,mCAAc,CAAC,yBAAyB;YACxC,mCAAc,CAAC,sBAAsB;SACtC,CAAC,MAAM,CAAwB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC5C,GAAG,CAAC,IAAc,CAAC,GAAG,iBAAiB,CAAC;YACxC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,qDACK,KAAK,GACL,YAAY,KACf,wBAAwB,CAAC,IAAI;gBAC3B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,mCAAc,CAAC,sBAAsB,EAAE;oBACnE,KAAK,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;iBACtC;YACH,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"semi.js","sourceRoot":"","sources":["../../src/rules/semi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAI+C;AAC/C,iEAA6C;AAC7C,8CAAgC;AAKhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,kBAAkB;YAC5B,oCAAoC;YACpC,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,cAAQ,CAAC,IAAI,CAAC,MAAM;QAC5B,QAAQ,QAAE,cAAQ,CAAC,IAAI,CAAC,QAAQ,mCAAI;YAClC,WAAW,EAAE,oBAAoB;YACjC,SAAS,EAAE,kBAAkB;SAC9B;KACF;IACD,cAAc,EAAE;QACd,QAAQ;QACR;YACE,sBAAsB,EAAE,KAAK;YAC7B,gCAAgC,EAAE,KAAK;SACxC;KACF;IACD,MAAM,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,cAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,iBAAiB,GAAG,KAAK,CAAC,mBAE/B,CAAC;QAEF;;;;;;;UAOE;QACF,MAAM,YAAY,GAAG;YACnB,mCAAc,CAAC,aAAa;YAC5B,mCAAc,CAAC,uBAAuB;YACtC,mCAAc,CAAC,0BAA0B;YACzC,mCAAc,CAAC,iBAAiB;YAChC,mCAAc,CAAC,kBAAkB;YACjC,mCAAc,CAAC,yBAAyB;YACxC,mCAAc,CAAC,sBAAsB;SACtC,CAAC,MAAM,CAAwB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC5C,GAAG,CAAC,IAAc,CAAC,GAAG,iBAAiB,CAAC;YACxC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,qDACK,KAAK,GACL,YAAY,KACf,wBAAwB,CAAC,IAAI;gBAC3B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,mCAAc,CAAC,sBAAsB,EAAE;oBACnE,KAAK,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;iBACtC;YACH,CAAC,IACD;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js index ae956044..3d977230 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js @@ -1,14 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_utils_1 = require("eslint-utils"); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'space-before-function-paren', @@ -61,11 +72,12 @@ exports.default = util.createRule({ * @returns {boolean} Whether the function has a name. */ function isNamedFunction(node) { - if (node.id) { + if (node.id != null) { return true; } const parent = node.parent; return (parent.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition || + parent.type === experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition || (parent.type === experimental_utils_1.AST_NODE_TYPES.Property && (parent.kind === 'get' || parent.kind === 'set' || parent.method))); } @@ -79,16 +91,16 @@ exports.default = util.createRule({ if (node.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression) { // Always ignore non-async functions and arrow functions without parens, e.g. async foo => bar if (node.async && - eslint_utils_1.isOpeningParenToken(sourceCode.getFirstToken(node, { skip: 1 }))) { - return _a = overrideConfig.asyncArrow, (_a !== null && _a !== void 0 ? _a : baseConfig); + util.isOpeningParenToken(sourceCode.getFirstToken(node, { skip: 1 }))) { + return (_a = overrideConfig.asyncArrow) !== null && _a !== void 0 ? _a : baseConfig; } } else if (isNamedFunction(node)) { - return _b = overrideConfig.named, (_b !== null && _b !== void 0 ? _b : baseConfig); + return (_b = overrideConfig.named) !== null && _b !== void 0 ? _b : baseConfig; // `generator-star-spacing` should warn anonymous generators. E.g. `function* () {}` } else if (!node.generator) { - return _c = overrideConfig.anonymous, (_c !== null && _c !== void 0 ? _c : baseConfig); + return (_c = overrideConfig.anonymous) !== null && _c !== void 0 ? _c : baseConfig; } return 'ignore'; } @@ -108,14 +120,17 @@ exports.default = util.createRule({ rightToken = sourceCode.getTokenAfter(leftToken); } else { - rightToken = sourceCode.getFirstToken(node, eslint_utils_1.isOpeningParenToken); + rightToken = sourceCode.getFirstToken(node, util.isOpeningParenToken); leftToken = sourceCode.getTokenBefore(rightToken); } const hasSpacing = sourceCode.isSpaceBetweenTokens(leftToken, rightToken); if (hasSpacing && functionConfig === 'never') { context.report({ node, - loc: leftToken.loc.end, + loc: { + start: leftToken.loc.end, + end: rightToken.loc.start, + }, messageId: 'unexpected', fix: fixer => fixer.removeRange([leftToken.range[1], rightToken.range[0]]), }); @@ -125,7 +140,7 @@ exports.default = util.createRule({ (!node.typeParameters || node.id)) { context.report({ node, - loc: leftToken.loc.end, + loc: rightToken.loc, messageId: 'missing', fix: fixer => fixer.insertTextAfter(leftToken, ' '), }); @@ -135,6 +150,8 @@ exports.default = util.createRule({ ArrowFunctionExpression: checkFunction, FunctionDeclaration: checkFunction, FunctionExpression: checkFunction, + TSEmptyBodyFunctionExpression: checkFunction, + TSDeclareFunction: checkFunction, }; }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map index 91b155a9..4f69e199 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-before-function-paren.js.map @@ -1 +1 @@ -{"version":3,"file":"space-before-function-paren.js","sourceRoot":"","sources":["../../src/rules/space-before-function-paren.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"space-before-function-paren.js","sourceRoot":"","sources":["../../src/rules/space-before-function-paren.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js index b18ba77c..3f2454c2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -25,13 +37,14 @@ exports.default = util.createRule({ { type: 'object', properties: { - ignoreRhs: { - type: 'boolean', - }, - allowNullable: { - type: 'boolean', - }, - allowSafe: { + allowString: { type: 'boolean' }, + allowNumber: { type: 'boolean' }, + allowNullableObject: { type: 'boolean' }, + allowNullableBoolean: { type: 'boolean' }, + allowNullableString: { type: 'boolean' }, + allowNullableNumber: { type: 'boolean' }, + allowAny: { type: 'boolean' }, + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: { type: 'boolean', }, }, @@ -59,18 +72,36 @@ exports.default = util.createRule({ 'The condition is always true.', conditionErrorNullableObject: 'Unexpected nullable object value in conditional. ' + 'An explicit null check is required.', + noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.', }, }, defaultOptions: [ { - ignoreRhs: false, - allowNullable: false, - allowSafe: false, + allowString: true, + allowNumber: true, + allowNullableObject: true, + allowNullableBoolean: false, + allowNullableString: false, + allowNullableNumber: false, + allowAny: false, + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false, }, ], create(context, [options]) { const service = util.getParserServices(context); const checker = service.program.getTypeChecker(); + const compilerOptions = service.program.getCompilerOptions(); + const isStrictNullChecks = tsutils.isStrictCompilerOptionEnabled(compilerOptions, 'strictNullChecks'); + if (!isStrictNullChecks && + options.allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing !== true) { + context.report({ + loc: { + start: { line: 0, column: 0 }, + end: { line: 0, column: 0 }, + }, + messageId: 'noStrictNullCheck', + }); + } const checkedNodes = new Set(); return { ConditionalExpression: checkTestExpression, @@ -91,125 +122,106 @@ exports.default = util.createRule({ checkNode(node.argument, true); } /** - * This function analyzes the type of a boolean expression node and checks if it is allowed. - * It can recurse when checking nested logical operators, so that only the outermost expressions are reported. + * This function analyzes the type of a node and checks if it is allowed in a boolean context. + * It can recurse when checking nested logical operators, so that only the outermost operands are reported. + * The right operand of a logical expression is ignored unless it's a part of a test expression (if/while/ternary/etc). * @param node The AST node to check. - * @param isRoot Whether it is the root of a logical expression and there was no recursion yet. - * @returns `true` if there was an error reported. + * @param isTestExpr Whether the node is a descendant of a test expression. */ - function checkNode(node, isRoot = false) { + function checkNode(node, isTestExpr = false) { // prevent checking the same node multiple times if (checkedNodes.has(node)) { - return false; + return; } checkedNodes.add(node); - // for logical operator, we also check its operands + // for logical operator, we check its operands if (node.type === experimental_utils_1.AST_NODE_TYPES.LogicalExpression && node.operator !== '??') { - let hasError = false; - if (checkNode(node.left)) { - hasError = true; - } - if (!options.ignoreRhs) { - if (checkNode(node.right)) { - hasError = true; - } - } - // if this logical operator is not the root of a logical expression - // we only check its operands and return - if (!isRoot) { - return hasError; - } - // if this is the root of a logical expression - // we want to check its resulting type too - else { - // ...unless there already was an error, we exit so we don't double-report - if (hasError) { - return true; - } + checkNode(node.left, isTestExpr); + // we ignore the right operand when not in a context of a test expression + if (isTestExpr) { + checkNode(node.right, isTestExpr); } + return; } const tsNode = service.esTreeNodeToTSNodeMap.get(node); const type = util.getConstrainedTypeAtLocation(checker, tsNode); - let messageId; const types = inspectVariantTypes(tsutils.unionTypeParts(type)); const is = (...wantedTypes) => types.size === wantedTypes.length && wantedTypes.every(type => types.has(type)); // boolean if (is('boolean')) { // boolean is always okay - return false; + return; } // never if (is('never')) { // never is always okay - return false; + return; } // nullish - else if (is('nullish')) { + if (is('nullish')) { // condition is always false - messageId = 'conditionErrorNullish'; + context.report({ node, messageId: 'conditionErrorNullish' }); + return; } // nullable boolean - else if (is('nullish', 'boolean')) { - if (!options.allowNullable) { - messageId = 'conditionErrorNullableBoolean'; + if (is('nullish', 'boolean')) { + if (!options.allowNullableBoolean) { + context.report({ node, messageId: 'conditionErrorNullableBoolean' }); } + return; } // string - else if (is('string')) { - messageId = 'conditionErrorString'; + if (is('string')) { + if (!options.allowString) { + context.report({ node, messageId: 'conditionErrorString' }); + } + return; } // nullable string - else if (is('nullish', 'string')) { - messageId = 'conditionErrorNullableString'; + if (is('nullish', 'string')) { + if (!options.allowNullableString) { + context.report({ node, messageId: 'conditionErrorNullableString' }); + } + return; } // number - else if (is('number')) { - messageId = 'conditionErrorNumber'; + if (is('number')) { + if (!options.allowNumber) { + context.report({ node, messageId: 'conditionErrorNumber' }); + } + return; } // nullable number - else if (is('nullish', 'number')) { - messageId = 'conditionErrorNullableNumber'; + if (is('nullish', 'number')) { + if (!options.allowNullableNumber) { + context.report({ node, messageId: 'conditionErrorNullableNumber' }); + } + return; } // object - else if (is('object')) { + if (is('object')) { // condition is always true - if (!options.allowSafe) { - messageId = 'conditionErrorObject'; - } + context.report({ node, messageId: 'conditionErrorObject' }); + return; } // nullable object - else if (is('nullish', 'object')) { - if (!options.allowSafe || !options.allowNullable) { - messageId = 'conditionErrorNullableObject'; - } - } - // boolean/object - else if (is('boolean', 'object')) { - if (!options.allowSafe) { - messageId = 'conditionErrorOther'; - } - } - // nullable boolean/object - else if (is('nullish', 'boolean', 'object')) { - if (!options.allowSafe || !options.allowNullable) { - messageId = 'conditionErrorOther'; + if (is('nullish', 'object')) { + if (!options.allowNullableObject) { + context.report({ node, messageId: 'conditionErrorNullableObject' }); } + return; } // any - else if (is('any')) { - messageId = 'conditionErrorAny'; + if (is('any')) { + if (!options.allowAny) { + context.report({ node, messageId: 'conditionErrorAny' }); + } + return; } // other - else { - messageId = 'conditionErrorOther'; - } - if (messageId != null) { - context.report({ node, messageId }); - return true; - } - return false; + context.report({ node, messageId: 'conditionErrorOther' }); } /** * Check union variants for the types we care about @@ -225,7 +237,7 @@ exports.default = util.createRule({ if (types.some(type => tsutils.isTypeFlagSet(type, ts.TypeFlags.StringLike))) { variantTypes.add('string'); } - if (types.some(type => tsutils.isTypeFlagSet(type, ts.TypeFlags.NumberLike))) { + if (types.some(type => tsutils.isTypeFlagSet(type, ts.TypeFlags.NumberLike | ts.TypeFlags.BigIntLike))) { variantTypes.add('number'); } if (types.some(type => !tsutils.isTypeFlagSet(type, ts.TypeFlags.Null | @@ -234,12 +246,13 @@ exports.default = util.createRule({ ts.TypeFlags.BooleanLike | ts.TypeFlags.StringLike | ts.TypeFlags.NumberLike | + ts.TypeFlags.BigIntLike | ts.TypeFlags.Any | ts.TypeFlags.Unknown | ts.TypeFlags.Never))) { variantTypes.add('object'); } - if (types.some(type => tsutils.isTypeFlagSet(type, ts.TypeFlags.Any | ts.TypeFlags.Unknown))) { + if (types.some(type => util.isTypeAnyType(type) || util.isTypeUnknownType(type))) { variantTypes.add('any'); } if (types.some(type => tsutils.isTypeFlagSet(type, ts.TypeFlags.Never))) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map index e07cb44a..0c4d8dfb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js.map @@ -1 +1 @@ -{"version":3,"file":"strict-boolean-expressions.js","sourceRoot":"","sources":["../../src/rules/strict-boolean-expressions.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"strict-boolean-expressions.js","sourceRoot":"","sources":["../../src/rules/strict-boolean-expressions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js index 3d927b4c..92ea5fa3 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js @@ -1,16 +1,27 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const ts = __importStar(require("typescript")); const util_1 = require("../util"); const tsutils_1 = require("tsutils"); -const eslint_utils_1 = require("eslint-utils"); exports.default = util_1.createRule({ name: 'switch-exhaustiveness-check', meta: { @@ -19,12 +30,13 @@ exports.default = util_1.createRule({ description: 'Exhaustiveness checking in switch with union type', category: 'Best Practices', recommended: false, + suggestion: true, requiresTypeChecking: true, }, schema: [], messages: { switchIsNotExhaustive: 'Switch is not exhaustive. Cases not matched: {{missingBranches}}', - addMissingCases: 'Add branches for missing cases', + addMissingCases: 'Add branches for missing cases.', }, }, defaultOptions: [], @@ -32,11 +44,27 @@ exports.default = util_1.createRule({ const sourceCode = context.getSourceCode(); const service = util_1.getParserServices(context); const checker = service.program.getTypeChecker(); + const compilerOptions = service.program.getCompilerOptions(); + function requiresQuoting(name) { + if (name.length === 0) { + return true; + } + if (!ts.isIdentifierStart(name.charCodeAt(0), compilerOptions.target)) { + return true; + } + for (let i = 1; i < name.length; i += 1) { + if (!ts.isIdentifierPart(name.charCodeAt(i), compilerOptions.target)) { + return true; + } + } + return false; + } function getNodeType(node) { const tsNode = service.esTreeNodeToTSNodeMap.get(node); return util_1.getConstrainedTypeAtLocation(checker, tsNode); } - function fixSwitch(fixer, node, missingBranchTypes) { + function fixSwitch(fixer, node, missingBranchTypes, symbolName) { + var _a; const lastCase = node.cases.length > 0 ? node.cases[node.cases.length - 1] : null; const caseIndent = lastCase ? ' '.repeat(lastCase.loc.start.column) @@ -58,7 +86,13 @@ exports.default = util_1.createRule({ if (missingBranchType.isIntersection()) { continue; } - const caseTest = checker.typeToString(missingBranchType); + const missingBranchName = (_a = missingBranchType.getSymbol()) === null || _a === void 0 ? void 0 : _a.escapedName; + let caseTest = checker.typeToString(missingBranchType); + if (symbolName && + (missingBranchName || missingBranchName === '') && + requiresQuoting(missingBranchName.toString())) { + caseTest = `${symbolName}['${missingBranchName}']`; + } const errorMessage = `Not implemented yet: ${caseTest} case`; missingCases.push(`case ${caseTest}: { throw new Error('${errorMessage}') }`); } @@ -69,12 +103,14 @@ exports.default = util_1.createRule({ return fixer.insertTextAfter(lastCase, `\n${fixString}`); } // there were no existing cases - const openingBrace = sourceCode.getTokenAfter(node.discriminant, eslint_utils_1.isOpeningBraceToken); - const closingBrace = sourceCode.getTokenAfter(node.discriminant, eslint_utils_1.isClosingBraceToken); + const openingBrace = sourceCode.getTokenAfter(node.discriminant, util_1.isOpeningBraceToken); + const closingBrace = sourceCode.getTokenAfter(node.discriminant, util_1.isClosingBraceToken); return fixer.replaceTextRange([openingBrace.range[0], closingBrace.range[1]], ['{', fixString, `${caseIndent}}`].join('\n')); } function checkSwitchExhaustive(node) { + var _a; const discriminantType = getNodeType(node.discriminant); + const symbolName = (_a = discriminantType.getSymbol()) === null || _a === void 0 ? void 0 : _a.escapedName; if (discriminantType.isUnion()) { const unionTypes = tsutils_1.unionTypeParts(discriminantType); const caseTypes = new Set(); @@ -95,16 +131,19 @@ exports.default = util_1.createRule({ messageId: 'switchIsNotExhaustive', data: { missingBranches: missingBranchTypes - .map(missingType => tsutils_1.isTypeFlagSet(missingType, ts.TypeFlags.ESSymbolLike) - ? `typeof ${missingType.symbol.escapedName}` - : checker.typeToString(missingType)) + .map(missingType => { + var _a; + return tsutils_1.isTypeFlagSet(missingType, ts.TypeFlags.ESSymbolLike) + ? `typeof ${(_a = missingType.getSymbol()) === null || _a === void 0 ? void 0 : _a.escapedName}` + : checker.typeToString(missingType); + }) .join(' | '), }, suggest: [ { messageId: 'addMissingCases', fix(fixer) { - return fixSwitch(fixer, node, missingBranchTypes); + return fixSwitch(fixer, node, missingBranchTypes, symbolName === null || symbolName === void 0 ? void 0 : symbolName.toString()); }, }, ], diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map index 0943b0fa..0a8b9daf 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js.map @@ -1 +1 @@ -{"version":3,"file":"switch-exhaustiveness-check.js","sourceRoot":"","sources":["../../src/rules/switch-exhaustiveness-check.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"switch-exhaustiveness-check.js","sourceRoot":"","sources":["../../src/rules/switch-exhaustiveness-check.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js index 45792ac3..943df2eb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map index 08e29db9..3efae8a3 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js.map @@ -1 +1 @@ -{"version":3,"file":"triple-slash-reference.js","sourceRoot":"","sources":["../../src/rules/triple-slash-reference.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAWhC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,wFAAwF;YAC1F,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,OAAO;SACrB;QACD,QAAQ,EAAE;YACR,oBAAoB,EAClB,iFAAiF;SACpF;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE;wBACH,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;qBAC1B;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;qBAC1B;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAC;qBAC3C;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,eAAe;SACvB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACpC,IAAI,WAA0B,CAAC;QAC/B,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,UAAU,GAGV,EAAE,CAAC;QAET,SAAS,oBAAoB,CAAC,MAAwB;YACpD,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAC7B,IAAI,SAAS,CAAC,UAAU,KAAK,MAAM,CAAC,KAAK,EAAE;oBACzC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,SAAS,CAAC,OAAO;wBACvB,SAAS,EAAE,sBAAsB;wBACjC,IAAI,EAAE;4BACJ,MAAM,EAAE,SAAS,CAAC,UAAU;yBAC7B;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO;YACL,iBAAiB,CAAC,IAAI;gBACpB,IAAI,WAAW,EAAE;oBACf,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACnC;YACH,CAAC;YACD,yBAAyB,CAAC,IAAI;gBAC5B,IAAI,WAAW,EAAE;oBACf,MAAM,MAAM,GAAI,IAAI,CAAC,eAAsD;yBACxE,UAA8B,CAAC;oBAClC,oBAAoB,CAAC,MAAM,CAAC,CAAC;iBAC9B;YACH,CAAC;YACD,OAAO,CAAC,IAAI;gBACV,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,IAAI,KAAK,IAAI,QAAQ,EAAE;oBAC9D,OAAO;iBACR;gBACD,WAAW,GAAG,IAAI,CAAC;gBACnB,MAAM,eAAe,GAAG,0DAA0D,CAAC;gBACnF,MAAM,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAEjE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC/B,IAAI,OAAO,CAAC,IAAI,KAAK,oCAAe,CAAC,IAAI,EAAE;wBACzC,OAAO;qBACR;oBACD,MAAM,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAE5D,IAAI,eAAe,EAAE;wBACnB,IACE,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,CAAC;4BACrD,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,CAAC;4BACnD,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,OAAO,CAAC,EACjD;4BACA,OAAO,CAAC,MAAM,CAAC;gCACb,IAAI,EAAE,OAAO;gCACb,SAAS,EAAE,sBAAsB;gCACjC,IAAI,EAAE;oCACJ,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;iCAC3B;6BACF,CAAC,CAAC;4BACH,OAAO;yBACR;wBACD,IAAI,eAAe,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,KAAK,KAAK,eAAe,EAAE;4BAC/D,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;yBAC9D;qBACF;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"triple-slash-reference.js","sourceRoot":"","sources":["../../src/rules/triple-slash-reference.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js index fda42920..fc017d7a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -18,23 +30,22 @@ const definition = { additionalProperties: false, }; function createRules(options) { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; - const globals = Object.assign(Object.assign({}, (((_a = options) === null || _a === void 0 ? void 0 : _a.before) !== undefined ? { before: options.before } : {})), (((_b = options) === null || _b === void 0 ? void 0 : _b.after) !== undefined ? { after: options.after } : {})); - const override = (_d = (_c = options) === null || _c === void 0 ? void 0 : _c.overrides, (_d !== null && _d !== void 0 ? _d : {})); - const colon = Object.assign(Object.assign({ before: false, after: true }, globals), (_e = override) === null || _e === void 0 ? void 0 : _e.colon); - const arrow = Object.assign(Object.assign({ before: true, after: true }, globals), (_f = override) === null || _f === void 0 ? void 0 : _f.arrow); + var _a; + const globals = Object.assign(Object.assign({}, ((options === null || options === void 0 ? void 0 : options.before) !== undefined ? { before: options.before } : {})), ((options === null || options === void 0 ? void 0 : options.after) !== undefined ? { after: options.after } : {})); + const override = (_a = options === null || options === void 0 ? void 0 : options.overrides) !== null && _a !== void 0 ? _a : {}; + const colon = Object.assign(Object.assign({ before: false, after: true }, globals), override === null || override === void 0 ? void 0 : override.colon); + const arrow = Object.assign(Object.assign({ before: true, after: true }, globals), override === null || override === void 0 ? void 0 : override.arrow); return { colon: colon, arrow: arrow, - variable: Object.assign(Object.assign({}, colon), (_g = override) === null || _g === void 0 ? void 0 : _g.variable), - property: Object.assign(Object.assign({}, colon), (_h = override) === null || _h === void 0 ? void 0 : _h.property), - parameter: Object.assign(Object.assign({}, colon), (_j = override) === null || _j === void 0 ? void 0 : _j.parameter), - returnType: Object.assign(Object.assign({}, colon), (_k = override) === null || _k === void 0 ? void 0 : _k.returnType), + variable: Object.assign(Object.assign({}, colon), override === null || override === void 0 ? void 0 : override.variable), + property: Object.assign(Object.assign({}, colon), override === null || override === void 0 ? void 0 : override.property), + parameter: Object.assign(Object.assign({}, colon), override === null || override === void 0 ? void 0 : override.parameter), + returnType: Object.assign(Object.assign({}, colon), override === null || override === void 0 ? void 0 : override.returnType), }; } function getIdentifierRules(rules, node) { - var _a; - const scope = (_a = node) === null || _a === void 0 ? void 0 : _a.parent; + const scope = node === null || node === void 0 ? void 0 : node.parent; if (util_1.isVariableDeclarator(scope)) { return rules.variable; } @@ -46,9 +57,9 @@ function getIdentifierRules(rules, node) { } } function getRules(rules, node) { - var _a, _b; - const scope = (_b = (_a = node) === null || _a === void 0 ? void 0 : _a.parent) === null || _b === void 0 ? void 0 : _b.parent; - if (util_1.isTSFunctionType(scope)) { + var _a; + const scope = (_a = node === null || node === void 0 ? void 0 : node.parent) === null || _a === void 0 ? void 0 : _a.parent; + if (util_1.isTSFunctionType(scope) || util_1.isTSConstructorType(scope)) { return rules.arrow; } else if (util_1.isIdentifier(scope)) { @@ -71,7 +82,7 @@ exports.default = util.createRule({ docs: { description: 'Require consistent spacing around type annotations', category: 'Stylistic Issues', - recommended: 'error', + recommended: false, }, fixable: 'whitespace', messages: { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map index 932308a0..fb008640 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js.map @@ -1 +1 @@ -{"version":3,"file":"type-annotation-spacing.js","sourceRoot":"","sources":["../../src/rules/type-annotation-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"type-annotation-spacing.js","sourceRoot":"","sources":["../../src/rules/type-annotation-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js index 6b42b035..fb4c63ca 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -18,8 +30,8 @@ exports.default = util.createRule({ recommended: false, }, messages: { - expectedTypedef: 'expected a type annotation', - expectedTypedefNamed: 'expected {{name}} to have a type annotation', + expectedTypedef: 'Expected a type annotation.', + expectedTypedefNamed: 'Expected {{name}} to have a type annotation.', }, schema: [ { @@ -40,10 +52,14 @@ exports.default = util.createRule({ }, defaultOptions: [ { - ["arrowParameter" /* ArrowParameter */]: true, - ["memberVariableDeclaration" /* MemberVariableDeclaration */]: true, - ["parameter" /* Parameter */]: true, - ["propertyDeclaration" /* PropertyDeclaration */]: true, + ["arrayDestructuring" /* ArrayDestructuring */]: false, + ["arrowParameter" /* ArrowParameter */]: false, + ["memberVariableDeclaration" /* MemberVariableDeclaration */]: false, + ["objectDestructuring" /* ObjectDestructuring */]: false, + ["parameter" /* Parameter */]: false, + ["propertyDeclaration" /* PropertyDeclaration */]: false, + ["variableDeclaration" /* VariableDeclaration */]: false, + ["variableDeclarationIgnoreFunction" /* VariableDeclarationIgnoreFunction */]: false, }, ], create(context, [options]) { @@ -107,6 +123,11 @@ exports.default = util.createRule({ } return { ArrayPattern(node) { + var _a; + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.RestElement && + node.parent.typeAnnotation) { + return; + } if (options["arrayDestructuring" /* ArrayDestructuring */] && !node.typeAnnotation && !isForOfStatementContext(node)) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map index a78b59cc..bc208083 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js.map @@ -1 +1 @@ -{"version":3,"file":"typedef.js","sourceRoot":"","sources":["../../src/rules/typedef.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"typedef.js","sourceRoot":"","sources":["../../src/rules/typedef.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js index 7d166b57..88777e02 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -75,6 +87,11 @@ const SUPPORTED_GLOBALS = [ 'Intl', ]; const nativelyBoundMembers = SUPPORTED_GLOBALS.map(namespace => { + if (!(namespace in global)) { + // node.js might not have namespaces like Intl depending on compilation options + // https://nodejs.org/api/intl.html#intl_options_for_building_node_js + return []; + } const object = global[namespace]; return Object.getOwnPropertyNames(object) .filter(name => !name.startsWith('_') && @@ -83,7 +100,7 @@ const nativelyBoundMembers = SUPPORTED_GLOBALS.map(namespace => { }) .reduce((arr, names) => arr.concat(names), []) .filter(name => !nativelyNotBoundMembers.has(name)); -const isMemberNotImported = (symbol, currentSourceFile) => { +const isNotImported = (symbol, currentSourceFile) => { const { valueDeclaration } = symbol; if (!valueDeclaration) { // working around https://github.com/microsoft/TypeScript/issues/31294 @@ -129,14 +146,14 @@ exports.default = util.createRule({ const checker = parserServices.program.getTypeChecker(); const currentSourceFile = parserServices.program.getSourceFile(context.getFilename()); return { - 'MemberExpression, OptionalMemberExpression'(node) { + MemberExpression(node) { if (isSafeUse(node)) { return; } const objectSymbol = checker.getSymbolAtLocation(parserServices.esTreeNodeToTSNodeMap.get(node.object)); if (objectSymbol && nativelyBoundMembers.includes(getMemberFullName(node)) && - isMemberNotImported(objectSymbol, currentSourceFile)) { + isNotImported(objectSymbol, currentSourceFile)) { return; } const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); @@ -148,16 +165,48 @@ exports.default = util.createRule({ }); } }, + 'VariableDeclarator, AssignmentExpression'(node) { + const [idNode, initNode] = node.type === experimental_utils_1.AST_NODE_TYPES.VariableDeclarator + ? [node.id, node.init] + : [node.left, node.right]; + if (initNode && idNode.type === experimental_utils_1.AST_NODE_TYPES.ObjectPattern) { + const tsNode = parserServices.esTreeNodeToTSNodeMap.get(initNode); + const rightSymbol = checker.getSymbolAtLocation(tsNode); + const initTypes = checker.getTypeAtLocation(tsNode); + const notImported = rightSymbol && isNotImported(rightSymbol, currentSourceFile); + idNode.properties.forEach(property => { + if (property.type === experimental_utils_1.AST_NODE_TYPES.Property && + property.key.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { + if (notImported && + util.isIdentifier(initNode) && + nativelyBoundMembers.includes(`${initNode.name}.${property.key.name}`)) { + return; + } + const symbol = initTypes.getProperty(property.key.name); + if (symbol && isDangerousMethod(symbol, ignoreStatic)) { + context.report({ + messageId: 'unbound', + node, + }); + } + } + }); + } + }, }; }, }); function isDangerousMethod(symbol, ignoreStatic) { + var _a; const { valueDeclaration } = symbol; if (!valueDeclaration) { // working around https://github.com/microsoft/TypeScript/issues/31294 return false; } switch (valueDeclaration.kind) { + case ts.SyntaxKind.PropertyDeclaration: + return (((_a = valueDeclaration.initializer) === null || _a === void 0 ? void 0 : _a.kind) === + ts.SyntaxKind.FunctionExpression); case ts.SyntaxKind.MethodDeclaration: case ts.SyntaxKind.MethodSignature: return !(ignoreStatic && @@ -166,28 +215,31 @@ function isDangerousMethod(symbol, ignoreStatic) { return false; } function isSafeUse(node) { - var _a; const parent = node.parent; - switch ((_a = parent) === null || _a === void 0 ? void 0 : _a.type) { + switch (parent === null || parent === void 0 ? void 0 : parent.type) { case experimental_utils_1.AST_NODE_TYPES.IfStatement: case experimental_utils_1.AST_NODE_TYPES.ForStatement: case experimental_utils_1.AST_NODE_TYPES.MemberExpression: - case experimental_utils_1.AST_NODE_TYPES.OptionalMemberExpression: case experimental_utils_1.AST_NODE_TYPES.SwitchStatement: case experimental_utils_1.AST_NODE_TYPES.UpdateExpression: case experimental_utils_1.AST_NODE_TYPES.WhileStatement: return true; case experimental_utils_1.AST_NODE_TYPES.CallExpression: - case experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression: return parent.callee === node; case experimental_utils_1.AST_NODE_TYPES.ConditionalExpression: return parent.test === node; case experimental_utils_1.AST_NODE_TYPES.TaggedTemplateExpression: return parent.tag === node; case experimental_utils_1.AST_NODE_TYPES.UnaryExpression: - return parent.operator === 'typeof'; + // the first case is safe for obvious + // reasons. The second one is also fine + // since we're returning something falsy + return ['typeof', '!', 'void', 'delete'].includes(parent.operator); case experimental_utils_1.AST_NODE_TYPES.BinaryExpression: return ['instanceof', '==', '!=', '===', '!=='].includes(parent.operator); + case experimental_utils_1.AST_NODE_TYPES.AssignmentExpression: + return parent.operator === '=' && node === parent.left; + case experimental_utils_1.AST_NODE_TYPES.ChainExpression: case experimental_utils_1.AST_NODE_TYPES.TSNonNullExpression: case experimental_utils_1.AST_NODE_TYPES.TSAsExpression: case experimental_utils_1.AST_NODE_TYPES.TSTypeAssertion: diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map index 81ceae77..a42745e4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js.map @@ -1 +1 @@ -{"version":3,"file":"unbound-method.js","sourceRoot":"","sources":["../../src/rules/unbound-method.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"unbound-method.js","sourceRoot":"","sources":["../../src/rules/unbound-method.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js index 1ce3a0cb..c20553a4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js @@ -1,9 +1,21 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); @@ -40,7 +52,6 @@ exports.default = util.createRule({ return `${overloads} can be combined into one signature`; } function addFailures(failures) { - var _a, _b; for (const failure of failures) { const { unify, only2 } = failure; switch (unify.kind) { @@ -58,8 +69,8 @@ exports.default = util.createRule({ messageId: 'singleParameterDifference', data: { failureStringStart: failureStringStart(lineOfOtherOverload), - type1: sourceCode.getText((_a = typeAnnotation0) === null || _a === void 0 ? void 0 : _a.typeAnnotation), - type2: sourceCode.getText((_b = typeAnnotation1) === null || _b === void 0 ? void 0 : _b.typeAnnotation), + type1: sourceCode.getText(typeAnnotation0 === null || typeAnnotation0 === void 0 ? void 0 : typeAnnotation0.typeAnnotation), + type2: sourceCode.getText(typeAnnotation1 === null || typeAnnotation1 === void 0 ? void 0 : typeAnnotation1.typeAnnotation), }, node: p1, }); @@ -301,7 +312,7 @@ exports.default = util.createRule({ currentScope = scopes.pop(); } function addOverload(signature, key, containingNode) { - key = (key !== null && key !== void 0 ? key : getOverloadKey(signature)); + key = key !== null && key !== void 0 ? key : getOverloadKey(signature); if (currentScope && (containingNode || signature).parent === currentScope.parent) { const overloads = currentScope.overloads.get(key); @@ -328,9 +339,9 @@ exports.default = util.createRule({ TSTypeLiteral: createScope, // collect overloads TSDeclareFunction(node) { - var _a, _b, _c; + var _a, _b; const exportingNode = getExportingNode(node); - addOverload(node, (_b = (_a = node.id) === null || _a === void 0 ? void 0 : _a.name, (_b !== null && _b !== void 0 ? _b : (_c = exportingNode) === null || _c === void 0 ? void 0 : _c.type)), exportingNode); + addOverload(node, (_b = (_a = node.id) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : exportingNode === null || exportingNode === void 0 ? void 0 : exportingNode.type, exportingNode); }, TSCallSignatureDeclaration: addOverload, TSConstructSignatureDeclaration: addOverload, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map index 395fdf6d..ce84d5ca 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js.map @@ -1 +1 @@ -{"version":3,"file":"unified-signatures.js","sourceRoot":"","sources":["../../src/rules/unified-signatures.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAiDhC,kBAAe,IAAI,CAAC,UAAU,CAAC;IAC7B,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,WAAW,EACT,2GAA2G;YAC7G,QAAQ,EAAE,WAAW;YACrB,oCAAoC;YACpC,WAAW,EAAE,KAAK;SACnB;QACD,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE;YACR,qBAAqB,EAAE,+CAA+C;YACtE,uBAAuB,EACrB,oDAAoD;YACtD,yBAAyB,EACvB,wDAAwD;SAC3D;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,wEAAwE;QACxE,UAAU;QACV,wEAAwE;QAExE,SAAS,kBAAkB,CAAC,SAAkB;YAC5C,wEAAwE;YACxE,MAAM,SAAS,GACb,SAAS,KAAK,SAAS;gBACrB,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,qCAAqC,SAAS,EAAE,CAAC;YACvD,OAAO,GAAG,SAAS,qCAAqC,CAAC;QAC3D,CAAC;QAED,SAAS,WAAW,CAAC,QAAmB;;YACtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;gBACjC,QAAQ,KAAK,CAAC,IAAI,EAAE;oBAClB,KAAK,6BAA6B,CAAC,CAAC;wBAClC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;wBACzB,MAAM,mBAAmB,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;wBAElE,MAAM,eAAe,GAAG,qBAAqB,CAAC,EAAE,CAAC;4BAC/C,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,cAAc;4BAC7B,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC;wBACtB,MAAM,eAAe,GAAG,qBAAqB,CAAC,EAAE,CAAC;4BAC/C,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,cAAc;4BAC7B,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC;wBAEtB,OAAO,CAAC,MAAM,CAAC;4BACb,GAAG,EAAE,EAAE,CAAC,GAAG;4BACX,SAAS,EAAE,2BAA2B;4BACtC,IAAI,EAAE;gCACJ,kBAAkB,EAAE,kBAAkB,CAAC,mBAAmB,CAAC;gCAC3D,KAAK,EAAE,UAAU,CAAC,OAAO,OAAC,eAAe,0CAAE,cAAc,CAAC;gCAC1D,KAAK,EAAE,UAAU,CAAC,OAAO,OAAC,eAAe,0CAAE,cAAc,CAAC;6BAC3D;4BACD,IAAI,EAAE,EAAE;yBACT,CAAC,CAAC;wBACH,MAAM;qBACP;oBACD,KAAK,iBAAiB,CAAC,CAAC;wBACtB,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;wBACjD,MAAM,mBAAmB,GAAG,KAAK;4BAC/B,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;wBAElC,OAAO,CAAC,MAAM,CAAC;4BACb,GAAG,EAAE,cAAc,CAAC,GAAG;4BACvB,SAAS,EACP,cAAc,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW;gCAChD,CAAC,CAAC,uBAAuB;gCACzB,CAAC,CAAC,yBAAyB;4BAC/B,IAAI,EAAE;gCACJ,kBAAkB,EAAE,kBAAkB,CAAC,mBAAmB,CAAC;6BAC5D;4BACD,IAAI,EAAE,cAAc;yBACrB,CAAC,CAAC;qBACJ;iBACF;aACF;QACH,CAAC;QAED,SAAS,cAAc,CACrB,UAAqC,EACrC,cAAoD;YAEpD,MAAM,MAAM,GAAc,EAAE,CAAC;YAC7B,MAAM,eAAe,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;YAC3D,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;gBAClC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC1B,MAAM,UAAU,GACb,SAAS,CAAC,CAAC,CAAsB,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC3D,MAAM,UAAU,GACb,SAAS,CAAC,CAAC,CAAsB,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;oBAE3D,MAAM,KAAK,GAAG,iBAAiB,CAC7B,UAAU,EACV,UAAU,EACV,eAAe,CAChB,CAAC;oBACF,IAAI,KAAK,KAAK,SAAS,EAAE;wBACvB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;iBACF;qBAAM;oBACL,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;wBAC9B,MAAM,UAAU,GAAI,CAAsB,CAAC,KAAK,IAAI,CAAC,CAAC;wBACtD,MAAM,UAAU,GAAI,CAAsB,CAAC,KAAK,IAAI,CAAC,CAAC;wBAEtD,MAAM,KAAK,GAAG,iBAAiB,CAC7B,UAAU,EACV,UAAU,EACV,eAAe,CAChB,CAAC;wBACF,IAAI,KAAK,KAAK,SAAS,EAAE;4BACvB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;yBACtC;oBACH,CAAC,CAAC,CAAC;iBACJ;aACF;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,SAAS,iBAAiB,CACxB,CAAsB,EACtB,CAAsB,EACtB,eAAgC;YAEhC,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,EAAE;gBAClD,OAAO,SAAS,CAAC;aAClB;YAED,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM;gBACxC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACvD,CAAC,CAAC,yCAAyC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,SAAS,sBAAsB,CAC7B,CAAsB,EACtB,CAAsB,EACtB,eAAgC;YAEhC,6BAA6B;YAE7B,MAAM,WAAW,GACf,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YACvE,MAAM,WAAW,GACf,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAEvE,OAAO,CACL,aAAa,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC;gBACzC,sCAAsC;gBACtC,+FAA+F;gBAC/F,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,sBAAsB,CAAC;gBACrE,0BAA0B,CAAC,CAAC,EAAE,eAAe,CAAC;oBAC5C,0BAA0B,CAAC,CAAC,EAAE,eAAe,CAAC,CACjD,CAAC;QACJ,CAAC;QAED,4FAA4F;QAC5F,SAAS,iCAAiC,CACxC,MAAqC,EACrC,MAAqC;YAErC,MAAM,KAAK,GAAG,yBAAyB,CACrC,MAAM,EACN,MAAM,EACN,kBAAkB,CACnB,CAAC;YACF,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,OAAO,SAAS,CAAC;aAClB;YAED,kFAAkF;YAClF,IACE,CAAC,IAAI,CAAC,cAAc,CAClB,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EACvB,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EACvB,kBAAkB,CACnB,EACD;gBACA,OAAO,SAAS,CAAC;aAClB;YAED,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,oGAAoG;YACpG,0DAA0D;YAC1D,OAAO,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC;gBACpC,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW;gBACrC,CAAC,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;gBACvD,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC;QAED;;;WAGG;QACH,SAAS,yCAAyC,CAChD,CAAsB,EACtB,CAAsB;YAEtB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;YACtB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;YAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACvD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACxD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAErD,mFAAmF;YACnF,sEAAsE;YACtE,+BAA+B;YAC/B,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;oBACrC,OAAO,SAAS,CAAC;iBAClB;aACF;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC;oBAClD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc;oBAChC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;gBACzB,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC;oBAClD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc;oBAChC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;gBAEzB,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,eAAe,CAAC,EAAE;oBACpD,OAAO,SAAS,CAAC;iBAClB;aACF;YAED,IACE,SAAS,GAAG,CAAC;gBACb,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW,EAC1D;gBACA,OAAO,SAAS,CAAC;aAClB;YAED,OAAO;gBACL,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;gBACzC,IAAI,EAAE,iBAAiB;gBACvB,cAAc,EAAE,UAAU;aAC3B,CAAC;QACJ,CAAC;QAED,mGAAmG;QACnG,SAAS,kBAAkB,CACzB,cAAoD;YAEpD,IAAI,cAAc,KAAK,SAAS,EAAE;gBAChC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAoB,CAAC;aACzC;YAED,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;YAC9B,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,MAAM,EAAE;gBACrC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACtB;YACD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAoB,CAAC;QAC5D,CAAC;QAED,wEAAwE;QACxE,SAAS,0BAA0B,CACjC,GAAwB,EACxB,eAAgC;YAEhC,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAqB,EAAE,EAAE,CAC/C,yBAAyB,CACvB,qBAAqB,CAAC,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc;gBAC5B,CAAC,CAAC,CAAC,CAAC,cAAc,CACrB,CACF,CAAC;YAEF,SAAS,yBAAyB,CAChC,IAAoD;gBAEpD,IAAI,CAAC,IAAI,EAAE;oBACT,OAAO,KAAK,CAAC;iBACd;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,EAAE;oBAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAC/B,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;wBAC5D,OAAO,IAAI,CAAC;qBACb;iBACF;gBAED,OAAO,yBAAyB,CAC7B,IAAkC,CAAC,cAAc;oBAC/C,IAA6B,CAAC,WAAW,CAC7C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,SAAS,qBAAqB,CAC5B,IAAmB;YAEnB,OAAO,CACJ,IAAqC,CAAC,IAAI;gBAC3C,mCAAc,CAAC,mBAAmB,CACnC,CAAC;QACJ,CAAC;QAED,SAAS,kBAAkB,CACzB,CAAqB,EACrB,CAAqB;YAErB,MAAM,eAAe,GAAG,qBAAqB,CAAC,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc;gBAC5B,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;YACrB,MAAM,eAAe,GAAG,qBAAqB,CAAC,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc;gBAC5B,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;YAErB,OAAO,CACL,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC/B,aAAa,CAAC,eAAe,EAAE,eAAe,CAAC,CAChD,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,SAAS,qBAAqB,CAAC,CAAqB;YAClD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ;gBACtB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEf,OAAO,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW,IAAI,QAAQ,CAAC;QAC3D,CAAC;QAED,oGAAoG;QACpG,SAAS,yBAAyB,CAChC,CAAqB,EACrB,CAAqB;YAErB,MAAM,SAAS,GAAG,qBAAqB,CAAC,CAAC,CAAC;gBACxC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ;gBACtB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACf,MAAM,SAAS,GAAG,qBAAqB,CAAC,CAAC,CAAC;gBACxC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ;gBACtB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEf,OAAO,CACL,CAAC,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW,CAAC;gBACrC,CAAC,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,WAAW,CAAC;gBACzC,CAAC,SAAS,KAAK,SAAS,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CACxD,CAAC;QACJ,CAAC;QAED,SAAS,sBAAsB,CAC7B,CAA2B,EAC3B,CAA2B;YAE3B,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI;gBAC3B,mBAAmB,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,CAChD,CAAC;QACJ,CAAC;QAED,SAAS,aAAa,CACpB,CAAwC,EACxC,CAAwC;YAExC,OAAO,CACL,CAAC,KAAK,CAAC;gBACP,CAAC,CAAC,KAAK,SAAS;oBACd,CAAC,KAAK,SAAS;oBACf,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;wBAClC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAC1C,CAAC;QACJ,CAAC;QAED,SAAS,mBAAmB,CAC1B,CAAgC,EAChC,CAAgC;YAEhC,OAAO,CACL,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CACrE,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,SAAS,yBAAyB,CAChC,CAAe,EACf,CAAe,EACf,KAAoB;YAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjD,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;oBACtB,OAAO,CAAC,CAAC;iBACV;aACF;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,2DAA2D;QAC3D,SAAS,WAAW,CAClB,MAAoB,EACpB,MAA4B;YAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACtC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9B;aACF;QACH,CAAC;QAQD,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,IAAI,YAAY,GAAU;YACxB,SAAS,EAAE,IAAI,GAAG,EAAE;SACrB,CAAC;QAEF,SAAS,WAAW,CAClB,MAAiB,EACjB,cAAoD;YAEpD,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1C,YAAY,GAAG;gBACb,SAAS,EAAE,IAAI,GAAG,EAAE;gBACpB,MAAM;gBACN,cAAc;aACf,CAAC;QACJ,CAAC;QAED,SAAS,UAAU;YACjB,MAAM,QAAQ,GAAG,cAAc,CAC7B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAC3C,YAAY,CAAC,cAAc,CAC5B,CAAC;YACF,WAAW,CAAC,QAAQ,CAAC,CAAC;YACtB,YAAY,GAAG,MAAM,CAAC,GAAG,EAAG,CAAC;QAC/B,CAAC;QAED,SAAS,WAAW,CAClB,SAAuB,EACvB,GAAY,EACZ,cAA+B;YAE/B,GAAG,IAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,cAAc,CAAC,SAAS,CAAC,CAAA,CAAC;YACvC,IACE,YAAY;gBACZ,CAAC,cAAc,IAAI,SAAS,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAC5D;gBACA,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAClD,IAAI,SAAS,KAAK,SAAS,EAAE;oBAC3B,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAC3B;qBAAM;oBACL,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;iBAC9C;aACF;QACH,CAAC;QAED,wEAAwE;QACxE,SAAS;QACT,wEAAwE;QAExE,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,aAAa,EAAE,WAAW;YAC1B,sBAAsB,CAAC,IAAI;gBACzB,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9C,CAAC;YACD,gBAAgB,CAAC,IAAI;gBACnB,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9C,CAAC;YACD,aAAa,EAAE,WAAW;YAE1B,oBAAoB;YACpB,iBAAiB,CAAC,IAAI;;gBACpB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAC7C,WAAW,CAAC,IAAI,cAAE,IAAI,CAAC,EAAE,0CAAE,IAAI,6CAAI,aAAa,0CAAE,IAAI,IAAE,aAAa,CAAC,CAAC;YACzE,CAAC;YACD,0BAA0B,EAAE,WAAW;YACvC,+BAA+B,EAAE,WAAW;YAC5C,iBAAiB,EAAE,WAAW;YAC9B,0BAA0B,CAAC,IAAI;gBAC7B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;oBACpB,WAAW,CAAC,IAAI,CAAC,CAAC;iBACnB;YACH,CAAC;YACD,gBAAgB,CAAC,IAAI;gBACnB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;oBACpB,WAAW,CAAC,IAAI,CAAC,CAAC;iBACnB;YACH,CAAC;YAED,kBAAkB;YAClB,cAAc,EAAE,UAAU;YAC1B,oBAAoB,EAAE,UAAU;YAChC,6BAA6B,EAAE,UAAU;YACzC,uBAAuB,EAAE,UAAU;YACnC,oBAAoB,EAAE,UAAU;SACjC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,gBAAgB,CACvB,IAAgC;IAKhC,OAAO,IAAI,CAAC,MAAM;QAChB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,sBAAsB;YACzD,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,wBAAwB,CAAC;QAC/D,CAAC,CAAC,IAAI,CAAC,MAAM;QACb,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,IAAkB;IACxC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAEnC,OAAO,CACL,CAAE,IAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACjD,CAAE,IAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/C,IAAI,CACL,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,IAAkB;IACzC,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,mCAAc,CAAC,+BAA+B;YACjD,OAAO,aAAa,CAAC;QACvB,KAAK,mCAAc,CAAC,0BAA0B;YAC5C,OAAO,IAAI,CAAC;QACd,OAAO,CAAC,CAAC;YACP,MAAM,EAAE,GAAG,EAAE,GAAG,IAAwB,CAAC;YAEzC,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,GAAwB,CAAC,GAAG,CAAC;SACrE;KACF;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAAmB;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,CAAC;AACjD,CAAC"} \ No newline at end of file +{"version":3,"file":"unified-signatures.js","sourceRoot":"","sources":["../../src/rules/unified-signatures.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js index 07fdb69e..249bf798 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js @@ -1,161 +1,15 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; Object.defineProperty(exports, "__esModule", { value: true }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const LINEBREAK_MATCHER = /\r\n|[\r\n\u2028\u2029]/; -exports.LINEBREAK_MATCHER = LINEBREAK_MATCHER; -function isOptionalChainPunctuator(token) { - return token.type === experimental_utils_1.AST_TOKEN_TYPES.Punctuator && token.value === '?.'; -} -exports.isOptionalChainPunctuator = isOptionalChainPunctuator; -function isNotOptionalChainPunctuator(token) { - return !isOptionalChainPunctuator(token); -} -exports.isNotOptionalChainPunctuator = isNotOptionalChainPunctuator; -function isNonNullAssertionPunctuator(token) { - return token.type === experimental_utils_1.AST_TOKEN_TYPES.Punctuator && token.value === '!'; -} -exports.isNonNullAssertionPunctuator = isNonNullAssertionPunctuator; -function isNotNonNullAssertionPunctuator(token) { - return !isNonNullAssertionPunctuator(token); -} -exports.isNotNonNullAssertionPunctuator = isNotNonNullAssertionPunctuator; -/** - * Returns true if and only if the node represents: foo?.() or foo.bar?.() - */ -function isOptionalOptionalChain(node) { - return (node.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression && - // this flag means the call expression itself is option - // i.e. it is foo.bar?.() and not foo?.bar() - node.optional); -} -exports.isOptionalOptionalChain = isOptionalOptionalChain; -/** - * Returns true if and only if the node represents logical OR - */ -function isLogicalOrOperator(node) { - return (node.type === experimental_utils_1.AST_NODE_TYPES.LogicalExpression && node.operator === '||'); -} -exports.isLogicalOrOperator = isLogicalOrOperator; -/** - * Determines whether two adjacent tokens are on the same line - */ -function isTokenOnSameLine(left, right) { - return left.loc.end.line === right.loc.start.line; -} -exports.isTokenOnSameLine = isTokenOnSameLine; -/** - * Checks if a node is a type assertion: - * ``` - * x as foo - * x - * ``` - */ -function isTypeAssertion(node) { - if (!node) { - return false; - } - return (node.type === experimental_utils_1.AST_NODE_TYPES.TSAsExpression || - node.type === experimental_utils_1.AST_NODE_TYPES.TSTypeAssertion); -} -exports.isTypeAssertion = isTypeAssertion; -function isVariableDeclarator(node) { - var _a; - return ((_a = node) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.VariableDeclarator; -} -exports.isVariableDeclarator = isVariableDeclarator; -function isFunction(node) { - if (!node) { - return false; - } - return [ - experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression, - experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration, - experimental_utils_1.AST_NODE_TYPES.FunctionExpression, - ].includes(node.type); -} -exports.isFunction = isFunction; -function isFunctionType(node) { - if (!node) { - return false; - } - return [ - experimental_utils_1.AST_NODE_TYPES.TSCallSignatureDeclaration, - experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration, - experimental_utils_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression, - experimental_utils_1.AST_NODE_TYPES.TSFunctionType, - experimental_utils_1.AST_NODE_TYPES.TSMethodSignature, - ].includes(node.type); -} -exports.isFunctionType = isFunctionType; -function isFunctionOrFunctionType(node) { - return isFunction(node) || isFunctionType(node); -} -exports.isFunctionOrFunctionType = isFunctionOrFunctionType; -function isTSFunctionType(node) { - var _a; - return ((_a = node) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSFunctionType; -} -exports.isTSFunctionType = isTSFunctionType; -function isClassOrTypeElement(node) { - if (!node) { - return false; - } - return [ - // ClassElement - experimental_utils_1.AST_NODE_TYPES.ClassProperty, - experimental_utils_1.AST_NODE_TYPES.FunctionExpression, - experimental_utils_1.AST_NODE_TYPES.MethodDefinition, - experimental_utils_1.AST_NODE_TYPES.TSAbstractClassProperty, - experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition, - experimental_utils_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression, - experimental_utils_1.AST_NODE_TYPES.TSIndexSignature, - // TypeElement - experimental_utils_1.AST_NODE_TYPES.TSCallSignatureDeclaration, - experimental_utils_1.AST_NODE_TYPES.TSConstructSignatureDeclaration, - // AST_NODE_TYPES.TSIndexSignature, - experimental_utils_1.AST_NODE_TYPES.TSMethodSignature, - experimental_utils_1.AST_NODE_TYPES.TSPropertySignature, - ].includes(node.type); -} -exports.isClassOrTypeElement = isClassOrTypeElement; -/** - * Checks if a node is a constructor method. - */ -function isConstructor(node) { - var _a; - return (((_a = node) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && - node.kind === 'constructor'); -} -exports.isConstructor = isConstructor; -/** - * Checks if a node is a setter method. - */ -function isSetter(node) { - return (!!node && - (node.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition || - node.type === experimental_utils_1.AST_NODE_TYPES.Property) && - node.kind === 'set'); -} -exports.isSetter = isSetter; -function isIdentifier(node) { - var _a; - return ((_a = node) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.Identifier; -} -exports.isIdentifier = isIdentifier; -/** - * Checks if a node represents an `await …` expression. - */ -function isAwaitExpression(node) { - var _a; - return ((_a = node) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.AwaitExpression; -} -exports.isAwaitExpression = isAwaitExpression; -/** - * Checks if a possible token is the `await` keyword. - */ -function isAwaitKeyword(node) { - var _a; - return ((_a = node) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_TOKEN_TYPES.Identifier && node.value === 'await'; -} -exports.isAwaitKeyword = isAwaitKeyword; +// deeply re-export, for convenience +__exportStar(require("@typescript-eslint/experimental-utils/dist/ast-utils"), exports); //# sourceMappingURL=astUtils.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map index a2030392..872e04e4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map @@ -1 +1 @@ -{"version":3,"file":"astUtils.js","sourceRoot":"","sources":["../../src/util/astUtils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"astUtils.js","sourceRoot":"","sources":["../../src/util/astUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAoC;AACpC,uFAAqE"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js index fc86af01..b7066ab4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createRule = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); // note - cannot migrate this to an import statement because it will make TSC copy the package.json to the dist folder const version = require('../../package.json').version; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map index 1bbd1398..768d51b0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js.map @@ -1 +1 @@ -{"version":3,"file":"createRule.js","sourceRoot":"","sources":["../../src/util/createRule.ts"],"names":[],"mappings":";;AAAA,8EAAoE;AAEpE,sHAAsH;AACtH,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;AAEzC,QAAA,UAAU,GAAG,gCAAW,CAAC,WAAW,CAC/C,IAAI,CAAC,EAAE,CACL,gEAAgE,OAAO,sCAAsC,IAAI,KAAK,CACzH,CAAC"} \ No newline at end of file +{"version":3,"file":"createRule.js","sourceRoot":"","sources":["../../src/util/createRule.ts"],"names":[],"mappings":";;;AAAA,8EAAoE;AAEpE,sHAAsH;AACtH,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;AAEzC,QAAA,UAAU,GAAG,gCAAW,CAAC,WAAW,CAC/C,IAAI,CAAC,EAAE,CACL,gEAAgE,OAAO,sCAAsC,IAAI,KAAK,CACzH,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js index f6835a16..ad102492 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isTypedFunctionExpression = exports.doesImmediatelyReturnFunctionExpression = exports.checkFunctionReturnType = exports.checkFunctionExpressionReturnType = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const astUtils_1 = require("./astUtils"); const nullThrows_1 = require("./nullThrows"); @@ -132,6 +133,7 @@ function doesImmediatelyReturnFunctionExpression({ body, }) { return (body.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression || body.type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression); } +exports.doesImmediatelyReturnFunctionExpression = doesImmediatelyReturnFunctionExpression; /** * Checks if a node belongs to: * ``` @@ -139,8 +141,7 @@ function doesImmediatelyReturnFunctionExpression({ body, }) { * ``` */ function isFunctionArgument(parent, callee) { - return ((parent.type === experimental_utils_1.AST_NODE_TYPES.CallExpression || - parent.type === experimental_utils_1.AST_NODE_TYPES.OptionalCallExpression) && + return (parent.type === experimental_utils_1.AST_NODE_TYPES.CallExpression && // make sure this isn't an IIFE parent.callee !== callee); } @@ -165,19 +166,8 @@ function returnsConstAssertionDirectly(node) { return false; } /** - * Checks if a function declaration/expression has a return type. + * True when the provided function expression is typed. */ -function checkFunctionReturnType(node, options, sourceCode, report) { - if (options.allowHigherOrderFunctions && - doesImmediatelyReturnFunctionExpression(node)) { - return; - } - if (node.returnType || astUtils_1.isConstructor(node.parent) || astUtils_1.isSetter(node.parent)) { - return; - } - report(getReporLoc(node, sourceCode)); -} -exports.checkFunctionReturnType = checkFunctionReturnType; function isTypedFunctionExpression(node, options) { const parent = nullThrows_1.nullThrows(node.parent, nullThrows_1.NullThrowsReasons.MissingParent); if (!options.allowTypedFunctionExpressions) { @@ -192,11 +182,12 @@ function isTypedFunctionExpression(node, options) { } exports.isTypedFunctionExpression = isTypedFunctionExpression; /** - * Checks if a function declaration/expression has a return type. + * Check whether the function expression return type is either typed or valid + * with the provided options. */ -function checkFunctionExpressionReturnType(node, options, sourceCode, report) { +function isValidFunctionExpressionReturnType(node, options) { if (isTypedFunctionExpression(node, options)) { - return; + return true; } const parent = nullThrows_1.nullThrows(node.parent, nullThrows_1.NullThrowsReasons.MissingParent); if (options.allowExpressions && @@ -204,12 +195,44 @@ function checkFunctionExpressionReturnType(node, options, sourceCode, report) { parent.type !== experimental_utils_1.AST_NODE_TYPES.MethodDefinition && parent.type !== experimental_utils_1.AST_NODE_TYPES.ExportDefaultDeclaration && parent.type !== experimental_utils_1.AST_NODE_TYPES.ClassProperty) { - return; + return true; } // https://github.com/typescript-eslint/typescript-eslint/issues/653 if (options.allowDirectConstAssertionInArrowFunctions && node.type === experimental_utils_1.AST_NODE_TYPES.ArrowFunctionExpression && returnsConstAssertionDirectly(node)) { + return true; + } + return false; +} +/** + * Check that the function expression or declaration is valid. + */ +function isValidFunctionReturnType(node, options) { + if (options.allowHigherOrderFunctions && + doesImmediatelyReturnFunctionExpression(node)) { + return true; + } + if (node.returnType || astUtils_1.isConstructor(node.parent) || astUtils_1.isSetter(node.parent)) { + return true; + } + return false; +} +/** + * Checks if a function declaration/expression has a return type. + */ +function checkFunctionReturnType(node, options, sourceCode, report) { + if (isValidFunctionReturnType(node, options)) { + return; + } + report(getReporLoc(node, sourceCode)); +} +exports.checkFunctionReturnType = checkFunctionReturnType; +/** + * Checks if a function declaration/expression has a return type. + */ +function checkFunctionExpressionReturnType(node, options, sourceCode, report) { + if (isValidFunctionExpressionReturnType(node, options)) { return; } checkFunctionReturnType(node, options, sourceCode, report); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map index d89a5d44..1dbb920a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js.map @@ -1 +1 @@ -{"version":3,"file":"explicitReturnTypeUtils.js","sourceRoot":"","sources":["../../src/util/explicitReturnTypeUtils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"explicitReturnTypeUtils.js","sourceRoot":"","sources":["../../src/util/explicitReturnTypeUtils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js index ef8976d6..c625d729 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js @@ -1,15 +1,25 @@ "use strict"; -function __export(m) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getParserServices = exports.isObjectNotArray = exports.deepMerge = exports.applyDefault = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -__export(require("./astUtils")); -__export(require("./createRule")); -__export(require("./isTypeReadonly")); -__export(require("./misc")); -__export(require("./nullThrows")); -__export(require("./types")); +__exportStar(require("./astUtils"), exports); +__exportStar(require("./createRule"), exports); +__exportStar(require("./isTypeReadonly"), exports); +__exportStar(require("./misc"), exports); +__exportStar(require("./nullThrows"), exports); +__exportStar(require("./objectIterators"), exports); +__exportStar(require("./propertyTypes"), exports); +__exportStar(require("./types"), exports); // this is done for convenience - saves migrating all of the old rules const { applyDefault, deepMerge, isObjectNotArray, getParserServices, } = experimental_utils_1.ESLintUtils; exports.applyDefault = applyDefault; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map index 8079e78e..b29dfed9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":";;;;;AAAA,8EAAoE;AAEpE,gCAA2B;AAC3B,kCAA6B;AAC7B,sCAAiC;AACjC,4BAAuB;AACvB,kCAA6B;AAC7B,6BAAwB;AAExB,sEAAsE;AACtE,MAAM,EACJ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,iBAAiB,GAClB,GAAG,gCAAW,CAAC;AACP,oCAAY;AAAE,8BAAS;AAAE,4CAAgB;AAAE,8CAAiB"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8EAAoE;AAEpE,6CAA2B;AAC3B,+CAA6B;AAC7B,mDAAiC;AACjC,yCAAuB;AACvB,+CAA6B;AAC7B,oDAAkC;AAClC,kDAAgC;AAChC,0CAAwB;AAExB,sEAAsE;AACtE,MAAM,EACJ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,iBAAiB,GAClB,GAAG,gCAAW,CAAC;AAOd,oCAAY;AACZ,8BAAS;AACT,4CAAgB;AAChB,8CAAiB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js index 840a5a52..78f5f462 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js @@ -1,72 +1,76 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isTypeReadonly = void 0; const tsutils_1 = require("tsutils"); const ts = __importStar(require("typescript")); const _1 = require("."); -/** - * Returns: - * - null if the type is not an array or tuple, - * - true if the type is a readonly array or readonly tuple, - * - false if the type is a mutable array or mutable tuple. - */ -function isTypeReadonlyArrayOrTuple(checker, type) { +function isTypeReadonlyArrayOrTuple(checker, type, seenTypes) { function checkTypeArguments(arrayType) { const typeArguments = checker.getTypeArguments(arrayType); + // this shouldn't happen in reality as: + // - tuples require at least 1 type argument + // - ReadonlyArray requires at least 1 type argument /* istanbul ignore if */ if (typeArguments.length === 0) { - // this shouldn't happen in reality as: - // - tuples require at least 1 type argument - // - ReadonlyArray requires at least 1 type argument - return true; + return 3 /* Readonly */; } // validate the element types are also readonly - if (typeArguments.some(typeArg => !isTypeReadonly(checker, typeArg))) { - return false; + if (typeArguments.some(typeArg => isTypeReadonlyRecurser(checker, typeArg, seenTypes) === + 2 /* Mutable */)) { + return 2 /* Mutable */; } - return true; + return 3 /* Readonly */; } if (checker.isArrayType(type)) { const symbol = _1.nullThrows(type.getSymbol(), _1.NullThrowsReasons.MissingToken('symbol', 'array type')); const escapedName = symbol.getEscapedName(); - if (escapedName === 'Array' && escapedName !== 'ReadonlyArray') { - return false; + if (escapedName === 'Array') { + return 2 /* Mutable */; } return checkTypeArguments(type); } if (checker.isTupleType(type)) { if (!type.target.readonly) { - return false; + return 2 /* Mutable */; } return checkTypeArguments(type); } - return null; + return 1 /* UnknownType */; } -/** - * Returns: - * - null if the type is not an object, - * - true if the type is an object with only readonly props, - * - false if the type is an object with at least one mutable prop. - */ -function isTypeReadonlyObject(checker, type) { +function isTypeReadonlyObject(checker, type, seenTypes) { function checkIndexSignature(kind) { const indexInfo = checker.getIndexInfoOfType(type, kind); if (indexInfo) { - return indexInfo.isReadonly ? true : false; + return indexInfo.isReadonly + ? 3 /* Readonly */ + : 2 /* Mutable */; } - return null; + return 1 /* UnknownType */; } const properties = type.getProperties(); if (properties.length) { // ensure the properties are marked as readonly for (const property of properties) { if (!tsutils_1.isPropertyReadonlyInType(type, property.getEscapedName(), checker)) { - return false; + return 2 /* Mutable */; } } // all properties were readonly @@ -75,49 +79,62 @@ function isTypeReadonlyObject(checker, type) { // as we might be able to bail out early due to a mutable property before // doing this deep, potentially expensive check. for (const property of properties) { - const propertyType = _1.nullThrows(checker.getTypeOfPropertyOfType(type, property.getName()), _1.NullThrowsReasons.MissingToken(`property "${property.name}"`, 'type')); - if (!isTypeReadonly(checker, propertyType)) { - return false; + const propertyType = _1.nullThrows(_1.getTypeOfPropertyOfType(checker, type, property), _1.NullThrowsReasons.MissingToken(`property "${property.name}"`, 'type')); + // handle recursive types. + // we only need this simple check, because a mutable recursive type will break via the above prop readonly check + if (seenTypes.has(propertyType)) { + continue; + } + if (isTypeReadonlyRecurser(checker, propertyType, seenTypes) === + 2 /* Mutable */) { + return 2 /* Mutable */; } } } const isStringIndexSigReadonly = checkIndexSignature(ts.IndexKind.String); - if (isStringIndexSigReadonly === false) { + if (isStringIndexSigReadonly === 2 /* Mutable */) { return isStringIndexSigReadonly; } const isNumberIndexSigReadonly = checkIndexSignature(ts.IndexKind.Number); - if (isNumberIndexSigReadonly === false) { + if (isNumberIndexSigReadonly === 2 /* Mutable */) { return isNumberIndexSigReadonly; } - return true; + return 3 /* Readonly */; +} +// a helper function to ensure the seenTypes map is always passed down, except by the external caller +function isTypeReadonlyRecurser(checker, type, seenTypes) { + seenTypes.add(type); + if (tsutils_1.isUnionType(type)) { + // all types in the union must be readonly + const result = tsutils_1.unionTypeParts(type).every(t => isTypeReadonlyRecurser(checker, t, seenTypes)); + const readonlyness = result ? 3 /* Readonly */ : 2 /* Mutable */; + return readonlyness; + } + // all non-object, non-intersection types are readonly. + // this should only be primitive types + if (!tsutils_1.isObjectType(type) && !tsutils_1.isUnionOrIntersectionType(type)) { + return 3 /* Readonly */; + } + // pure function types are readonly + if (type.getCallSignatures().length > 0 && + type.getProperties().length === 0) { + return 3 /* Readonly */; + } + const isReadonlyArray = isTypeReadonlyArrayOrTuple(checker, type, seenTypes); + if (isReadonlyArray !== 1 /* UnknownType */) { + return isReadonlyArray; + } + const isReadonlyObject = isTypeReadonlyObject(checker, type, seenTypes); + /* istanbul ignore else */ if (isReadonlyObject !== 1 /* UnknownType */) { + return isReadonlyObject; + } + throw new Error('Unhandled type'); } /** * Checks if the given type is readonly */ function isTypeReadonly(checker, type) { - if (tsutils_1.isUnionType(type)) { - // all types in the union must be readonly - return tsutils_1.unionTypeParts(type).every(t => isTypeReadonly(checker, t)); - } - // all non-object, non-intersection types are readonly. - // this should only be primitive types - if (!tsutils_1.isObjectType(type) && !tsutils_1.isUnionOrIntersectionType(type)) { - return true; - } - // pure function types are readonly - if (type.getCallSignatures().length > 0 && - type.getProperties().length === 0) { - return true; - } - const isReadonlyArray = isTypeReadonlyArrayOrTuple(checker, type); - if (isReadonlyArray !== null) { - return isReadonlyArray; - } - const isReadonlyObject = isTypeReadonlyObject(checker, type); - /* istanbul ignore else */ if (isReadonlyObject !== null) { - return isReadonlyObject; - } - throw new Error('Unhandled type'); + return (isTypeReadonlyRecurser(checker, type, new Set()) === 3 /* Readonly */); } exports.isTypeReadonly = isTypeReadonly; //# sourceMappingURL=isTypeReadonly.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js.map index ec3a1cc5..7cfab62d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeReadonly.js.map @@ -1 +1 @@ -{"version":3,"file":"isTypeReadonly.js","sourceRoot":"","sources":["../../src/util/isTypeReadonly.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"isTypeReadonly.js","sourceRoot":"","sources":["../../src/util/isTypeReadonly.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js index d8784167..0cb96ca5 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js @@ -3,6 +3,7 @@ * @fileoverview Really small utility functions that didn't deserve their own files */ Object.defineProperty(exports, "__esModule", { value: true }); +exports.upperCaseFirst = exports.isDefinitionFile = exports.getNameFromMember = exports.getNameFromIndexSignature = exports.getEnumNames = exports.findFirstResult = exports.arraysAreEqual = void 0; const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); /** * Check if the context file name is *.d.ts or *.d.tsx diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map index db3bfb42..c3a0e480 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js.map @@ -1 +1 @@ -{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../src/util/misc.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAEH,8EAI+C;AAE/C;;GAEG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC;AA8HC,4CAAgB;AA5HlB;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAyHC,wCAAc;AA1FhB,SAAS,cAAc,CACrB,CAAkB,EAClB,CAAkB,EAClB,EAA2B;IAE3B,OAAO,CACL,CAAC,KAAK,CAAC;QACP,CAAC,CAAC,KAAK,SAAS;YACd,CAAC,KAAK,SAAS;YACf,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YACrB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACtC,CAAC;AACJ,CAAC;AAoEC,wCAAc;AAlEhB,gDAAgD;AAChD,SAAS,eAAe,CACtB,MAAW,EACX,SAAkC;IAElC,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE;QAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,MAAM,CAAC;SACf;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAyDC,0CAAe;AAvDjB;;GAEG;AACH,SAAgB,yBAAyB,CACvC,IAA+B;IAE/B,MAAM,QAAQ,GAAsC,IAAI,CAAC,UAAU,CAAC,IAAI,CACtE,CAAC,SAA6B,EAAoC,EAAE,CAClE,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,CAC/C,CAAC;IACF,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;AACxD,CAAC;AARD,8DAQC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACxB,MAOgC,EAChC,UAA+B;IAE/B,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,EAAE;QACjD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;KACxB;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;QAC9C,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;KAC9B;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAqBC,8CAAiB;AAVnB,SAAS,YAAY,CAAmB,MAA0B;IAChE,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;AACpE,CAAC;AAOC,oCAAY"} \ No newline at end of file +{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../src/util/misc.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,8EAI+C;AAE/C;;GAEG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;AAC5C,CAAC;AAiGC,4CAAgB;AA/FlB;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AA4FC,wCAAc;AAvFhB,SAAS,cAAc,CACrB,CAAkB,EAClB,CAAkB,EAClB,EAA2B;IAE3B,OAAO,CACL,CAAC,KAAK,CAAC;QACP,CAAC,CAAC,KAAK,SAAS;YACd,CAAC,KAAK,SAAS;YACf,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YACrB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACtC,CAAC;AACJ,CAAC;AAkEC,wCAAc;AAhEhB,gDAAgD;AAChD,SAAS,eAAe,CACtB,MAAW,EACX,SAAkC;IAElC,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE;QAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,MAAM,CAAC;SACf;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAuDC,0CAAe;AArDjB;;GAEG;AACH,SAAS,yBAAyB,CAAC,IAA+B;IAChE,MAAM,QAAQ,GAAsC,IAAI,CAAC,UAAU,CAAC,IAAI,CACtE,CAAC,SAA6B,EAAoC,EAAE,CAClE,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,CAC/C,CAAC;IACF,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;AACxD,CAAC;AA8CC,8DAAyB;AA5C3B;;;GAGG;AACH,SAAS,iBAAiB,CACxB,MAOgC,EAChC,UAA+B;IAE/B,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,mCAAc,CAAC,UAAU,EAAE;QACjD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;KACxB;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,mCAAc,CAAC,OAAO,EAAE;QAC9C,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;KAC9B;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAsBC,8CAAiB;AAXnB,SAAS,YAAY,CAAmB,MAA0B;IAChE,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;AACpE,CAAC;AAOC,oCAAY"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js index ff9eb730..e5507a2e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.NullThrowsReasons = exports.nullThrows = void 0; /** * A set of common reasons for calling nullThrows */ diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js.map index 60ddf86f..acc485af 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/nullThrows.js.map @@ -1 +1 @@ -{"version":3,"file":"nullThrows.js","sourceRoot":"","sources":["../../src/util/nullThrows.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH,MAAM,iBAAiB,GAAG;IACxB,aAAa,EAAE,iCAAiC;IAChD,YAAY,EAAE,CAAC,KAAa,EAAE,KAAa,EAAE,EAAE,CAC7C,sBAAsB,KAAK,YAAY,KAAK,GAAG;CACzC,CAAC;AAoBU,8CAAiB;AAlBtC;;;GAGG;AACH,SAAS,UAAU,CAAI,KAA2B,EAAE,OAAe;IACjE,oEAAoE;IACpE,4DAA4D;IAC5D,sEAAsE;IAEtE,oCAAoC;IACpC,wBAAwB;IACxB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;QACzC,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;KAC1D;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAEQ,gCAAU"} \ No newline at end of file +{"version":3,"file":"nullThrows.js","sourceRoot":"","sources":["../../src/util/nullThrows.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAM,iBAAiB,GAAG;IACxB,aAAa,EAAE,iCAAiC;IAChD,YAAY,EAAE,CAAC,KAAa,EAAE,KAAa,EAAE,EAAE,CAC7C,sBAAsB,KAAK,YAAY,KAAK,GAAG;CACzC,CAAC;AAoBU,8CAAiB;AAlBtC;;;GAGG;AACH,SAAS,UAAU,CAAI,KAA2B,EAAE,OAAe;IACjE,oEAAoE;IACpE,4DAA4D;IAC5D,sEAAsE;IAEtE,oCAAoC;IACpC,wBAAwB;IACxB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;QACzC,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;KAC1D;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAEQ,gCAAU"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js new file mode 100644 index 00000000..16f73364 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.objectReduceKey = exports.objectMapKey = exports.objectForEachKey = void 0; +function objectForEachKey(obj, callback) { + const keys = Object.keys(obj); + for (const key of keys) { + callback(key); + } +} +exports.objectForEachKey = objectForEachKey; +function objectMapKey(obj, callback) { + const values = []; + objectForEachKey(obj, key => { + values.push(callback(key)); + }); + return values; +} +exports.objectMapKey = objectMapKey; +function objectReduceKey(obj, callback, initial) { + let accumulator = initial; + objectForEachKey(obj, key => { + accumulator = callback(accumulator, key); + }); + return accumulator; +} +exports.objectReduceKey = objectReduceKey; +//# sourceMappingURL=objectIterators.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js.map new file mode 100644 index 00000000..82a35bf9 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js.map @@ -0,0 +1 @@ +{"version":3,"file":"objectIterators.js","sourceRoot":"","sources":["../../src/util/objectIterators.ts"],"names":[],"mappings":";;;AAAA,SAAS,gBAAgB,CACvB,GAAM,EACN,QAAgC;IAEhC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,QAAQ,CAAC,GAAG,CAAC,CAAC;KACf;AACH,CAAC;AAyBQ,4CAAgB;AAvBzB,SAAS,YAAY,CACnB,GAAM,EACN,QAAmC;IAEnC,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;QAC1B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAc0B,oCAAY;AAZvC,SAAS,eAAe,CACtB,GAAM,EACN,QAA2D,EAC3D,OAAqB;IAErB,IAAI,WAAW,GAAG,OAAO,CAAC;IAC1B,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;QAC1B,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IACH,OAAO,WAAW,CAAC;AACrB,CAAC;AAEwC,0CAAe"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/propertyTypes.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/propertyTypes.js new file mode 100644 index 00000000..6470d8f4 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/propertyTypes.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.getTypeOfPropertyOfType = exports.getTypeOfPropertyOfName = void 0; +function getTypeOfPropertyOfName(checker, type, name, escapedName) { + // Most names are directly usable in the checker and aren't different from escaped names + if (!escapedName || !name.startsWith('__')) { + return checker.getTypeOfPropertyOfType(type, name); + } + // Symbolic names may differ in their escaped name compared to their human-readable name + // https://github.com/typescript-eslint/typescript-eslint/issues/2143 + const escapedProperty = type + .getProperties() + .find(property => property.escapedName === escapedName); + return escapedProperty + ? checker.getDeclaredTypeOfSymbol(escapedProperty) + : undefined; +} +exports.getTypeOfPropertyOfName = getTypeOfPropertyOfName; +function getTypeOfPropertyOfType(checker, type, property) { + return getTypeOfPropertyOfName(checker, type, property.getName(), property.getEscapedName()); +} +exports.getTypeOfPropertyOfType = getTypeOfPropertyOfType; +//# sourceMappingURL=propertyTypes.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/propertyTypes.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/propertyTypes.js.map new file mode 100644 index 00000000..06e4a077 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/propertyTypes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"propertyTypes.js","sourceRoot":"","sources":["../../src/util/propertyTypes.ts"],"names":[],"mappings":";;;AAEA,SAAgB,uBAAuB,CACrC,OAAuB,EACvB,IAAa,EACb,IAAY,EACZ,WAAyB;IAEzB,wFAAwF;IACxF,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QAC1C,OAAO,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KACpD;IAED,wFAAwF;IACxF,qEAAqE;IACrE,MAAM,eAAe,GAAG,IAAI;SACzB,aAAa,EAAE;SACf,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;IAE1D,OAAO,eAAe;QACpB,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,eAAe,CAAC;QAClD,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AApBD,0DAoBC;AAED,SAAgB,uBAAuB,CACrC,OAAuB,EACvB,IAAa,EACb,QAAmB;IAEnB,OAAO,uBAAuB,CAC5B,OAAO,EACP,IAAI,EACJ,QAAQ,CAAC,OAAO,EAAE,EAClB,QAAQ,CAAC,cAAc,EAAE,CAC1B,CAAC;AACJ,CAAC;AAXD,0DAWC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js index 47b7b58b..bb543a35 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js @@ -1,14 +1,45 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getContextualType = exports.isUnsafeAssignment = exports.isAnyOrAnyArrayTypeDiscriminated = exports.isTypeUnknownArrayType = exports.isTypeAnyArrayType = exports.isTypeAnyType = exports.isTypeUnknownType = exports.getTypeArguments = exports.getEqualsKind = exports.getTokenAtPosition = exports.getSourceFileOfNode = exports.typeIsOrHasBaseType = exports.isTypeFlagSet = exports.getTypeFlags = exports.getDeclaration = exports.isNullableType = exports.getConstrainedTypeAtLocation = exports.getTypeName = exports.containsAllTypesByName = exports.isTypeArrayTypeOrUnionOfArrayTypes = void 0; +const debug_1 = __importDefault(require("debug")); const tsutils_1 = require("tsutils"); const ts = __importStar(require("typescript")); +const log = debug_1.default('typescript-eslint:eslint-plugin:utils:types'); +/** + * Checks if the given type is either an array type, + * or a union made up solely of array types. + */ +function isTypeArrayTypeOrUnionOfArrayTypes(type, checker) { + for (const t of tsutils_1.unionTypeParts(type)) { + if (!checker.isArrayType(t)) { + return false; + } + } + return true; +} +exports.isTypeArrayTypeOrUnionOfArrayTypes = isTypeArrayTypeOrUnionOfArrayTypes; /** * @param type Type being checked by name. * @param allowedNames Symbol names checking on the type. @@ -21,8 +52,8 @@ function containsAllTypesByName(type, allowAny, allowedNames) { if (tsutils_1.isTypeReference(type)) { type = type.target; } - if (typeof type.symbol !== 'undefined' && - allowedNames.has(type.symbol.name)) { + const symbol = type.getSymbol(); + if (symbol && allowedNames.has(symbol.name)) { return true; } if (tsutils_1.isUnionOrIntersectionType(type)) { @@ -51,9 +82,12 @@ function getTypeName(typeChecker, type) { // `type.getConstraint()` method doesn't return the constraint type of // the type parameter for some reason. So this gets the constraint type // via AST. - const node = type.symbol.declarations[0]; - if (node.constraint != null) { - return getTypeName(typeChecker, typeChecker.getTypeFromTypeNode(node.constraint)); + const symbol = type.getSymbol(); + const decls = symbol === null || symbol === void 0 ? void 0 : symbol.getDeclarations(); + const typeParamDecl = decls === null || decls === void 0 ? void 0 : decls[0]; + if (ts.isTypeParameterDeclaration(typeParamDecl) && + typeParamDecl.constraint != null) { + return getTypeName(typeChecker, typeChecker.getTypeFromTypeNode(typeParamDecl.constraint)); } } // If the type is a union and all types in the union are string like, @@ -83,7 +117,7 @@ exports.getTypeName = getTypeName; function getConstrainedTypeAtLocation(checker, node) { const nodeType = checker.getTypeAtLocation(node); const constrained = checker.getBaseConstraintOfType(nodeType); - return (constrained !== null && constrained !== void 0 ? constrained : nodeType); + return constrained !== null && constrained !== void 0 ? constrained : nodeType; } exports.getConstrainedTypeAtLocation = getConstrainedTypeAtLocation; /** @@ -107,15 +141,13 @@ exports.isNullableType = isNullableType; * Gets the declaration for the given variable */ function getDeclaration(checker, node) { + var _a; const symbol = checker.getSymbolAtLocation(node); if (!symbol) { return null; } - const declarations = symbol.declarations; - if (!declarations) { - return null; - } - return declarations[0]; + const declarations = symbol.getDeclarations(); + return (_a = declarations === null || declarations === void 0 ? void 0 : declarations[0]) !== null && _a !== void 0 ? _a : null; } exports.getDeclaration = getDeclaration; /** @@ -145,17 +177,18 @@ exports.isTypeFlagSet = isTypeFlagSet; * @returns Whether a type is an instance of the parent type, including for the parent's base types. */ function typeIsOrHasBaseType(type, parentType) { - if (type.symbol === undefined || parentType.symbol === undefined) { + const parentSymbol = parentType.getSymbol(); + if (!type.getSymbol() || !parentSymbol) { return false; } const typeAndBaseTypes = [type]; const ancestorTypes = type.getBaseTypes(); - if (ancestorTypes !== undefined) { + if (ancestorTypes) { typeAndBaseTypes.push(...ancestorTypes); } for (const baseType of typeAndBaseTypes) { - if (baseType.symbol !== undefined && - baseType.symbol.name === parentType.symbol.name) { + const baseSymbol = baseType.getSymbol(); + if (baseSymbol && baseSymbol.name === parentSymbol.name) { return true; } } @@ -214,7 +247,7 @@ function getEqualsKind(operator) { }; case '!==': return { - isPositive: true, + isPositive: false, isStrict: true, }; default: @@ -222,4 +255,157 @@ function getEqualsKind(operator) { } } exports.getEqualsKind = getEqualsKind; +function getTypeArguments(type, checker) { + var _a; + // getTypeArguments was only added in TS3.7 + if (checker.getTypeArguments) { + return checker.getTypeArguments(type); + } + return (_a = type.typeArguments) !== null && _a !== void 0 ? _a : []; +} +exports.getTypeArguments = getTypeArguments; +/** + * @returns true if the type is `unknown` + */ +function isTypeUnknownType(type) { + return isTypeFlagSet(type, ts.TypeFlags.Unknown); +} +exports.isTypeUnknownType = isTypeUnknownType; +/** + * @returns true if the type is `any` + */ +function isTypeAnyType(type) { + if (isTypeFlagSet(type, ts.TypeFlags.Any)) { + if (type.intrinsicName === 'error') { + log('Found an "error" any type'); + } + return true; + } + return false; +} +exports.isTypeAnyType = isTypeAnyType; +/** + * @returns true if the type is `any[]` + */ +function isTypeAnyArrayType(type, checker) { + return (checker.isArrayType(type) && + isTypeAnyType( + // getTypeArguments was only added in TS3.7 + getTypeArguments(type, checker)[0])); +} +exports.isTypeAnyArrayType = isTypeAnyArrayType; +/** + * @returns true if the type is `unknown[]` + */ +function isTypeUnknownArrayType(type, checker) { + return (checker.isArrayType(type) && + isTypeUnknownType( + // getTypeArguments was only added in TS3.7 + getTypeArguments(type, checker)[0])); +} +exports.isTypeUnknownArrayType = isTypeUnknownArrayType; +/** + * @returns `AnyType.Any` if the type is `any`, `AnyType.AnyArray` if the type is `any[]` or `readonly any[]`, + * otherwise it returns `AnyType.Safe`. + */ +function isAnyOrAnyArrayTypeDiscriminated(node, checker) { + const type = checker.getTypeAtLocation(node); + if (isTypeAnyType(type)) { + return 0 /* Any */; + } + if (isTypeAnyArrayType(type, checker)) { + return 1 /* AnyArray */; + } + return 2 /* Safe */; +} +exports.isAnyOrAnyArrayTypeDiscriminated = isAnyOrAnyArrayTypeDiscriminated; +/** + * Does a simple check to see if there is an any being assigned to a non-any type. + * + * This also checks generic positions to ensure there's no unsafe sub-assignments. + * Note: in the case of generic positions, it makes the assumption that the two types are the same. + * + * @example See tests for examples + * + * @returns false if it's safe, or an object with the two types if it's unsafe + */ +function isUnsafeAssignment(type, receiver, checker) { + var _a, _b; + if (isTypeAnyType(type)) { + // Allow assignment of any ==> unknown. + if (isTypeUnknownType(receiver)) { + return false; + } + if (!isTypeAnyType(receiver)) { + return { sender: type, receiver }; + } + } + if (tsutils_1.isTypeReference(type) && tsutils_1.isTypeReference(receiver)) { + // TODO - figure out how to handle cases like this, + // where the types are assignable, but not the same type + /* + function foo(): ReadonlySet { return new Set(); } + + // and + + type Test = { prop: T } + type Test2 = { prop: string } + declare const a: Test; + const b: Test2 = a; + */ + if (type.target !== receiver.target) { + // if the type references are different, assume safe, as we won't know how to compare the two types + // the generic positions might not be equivalent for both types + return false; + } + const typeArguments = (_a = type.typeArguments) !== null && _a !== void 0 ? _a : []; + const receiverTypeArguments = (_b = receiver.typeArguments) !== null && _b !== void 0 ? _b : []; + for (let i = 0; i < typeArguments.length; i += 1) { + const arg = typeArguments[i]; + const receiverArg = receiverTypeArguments[i]; + const unsafe = isUnsafeAssignment(arg, receiverArg, checker); + if (unsafe) { + return { sender: type, receiver }; + } + } + return false; + } + return false; +} +exports.isUnsafeAssignment = isUnsafeAssignment; +/** + * Returns the contextual type of a given node. + * Contextual type is the type of the target the node is going into. + * i.e. the type of a called function's parameter, or the defined type of a variable declaration + */ +function getContextualType(checker, node) { + const parent = node.parent; + if (!parent) { + return; + } + if (tsutils_1.isCallExpression(parent) || tsutils_1.isNewExpression(parent)) { + if (node === parent.expression) { + // is the callee, so has no contextual type + return; + } + } + else if (tsutils_1.isVariableDeclaration(parent) || + tsutils_1.isPropertyDeclaration(parent) || + tsutils_1.isParameterDeclaration(parent)) { + return parent.type ? checker.getTypeFromTypeNode(parent.type) : undefined; + } + else if (tsutils_1.isJsxExpression(parent)) { + return checker.getContextualType(parent); + } + else if (tsutils_1.isPropertyAssignment(parent) && tsutils_1.isIdentifier(node)) { + return checker.getContextualType(node); + } + else if (![ts.SyntaxKind.TemplateSpan, ts.SyntaxKind.JsxExpression].includes(parent.kind)) { + // parent is not something we know we can get the contextual type of + return; + } + // TODO - support return statement checking + return checker.getContextualType(node); +} +exports.getContextualType = getContextualType; //# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js.map index 8d55857c..275e1eed 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js.map @@ -1 +1 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/util/types.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/util/types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md index 58f99dc0..2509793e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md @@ -1,11 +1,12 @@ -# Bans `// @ts-` comments from being used (`ban-ts-comment`) +# Bans `// @ts-` comments from being used or requires descriptions after directive (`ban-ts-comment`) TypeScript provides several directive comments that can be used to alter how it processes files. Using these to suppress TypeScript Compiler Errors reduces the effectiveness of TypeScript overall. The directive comments supported by TypeScript are: -``` +```ts +// @ts-expect-error // @ts-ignore // @ts-nocheck // @ts-check @@ -14,24 +15,30 @@ The directive comments supported by TypeScript are: ## Rule Details This rule lets you set which directive comments you want to allow in your codebase. -By default, only `@ts-check` is allowed, as it enables rather then suppresses errors. +By default, only `@ts-check` is allowed, as it enables rather than suppresses errors. The configuration looks like this: -``` +```ts interface Options { - 'ts-ignore'?: boolean; - 'ts-nocheck'?: boolean; - 'ts-check'?: boolean; + 'ts-expect-error'?: boolean | 'allow-with-description'; + 'ts-ignore'?: boolean | 'allow-with-description'; + 'ts-nocheck'?: boolean | 'allow-with-description'; + 'ts-check'?: boolean | 'allow-with-description'; + minimumDescriptionLength?: number; } const defaultOptions: Options = { + 'ts-expect-error': 'allow-with-description', 'ts-ignore': true, 'ts-nocheck': true, - 'ts-check': false -} + 'ts-check': false, + minimumDescriptionLength: 3, +}; ``` +### `ts-expect-error`, `ts-ignore`, `ts-nocheck`, `ts-check` directives + A value of `true` for a particular directive means that this rule will report if it finds any usage of said directive. For example, with the defaults above the following patterns are considered warnings: @@ -52,6 +59,50 @@ if (false) { } ``` +### `allow-with-description` + +A value of `'allow-with-description'` for a particular directive means that this rule will report if it finds a directive that does not have a description following the directive (on the same line). + +For example, with `{ 'ts-expect-error': 'allow-with-description' }` the following pattern is considered a warning: + +```ts +if (false) { + // @ts-expect-error + console.log('hello'); +} +``` + +The following pattern is not a warning: + +```ts +if (false) { + // @ts-expect-error: Unreachable code error + console.log('hello'); +} +``` + +### `minimumDescriptionLength` + +Use `minimumDescriptionLength` to set a minimum length for descriptions when using the `allow-with-description` option for a directive. + +For example, with `{ 'ts-expect-error': 'allow-with-description', minimumDescriptionLength: 10 }` the following pattern is considered a warning: + +```ts +if (false) { + // @ts-expect-error: TODO + console.log('hello'); +} +``` + +The following pattern is not a warning: + +```ts +if (false) { + // @ts-expect-error The rationale for this override is described in issue #1337 on GitLab + console.log('hello'); +} +``` + ## When Not To Use It If you want to use all of the TypeScript directives. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-ignore.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-ignore.md deleted file mode 100644 index 8f69c864..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-ignore.md +++ /dev/null @@ -1,39 +0,0 @@ -# Bans “// @ts-ignore” comments from being used (`ban-ts-ignore`) - -This rule has been deprecated in favor of [`ban-ts-comment`](./ban-ts-comment.md) - -Suppressing TypeScript Compiler Errors can be hard to discover. - -## Rule Details - -Does not allow the use of `// @ts-ignore` comments. - -The following patterns are considered warnings: - -```ts -if (false) { - // @ts-ignore: Unreachable code error - console.log('hello'); -} -``` - -The following patterns are not warnings: - -```ts -if (false) { - // Compiler warns about unreachable code error - console.log('hello'); -} -``` - -## When Not To Use It - -If you are sure, compiler errors won't affect functionality and you need to disable them. - -## Further Reading - -- TypeScript [Type Checking JavaScript Files](https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html) - -## Compatibility - -- TSLint: [ban-ts-ignore](https://palantir.github.io/tslint/rules/ban-ts-ignore/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md new file mode 100644 index 00000000..6af168f4 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md @@ -0,0 +1,29 @@ +# Bans `// tslint:` comments from being used (`ban-tslint-comment`) + +Useful when migrating from TSLint to ESLint. Once TSLint has been removed, this rule helps locate TSLint annotations (e.g. `// tslint:disable`). + +## Rule Details + +Examples of **incorrect** code for this rule: + +All TSLint [rule flags](https://palantir.github.io/tslint/usage/rule-flags/) + +```js +/* tslint:disable */ +/* tslint:enable */ +/* tslint:disable:rule1 rule2 rule3... */ +/* tslint:enable:rule1 rule2 rule3... */ +// tslint:disable-next-line +someCode(); // tslint:disable-line +// tslint:disable-next-line:rule1 rule2 rule3... +``` + +Examples of **correct** code for this rule: + +```js +// This is a comment that just happens to mention tslint +``` + +## When Not To Use It + +If you are still using TSLint. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md index e92e57b5..ab8320d1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md @@ -1,93 +1,62 @@ # Bans specific types from being used (`ban-types`) -This rule bans specific types and can suggest alternatives. It does not ban the -corresponding runtime objects from being used. +Some builtin types have aliases, some types are considered dangerous or harmful. +It's often a good idea to ban certain types to help with consistency and safety. ## Rule Details -Examples of **incorrect** code for this rule `"String": "Use string instead"` - -```ts -class Foo extends Bar implements Baz { - constructor(foo: String) {} - - exit(): Array { - const foo: String = 1 as String; - } -} -``` - -Examples of **correct** code for this rule `"String": "Use string instead"` - -```ts -class Foo extends Bar implements Baz { - constructor(foo: string) {} - - exit(): Array { - const foo: string = 1 as string; - } -} -``` +This rule bans specific types and can suggest alternatives. +Note that it does not ban the corresponding runtime objects from being used. ## Options -The banned type can either be a type name literal (`Foo`), a type name with generic parameter instantiations(s) (`Foo`), or the empty object literal (`{}`). - -```CJSON -{ - "@typescript-eslint/ban-types": ["error", { - "types": { - // report usages of the type using the default error message - "Foo": null, - - // add a custom message to help explain why not to use it - "Bar": "Don't use bar!", - - // add a custom message, AND tell the plugin how to fix it - "String": { - "message": "Use string instead", - "fixWith": "string" - } - - "{}": { - "message": "Use object instead", - "fixWith": "object" - } - } - }] -} +```ts +type Options = { + types?: { + [typeName: string]: + | false + | string + | { + message: string; + fixWith?: string; + }; + }; + extendDefaults?: boolean; +}; ``` -By default, this rule includes types which are likely to be mistakes, such as `String` and `Number`. If you don't want these enabled, set the `extendDefaults` option to `false`: +The rule accepts a single object as options, with the following keys: -```CJSON -{ - "@typescript-eslint/ban-types": ["error", { - "types": { - // add a custom message, AND tell the plugin how to fix it - "String": { - "message": "Use string instead", - "fixWith": "string" - } - }, - "extendDefaults": false - }] -} -``` +- `types` - An object whose keys are the types you want to ban, and the values are error messages. + - The type can either be a type name literal (`Foo`), a type name with generic parameter instantiation(s) (`Foo`), or the empty object literal (`{}`). + - The values can be a string, which is the error message to be reported, `false` to specifically disable this type + or it can be an object with the following properties: + - `message: string` - the message to display when the type is matched. + - `fixWith?: string` - a string to replace the banned type with when the fixer is run. If this is omitted, no fix will be done. +- `extendDefaults` - if you're specifying custom `types`, you can set this to `true` to extend the default `types` configuration. + - This is a convenience option to save you copying across the defaults when adding another type. + - If this is `false`, the rule will _only_ use the types defined in your configuration. -### Example +Example configuration: -```json +```jsonc { "@typescript-eslint/ban-types": [ "error", { "types": { - "Array": null, - "Object": "Use {} instead", + // add a custom message to help explain why not to use it + "Foo": "Don't use Foo because it is unsafe", + + // add a custom message, AND tell the plugin how to fix it "String": { "message": "Use string instead", "fixWith": "string" + }, + + "{}": { + "message": "Use object instead", + "fixWith": "object" } } } @@ -95,6 +64,124 @@ By default, this rule includes types which are likely to be mistakes, such as `S } ``` +### Default Options + +The default options provide a set of "best practices", intended to provide safety and standardization in your codebase: + +- Don't use the upper-case primitive types, you should use the lower-case types for consistency. +- Avoid the `Function` type, as it provides little safety for the following reasons: + - It provides no type safety when calling the value, which means it's easy to provide the wrong arguments. + - It accepts class declarations, which will fail when called, as they are called without the `new` keyword. +- Avoid the `Object` and `{}` types, as they mean "any non-nullish value". + - This is a point of confusion for many developers, who think it means "any object type". +- Avoid the `object` type, as it is currently hard to use due to not being able to assert that keys exist. + - See [microsoft/TypeScript#21732](https://github.com/microsoft/TypeScript/issues/21732). + +**_Important note:_** the default options suggest using `Record`; this was a stylistic decision, as the built-in `Record` type is considered to look cleaner. + +
+Default Options + +```ts +const defaultTypes = { + String: { + message: 'Use string instead', + fixWith: 'string', + }, + Boolean: { + message: 'Use boolean instead', + fixWith: 'boolean', + }, + Number: { + message: 'Use number instead', + fixWith: 'number', + }, + Symbol: { + message: 'Use symbol instead', + fixWith: 'symbol', + }, + + Function: { + message: [ + 'The `Function` type accepts any function-like value.', + 'It provides no type safety when calling the function, which can be a common source of bugs.', + 'It also accepts things like class declarations, which will throw at runtime as they will not be called with `new`.', + 'If you are expecting the function to accept certain arguments, you should explicitly define the function shape.', + ].join('\n'), + }, + + // object typing + Object: { + message: [ + 'The `Object` type actually means "any non-nullish value", so it is marginally better than `unknown`.', + '- If you want a type meaning "any object", you probably want `Record` instead.', + '- If you want a type meaning "any value", you probably want `unknown` instead.', + ].join('\n'), + }, + '{}': { + message: [ + '`{}` actually means "any non-nullish value".', + '- If you want a type meaning "any object", you probably want `Record` instead.', + '- If you want a type meaning "any value", you probably want `unknown` instead.', + ].join('\n'), + }, + object: { + message: [ + 'The `object` type is currently hard to use ([see this issue](https://github.com/microsoft/TypeScript/issues/21732)).', + 'Consider using `Record` instead, as it allows you to more easily inspect and use the keys.', + ].join('\n'), + }, +}; +``` + +
+ +### Examples + +Examples of **incorrect** code with the default options: + +```ts +// use lower-case primitives for consistency +const str: String = 'foo'; +const bool: Boolean = true; +const num: Number = 1; +const symb: Symbol = Symbol('foo'); + +// use a proper function type +const func: Function = () => 1; + +// use safer object types +const lowerObj: object = {}; + +const capitalObj1: Object = 1; +const capitalObj2: Object = { a: 'string' }; + +const curly1: {} = 1; +const curly2: {} = { a: 'string' }; +``` + +Examples of **correct** code with the default options: + +```ts +// use lower-case primitives for consistency +const str: string = 'foo'; +const bool: boolean = true; +const num: number = 1; +const symb: symbol = Symbol('foo'); + +// use a proper function type +const func: () => number = () => 1; + +// use safer object types +const lowerObj: Record = {}; + +const capitalObj1: number = 1; +const capitalObj2: { a: string } = { a: 'string' }; + +const curly1: number = 1; +const curly2: Record<'a', string> = { a: 'string' }; +``` + ## Compatibility - TSLint: [ban-types](https://palantir.github.io/tslint/rules/ban-types/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md index c8268dea..06dfa161 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md @@ -3,11 +3,11 @@ ## Rule Details This rule extends the base [`eslint/brace-style`](https://eslint.org/docs/rules/brace-style) rule. -It supports all options and features of the base rule. +It adds support for `enum`, `interface`, `namespace` and `module` declarations. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "brace-style": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md index f0b49d04..cea28224 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md @@ -1,298 +1,8 @@ -# Enforce camelCase naming convention (`camelcase`) +## DEPRECATED -When it comes to naming variables, style guides generally fall into one of two -camps: camelCase (`variableName`) and underscores (`variable_name`). This rule -focuses on using the camelCase approach. If your style guide calls for -camelCasing your variable names, then this rule is for you! +This rule has been deprecated in favour of the [`naming-convention`](./naming-convention.md) rule. -## Rule Details - -This rule looks for any underscores (`_`) located within the source code. -It ignores leading and trailing underscores and only checks those in the middle -of a variable name. If ESLint decides that the variable is a constant -(all uppercase), then no warning will be thrown. Otherwise, a warning will be -thrown. This rule only flags definitions and assignments but not function calls. -In case of ES6 `import` statements, this rule only targets the name of the -variable that will be imported into the local module scope. - -**_This rule was taken from the ESLint core rule `camelcase`._** -**_Available options and test cases may vary depending on the version of ESLint installed in the system._** - -## Options - -```cjson -{ - // note you must disable the base rule as it can report incorrect errors - "camelcase": "off", - "@typescript-eslint/camelcase": ["error", { "properties": "always" }] -} -``` - -This rule has an object option: - -- `"properties": "never"` (default) does not check property names -- `"properties": "always"` enforces camelCase style for property names -- `"genericType": "never"` (default) does not check generic identifiers -- `"genericType": "always"` enforces camelCase style for generic identifiers -- `"ignoreDestructuring": false` (default) enforces camelCase style for destructured identifiers -- `"ignoreDestructuring": true` does not check destructured identifiers -- `allow` (`string[]`) list of properties to accept. Accept regex. - -### properties: "always" - -Examples of **incorrect** code for this rule with the default `{ "properties": "always" }` option: - -```js -/*eslint @typescript-eslint/camelcase: "error"*/ - -import { no_camelcased } from 'external-module'; - -var my_favorite_color = '#112C85'; - -function do_something() { - // ... -} - -obj.do_something = function() { - // ... -}; - -function foo({ no_camelcased }) { - // ... -} - -function foo({ isCamelcased: no_camelcased }) { - // ... -} - -function foo({ no_camelcased = 'default value' }) { - // ... -} - -var obj = { - my_pref: 1, -}; - -var { category_id = 1 } = query; - -var { foo: no_camelcased } = bar; - -var { foo: bar_baz = 1 } = quz; -``` - -Examples of **correct** code for this rule with the default `{ "properties": "always" }` option: - -```js -/*eslint @typescript-eslint/camelcase: "error"*/ - -import { no_camelcased as camelCased } from 'external-module'; - -var myFavoriteColor = '#112C85'; -var _myFavoriteColor = '#112C85'; -var myFavoriteColor_ = '#112C85'; -var MY_FAVORITE_COLOR = '#112C85'; -var foo = bar.baz_boom; -var foo = { qux: bar.baz_boom }; - -obj.do_something(); -do_something(); -new do_something(); - -var { category_id: category } = query; - -function foo({ isCamelCased }) { - // ... -} - -function foo({ isCamelCased: isAlsoCamelCased }) { - // ... -} - -function foo({ isCamelCased = 'default value' }) { - // ... -} - -var { categoryId = 1 } = query; - -var { foo: isCamelCased } = bar; - -var { foo: isCamelCased = 1 } = quz; -``` - -### `properties: "never"` - -Examples of **correct** code for this rule with the `{ "properties": "never" }` option: - -```js -/*eslint @typescript-eslint/camelcase: ["error", {properties: "never"}]*/ - -var obj = { - my_pref: 1, -}; -``` - -### `genericType: "always"` - -Examples of **incorrect** code for this rule with the default `{ "genericType": "always" }` option: - -```typescript -/* eslint @typescript-eslint/camelcase: ["error", { "genericType": "always" }] */ - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} -``` - -Examples of **correct** code for this rule with the default `{ "genericType": "always" }` option: - -```typescript -/* eslint @typescript-eslint/camelcase: ["error", { "genericType": "always" }] */ - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} -``` - -### `genericType: "never"` - -Examples of **correct** code for this rule with the `{ "genericType": "never" }` option: - -```typescript -/* eslint @typescript-eslint/camelcase: ["error", { "genericType": "never" }] */ - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} - -interface Foo {} -function foo() {} -class Foo {} -type Foo = {}; -class Foo { - method() {} -} -``` - -### `ignoreDestructuring: false` - -Examples of **incorrect** code for this rule with the default `{ "ignoreDestructuring": false }` option: - -```js -/*eslint @typescript-eslint/camelcase: "error"*/ - -var { category_id } = query; - -var { category_id = 1 } = query; - -var { category_id: category_id } = query; - -var { category_id: category_alias } = query; - -var { category_id: categoryId, ...other_props } = query; -``` - -### `ignoreDestructuring: true` - -Examples of **incorrect** code for this rule with the `{ "ignoreDestructuring": true }` option: - -```js -/*eslint @typescript-eslint/camelcase: ["error", {ignoreDestructuring: true}]*/ - -var { category_id: category_alias } = query; - -var { category_id, ...other_props } = query; -``` - -Examples of **correct** code for this rule with the `{ "ignoreDestructuring": true }` option: - -```js -/*eslint @typescript-eslint/camelcase: ["error", {ignoreDestructuring: true}]*/ - -var { category_id } = query; - -var { category_id = 1 } = query; - -var { category_id: category_id } = query; -``` - -## allow - -Examples of **correct** code for this rule with the `allow` option: - -```js -/*eslint @typescript-eslint/camelcase: ["error", {allow: ["UNSAFE_componentWillMount"]}]*/ - -function UNSAFE_componentWillMount() { - // ... -} -``` - -```js -/*eslint @typescript-eslint/camelcase: ["error", {allow: ["^UNSAFE_"]}]*/ - -function UNSAFE_componentWillMount() { - // ... -} - -function UNSAFE_componentWillMount() { - // ... -} -``` - -## When Not To Use It - -If you have established coding standards using a different naming convention (separating words with underscores), turn this rule off. - -Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/camelcase.md) + diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md new file mode 100644 index 00000000..1bca8390 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md @@ -0,0 +1,96 @@ +# Ensures that literals on classes are exposed in a consistent style (`class-literal-property-style`) + +When writing TypeScript applications, it's typically safe to store literal values on classes using fields with the `readonly` modifier to prevent them from being reassigned. +When writing TypeScript libraries that could be used by JavaScript users however, it's typically safer to expose these literals using `getter`s, since the `readonly` modifier is enforced at compile type. + +## Rule Details + +This rule aims to ensure that literals exposed by classes are done so consistently, in one of the two style described above. +By default this rule prefers the `fields` style as it means JS doesn't have to setup & teardown a function closure. + +Note that this rule only checks for constant _literal_ values (string, template string, number, bigint, boolean, regexp, null). It does not check objects or arrays, because a readonly field behaves differently to a getter in those cases. It also does not check functions, as it is a common pattern to use readonly fields with arrow function values as auto-bound methods. +This is because these types can be mutated and carry with them more complex implications about their usage. + +### The `fields` style + +This style checks for any getter methods that return literal values, and requires them to be defined using fields with the `readonly` modifier instead. + +Examples of **correct** code with the `fields` style: + +```ts +/* eslint @typescript-eslint/class-literal-property-style: ["error", "fields"] */ + +class Mx { + public readonly myField1 = 1; + + // not a literal + public readonly myField2 = [1, 2, 3]; + + private readonly ['myField3'] = 'hello world'; + + public get myField4() { + return `hello from ${window.location.href}`; + } +} +``` + +Examples of **incorrect** code with the `fields` style: + +```ts +/* eslint @typescript-eslint/class-literal-property-style: ["error", "fields"] */ + +class Mx { + public static get myField1() { + return 1; + } + + private get ['myField2']() { + return 'hello world'; + } +} +``` + +### The `getters` style + +This style checks for any `readonly` fields that are assigned literal values, and requires them to be defined as getters instead. +This style pairs well with the [`@typescript-eslint/prefer-readonly`](prefer-readonly.md) rule, +as it will identify fields that can be `readonly`, and thus should be made into getters. + +Examples of **correct** code with the `getters` style: + +```ts +/* eslint @typescript-eslint/class-literal-property-style: ["error", "getters"] */ + +class Mx { + // no readonly modifier + public myField1 = 'hello'; + + // not a literal + public readonly myField2 = [1, 2, 3]; + + public static get myField3() { + return 1; + } + + private get ['myField4']() { + return 'hello world'; + } +} +``` + +Examples of **incorrect** code with the `getters` style: + +```ts +/* eslint @typescript-eslint/class-literal-property-style: ["error", "getters"] */ + +class Mx { + readonly myField1 = 1; + readonly myField2 = `hello world`; + private readonly myField3 = 'hello world'; +} +``` + +## When Not To Use It + +When you have no strong preference, or do not wish to enforce a particular style +for how literal values are exposed by your classes. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-name-casing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-name-casing.md deleted file mode 100644 index 38c30609..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-name-casing.md +++ /dev/null @@ -1,56 +0,0 @@ -# Require PascalCased class and interface names (`class-name-casing`) - -This rule enforces PascalCase names for classes and interfaces. - -## Rule Details - -This rule aims to make it easy to differentiate classes from regular variables at a glance. -The `_` prefix is sometimes used to designate a private declaration, so the rule also supports a name -that might be `_Example` instead of `Example`. - -## Options - -This rule has an object option: - -- `"allowUnderscorePrefix": false`: (default) does not allow the name to have an underscore prefix -- `"allowUnderscorePrefix": true`: allows the name to optionally have an underscore prefix - -## Examples - -Examples of **incorrect** code for this rule: - -```ts -class invalidClassName {} - -class Another_Invalid_Class_Name {} - -var bar = class invalidName {}; - -interface someInterface {} - -class _InternalClass {} -``` - -Examples of **correct** code for this rule: - -```ts -class ValidClassName {} - -export default class {} - -var foo = class {}; - -interface SomeInterface {} - -/* eslint @typescript-eslint/class-name-casing: { "allowUnderscorePrefix": true } */ -class _InternalClass {} -``` - -## When Not To Use It - -You should turn off this rule if you do not care about class name casing, or if -you use a different type of casing. - -## Further Reading - -- [`class-name`](https://palantir.github.io/tslint/rules/class-name/) in [TSLint](https://palantir.github.io/tslint/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md new file mode 100644 index 00000000..bfb40d33 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md @@ -0,0 +1,34 @@ +# Require or disallow trailing comma (`comma-dangle`) + +## Rule Details + +This rule extends the base [`eslint/comma-dangle`](https://eslint.org/docs/rules/comma-dangle) rule. +It adds support for TypeScript syntax. + +See the [ESLint documentation](https://eslint.org/docs/rules/comma-dangle) for more details on the `comma-dangle` rule. + +## Rule Changes + +```cjson +{ + // note you must disable the base rule as it can report incorrect errors + "comma-dangle": "off", + "@typescript-eslint/comma-dangle": ["error"] +} +``` + +In addition to the options supported by the `comma-dangle` rule in ESLint core, the rule adds the following options: + +## Options + +This rule has a string option and an object option. + +- Object option: + + - `"enums"` is for trailing comma in enum. (e.g. `enum Foo = {Bar,}`) + - `"generics"` is for trailing comma in generic. (e.g. `function foo() {}`) + - `"tuples"` is for trailing comma in tuple. (e.g. `type Foo = [string,]`) + +- [See the other options allowed](https://github.com/eslint/eslint/blob/master/docs/rules/comma-dangle.md#options) + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/comma-dangle.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md index 145e3607..09201804 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md @@ -7,7 +7,7 @@ It adds support for trailing comma in a types parameters list. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "comma-spacing": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md index cdf0fb76..43e67b75 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md @@ -8,6 +8,8 @@ Type assertions are also commonly referred as "type casting" in TypeScript (even In addition to ensuring that type assertions are written in a consistent way, this rule also helps make your codebase more type-safe. +`const` assertions, [introduced in TypeScript 3.4](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html#const-assertions), is always allowed by this rule. Examples of it include `let x = "hello" as const;` and `let x = "hello";`. + ## Options ```ts diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md index 1688552d..52afd3f9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md @@ -25,10 +25,10 @@ This rule accepts one string option: For example: -```CJSON +```jsonc { - // Use type for object definitions - "@typescript-eslint/consistent-type-definitions": ["error", "type"] + // Use type for object definitions + "@typescript-eslint/consistent-type-definitions": ["error", "type"] } ``` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md new file mode 100644 index 00000000..3487bf9b --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md @@ -0,0 +1,64 @@ +# Enforces consistent usage of type imports (`consistent-type-imports`) + +TypeScript 3.8 added support for type-only imports. +Type-only imports allow you to specify that an import can only be used in a type location, allowing certain optimizations within compilers. + +## Rule Details + +This rule aims to standardize the use of type imports style across the codebase. + +## Options + +```ts +type Options = { + prefer: 'type-imports' | 'no-type-imports'; + disallowTypeAnnotations: boolean; +}; + +const defaultOptions: Options = { + prefer: 'type-imports', + disallowTypeAnnotations: true, +}; +``` + +### `prefer` + +This option defines the expected import kind for type-only imports. Valid values for `prefer` are: + +- `type-imports` will enforce that you always use `import type Foo from '...'`. It is default. +- `no-type-imports` will enforce that you always use `import Foo from '...'`. + +Examples of **correct** code with `{prefer: 'type-imports'}`, and **incorrect** code with `{prefer: 'no-type-imports'}`. + +```ts +import type { Foo } from 'Foo'; +import type Bar from 'Bar'; +type T = Foo; +const x: Bar = 1; +``` + +Examples of **incorrect** code with `{prefer: 'type-imports'}`, and **correct** code with `{prefer: 'no-type-imports'}`. + +```ts +import { Foo } from 'Foo'; +import Bar from 'Bar'; +type T = Foo; +const x: Bar = 1; +``` + +### `disallowTypeAnnotations` + +If `true`, type imports in type annotations (`import()`) is not allowed. +Default is `true`. + +Examples of **incorrect** code with `{disallowTypeAnnotations: true}`. + +```ts +type T = import('Foo').Foo; +const x: import('Bar') = 1; +``` + +## When Not To Use It + +- If you are not using TypeScript 3.8 (or greater), then you will not be able to use this rule, as type-only imports are not allowed. +- If you specifically want to use both import kinds for stylistic reasons, you can disable this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md index f3eb9f27..c9c51df4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md @@ -2,7 +2,8 @@ ## Rule Details -This rule enforces default or optional parameters to be the last of parameters. +This rule extends the base [`eslint/default-param-last`](https://eslint.org/docs/rules/default-param-last) rule. +It adds support for optional parameters. Examples of **incorrect** code for this rule: @@ -38,4 +39,18 @@ class Foo { } ``` +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "default-param-last": "off", + "@typescript-eslint/default-param-last": ["error"] +} +``` + +## Options + +See [`eslint/default-param-last` options](https://eslint.org/docs/rules/default-param-last#options). + Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/default-param-last.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md new file mode 100644 index 00000000..bd1ea748 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md @@ -0,0 +1,46 @@ +# enforce dot notation whenever possible (`dot-notation`) + +## Rule Details + +This rule extends the base [`eslint/dot-notation`](https://eslint.org/docs/rules/dot-notation) rule. +It adds support for optionally ignoring computed `private` member access. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "dot-notation": "off", + "@typescript-eslint/dot-notation": ["error"] +} +``` + +## Options + +See [`eslint/dot-notation`](https://eslint.org/docs/rules/dot-notation#options) options. +This rule adds the following options: + +```ts +interface Options extends BaseDotNotationOptions { + allowPrivateClassPropertyAccess?: boolean; +} +const defaultOptions: Options = { + ...baseDotNotationDefaultOptions, + allowPrivateClassPropertyAccess: false, +}; +``` + +### `allowPrivateClassPropertyAccess` + +Example of a correct code when `allowPrivateClassPropertyAccess` is set to `true` + +```ts +class X { + private priv_prop = 123; +} + +const x = new X(); +x['priv_prop'] = 123; +``` + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/dot-notation.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md index 360fdce0..9e5b4c84 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md @@ -18,7 +18,7 @@ function test() { } // Should indicate that a number is returned -var fn = function() { +var fn = function () { return 1; }; @@ -42,7 +42,7 @@ function test(): void { } // A return value of type number -var fn = function(): number { +var fn = function (): number { return 1; }; @@ -69,12 +69,18 @@ type Options = { allowTypedFunctionExpressions?: boolean; // if true, functions immediately returning another function expression will not be checked allowHigherOrderFunctions?: boolean; + // if true, arrow functions immediately returning a `as const` value will not be checked + allowDirectConstAssertionInArrowFunctions?: boolean; + // if true, concise arrow functions that start with the void keyword will not be checked + allowConciseArrowFunctionExpressionsStartingWithVoid?: boolean; }; const defaults = { allowExpressions: false, allowTypedFunctionExpressions: true, allowHigherOrderFunctions: true, + allowDirectConstAssertionInArrowFunctions: true, + allowConciseArrowFunctionExpressionsStartingWithVoid: true, }; ``` @@ -117,7 +123,7 @@ Examples of **correct** code for this rule with `{ allowExpressions: true }`: ```ts node.addEventListener('click', () => {}); -node.addEventListener('click', function() {}); +node.addEventListener('click', function () {}); const foo = arr.map(i => i * i); ``` @@ -129,7 +135,7 @@ Examples of **incorrect** code for this rule with `{ allowTypedFunctionExpressio ```ts let arrowFn = () => 'test'; -let funcExpr = function() { +let funcExpr = function () { return 'test'; }; @@ -184,7 +190,7 @@ Examples of **incorrect** code for this rule with `{ allowHigherOrderFunctions: var arrowFn = () => () => {}; function fn() { - return function() {}; + return function () {}; } ``` @@ -194,10 +200,44 @@ Examples of **correct** code for this rule with `{ allowHigherOrderFunctions: tr var arrowFn = () => (): void => {}; function fn() { - return function(): void {}; + return function (): void {}; } ``` +### `allowDirectConstAssertionInArrowFunctions` + +Examples of **incorrect** code for this rule with `{ allowDirectConstAssertionInArrowFunctions: true }`: + +```ts +const func = (value: number) => ({ type: 'X', value } as any); +const func = (value: number) => ({ type: 'X', value } as Action); +``` + +Examples of **correct** code for this rule with `{ allowDirectConstAssertionInArrowFunctions: true }`: + +```ts +const func = (value: number) => ({ foo: 'bar', value } as const); +const func = () => x as const; +``` + +### `allowConciseArrowFunctionExpressionsStartingWithVoid` + +Examples of **incorrect** code for this rule with `{ allowConciseArrowFunctionExpressionsStartingWithVoid: true }`: + +```ts +var join = (a: string, b: string) => `${a}${b}`; + +const log = (message: string) => { + console.log(message); +}; +``` + +Examples of **correct** code for this rule with `{ allowConciseArrowFunctionExpressionsStartingWithVoid: true }`: + +```ts +var log = (message: string) => void console.log(message); +``` + ## When Not To Use It If you don't wish to prevent calling code from using function return values in unexpected ways, then diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md index 9b148d95..cfbb3154 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md @@ -258,6 +258,10 @@ class Animal { class Animal { constructor(public animalName: string) {} } + +class Animal { + constructor(animalName: string) {} +} ``` e.g. `[ { accessibility: 'off', overrides: { parameterProperties: 'no-public' } } ]` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md index a5327a1e..f33a8d5b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md @@ -17,7 +17,7 @@ export function test() { } // Should indicate that a number is returned -export default function() { +export default function () { return 1; } @@ -26,6 +26,7 @@ export var arrowFn = () => 'test'; // All arguments should be typed export var arrowFn = (arg): string => `test ${arg}`; +export var arrowFn = (arg: any): string => `test ${arg}`; export class Test { // Should indicate that no value is returned (void) @@ -44,13 +45,17 @@ function test() { } // A return value of type number -export var fn = function(): number { +export var fn = function (): number { return 1; }; // A return value of type string export var arrowFn = (arg: string): string => `test ${arg}`; +// All arguments should be typed +export var arrowFn = (arg: string): string => `test ${arg}`; +export var arrowFn = (arg: unknown): string => `test ${arg}`; + // Class is not exported class Test { method() { @@ -66,16 +71,9 @@ The rule accepts an options object with the following properties: ```ts type Options = { /** - * If true, type annotations are also allowed on the variable of a function expression - * rather than on the function arguments/return value directly. + * If true, the rule will not report for arguments that are explicitly typed as `any` */ - allowTypedFunctionExpressions?: boolean; - /** - * If true, functions immediately returning another function expression will not - * require an explicit return value annotation. - * You must still type the parameters of the function. - */ - allowHigherOrderFunctions?: boolean; + allowArgumentsExplicitlyTypedAsAny?: boolean; /** * If true, body-less arrow functions that return an `as const` type assertion will not * require an explicit return value annotation. @@ -86,12 +84,25 @@ type Options = { * An array of function/method names that will not have their arguments or their return values checked. */ allowedNames?: string[]; + /** + * If true, functions immediately returning another function expression will not + * require an explicit return value annotation. + * You must still type the parameters of the function. + */ + allowHigherOrderFunctions?: boolean; + /** + * If true, type annotations are also allowed on the variable of a function expression + * rather than on the function arguments/return value directly. + */ + allowTypedFunctionExpressions?: boolean; }; const defaults = { - allowTypedFunctionExpressions: true, - allowHigherOrderFunctions: true, + allowArgumentsExplicitlyTypedAsAny: false, + allowDirectConstAssertionInArrowFunctions: true, allowedNames: [], + allowHigherOrderFunctions: true, + allowTypedFunctionExpressions: true, }; ``` @@ -117,83 +128,20 @@ If you are working on a codebase within which you lint non-TypeScript code (i.e. } ``` -### `allowTypedFunctionExpressions` +### `allowArgumentsExplicitlyTypedAsAny` -Examples of **incorrect** code for this rule with `{ allowTypedFunctionExpressions: true }`: +Examples of **incorrect** code for this rule with `{ allowArgumentsExplicitlyTypedAsAny: true }`: ```ts -export let arrowFn = () => 'test'; - -export let funcExpr = function() { - return 'test'; -}; - -export let objectProp = { - foo: () => 1, -}; - -export const foo = bar => {}; +export const func = (value: any): void => ({ type: 'X', value }); +export function foo(value: any): void {} ``` -Examples of additional **correct** code for this rule with `{ allowTypedFunctionExpressions: true }`: +Examples of **correct** code for this rule with `{ allowArgumentsExplicitlyTypedAsAny: true }`: ```ts -type FuncType = () => string; - -export let arrowFn: FuncType = () => 'test'; - -export let funcExpr: FuncType = function() { - return 'test'; -}; - -export let asTyped = (() => '') as () => string; -export let castTyped = <() => string>(() => ''); - -interface ObjectType { - foo(): number; -} -export let objectProp: ObjectType = { - foo: () => 1, -}; -export let objectPropAs = { - foo: () => 1, -} as ObjectType; -export let objectPropCast = { - foo: () => 1, -}; - -type FooType = (bar: string) => void; -export const foo: FooType = bar => {}; -``` - -### `allowHigherOrderFunctions` - -Examples of **incorrect** code for this rule with `{ allowHigherOrderFunctions: true }`: - -```ts -export var arrowFn = () => () => {}; - -export function fn() { - return function() {}; -} - -export function foo(outer) { - return function(inner): void {}; -} -``` - -Examples of **correct** code for this rule with `{ allowHigherOrderFunctions: true }`: - -```ts -export var arrowFn = () => (): void => {}; - -export function fn() { - return function(): void {}; -} - -export function foo(outer: string) { - return function(inner: string): void {}; -} +export const func = (value: number): void => ({ type: 'X', value }); +export function foo(value: number): void {} ``` ### `allowDirectConstAssertionInArrowFunctions` @@ -232,15 +180,94 @@ You may pass function/method names you would like this rule to ignore, like so: "@typescript-eslint/explicit-module-boundary-types": [ "error", { - "allowedName": ["ignoredFunctionName", "ignoredMethodName"] + "allowedNames": ["ignoredFunctionName", "ignoredMethodName"] } ] } ``` +### `allowHigherOrderFunctions` + +Examples of **incorrect** code for this rule with `{ allowHigherOrderFunctions: true }`: + +```ts +export var arrowFn = () => () => {}; + +export function fn() { + return function () {}; +} + +export function foo(outer) { + return function (inner): void {}; +} +``` + +Examples of **correct** code for this rule with `{ allowHigherOrderFunctions: true }`: + +```ts +export var arrowFn = () => (): void => {}; + +export function fn() { + return function (): void {}; +} + +export function foo(outer: string) { + return function (inner: string): void {}; +} +``` + +### `allowTypedFunctionExpressions` + +Examples of **incorrect** code for this rule with `{ allowTypedFunctionExpressions: true }`: + +```ts +export let arrowFn = () => 'test'; + +export let funcExpr = function () { + return 'test'; +}; + +export let objectProp = { + foo: () => 1, +}; + +export const foo = bar => {}; +``` + +Examples of additional **correct** code for this rule with `{ allowTypedFunctionExpressions: true }`: + +```ts +type FuncType = () => string; + +export let arrowFn: FuncType = () => 'test'; + +export let funcExpr: FuncType = function () { + return 'test'; +}; + +export let asTyped = (() => '') as () => string; +export let castTyped = <() => string>(() => ''); + +interface ObjectType { + foo(): number; +} +export let objectProp: ObjectType = { + foo: () => 1, +}; +export let objectPropAs = { + foo: () => 1, +} as ObjectType; +export let objectPropCast = { + foo: () => 1, +}; + +type FooType = (bar: string) => void; +export const foo: FooType = bar => {}; +``` + ## When Not To Use It -If you wish to make sure all functions have explicit return types, as opposed to only the module boundaries, you can use [explicit-function-return-type](https://github.com/eslint/eslint/blob/master/docs/rules/explicit-function-return-type.md) +If you wish to make sure all functions have explicit return types, as opposed to only the module boundaries, you can use [explicit-function-return-type](./explicit-function-return-type.md) ## Further Reading diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md index aa1d3fde..8aa9e7e0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md @@ -1,17 +1,13 @@ # Require or disallow spacing between function identifiers and their invocations (`func-call-spacing`) -When calling a function, developers may insert optional whitespace between the function’s name and the parentheses that invoke it. -This rule requires or disallows spaces between the function name and the opening parenthesis that calls it. - ## Rule Details This rule extends the base [`eslint/func-call-spacing`](https://eslint.org/docs/rules/func-call-spacing) rule. -It supports all options and features of the base rule. -This version adds support for generic type parameters on function calls. +It adds support for generic type parameters on function calls. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "func-call-spacing": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/generic-type-naming.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/generic-type-naming.md deleted file mode 100644 index 185b3811..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/generic-type-naming.md +++ /dev/null @@ -1,42 +0,0 @@ -# Enforces naming of generic type variables (`generic-type-naming`) - -It can be helpful to enforce a consistent naming style for generic type variables used within a type. -For example, prefixing them with `T` and ensuring a somewhat descriptive name, or enforcing Hungarian notation. - -## Rule Details - -This rule allows you to enforce conventions over type variables. By default, it does nothing. - -## Options - -The rule takes a single string option, which is a regular expression that type variables should match. - -Examples of **correct** code with a configuration of `'^T[A-Z][a-zA-Z]+$'`: - -```typescript -type ReadOnly = { - readonly [TKey in keyof TType]: TType[TKey]; -}; - -interface SimpleMap { - [key: string]: TValue; -} -``` - -Examples of **incorrect** code with a configuration of `'^T[A-Z][a-zA-Z]+$'`: - -```typescript -type ReadOnly = { readonly [Key in keyof T]: T[Key] }; - -interface SimpleMap { - [key: string]: T; -} -``` - -## When Not To Use It - -If you do not want to enforce a naming convention for type variables. - -## Further Reading - -- [TypeScript Generics](https://www.typescriptlang.org/docs/handbook/generics.html) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md index 4636cfea..023c7746 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md @@ -1,713 +1,24 @@ # Enforce consistent indentation (`indent`) -There are several common guidelines which require specific indentation of nested blocks and statements, like: - -```js -function hello(indentSize, type) { - if (indentSize === 4 && type !== 'tab') { - console.log('Each next indentation will increase on 4 spaces'); - } -} -``` - -These are the most common scenarios recommended in different style guides: - -- Two spaces, not longer and no tabs: Google, npm, NodeJS, Idiomatic, Felix -- Tabs: jQuery -- Four spaces: Crockford +## PLEASE READ THIS ISSUE BEFORE USING THIS RULE [#1824](https://github.com/typescript-eslint/typescript-eslint/issues/1824) ## Rule Details -This rule enforces a consistent indentation style. The default style is `4 spaces`. +This rule extends the base [`eslint/indent`](https://eslint.org/docs/rules/indent) rule. +It adds support for TypeScript nodes. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "indent": "off", + "@typescript-eslint/indent": ["error"] +} +``` ## Options -This rule has a mixed option: - -For example, for 2-space indentation: - -```cjson -{ - // note you must disable the base rule as it can report incorrect errors - "indent": "off", - "@typescript-eslint/indent": ["error", 2] -} -``` - -Or for tabbed indentation: - -```cjson -{ - // note you must disable the base rule as it can report incorrect errors - "indent": "off", - "@typescript-eslint/indent": ["error", "tab"] -} -``` - -Examples of **incorrect** code for this rule with the default options: - - -```js -/*eslint @typescript-eslint/indent: "error"*/ - -if (a) { - b=c; - function foo(d) { - e=f; - } -} -``` - -Examples of **correct** code for this rule with the default options: - - -```js -/*eslint @typescript-eslint/indent: "error"*/ - -if (a) { - b=c; - function foo(d) { - e=f; - } -} -``` - -This rule has an object option: - -- `"SwitchCase"` (default: 0) enforces indentation level for `case` clauses in `switch` statements -- `"VariableDeclarator"` (default: 1) enforces indentation level for `var` declarators; can also take an object to define separate rules for `var`, `let` and `const` declarations. -- `"outerIIFEBody"` (default: 1) enforces indentation level for file-level IIFEs. -- `"MemberExpression"` (default: 1) enforces indentation level for multi-line property chains. This can also be set to `"off"` to disable checking for `MemberExpression` indentation. -- `"FunctionDeclaration"` takes an object to define rules for function declarations. - - `parameters` (default: 1) enforces indentation level for parameters in a function declaration. This can either be a number indicating indentation level, or the string `"first"` indicating that all parameters of the declaration must be aligned with the first parameter. This can also be set to `"off"` to disable checking for `FunctionDeclaration` parameters. - - `body` (default: 1) enforces indentation level for the body of a function declaration. -- `"FunctionExpression"` takes an object to define rules for function expressions. - - `parameters` (default: 1) enforces indentation level for parameters in a function expression. This can either be a number indicating indentation level, or the string `"first"` indicating that all parameters of the expression must be aligned with the first parameter. This can also be set to `"off"` to disable checking for `FunctionExpression` parameters. - - `body` (default: 1) enforces indentation level for the body of a function expression. -- `"CallExpression"` takes an object to define rules for function call expressions. - - `arguments` (default: 1) enforces indentation level for arguments in a call expression. This can either be a number indicating indentation level, or the string `"first"` indicating that all arguments of the expression must be aligned with the first argument. This can also be set to `"off"` to disable checking for `CallExpression` arguments. -- `"ArrayExpression"` (default: 1) enforces indentation level for elements in arrays. It can also be set to the string `"first"`, indicating that all the elements in the array should be aligned with the first element. This can also be set to `"off"` to disable checking for array elements. -- `"ObjectExpression"` (default: 1) enforces indentation level for properties in objects. It can be set to the string `"first"`, indicating that all properties in the object should be aligned with the first property. This can also be set to `"off"` to disable checking for object properties. -- `"ImportDeclaration"` (default: 1) enforces indentation level for import statements. It can be set to the string `"first"`, indicating that all imported members from a module should be aligned with the first member in the list. This can also be set to `"off"` to disable checking for imported module members. -- `"flatTernaryExpressions": true` (`false` by default) requires no indentation for ternary expressions which are nested in other ternary expressions. -- `"ignoredNodes"` accepts an array of [selectors](https://eslint.org/docs/developer-guide/selectors). If an AST node is matched by any of the selectors, the indentation of tokens which are direct children of that node will be ignored. This can be used as an escape hatch to relax the rule if you disagree with the indentation that it enforces for a particular syntactic pattern. -- `"ignoreComments"` (default: false) can be used when comments do not need to be aligned with nodes on the previous or next line. - -Level of indentation denotes the multiple of the indent specified. Example: - -- Indent of 4 spaces with `VariableDeclarator` set to `2` will indent the multi-line variable declarations with 8 spaces. -- Indent of 2 spaces with `VariableDeclarator` set to `2` will indent the multi-line variable declarations with 4 spaces. -- Indent of 2 spaces with `VariableDeclarator` set to `{"var": 2, "let": 2, "const": 3}` will indent the multi-line variable declarations with 4 spaces for `var` and `let`, 6 spaces for `const` statements. -- Indent of tab with `VariableDeclarator` set to `2` will indent the multi-line variable declarations with 2 tabs. -- Indent of 2 spaces with `SwitchCase` set to `0` will not indent `case` clauses with respect to `switch` statements. -- Indent of 2 spaces with `SwitchCase` set to `1` will indent `case` clauses with 2 spaces with respect to `switch` statements. -- Indent of 2 spaces with `SwitchCase` set to `2` will indent `case` clauses with 4 spaces with respect to `switch` statements. -- Indent of tab with `SwitchCase` set to `2` will indent `case` clauses with 2 tabs with respect to `switch` statements. -- Indent of 2 spaces with `MemberExpression` set to `0` will indent the multi-line property chains with 0 spaces. -- Indent of 2 spaces with `MemberExpression` set to `1` will indent the multi-line property chains with 2 spaces. -- Indent of 2 spaces with `MemberExpression` set to `2` will indent the multi-line property chains with 4 spaces. -- Indent of 4 spaces with `MemberExpression` set to `0` will indent the multi-line property chains with 0 spaces. -- Indent of 4 spaces with `MemberExpression` set to `1` will indent the multi-line property chains with 4 spaces. -- Indent of 4 spaces with `MemberExpression` set to `2` will indent the multi-line property chains with 8 spaces. - -### tab - -Examples of **incorrect** code for this rule with the `"tab"` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", "tab"]*/ - -if (a) { - b=c; -function foo(d) { - e=f; - } -} -``` - -Examples of **correct** code for this rule with the `"tab"` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", "tab"]*/ - -if (a) { -/*tab*/b=c; -/*tab*/function foo(d) { -/*tab*//*tab*/e=f; -/*tab*/} -} -``` - -### `SwitchCase` - -Examples of **incorrect** code for this rule with the `2, { "SwitchCase": 1 }` options: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "SwitchCase": 1 }]*/ - -switch(a){ -case "a": - break; -case "b": - break; -} -``` - -Examples of **correct** code for this rule with the `2, { "SwitchCase": 1 }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "SwitchCase": 1 }]*/ - -switch(a){ - case "a": - break; - case "b": - break; -} -``` - -### `VariableDeclarator` - -Examples of **incorrect** code for this rule with the `2, { "VariableDeclarator": 1 }` options: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "VariableDeclarator": 1 }]*/ -/*eslint-env es6*/ - -var a, - b, - c; -let a, - b, - c; -const a = 1, - b = 2, - c = 3; -``` - -Examples of **correct** code for this rule with the `2, { "VariableDeclarator": 1 }` options: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "VariableDeclarator": 1 }]*/ -/*eslint-env es6*/ - -var a, - b, - c; -let a, - b, - c; -const a = 1, - b = 2, - c = 3; -``` - -Examples of **correct** code for this rule with the `2, { "VariableDeclarator": 2 }` options: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "VariableDeclarator": 2 }]*/ -/*eslint-env es6*/ - -var a, - b, - c; -let a, - b, - c; -const a = 1, - b = 2, - c = 3; -``` - -Examples of **correct** code for this rule with the `2, { "VariableDeclarator": { "var": 2, "let": 2, "const": 3 } }` options: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "VariableDeclarator": { "var": 2, "let": 2, "const": 3 } }]*/ -/*eslint-env es6*/ - -var a, - b, - c; -let a, - b, - c; -const a = 1, - b = 2, - c = 3; -``` - -### `outerIIFEBody` - -Examples of **incorrect** code for this rule with the options `2, { "outerIIFEBody": 0 }`: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "outerIIFEBody": 0 }]*/ - -(function() { - - function foo(x) { - return x + 1; - } - -})(); - - -if(y) { -console.log('foo'); -} -``` - -Examples of **correct** code for this rule with the options `2, {"outerIIFEBody": 0}`: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "outerIIFEBody": 0 }]*/ - -(function() { - -function foo(x) { - return x + 1; -} - -})(); - - -if(y) { - console.log('foo'); -} -``` - -### `MemberExpression` - -Examples of **incorrect** code for this rule with the `2, { "MemberExpression": 1 }` options: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "MemberExpression": 1 }]*/ - -foo -.bar -.baz() -``` - -Examples of **correct** code for this rule with the `2, { "MemberExpression": 1 }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "MemberExpression": 1 }]*/ - -foo - .bar - .baz(); -``` - -### `FunctionDeclaration` - -Examples of **incorrect** code for this rule with the `2, { "FunctionDeclaration": {"body": 1, "parameters": 2} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "FunctionDeclaration": {"body": 1, "parameters": 2} }]*/ - -function foo(bar, - baz, - qux) { - qux(); -} -``` - -Examples of **correct** code for this rule with the `2, { "FunctionDeclaration": {"body": 1, "parameters": 2} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "FunctionDeclaration": {"body": 1, "parameters": 2} }]*/ - -function foo(bar, - baz, - qux) { - qux(); -} -``` - -Examples of **incorrect** code for this rule with the `2, { "FunctionDeclaration": {"parameters": "first"} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"FunctionDeclaration": {"parameters": "first"}}]*/ - -function foo(bar, baz, - qux, boop) { - qux(); -} -``` - -Examples of **correct** code for this rule with the `2, { "FunctionDeclaration": {"parameters": "first"} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"FunctionDeclaration": {"parameters": "first"}}]*/ - -function foo(bar, baz, - qux, boop) { - qux(); -} -``` - -### `FunctionExpression` - -Examples of **incorrect** code for this rule with the `2, { "FunctionExpression": {"body": 1, "parameters": 2} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "FunctionExpression": {"body": 1, "parameters": 2} }]*/ - -var foo = function(bar, - baz, - qux) { - qux(); -} -``` - -Examples of **correct** code for this rule with the `2, { "FunctionExpression": {"body": 1, "parameters": 2} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "FunctionExpression": {"body": 1, "parameters": 2} }]*/ - -var foo = function(bar, - baz, - qux) { - qux(); -} -``` - -Examples of **incorrect** code for this rule with the `2, { "FunctionExpression": {"parameters": "first"} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"FunctionExpression": {"parameters": "first"}}]*/ - -var foo = function(bar, baz, - qux, boop) { - qux(); -} -``` - -Examples of **correct** code for this rule with the `2, { "FunctionExpression": {"parameters": "first"} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"FunctionExpression": {"parameters": "first"}}]*/ - -var foo = function(bar, baz, - qux, boop) { - qux(); -} -``` - -### `CallExpression` - -Examples of **incorrect** code for this rule with the `2, { "CallExpression": {"arguments": 1} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "CallExpression": {"arguments": 1} }]*/ - -foo(bar, - baz, - qux -); -``` - -Examples of **correct** code for this rule with the `2, { "CallExpression": {"arguments": 1} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "CallExpression": {"arguments": 1} }]*/ - -foo(bar, - baz, - qux -); -``` - -Examples of **incorrect** code for this rule with the `2, { "CallExpression": {"arguments": "first"} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"CallExpression": {"arguments": "first"}}]*/ - -foo(bar, baz, - baz, boop, beep); -``` - -Examples of **correct** code for this rule with the `2, { "CallExpression": {"arguments": "first"} }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"CallExpression": {"arguments": "first"}}]*/ - -foo(bar, baz, - baz, boop, beep); -``` - -### `ArrayExpression` - -Examples of **incorrect** code for this rule with the `2, { "ArrayExpression": 1 }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "ArrayExpression": 1 }]*/ - -var foo = [ - bar, -baz, - qux -]; -``` - -Examples of **correct** code for this rule with the `2, { "ArrayExpression": 1 }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "ArrayExpression": 1 }]*/ - -var foo = [ - bar, - baz, - qux -]; -``` - -Examples of **incorrect** code for this rule with the `2, { "ArrayExpression": "first" }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"ArrayExpression": "first"}]*/ - -var foo = [bar, - baz, - qux -]; -``` - -Examples of **correct** code for this rule with the `2, { "ArrayExpression": "first" }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"ArrayExpression": "first"}]*/ - -var foo = [bar, - baz, - qux -]; -``` - -### `ObjectExpression` - -Examples of **incorrect** code for this rule with the `2, { "ObjectExpression": 1 }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "ObjectExpression": 1 }]*/ - -var foo = { - bar: 1, -baz: 2, - qux: 3 -}; -``` - -Examples of **correct** code for this rule with the `2, { "ObjectExpression": 1 }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, { "ObjectExpression": 1 }]*/ - -var foo = { - bar: 1, - baz: 2, - qux: 3 -}; -``` - -Examples of **incorrect** code for this rule with the `2, { "ObjectExpression": "first" }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"ObjectExpression": "first"}]*/ - -var foo = { bar: 1, - baz: 2 }; -``` - -Examples of **correct** code for this rule with the `2, { "ObjectExpression": "first" }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 2, {"ObjectExpression": "first"}]*/ - -var foo = { bar: 1, - baz: 2 }; -``` - -### `ImportDeclaration` - -Examples of **correct** code for this rule with the `4, { "ImportDeclaration": 1 }` option (the default): - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { ImportDeclaration: 1 }]*/ - -import { foo, - bar, - baz, -} from 'qux'; - -import { - foo, - bar, - baz, -} from 'qux'; -``` - -Examples of **incorrect** code for this rule with the `4, { ImportDeclaration: "first" }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { ImportDeclaration: "first" }]*/ - -import { foo, - bar, - baz, -} from 'qux'; -``` - -Examples of **correct** code for this rule with the `4, { ImportDeclaration: "first" }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { ImportDeclaration: "first" }]*/ - -import { foo, - bar, - baz, -} from 'qux'; -``` - -### `flatTernaryExpressions` - -Examples of **incorrect** code for this rule with the default `4, { "flatTernaryExpressions": false }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "flatTernaryExpressions": false }]*/ - -var a = - foo ? bar : - baz ? qux : - boop; -``` - -Examples of **correct** code for this rule with the default `4, { "flatTernaryExpressions": false }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "flatTernaryExpressions": false }]*/ - -var a = - foo ? bar : - baz ? qux : - boop; -``` - -Examples of **incorrect** code for this rule with the `4, { "flatTernaryExpressions": true }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "flatTernaryExpressions": true }]*/ - -var a = - foo ? bar : - baz ? qux : - boop; -``` - -Examples of **correct** code for this rule with the `4, { "flatTernaryExpressions": true }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "flatTernaryExpressions": true }]*/ - -var a = - foo ? bar : - baz ? qux : - boop; -``` - -### `ignoredNodes` - -The following configuration ignores the indentation of `ConditionalExpression` ("ternary expression") nodes: - -Examples of **correct** code for this rule with the `4, { "ignoredNodes": ["ConditionalExpression"] }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "ignoredNodes": ["ConditionalExpression"] }]*/ - -var a = foo - ? bar - : baz; - -var a = foo - ? bar -: baz; -``` - -The following configuration ignores indentation in the body of IIFEs. - -Examples of **correct** code for this rule with the `4, { "ignoredNodes": ["CallExpression > FunctionExpression.callee > BlockStatement.body"] }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "ignoredNodes": ["CallExpression > FunctionExpression.callee > BlockStatement.body"] }]*/ - -(function() { - -foo(); -bar(); - -}) -``` - -### `ignoreComments` - -Examples of additional **correct** code for this rule with the `4, { "ignoreComments": true }` option: - - -```js -/*eslint @typescript-eslint/indent: ["error", 4, { "ignoreComments": true }] */ - -if (foo) { - doSomething(); - -// comment intentionally de-indented - doSomethingElse(); -} -``` - -## Compatibility - -- **JSHint**: `indent` -- **JSCS**: [`validateIndentation`](https://jscs-dev.github.io/rule/validateIndentation) +See [`eslint/indent` options](https://eslint.org/docs/rules/indent#options). Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/indent.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md new file mode 100644 index 00000000..f83c5bd9 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md @@ -0,0 +1,22 @@ +# require or disallow initialization in variable declarations (`init-declarations`) + +## Rule Details + +This rule extends the base [`eslint/init-declarations`](https://eslint.org/docs/rules/init-declarations) rule. +It adds support for TypeScript's `declare` variables. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "init-declarations": "off", + "@typescript-eslint/init-declarations": ["error"] +} +``` + +## Options + +See [`eslint/init-declarations` options](https://eslint.org/docs/rules/init-declarations#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/init-declarations.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/interface-name-prefix.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/interface-name-prefix.md deleted file mode 100644 index f6439b49..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/interface-name-prefix.md +++ /dev/null @@ -1,136 +0,0 @@ -# Require that interface names should or should not prefixed with `I` (`interface-name-prefix`) - -Interfaces often represent important software contracts, so it can be helpful to prefix their names with `I`. -The unprefixed name is then available for a class that provides a standard implementation of the interface. -Alternatively, the contributor guidelines for the TypeScript repo suggest -[never prefixing](https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines#names) interfaces with `I`. - -## Rule Details - -This rule enforces whether or not the `I` prefix is required for interface names. -The `_` prefix is sometimes used to designate a private declaration, so the rule also supports a private interface -that might be named `_IAnimal` instead of `IAnimal`. - -## Options - -This rule has an object option: - -- `{ "prefixWithI": "never" }`: (default) disallows all interfaces being prefixed with `"I"` or `"_I"` -- `{ "prefixWithI": "always" }`: requires all interfaces be prefixed with `"I"` (but does not allow `"_I"`) -- `{ "prefixWithI": "always", "allowUnderscorePrefix": true }`: requires all interfaces be prefixed with - either `"I"` or `"_I"` - -For backwards compatibility, this rule supports a string option instead: - -- `"never"`: Equivalent to `{ "prefixWithI": "never" }` -- `"always"`: Equivalent to `{ "prefixWithI": "always" }` - -## Examples - -### never - -**Configuration:** `{ "prefixWithI": "never" }` - -The following patterns are considered warnings: - -```ts -interface IAnimal { - name: string; -} - -interface IIguana { - name: string; -} - -interface _IAnimal { - name: string; -} -``` - -The following patterns are not warnings: - -```ts -interface Animal { - name: string; -} - -interface Iguana { - name: string; -} -``` - -### always - -**Configuration:** `{ "prefixWithI": "always" }` - -The following patterns are considered warnings: - -```ts -interface Animal { - name: string; -} - -interface Iguana { - name: string; -} - -interface _IAnimal { - name: string; -} -``` - -The following patterns are not warnings: - -```ts -interface IAnimal { - name: string; -} - -interface IIguana { - name: string; -} -``` - -### always and allowing underscores - -**Configuration:** `{ "prefixWithI": "always", "allowUnderscorePrefix": true }` - -The following patterns are considered warnings: - -```ts -interface Animal { - name: string; -} - -interface Iguana { - name: string; -} -``` - -The following patterns are not warnings: - -```ts -interface IAnimal { - name: string; -} - -interface IIguana { - name: string; -} - -interface _IAnimal { - name: string; -} -``` - -## When Not To Use It - -If you do not want to enforce interface name prefixing. - -## Further Reading - -TypeScript [Interfaces](https://www.typescriptlang.org/docs/handbook/interfaces.html) - -## Compatibility - -TSLint: [interface-name](https://palantir.github.io/tslint/rules/interface-name/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md new file mode 100644 index 00000000..3178542d --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md @@ -0,0 +1,22 @@ +# Enforce consistent spacing before and after keywords (`keyword-spacing`) + +## Rule Details + +This rule extends the base [`eslint/keyword-spacing`](https://eslint.org/docs/rules/keyword-spacing) rule. +This version adds support for generic type parameters on function calls. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "keyword-spacing": "off", + "@typescript-eslint/keyword-spacing": ["error"] +} +``` + +## Options + +See [`eslint/keyword-spacing` options](https://eslint.org/docs/rules/keyword-spacing#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/keyword-spacing.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md new file mode 100644 index 00000000..e2692bb1 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md @@ -0,0 +1,73 @@ +# Require or disallow an empty line between class members (`lines-between-class-members`) + +This rule improves readability by enforcing lines between class members. It will not check empty lines before the first member and after the last member. This rule require or disallow an empty line between class members. + +## Rule Details + +This rule extends the base [`eslint/lines-between-class-members`](https://eslint.org/docs/rules/lines-between-class-members) rule. +It adds support for ignoring overload methods in a class. + +See the [ESLint documentation](https://eslint.org/docs/rules/lines-between-class-members) for more details on the `lines-between-class-members` rule. + +## Rule Changes + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "lines-between-class-members": "off", + "@typescript-eslint/lines-between-class-members": ["error"] +} +``` + +In addition to the options supported by the `lines-between-class-members` rule in ESLint core, the rule adds the following options: + +## Options + +This rule has a string option and an object option. + +- Object option: + + - `"exceptAfterOverload": true` (default) - Skip checking empty lines after overload class members + - `"exceptAfterOverload": false` - **do not** skip checking empty lines after overload class members + +- [See the other options allowed](https://github.com/eslint/eslint/blob/master/docs/rules/lines-between-class-members.md#options) + +### `exceptAfterOverload: true` + +Examples of **correct** code for the `{ "exceptAfterOverload": true }` option: + +```ts +/*eslint @typescript-eslint/lines-between-class-members: ["error", "always", { "exceptAfterOverload": true }]*/ + +class foo { + bar(a: string): void; + bar(a: string, b: string): void; + bar(a: string, b: string) {} + + baz() {} + + qux() {} +} +``` + +### `exceptAfterOverload: false` + +Examples of **correct** code for the `{ "exceptAfterOverload": false }` option: + +```ts +/*eslint @typescript-eslint/lines-between-class-members: ["error", "always", { "exceptAfterOverload": false }]*/ + +class foo { + bar(a: string): void; + + bar(a: string, b: string): void; + + bar(a: string, b: string) {} + + baz() {} + + qux() {} +} +``` + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/lines-between-class-members.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-naming.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-naming.md deleted file mode 100644 index e12f4f23..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-naming.md +++ /dev/null @@ -1,41 +0,0 @@ -# Enforces naming conventions for class members by visibility (`member-naming`) - -It can be helpful to enforce naming conventions for `private` (and sometimes `protected`) members of an object. For example, prefixing private properties with a `_` allows them to be easily discerned when being inspected by tools that do not have knowledge of TypeScript (such as most debuggers). - -## Rule Details - -This rule allows you to enforce conventions for class property and method names by their visibility. By default, it enforces nothing. - -> Note: constructors are explicitly ignored regardless of the the regular expression options provided - -## Options - -You can specify a regular expression to test the names of properties for each visibility level: `public`, `protected`, `private`. - -Examples of **correct** code with `{ "private": "^_" }` specified: - -```ts -class HappyClass { - private _foo: string; - private _bar = 123; - private _fizz() {} -} -``` - -Examples of **incorrect** code with `{ "private": "^_" }` specified: - -```ts -class SadClass { - private foo: string; - private bar = 123; - private fizz() {} -} -``` - -## When Not To Use It - -If you do not want to enforce per-visibility naming rules for member properties. - -## Further Reading - -- ESLint's [`camelcase` rule](https://eslint.org/docs/rules/camelcase) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md index d028d844..eda1c573 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md @@ -1,64 +1,95 @@ # Require a consistent member declaration order (`member-ordering`) -A consistent ordering of fields, methods and constructors can make interfaces, type literals, classes and class -expressions easier to read, navigate and edit. +A consistent ordering of fields, methods and constructors can make interfaces, type literals, classes and class expressions easier to read, navigate and edit. ## Rule Details -This rule aims to standardize the way class declarations, class expressions, interfaces and type literals are structured. +This rule aims to standardize the way class declarations, class expressions, interfaces and type literals are structured and ordered. -It allows to group members by their type (e.g. `public-static-field`, `protected-static-field`, `private-static-field`, `public-instance-field`, ...). By default, their order is the same inside `classes`, `classExpressions`, `interfaces` and `typeLiterals` (note: not all member types apply to `interfaces` and `typeLiterals`). It is possible to define the order for any of those individually or to change the default order for all of them by setting the `default` option. +### Grouping and sorting member groups + +It allows to group members by their type (e.g. `public-static-field`, `protected-static-field`, `private-static-field`, `public-instance-field`, ...) and enforce a certain order for these groups. By default, their order is the same inside `classes`, `classExpressions`, `interfaces` and `typeLiterals` (note: not all member types apply to `interfaces` and `typeLiterals`). It is possible to define the order for any of those individually or to change the default order for all of them by setting the `default` option. + +### Sorting members + +Besides grouping the members and sorting their groups, this rule also allows to sort the members themselves (e.g. `a`, `b`, `c`, ...). You have 2 options: Sort all of them while ignoring their type or sort them while respecting their types (e.g. sort all fields in an interface alphabetically). ## Options -```ts -{ - default?: Array | never - classes?: Array | never - classExpressions?: Array | never +These options allow to specify how to group the members and sort their groups. - interfaces?: ['signature' | 'field' | 'method' | 'constructor'] | never - typeLiterals?: ['signature' | 'field' | 'method' | 'constructor'] | never +- Sort groups, don't enforce member order: Use `memberTypes` +- Sort members, don't enforce group order: Use `order` +- Sort members within groups: Use `memberTypes` and `order` + +```ts +type TypeOptions = + | { + memberTypes: Array | 'never', + order?: 'alphabetically' | 'as-written', + } + | { + order: 'alphabetically', + }; + +{ + default?: TypeOptions, + + classes?: TypeOptions, + classExpressions?: TypeOptions, + + interfaces?: TypeOptions<'signature' | 'field' | 'method' | 'constructor'>, + typeLiterals?: TypeOptions<'signature' | 'field' | 'method' | 'constructor'>, } ``` See below for the possible definitions of `MemberType`. +### Deprecated syntax + +Note: There is a deprecated syntax to specify the member types as an array. + ### Member types (granular form) There are multiple ways to specify the member types. The most explicit and granular form is the following: -```json5 +```jsonc [ // Index signature - 'signature', + "signature", // Fields - 'public-static-field', - 'protected-static-field', - 'private-static-field', - 'public-instance-field', - 'protected-instance-field', - 'private-instance-field', - 'public-abstract-field', - 'protected-abstract-field', - 'private-abstract-field', + "public-static-field", + "protected-static-field", + "private-static-field", + "public-decorated-field", + "protected-decorated-field", + "private-decorated-field", + "public-instance-field", + "protected-instance-field", + "private-instance-field", + "public-abstract-field", + "protected-abstract-field", + "private-abstract-field", // Constructors - 'public-constructor', - 'protected-constructor', - 'private-constructor', + "public-constructor", + "protected-constructor", + "private-constructor", // Methods - 'public-static-method', - 'protected-static-method', - 'private-static-method', - 'public-instance-method', - 'protected-instance-method', - 'private-instance-method', - 'public-abstract-method', - 'protected-abstract-method', - 'private-abstract-method', + "public-static-method", + "protected-static-method", + "private-static-method", + "public-decorated-method", + "protected-decorated-method", + "private-decorated-method", + "public-instance-method", + "protected-instance-method", + "private-instance-method", + "public-abstract-method", + "protected-abstract-method", + "private-abstract-method" ] ``` @@ -68,23 +99,51 @@ Note: If you only specify some of the possible types, the non-specified ones can It is also possible to group member types by their accessibility (`static`, `instance`, `abstract`), ignoring their scope. -```json5 +```jsonc [ // Index signature // No accessibility for index signature. See above. // Fields - 'public-field', // = ['public-static-field', 'public-instance-field']) - 'protected-field', // = ['protected-static-field', 'protected-instance-field']) - 'private-field', // = ['private-static-field', 'private-instance-field']) + "public-field", // = ["public-static-field", "public-instance-field"] + "protected-field", // = ["protected-static-field", "protected-instance-field"] + "private-field", // = ["private-static-field", "private-instance-field"] // Constructors // Only the accessibility of constructors is configurable. See below. // Methods - 'public-method', // = ['public-static-method', 'public-instance-method']) - 'protected-method', // = ['protected-static-method', 'protected-instance-method']) - 'private-method', // = ['private-static-method', 'private-instance-method']) + "public-method", // = ["public-static-method", "public-instance-method"] + "protected-method", // = ["protected-static-method", "protected-instance-method"] + "private-method" // = ["private-static-method", "private-instance-method"] +] +``` + +### Member group types (with accessibility and a decorator) + +It is also possible to group methods or fields with a decorator separately, optionally specifying +their accessibility. + +```jsonc +[ + // Index signature + // No decorators for index signature. + + // Fields + "public-decorated-field", + "protected-decorated-field", + "private-decorated-field", + + "decorated-field", // = ["public-decorated-field", "protected-decorated-field", "private-decorated-field"] + + // Constructors + // There are no decorators for constructors. + + "public-decorated-method", + "protected-decorated-method", + "private-decorated-method", + + "decorated-method" // = ["public-decorated-method", "protected-decorated-method", "private-decorated-method"] ] ``` @@ -92,23 +151,23 @@ It is also possible to group member types by their accessibility (`static`, `ins Another option is to group the member types by their scope (`public`, `protected`, `private`), ignoring their accessibility. -```json5 +```jsonc [ // Index signature // No scope for index signature. See above. // Fields - 'static-field', // = ['public-static-field', 'protected-static-field', 'private-static-field']) - 'instance-field', // = ['public-instance-field', 'protected-instance-field', 'private-instance-field']) - 'abstract-field', // = ['public-abstract-field', 'protected-abstract-field', 'private-abstract-field']) + "static-field", // = ["public-static-field", "protected-static-field", "private-static-field"] + "instance-field", // = ["public-instance-field", "protected-instance-field", "private-instance-field"] + "abstract-field", // = ["public-abstract-field", "protected-abstract-field", "private-abstract-field"] // Constructors - 'constructor', // = ['public-constructor', 'protected-constructor', 'private-constructor']) + "constructor", // = ["public-constructor", "protected-constructor", "private-constructor"] // Methods - 'static-method', // = ['public-static-method', 'protected-static-method', 'private-static-method']) - 'instance-method', // = ['public-instance-method', 'protected-instance-method', 'private-instance-method']) - 'abstract-method', // = ['public-abstract-method', 'protected-abstract-method', 'private-abstract-method']) + "static-method", // = ["public-static-method", "protected-static-method", "private-static-method"] + "instance-method", // = ["public-instance-method", "protected-instance-method", "private-instance-method"] + "abstract-method" // = ["public-abstract-method", "protected-abstract-method", "private-abstract-method"] ] ``` @@ -116,21 +175,21 @@ Another option is to group the member types by their scope (`public`, `protected The third grouping option is to ignore both scope and accessibility. -```json5 +```jsonc [ // Index signature // No grouping for index signature. See above. // Fields - 'field', // = ['public-static-field', 'protected-static-field', 'private-static-field', 'public-instance-field', 'protected-instance-field', 'private-instance-field', - // 'public-abstract-field', 'protected-abstract-field', private-abstract-field']) + "field", // = ["public-static-field", "protected-static-field", "private-static-field", "public-instance-field", "protected-instance-field", "private-instance-field", + // "public-abstract-field", "protected-abstract-field", private-abstract-field"] // Constructors // Only the accessibility of constructors is configurable. See above. // Methods - 'method', // = ['public-static-method', 'protected-static-method', 'private-static-method', 'public-instance-method', 'protected-instance-method', 'private-instance-method', - // 'public-abstract-method', 'protected-abstract-method', 'private-abstract-method']) + "method" // = ["public-static-method", "protected-static-method", "private-static-method", "public-instance-method", "protected-instance-method", "private-instance-method", + // "public-abstract-method", "protected-abstract-method", "private-abstract-method"] ] ``` @@ -138,15 +197,21 @@ The third grouping option is to ignore both scope and accessibility. The default configuration looks as follows: -```json +```jsonc { "default": [ + // Index signature "signature", + // Fields "public-static-field", "protected-static-field", "private-static-field", + "public-decorated-field", + "protected-decorated-field", + "private-decorated-field", + "public-instance-field", "protected-instance-field", "private-instance-field", @@ -163,14 +228,26 @@ The default configuration looks as follows: "instance-field", "abstract-field", + "decorated-field", + "field", + // Constructors + "public-constructor", + "protected-constructor", + "private-constructor", + "constructor", + // Methods "public-static-method", "protected-static-method", "private-static-method", + "public-decorated-method", + "protected-decorated-method", + "private-decorated-method", + "public-instance-method", "protected-instance-method", "private-instance-method", @@ -187,6 +264,8 @@ The default configuration looks as follows: "instance-method", "abstract-method", + "decorated-method", + "method" ] } @@ -194,6 +273,8 @@ The default configuration looks as follows: Note: The default configuration contains member group types which contain other member types (see above). This is intentional to provide better error messages. +Note: By default, the members are not sorted. If you want to sort them alphabetically, you have to provide a custom configuration. + ## Examples ### Custom `default` configuration @@ -448,7 +529,7 @@ const foo = class { }; ``` -Issue: Public static fields should come first, followed by static fields and instance fields. +Note: Public static fields should come first, followed by static fields and instance fields. ##### Correct examples @@ -542,21 +623,19 @@ class Foo { ##### Correct example -Examples of **correct** code for `{ "classes": [...] }` option: - ```ts class Foo { private C: string; // (irrelevant) public D: string; // (irrelevant) - public static E: string; // -> public static field + public B(): void {} // -> public instance method constructor() {} // (irrelevant) public static A(): void {} // (irrelevant) - public B(): void {} // -> public instance method + public static E: string; // -> public static field } ``` @@ -712,6 +791,73 @@ type Foo = { }; ``` +### Sorting alphabetically within member groups + +It is possible to sort all members within a group alphabetically. + +#### Configuration: `{ "default": { "memberTypes": , "order": "alphabetically" } }` + +This will apply the default order (see above) and enforce an alphabetic order within each group. + +##### Incorrect examples + +```ts +interface Foo { + a: x; + b: x; + c: x; + + new (): Bar; + (): Baz; + + a(): void; + b(): void; + c(): void; + + // Wrong group order, should be placed before all field definitions + [a: string]: number; +} +``` + +```ts +interface Foo { + [a: string]: number; + + a: x; + b: x; + c: x; + + new (): Bar; + (): Baz; + + // Wrong alphabetic order within group + c(): void; + b(): void; + a(): void; +} +``` + +### Sorting alphabetically while ignoring member groups + +It is also possible to sort all members and ignore the member groups completely. + +#### Configuration: `{ "default": { "memberTypes": "never", "order": "alphabetically" } }` + +##### Incorrect example + +```ts +interface Foo { + b(): void; + a: b; + + [a: string]: number; // Order doesn't matter (no sortable identifier) + new (): Bar; // Order doesn't matter (no sortable identifier) + (): Baz; // Order doesn't matter (no sortable identifier) +} +``` + +Note: Wrong alphabetic order `b(): void` should come after `a: b`. + ## When Not To Use It If you don't care about the general structure of your classes and interfaces, then you will not need this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md new file mode 100644 index 00000000..4358ee36 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md @@ -0,0 +1,94 @@ +# Enforces using a particular method signature syntax. (`method-signature-style`) + +There are two ways to define an object/interface function property. + +```ts +// method shorthand syntax +interface T1 { + func(arg: string): number; +} + +// regular property with function type +interface T2 { + func: (arg: string) => number; +} +``` + +A good practice is to use the TypeScript's `strict` option (which implies `strictFunctionTypes`) which enables correct typechecking for function properties only (method signatures get old behavior). + +TypeScript FAQ: + +> A method and a function property of the same type behave differently. +> Methods are always bivariant in their argument, while function properties are contravariant in their argument under `strictFunctionTypes`. + +See the reasoning behind that in the [TypeScript PR for the compiler option](https://github.com/microsoft/TypeScript/pull/18654). + +## Options + +This rule accepts one string option: + +- `"property"`: Enforce using property signature for functions. Use this to enforce maximum correctness together with TypeScript's strict mode. +- `"method"`: Enforce using method signature for functions. Use this if you aren't using TypeScript's strict mode and prefer this style. + +The default is `"property"`. + +## Rule Details + +Examples of **incorrect** code with `property` option. + +```ts +interface T1 { + func(arg: string): number; +} +type T2 = { + func(arg: boolean): void; +}; +interface T3 { + func(arg: number): void; + func(arg: string): void; + func(arg: boolean): void; +} +``` + +Examples of **correct** code with `property` option. + +```ts +interface T1 { + func: (arg: string) => number; +} +type T2 = { + func: (arg: boolean) => void; +}; +// this is equivalent to the overload +interface T3 { + func: ((arg: number) => void) & + ((arg: string) => void) & + ((arg: boolean) => void); +} +``` + +Examples of **incorrect** code with `method` option. + +```ts +interface T1 { + func: (arg: string) => number; +} +type T2 = { + func: (arg: boolean) => void; +}; +``` + +Examples of **correct** code with `method` option. + +```ts +interface T1 { + func(arg: string): number; +} +type T2 = { + func(arg: boolean): void; +}; +``` + +## When Not To Use It + +If you don't want to enforce a particular style for object/interface function types, and/or if you don't use `strictFunctionTypes`, then you don't need this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md index 77661230..d57bc1c6 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md @@ -1,7 +1,7 @@ # Enforces naming conventions for everything across a codebase (`naming-convention`) Enforcing naming conventions helps keep the codebase consistent, and reduces overhead when thinking about how to name a variable. -Additionally, a well designed style guide can help communicate intent, such as by enforcing all private properties begin with an `_`, and all global-level constants are written in `UPPER_CASE`. +Additionally, a well-designed style guide can help communicate intent, such as by enforcing all private properties begin with an `_`, and all global-level constants are written in `UPPER_CASE`. There are many different rules that have existed over time, but they have had the problem of not having enough granularity, meaning it was hard to have a well defined style guide, and most of the time you needed 3 or more rules at once to enforce different conventions, hoping they didn't conflict. @@ -39,7 +39,7 @@ type Options = { suffix?: string[]; // selector options - selector: Selector; + selector: Selector | Selector[]; filter?: | string | { @@ -51,7 +51,7 @@ type Options = { types?: Types[]; }[]; -// the default config essentially does the same thing as ESLint's camelcase rule +// the default config is similar to ESLint's camelcase rule but more strict const defaultOptions: Options = [ { selector: 'default', @@ -150,9 +150,13 @@ The `prefix` / `suffix` options control which prefix/suffix strings must exist f If these are provided, the identifier must start with one of the provided values. For example, if you provide `{ prefix: ['IFace', 'Class', 'Type'] }`, then the following names are valid: `IFaceFoo`, `ClassBar`, `TypeBaz`, but the name `Bang` is not valid, as it contains none of the prefixes. +**Note:** As [documented above](#format-options), the prefix is trimmed before format is validated, therefore PascalCase must be used to allow variables such as `isEnabled` using the prefix `is`. + ### Selector Options - `selector` (see "Allowed Selectors, Modifiers and Types" below). + - Accepts one or array of selectors to define an option block that applies to one or multiple selectors. + - For example, if you provide `{ selector: ['variable', 'function'] }`, then it will apply the same option to variable and function nodes. - `modifiers` allows you to specify which modifiers to granularly apply to, such as the accessibility (`private`/`public`/`protected`), or if the thing is `static`, etc. - The name must match _all_ of the modifiers. - For example, if you provide `{ modifiers: ['private', 'static', 'readonly'] }`, then it will only match something that is `private static readonly`, and something that is just `private` will not match. @@ -174,7 +178,7 @@ For example, if you provide the following config: [ /* 1 */ { selector: 'default', format: ['camelCase'] }, /* 2 */ { selector: 'variable', format: ['snake_case'] }, - /* 3 */ { selector: 'variable', type: ['boolean'], format: ['UPPER_CASE'] }, + /* 3 */ { selector: 'variable', types: ['boolean'], format: ['UPPER_CASE'] }, /* 4 */ { selector: 'variableLike', format: ['PascalCase'] }, ]; ``` @@ -190,7 +194,7 @@ There are two types of selectors, individual selectors, and grouped selectors. Individual Selectors match specific, well-defined sets. There is no overlap between each of the individual selectors. - `variable` - matches any `var` / `let` / `const` variable name. - - Allowed `modifiers`: none. + - Allowed `modifiers`: `const`. - Allowed `types`: `boolean`, `string`, `number`, `function`, `array`. - `function` - matches any named function declaration or named function expression. - Allowed `modifiers`: none. @@ -277,6 +281,8 @@ Group Selectors are provided for convenience, and essentially bundle up sets of ### Enforce that boolean variables are prefixed with an allowed verb +**Note:** As [documented above](#format-options), the prefix is trimmed before format is validated, thus PascalCase must be used to allow variables such as `isEnabled`. + ```json { "@typescript-eslint/naming-convention": [ @@ -305,8 +311,25 @@ Group Selectors are provided for convenience, and essentially bundle up sets of } ``` +### Enforce that all const variables are in UPPER_CASE + +```json +{ + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "variable", + "modifiers": ["const"], + "format": ["UPPER_CASE"] + } + ] +} +``` + ### Enforce that type parameters (generics) are prefixed with `T` +This allows you to emulate the old `generic-type-naming` rule. + ```json { "@typescript-eslint/naming-convention": [ @@ -320,10 +343,91 @@ Group Selectors are provided for convenience, and essentially bundle up sets of } ``` +### Enforce that interface names do not begin with an `I` + +This allows you to emulate the old `interface-name-prefix` rule. + +```json +{ + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "interface", + "format": ["PascalCase"], + "custom": { + "regex": "^I[A-Z]", + "match": false + } + } + ] +} +``` + +### Enforce that variable and function names are in camelCase + +This allows you to lint multiple type with same pattern. + +```json +{ + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": ["variable", "function"], + "format": ["camelCase"], + "leadingUnderscore": "allow" + } + ] +} +``` + +### Ignore properties that require quotes + +Sometimes you have to use a quoted name that breaks the convention (for example, HTTP headers). +If this is a common thing in your codebase, then you can use the `filter` option in one of two ways: + +You can use the `filter` option to ignore specific names only: + +```jsonc +{ + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "property", + "format": ["strictCamelCase"], + "filter": { + // you can expand this regex to add more allowed names + "regex": "^(Property-Name-One|Property-Name-Two)$", + "match": false + } + } + ] +} +``` + +You can use the `filter` option to ignore names that require quoting: + +```jsonc +{ + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "property", + "format": ["strictCamelCase"], + "filter": { + // you can expand this regex as you find more cases that require quoting that you want to allow + "regex": "[- ]", + "match": false + } + } + ] +} +``` + ### Enforce the codebase follows ESLint's `camelcase` conventions ```json { + "camelcase": "off", "@typescript-eslint/naming-convention": [ "error", { diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md index 3ab59cbc..fb9a68e7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md @@ -1,10 +1,9 @@ # Disallow generic `Array` constructors (`no-array-constructor`) -Use of the `Array` constructor to construct a new array is generally discouraged in favor of array literal notation because of the single-argument pitfall and because the `Array` global may be redefined. Two exceptions are when the Array constructor is used to intentionally create sparse arrays of a specified size by giving the constructor a single numeric argument, or when using TypeScript type parameters to specify the type of the items of the array (`new Array()`). - ## Rule Details -This rule disallows `Array` constructors. +This rule extends the base [`eslint/no-array-constructor`](https://eslint.org/docs/rules/no-array-constructor) rule. +It adds support for the generically typed `Array` constructor (`new Array()`). Examples of **incorrect** code for this rule: @@ -27,8 +26,18 @@ Array(500); new Array(someOtherArray.length); ``` -## When Not To Use It +## How to use -This rule enforces a nearly universal stylistic concern. That being said, this rule may be disabled if the constructor style is preferred. +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-array-constructor": "off", + "@typescript-eslint/no-array-constructor": ["error"] +} +``` -Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/7685fed33b15763ee3cf7dbe1facfc5ba85173f3/docs/rules/no-array-constructor.md) +## Options + +See [`eslint/no-array-constructor` options](https://eslint.org/docs/rules/no-array-constructor#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-array-constructor.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md index 40500476..f1c2abab 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md @@ -1,13 +1,13 @@ # Requires that `.toString()` is only called on objects which provide useful information when stringified (`no-base-to-string`) -JavaScript will call `toString()` on an object when it is converted to a string, such as when `+` adding to a string or in `${}` template literals. +JavaScript will call `toString()` on an object when it is converted to a string, such as when `+` adding to a string or in `${}` template literals. The default Object `.toString()` returns `"[object Object]"`, so this rule requires stringified objects define a more useful `.toString()` method. Note that `Function` provides its own `.toString()` that returns the function's code. Functions are not flagged by this rule. -This rule has some overlap with with [`restrict-plus-operands`](./restrict-plus-operands.md) and [`restrict-template-expressions`](./restrict-template-expressions.md). +This rule has some overlap with [`restrict-plus-operands`](./restrict-plus-operands.md) and [`restrict-template-expressions`](./restrict-template-expressions.md). ## Rule Details @@ -52,6 +52,34 @@ const literalWithToString = { `Value: ${literalWithToString}`; ``` +## Options + +```ts +type Options = { + ignoredTypeNames?: string[]; +}; + +const defaultOptions: Options = { + ignoredTypeNames: ['RegExp'], +}; +``` + +### `ignoredTypeNames` + +A string array of type names to ignore, this is useful for types missing `toString()` (but actually has `toString()`). +There are some types missing `toString()` in old version TypeScript, like `RegExp`, `URL`, `URLSearchParams` etc. + +The following patterns are considered correct with the default options `{ ignoredTypeNames: ["RegExp"] }`: + +```ts +`${/regex/}`; +'' + /regex/; +/regex/.toString(); +let value = /regex/; +value.toString(); +let text = `${value}`; +``` + ## When Not To Use It If you don't mind `"[object Object]"` in your strings, then you will not need this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md new file mode 100644 index 00000000..a61f6a8a --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md @@ -0,0 +1,46 @@ +# Disallow non-null assertion in locations that may be confusing (`no-confusing-non-null-assertion`) + +## Rule Details + +Using a non-null assertion (`!`) next to an assign or equals check (`=` or `==` or `===`) creates code that is confusing as it looks similar to a not equals check (`!=` `!==`). + +```typescript +a! == b; // a non-null assertions(`!`) and an equals test(`==`) +a !== b; // not equals test(`!==`) +a! === b; // a non-null assertions(`!`) and an triple equals test(`===`) +``` + +Examples of **incorrect** code for this rule: + +```ts +interface Foo { + bar?: string; + num?: number; +} + +const foo: Foo = getFoo(); +const isEqualsBar = foo.bar! == 'hello'; +const isEqualsNum = 1 + foo.num! == 2; +``` + +Examples of **correct** code for this rule: + + +```ts +interface Foo { + bar?: string; + num?: number; +} + +const foo: Foo = getFoo(); +const isEqualsBar = foo.bar == 'hello'; +const isEqualsNum = (1 + foo.num!) == 2; +``` + +## When Not To Use It + +If you don't care about this confusion, then you will not need this rule. + +## Further Reading + +- [`Issue: Easy misunderstanding: "! ==="`](https://github.com/microsoft/TypeScript/issues/37837) in [TypeScript repo](https://github.com/microsoft/TypeScript) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md index d0b3b57d..ddfc1b9f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md @@ -7,7 +7,7 @@ It adds support for TypeScript's method overload definitions. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "no-dupe-class-members": "off", @@ -15,4 +15,8 @@ It adds support for TypeScript's method overload definitions. } ``` +## Options + +See [`eslint/no-dupe-class-members` options](https://eslint.org/docs/rules/no-dupe-class-members#options). + Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-dupe-class-members.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md index 17628cb9..356700d8 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md @@ -1,80 +1,90 @@ # Disallow empty functions (`no-empty-function`) -Empty functions can reduce readability because readers need to guess whether it’s intentional or not. So writing a clear comment for empty functions is a good practice. - ## Rule Details -The `@typescript-eslint/no-empty-function` rule extends the `no-empty-function` rule from ESLint core, and adds support for handling TypeScript specific code that would otherwise trigger the rule. +This rule extends the base [`eslint/no-empty-function`](https://eslint.org/docs/rules/no-empty-function) rule. +It adds support for handling TypeScript specific code that would otherwise trigger the rule. -One example of valid TypeScript specific code that would otherwise trigger the `no-empty-function` rule is the use of [parameter properties](https://www.typescriptlang.org/docs/handbook/classes.html#parameter-properties) in constructor functions: +One example of valid TypeScript specific code that would otherwise trigger the `no-empty-function` rule is the use of [parameter properties](https://www.typescriptlang.org/docs/handbook/classes.html#parameter-properties) in constructor functions. -```typescript -class Person { - constructor(private firstName: string, private surname: string) {} -} -``` +## How to use -The above code is functionally equivalent to: - -```typescript -class Person { - private firstName: string; - private surname: string; - - constructor(firstName: string, surname: string) { - this.firstName = firstName; - this.surname = surname; - } -} -``` - -Parameter properties enable both the _declaration_ and _initialization_ of member properties in a single location, avoiding the boilerplate & duplication that is common when initializing member properties from parameter values in a constructor function. - -In these cases, although the constructor has an empty function body, it is technically valid and should not trigger an error. - -See the [ESLint documentation](https://eslint.org/docs/rules/no-empty-function) for more details on the `no-empty-function` rule. - -## Rule Changes - -```cjson +```jsonc { - // note you must disable the base rule as it can report incorrect errors - "no-empty-function": "off", - "@typescript-eslint/no-empty-function": "error" + // note you must disable the base rule as it can report incorrect errors + "no-empty-function": "off", + "@typescript-eslint/no-empty-function": ["error"] } ``` ## Options -This rule has an object option: - -- `allow` (`string[]`) - - `"protected-constructors"` - Protected class constructors. - - `"private-constructors"` - Private class constructors. - - [See the other options allowed](https://github.com/eslint/eslint/blob/master/docs/rules/no-empty-function.md#options) - -#### allow: protected-constructors - -Examples of **correct** code for the `{ "allow": ["protected-constructors"] }` option: +See [`eslint/no-empty-function` options](https://eslint.org/docs/rules/no-empty-function#options). +This rule adds the following options: ```ts -/*eslint @typescript-eslint/no-empty-function: ["error", { "allow": ["protected-constructors"] }]*/ +type AdditionalAllowOptionEntries = + | 'private-constructors' + | 'protected-constructors' + | 'decoratedFunctions'; -class Foo { - protected constructor() {} +type AllowOptionEntries = + | BaseNoEmptyFunctionAllowOptionEntries + | AdditionalAllowOptionEntries; + +interface Options extends BaseNoEmptyFunctionOptions { + allow?: Array; } +const defaultOptions: Options = { + ...baseNoEmptyFunctionDefaultOptions, + allow: [], +}; ``` -#### allow: private-constructors +### allow: `private-constructors` -Examples of **correct** code for the `{ "allow": ["private-constructors"] }` option: +Examples of correct code for the `{ "allow": ["private-constructors"] }` option: ```ts -/*eslint @typescript-eslint/no-empty-function: ["error", { "allow": ["private-constructors"] }]*/ - class Foo { private constructor() {} } ``` +### allow: `protected-constructors` + +Examples of correct code for the `{ "allow": ["protected-constructors"] }` option: + +```ts +class Foo { + protected constructor() {} +} +``` + +### allow: `decoratedFunctions` + +Examples of correct code for the `{ "allow": ["decoratedFunctions"] }` option: + +```ts +@decorator() +function foo() {} + +class Foo { + @decorator() + foo() {} +} +``` + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-empty-function": "off", + "@typescript-eslint/no-empty-function": ["error"] +} +``` + +--- + Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-empty-function.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md index 0c271392..7aeb4658 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md @@ -119,30 +119,23 @@ function foo2(...args: readonly any[]): void {} function foo3(...args: Array): void {} function foo4(...args: ReadonlyArray): void {} -const bar1 = (...args: any[]): void {} -const bar2 = (...args: readonly any[]): void {} -const bar3 = (...args: Array): void {} -const bar4 = (...args: ReadonlyArray): void {} +declare function bar(...args: any[]): void; -const baz1 = function (...args: any[]) {} -const baz2 = function (...args: readonly any[]) {} -const baz3 = function (...args: Array) {} -const baz4 = function (...args: ReadonlyArray) {} +const baz = (...args: any[]) => {}; +const qux = function (...args: any[]) {}; -interface Qux1 { (...args: any[]): void; } -interface Qux2 { (...args: readonly any[]): void; } -interface Qux3 { (...args: Array): void; } -interface Qux4 { (...args: ReadonlyArray): void; } +type Quux = (...args: any[]) => void; +type Quuz = new (...args: any[]) => void; -function quux1(fn: (...args: any[]) => void): void {} -function quux2(fn: (...args: readonly any[]) => void): void {} -function quux3(fn: (...args: Array) => void): void {} -function quux4(fn: (...args: ReadonlyArray) => void): void {} - -function quuz1(): ((...args: any[]) => void) {} -function quuz2(): ((...args: readonly any[]) => void) {} -function quuz3(): ((...args: Array) => void) {} -function quuz4(): ((...args: ReadonlyArray) => void) {} +interface Grault { + (...args: any[]): void; +} +interface Corge { + new (...args: any[]): void; +} +interface Garply { + f(...args: any[]): void; +} ``` Examples of **correct** code for the `{ "ignoreRestArgs": true }` option: @@ -155,30 +148,23 @@ function foo2(...args: readonly any[]): void {} function foo3(...args: Array): void {} function foo4(...args: ReadonlyArray): void {} -const bar1 = (...args: any[]): void {} -const bar2 = (...args: readonly any[]): void {} -const bar3 = (...args: Array): void {} -const bar4 = (...args: ReadonlyArray): void {} +declare function bar(...args: any[]): void; -const baz1 = function (...args: any[]) {} -const baz2 = function (...args: readonly any[]) {} -const baz3 = function (...args: Array) {} -const baz4 = function (...args: ReadonlyArray) {} +const baz = (...args: any[]) => {}; +const qux = function (...args: any[]) {}; -interface Qux1 { (...args: any[]): void; } -interface Qux2 { (...args: readonly any[]): void; } -interface Qux3 { (...args: Array): void; } -interface Qux4 { (...args: ReadonlyArray): void; } +type Quux = (...args: any[]) => void; +type Quuz = new (...args: any[]) => void; -function quux1(fn: (...args: any[]) => void): void {} -function quux2(fn: (...args: readonly any[]) => void): void {} -function quux3(fn: (...args: Array) => void): void {} -function quux4(fn: (...args: ReadonlyArray) => void): void {} - -function quuz1(): ((...args: any[]) => void) {} -function quuz2(): ((...args: readonly any[]) => void) {} -function quuz3(): ((...args: Array) => void) {} -function quuz4(): ((...args: ReadonlyArray) => void) {} +interface Grault { + (...args: any[]): void; +} +interface Corge { + new (...args: any[]): void; +} +interface Garply { + f(...args: any[]): void; +} ``` ## When Not To Use It diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md index bcb21dec..8173b2ef 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md @@ -1,22 +1,22 @@ # Disallow unnecessary parentheses (`no-extra-parens`) -This rule restricts the use of parentheses to only where they are necessary. - ## Rule Details This rule extends the base [`eslint/no-extra-parens`](https://eslint.org/docs/rules/no-extra-parens) rule. -It supports all options and features of the base rule plus TS type assertions. +It adds support for TypeScript type assertions. ## How to use -```cjson +```jsonc { - // note you must disable the base rule as it can report incorrect errors - "no-extra-parens": "off", - "@typescript-eslint/no-extra-parens": ["error"] + // note you must disable the base rule as it can report incorrect errors + "no-extra-parens": "off", + "@typescript-eslint/no-extra-parens": ["error"] } ``` ## Options See [`eslint/no-extra-parens` options](https://eslint.org/docs/rules/no-extra-parens#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-extra-parens.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md index bed5e29d..f6865bd8 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md @@ -3,10 +3,11 @@ ## Rule Details This rule extends the base [`eslint/no-extra-semi`](https://eslint.org/docs/rules/no-extra-semi) rule. +It adds support for class properties. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "no-extra-semi": "off", @@ -14,4 +15,8 @@ This rule extends the base [`eslint/no-extra-semi`](https://eslint.org/docs/rule } ``` +## Options + +See [`eslint/no-extra-semi` options](https://eslint.org/docs/rules/no-extra-semi#options). + Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-extra-semi.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md index b387d67a..abc84f27 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md @@ -58,7 +58,7 @@ type Options = { allowEmpty?: boolean; // allow extraneous classes if they only contain static members allowStaticOnly?: boolean; - // allow extraneous classes if they are have a decorator + // allow extraneous classes if they have a decorator allowWithDecorator?: boolean; }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md index ffaa542f..bda8c26b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md @@ -51,16 +51,20 @@ The rule accepts an options object with the following properties: type Options = { // if true, checking void expressions will be skipped ignoreVoid?: boolean; + // if true, checking for async iife will be skipped + ignoreIIFE?: boolean; }; const defaults = { - ignoreVoid: false, + ignoreVoid: true, + ignoreIIFE: false, }; ``` ### `ignoreVoid` -This allows to easily suppress false-positives with void operator. +This allows you to stop the rule reporting promises consumed with void operator. +This can be a good way to explicitly mark a promise as intentionally not awaited. Examples of **correct** code for this rule with `{ ignoreVoid: true }`: @@ -73,10 +77,27 @@ void returnsPromise(); void Promise.reject('value'); ``` +With this option set to `true`, and if you are using `no-void`, you should turn on the [`allowAsAStatement`](https://eslint.org/docs/rules/no-void#allowasstatement) option. + +### `ignoreIIFE` + +This allows you to skip checking of async iife + +Examples of **correct** code for this rule with `{ ignoreIIFE: true }`: + +```ts +await(async function () { + await res(1); +})(); + +(async function () { + await res(1); +})(); +``` + ## When Not To Use It -If you do not use Promise-like values in your codebase or want to allow them to -remain unhandled. +If you do not use Promise-like values in your codebase, or want to allow them to remain unhandled. ## Related to diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implicit-any-catch.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implicit-any-catch.md new file mode 100644 index 00000000..8ef946b4 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implicit-any-catch.md @@ -0,0 +1,76 @@ +# Disallow usage of the implicit `any` type in catch clauses (`no-implicit-any-catch`) + +TypeScript 4.0 added support for adding an explicit `any` or `unknown` type annotation on a catch clause variable. + +By default, TypeScript will type a catch clause variable as `any`, so explicitly annotating it as `unknown` can add a lot of safety to your codebase. + +The `noImplicitAny` flag in TypeScript does not cover this for backwards compatibility reasons. + +## Rule Details + +This rule requires an explicit type to be declared on a catch clause variable. + +The following pattern is considered a warning: + +```ts +try { + // ... +} catch (e) { + // ... +} +``` + +The following pattern is **_not_** considered a warning: + + + + +```ts +try { + // ... +} catch (e: unknown) { + // ... +} +``` + + + +## Options + +The rule accepts an options object with the following properties: + +```ts +type Options = { + // if false, disallow specifying `: any` as the error type as well. See also `no-explicit-any` + allowExplicitAny: boolean; +}; + +const defaults = { + allowExplicitAny: false, +}; +``` + +### `allowExplicitAny` + +The follow is is **_not_** considered a warning with `{ allowExplicitAny: true }` + + + + +```ts +try { + // ... +} catch (e: any) { + // ... +} +``` + + + +## When Not To Use It + +If you are not using TypeScript 4.0 (or greater), then you will not be able to use this rule, annotations on catch clauses is not supported. + +## Further Reading + +- [TypeScript 4.0 Beta Release Notes](https://devblogs.microsoft.com/typescript/announcing-typescript-4-0-beta/#unknown-on-catch) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md index a16844a6..a03ce727 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md @@ -56,19 +56,19 @@ Examples of **correct** code for this rule: ```ts /* eslint @typescript-eslint/no-implied-eval: "error" */ -setTimeout(function() { +setTimeout(function () { alert('Hi!'); }, 100); -setInterval(function() { +setInterval(function () { alert('Hi!'); }, 100); -setImmediate(function() { +setImmediate(function () { alert('Hi!'); }); -execScript(function() { +execScript(function () { alert('Hi!'); }); @@ -76,7 +76,7 @@ const fn = () => {}; setTimeout(fn, 100); const foo = { - fn: function() {}, + fn: function () {}, }; setTimeout(foo.fn, 100); setTimeout(foo.fn.bind(this), 100); @@ -88,6 +88,16 @@ class Foo { setTimeout(Foo.fn, 100); ``` +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-implied-eval": "off", + "@typescript-eslint/no-implied-eval": ["error"] +} +``` + ## When Not To Use It If you want to allow `new Function()` or `setTimeout()`, `setInterval()`, `setImmediate()` and `execScript()` with string arguments, then you can safely disable this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md new file mode 100644 index 00000000..728c42b7 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md @@ -0,0 +1,26 @@ +# disallow `this` keywords outside of classes or class-like objects (`no-invalid-this`) + +## Rule Details + +This rule extends the base [`eslint/no-invalid-this`](https://eslint.org/docs/rules/no-invalid-this) rule. +It adds support for TypeScript's `this` parameters. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-invalid-this": "off", + "@typescript-eslint/no-invalid-this": ["error"] +} +``` + +## Options + +See [`eslint/no-invalid-this` options](https://eslint.org/docs/rules/no-invalid-this#options). + +## When Not To Use It + +When you are indifferent as to how your variables are initialized. + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-invalid-this.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md new file mode 100644 index 00000000..567d9c0b --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md @@ -0,0 +1,126 @@ +# Disallows usage of `void` type outside of generic or return types (`no-invalid-void-type`) + +Disallows usage of `void` type outside of return types or generic type arguments. +If `void` is used as return type, it shouldn’t be a part of intersection/union type with most other types. + +## Rationale + +The `void` type means “nothing” or that a function does not return any value, +in contrast with implicit `undefined` type which means that a function returns a value `undefined`. +So “nothing” cannot be mixed with any other types, other than `never`, which accepts all types. +If you need this - use the `undefined` type instead. + +## Rule Details + +This rule aims to ensure that the `void` type is only used in valid places. + +The following patterns are considered warnings: + +```ts +type PossibleValues = string | number | void; +type MorePossibleValues = string | ((number & any) | (string | void)); + +function logSomething(thing: void) {} +function printArg(arg: T) {} + +logAndReturn(undefined); + +interface Interface { + lambda: () => void; + prop: void; +} + +class MyClass { + private readonly propName: void; +} +``` + +The following patterns are not considered warnings: + +```ts +type NoOp = () => void; + +function noop(): void {} + +let trulyUndefined = void 0; + +async function promiseMeSomething(): Promise {} + +type stillVoid = void | never; +``` + +### Options + +```ts +interface Options { + allowInGenericTypeArguments?: boolean | string[]; + allowAsThisParameter?: boolean; +} + +const defaultOptions: Options = { + allowInGenericTypeArguments: true, + allowAsThisParameter: false, +}; +``` + +#### `allowInGenericTypeArguments` + +This option lets you control if `void` can be used as a valid value for generic type parameters. + +Alternatively, you can provide an array of strings which whitelist which types may accept `void` as a generic type parameter. + +Any types considered valid by this option will be considered valid as part of a union type with `void`. + +This option is `true` by default. + +The following patterns are considered warnings with `{ allowInGenericTypeArguments: false }`: + +```ts +logAndReturn(undefined); + +let voidPromise: Promise = new Promise(() => {}); +let voidMap: Map = new Map(); +``` + +The following patterns are considered warnings with `{ allowInGenericTypeArguments: ['Ex.Mx.Tx'] }`: + +```ts +logAndReturn(undefined); + +type NotAllowedVoid1 = Mx.Tx; +type NotAllowedVoid2 = Tx; +type NotAllowedVoid3 = Promise; +``` + +The following patterns are not considered warnings with `{ allowInGenericTypeArguments: ['Ex.Mx.Tx'] }`: + +```ts +type AllowedVoid = Ex.Mx.Tx; +type AllowedVoidUnion = void | Ex.Mx.Tx; +``` + +#### `allowAsThisParameter` + +This option allows specifying a `this` parameter of a function to be `void` when set to `true`. +This pattern can be useful to explicitly label function types that do not use a `this` argument. [See the TypeScript docs for more information](https://www.typescriptlang.org/docs/handbook/functions.html#this-parameters-in-callbacks). + +This option is `false` by default. + +The following patterns are considered warnings with `{ allowAsThisParameter: false }` but valid with `{ allowAsThisParameter: true }`: + +```ts +function doThing(this: void) {} +class Example { + static helper(this: void) {} + callback(this: void) {} +} +``` + +## When Not To Use It + +If you don't care about if `void` is used with other types, +or in invalid places, then you don't need this rule. + +## Compatibility + +- TSLint: [invalid-void](https://palantir.github.io/tslint/rules/invalid-void/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md new file mode 100644 index 00000000..d4e66d6c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md @@ -0,0 +1,22 @@ +# Disallow function declarations that contain unsafe references inside loop statements (`no-loop-func`) + +## Rule Details + +This rule extends the base [`eslint/no-loop-func`](https://eslint.org/docs/rules/no-loop-func) rule. +It adds support for TypeScript types. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-loop-func": "off", + "@typescript-eslint/no-loop-func": ["error"] +} +``` + +## Options + +See [`eslint/no-loop-func` options](https://eslint.org/docs/rules/no-loop-func#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-loop-func.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md new file mode 100644 index 00000000..d6cf7b71 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md @@ -0,0 +1,19 @@ +# Disallow literal numbers that lose precision (`no-loss-of-precision`) + +## Rule Details + +This rule extends the base [`eslint/no-loss-of-precision`](https://eslint.org/docs/rules/no-loss-of-precision) rule. +It adds support for [numeric separators](https://github.com/tc39/proposal-numeric-separator). +Note that this rule requires ESLint v7. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-loss-of-precision": "off", + "@typescript-eslint/no-loss-of-precision": ["error"] +} +``` + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-loss-of-precision.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md index 377e9272..f41204c1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md @@ -1,25 +1,72 @@ # Disallow magic numbers (`no-magic-numbers`) -'Magic numbers' are numbers that occur multiple times in code without an explicit meaning. -They should preferably be replaced by named constants. - ## Rule Details -The `@typescript-eslint/no-magic-numbers` rule extends the `no-magic-numbers` rule from ESLint core, and adds support for handling TypeScript specific code that would otherwise trigger the rule. +This rule extends the base [`eslint/no-magic-numbers`](https://eslint.org/docs/rules/no-magic-numbers) rule. +It adds support for: -See the [ESLint documentation](https://eslint.org/docs/rules/no-magic-numbers) for more details on the `no-magic-numbers` rule. +- numeric literal types (`type T = 1`), +- `enum` members (`enum Foo { bar = 1 }`), +- `readonly` class properties (`class Foo { readonly bar = 1 }`). -## Rule Changes +## How to use -```cjson +```jsonc { - // note you must disable the base rule as it can report incorrect errors - "no-magic-numbers": "off", - "@typescript-eslint/no-magic-numbers": ["error", { "ignoreNumericLiteralTypes": true }] + // note you must disable the base rule as it can report incorrect errors + "no-magic-numbers": "off", + "@typescript-eslint/no-magic-numbers": [ + "error", + { + /* options */ + } + ] } ``` -In addition to the options supported by the `no-magic-numbers` rule in ESLint core, the rule adds the following options: +## Options + +See [`eslint/no-magic-numbers` options](https://eslint.org/docs/rules/no-magic-numbers#options). +This rule adds the following options: + +```ts +interface Options extends BaseNoMagicNumbersOptions { + ignoreEnums?: boolean; + ignoreNumericLiteralTypes?: boolean; + ignoreReadonlyClassProperties?: boolean; +} + +const defaultOptions: Options = { + ...baseNoMagicNumbersDefaultOptions, + ignoreEnums: false, + ignoreNumericLiteralTypes: false, + ignoreReadonlyClassProperties: false, +}; +``` + +### `ignoreEnums` + +A boolean to specify if enums used in TypeScript are considered okay. `false` by default. + +Examples of **incorrect** code for the `{ "ignoreEnums": false }` option: + +```ts +/*eslint @typescript-eslint/no-magic-numbers: ["error", { "ignoreEnums": false }]*/ + +enum foo = { + SECOND = 1000, +} +``` + +Examples of **correct** code for the `{ "ignoreEnums": true }` option: + +```ts +/*eslint @typescript-eslint/no-magic-numbers: ["error", { "ignoreEnums": true }]*/ + +enum foo = { + SECOND = 1000, +} +``` ### `ignoreNumericLiteralTypes` @@ -69,28 +116,4 @@ class Foo { } ``` -### `ignoreEnums` - -A boolean to specify if enums used in TypeScript are considered okay. `false` by default. - -Examples of **incorrect** code for the `{ "ignoreEnums": false }` option: - -```ts -/*eslint @typescript-eslint/no-magic-numbers: ["error", { "ignoreEnums": false }]*/ - -enum foo = { - SECOND = 1000, -} -``` - -Examples of **correct** code for the `{ "ignoreEnums": true }` option: - -```ts -/*eslint @typescript-eslint/no-magic-numbers: ["error", { "ignoreEnums": true }]*/ - -enum foo = { - SECOND = 1000, -} -``` - Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-magic-numbers.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md index 3bcb1a38..b155c2ae 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md @@ -16,7 +16,7 @@ or more of the following you may pass an object with the options set as follows: - `allowDeclarations` set to `true` will allow you to `declare` custom TypeScript modules and namespaces (Default: `false`). - `allowDefinitionFiles` set to `true` will allow you to `declare` and use custom TypeScript modules and namespaces - inside definition files (Default: `false`). + inside definition files (Default: `true`). Examples of **incorrect** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": false }` options: @@ -51,6 +51,14 @@ Examples of **correct** code for the `{ "allowDeclarations": true }` option: declare module 'foo' {} declare module foo {} declare namespace foo {} + +declare global { + namespace foo {} +} + +declare module foo { + namespace foo {} +} ``` Examples of **incorrect** code for the `{ "allowDeclarations": false }` option: diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md index 95ee927b..fdb2a8a1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md @@ -11,8 +11,12 @@ Examples of **incorrect** code for this rule: /* eslint @typescript-eslint/no-non-null-asserted-optional-chain: "error" */ foo?.bar!; -foo?.bar!.baz; foo?.bar()!; + +// Prior to TS3.9, foo?.bar!.baz meant (foo?.bar).baz - i.e. the non-null assertion is applied to the entire chain so far. +// For TS3.9 and greater, the non-null assertion is only applied to the property itself, so it's safe. +// The following is incorrect code if you're using less than TS3.9 +foo?.bar!.baz; foo?.bar!(); foo?.bar!().baz; ``` @@ -27,6 +31,11 @@ foo?.bar; foo?.bar(); foo?.bar(); foo?.bar().baz; + +// The following is correct code if you're using TS3.9 or greater +foo?.bar!.baz; +foo?.bar!(); +foo?.bar!().baz; ``` ## When Not To Use It diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md index 5241a43e..04de5768 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md @@ -23,7 +23,7 @@ interface Foo { } const foo: Foo = getFoo(); -const includesBaz: boolean = foo.bar && foo.bar.includes('baz'); +const includesBaz: boolean = foo.bar?.includes('baz') ?? false; ``` ## When Not To Use It diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md new file mode 100644 index 00000000..4b5164d6 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md @@ -0,0 +1,79 @@ +# Disallow variable redeclaration (`no-redeclare`) + +## Rule Details + +This rule extends the base [`eslint/no-redeclare`](https://eslint.org/docs/rules/no-redeclare) rule. +It adds support for TypeScript function overloads, and declaration merging. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-redeclare": "off", + "@typescript-eslint/no-redeclare": ["error"] +} +``` + +## Options + +See [`eslint/no-redeclare` options](https://eslint.org/docs/rules/no-redeclare#options). +This rule adds the following options: + +```ts +interface Options extends BaseNoRedeclareOptions { + ignoreDeclarationMerge?: boolean; +} + +const defaultOptions: Options = { + ...baseNoRedeclareDefaultOptions, + ignoreDeclarationMerge: true, +}; +``` + +### `ignoreDeclarationMerge` + +When set to `true`, the rule will ignore declaration merges between the following sets: + +- interface + interface +- namespace + namespace +- class + interface +- class + namespace +- class + interface + namespace +- function + namespace + +Examples of **correct** code with `{ ignoreDeclarationMerge: true }`: + +```ts +interface A { + prop1: 1; +} +interface A { + prop2: 2; +} + +namespace Foo { + export const a = 1; +} +namespace Foo { + export const b = 2; +} + +class Bar {} +namespace Bar {} + +function Baz() {} +namespace Baz {} +``` + +**Note:** Even with this option set to true, this rule will report if you name a type and a variable the same name. **_This is intentional_**. +Declaring a variable and a type and a variable the same is usually an accident, and it can lead to hard-to-understand code. +If you have a rare case where you're intentionally naming a type the same name as a variable, use a disable comment. For example: + +```ts +type something = string; +// eslint-disable-next-line @typescript-eslint/no-redeclare -- intentionally naming the variable the same as the type +const something = 2; +``` + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-redeclare.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md new file mode 100644 index 00000000..ed241b80 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md @@ -0,0 +1,87 @@ +# Disallow variable declarations from shadowing variables declared in the outer scope (`no-shadow`) + +## Rule Details + +This rule extends the base [`eslint/no-shadow`](https://eslint.org/docs/rules/no-shadow) rule. +It adds support for TypeScript's `this` parameters, and adds options for TypeScript features. + +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-shadow": "off", + "@typescript-eslint/no-shadow": ["error"] +} +``` + +## Options + +See [`eslint/no-shadow` options](https://eslint.org/docs/rules/no-shadow#options). +This rule adds the following options: + +```ts +interface Options extends BaseNoShadowOptions { + ignoreTypeValueShadow?: boolean; + ignoreFunctionTypeParameterNameValueShadow?: boolean; +} + +const defaultOptions: Options = { + ...baseNoShadowDefaultOptions, + ignoreTypeValueShadow: true, + ignoreFunctionTypeParameterNameValueShadow: true, +}; +``` + +### `ignoreTypeValueShadow` + +When set to `true`, the rule will ignore the case when you name a type the same as a variable. + +TypeScript allows types and variables to shadow one-another. This is generally safe because you cannot use variables in type locations without a `typeof` operator, so there's little risk of confusion. + +Examples of **correct** code with `{ ignoreTypeValueShadow: true }`: + +```ts +type Foo = number; +const Foo = 1; + +interface Bar { + prop: number; +} +const Bar = 'test'; +``` + +### `ignoreFunctionTypeParameterNameValueShadow` + +When set to `true`, the rule will ignore the case when you name a function type argument the same as a variable. + +Each of a function type's arguments creates a value variable within the scope of the function type. This is done so that you can reference the type later using the `typeof` operator: + +```ts +type Func = (test: string) => typeof test; + +declare const fn: Func; +const result = fn('str'); // typeof result === string +``` + +This means that function type arguments shadow value variable names in parent scopes: + +```ts +let test = 1; +type TestType = typeof test; // === number +type Func = (test: string) => typeof test; // this "test" references the argument, not the variable + +declare const fn: Func; +const result = fn('str'); // typeof result === string +``` + +If you do not use the `typeof` operator in a function type return type position, you can safely turn this option on. + +Examples of **correct** code with `{ ignoreFunctionTypeParameterNameValueShadow: true }`: + +```ts +const test = 1; +type Func = (test: string) => typeof test; +``` + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-shadow.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md index 7f5ee719..324929e5 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md @@ -14,7 +14,7 @@ Rationale from TSLint: > ```js > const self = this; > -> setTimeout(function() { +> setTimeout(function () { > self.doWork(); > }); > ``` @@ -39,15 +39,15 @@ Examples of **correct** code for this rule: You can pass an object option: -```json5 +```jsonc { - '@typescript-eslint/no-this-alias': [ - 'error', + "@typescript-eslint/no-this-alias": [ + "error", { - allowDestructuring: true, // Allow `const { props, state } = this`; false by default - allowedNames: ['self'], // Allow `const self = this`; `[]` by default - }, - ], + "allowDestructuring": true, // Allow `const { props, state } = this`; false by default + "allowedNames": ["self"] // Allow `const self = this`; `[]` by default + } + ] } ``` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md index 3b7ee9c2..0b89f10e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md @@ -79,6 +79,16 @@ class CustomError extends Error { throw new CustomError(); ``` +## How to use + +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-throw-literal": "off", + "@typescript-eslint/no-throw-literal": ["error"] +} +``` + --- Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-throw-literal.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md index 9d7f1d47..5b720b2f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md @@ -69,7 +69,7 @@ On the other hand, using a type alias as an interface can limit your ability to: - Debug your code: interfaces create a new name, so is easy to identify the base type of an object while debugging the application. -Finally, mapping types is an advance technique, leaving it open can quickly become a pain point +Finally, mapping types is an advanced technique and leaving it open can quickly become a pain point in your application. ## Rule Details diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md index 81b4a5c6..d600bb79 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md @@ -8,6 +8,12 @@ This rule ensures that you do not include unnecessary comparisons with boolean l A comparison is considered unnecessary if it checks a boolean literal against any variable with just the `boolean` type. A comparison is **_not_** considered unnecessary if the type is a union of booleans (`string | boolean`, `someObject | boolean`). +**Note**: Throughout this page, only strict equality (`===` and `!==`) are +used in the examples. However, the implementation of the rule does not +distinguish between strict and loose equality. Any example below that uses +`===` would be treated the same way if `==` was used, and any example below +that uses `!==` would be treated the same way if `!=` was used. + Examples of **incorrect** code for this rule: ```ts @@ -30,12 +36,99 @@ if (someObjectBoolean === true) { declare const someStringBoolean: boolean | string; if (someStringBoolean === true) { } +``` +## Options + +The rule accepts an options object with the following properties. + +```ts +type Options = { + // if false, comparisons between a nullable boolean variable to `true` will be checked and fixed + allowComparingNullableBooleansToTrue?: boolean; + // if false, comparisons between a nullable boolean variable to `false` will be checked and fixed + allowComparingNullableBooleansToFalse?: boolean; +}; +``` + +### Defaults + +This rule always checks comparisons between a boolean variable and a boolean +literal. Comparisons between nullable boolean variables and boolean literals +are **not** checked by default. + +```ts +const defaults = { + allowComparingNullableBooleansToTrue: true, + allowComparingNullableBooleansToFalse: true, +}; +``` + +### `allowComparingNullableBooleansToTrue` + +Examples of **incorrect** code for this rule with `{ allowComparingNullableBooleansToTrue: false }`: + +```ts +declare const someUndefinedCondition: boolean | undefined; +if (someUndefinedCondition === true) { +} + +declare const someNullCondition: boolean | null; +if (someNullCondition !== true) { +} +``` + +Examples of **correct** code for this rule with `{ allowComparingNullableBooleansToTrue: false }`: + +```ts +declare const someUndefinedCondition: boolean | undefined; +if (someUndefinedCondition) { +} + +declare const someNullCondition: boolean | null; +if (!someNullCondition) { +} +``` + +### `allowComparingNullableBooleansToFalse` + +Examples of **incorrect** code for this rule with `{ allowComparingNullableBooleansToFalse: false }`: + +```ts declare const someUndefinedCondition: boolean | undefined; if (someUndefinedCondition === false) { } + +declare const someNullCondition: boolean | null; +if (someNullCondition !== false) { +} ``` +Examples of **correct** code for this rule with `{ allowComparingNullableBooleansToFalse: false }`: + +```ts +declare const someUndefinedCondition: boolean | undefined; +if (someUndefinedCondition ?? true) { +} + +declare const someNullCondition: boolean | null; +if (!(someNullCondition ?? true)) { +} +``` + +## Fixer + +| Comparison | Fixer Output | Notes | +| :----------------------------: | ------------------------------- | ----------------------------------------------------------------------------------- | +| `booleanVar === true` | `booleanLiteral` | | +| `booleanVar !== true` | `!booleanLiteral` | | +| `booleanVar === false` | `!booleanLiteral` | | +| `booleanVar !== false` | `booleanLiteral` | | +| `nullableBooleanVar === true` | `nullableBooleanVar` | Only checked/fixed if the `allowComparingNullableBooleansToTrue` option is `false` | +| `nullableBooleanVar !== true` | `!nullableBooleanVar` | Only checked/fixed if the `allowComparingNullableBooleansToTrue` option is `false` | +| `nullableBooleanVar === false` | `nullableBooleanVar ?? true` | Only checked/fixed if the `allowComparingNullableBooleansToFalse` option is `false` | +| `nullableBooleanVar !== false` | `!(nullableBooleanVar ?? true)` | Only checked/fixed if the `allowComparingNullableBooleansToFalse` option is `false` | + ## Related to - TSLint: [no-boolean-literal-compare](https://palantir.github.io/tslint/rules/no-boolean-literal-compare) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md index f2bea6f4..bff0f548 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md @@ -28,6 +28,12 @@ function bar(arg: string) { // arg can never be nullish, so ?. is unnecessary return arg?.length; } + +// Checks array predicate return types, where possible +[ + [1, 2], + [3, 4], +].filter(t => t); // number[] is always truthy ``` Examples of **correct** code for this rule: @@ -50,23 +56,29 @@ function bar(arg?: string | null) { // Necessary, since arg might be nullish return arg?.length; } + +[0, 1, 2, 3].filter(t => t); // number can be truthy or falsy ``` ## Options -Accepts an object with the following options: - -- `ignoreRhs` (default `false`) - doesn't check if the right-hand side of `&&` and `||` is a necessary condition. For example, the following code is valid with this option on: - ```ts -function head(items: T[]) { - return items.length && items[0].toUpperCase(); -} +type Options = { + // if true, the rule will ignore constant loop conditions + allowConstantLoopConditions?: boolean; + // if true, the rule will not error when running with a tsconfig that has strictNullChecks turned **off** + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean; +}; + +const defaultOptions: Options = { + allowConstantLoopConditions: false, + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false, +}; ``` -- `allowConstantLoopConditions` (default `false`) - allows constant expressions in loops. +### `allowConstantLoopConditions` -Example of correct code for when `allowConstantLoopConditions` is `true`: +Example of correct code for `{ allowConstantLoopConditions: true }`: ```ts while (true) {} @@ -74,18 +86,15 @@ for (; true; ) {} do {} while (true); ``` -- `checkArrayPredicates` (default: `false`) - if set checks that the return value from certain array method callbacks (`filter`, `find`, `some`, `every`) is necessarily conditional. +### `allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing` -```ts -// Valid: numbers can be truthy or falsy. -[0, 1, 2, 3].filter(t => t); +If this is set to `false`, then the rule will error on every file whose `tsconfig.json` does _not_ have the `strictNullChecks` compiler option (or `strict`) set to `true`. -// Invalid: arrays are always falsy. -[ - [1, 2], - [3, 4], -].filter(t => t); -``` +Without `strictNullChecks`, TypeScript essentially erases `undefined` and `null` from the types. This means when this rule inspects the types from a variable, **it will not be able to tell that the variable might be `null` or `undefined`**, which essentially makes this rule useless. + +You should be using `strictNullChecks` to ensure complete type-safety in your codebase. + +If for some reason you cannot turn on `strictNullChecks`, but still want to use this rule - you can use this option to allow it - but know that the behavior of this rule is _undefined_ with the compiler option turned off. We will not accept bug reports if you are using this option. ## When Not To Use It diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md index 14819c56..4464b648 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md @@ -43,6 +43,10 @@ const foo = 3; const foo = 3 as number; ``` +```ts +const foo = 'foo' as const; +``` + ```ts function foo(x: number | undefined): number { return x!; diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md new file mode 100644 index 00000000..64207e53 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md @@ -0,0 +1,72 @@ +# Disallows assigning any to variables and properties (`no-unsafe-assignment`) + +Despite your best intentions, the `any` type can sometimes leak into your codebase. +Assigning an `any` typed value to a variable can be hard to pick up on, particularly if it leaks in from an external library. Operations on the variable will not be checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase. + +## Rule Details + +This rule disallows assigning `any` to a variable, and assigning `any[]` to an array destructuring. +This rule also compares the assigned type to the variable's type to ensure you don't assign an unsafe `any` in a generic position to a receiver that's expecting a specific type. For example, it will error if you assign `Set` to a variable declared as `Set`. + +Examples of **incorrect** code for this rule: + +```ts +const x = 1 as any, + y = 1 as any; +const [x] = 1 as any; +const [x] = [] as any[]; +const [x] = [1 as any]; +[x] = [1] as [any]; + +function foo(a = 1 as any) {} +class Foo { + constructor(private a = 1 as any) {} +} +class Foo { + private a = 1 as any; +} + +// generic position examples +const x: Set = new Set(); +const x: Map = new Map(); +const x: Set = new Set(); +const x: Set>> = new Set>>(); +``` + +Examples of **correct** code for this rule: + +```ts +const x = 1, + y = 1; +const [x] = [1]; +[x] = [1] as [number]; + +function foo(a = 1) {} +class Foo { + constructor(private a = 1) {} +} +class Foo { + private a = 1; +} + +// generic position examples +const x: Set = new Set(); +const x: Map = new Map(); +const x: Set = new Set(); +const x: Set>> = new Set>>(); +``` + +There are cases where the rule allows assignment of `any` to `unknown`. + +Example of `any` to `unknown` assignment that are allowed. + +```ts +const x: unknown = y as any; +const x: unknown[] = y as any[]; +const x: Set = y as Set; +``` + +## Related to + +- [`no-explicit-any`](./no-explicit-any.md) +- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md new file mode 100644 index 00000000..1000e592 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md @@ -0,0 +1,48 @@ +# Disallows calling an any type value (`no-unsafe-call`) + +Despite your best intentions, the `any` type can sometimes leak into your codebase. +The arguments to, and return value of calling an `any` typed variable are not checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase. + +## Rule Details + +This rule disallows calling any variable that is typed as `any`. + +Examples of **incorrect** code for this rule: + +```ts +declare const anyVar: any; +declare const nestedAny: { prop: any }; + +anyVar(); +anyVar.a.b(); + +nestedAny.prop(); +nestedAny.prop['a'](); + +new anyVar(); +new nestedAny.prop(); + +anyVar`foo`; +nestedAny.prop`foo`; +``` + +Examples of **correct** code for this rule: + +```ts +declare const typedVar: () => void; +declare const typedNested: { prop: { a: () => void } }; + +typedVar(); +typedNested.prop.a(); + +(() => {})(); + +new Map(); + +String.raw`foo`; +``` + +## Related to + +- [`no-explicit-any`](./no-explicit-any.md) +- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md new file mode 100644 index 00000000..e64294f4 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md @@ -0,0 +1,54 @@ +# Disallows member access on any typed variables (`no-unsafe-member-access`) + +Despite your best intentions, the `any` type can sometimes leak into your codebase. +Member access on `any` typed variables is not checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase. + +## Rule Details + +This rule disallows member access on any variable that is typed as `any`. + +Examples of **incorrect** code for this rule: + +```ts +declare const anyVar: any; +declare const nestedAny: { prop: any }; + +anyVar.a; +anyVar.a.b; +anyVar['a']; +anyVar['a']['b']; + +nestedAny.prop.a; +nestedAny.prop['a']; + +const key = 'a'; +nestedAny.prop[key]; + +// Using an any to access a member is unsafe +const arr = [1, 2, 3]; +arr[anyVar]; +nestedAny[anyVar]; +``` + +Examples of **correct** code for this rule: + +```ts +declare const properlyTyped: { prop: { a: string } }; + +properlyTyped.prop.a; +properlyTyped.prop['a']; + +const key = 'a'; +properlyTyped.prop[key]; + +const arr = [1, 2, 3]; +arr[1]; +const idx = 1; +arr[idx]; +arr[idx++]; +``` + +## Related to + +- [`no-explicit-any`](./no-explicit-any.md) +- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md new file mode 100644 index 00000000..9810be3c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md @@ -0,0 +1,89 @@ +# Disallows returning any from a function (`no-unsafe-return`) + +Despite your best intentions, the `any` type can sometimes leak into your codebase. +Returned `any` typed values not checked at all by TypeScript, so it creates a potential safety hole, and source of bugs in your codebase. + +## Rule Details + +This rule disallows returning `any` or `any[]` from a function. +This rule also compares the return type to the function's declared/inferred return type to ensure you don't return an unsafe `any` in a generic position to a receiver that's expecting a specific type. For example, it will error if you return `Set` from a function declared as returning `Set`. + +Examples of **incorrect** code for this rule: + +```ts +function foo1() { + return 1 as any; +} +function foo2() { + return Object.create(null); +} +const foo3 = () => { + return 1 as any; +}; +const foo4 = () => Object.create(null); + +function foo5() { + return [] as any[]; +} +function foo6() { + return [] as Array; +} +function foo7() { + return [] as readonly any[]; +} +function foo8() { + return [] as Readonly; +} +const foo9 = () => { + return [] as any[]; +}; +const foo10 = () => [] as any[]; + +const foo11 = (): string[] => [1, 2, 3] as any[]; + +// generic position examples +function assignability1(): Set { + return new Set([1]); +} +type TAssign = () => Set; +const assignability2: TAssign = () => new Set([true]); +``` + +Examples of **correct** code for this rule: + +```ts +function foo1() { + return 1; +} +function foo2() { + return Object.create(null) as Record; +} + +const foo3 = () => []; +const foo4 = () => ['a']; + +function assignability1(): Set { + return new Set(['foo']); +} +type TAssign = () => Set; +const assignability2: TAssign = () => new Set(['foo']); +``` + +There are cases where the rule allows to return `any` to `unknown`. + +Examples of `any` to `unknown` return that are allowed. + +```ts +function foo1(): unknown { + return JSON.parse(singleObjString); // Return type for JSON.parse is any. +} + +function foo2(): unknown[] { + return [] as any[]; +} +``` + +## Related to + +- [`no-explicit-any`](./no-explicit-any.md) +- TSLint: [`no-unsafe-any`](https://palantir.github.io/tslint/rules/no-unsafe-any/) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-untyped-public-signature.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-untyped-public-signature.md deleted file mode 100644 index 87a17895..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-untyped-public-signature.md +++ /dev/null @@ -1,57 +0,0 @@ -# Disallow untyped public methods (`no-untyped-public-signature`) - -public methods are meant to be used by code outside of your class. By typing both the parameters and the return type of public methods they will be more readable and easy to use. - -## Rule Details - -This rule aims to ensure that only typed public methods are declared in the code. - -The following patterns are considered warnings: - -```ts -// untyped parameter -public foo(param1): void { -} - -// untyped parameter -public foo(param1: any): void { -} - -// untyped return type -public foo(param1: string) { -} - -// untyped return type -public foo(param1: string): any { -} -``` - -The following patterns are not warnings: - -```ts -// typed public method -public foo(param1: string): void { -} - -// untyped private method -private foo(param1) { -} -``` - -## Options - -This rule, in its default state, does not require any argument. - -### `ignoredMethods` - -You may pass method names you would like this rule to ignore, like so: - -```cjson -{ - "@typescript-eslint/no-untyped-public-signature": ["error", { "ignoredMethods": ["ignoredMethodName"] }] -} -``` - -## When Not To Use It - -If you don't wish to type public methods. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md index 63674120..cb61c2ed 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md @@ -1,16 +1,13 @@ # Disallow unused expressions (`no-unused-expressions`) -This rule aims to eliminate unused expressions which have no effect on the state of the program. - ## Rule Details This rule extends the base [`eslint/no-unused-expressions`](https://eslint.org/docs/rules/no-unused-expressions) rule. -It supports all options and features of the base rule. -This version adds support for numerous typescript features. +It adds support for optional call expressions `x?.()`, and directive in module declarations. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "no-unused-expressions": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md index a84b4362..5eaf167a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md @@ -1,305 +1,22 @@ # Disallow unused variables (`no-unused-vars`) -Variables that are declared and not used anywhere in the code are most likely an error due to incomplete refactoring. Such variables take up space in the code and can lead to confusion by readers. - ## Rule Details -This rule is aimed at eliminating unused variables, functions, and parameters of functions. +This rule extends the base [`eslint/no-unused-vars`](https://eslint.org/docs/rules/no-unused-vars) rule. +It adds support for TypeScript features, such as types. -A variable is considered to be used if any of the following are true: +## How to use -- It represents a function that is called (`doSomething()`) -- It is read (`var y = x`) -- It is passed into a function as an argument (`doSomething(x)`) -- It is read inside of a function that is passed to another function (`doSomething(function() { foo(); })`) - -A variable is _not_ considered to be used if it is only ever assigned to (`var x = 5`) or declared. - -Examples of **incorrect** code for this rule: - -```js -/*eslint no-unused-vars: "error"*/ -/*global some_unused_var*/ - -// It checks variables you have defined as global -some_unused_var = 42; - -var x; - -// Write-only variables are not considered as used. -var y = 10; -y = 5; - -// A read for a modification of itself is not considered as used. -var z = 0; -z = z + 1; - -// By default, unused arguments cause warnings. -(function(foo) { - return 5; -})(); - -// Unused recursive functions also cause warnings. -function fact(n) { - if (n < 2) return 1; - return n * fact(n - 1); +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-unused-vars": "off", + "@typescript-eslint/no-unused-vars": ["error"] } - -// When a function definition destructures an array, unused entries from the array also cause warnings. -function getY([x, y]) { - return y; -} -``` - -Examples of **correct** code for this rule: - -```js -/*eslint no-unused-vars: "error"*/ - -var x = 10; -alert(x); - -// foo is considered used here -myFunc( - function foo() { - // ... - }.bind(this), -); - -(function(foo) { - return foo; -})(); - -var myFunc; -myFunc = setTimeout(function() { - // myFunc is considered used - myFunc(); -}, 50); - -// Only the second argument from the destructured array is used. -function getY([, y]) { - return y; -} -``` - -### exported - -In environments outside of CommonJS or ECMAScript modules, you may use `var` to create a global variable that may be used by other scripts. You can use the `/* exported variableName */` comment block to indicate that this variable is being exported and therefore should not be considered unused. - -Note that `/* exported */` has no effect for any of the following: - -- when the environment is `node` or `commonjs` -- when `parserOptions.sourceType` is `module` -- when `ecmaFeatures.globalReturn` is `true` - -The line comment `// exported variableName` will not work as `exported` is not line-specific. - -Examples of **correct** code for `/* exported variableName */` operation: - -```js -/* exported global_var */ - -var global_var = 42; ``` ## Options -This rule takes one argument which can be a string or an object. The string settings are the same as those of the `vars` property (explained below). - -By default this rule is enabled with `all` option for variables and `after-used` for arguments. - -```CJSON -{ - "rules": { - // note you must disable the base rule as it can report incorrect errors - "no-unused-vars": "off", - "@typescript-eslint/no-unused-vars": ["error", { - "vars": "all", - "args": "after-used", - "ignoreRestSiblings": false - }] - } -} -``` - -### `vars` - -The `vars` option has two settings: - -- `all` checks all variables for usage, including those in the global scope. This is the default setting. -- `local` checks only that locally-declared variables are used but will allow global variables to be unused. - -#### `vars: local` - -Examples of **correct** code for the `{ "vars": "local" }` option: - -```js -/*eslint no-unused-vars: ["error", { "vars": "local" }]*/ -/*global some_unused_var */ - -some_unused_var = 42; -``` - -### `varsIgnorePattern` - -The `varsIgnorePattern` option specifies exceptions not to check for usage: variables whose names match a regexp pattern. For example, variables whose names contain `ignored` or `Ignored`. - -Examples of **correct** code for the `{ "varsIgnorePattern": "[iI]gnored" }` option: - -```js -/*eslint no-unused-vars: ["error", { "varsIgnorePattern": "[iI]gnored" }]*/ - -var firstVarIgnored = 1; -var secondVar = 2; -console.log(secondVar); -``` - -### `args` - -The `args` option has three settings: - -- `after-used` - unused positional arguments that occur before the last used argument will not be checked, but all named arguments and all positional arguments after the last used argument will be checked. -- `all` - all named arguments must be used. -- `none` - do not check arguments. - -#### `args: after-used` - -Examples of **incorrect** code for the default `{ "args": "after-used" }` option: - -```js -/*eslint no-unused-vars: ["error", { "args": "after-used" }]*/ - -// 2 errors, for the parameters after the last used parameter (bar) -// "baz" is defined but never used -// "qux" is defined but never used -(function(foo, bar, baz, qux) { - return bar; -})(); -``` - -Examples of **correct** code for the default `{ "args": "after-used" }` option: - -```js -/*eslint no-unused-vars: ["error", {"args": "after-used"}]*/ - -(function(foo, bar, baz, qux) { - return qux; -})(); -``` - -#### `args: all` - -Examples of **incorrect** code for the `{ "args": "all" }` option: - -```js -/*eslint no-unused-vars: ["error", { "args": "all" }]*/ - -// 2 errors -// "foo" is defined but never used -// "baz" is defined but never used -(function(foo, bar, baz) { - return bar; -})(); -``` - -#### `args: none` - -Examples of **correct** code for the `{ "args": "none" }` option: - -```js -/*eslint no-unused-vars: ["error", { "args": "none" }]*/ - -(function(foo, bar, baz) { - return bar; -})(); -``` - -### `ignoreRestSiblings` - -The `ignoreRestSiblings` option is a boolean (default: `false`). Using a [Rest Property](https://github.com/tc39/proposal-object-rest-spread) it is possible to "omit" properties from an object, but by default the sibling properties are marked as "unused". With this option enabled the rest property's siblings are ignored. - -Examples of **correct** code for the `{ "ignoreRestSiblings": true }` option: - -```js -/*eslint no-unused-vars: ["error", { "ignoreRestSiblings": true }]*/ -// 'type' is ignored because it has a rest property sibling. -var { type, ...coords } = data; -``` - -### `argsIgnorePattern` - -The `argsIgnorePattern` option specifies exceptions not to check for usage: arguments whose names match a regexp pattern. For example, variables whose names begin with an underscore. - -Examples of **correct** code for the `{ "argsIgnorePattern": "^_" }` option: - -```js -/*eslint no-unused-vars: ["error", { "argsIgnorePattern": "^_" }]*/ - -function foo(x, _y) { - return x + 1; -} -foo(); -``` - -### `caughtErrors` - -The `caughtErrors` option is used for `catch` block arguments validation. - -It has two settings: - -- `none` - do not check error objects. This is the default setting. -- `all` - all named arguments must be used. - -#### `caughtErrors: none` - -Not specifying this rule is equivalent of assigning it to `none`. - -Examples of **correct** code for the `{ "caughtErrors": "none" }` option: - -```js -/*eslint no-unused-vars: ["error", { "caughtErrors": "none" }]*/ - -try { - //... -} catch (err) { - console.error('errors'); -} -``` - -#### `caughtErrors: all` - -Examples of **incorrect** code for the `{ "caughtErrors": "all" }` option: - -```js -/*eslint no-unused-vars: ["error", { "caughtErrors": "all" }]*/ - -// 1 error -// "err" is defined but never used -try { - //... -} catch (err) { - console.error('errors'); -} -``` - -### `caughtErrorsIgnorePattern` - -The `caughtErrorsIgnorePattern` option specifies exceptions not to check for usage: catch arguments whose names match a regexp pattern. For example, variables whose names begin with a string 'ignore'. - -Examples of **correct** code for the `{ "caughtErrorsIgnorePattern": "^ignore" }` option: - -```js -/*eslint no-unused-vars: ["error", { "caughtErrorsIgnorePattern": "^ignore" }]*/ - -try { - //... -} catch (ignoreErr) { - console.error('errors'); -} -``` - -## When Not To Use It - -If you don't want to be notified about unused variables or function arguments, you can safely turn this rule off. +See [`eslint/no-unused-vars` options](https://eslint.org/docs/rules/no-unused-vars#options). Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-unused-vars.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md index e6acf604..dfdab4d6 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md @@ -1,164 +1,56 @@ # Disallow the use of variables before they are defined (`no-use-before-define`) -In JavaScript, prior to ES6, variable and function declarations are hoisted to the top of a scope, so it's possible to use identifiers before their formal declarations in code. This can be confusing and some believe it is best to always declare variables and functions before using them. - -In ES6, block-level bindings (`let` and `const`) introduce a "temporal dead zone" where a `ReferenceError` will be thrown with any attempt to access the variable before its declaration. +## PLEASE READ THIS ISSUE BEFORE USING THIS RULE [#1856](https://github.com/typescript-eslint/typescript-eslint/issues/1856) ## Rule Details -This rule will warn when it encounters a reference to an identifier that has not yet been declared. +This rule extends the base [`eslint/no-use-before-define`](https://eslint.org/docs/rules/no-use-before-define) rule. +It adds support for `type`, `interface` and `enum` declarations. -Examples of **incorrect** code for this rule: +## How to use -```ts -/*eslint no-use-before-define: "error"*/ -/*eslint-env es6*/ - -alert(a); -var a = 10; - -f(); -function f() {} - -function g() { - return b; -} -var b = 1; - -// With blockBindings: true +```jsonc { - alert(c); - let c = 1; + // note you must disable the base rule as it can report incorrect errors + "no-use-before-define": "off", + "@typescript-eslint/no-use-before-define": ["error"] } - -let myVar: StringOrNumber; -type StringOrNumber = string | number; -``` - -Examples of **correct** code for this rule: - -```ts -/*eslint no-use-before-define: "error"*/ -/*eslint-env es6*/ - -var a; -a = 10; -alert(a); - -function f() {} -f(1); - -var b = 1; -function g() { - return b; -} - -// With blockBindings: true -{ - let C; - c++; -} - -type StringOrNumber = string | number; -let myVar: StringOrNumber; ``` ## Options -```json -{ - "no-use-before-define": ["error", { "functions": true, "classes": true }] -} -``` +See [`eslint/no-use-before-define` options](https://eslint.org/docs/rules/no-use-before-define#options). +This rule adds the following options: -- `functions` (`boolean`) - - The flag which shows whether or not this rule checks function declarations. - If this is `true`, this rule warns every reference to a function before the function declaration. - Otherwise, ignores those references. - Function declarations are hoisted, so it's safe. - Default is `true`. -- `classes` (`boolean`) - - The flag which shows whether or not this rule checks class declarations of upper scopes. - If this is `true`, this rule warns every reference to a class before the class declaration. - Otherwise, ignores those references if the declaration is in upper function scopes. - Class declarations are not hoisted, so it might be danger. - Default is `true`. -- `enums` (`boolean`) - - The flag which shows whether or not this rule checks enum declarations of upper scopes. - If this is `true`, this rule warns every reference to a enum before the enum declaration. - Otherwise, ignores those references. - Default is `true`. -- `variables` (`boolean`) - - This flag determines whether or not the rule checks variable declarations in upper scopes. - If this is `true`, the rule warns every reference to a variable before the variable declaration. - Otherwise, the rule ignores a reference if the declaration is in an upper scope, while still reporting the reference if it's in the same scope as the declaration. - Default is `true`. -- `typedefs` (`boolean`, **added** in `@typescript-eslint/eslint-plugin`) - - The flag which shows whether or not this rule checks type declarations. - If this is `true`, this rule warns every reference to a type before the type declaration. - Otherwise, ignores those references. - Type declarations are hoisted, so it's safe. - Default is `true`. - -This rule accepts `"nofunc"` string as an option. -`"nofunc"` is the same as `{ "functions": false, "classes": true }`. - -### `functions` - -Examples of **correct** code for the `{ "functions": false }` option: - -```js -/*eslint no-use-before-define: ["error", { "functions": false }]*/ - -f(); -function f() {} -``` - -### `classes` - -Examples of **incorrect** code for the `{ "classes": false }` option: - -```js -/*eslint no-use-before-define: ["error", { "classes": false }]*/ -/*eslint-env es6*/ - -new A(); -class A {} -``` - -Examples of **correct** code for the `{ "classes": false }` option: - -```js -/*eslint no-use-before-define: ["error", { "classes": false }]*/ -/*eslint-env es6*/ - -function foo() { - return new A(); +```ts +interface Options extends BaseNoUseBeforeDefineOptions { + enums?: boolean; + typedefs?: boolean; + ignoreTypeReferences?: boolean; } -class A {} +const defaultOptions: Options = { + ...baseNoUseBeforeDefineDefaultOptions, + enums: true, + typedefs: true, + ignoreTypeReferences: true, +}; ``` ### `enums` -Examples of **incorrect** code for the `{ "enums": true }` option: +If this is `true`, this rule warns every reference to a enum before the enum declaration. +If this is `false`, this rule will ignore references to enums, when the reference is in a child scope. + +Examples of **incorrect** code for the `{ "enums": false }` option: ```ts -/*eslint no-use-before-define: ["error", { "enums": true }]*/ +/*eslint no-use-before-define: ["error", { "enums": false }]*/ -function foo() { - return Foo.FOO; -} - -class Test { - foo() { - return Foo.FOO; - } -} +const x = Foo.FOO; enum Foo { FOO, - BAR, } ``` @@ -176,31 +68,11 @@ enum Foo { } ``` -### `variables` - -Examples of **incorrect** code for the `{ "variables": false }` option: - -```js -/*eslint no-use-before-define: ["error", { "variables": false }]*/ - -console.log(foo); -var foo = 1; -``` - -Examples of **correct** code for the `{ "variables": false }` option: - -```js -/*eslint no-use-before-define: ["error", { "variables": false }]*/ - -function baz() { - console.log(foo); -} - -var foo = 1; -``` - ### `typedefs` +If this is `true`, this rule warns every reference to a type before the type declaration. +If this is `false`, this rule will ignore references to types. + Examples of **correct** code for the `{ "typedefs": false }` option: ```ts @@ -210,4 +82,25 @@ let myVar: StringOrNumber; type StringOrNumber = string | number; ``` -Copied from [the original ESLint rule docs](https://github.com/eslint/eslint/blob/a113cd3/docs/rules/no-use-before-define.md) +### `ignoreTypeReferences` + +If this is `true`, this rule ignores all type references, such as in type annotations and assertions. +If this is `false`, this will will check all type references. + +Examples of **correct** code for the `{ "ignoreTypeReferences": true }` option: + +```ts +/*eslint no-use-before-define: ["error", { "ignoreTypeReferences": true }]*/ + +let var1: StringOrNumber; +type StringOrNumber = string | number; + +let var2: Enum; +enum Enum {} +``` + +### Other Options + +See [`eslint/no-use-before-define` options](https://eslint.org/docs/rules/no-use-before-define#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-use-before-define.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md index 757ae5d4..524ad4b9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md @@ -1,88 +1,26 @@ # Disallow unnecessary constructors (`no-useless-constructor`) -ES2015 provides a default class constructor if one is not specified. As such, it is unnecessary to provide an empty constructor or one that simply delegates into its parent class, as in the following examples: - -```js -class A { - constructor() {} -} - -class A extends B { - constructor(value) { - super(value); - } -} -``` - ## Rule Details -This rule flags class constructors that can be safely removed without changing how the class works. +This rule extends the base [`eslint/no-useless-constructor`](https://eslint.org/docs/rules/no-useless-constructor) rule. +It adds support for: -## Examples +- constructors marked as `protected` / `private` (i.e. marking a constructor as non-public), +- `public` constructors when there is no superclass, +- constructors with only parameter properties. -Examples of **incorrect** code for this rule: +## How to use -```js -/*eslint @typescript-eslint/no-useless-constructor: "error"*/ - -class A { - constructor() {} -} - -class A extends B { - constructor(...args) { - super(...args); - } -} -``` - -Examples of **correct** code for this rule: - -```js -/*eslint @typescript-eslint/no-useless-constructor: "error"*/ - -class A {} - -class A { - constructor() { - doSomething(); - } -} - -class A extends B { - constructor() { - super('foo'); - } -} - -class A extends B { - constructor() { - super(); - doSomething(); - } -} - -class A extends B { - constructor(protected name: string) {} -} - -class A extends B { - protected constructor() {} -} -``` - -## Rule Changes - -```cjson +```jsonc { - // note you must disable the base rule as it can report incorrect errors - "no-useless-constructor": "off", - "@typescript-eslint/no-useless-constructor": "error", + // note you must disable the base rule as it can report incorrect errors + "no-useless-constructor": "off", + "@typescript-eslint/no-useless-constructor": ["error"] } ``` -## When Not To Use It +## Options -If you don't want to be notified about unnecessary constructors, you can safely disable this rule. +See [`eslint/no-useless-constructor` options](https://eslint.org/docs/rules/no-useless-constructor#options). Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/no-useless-constructor.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md index bb288192..b710a827 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md @@ -25,4 +25,4 @@ let foo = { bar: 'baz' }; ## When Not To Use It -If you are using typescript < 3.4 +If you are using TypeScript < 3.4 diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md new file mode 100644 index 00000000..1e8f568d --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md @@ -0,0 +1,70 @@ +# Prefer initializing each enums member value (`prefer-enum-initializers`) + +This rule recommends having each `enum`s member value explicitly initialized. + +`enum`s are a practical way to organize semantically related constant values. However, by implicitly defining values, `enum`s can lead to unexpected bugs if it's modified without paying attention to the order of its items. + +## Rule Details + +`enum`s infers sequential numbers automatically when initializers are omitted: + +```ts +enum Status { + Open, // infer 0 + Closed, // infer 1 +} +``` + +If a new member is added to the top of `Status`, both `Open` and `Closed` would have its values altered: + +```ts +enum Status { + Pending, // infer 0 + Open, // infer 1 + Closed, // infer 2 +} +``` + +Examples of **incorrect** code for this rule: + +```ts +enum Status { + Open = 1, + Close, +} + +enum Direction { + Up, + Down, +} + +enum Color { + Red, + Green = 'Green' + Blue = 'Blue', +} +``` + +Examples of **correct** code for this rule: + +```ts +enum Status { + Open = 'Open', + Close = 'Close', +} + +enum Direction { + Up = 1, + Down = 2, +} + +enum Color { + Red = 'Red', + Green = 'Green', + Blue = 'Blue', +} +``` + +## When Not To Use It + +If you don't care about `enum`s having implicit values you can safely disable this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md index a3210a13..5c3bc55c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md @@ -24,6 +24,13 @@ interface Foo extends Function { } ``` +```ts +interface MixinMethod { + // returns the function itself, not the `this` argument. + (arg: string): this; +} +``` + Examples of **correct** code for this rule: ```ts @@ -48,6 +55,23 @@ interface Bar extends Foo { } ``` +```ts +// returns the `this` argument of function, retaining it's type. +type MixinMethod = (this: TSelf, arg: string) => TSelf; +// a function that returns itself is much clearer in this form. +type ReturnsSelf = (arg: string) => ReturnsSelf; +``` + +```ts +// multiple call signatures (overloads) is allowed: +interface Overloaded { + (data: string): number; + (id: number): string; +} +// this is equivelent to Overloaded interface. +type Intersection = ((data: string) => number) & ((id: number) => string); +``` + ## When Not To Use It If you specifically want to use an interface or type literal with a single call signature for stylistic reasons, you can disable this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md new file mode 100644 index 00000000..e2350f35 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md @@ -0,0 +1,51 @@ +# Require that all enum members be literal values to prevent unintended enum member name shadow issues (`prefer-literal-enum-member`) + +TypeScript allows the value of an enum member to be many different kinds of valid JavaScript expressions. However, because enums create their own scope whereby each enum member becomes a variable in that scope, unexpected values could be used at runtime. Example: + +```ts +const imOutside = 2; +const b = 2; +enum Foo { + outer = imOutside, + a = 1, + b = a, + c = b, + // does c == Foo.b == Foo.c == 1? + // or does c == b == 2? +} +``` + +The answer is that `Foo.c` will be `1` at runtime. The [playground](https://www.typescriptlang.org/play/#src=const%20imOutside%20%3D%202%3B%0D%0Aconst%20b%20%3D%202%3B%0D%0Aenum%20Foo%20%7B%0D%0A%20%20%20%20outer%20%3D%20imOutside%2C%0D%0A%20%20%20%20a%20%3D%201%2C%0D%0A%20%20%20%20b%20%3D%20a%2C%0D%0A%20%20%20%20c%20%3D%20b%2C%0D%0A%20%20%20%20%2F%2F%20does%20c%20%3D%3D%20Foo.b%20%3D%3D%20Foo.c%20%3D%3D%201%3F%0D%0A%20%20%20%20%2F%2F%20or%20does%20c%20%3D%3D%20b%20%3D%3D%202%3F%0D%0A%7D) illustrates this quite nicely. + +## Rule Details + +This rule is meant to prevent unexpected results in code by requiring the use of literal values as enum members to prevent unexpected runtime behavior. Template literals, arrays, objects, constructors, and all other expression types can end up using a variable from its scope or the parent scope, which can result in the same unexpected behavior at runtime. + +Examples of **incorrect** code for this rule: + +```ts +const str = 'Test'; +enum Invalid { + A = str, // Variable assignment + B = {}, // Object assignment + C = `A template literal string`, // Template literal + D = new Set(1, 2, 3), // Constructor in assignment + E = 2 + 2, // Expression assignment +} +``` + +Examples of **correct** code for this rule: + +```ts +enum Valid { + A, + B = 'TestStr', // A regular string + C = 4, // A number + D = null, + E = /some_regex/, +} +``` + +## When Not To Use It + +If you want use anything other than simple literals as an enum value. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md index 5b99e5c6..bb32c028 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md @@ -46,7 +46,6 @@ type Options = [ { ignoreConditionalTests?: boolean; ignoreMixedLogicalExpressions?: boolean; - forceSuggestionFixer?: boolean; }, ]; @@ -54,7 +53,6 @@ const defaultOptions = [ { ignoreConditionalTests: true, ignoreMixedLogicalExpressions: true, - forceSuggestionFixer: false, }, ]; ``` @@ -133,12 +131,6 @@ a ?? (b && c && d); **_NOTE:_** Errors for this specific case will be presented as suggestions (see below), instead of fixes. This is because it is not always safe to automatically convert `||` to `??` within a mixed logical expression, as we cannot tell the intended precedence of the operator. Note that by design, `??` requires parentheses when used with `&&` or `||` in the same expression. -### `forceSuggestionFixer` - -Setting this option to `true` will cause the rule to use ESLint's "suggested fix" mode for all fixes. _This option is provided as to aid in transitioning your codebase onto this rule_. - -Suggestion fixes cannot be automatically applied via the `--fix` CLI command, but can be _manually_ chosen to be applied one at a time via an IDE or similar. This makes it safe to run autofixers on an existing codebase without worrying about potential runtime behavior changes from this rule's fixer. - ## When Not To Use It If you are not using TypeScript 3.7 (or greater), then you will not be able to use this rule, as the operator is not supported. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md index 9a046b3d..6505c939 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md @@ -70,6 +70,8 @@ foo?.a?.b?.method?.(); foo?.a?.b?.c?.d?.e; ``` +**Note:** there are a few edge cases where this rule will false positive. Use your best judgement when evaluating reported errors. + ## When Not To Use It If you are not using TypeScript 3.7 (or greater), then you will not be able to use this rule, as the operator is not supported. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md index c69b3b21..74697f2d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md @@ -74,7 +74,8 @@ function object3(arg: { readonly prop: { readonly prop2: string } }) {} interface CustomArrayType extends ReadonlyArray { readonly prop: string; } -function custom1(arg: CustomArrayType) {} +function custom1(arg: Readonly) {} +// interfaces that extend the array types are not considered arrays, and thus must be made readonly. interface CustomFunction { (): void; diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md index 6731a758..9ce16a8c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md @@ -52,9 +52,9 @@ This rule, in its default state, does not require any argument. You may pass `"onlyInlineLambdas": true` as a rule option within an object to restrict checking only to members immediately assigned a lambda value. -```cjson +```jsonc { - "@typescript-eslint/prefer-readonly": ["error", { "onlyInlineLambdas": true }] + "@typescript-eslint/prefer-readonly": ["error", { "onlyInlineLambdas": true }] } ``` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md new file mode 100644 index 00000000..d6f68021 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md @@ -0,0 +1,54 @@ +# Prefer using type parameter when calling `Array#reduce` instead of casting (`prefer-reduce-type-parameter`) + +It's common to call `Array#reduce` with a generic type, such as an array or object, as the initial value. +Since these values are empty, their types are not usable: + +- `[]` has type `never[]`, which can't have items pushed into it as nothing is type `never` +- `{}` has type `{}`, which doesn't have an index signature and so can't have properties added to it + +A common solution to this problem is to cast the initial value. While this will work, it's not the most optimal +solution as casting has subtle effects on the underlying types that can allow bugs to slip in. + +A better (and lesser known) solution is to pass the type in as a generic parameter to `Array#reduce` explicitly. +This means that TypeScript doesn't have to try to infer the type, and avoids the common pitfalls that come with casting. + +## Rule Details + +This rule looks for calls to `Array#reduce`, and warns if an initial value is being passed & casted, +suggesting instead to pass the cast type to `Array#reduce` as its generic parameter. + +Examples of **incorrect** code for this rule: + +```ts +[1, 2, 3].reduce((arr, num) => arr.concat(num * 2), [] as number[]); + +['a', 'b'].reduce( + (accum, name) => ({ + ...accum, + [name]: true, + }), + {} as Record, +); +``` + +Examples of **correct** code for this rule: + +```ts +[1, 2, 3].reduce((arr, num) => arr.concat(num * 2), []); + +['a', 'b'].reduce>( + (accum, name) => ({ + ...accum, + [name]: true, + }), + {}, +); +``` + +## Options + +There are no options. + +## When Not To Use It + +If you don't want to use typechecking in your linting, you can't use this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md new file mode 100644 index 00000000..60fdf79c --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md @@ -0,0 +1,65 @@ +# Recommends using `@ts-expect-error` over `@ts-ignore` (`prefer-ts-expect-error`) + +TypeScript allows you to suppress all errors on a line by placing a single-line comment or a comment block line starting with `@ts-ignore` immediately before the erroring line. +While powerful, there is no way to know if a `@ts-ignore` is actually suppressing an error without manually investigating what happens when the `@ts-ignore` is removed. + +This means its easy for `@ts-ignore`s to be forgotten about, and remain in code even after the error they were suppressing is fixed. +This is dangerous, as if a new error arises on that line it'll be suppressed by the forgotten about `@ts-ignore`, and so be missed. + +To address this, TS3.9 ships with a new single-line comment directive: `// @ts-expect-error`. + +This directive operates in the same manner as `@ts-ignore`, but will error if the line it's meant to be suppressing doesn't actually contain an error, making it a lot safer. + +## Rule Details + +This rule looks for usages of `@ts-ignore`, and flags them to be replaced with `@ts-expect-error`. + +Examples of **incorrect** code for this rule: + +```ts +// @ts-ignore +const str: string = 1; + +/** + * Explaining comment + * + * @ts-ignore */ +const multiLine: number = 'value'; + +/** @ts-ignore */ +const block: string = 1; + +const isOptionEnabled = (key: string): boolean => { + // @ts-ignore: if key isn't in globalOptions it'll be undefined which is false + return !!globalOptions[key]; +}; +``` + +Examples of **correct** code for this rule: + +```ts +// @ts-expect-error +const str: string = 1; + +/** + * Explaining comment + * + * @ts-expect-error */ +const multiLine: number = 'value'; + +/** @ts-expect-error */ +const block: string = 1; + +const isOptionEnabled = (key: string): boolean => { + // @ts-expect-error: if key isn't in globalOptions it'll be undefined which is false + return !!globalOptions[key]; +}; +``` + +## When Not To Use It + +If you are **NOT** using TypeScript 3.9 (or greater), then you will not be able to use this rule, as the directive is not supported + +## Further Reading + +- [Original Implementing PR](https://github.com/microsoft/TypeScript/pull/36014) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md index e9c37df3..6b63587f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md @@ -3,11 +3,11 @@ ## Rule Details This rule extends the base [`eslint/quotes`](https://eslint.org/docs/rules/quotes) rule. -It supports all options and features of the base rule. +It adds support for TypeScript features which allow quoted names, but not backtick quoted names. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "quotes": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md index 3a939f7d..78de1986 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md @@ -45,7 +45,40 @@ userDefinedType.sort(); ## Options -None. +The rule accepts an options object with the following properties: + +```ts +type Options = { + /** + * If true, an array which all elements are string is ignored. + */ + ignoreStringArrays?: boolean; +}; + +const defaults = { + ignoreStringArrays: false, +}; +``` + +### `ignoreStringArrays` + +Examples of **incorrect** code for this rule with `{ ignoreStringArrays: true }`: + +```ts +const one = 1; +const two = 2; +const three = 3; +[one, two, three].sort(); +``` + +Examples of **correct** code for this rule with `{ ignoreStringArrays: true }`: + +```ts +const one = '1'; +const two = '2'; +const three = '3'; +[one, two, three].sort(); +``` ## When Not To Use It diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md index 23160dc7..2d8ad41f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md @@ -1,49 +1,32 @@ # Disallow async functions which have no `await` expression (`require-await`) -Asynchronous functions that don’t use `await` might not need to be asynchronous functions and could be the unintentional result of refactoring. - ## Rule Details -The `@typescript-eslint/require-await` rule extends the `require-await` rule from ESLint core, and allows for cases where the additional typing information can prevent false positives that would otherwise trigger the rule. +This rule extends the base [`eslint/require-await`](https://eslint.org/docs/rules/require-await) rule. +It uses type information to add support for `async` functions that return a `Promise`. -One example is when a function marked as `async` returns a value that is: +Examples of **correct** code for this rule: -1. already a promise; or -2. the result of calling another `async` function - -```typescript -async function numberOne(): Promise { +```ts +async function returnsPromise1() { return Promise.resolve(1); } -async function getDataFromApi(endpoint: string): Promise { - return fetch(endpoint); -} +const returnsPromise2 = () => returnsPromise1(); ``` -In the above examples, the core `require-await` triggers the following warnings: +## How to use -``` -async function 'numberOne' has no 'await' expression -async function 'getDataFromApi' has no 'await' expression -``` - -One way to resolve these errors is to remove the `async` keyword. However doing so can cause a conflict with the [`@typescript-eslint/promise-function-async`](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/promise-function-async.md) rule (if enabled), which requires any function returning a promise to be marked as `async`. - -Another way to resolve these errors is to add an `await` keyword to the return statements. However doing so can cause a conflict with the [`no-return-await`](https://eslint.org/docs/rules/no-return-await) rule (if enabled), which warns against using `return await` since the return value of an `async` function is always wrapped in `Promise.resolve` anyway. - -With the additional typing information available in TypeScript code, this extension to the `require-await` rule is able to look at the _actual_ return types of an `async` function (before being implicitly wrapped in `Promise.resolve`), and avoid the need for an `await` expression when the return value is already a promise. - -See the [ESLint documentation](https://eslint.org/docs/rules/require-await) for more details on the `require-await` rule. - -## Rule Changes - -```cjson +```jsonc { - // note you must disable the base rule as it can report incorrect errors - "require-await": "off", - "@typescript-eslint/require-await": "error" + // note you must disable the base rule as it can report incorrect errors + "require-await": "off", + "@typescript-eslint/require-await": "error" } ``` +## Options + +See [`eslint/require-await` options](https://eslint.org/docs/rules/require-await#options). + Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/require-await.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md index 549da98e..0ee7427d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md @@ -6,6 +6,9 @@ Examples of **correct** code: const arg = 'foo'; const msg1 = `arg = ${arg}`; const msg2 = `arg = ${arg || 'default'}`; + +const stringWithKindProp: string & { _kind?: 'MyString' } = 'foo'; +const msg3 = `stringWithKindProp = ${stringWithKindProp}`; ``` Examples of **incorrect** code: @@ -28,14 +31,17 @@ type Options = { allowNumber?: boolean; // if true, also allow boolean type in template expressions allowBoolean?: boolean; + // if true, also allow any in template expressions + allowAny?: boolean; // if true, also allow null and undefined in template expressions - allowNullable?: boolean; + allowNullish?: boolean; }; const defaults = { - allowNumber: false, + allowNumber: true, allowBoolean: false, - allowNullable: false, + allowAny: false, + allowNullish: false, }; ``` @@ -59,9 +65,19 @@ const msg1 = `arg = ${arg}`; const msg2 = `arg = ${arg || 'not truthy'}`; ``` -### `allowNullable` +### `allowAny` -Examples of additional **correct** code for this rule with `{ allowNullable: true }`: +Examples of additional **correct** code for this rule with `{ allowAny: true }`: + +```ts +const user = JSON.parse('{ "name": "foo" }'); +const msg1 = `arg = ${user.name}`; +const msg2 = `arg = ${user.name || 'the user with no name'}`; +``` + +### `allowNullish` + +Examples of additional **correct** code for this rule with `{ allowNullish: true }`: ```ts const arg = condition ? 'ok' : null; diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md index c00c2be5..3c621d25 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md @@ -4,65 +4,40 @@ Returning an awaited promise can make sense for better stack trace information a ## Rule Details -The `@typescript-eslint/return-await` rule specifies that awaiting a returned non-promise is never allowed. By default, the rule requires awaiting a returned promise in a `try-catch-finally` block and disallows returning an awaited promise in any other context. Optionally, the rule can require awaiting returned promises in all contexts, or disallow them in all contexts. +This rule builds on top of the [`eslint/no-return-await`](https://eslint.org/docs/rules/no-return-await) rule. +It expands upon the base rule to add support for optionally requiring `return await` in certain cases. -## Options +## How to use -`in-try-catch` (default): `await`-ing a returned promise is required in `try-catch-finally` blocks and disallowed elsewhere. - -`always`: `await`-ing a returned promise is required everywhere. - -`never`: `await`-ing a returned promise is disallowed everywhere. - -```typescript -// valid in-try-catch -async function validInTryCatch1() { - try { - return await Promise.resolve('try'); - } catch (e) {} -} - -async function validInTryCatch2() { - return Promise.resolve('try'); -} - -async function validInTryCatch3() { - return 'value'; -} - -// valid always -async function validAlways1() { - try { - return await Promise.resolve('try'); - } catch (e) {} -} - -async function validAlways2() { - return await Promise.resolve('try'); -} - -async function validAlways3() { - return 'value'; -} - -// valid never -async function validNever1() { - try { - return Promise.resolve('try'); - } catch (e) {} -} - -async function validNever2() { - return Promise.resolve('try'); -} - -async function validNever3() { - return 'value'; +```jsonc +{ + // note you must disable the base rule as it can report incorrect errors + "no-return-await": "off", + "@typescript-eslint/return-await": "error" } ``` -```typescript -// invalid in-try-catch +## Options + +```ts +type Options = 'in-try-catch' | 'always' | 'never'; + +const defaultOptions: Options = 'in-try-catch'; +``` + +### `in-try-catch` + +Requires that a returned promise must be `await`ed in `try-catch-finally` blocks, and disallows it elsewhere. +Specifically: + +- if you `return` a promise within a `try`, then it must be `await`ed. +- if you `return` a promise within a `catch`, and there **_is no_** `finally`, then it **_must not_** be `await`ed. +- if you `return` a promise within a `catch`, and there **_is a_** `finally`, then it **_must_** be `await`ed. +- if you `return` a promise within a `finally`, then it **_must not_** be `await`ed. + +Examples of **incorrect** code with `in-try-catch`: + +```ts async function invalidInTryCatch1() { try { return Promise.resolve('try'); @@ -70,14 +45,95 @@ async function invalidInTryCatch1() { } async function invalidInTryCatch2() { - return await Promise.resolve('try'); + try { + throw new Error('error'); + } catch (e) { + return await Promise.resolve('catch'); + } } async function invalidInTryCatch3() { - return await 'value'; + try { + throw new Error('error'); + } catch (e) { + return Promise.resolve('catch'); + } finally { + console.log('cleanup'); + } } -// invalid always +async function invalidInTryCatch4() { + try { + throw new Error('error'); + } catch (e) { + throw new Error('error2'); + } finally { + return await Promise.resolve('finally'); + } +} + +async function invalidInTryCatch5() { + return await Promise.resolve('try'); +} + +async function invalidInTryCatch6() { + return await 'value'; +} +``` + +Examples of **correct** code with `in-try-catch`: + +```ts +async function validInTryCatch1() { + try { + return await Promise.resolve('try'); + } catch (e) {} +} + +async function validInTryCatch2() { + try { + throw new Error('error'); + } catch (e) { + return Promise.resolve('catch'); + } +} + +async function validInTryCatch3() { + try { + throw new Error('error'); + } catch (e) { + return await Promise.resolve('catch'); + } finally { + console.log('cleanup'); + } +} + +async function validInTryCatch4() { + try { + throw new Error('error'); + } catch (e) { + throw new Error('error2'); + } finally { + return Promise.resolve('finally'); + } +} + +async function validInTryCatch5() { + return Promise.resolve('try'); +} + +async function validInTryCatch6() { + return 'value'; +} +``` + +### `always` + +Requires that all returned promises are `await`ed. + +Examples of **incorrect** code with `always`: + +```ts async function invalidAlways1() { try { return Promise.resolve('try'); @@ -91,8 +147,33 @@ async function invalidAlways2() { async function invalidAlways3() { return await 'value'; } +``` -// invalid never +Examples of **correct** code with `always`: + +```ts +async function validAlways1() { + try { + return await Promise.resolve('try'); + } catch (e) {} +} + +async function validAlways2() { + return await Promise.resolve('try'); +} + +async function validAlways3() { + return 'value'; +} +``` + +### `never` + +Disallows all `await`ing any returned promises. + +Examples of **incorrect** code with `never`: + +```ts async function invalidNever1() { try { return await Promise.resolve('try'); @@ -108,16 +189,20 @@ async function invalidNever3() { } ``` -The rule also applies to `finally` blocks. So the following would be invalid with default options: +Examples of **correct** code with `never`: -```typescript -async function invalid() { +```ts +async function validNever1() { try { - return await Promise.resolve('try'); - } catch (e) { - return Promise.resolve('catch'); - } finally { - // cleanup - } + return Promise.resolve('try'); + } catch (e) {} +} + +async function validNever2() { + return Promise.resolve('try'); +} + +async function validNever3() { + return 'value'; } ``` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md index bbb3154f..c233d354 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md @@ -5,15 +5,13 @@ This rule enforces consistent use of semicolons after statements. ## Rule Details This rule extends the base [`eslint/semi`](https://eslint.org/docs/rules/semi) rule. -It supports all options and features of the base rule. -This version adds support for numerous typescript features. +It adds support for TypeScript features that require semicolons. -See also the [`@typescript-eslint/member-delimiter-style`](member-delimiter-style.md) rule, -which allows you to specify the delimiter for `type` and `interface` members. +See also the [`@typescript-eslint/member-delimiter-style`](member-delimiter-style.md) rule, which allows you to specify the delimiter for `type` and `interface` members. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "semi": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md index bfbcb22d..db2579e4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md @@ -1,33 +1,13 @@ # Enforces consistent spacing before function parenthesis (`space-before-function-paren`) -When formatting a function, whitespace is allowed between the function name or `function` keyword and the opening parenthesis. Named functions also require a space between the `function` keyword and the function name, but anonymous functions require no whitespace. For example: - - -```ts -function withoutSpace(x) { - // ... -} - -function withSpace (x) { - // ... -} - -var anonymousWithoutSpace = function() {}; - -var anonymousWithSpace = function () {}; -``` - -Style guides may require a space after the `function` keyword for anonymous functions, while others specify no whitespace. Similarly, the space after a function name may or may not be required. - ## Rule Details This rule extends the base [`eslint/space-before-function-paren`](https://eslint.org/docs/rules/space-before-function-paren) rule. -It supports all options and features of the base rule. -This version adds support for generic type parameters on function calls. +It adds support for generic type parameters on function calls. ## How to use -```cjson +```jsonc { // note you must disable the base rule as it can report incorrect errors "space-before-function-paren": "off", diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md index cec62158..243d54fd 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md @@ -1,67 +1,162 @@ # Restricts the types allowed in boolean expressions (`strict-boolean-expressions`) -Requires that any boolean expression is limited to true booleans rather than -casting another primitive to a boolean at runtime. +Forbids usage of non-boolean types in expressions where a boolean is expected. +`boolean` and `never` types are always allowed. +Additional types which are considered safe in a boolean context can be configured via options. -It is useful to be explicit, for example, if you were trying to check if a -number was defined. Doing `if (number)` would evaluate to `false` if `number` -was defined and `0`. This rule forces these expressions to be explicit and to -strictly use booleans. +The following nodes are considered boolean expressions and their type is checked: -The following nodes are checked: - -- Arguments to the `!`, `&&`, and `||` operators -- The condition in a conditional expression `(cond ? x : y)` +- Argument to the logical negation operator (`!arg`). +- The condition in a conditional expression (`cond ? x : y`). - Conditions for `if`, `for`, `while`, and `do-while` statements. +- Operands of logical binary operators (`lhs || rhs` and `lhs && rhs`). + - Right-hand side operand is ignored when it's not a descendant of another boolean expression. + This is to allow usage of boolean operators for their short-circuiting behavior. + +## Examples Examples of **incorrect** code for this rule: ```ts -const number = 0; -if (number) { - return; +// nullable numbers are considered unsafe by default +let num: number | undefined = 0; +if (num) { + console.log('num is defined'); } -let foo = bar || 'foobar'; +// nullable strings are considered unsafe by default +let str: string | null = null; +if (!str) { + console.log('str is empty'); +} -let undefinedItem; -let foo = undefinedItem ? 'foo' : 'bar'; +// nullable booleans are considered unsafe by default +function foo(bool?: boolean) { + if (bool) { + bar(); + } +} -let str = 'foo'; -while (str) { - break; +// `any`, unconstrained generics and unions of more than one primitive type are disallowed +const foo = (arg: T) => (arg ? 1 : 0); + +// always-truthy and always-falsy types are disallowed +let obj = {}; +while (obj) { + obj = getObj(); } ``` Examples of **correct** code for this rule: -```ts -const number = 0; -if (typeof number !== 'undefined') { - return; +```tsx +// Using logical operators for their side effects is allowed +const Component = () => { + const entry = map.get('foo') || {}; + return entry &&

Name: {entry.name}

; +}; + +// nullable values should be checked explicitly against null or undefined +let num: number | undefined = 0; +if (num != null) { + console.log('num is defined'); } -let foo = typeof bar !== 'undefined' ? bar : 'foobar'; - -let undefinedItem; -let foo = typeof undefinedItem !== 'undefined' ? 'foo' : 'bar'; - -let str = 'foo'; -while (typeof str !== 'undefined') { - break; +let str: string | null = null; +if (str != null && !str) { + console.log('str is empty'); } + +function foo(bool?: boolean) { + if (bool ?? false) { + bar(); + } +} + +// `any` types should be cast to boolean explicitly +const foo = (arg: any) => (Boolean(arg) ? 1 : 0); ``` ## Options -Options may be provided as an object with: +```ts +type Options = { + allowString?: boolean; + allowNumber?: boolean; + allowNullableObject?: boolean; + allowNullableBoolean?: boolean; + allowNullableString?: boolean; + allowNullableNumber?: boolean; + allowAny?: boolean; +}; -- `allowNullable` to allow `undefined` and `null` in addition to `boolean` as a type of all boolean expressions. (`false` by default). -- `allowSafe` to allow non-falsy types (i.e. non string / number / boolean) in addition to `boolean` as a type of all boolean expressions. (`false` by default). -- `ignoreRhs` to skip the check on the right hand side of expressions like `a && b` or `a || b` - allows these operators to be used for their short-circuiting behavior. (`false` by default). +const defaultOptions: Options = { + allowString: true, + allowNumber: true, + allowNullableObject: true, + allowNullableBoolean: false, + allowNullableString: false, + allowNullableNumber: false, + allowAny: false, + allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false, +}; +``` + +### `allowString` + +Allows `string` in a boolean context. +This is safe because strings have only one falsy value (`""`). +Set this to `false` if you prefer the explicit `str != ""` or `str.length > 0` style. + +### `allowNumber` + +Allows `number` in a boolean context. +This is safe because numbers have only two falsy values (`0` and `NaN`). +Set this to `false` if you prefer the explicit `num != 0` and `!Number.isNaN(num)` style. + +### `allowNullableObject` + +Allows `object | function | symbol | null | undefined` in a boolean context. +This is safe because objects, functions and symbols don't have falsy values. +Set this to `false` if you prefer the explicit `obj != null` style. + +### `allowNullableBoolean` + +Allows `boolean | null | undefined` in a boolean context. +This is unsafe because nullable booleans can be either `false` or nullish. +Set this to `false` if you want to enforce explicit `bool ?? false` or `bool ?? true` style. +Set this to `true` if you don't mind implicitly treating false the same as a nullish value. + +### `allowNullableString` + +Allows `string | null | undefined` in a boolean context. +This is unsafe because nullable strings can be either an empty string or nullish. +Set this to `true` if you don't mind implicitly treating an empty string the same as a nullish value. + +### `allowNullableNumber` + +Allows `number | null | undefined` in a boolean context. +This is unsafe because nullable numbers can be either a falsy number or nullish. +Set this to `true` if you don't mind implicitly treating zero or NaN the same as a nullish value. + +### `allowAny` + +Allows `any` in a boolean context. +This is unsafe for obvious reasons. +Set this to `true` at your own risk. + +### `allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing` + +If this is set to `false`, then the rule will error on every file whose `tsconfig.json` does _not_ have the `strictNullChecks` compiler option (or `strict`) set to `true`. + +Without `strictNullChecks`, TypeScript essentially erases `undefined` and `null` from the types. This means when this rule inspects the types from a variable, **it will not be able to tell that the variable might be `null` or `undefined`**, which essentially makes this rule a lot less useful. + +You should be using `strictNullChecks` to ensure complete type-safety in your codebase. + +If for some reason you cannot turn on `strictNullChecks`, but still want to use this rule - you can use this option to allow it - but know that the behavior of this rule is _undefined_ with the compiler option turned off. We will not accept bug reports if you are using this option. ## Related To - TSLint: [strict-boolean-expressions](https://palantir.github.io/tslint/rules/strict-boolean-expressions) -- [no-unnecessary-condition](./no-unnecessary-condition.md) - essentially a less opinionated alternative to this rule. `strict-boolean-expressions` enforces a specific code style, while `no-unnecessary-condition` is about correctness. +- [no-unnecessary-condition](./no-unnecessary-condition.md) - Similar rule which reports always-truthy and always-falsy values in conditions diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md index a7c43a70..32b7b655 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md @@ -69,6 +69,8 @@ class Foo { name : string; } +type Foo = ()=>{}; +type Foo = () =>{}; type Foo = ()=> {}; ``` @@ -113,6 +115,8 @@ class Foo { name : string; } +type Foo = ()=>{}; +type Foo = () =>{}; type Foo = () => {}; ``` @@ -156,6 +160,10 @@ class Foo { class Foo { name :string; } + +type Foo = ()=>{}; +type Foo = () =>{}; +type Foo = ()=> {}; ``` Examples of **correct** code for this rule with `{ "before": true, "after": true }` options: @@ -169,6 +177,8 @@ function foo() : string {} class Foo { name : string; } + +type Foo = () => {}; ``` ### overrides - colon @@ -197,12 +207,12 @@ class Foo { name :string; } -type Foo = { - name: (name:string) => string; -} +type Foo = () =>{}; +type Foo = ()=> {}; +type Foo = () => {}; ``` -Examples of **correct** code for this rule with `{ "before": true, "after": true, overrides: { colon: { before: true, after: true }} }` options: +Examples of **correct** code for this rule with `{ "before": false, "after": false, overrides: { colon: { before: true, after: true }} }` options: ```ts @@ -217,6 +227,8 @@ class Foo { type Foo = { name: (name : string)=>string; } + +type Foo = ()=>{}; ``` ### overrides - arrow @@ -245,17 +257,9 @@ class Foo { name :string; } -type Foo = { - name: (name : string)=>string; -} - -type Foo = { - name: (name : string) =>string; -} - -type Foo = { - name: (name : string)=> string; -} +type Foo = ()=>{}; +type Foo = () =>{}; +type Foo = ()=> {}; ``` Examples of **correct** code for this rule with `{ "before": false, "after": false, overrides: { arrow: { before: true, after: true }} }` options: @@ -270,9 +274,7 @@ class Foo { name:string; } -type Foo = { - name: (name:string) => string; -} +type Foo = () => {}; ``` ## When Not To Use It diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md index 07f4bb1e..6c96fa03 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md @@ -16,29 +16,43 @@ class ContainsText { } ``` -> Note: requiring type annotations unnecessarily can be cumbersome to maintain and generally reduces code readability. -> TypeScript is often better at inferring types than easily written type annotations would allow. -> Instead of enabling `typedef`, it is generally recommended to use the `--noImplicitAny` and/or `--strictPropertyInitialization` compiler options to enforce type annotations only when useful. +**_Note:_** requiring type annotations unnecessarily can be cumbersome to maintain and generally reduces code readability. +TypeScript is often better at inferring types than easily written type annotations would allow. + +**Instead of enabling `typedef`, it is generally recommended to use the `--noImplicitAny` and `--strictPropertyInitialization` compiler options to enforce type annotations only when useful.** ## Rule Details This rule can enforce type annotations in locations regardless of whether they're required. This is typically used to maintain consistency for element types that sometimes require them. -> To enforce type definitions existing on call signatures as per TSLint's `arrow-call-signature` and `call-signature` options, use `explicit-function-return-type`. +> To enforce type definitions existing on call signatures as per TSLint's `arrow-call-signature` and `call-signature` options, use `explicit-function-return-type`, or `explicit-module-boundary-types`. ## Options -This rule has an object option that may receive any of the following as booleans: +```ts +type Options = { + arrayDestructuring?: boolean; + arrowParameter?: boolean; + memberVariableDeclaration?: boolean; + objectDestructuring?: boolean; + parameter?: boolean; + propertyDeclaration?: boolean; + variableDeclaration?: boolean; + variableDeclarationIgnoreFunction?: boolean; +}; -- `"arrayDestructuring"` -- `"arrowParameter"`: `true` by default -- `"memberVariableDeclaration"`: `true` by default -- `"objectDestructuring"` -- `"parameter"`: `true` by default -- `"propertyDeclaration"`: `true` by default -- `"variableDeclaration"`, -- `"variableDeclarationIgnoreFunction"` +const defaultOptions: Options = { + arrayDestructuring: false, + arrowParameter: false, + memberVariableDeclaration: false, + objectDestructuring: false, + parameter: false, + propertyDeclaration: false, + variableDeclaration: false, + variableDeclarationIgnoreFunction: false, +}; +``` For example, with the following configuration: @@ -48,7 +62,7 @@ For example, with the following configuration: "@typescript-eslint/typedef": [ "error", { - "arrowParameter": false, + "arrowParameter": true, "variableDeclaration": true } ] @@ -56,9 +70,8 @@ For example, with the following configuration: } ``` -- Type annotations on arrow function parameters are not required +- Type annotations on arrow function parameters are required - Type annotations on variables are required -- Options otherwise adhere to the defaults ### `arrayDestructuring` @@ -164,7 +177,7 @@ function logsSize(size): void { console.log(size); } -const doublesSize = function(size): number { +const doublesSize = function (size): number { return size * 2; }; @@ -172,7 +185,7 @@ const divider = { curriesSize(size): number { return size; }, - dividesSize: function(size): number { + dividesSize: function (size): number { return size / 2; }, }; @@ -192,7 +205,7 @@ function logsSize(size: number): void { console.log(size); } -const doublesSize = function(size: number): number { +const doublesSize = function (size: number): number { return size * 2; }; @@ -200,7 +213,7 @@ const divider = { curriesSize(size: number): number { return size; }, - dividesSize: function(size: number): number { + dividesSize: function (size: number): number { return size / 2; }, }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/eslint b/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/eslint new file mode 120000 index 00000000..da97b4e3 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/eslint @@ -0,0 +1 @@ +../../../../eslint/bin/eslint.js \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/semver b/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/semver new file mode 120000 index 00000000..bb49af14 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/.bin/semver @@ -0,0 +1 @@ +../../../../jest-circus/node_modules/semver/bin/semver.js \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/LICENSE b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/LICENSE deleted file mode 100644 index 883ee1f6..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2018 Toru Nagashima - -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. diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/README.md b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/README.md deleted file mode 100644 index 03583806..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# eslint-utils - -[![npm version](https://img.shields.io/npm/v/eslint-utils.svg)](https://www.npmjs.com/package/eslint-utils) -[![Downloads/month](https://img.shields.io/npm/dm/eslint-utils.svg)](http://www.npmtrends.com/eslint-utils) -[![Build Status](https://github.com/mysticatea/eslint-utils/workflows/CI/badge.svg)](https://github.com/mysticatea/eslint-utils/actions) -[![Coverage Status](https://codecov.io/gh/mysticatea/eslint-utils/branch/master/graph/badge.svg)](https://codecov.io/gh/mysticatea/eslint-utils) -[![Dependency Status](https://david-dm.org/mysticatea/eslint-utils.svg)](https://david-dm.org/mysticatea/eslint-utils) - -## 🏁 Goal - -This package provides utility functions and classes for make ESLint custom rules. - -For examples: - -- [getStaticValue](https://eslint-utils.mysticatea.dev/api/ast-utils.html#getstaticvalue) evaluates static value on AST. -- [PatternMatcher](https://eslint-utils.mysticatea.dev/api/ast-utils.html#patternmatcher-class) finds a regular expression pattern as handling escape sequences. -- [ReferenceTracker](https://eslint-utils.mysticatea.dev/api/scope-utils.html#referencetracker-class) checks the members of modules/globals as handling assignments and destructuring. - -## 📖 Usage - -See [documentation](https://eslint-utils.mysticatea.dev/). - -## 📰 Changelog - -See [releases](https://github.com/mysticatea/eslint-utils/releases). - -## ❤️ Contributing - -Welcome contributing! - -Please use GitHub's Issues/PRs. - -### Development Tools - -- `npm test` runs tests and measures coverage. -- `npm run clean` removes the coverage result of `npm test` command. -- `npm run coverage` shows the coverage result of the last `npm test` command. -- `npm run lint` runs ESLint. -- `npm run watch` runs tests on each file change. diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.js deleted file mode 100644 index f5d3f3e6..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.js +++ /dev/null @@ -1,1827 +0,0 @@ -/*! @author Toru Nagashima */ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - -var evk = _interopDefault(require('eslint-visitor-keys')); - -/** - * Get the innermost scope which contains a given location. - * @param {Scope} initialScope The initial scope to search. - * @param {Node} node The location to search. - * @returns {Scope} The innermost scope. - */ -function getInnermostScope(initialScope, node) { - const location = node.range[0]; - - let scope = initialScope; - let found = false; - do { - found = false; - for (const childScope of scope.childScopes) { - const range = childScope.block.range; - - if (range[0] <= location && location < range[1]) { - scope = childScope; - found = true; - break - } - } - } while (found) - - return scope -} - -/** - * Find the variable of a given name. - * @param {Scope} initialScope The scope to start finding. - * @param {string|Node} nameOrNode The variable name to find. If this is a Node object then it should be an Identifier node. - * @returns {Variable|null} The found variable or null. - */ -function findVariable(initialScope, nameOrNode) { - let name = ""; - let scope = initialScope; - - if (typeof nameOrNode === "string") { - name = nameOrNode; - } else { - name = nameOrNode.name; - scope = getInnermostScope(scope, nameOrNode); - } - - while (scope != null) { - const variable = scope.set.get(name); - if (variable != null) { - return variable - } - scope = scope.upper; - } - - return null -} - -/** - * Negate the result of `this` calling. - * @param {Token} token The token to check. - * @returns {boolean} `true` if the result of `this(token)` is `false`. - */ -function negate0(token) { - return !this(token) //eslint-disable-line no-invalid-this -} - -/** - * Creates the negate function of the given function. - * @param {function(Token):boolean} f - The function to negate. - * @returns {function(Token):boolean} Negated function. - */ -function negate(f) { - return negate0.bind(f) -} - -/** - * Checks if the given token is an arrow token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an arrow token. - */ -function isArrowToken(token) { - return token.value === "=>" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a comma token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a comma token. - */ -function isCommaToken(token) { - return token.value === "," && token.type === "Punctuator" -} - -/** - * Checks if the given token is a semicolon token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a semicolon token. - */ -function isSemicolonToken(token) { - return token.value === ";" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a colon token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a colon token. - */ -function isColonToken(token) { - return token.value === ":" && token.type === "Punctuator" -} - -/** - * Checks if the given token is an opening parenthesis token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an opening parenthesis token. - */ -function isOpeningParenToken(token) { - return token.value === "(" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a closing parenthesis token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a closing parenthesis token. - */ -function isClosingParenToken(token) { - return token.value === ")" && token.type === "Punctuator" -} - -/** - * Checks if the given token is an opening square bracket token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an opening square bracket token. - */ -function isOpeningBracketToken(token) { - return token.value === "[" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a closing square bracket token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a closing square bracket token. - */ -function isClosingBracketToken(token) { - return token.value === "]" && token.type === "Punctuator" -} - -/** - * Checks if the given token is an opening brace token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an opening brace token. - */ -function isOpeningBraceToken(token) { - return token.value === "{" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a closing brace token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a closing brace token. - */ -function isClosingBraceToken(token) { - return token.value === "}" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a comment token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a comment token. - */ -function isCommentToken(token) { - return ( - token.type === "Line" || - token.type === "Block" || - token.type === "Shebang" - ) -} - -const isNotArrowToken = negate(isArrowToken); -const isNotCommaToken = negate(isCommaToken); -const isNotSemicolonToken = negate(isSemicolonToken); -const isNotColonToken = negate(isColonToken); -const isNotOpeningParenToken = negate(isOpeningParenToken); -const isNotClosingParenToken = negate(isClosingParenToken); -const isNotOpeningBracketToken = negate(isOpeningBracketToken); -const isNotClosingBracketToken = negate(isClosingBracketToken); -const isNotOpeningBraceToken = negate(isOpeningBraceToken); -const isNotClosingBraceToken = negate(isClosingBraceToken); -const isNotCommentToken = negate(isCommentToken); - -/** - * Get the `(` token of the given function node. - * @param {Node} node - The function node to get. - * @param {SourceCode} sourceCode - The source code object to get tokens. - * @returns {Token} `(` token. - */ -function getOpeningParenOfParams(node, sourceCode) { - return node.id - ? sourceCode.getTokenAfter(node.id, isOpeningParenToken) - : sourceCode.getFirstToken(node, isOpeningParenToken) -} - -/** - * Get the location of the given function node for reporting. - * @param {Node} node - The function node to get. - * @param {SourceCode} sourceCode - The source code object to get tokens. - * @returns {string} The location of the function node for reporting. - */ -function getFunctionHeadLocation(node, sourceCode) { - const parent = node.parent; - let start = null; - let end = null; - - if (node.type === "ArrowFunctionExpression") { - const arrowToken = sourceCode.getTokenBefore(node.body, isArrowToken); - - start = arrowToken.loc.start; - end = arrowToken.loc.end; - } else if ( - parent.type === "Property" || - parent.type === "MethodDefinition" - ) { - start = parent.loc.start; - end = getOpeningParenOfParams(node, sourceCode).loc.start; - } else { - start = node.loc.start; - end = getOpeningParenOfParams(node, sourceCode).loc.start; - } - - return { - start: Object.assign({}, start), - end: Object.assign({}, end), - } -} - -/* globals BigInt, globalThis, global, self, window */ - -const globalObject = - typeof globalThis !== "undefined" - ? globalThis - : typeof self !== "undefined" - ? self - : typeof window !== "undefined" - ? window - : typeof global !== "undefined" - ? global - : {}; - -const builtinNames = Object.freeze( - new Set([ - "Array", - "ArrayBuffer", - "BigInt", - "BigInt64Array", - "BigUint64Array", - "Boolean", - "DataView", - "Date", - "decodeURI", - "decodeURIComponent", - "encodeURI", - "encodeURIComponent", - "escape", - "Float32Array", - "Float64Array", - "Function", - "Infinity", - "Int16Array", - "Int32Array", - "Int8Array", - "isFinite", - "isNaN", - "isPrototypeOf", - "JSON", - "Map", - "Math", - "NaN", - "Number", - "Object", - "parseFloat", - "parseInt", - "Promise", - "Proxy", - "Reflect", - "RegExp", - "Set", - "String", - "Symbol", - "Uint16Array", - "Uint32Array", - "Uint8Array", - "Uint8ClampedArray", - "undefined", - "unescape", - "WeakMap", - "WeakSet", - ]) -); -const callAllowed = new Set( - [ - Array.isArray, - typeof BigInt === "function" ? BigInt : undefined, - Boolean, - Date, - Date.parse, - decodeURI, - decodeURIComponent, - encodeURI, - encodeURIComponent, - escape, - isFinite, - isNaN, - isPrototypeOf, - ...Object.getOwnPropertyNames(Math) - .map(k => Math[k]) - .filter(f => typeof f === "function"), - Number, - Number.isFinite, - Number.isNaN, - Number.parseFloat, - Number.parseInt, - Object, - Object.entries, - Object.is, - Object.isExtensible, - Object.isFrozen, - Object.isSealed, - Object.keys, - Object.values, - parseFloat, - parseInt, - RegExp, - String, - String.fromCharCode, - String.fromCodePoint, - String.raw, - Symbol, - Symbol.for, - Symbol.keyFor, - unescape, - ].filter(f => typeof f === "function") -); -const callPassThrough = new Set([ - Object.freeze, - Object.preventExtensions, - Object.seal, -]); - -/** - * Get the property descriptor. - * @param {object} object The object to get. - * @param {string|number|symbol} name The property name to get. - */ -function getPropertyDescriptor(object, name) { - let x = object; - while ((typeof x === "object" || typeof x === "function") && x !== null) { - const d = Object.getOwnPropertyDescriptor(x, name); - if (d) { - return d - } - x = Object.getPrototypeOf(x); - } - return null -} - -/** - * Check if a property is getter or not. - * @param {object} object The object to check. - * @param {string|number|symbol} name The property name to check. - */ -function isGetter(object, name) { - const d = getPropertyDescriptor(object, name); - return d != null && d.get != null -} - -/** - * Get the element values of a given node list. - * @param {Node[]} nodeList The node list to get values. - * @param {Scope|undefined} initialScope The initial scope to find variables. - * @returns {any[]|null} The value list if all nodes are constant. Otherwise, null. - */ -function getElementValues(nodeList, initialScope) { - const valueList = []; - - for (let i = 0; i < nodeList.length; ++i) { - const elementNode = nodeList[i]; - - if (elementNode == null) { - valueList.length = i + 1; - } else if (elementNode.type === "SpreadElement") { - const argument = getStaticValueR(elementNode.argument, initialScope); - if (argument == null) { - return null - } - valueList.push(...argument.value); - } else { - const element = getStaticValueR(elementNode, initialScope); - if (element == null) { - return null - } - valueList.push(element.value); - } - } - - return valueList -} - -const operations = Object.freeze({ - ArrayExpression(node, initialScope) { - const elements = getElementValues(node.elements, initialScope); - return elements != null ? { value: elements } : null - }, - - AssignmentExpression(node, initialScope) { - if (node.operator === "=") { - return getStaticValueR(node.right, initialScope) - } - return null - }, - - //eslint-disable-next-line complexity - BinaryExpression(node, initialScope) { - if (node.operator === "in" || node.operator === "instanceof") { - // Not supported. - return null - } - - const left = getStaticValueR(node.left, initialScope); - const right = getStaticValueR(node.right, initialScope); - if (left != null && right != null) { - switch (node.operator) { - case "==": - return { value: left.value == right.value } //eslint-disable-line eqeqeq - case "!=": - return { value: left.value != right.value } //eslint-disable-line eqeqeq - case "===": - return { value: left.value === right.value } - case "!==": - return { value: left.value !== right.value } - case "<": - return { value: left.value < right.value } - case "<=": - return { value: left.value <= right.value } - case ">": - return { value: left.value > right.value } - case ">=": - return { value: left.value >= right.value } - case "<<": - return { value: left.value << right.value } - case ">>": - return { value: left.value >> right.value } - case ">>>": - return { value: left.value >>> right.value } - case "+": - return { value: left.value + right.value } - case "-": - return { value: left.value - right.value } - case "*": - return { value: left.value * right.value } - case "/": - return { value: left.value / right.value } - case "%": - return { value: left.value % right.value } - case "**": - return { value: Math.pow(left.value, right.value) } - case "|": - return { value: left.value | right.value } - case "^": - return { value: left.value ^ right.value } - case "&": - return { value: left.value & right.value } - - // no default - } - } - - return null - }, - - CallExpression(node, initialScope) { - const calleeNode = node.callee; - const args = getElementValues(node.arguments, initialScope); - - if (args != null) { - if (calleeNode.type === "MemberExpression") { - const object = getStaticValueR(calleeNode.object, initialScope); - const property = calleeNode.computed - ? getStaticValueR(calleeNode.property, initialScope) - : { value: calleeNode.property.name }; - - if (object != null && property != null) { - const receiver = object.value; - const methodName = property.value; - if (callAllowed.has(receiver[methodName])) { - return { value: receiver[methodName](...args) } - } - if (callPassThrough.has(receiver[methodName])) { - return { value: args[0] } - } - } - } else { - const callee = getStaticValueR(calleeNode, initialScope); - if (callee != null) { - const func = callee.value; - if (callAllowed.has(func)) { - return { value: func(...args) } - } - if (callPassThrough.has(func)) { - return { value: args[0] } - } - } - } - } - - return null - }, - - ConditionalExpression(node, initialScope) { - const test = getStaticValueR(node.test, initialScope); - if (test != null) { - return test.value - ? getStaticValueR(node.consequent, initialScope) - : getStaticValueR(node.alternate, initialScope) - } - return null - }, - - ExpressionStatement(node, initialScope) { - return getStaticValueR(node.expression, initialScope) - }, - - Identifier(node, initialScope) { - if (initialScope != null) { - const variable = findVariable(initialScope, node); - - // Built-in globals. - if ( - variable != null && - variable.defs.length === 0 && - builtinNames.has(variable.name) && - variable.name in globalObject - ) { - return { value: globalObject[variable.name] } - } - - // Constants. - if (variable != null && variable.defs.length === 1) { - const def = variable.defs[0]; - if ( - def.parent && - def.parent.kind === "const" && - // TODO(mysticatea): don't support destructuring here. - def.node.id.type === "Identifier" - ) { - return getStaticValueR(def.node.init, initialScope) - } - } - } - return null - }, - - Literal(node) { - //istanbul ignore if : this is implementation-specific behavior. - if ((node.regex != null || node.bigint != null) && node.value == null) { - // It was a RegExp/BigInt literal, but Node.js didn't support it. - return null - } - return { value: node.value } - }, - - LogicalExpression(node, initialScope) { - const left = getStaticValueR(node.left, initialScope); - if (left != null) { - if ( - (node.operator === "||" && Boolean(left.value) === true) || - (node.operator === "&&" && Boolean(left.value) === false) - ) { - return left - } - - const right = getStaticValueR(node.right, initialScope); - if (right != null) { - return right - } - } - - return null - }, - - MemberExpression(node, initialScope) { - const object = getStaticValueR(node.object, initialScope); - const property = node.computed - ? getStaticValueR(node.property, initialScope) - : { value: node.property.name }; - - if ( - object != null && - property != null && - !isGetter(object.value, property.value) - ) { - return { value: object.value[property.value] } - } - return null - }, - - NewExpression(node, initialScope) { - const callee = getStaticValueR(node.callee, initialScope); - const args = getElementValues(node.arguments, initialScope); - - if (callee != null && args != null) { - const Func = callee.value; - if (callAllowed.has(Func)) { - return { value: new Func(...args) } - } - } - - return null - }, - - ObjectExpression(node, initialScope) { - const object = {}; - - for (const propertyNode of node.properties) { - if (propertyNode.type === "Property") { - if (propertyNode.kind !== "init") { - return null - } - const key = propertyNode.computed - ? getStaticValueR(propertyNode.key, initialScope) - : { value: propertyNode.key.name }; - const value = getStaticValueR(propertyNode.value, initialScope); - if (key == null || value == null) { - return null - } - object[key.value] = value.value; - } else if ( - propertyNode.type === "SpreadElement" || - propertyNode.type === "ExperimentalSpreadProperty" - ) { - const argument = getStaticValueR( - propertyNode.argument, - initialScope - ); - if (argument == null) { - return null - } - Object.assign(object, argument.value); - } else { - return null - } - } - - return { value: object } - }, - - SequenceExpression(node, initialScope) { - const last = node.expressions[node.expressions.length - 1]; - return getStaticValueR(last, initialScope) - }, - - TaggedTemplateExpression(node, initialScope) { - const tag = getStaticValueR(node.tag, initialScope); - const expressions = getElementValues( - node.quasi.expressions, - initialScope - ); - - if (tag != null && expressions != null) { - const func = tag.value; - const strings = node.quasi.quasis.map(q => q.value.cooked); - strings.raw = node.quasi.quasis.map(q => q.value.raw); - - if (func === String.raw) { - return { value: func(strings, ...expressions) } - } - } - - return null - }, - - TemplateLiteral(node, initialScope) { - const expressions = getElementValues(node.expressions, initialScope); - if (expressions != null) { - let value = node.quasis[0].value.cooked; - for (let i = 0; i < expressions.length; ++i) { - value += expressions[i]; - value += node.quasis[i + 1].value.cooked; - } - return { value } - } - return null - }, - - UnaryExpression(node, initialScope) { - if (node.operator === "delete") { - // Not supported. - return null - } - if (node.operator === "void") { - return { value: undefined } - } - - const arg = getStaticValueR(node.argument, initialScope); - if (arg != null) { - switch (node.operator) { - case "-": - return { value: -arg.value } - case "+": - return { value: +arg.value } //eslint-disable-line no-implicit-coercion - case "!": - return { value: !arg.value } - case "~": - return { value: ~arg.value } - case "typeof": - return { value: typeof arg.value } - - // no default - } - } - - return null - }, -}); - -/** - * Get the value of a given node if it's a static value. - * @param {Node} node The node to get. - * @param {Scope|undefined} initialScope The scope to start finding variable. - * @returns {{value:any}|null} The static value of the node, or `null`. - */ -function getStaticValueR(node, initialScope) { - if (node != null && Object.hasOwnProperty.call(operations, node.type)) { - return operations[node.type](node, initialScope) - } - return null -} - -/** - * Get the value of a given node if it's a static value. - * @param {Node} node The node to get. - * @param {Scope} [initialScope] The scope to start finding variable. Optional. If this scope was given, this tries to resolve identifier references which are in the given node as much as possible. - * @returns {{value:any}|null} The static value of the node, or `null`. - */ -function getStaticValue(node, initialScope = null) { - try { - return getStaticValueR(node, initialScope) - } catch (_error) { - return null - } -} - -/** - * Get the value of a given node if it's a literal or a template literal. - * @param {Node} node The node to get. - * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is an Identifier node and this scope was given, this checks the variable of the identifier, and returns the value of it if the variable is a constant. - * @returns {string|null} The value of the node, or `null`. - */ -function getStringIfConstant(node, initialScope = null) { - // Handle the literals that the platform doesn't support natively. - if (node && node.type === "Literal" && node.value === null) { - if (node.regex) { - return `/${node.regex.pattern}/${node.regex.flags}` - } - if (node.bigint) { - return node.bigint - } - } - - const evaluated = getStaticValue(node, initialScope); - return evaluated && String(evaluated.value) -} - -/** - * Get the property name from a MemberExpression node or a Property node. - * @param {Node} node The node to get. - * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is a computed property node and this scope was given, this checks the computed property name by the `getStringIfConstant` function with the scope, and returns the value of it. - * @returns {string|null} The property name of the node. - */ -function getPropertyName(node, initialScope) { - switch (node.type) { - case "MemberExpression": - if (node.computed) { - return getStringIfConstant(node.property, initialScope) - } - return node.property.name - - case "Property": - case "MethodDefinition": - if (node.computed) { - return getStringIfConstant(node.key, initialScope) - } - if (node.key.type === "Literal") { - return String(node.key.value) - } - return node.key.name - - // no default - } - - return null -} - -/** - * Get the name and kind of the given function node. - * @param {ASTNode} node - The function node to get. - * @returns {string} The name and kind of the function node. - */ -function getFunctionNameWithKind(node) { - const parent = node.parent; - const tokens = []; - - if (parent.type === "MethodDefinition" && parent.static) { - tokens.push("static"); - } - if (node.async) { - tokens.push("async"); - } - if (node.generator) { - tokens.push("generator"); - } - - if (node.type === "ArrowFunctionExpression") { - tokens.push("arrow", "function"); - } else if ( - parent.type === "Property" || - parent.type === "MethodDefinition" - ) { - if (parent.kind === "constructor") { - return "constructor" - } - if (parent.kind === "get") { - tokens.push("getter"); - } else if (parent.kind === "set") { - tokens.push("setter"); - } else { - tokens.push("method"); - } - } else { - tokens.push("function"); - } - - if (node.id) { - tokens.push(`'${node.id.name}'`); - } else { - const name = getPropertyName(parent); - - if (name) { - tokens.push(`'${name}'`); - } - } - - return tokens.join(" ") -} - -const typeConversionBinaryOps = Object.freeze( - new Set([ - "==", - "!=", - "<", - "<=", - ">", - ">=", - "<<", - ">>", - ">>>", - "+", - "-", - "*", - "/", - "%", - "|", - "^", - "&", - "in", - ]) -); -const typeConversionUnaryOps = Object.freeze(new Set(["-", "+", "!", "~"])); -const visitor = Object.freeze( - Object.assign(Object.create(null), { - $visit(node, options, visitorKeys) { - const { type } = node; - - if (typeof this[type] === "function") { - return this[type](node, options, visitorKeys) - } - - return this.$visitChildren(node, options, visitorKeys) - }, - - $visitChildren(node, options, visitorKeys) { - const { type } = node; - - for (const key of visitorKeys[type] || evk.getKeys(node)) { - const value = node[key]; - - if (Array.isArray(value)) { - for (const element of value) { - if ( - element && - this.$visit(element, options, visitorKeys) - ) { - return true - } - } - } else if (value && this.$visit(value, options, visitorKeys)) { - return true - } - } - - return false - }, - - ArrowFunctionExpression() { - return false - }, - AssignmentExpression() { - return true - }, - AwaitExpression() { - return true - }, - BinaryExpression(node, options, visitorKeys) { - if ( - options.considerImplicitTypeConversion && - typeConversionBinaryOps.has(node.operator) && - (node.left.type !== "Literal" || node.right.type !== "Literal") - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - CallExpression() { - return true - }, - FunctionExpression() { - return false - }, - ImportExpression() { - return true - }, - MemberExpression(node, options, visitorKeys) { - if (options.considerGetters) { - return true - } - if ( - options.considerImplicitTypeConversion && - node.computed && - node.property.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - MethodDefinition(node, options, visitorKeys) { - if ( - options.considerImplicitTypeConversion && - node.computed && - node.key.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - NewExpression() { - return true - }, - Property(node, options, visitorKeys) { - if ( - options.considerImplicitTypeConversion && - node.computed && - node.key.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - UnaryExpression(node, options, visitorKeys) { - if (node.operator === "delete") { - return true - } - if ( - options.considerImplicitTypeConversion && - typeConversionUnaryOps.has(node.operator) && - node.argument.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - UpdateExpression() { - return true - }, - YieldExpression() { - return true - }, - }) -); - -/** - * Check whether a given node has any side effect or not. - * @param {Node} node The node to get. - * @param {SourceCode} sourceCode The source code object. - * @param {object} [options] The option object. - * @param {boolean} [options.considerGetters=false] If `true` then it considers member accesses as the node which has side effects. - * @param {boolean} [options.considerImplicitTypeConversion=false] If `true` then it considers implicit type conversion as the node which has side effects. - * @param {object} [options.visitorKeys=evk.KEYS] The keys to traverse nodes. Use `context.getSourceCode().visitorKeys`. - * @returns {boolean} `true` if the node has a certain side effect. - */ -function hasSideEffect( - node, - sourceCode, - { considerGetters = false, considerImplicitTypeConversion = false } = {} -) { - return visitor.$visit( - node, - { considerGetters, considerImplicitTypeConversion }, - sourceCode.visitorKeys || evk.KEYS - ) -} - -/** - * Get the left parenthesis of the parent node syntax if it exists. - * E.g., `if (a) {}` then the `(`. - * @param {Node} node The AST node to check. - * @param {SourceCode} sourceCode The source code object to get tokens. - * @returns {Token|null} The left parenthesis of the parent node syntax - */ -function getParentSyntaxParen(node, sourceCode) { - const parent = node.parent; - - switch (parent.type) { - case "CallExpression": - case "NewExpression": - if (parent.arguments.length === 1 && parent.arguments[0] === node) { - return sourceCode.getTokenAfter( - parent.callee, - isOpeningParenToken - ) - } - return null - - case "DoWhileStatement": - if (parent.test === node) { - return sourceCode.getTokenAfter( - parent.body, - isOpeningParenToken - ) - } - return null - - case "IfStatement": - case "WhileStatement": - if (parent.test === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - case "ImportExpression": - if (parent.source === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - case "SwitchStatement": - if (parent.discriminant === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - case "WithStatement": - if (parent.object === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - default: - return null - } -} - -/** - * Check whether a given node is parenthesized or not. - * @param {number} times The number of parantheses. - * @param {Node} node The AST node to check. - * @param {SourceCode} sourceCode The source code object to get tokens. - * @returns {boolean} `true` if the node is parenthesized the given times. - */ -/** - * Check whether a given node is parenthesized or not. - * @param {Node} node The AST node to check. - * @param {SourceCode} sourceCode The source code object to get tokens. - * @returns {boolean} `true` if the node is parenthesized. - */ -function isParenthesized( - timesOrNode, - nodeOrSourceCode, - optionalSourceCode -) { - let times, node, sourceCode, maybeLeftParen, maybeRightParen; - if (typeof timesOrNode === "number") { - times = timesOrNode | 0; - node = nodeOrSourceCode; - sourceCode = optionalSourceCode; - if (!(times >= 1)) { - throw new TypeError("'times' should be a positive integer.") - } - } else { - times = 1; - node = timesOrNode; - sourceCode = nodeOrSourceCode; - } - - if (node == null) { - return false - } - - maybeLeftParen = maybeRightParen = node; - do { - maybeLeftParen = sourceCode.getTokenBefore(maybeLeftParen); - maybeRightParen = sourceCode.getTokenAfter(maybeRightParen); - } while ( - maybeLeftParen != null && - maybeRightParen != null && - isOpeningParenToken(maybeLeftParen) && - isClosingParenToken(maybeRightParen) && - // Avoid false positive such as `if (a) {}` - maybeLeftParen !== getParentSyntaxParen(node, sourceCode) && - --times > 0 - ) - - return times === 0 -} - -/** - * @author Toru Nagashima - * See LICENSE file in root directory for full license. - */ - -const placeholder = /\$(?:[$&`']|[1-9][0-9]?)/gu; - -/** @type {WeakMap} */ -const internal = new WeakMap(); - -/** - * Check whether a given character is escaped or not. - * @param {string} str The string to check. - * @param {number} index The location of the character to check. - * @returns {boolean} `true` if the character is escaped. - */ -function isEscaped(str, index) { - let escaped = false; - for (let i = index - 1; i >= 0 && str.charCodeAt(i) === 0x5c; --i) { - escaped = !escaped; - } - return escaped -} - -/** - * Replace a given string by a given matcher. - * @param {PatternMatcher} matcher The pattern matcher. - * @param {string} str The string to be replaced. - * @param {string} replacement The new substring to replace each matched part. - * @returns {string} The replaced string. - */ -function replaceS(matcher, str, replacement) { - const chunks = []; - let index = 0; - - /** @type {RegExpExecArray} */ - let match = null; - - /** - * @param {string} key The placeholder. - * @returns {string} The replaced string. - */ - function replacer(key) { - switch (key) { - case "$$": - return "$" - case "$&": - return match[0] - case "$`": - return str.slice(0, match.index) - case "$'": - return str.slice(match.index + match[0].length) - default: { - const i = key.slice(1); - if (i in match) { - return match[i] - } - return key - } - } - } - - for (match of matcher.execAll(str)) { - chunks.push(str.slice(index, match.index)); - chunks.push(replacement.replace(placeholder, replacer)); - index = match.index + match[0].length; - } - chunks.push(str.slice(index)); - - return chunks.join("") -} - -/** - * Replace a given string by a given matcher. - * @param {PatternMatcher} matcher The pattern matcher. - * @param {string} str The string to be replaced. - * @param {(...strs[])=>string} replace The function to replace each matched part. - * @returns {string} The replaced string. - */ -function replaceF(matcher, str, replace) { - const chunks = []; - let index = 0; - - for (const match of matcher.execAll(str)) { - chunks.push(str.slice(index, match.index)); - chunks.push(String(replace(...match, match.index, match.input))); - index = match.index + match[0].length; - } - chunks.push(str.slice(index)); - - return chunks.join("") -} - -/** - * The class to find patterns as considering escape sequences. - */ -class PatternMatcher { - /** - * Initialize this matcher. - * @param {RegExp} pattern The pattern to match. - * @param {{escaped:boolean}} options The options. - */ - constructor(pattern, { escaped = false } = {}) { - if (!(pattern instanceof RegExp)) { - throw new TypeError("'pattern' should be a RegExp instance.") - } - if (!pattern.flags.includes("g")) { - throw new Error("'pattern' should contains 'g' flag.") - } - - internal.set(this, { - pattern: new RegExp(pattern.source, pattern.flags), - escaped: Boolean(escaped), - }); - } - - /** - * Find the pattern in a given string. - * @param {string} str The string to find. - * @returns {IterableIterator} The iterator which iterate the matched information. - */ - *execAll(str) { - const { pattern, escaped } = internal.get(this); - let match = null; - let lastIndex = 0; - - pattern.lastIndex = 0; - while ((match = pattern.exec(str)) != null) { - if (escaped || !isEscaped(str, match.index)) { - lastIndex = pattern.lastIndex; - yield match; - pattern.lastIndex = lastIndex; - } - } - } - - /** - * Check whether the pattern is found in a given string. - * @param {string} str The string to check. - * @returns {boolean} `true` if the pattern was found in the string. - */ - test(str) { - const it = this.execAll(str); - const ret = it.next(); - return !ret.done - } - - /** - * Replace a given string. - * @param {string} str The string to be replaced. - * @param {(string|((...strs:string[])=>string))} replacer The string or function to replace. This is the same as the 2nd argument of `String.prototype.replace`. - * @returns {string} The replaced string. - */ - [Symbol.replace](str, replacer) { - return typeof replacer === "function" - ? replaceF(this, String(str), replacer) - : replaceS(this, String(str), String(replacer)) - } -} - -const IMPORT_TYPE = /^(?:Import|Export(?:All|Default|Named))Declaration$/u; -const has = Function.call.bind(Object.hasOwnProperty); - -const READ = Symbol("read"); -const CALL = Symbol("call"); -const CONSTRUCT = Symbol("construct"); -const ESM = Symbol("esm"); - -const requireCall = { require: { [CALL]: true } }; - -/** - * Check whether a given variable is modified or not. - * @param {Variable} variable The variable to check. - * @returns {boolean} `true` if the variable is modified. - */ -function isModifiedGlobal(variable) { - return ( - variable == null || - variable.defs.length !== 0 || - variable.references.some(r => r.isWrite()) - ) -} - -/** - * Check if the value of a given node is passed through to the parent syntax as-is. - * For example, `a` and `b` in (`a || b` and `c ? a : b`) are passed through. - * @param {Node} node A node to check. - * @returns {boolean} `true` if the node is passed through. - */ -function isPassThrough(node) { - const parent = node.parent; - - switch (parent && parent.type) { - case "ConditionalExpression": - return parent.consequent === node || parent.alternate === node - case "LogicalExpression": - return true - case "SequenceExpression": - return parent.expressions[parent.expressions.length - 1] === node - - default: - return false - } -} - -/** - * The reference tracker. - */ -class ReferenceTracker { - /** - * Initialize this tracker. - * @param {Scope} globalScope The global scope. - * @param {object} [options] The options. - * @param {"legacy"|"strict"} [options.mode="strict"] The mode to determine the ImportDeclaration's behavior for CJS modules. - * @param {string[]} [options.globalObjectNames=["global","self","window"]] The variable names for Global Object. - */ - constructor( - globalScope, - { - mode = "strict", - globalObjectNames = ["global", "self", "window"], - } = {} - ) { - this.variableStack = []; - this.globalScope = globalScope; - this.mode = mode; - this.globalObjectNames = globalObjectNames.slice(0); - } - - /** - * Iterate the references of global variables. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *iterateGlobalReferences(traceMap) { - for (const key of Object.keys(traceMap)) { - const nextTraceMap = traceMap[key]; - const path = [key]; - const variable = this.globalScope.set.get(key); - - if (isModifiedGlobal(variable)) { - continue - } - - yield* this._iterateVariableReferences( - variable, - path, - nextTraceMap, - true - ); - } - - for (const key of this.globalObjectNames) { - const path = []; - const variable = this.globalScope.set.get(key); - - if (isModifiedGlobal(variable)) { - continue - } - - yield* this._iterateVariableReferences( - variable, - path, - traceMap, - false - ); - } - } - - /** - * Iterate the references of CommonJS modules. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *iterateCjsReferences(traceMap) { - for (const { node } of this.iterateGlobalReferences(requireCall)) { - const key = getStringIfConstant(node.arguments[0]); - if (key == null || !has(traceMap, key)) { - continue - } - - const nextTraceMap = traceMap[key]; - const path = [key]; - - if (nextTraceMap[READ]) { - yield { - node, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iteratePropertyReferences(node, path, nextTraceMap); - } - } - - /** - * Iterate the references of ES modules. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *iterateEsmReferences(traceMap) { - const programNode = this.globalScope.block; - - for (const node of programNode.body) { - if (!IMPORT_TYPE.test(node.type) || node.source == null) { - continue - } - const moduleId = node.source.value; - - if (!has(traceMap, moduleId)) { - continue - } - const nextTraceMap = traceMap[moduleId]; - const path = [moduleId]; - - if (nextTraceMap[READ]) { - yield { node, path, type: READ, info: nextTraceMap[READ] }; - } - - if (node.type === "ExportAllDeclaration") { - for (const key of Object.keys(nextTraceMap)) { - const exportTraceMap = nextTraceMap[key]; - if (exportTraceMap[READ]) { - yield { - node, - path: path.concat(key), - type: READ, - info: exportTraceMap[READ], - }; - } - } - } else { - for (const specifier of node.specifiers) { - const esm = has(nextTraceMap, ESM); - const it = this._iterateImportReferences( - specifier, - path, - esm - ? nextTraceMap - : this.mode === "legacy" - ? Object.assign( - { default: nextTraceMap }, - nextTraceMap - ) - : { default: nextTraceMap } - ); - - if (esm) { - yield* it; - } else { - for (const report of it) { - report.path = report.path.filter(exceptDefault); - if ( - report.path.length >= 2 || - report.type !== READ - ) { - yield report; - } - } - } - } - } - } - } - - /** - * Iterate the references for a given variable. - * @param {Variable} variable The variable to iterate that references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @param {boolean} shouldReport = The flag to report those references. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *_iterateVariableReferences(variable, path, traceMap, shouldReport) { - if (this.variableStack.includes(variable)) { - return - } - this.variableStack.push(variable); - try { - for (const reference of variable.references) { - if (!reference.isRead()) { - continue - } - const node = reference.identifier; - - if (shouldReport && traceMap[READ]) { - yield { node, path, type: READ, info: traceMap[READ] }; - } - yield* this._iteratePropertyReferences(node, path, traceMap); - } - } finally { - this.variableStack.pop(); - } - } - - /** - * Iterate the references for a given AST node. - * @param rootNode The AST node to iterate references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - //eslint-disable-next-line complexity - *_iteratePropertyReferences(rootNode, path, traceMap) { - let node = rootNode; - while (isPassThrough(node)) { - node = node.parent; - } - - const parent = node.parent; - if (parent.type === "MemberExpression") { - if (parent.object === node) { - const key = getPropertyName(parent); - if (key == null || !has(traceMap, key)) { - return - } - - path = path.concat(key); //eslint-disable-line no-param-reassign - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: parent, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iteratePropertyReferences( - parent, - path, - nextTraceMap - ); - } - return - } - if (parent.type === "CallExpression") { - if (parent.callee === node && traceMap[CALL]) { - yield { node: parent, path, type: CALL, info: traceMap[CALL] }; - } - return - } - if (parent.type === "NewExpression") { - if (parent.callee === node && traceMap[CONSTRUCT]) { - yield { - node: parent, - path, - type: CONSTRUCT, - info: traceMap[CONSTRUCT], - }; - } - return - } - if (parent.type === "AssignmentExpression") { - if (parent.right === node) { - yield* this._iterateLhsReferences(parent.left, path, traceMap); - yield* this._iteratePropertyReferences(parent, path, traceMap); - } - return - } - if (parent.type === "AssignmentPattern") { - if (parent.right === node) { - yield* this._iterateLhsReferences(parent.left, path, traceMap); - } - return - } - if (parent.type === "VariableDeclarator") { - if (parent.init === node) { - yield* this._iterateLhsReferences(parent.id, path, traceMap); - } - } - } - - /** - * Iterate the references for a given Pattern node. - * @param {Node} patternNode The Pattern node to iterate references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *_iterateLhsReferences(patternNode, path, traceMap) { - if (patternNode.type === "Identifier") { - const variable = findVariable(this.globalScope, patternNode); - if (variable != null) { - yield* this._iterateVariableReferences( - variable, - path, - traceMap, - false - ); - } - return - } - if (patternNode.type === "ObjectPattern") { - for (const property of patternNode.properties) { - const key = getPropertyName(property); - - if (key == null || !has(traceMap, key)) { - continue - } - - const nextPath = path.concat(key); - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: property, - path: nextPath, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iterateLhsReferences( - property.value, - nextPath, - nextTraceMap - ); - } - return - } - if (patternNode.type === "AssignmentPattern") { - yield* this._iterateLhsReferences(patternNode.left, path, traceMap); - } - } - - /** - * Iterate the references for a given ModuleSpecifier node. - * @param {Node} specifierNode The ModuleSpecifier node to iterate references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *_iterateImportReferences(specifierNode, path, traceMap) { - const type = specifierNode.type; - - if (type === "ImportSpecifier" || type === "ImportDefaultSpecifier") { - const key = - type === "ImportDefaultSpecifier" - ? "default" - : specifierNode.imported.name; - if (!has(traceMap, key)) { - return - } - - path = path.concat(key); //eslint-disable-line no-param-reassign - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: specifierNode, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iterateVariableReferences( - findVariable(this.globalScope, specifierNode.local), - path, - nextTraceMap, - false - ); - - return - } - - if (type === "ImportNamespaceSpecifier") { - yield* this._iterateVariableReferences( - findVariable(this.globalScope, specifierNode.local), - path, - traceMap, - false - ); - return - } - - if (type === "ExportSpecifier") { - const key = specifierNode.local.name; - if (!has(traceMap, key)) { - return - } - - path = path.concat(key); //eslint-disable-line no-param-reassign - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: specifierNode, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - } - } -} - -ReferenceTracker.READ = READ; -ReferenceTracker.CALL = CALL; -ReferenceTracker.CONSTRUCT = CONSTRUCT; -ReferenceTracker.ESM = ESM; - -/** - * This is a predicate function for Array#filter. - * @param {string} name A name part. - * @param {number} index The index of the name. - * @returns {boolean} `false` if it's default. - */ -function exceptDefault(name, index) { - return !(index === 1 && name === "default") -} - -var index = { - CALL, - CONSTRUCT, - ESM, - findVariable, - getFunctionHeadLocation, - getFunctionNameWithKind, - getInnermostScope, - getPropertyName, - getStaticValue, - getStringIfConstant, - hasSideEffect, - isArrowToken, - isClosingBraceToken, - isClosingBracketToken, - isClosingParenToken, - isColonToken, - isCommaToken, - isCommentToken, - isNotArrowToken, - isNotClosingBraceToken, - isNotClosingBracketToken, - isNotClosingParenToken, - isNotColonToken, - isNotCommaToken, - isNotCommentToken, - isNotOpeningBraceToken, - isNotOpeningBracketToken, - isNotOpeningParenToken, - isNotSemicolonToken, - isOpeningBraceToken, - isOpeningBracketToken, - isOpeningParenToken, - isParenthesized, - isSemicolonToken, - PatternMatcher, - READ, - ReferenceTracker, -}; - -exports.CALL = CALL; -exports.CONSTRUCT = CONSTRUCT; -exports.ESM = ESM; -exports.PatternMatcher = PatternMatcher; -exports.READ = READ; -exports.ReferenceTracker = ReferenceTracker; -exports.default = index; -exports.findVariable = findVariable; -exports.getFunctionHeadLocation = getFunctionHeadLocation; -exports.getFunctionNameWithKind = getFunctionNameWithKind; -exports.getInnermostScope = getInnermostScope; -exports.getPropertyName = getPropertyName; -exports.getStaticValue = getStaticValue; -exports.getStringIfConstant = getStringIfConstant; -exports.hasSideEffect = hasSideEffect; -exports.isArrowToken = isArrowToken; -exports.isClosingBraceToken = isClosingBraceToken; -exports.isClosingBracketToken = isClosingBracketToken; -exports.isClosingParenToken = isClosingParenToken; -exports.isColonToken = isColonToken; -exports.isCommaToken = isCommaToken; -exports.isCommentToken = isCommentToken; -exports.isNotArrowToken = isNotArrowToken; -exports.isNotClosingBraceToken = isNotClosingBraceToken; -exports.isNotClosingBracketToken = isNotClosingBracketToken; -exports.isNotClosingParenToken = isNotClosingParenToken; -exports.isNotColonToken = isNotColonToken; -exports.isNotCommaToken = isNotCommaToken; -exports.isNotCommentToken = isNotCommentToken; -exports.isNotOpeningBraceToken = isNotOpeningBraceToken; -exports.isNotOpeningBracketToken = isNotOpeningBracketToken; -exports.isNotOpeningParenToken = isNotOpeningParenToken; -exports.isNotSemicolonToken = isNotSemicolonToken; -exports.isOpeningBraceToken = isOpeningBraceToken; -exports.isOpeningBracketToken = isOpeningBracketToken; -exports.isOpeningParenToken = isOpeningParenToken; -exports.isParenthesized = isParenthesized; -exports.isSemicolonToken = isSemicolonToken; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.js.map b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.js.map deleted file mode 100644 index de4dd42c..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["src/get-innermost-scope.js","src/find-variable.js","src/token-predicate.js","src/get-function-head-location.js","src/get-static-value.js","src/get-string-if-constant.js","src/get-property-name.js","src/get-function-name-with-kind.js","src/has-side-effect.js","src/is-parenthesized.js","src/pattern-matcher.js","src/reference-tracker.js","src/index.js"],"sourcesContent":["/**\n * Get the innermost scope which contains a given location.\n * @param {Scope} initialScope The initial scope to search.\n * @param {Node} node The location to search.\n * @returns {Scope} The innermost scope.\n */\nexport function getInnermostScope(initialScope, node) {\n const location = node.range[0]\n\n let scope = initialScope\n let found = false\n do {\n found = false\n for (const childScope of scope.childScopes) {\n const range = childScope.block.range\n\n if (range[0] <= location && location < range[1]) {\n scope = childScope\n found = true\n break\n }\n }\n } while (found)\n\n return scope\n}\n","import { getInnermostScope } from \"./get-innermost-scope\"\n\n/**\n * Find the variable of a given name.\n * @param {Scope} initialScope The scope to start finding.\n * @param {string|Node} nameOrNode The variable name to find. If this is a Node object then it should be an Identifier node.\n * @returns {Variable|null} The found variable or null.\n */\nexport function findVariable(initialScope, nameOrNode) {\n let name = \"\"\n let scope = initialScope\n\n if (typeof nameOrNode === \"string\") {\n name = nameOrNode\n } else {\n name = nameOrNode.name\n scope = getInnermostScope(scope, nameOrNode)\n }\n\n while (scope != null) {\n const variable = scope.set.get(name)\n if (variable != null) {\n return variable\n }\n scope = scope.upper\n }\n\n return null\n}\n","/**\n * Negate the result of `this` calling.\n * @param {Token} token The token to check.\n * @returns {boolean} `true` if the result of `this(token)` is `false`.\n */\nfunction negate0(token) {\n return !this(token) //eslint-disable-line no-invalid-this\n}\n\n/**\n * Creates the negate function of the given function.\n * @param {function(Token):boolean} f - The function to negate.\n * @returns {function(Token):boolean} Negated function.\n */\nfunction negate(f) {\n return negate0.bind(f)\n}\n\n/**\n * Checks if the given token is an arrow token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an arrow token.\n */\nexport function isArrowToken(token) {\n return token.value === \"=>\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a comma token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a comma token.\n */\nexport function isCommaToken(token) {\n return token.value === \",\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a semicolon token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a semicolon token.\n */\nexport function isSemicolonToken(token) {\n return token.value === \";\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a colon token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a colon token.\n */\nexport function isColonToken(token) {\n return token.value === \":\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is an opening parenthesis token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an opening parenthesis token.\n */\nexport function isOpeningParenToken(token) {\n return token.value === \"(\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a closing parenthesis token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a closing parenthesis token.\n */\nexport function isClosingParenToken(token) {\n return token.value === \")\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is an opening square bracket token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an opening square bracket token.\n */\nexport function isOpeningBracketToken(token) {\n return token.value === \"[\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a closing square bracket token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a closing square bracket token.\n */\nexport function isClosingBracketToken(token) {\n return token.value === \"]\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is an opening brace token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an opening brace token.\n */\nexport function isOpeningBraceToken(token) {\n return token.value === \"{\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a closing brace token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a closing brace token.\n */\nexport function isClosingBraceToken(token) {\n return token.value === \"}\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a comment token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a comment token.\n */\nexport function isCommentToken(token) {\n return (\n token.type === \"Line\" ||\n token.type === \"Block\" ||\n token.type === \"Shebang\"\n )\n}\n\nexport const isNotArrowToken = negate(isArrowToken)\nexport const isNotCommaToken = negate(isCommaToken)\nexport const isNotSemicolonToken = negate(isSemicolonToken)\nexport const isNotColonToken = negate(isColonToken)\nexport const isNotOpeningParenToken = negate(isOpeningParenToken)\nexport const isNotClosingParenToken = negate(isClosingParenToken)\nexport const isNotOpeningBracketToken = negate(isOpeningBracketToken)\nexport const isNotClosingBracketToken = negate(isClosingBracketToken)\nexport const isNotOpeningBraceToken = negate(isOpeningBraceToken)\nexport const isNotClosingBraceToken = negate(isClosingBraceToken)\nexport const isNotCommentToken = negate(isCommentToken)\n","import { isArrowToken, isOpeningParenToken } from \"./token-predicate\"\n\n/**\n * Get the `(` token of the given function node.\n * @param {Node} node - The function node to get.\n * @param {SourceCode} sourceCode - The source code object to get tokens.\n * @returns {Token} `(` token.\n */\nfunction getOpeningParenOfParams(node, sourceCode) {\n return node.id\n ? sourceCode.getTokenAfter(node.id, isOpeningParenToken)\n : sourceCode.getFirstToken(node, isOpeningParenToken)\n}\n\n/**\n * Get the location of the given function node for reporting.\n * @param {Node} node - The function node to get.\n * @param {SourceCode} sourceCode - The source code object to get tokens.\n * @returns {string} The location of the function node for reporting.\n */\nexport function getFunctionHeadLocation(node, sourceCode) {\n const parent = node.parent\n let start = null\n let end = null\n\n if (node.type === \"ArrowFunctionExpression\") {\n const arrowToken = sourceCode.getTokenBefore(node.body, isArrowToken)\n\n start = arrowToken.loc.start\n end = arrowToken.loc.end\n } else if (\n parent.type === \"Property\" ||\n parent.type === \"MethodDefinition\"\n ) {\n start = parent.loc.start\n end = getOpeningParenOfParams(node, sourceCode).loc.start\n } else {\n start = node.loc.start\n end = getOpeningParenOfParams(node, sourceCode).loc.start\n }\n\n return {\n start: Object.assign({}, start),\n end: Object.assign({}, end),\n }\n}\n","/* globals BigInt, globalThis, global, self, window */\n\nimport { findVariable } from \"./find-variable\"\n\nconst globalObject =\n typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {}\n\nconst builtinNames = Object.freeze(\n new Set([\n \"Array\",\n \"ArrayBuffer\",\n \"BigInt\",\n \"BigInt64Array\",\n \"BigUint64Array\",\n \"Boolean\",\n \"DataView\",\n \"Date\",\n \"decodeURI\",\n \"decodeURIComponent\",\n \"encodeURI\",\n \"encodeURIComponent\",\n \"escape\",\n \"Float32Array\",\n \"Float64Array\",\n \"Function\",\n \"Infinity\",\n \"Int16Array\",\n \"Int32Array\",\n \"Int8Array\",\n \"isFinite\",\n \"isNaN\",\n \"isPrototypeOf\",\n \"JSON\",\n \"Map\",\n \"Math\",\n \"NaN\",\n \"Number\",\n \"Object\",\n \"parseFloat\",\n \"parseInt\",\n \"Promise\",\n \"Proxy\",\n \"Reflect\",\n \"RegExp\",\n \"Set\",\n \"String\",\n \"Symbol\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"undefined\",\n \"unescape\",\n \"WeakMap\",\n \"WeakSet\",\n ])\n)\nconst callAllowed = new Set(\n [\n Array.isArray,\n typeof BigInt === \"function\" ? BigInt : undefined,\n Boolean,\n Date,\n Date.parse,\n decodeURI,\n decodeURIComponent,\n encodeURI,\n encodeURIComponent,\n escape,\n isFinite,\n isNaN,\n isPrototypeOf,\n ...Object.getOwnPropertyNames(Math)\n .map(k => Math[k])\n .filter(f => typeof f === \"function\"),\n Number,\n Number.isFinite,\n Number.isNaN,\n Number.parseFloat,\n Number.parseInt,\n Object,\n Object.entries,\n Object.is,\n Object.isExtensible,\n Object.isFrozen,\n Object.isSealed,\n Object.keys,\n Object.values,\n parseFloat,\n parseInt,\n RegExp,\n String,\n String.fromCharCode,\n String.fromCodePoint,\n String.raw,\n Symbol,\n Symbol.for,\n Symbol.keyFor,\n unescape,\n ].filter(f => typeof f === \"function\")\n)\nconst callPassThrough = new Set([\n Object.freeze,\n Object.preventExtensions,\n Object.seal,\n])\n\n/**\n * Get the property descriptor.\n * @param {object} object The object to get.\n * @param {string|number|symbol} name The property name to get.\n */\nfunction getPropertyDescriptor(object, name) {\n let x = object\n while ((typeof x === \"object\" || typeof x === \"function\") && x !== null) {\n const d = Object.getOwnPropertyDescriptor(x, name)\n if (d) {\n return d\n }\n x = Object.getPrototypeOf(x)\n }\n return null\n}\n\n/**\n * Check if a property is getter or not.\n * @param {object} object The object to check.\n * @param {string|number|symbol} name The property name to check.\n */\nfunction isGetter(object, name) {\n const d = getPropertyDescriptor(object, name)\n return d != null && d.get != null\n}\n\n/**\n * Get the element values of a given node list.\n * @param {Node[]} nodeList The node list to get values.\n * @param {Scope|undefined} initialScope The initial scope to find variables.\n * @returns {any[]|null} The value list if all nodes are constant. Otherwise, null.\n */\nfunction getElementValues(nodeList, initialScope) {\n const valueList = []\n\n for (let i = 0; i < nodeList.length; ++i) {\n const elementNode = nodeList[i]\n\n if (elementNode == null) {\n valueList.length = i + 1\n } else if (elementNode.type === \"SpreadElement\") {\n const argument = getStaticValueR(elementNode.argument, initialScope)\n if (argument == null) {\n return null\n }\n valueList.push(...argument.value)\n } else {\n const element = getStaticValueR(elementNode, initialScope)\n if (element == null) {\n return null\n }\n valueList.push(element.value)\n }\n }\n\n return valueList\n}\n\nconst operations = Object.freeze({\n ArrayExpression(node, initialScope) {\n const elements = getElementValues(node.elements, initialScope)\n return elements != null ? { value: elements } : null\n },\n\n AssignmentExpression(node, initialScope) {\n if (node.operator === \"=\") {\n return getStaticValueR(node.right, initialScope)\n }\n return null\n },\n\n //eslint-disable-next-line complexity\n BinaryExpression(node, initialScope) {\n if (node.operator === \"in\" || node.operator === \"instanceof\") {\n // Not supported.\n return null\n }\n\n const left = getStaticValueR(node.left, initialScope)\n const right = getStaticValueR(node.right, initialScope)\n if (left != null && right != null) {\n switch (node.operator) {\n case \"==\":\n return { value: left.value == right.value } //eslint-disable-line eqeqeq\n case \"!=\":\n return { value: left.value != right.value } //eslint-disable-line eqeqeq\n case \"===\":\n return { value: left.value === right.value }\n case \"!==\":\n return { value: left.value !== right.value }\n case \"<\":\n return { value: left.value < right.value }\n case \"<=\":\n return { value: left.value <= right.value }\n case \">\":\n return { value: left.value > right.value }\n case \">=\":\n return { value: left.value >= right.value }\n case \"<<\":\n return { value: left.value << right.value }\n case \">>\":\n return { value: left.value >> right.value }\n case \">>>\":\n return { value: left.value >>> right.value }\n case \"+\":\n return { value: left.value + right.value }\n case \"-\":\n return { value: left.value - right.value }\n case \"*\":\n return { value: left.value * right.value }\n case \"/\":\n return { value: left.value / right.value }\n case \"%\":\n return { value: left.value % right.value }\n case \"**\":\n return { value: Math.pow(left.value, right.value) }\n case \"|\":\n return { value: left.value | right.value }\n case \"^\":\n return { value: left.value ^ right.value }\n case \"&\":\n return { value: left.value & right.value }\n\n // no default\n }\n }\n\n return null\n },\n\n CallExpression(node, initialScope) {\n const calleeNode = node.callee\n const args = getElementValues(node.arguments, initialScope)\n\n if (args != null) {\n if (calleeNode.type === \"MemberExpression\") {\n const object = getStaticValueR(calleeNode.object, initialScope)\n const property = calleeNode.computed\n ? getStaticValueR(calleeNode.property, initialScope)\n : { value: calleeNode.property.name }\n\n if (object != null && property != null) {\n const receiver = object.value\n const methodName = property.value\n if (callAllowed.has(receiver[methodName])) {\n return { value: receiver[methodName](...args) }\n }\n if (callPassThrough.has(receiver[methodName])) {\n return { value: args[0] }\n }\n }\n } else {\n const callee = getStaticValueR(calleeNode, initialScope)\n if (callee != null) {\n const func = callee.value\n if (callAllowed.has(func)) {\n return { value: func(...args) }\n }\n if (callPassThrough.has(func)) {\n return { value: args[0] }\n }\n }\n }\n }\n\n return null\n },\n\n ConditionalExpression(node, initialScope) {\n const test = getStaticValueR(node.test, initialScope)\n if (test != null) {\n return test.value\n ? getStaticValueR(node.consequent, initialScope)\n : getStaticValueR(node.alternate, initialScope)\n }\n return null\n },\n\n ExpressionStatement(node, initialScope) {\n return getStaticValueR(node.expression, initialScope)\n },\n\n Identifier(node, initialScope) {\n if (initialScope != null) {\n const variable = findVariable(initialScope, node)\n\n // Built-in globals.\n if (\n variable != null &&\n variable.defs.length === 0 &&\n builtinNames.has(variable.name) &&\n variable.name in globalObject\n ) {\n return { value: globalObject[variable.name] }\n }\n\n // Constants.\n if (variable != null && variable.defs.length === 1) {\n const def = variable.defs[0]\n if (\n def.parent &&\n def.parent.kind === \"const\" &&\n // TODO(mysticatea): don't support destructuring here.\n def.node.id.type === \"Identifier\"\n ) {\n return getStaticValueR(def.node.init, initialScope)\n }\n }\n }\n return null\n },\n\n Literal(node) {\n //istanbul ignore if : this is implementation-specific behavior.\n if ((node.regex != null || node.bigint != null) && node.value == null) {\n // It was a RegExp/BigInt literal, but Node.js didn't support it.\n return null\n }\n return { value: node.value }\n },\n\n LogicalExpression(node, initialScope) {\n const left = getStaticValueR(node.left, initialScope)\n if (left != null) {\n if (\n (node.operator === \"||\" && Boolean(left.value) === true) ||\n (node.operator === \"&&\" && Boolean(left.value) === false)\n ) {\n return left\n }\n\n const right = getStaticValueR(node.right, initialScope)\n if (right != null) {\n return right\n }\n }\n\n return null\n },\n\n MemberExpression(node, initialScope) {\n const object = getStaticValueR(node.object, initialScope)\n const property = node.computed\n ? getStaticValueR(node.property, initialScope)\n : { value: node.property.name }\n\n if (\n object != null &&\n property != null &&\n !isGetter(object.value, property.value)\n ) {\n return { value: object.value[property.value] }\n }\n return null\n },\n\n NewExpression(node, initialScope) {\n const callee = getStaticValueR(node.callee, initialScope)\n const args = getElementValues(node.arguments, initialScope)\n\n if (callee != null && args != null) {\n const Func = callee.value\n if (callAllowed.has(Func)) {\n return { value: new Func(...args) }\n }\n }\n\n return null\n },\n\n ObjectExpression(node, initialScope) {\n const object = {}\n\n for (const propertyNode of node.properties) {\n if (propertyNode.type === \"Property\") {\n if (propertyNode.kind !== \"init\") {\n return null\n }\n const key = propertyNode.computed\n ? getStaticValueR(propertyNode.key, initialScope)\n : { value: propertyNode.key.name }\n const value = getStaticValueR(propertyNode.value, initialScope)\n if (key == null || value == null) {\n return null\n }\n object[key.value] = value.value\n } else if (\n propertyNode.type === \"SpreadElement\" ||\n propertyNode.type === \"ExperimentalSpreadProperty\"\n ) {\n const argument = getStaticValueR(\n propertyNode.argument,\n initialScope\n )\n if (argument == null) {\n return null\n }\n Object.assign(object, argument.value)\n } else {\n return null\n }\n }\n\n return { value: object }\n },\n\n SequenceExpression(node, initialScope) {\n const last = node.expressions[node.expressions.length - 1]\n return getStaticValueR(last, initialScope)\n },\n\n TaggedTemplateExpression(node, initialScope) {\n const tag = getStaticValueR(node.tag, initialScope)\n const expressions = getElementValues(\n node.quasi.expressions,\n initialScope\n )\n\n if (tag != null && expressions != null) {\n const func = tag.value\n const strings = node.quasi.quasis.map(q => q.value.cooked)\n strings.raw = node.quasi.quasis.map(q => q.value.raw)\n\n if (func === String.raw) {\n return { value: func(strings, ...expressions) }\n }\n }\n\n return null\n },\n\n TemplateLiteral(node, initialScope) {\n const expressions = getElementValues(node.expressions, initialScope)\n if (expressions != null) {\n let value = node.quasis[0].value.cooked\n for (let i = 0; i < expressions.length; ++i) {\n value += expressions[i]\n value += node.quasis[i + 1].value.cooked\n }\n return { value }\n }\n return null\n },\n\n UnaryExpression(node, initialScope) {\n if (node.operator === \"delete\") {\n // Not supported.\n return null\n }\n if (node.operator === \"void\") {\n return { value: undefined }\n }\n\n const arg = getStaticValueR(node.argument, initialScope)\n if (arg != null) {\n switch (node.operator) {\n case \"-\":\n return { value: -arg.value }\n case \"+\":\n return { value: +arg.value } //eslint-disable-line no-implicit-coercion\n case \"!\":\n return { value: !arg.value }\n case \"~\":\n return { value: ~arg.value }\n case \"typeof\":\n return { value: typeof arg.value }\n\n // no default\n }\n }\n\n return null\n },\n})\n\n/**\n * Get the value of a given node if it's a static value.\n * @param {Node} node The node to get.\n * @param {Scope|undefined} initialScope The scope to start finding variable.\n * @returns {{value:any}|null} The static value of the node, or `null`.\n */\nfunction getStaticValueR(node, initialScope) {\n if (node != null && Object.hasOwnProperty.call(operations, node.type)) {\n return operations[node.type](node, initialScope)\n }\n return null\n}\n\n/**\n * Get the value of a given node if it's a static value.\n * @param {Node} node The node to get.\n * @param {Scope} [initialScope] The scope to start finding variable. Optional. If this scope was given, this tries to resolve identifier references which are in the given node as much as possible.\n * @returns {{value:any}|null} The static value of the node, or `null`.\n */\nexport function getStaticValue(node, initialScope = null) {\n try {\n return getStaticValueR(node, initialScope)\n } catch (_error) {\n return null\n }\n}\n","import { getStaticValue } from \"./get-static-value\"\n\n/**\n * Get the value of a given node if it's a literal or a template literal.\n * @param {Node} node The node to get.\n * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is an Identifier node and this scope was given, this checks the variable of the identifier, and returns the value of it if the variable is a constant.\n * @returns {string|null} The value of the node, or `null`.\n */\nexport function getStringIfConstant(node, initialScope = null) {\n // Handle the literals that the platform doesn't support natively.\n if (node && node.type === \"Literal\" && node.value === null) {\n if (node.regex) {\n return `/${node.regex.pattern}/${node.regex.flags}`\n }\n if (node.bigint) {\n return node.bigint\n }\n }\n\n const evaluated = getStaticValue(node, initialScope)\n return evaluated && String(evaluated.value)\n}\n","import { getStringIfConstant } from \"./get-string-if-constant\"\n\n/**\n * Get the property name from a MemberExpression node or a Property node.\n * @param {Node} node The node to get.\n * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is a computed property node and this scope was given, this checks the computed property name by the `getStringIfConstant` function with the scope, and returns the value of it.\n * @returns {string|null} The property name of the node.\n */\nexport function getPropertyName(node, initialScope) {\n switch (node.type) {\n case \"MemberExpression\":\n if (node.computed) {\n return getStringIfConstant(node.property, initialScope)\n }\n return node.property.name\n\n case \"Property\":\n case \"MethodDefinition\":\n if (node.computed) {\n return getStringIfConstant(node.key, initialScope)\n }\n if (node.key.type === \"Literal\") {\n return String(node.key.value)\n }\n return node.key.name\n\n // no default\n }\n\n return null\n}\n","import { getPropertyName } from \"./get-property-name\"\n\n/**\n * Get the name and kind of the given function node.\n * @param {ASTNode} node - The function node to get.\n * @returns {string} The name and kind of the function node.\n */\nexport function getFunctionNameWithKind(node) {\n const parent = node.parent\n const tokens = []\n\n if (parent.type === \"MethodDefinition\" && parent.static) {\n tokens.push(\"static\")\n }\n if (node.async) {\n tokens.push(\"async\")\n }\n if (node.generator) {\n tokens.push(\"generator\")\n }\n\n if (node.type === \"ArrowFunctionExpression\") {\n tokens.push(\"arrow\", \"function\")\n } else if (\n parent.type === \"Property\" ||\n parent.type === \"MethodDefinition\"\n ) {\n if (parent.kind === \"constructor\") {\n return \"constructor\"\n }\n if (parent.kind === \"get\") {\n tokens.push(\"getter\")\n } else if (parent.kind === \"set\") {\n tokens.push(\"setter\")\n } else {\n tokens.push(\"method\")\n }\n } else {\n tokens.push(\"function\")\n }\n\n if (node.id) {\n tokens.push(`'${node.id.name}'`)\n } else {\n const name = getPropertyName(parent)\n\n if (name) {\n tokens.push(`'${name}'`)\n }\n }\n\n return tokens.join(\" \")\n}\n","import evk from \"eslint-visitor-keys\"\n\nconst typeConversionBinaryOps = Object.freeze(\n new Set([\n \"==\",\n \"!=\",\n \"<\",\n \"<=\",\n \">\",\n \">=\",\n \"<<\",\n \">>\",\n \">>>\",\n \"+\",\n \"-\",\n \"*\",\n \"/\",\n \"%\",\n \"|\",\n \"^\",\n \"&\",\n \"in\",\n ])\n)\nconst typeConversionUnaryOps = Object.freeze(new Set([\"-\", \"+\", \"!\", \"~\"]))\nconst visitor = Object.freeze(\n Object.assign(Object.create(null), {\n $visit(node, options, visitorKeys) {\n const { type } = node\n\n if (typeof this[type] === \"function\") {\n return this[type](node, options, visitorKeys)\n }\n\n return this.$visitChildren(node, options, visitorKeys)\n },\n\n $visitChildren(node, options, visitorKeys) {\n const { type } = node\n\n for (const key of visitorKeys[type] || evk.getKeys(node)) {\n const value = node[key]\n\n if (Array.isArray(value)) {\n for (const element of value) {\n if (\n element &&\n this.$visit(element, options, visitorKeys)\n ) {\n return true\n }\n }\n } else if (value && this.$visit(value, options, visitorKeys)) {\n return true\n }\n }\n\n return false\n },\n\n ArrowFunctionExpression() {\n return false\n },\n AssignmentExpression() {\n return true\n },\n AwaitExpression() {\n return true\n },\n BinaryExpression(node, options, visitorKeys) {\n if (\n options.considerImplicitTypeConversion &&\n typeConversionBinaryOps.has(node.operator) &&\n (node.left.type !== \"Literal\" || node.right.type !== \"Literal\")\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n CallExpression() {\n return true\n },\n FunctionExpression() {\n return false\n },\n ImportExpression() {\n return true\n },\n MemberExpression(node, options, visitorKeys) {\n if (options.considerGetters) {\n return true\n }\n if (\n options.considerImplicitTypeConversion &&\n node.computed &&\n node.property.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n MethodDefinition(node, options, visitorKeys) {\n if (\n options.considerImplicitTypeConversion &&\n node.computed &&\n node.key.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n NewExpression() {\n return true\n },\n Property(node, options, visitorKeys) {\n if (\n options.considerImplicitTypeConversion &&\n node.computed &&\n node.key.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n UnaryExpression(node, options, visitorKeys) {\n if (node.operator === \"delete\") {\n return true\n }\n if (\n options.considerImplicitTypeConversion &&\n typeConversionUnaryOps.has(node.operator) &&\n node.argument.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n UpdateExpression() {\n return true\n },\n YieldExpression() {\n return true\n },\n })\n)\n\n/**\n * Check whether a given node has any side effect or not.\n * @param {Node} node The node to get.\n * @param {SourceCode} sourceCode The source code object.\n * @param {object} [options] The option object.\n * @param {boolean} [options.considerGetters=false] If `true` then it considers member accesses as the node which has side effects.\n * @param {boolean} [options.considerImplicitTypeConversion=false] If `true` then it considers implicit type conversion as the node which has side effects.\n * @param {object} [options.visitorKeys=evk.KEYS] The keys to traverse nodes. Use `context.getSourceCode().visitorKeys`.\n * @returns {boolean} `true` if the node has a certain side effect.\n */\nexport function hasSideEffect(\n node,\n sourceCode,\n { considerGetters = false, considerImplicitTypeConversion = false } = {}\n) {\n return visitor.$visit(\n node,\n { considerGetters, considerImplicitTypeConversion },\n sourceCode.visitorKeys || evk.KEYS\n )\n}\n","import { isClosingParenToken, isOpeningParenToken } from \"./token-predicate\"\n\n/**\n * Get the left parenthesis of the parent node syntax if it exists.\n * E.g., `if (a) {}` then the `(`.\n * @param {Node} node The AST node to check.\n * @param {SourceCode} sourceCode The source code object to get tokens.\n * @returns {Token|null} The left parenthesis of the parent node syntax\n */\nfunction getParentSyntaxParen(node, sourceCode) {\n const parent = node.parent\n\n switch (parent.type) {\n case \"CallExpression\":\n case \"NewExpression\":\n if (parent.arguments.length === 1 && parent.arguments[0] === node) {\n return sourceCode.getTokenAfter(\n parent.callee,\n isOpeningParenToken\n )\n }\n return null\n\n case \"DoWhileStatement\":\n if (parent.test === node) {\n return sourceCode.getTokenAfter(\n parent.body,\n isOpeningParenToken\n )\n }\n return null\n\n case \"IfStatement\":\n case \"WhileStatement\":\n if (parent.test === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n case \"ImportExpression\":\n if (parent.source === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n case \"SwitchStatement\":\n if (parent.discriminant === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n case \"WithStatement\":\n if (parent.object === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n default:\n return null\n }\n}\n\n/**\n * Check whether a given node is parenthesized or not.\n * @param {number} times The number of parantheses.\n * @param {Node} node The AST node to check.\n * @param {SourceCode} sourceCode The source code object to get tokens.\n * @returns {boolean} `true` if the node is parenthesized the given times.\n */\n/**\n * Check whether a given node is parenthesized or not.\n * @param {Node} node The AST node to check.\n * @param {SourceCode} sourceCode The source code object to get tokens.\n * @returns {boolean} `true` if the node is parenthesized.\n */\nexport function isParenthesized(\n timesOrNode,\n nodeOrSourceCode,\n optionalSourceCode\n) {\n let times, node, sourceCode, maybeLeftParen, maybeRightParen\n if (typeof timesOrNode === \"number\") {\n times = timesOrNode | 0\n node = nodeOrSourceCode\n sourceCode = optionalSourceCode\n if (!(times >= 1)) {\n throw new TypeError(\"'times' should be a positive integer.\")\n }\n } else {\n times = 1\n node = timesOrNode\n sourceCode = nodeOrSourceCode\n }\n\n if (node == null) {\n return false\n }\n\n maybeLeftParen = maybeRightParen = node\n do {\n maybeLeftParen = sourceCode.getTokenBefore(maybeLeftParen)\n maybeRightParen = sourceCode.getTokenAfter(maybeRightParen)\n } while (\n maybeLeftParen != null &&\n maybeRightParen != null &&\n isOpeningParenToken(maybeLeftParen) &&\n isClosingParenToken(maybeRightParen) &&\n // Avoid false positive such as `if (a) {}`\n maybeLeftParen !== getParentSyntaxParen(node, sourceCode) &&\n --times > 0\n )\n\n return times === 0\n}\n","/**\n * @author Toru Nagashima \n * See LICENSE file in root directory for full license.\n */\n\nconst placeholder = /\\$(?:[$&`']|[1-9][0-9]?)/gu\n\n/** @type {WeakMap} */\nconst internal = new WeakMap()\n\n/**\n * Check whether a given character is escaped or not.\n * @param {string} str The string to check.\n * @param {number} index The location of the character to check.\n * @returns {boolean} `true` if the character is escaped.\n */\nfunction isEscaped(str, index) {\n let escaped = false\n for (let i = index - 1; i >= 0 && str.charCodeAt(i) === 0x5c; --i) {\n escaped = !escaped\n }\n return escaped\n}\n\n/**\n * Replace a given string by a given matcher.\n * @param {PatternMatcher} matcher The pattern matcher.\n * @param {string} str The string to be replaced.\n * @param {string} replacement The new substring to replace each matched part.\n * @returns {string} The replaced string.\n */\nfunction replaceS(matcher, str, replacement) {\n const chunks = []\n let index = 0\n\n /** @type {RegExpExecArray} */\n let match = null\n\n /**\n * @param {string} key The placeholder.\n * @returns {string} The replaced string.\n */\n function replacer(key) {\n switch (key) {\n case \"$$\":\n return \"$\"\n case \"$&\":\n return match[0]\n case \"$`\":\n return str.slice(0, match.index)\n case \"$'\":\n return str.slice(match.index + match[0].length)\n default: {\n const i = key.slice(1)\n if (i in match) {\n return match[i]\n }\n return key\n }\n }\n }\n\n for (match of matcher.execAll(str)) {\n chunks.push(str.slice(index, match.index))\n chunks.push(replacement.replace(placeholder, replacer))\n index = match.index + match[0].length\n }\n chunks.push(str.slice(index))\n\n return chunks.join(\"\")\n}\n\n/**\n * Replace a given string by a given matcher.\n * @param {PatternMatcher} matcher The pattern matcher.\n * @param {string} str The string to be replaced.\n * @param {(...strs[])=>string} replace The function to replace each matched part.\n * @returns {string} The replaced string.\n */\nfunction replaceF(matcher, str, replace) {\n const chunks = []\n let index = 0\n\n for (const match of matcher.execAll(str)) {\n chunks.push(str.slice(index, match.index))\n chunks.push(String(replace(...match, match.index, match.input)))\n index = match.index + match[0].length\n }\n chunks.push(str.slice(index))\n\n return chunks.join(\"\")\n}\n\n/**\n * The class to find patterns as considering escape sequences.\n */\nexport class PatternMatcher {\n /**\n * Initialize this matcher.\n * @param {RegExp} pattern The pattern to match.\n * @param {{escaped:boolean}} options The options.\n */\n constructor(pattern, { escaped = false } = {}) {\n if (!(pattern instanceof RegExp)) {\n throw new TypeError(\"'pattern' should be a RegExp instance.\")\n }\n if (!pattern.flags.includes(\"g\")) {\n throw new Error(\"'pattern' should contains 'g' flag.\")\n }\n\n internal.set(this, {\n pattern: new RegExp(pattern.source, pattern.flags),\n escaped: Boolean(escaped),\n })\n }\n\n /**\n * Find the pattern in a given string.\n * @param {string} str The string to find.\n * @returns {IterableIterator} The iterator which iterate the matched information.\n */\n *execAll(str) {\n const { pattern, escaped } = internal.get(this)\n let match = null\n let lastIndex = 0\n\n pattern.lastIndex = 0\n while ((match = pattern.exec(str)) != null) {\n if (escaped || !isEscaped(str, match.index)) {\n lastIndex = pattern.lastIndex\n yield match\n pattern.lastIndex = lastIndex\n }\n }\n }\n\n /**\n * Check whether the pattern is found in a given string.\n * @param {string} str The string to check.\n * @returns {boolean} `true` if the pattern was found in the string.\n */\n test(str) {\n const it = this.execAll(str)\n const ret = it.next()\n return !ret.done\n }\n\n /**\n * Replace a given string.\n * @param {string} str The string to be replaced.\n * @param {(string|((...strs:string[])=>string))} replacer The string or function to replace. This is the same as the 2nd argument of `String.prototype.replace`.\n * @returns {string} The replaced string.\n */\n [Symbol.replace](str, replacer) {\n return typeof replacer === \"function\"\n ? replaceF(this, String(str), replacer)\n : replaceS(this, String(str), String(replacer))\n }\n}\n","import { findVariable } from \"./find-variable\"\nimport { getPropertyName } from \"./get-property-name\"\nimport { getStringIfConstant } from \"./get-string-if-constant\"\n\nconst IMPORT_TYPE = /^(?:Import|Export(?:All|Default|Named))Declaration$/u\nconst has = Function.call.bind(Object.hasOwnProperty)\n\nexport const READ = Symbol(\"read\")\nexport const CALL = Symbol(\"call\")\nexport const CONSTRUCT = Symbol(\"construct\")\nexport const ESM = Symbol(\"esm\")\n\nconst requireCall = { require: { [CALL]: true } }\n\n/**\n * Check whether a given variable is modified or not.\n * @param {Variable} variable The variable to check.\n * @returns {boolean} `true` if the variable is modified.\n */\nfunction isModifiedGlobal(variable) {\n return (\n variable == null ||\n variable.defs.length !== 0 ||\n variable.references.some(r => r.isWrite())\n )\n}\n\n/**\n * Check if the value of a given node is passed through to the parent syntax as-is.\n * For example, `a` and `b` in (`a || b` and `c ? a : b`) are passed through.\n * @param {Node} node A node to check.\n * @returns {boolean} `true` if the node is passed through.\n */\nfunction isPassThrough(node) {\n const parent = node.parent\n\n switch (parent && parent.type) {\n case \"ConditionalExpression\":\n return parent.consequent === node || parent.alternate === node\n case \"LogicalExpression\":\n return true\n case \"SequenceExpression\":\n return parent.expressions[parent.expressions.length - 1] === node\n\n default:\n return false\n }\n}\n\n/**\n * The reference tracker.\n */\nexport class ReferenceTracker {\n /**\n * Initialize this tracker.\n * @param {Scope} globalScope The global scope.\n * @param {object} [options] The options.\n * @param {\"legacy\"|\"strict\"} [options.mode=\"strict\"] The mode to determine the ImportDeclaration's behavior for CJS modules.\n * @param {string[]} [options.globalObjectNames=[\"global\",\"self\",\"window\"]] The variable names for Global Object.\n */\n constructor(\n globalScope,\n {\n mode = \"strict\",\n globalObjectNames = [\"global\", \"self\", \"window\"],\n } = {}\n ) {\n this.variableStack = []\n this.globalScope = globalScope\n this.mode = mode\n this.globalObjectNames = globalObjectNames.slice(0)\n }\n\n /**\n * Iterate the references of global variables.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *iterateGlobalReferences(traceMap) {\n for (const key of Object.keys(traceMap)) {\n const nextTraceMap = traceMap[key]\n const path = [key]\n const variable = this.globalScope.set.get(key)\n\n if (isModifiedGlobal(variable)) {\n continue\n }\n\n yield* this._iterateVariableReferences(\n variable,\n path,\n nextTraceMap,\n true\n )\n }\n\n for (const key of this.globalObjectNames) {\n const path = []\n const variable = this.globalScope.set.get(key)\n\n if (isModifiedGlobal(variable)) {\n continue\n }\n\n yield* this._iterateVariableReferences(\n variable,\n path,\n traceMap,\n false\n )\n }\n }\n\n /**\n * Iterate the references of CommonJS modules.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *iterateCjsReferences(traceMap) {\n for (const { node } of this.iterateGlobalReferences(requireCall)) {\n const key = getStringIfConstant(node.arguments[0])\n if (key == null || !has(traceMap, key)) {\n continue\n }\n\n const nextTraceMap = traceMap[key]\n const path = [key]\n\n if (nextTraceMap[READ]) {\n yield {\n node,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iteratePropertyReferences(node, path, nextTraceMap)\n }\n }\n\n /**\n * Iterate the references of ES modules.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *iterateEsmReferences(traceMap) {\n const programNode = this.globalScope.block\n\n for (const node of programNode.body) {\n if (!IMPORT_TYPE.test(node.type) || node.source == null) {\n continue\n }\n const moduleId = node.source.value\n\n if (!has(traceMap, moduleId)) {\n continue\n }\n const nextTraceMap = traceMap[moduleId]\n const path = [moduleId]\n\n if (nextTraceMap[READ]) {\n yield { node, path, type: READ, info: nextTraceMap[READ] }\n }\n\n if (node.type === \"ExportAllDeclaration\") {\n for (const key of Object.keys(nextTraceMap)) {\n const exportTraceMap = nextTraceMap[key]\n if (exportTraceMap[READ]) {\n yield {\n node,\n path: path.concat(key),\n type: READ,\n info: exportTraceMap[READ],\n }\n }\n }\n } else {\n for (const specifier of node.specifiers) {\n const esm = has(nextTraceMap, ESM)\n const it = this._iterateImportReferences(\n specifier,\n path,\n esm\n ? nextTraceMap\n : this.mode === \"legacy\"\n ? Object.assign(\n { default: nextTraceMap },\n nextTraceMap\n )\n : { default: nextTraceMap }\n )\n\n if (esm) {\n yield* it\n } else {\n for (const report of it) {\n report.path = report.path.filter(exceptDefault)\n if (\n report.path.length >= 2 ||\n report.type !== READ\n ) {\n yield report\n }\n }\n }\n }\n }\n }\n }\n\n /**\n * Iterate the references for a given variable.\n * @param {Variable} variable The variable to iterate that references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @param {boolean} shouldReport = The flag to report those references.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *_iterateVariableReferences(variable, path, traceMap, shouldReport) {\n if (this.variableStack.includes(variable)) {\n return\n }\n this.variableStack.push(variable)\n try {\n for (const reference of variable.references) {\n if (!reference.isRead()) {\n continue\n }\n const node = reference.identifier\n\n if (shouldReport && traceMap[READ]) {\n yield { node, path, type: READ, info: traceMap[READ] }\n }\n yield* this._iteratePropertyReferences(node, path, traceMap)\n }\n } finally {\n this.variableStack.pop()\n }\n }\n\n /**\n * Iterate the references for a given AST node.\n * @param rootNode The AST node to iterate references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n //eslint-disable-next-line complexity\n *_iteratePropertyReferences(rootNode, path, traceMap) {\n let node = rootNode\n while (isPassThrough(node)) {\n node = node.parent\n }\n\n const parent = node.parent\n if (parent.type === \"MemberExpression\") {\n if (parent.object === node) {\n const key = getPropertyName(parent)\n if (key == null || !has(traceMap, key)) {\n return\n }\n\n path = path.concat(key) //eslint-disable-line no-param-reassign\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: parent,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iteratePropertyReferences(\n parent,\n path,\n nextTraceMap\n )\n }\n return\n }\n if (parent.type === \"CallExpression\") {\n if (parent.callee === node && traceMap[CALL]) {\n yield { node: parent, path, type: CALL, info: traceMap[CALL] }\n }\n return\n }\n if (parent.type === \"NewExpression\") {\n if (parent.callee === node && traceMap[CONSTRUCT]) {\n yield {\n node: parent,\n path,\n type: CONSTRUCT,\n info: traceMap[CONSTRUCT],\n }\n }\n return\n }\n if (parent.type === \"AssignmentExpression\") {\n if (parent.right === node) {\n yield* this._iterateLhsReferences(parent.left, path, traceMap)\n yield* this._iteratePropertyReferences(parent, path, traceMap)\n }\n return\n }\n if (parent.type === \"AssignmentPattern\") {\n if (parent.right === node) {\n yield* this._iterateLhsReferences(parent.left, path, traceMap)\n }\n return\n }\n if (parent.type === \"VariableDeclarator\") {\n if (parent.init === node) {\n yield* this._iterateLhsReferences(parent.id, path, traceMap)\n }\n }\n }\n\n /**\n * Iterate the references for a given Pattern node.\n * @param {Node} patternNode The Pattern node to iterate references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *_iterateLhsReferences(patternNode, path, traceMap) {\n if (patternNode.type === \"Identifier\") {\n const variable = findVariable(this.globalScope, patternNode)\n if (variable != null) {\n yield* this._iterateVariableReferences(\n variable,\n path,\n traceMap,\n false\n )\n }\n return\n }\n if (patternNode.type === \"ObjectPattern\") {\n for (const property of patternNode.properties) {\n const key = getPropertyName(property)\n\n if (key == null || !has(traceMap, key)) {\n continue\n }\n\n const nextPath = path.concat(key)\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: property,\n path: nextPath,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iterateLhsReferences(\n property.value,\n nextPath,\n nextTraceMap\n )\n }\n return\n }\n if (patternNode.type === \"AssignmentPattern\") {\n yield* this._iterateLhsReferences(patternNode.left, path, traceMap)\n }\n }\n\n /**\n * Iterate the references for a given ModuleSpecifier node.\n * @param {Node} specifierNode The ModuleSpecifier node to iterate references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *_iterateImportReferences(specifierNode, path, traceMap) {\n const type = specifierNode.type\n\n if (type === \"ImportSpecifier\" || type === \"ImportDefaultSpecifier\") {\n const key =\n type === \"ImportDefaultSpecifier\"\n ? \"default\"\n : specifierNode.imported.name\n if (!has(traceMap, key)) {\n return\n }\n\n path = path.concat(key) //eslint-disable-line no-param-reassign\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: specifierNode,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iterateVariableReferences(\n findVariable(this.globalScope, specifierNode.local),\n path,\n nextTraceMap,\n false\n )\n\n return\n }\n\n if (type === \"ImportNamespaceSpecifier\") {\n yield* this._iterateVariableReferences(\n findVariable(this.globalScope, specifierNode.local),\n path,\n traceMap,\n false\n )\n return\n }\n\n if (type === \"ExportSpecifier\") {\n const key = specifierNode.local.name\n if (!has(traceMap, key)) {\n return\n }\n\n path = path.concat(key) //eslint-disable-line no-param-reassign\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: specifierNode,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n }\n }\n}\n\nReferenceTracker.READ = READ\nReferenceTracker.CALL = CALL\nReferenceTracker.CONSTRUCT = CONSTRUCT\nReferenceTracker.ESM = ESM\n\n/**\n * This is a predicate function for Array#filter.\n * @param {string} name A name part.\n * @param {number} index The index of the name.\n * @returns {boolean} `false` if it's default.\n */\nfunction exceptDefault(name, index) {\n return !(index === 1 && name === \"default\")\n}\n","import { findVariable } from \"./find-variable\"\nimport { getFunctionHeadLocation } from \"./get-function-head-location\"\nimport { getFunctionNameWithKind } from \"./get-function-name-with-kind\"\nimport { getInnermostScope } from \"./get-innermost-scope\"\nimport { getPropertyName } from \"./get-property-name\"\nimport { getStaticValue } from \"./get-static-value\"\nimport { getStringIfConstant } from \"./get-string-if-constant\"\nimport { hasSideEffect } from \"./has-side-effect\"\nimport { isParenthesized } from \"./is-parenthesized\"\nimport { PatternMatcher } from \"./pattern-matcher\"\nimport {\n CALL,\n CONSTRUCT,\n ESM,\n READ,\n ReferenceTracker,\n} from \"./reference-tracker\"\nimport {\n isArrowToken,\n isClosingBraceToken,\n isClosingBracketToken,\n isClosingParenToken,\n isColonToken,\n isCommaToken,\n isCommentToken,\n isNotArrowToken,\n isNotClosingBraceToken,\n isNotClosingBracketToken,\n isNotClosingParenToken,\n isNotColonToken,\n isNotCommaToken,\n isNotCommentToken,\n isNotOpeningBraceToken,\n isNotOpeningBracketToken,\n isNotOpeningParenToken,\n isNotSemicolonToken,\n isOpeningBraceToken,\n isOpeningBracketToken,\n isOpeningParenToken,\n isSemicolonToken,\n} from \"./token-predicate\"\n\nexport default {\n CALL,\n CONSTRUCT,\n ESM,\n findVariable,\n getFunctionHeadLocation,\n getFunctionNameWithKind,\n getInnermostScope,\n getPropertyName,\n getStaticValue,\n getStringIfConstant,\n hasSideEffect,\n isArrowToken,\n isClosingBraceToken,\n isClosingBracketToken,\n isClosingParenToken,\n isColonToken,\n isCommaToken,\n isCommentToken,\n isNotArrowToken,\n isNotClosingBraceToken,\n isNotClosingBracketToken,\n isNotClosingParenToken,\n isNotColonToken,\n isNotCommaToken,\n isNotCommentToken,\n isNotOpeningBraceToken,\n isNotOpeningBracketToken,\n isNotOpeningParenToken,\n isNotSemicolonToken,\n isOpeningBraceToken,\n isOpeningBracketToken,\n isOpeningParenToken,\n isParenthesized,\n isSemicolonToken,\n PatternMatcher,\n READ,\n ReferenceTracker,\n}\nexport {\n CALL,\n CONSTRUCT,\n ESM,\n findVariable,\n getFunctionHeadLocation,\n getFunctionNameWithKind,\n getInnermostScope,\n getPropertyName,\n getStaticValue,\n getStringIfConstant,\n hasSideEffect,\n isArrowToken,\n isClosingBraceToken,\n isClosingBracketToken,\n isClosingParenToken,\n isColonToken,\n isCommaToken,\n isCommentToken,\n isNotArrowToken,\n isNotClosingBraceToken,\n isNotClosingBracketToken,\n isNotClosingParenToken,\n isNotColonToken,\n isNotCommaToken,\n isNotCommentToken,\n isNotOpeningBraceToken,\n isNotOpeningBracketToken,\n isNotOpeningParenToken,\n isNotSemicolonToken,\n isOpeningBraceToken,\n isOpeningBracketToken,\n isOpeningParenToken,\n isParenthesized,\n isSemicolonToken,\n PatternMatcher,\n READ,\n ReferenceTracker,\n}\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.mjs b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.mjs deleted file mode 100644 index 4b2a20ed..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.mjs +++ /dev/null @@ -1,1785 +0,0 @@ -/*! @author Toru Nagashima */ -import evk from 'eslint-visitor-keys'; - -/** - * Get the innermost scope which contains a given location. - * @param {Scope} initialScope The initial scope to search. - * @param {Node} node The location to search. - * @returns {Scope} The innermost scope. - */ -function getInnermostScope(initialScope, node) { - const location = node.range[0]; - - let scope = initialScope; - let found = false; - do { - found = false; - for (const childScope of scope.childScopes) { - const range = childScope.block.range; - - if (range[0] <= location && location < range[1]) { - scope = childScope; - found = true; - break - } - } - } while (found) - - return scope -} - -/** - * Find the variable of a given name. - * @param {Scope} initialScope The scope to start finding. - * @param {string|Node} nameOrNode The variable name to find. If this is a Node object then it should be an Identifier node. - * @returns {Variable|null} The found variable or null. - */ -function findVariable(initialScope, nameOrNode) { - let name = ""; - let scope = initialScope; - - if (typeof nameOrNode === "string") { - name = nameOrNode; - } else { - name = nameOrNode.name; - scope = getInnermostScope(scope, nameOrNode); - } - - while (scope != null) { - const variable = scope.set.get(name); - if (variable != null) { - return variable - } - scope = scope.upper; - } - - return null -} - -/** - * Negate the result of `this` calling. - * @param {Token} token The token to check. - * @returns {boolean} `true` if the result of `this(token)` is `false`. - */ -function negate0(token) { - return !this(token) //eslint-disable-line no-invalid-this -} - -/** - * Creates the negate function of the given function. - * @param {function(Token):boolean} f - The function to negate. - * @returns {function(Token):boolean} Negated function. - */ -function negate(f) { - return negate0.bind(f) -} - -/** - * Checks if the given token is an arrow token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an arrow token. - */ -function isArrowToken(token) { - return token.value === "=>" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a comma token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a comma token. - */ -function isCommaToken(token) { - return token.value === "," && token.type === "Punctuator" -} - -/** - * Checks if the given token is a semicolon token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a semicolon token. - */ -function isSemicolonToken(token) { - return token.value === ";" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a colon token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a colon token. - */ -function isColonToken(token) { - return token.value === ":" && token.type === "Punctuator" -} - -/** - * Checks if the given token is an opening parenthesis token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an opening parenthesis token. - */ -function isOpeningParenToken(token) { - return token.value === "(" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a closing parenthesis token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a closing parenthesis token. - */ -function isClosingParenToken(token) { - return token.value === ")" && token.type === "Punctuator" -} - -/** - * Checks if the given token is an opening square bracket token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an opening square bracket token. - */ -function isOpeningBracketToken(token) { - return token.value === "[" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a closing square bracket token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a closing square bracket token. - */ -function isClosingBracketToken(token) { - return token.value === "]" && token.type === "Punctuator" -} - -/** - * Checks if the given token is an opening brace token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is an opening brace token. - */ -function isOpeningBraceToken(token) { - return token.value === "{" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a closing brace token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a closing brace token. - */ -function isClosingBraceToken(token) { - return token.value === "}" && token.type === "Punctuator" -} - -/** - * Checks if the given token is a comment token or not. - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a comment token. - */ -function isCommentToken(token) { - return ( - token.type === "Line" || - token.type === "Block" || - token.type === "Shebang" - ) -} - -const isNotArrowToken = negate(isArrowToken); -const isNotCommaToken = negate(isCommaToken); -const isNotSemicolonToken = negate(isSemicolonToken); -const isNotColonToken = negate(isColonToken); -const isNotOpeningParenToken = negate(isOpeningParenToken); -const isNotClosingParenToken = negate(isClosingParenToken); -const isNotOpeningBracketToken = negate(isOpeningBracketToken); -const isNotClosingBracketToken = negate(isClosingBracketToken); -const isNotOpeningBraceToken = negate(isOpeningBraceToken); -const isNotClosingBraceToken = negate(isClosingBraceToken); -const isNotCommentToken = negate(isCommentToken); - -/** - * Get the `(` token of the given function node. - * @param {Node} node - The function node to get. - * @param {SourceCode} sourceCode - The source code object to get tokens. - * @returns {Token} `(` token. - */ -function getOpeningParenOfParams(node, sourceCode) { - return node.id - ? sourceCode.getTokenAfter(node.id, isOpeningParenToken) - : sourceCode.getFirstToken(node, isOpeningParenToken) -} - -/** - * Get the location of the given function node for reporting. - * @param {Node} node - The function node to get. - * @param {SourceCode} sourceCode - The source code object to get tokens. - * @returns {string} The location of the function node for reporting. - */ -function getFunctionHeadLocation(node, sourceCode) { - const parent = node.parent; - let start = null; - let end = null; - - if (node.type === "ArrowFunctionExpression") { - const arrowToken = sourceCode.getTokenBefore(node.body, isArrowToken); - - start = arrowToken.loc.start; - end = arrowToken.loc.end; - } else if ( - parent.type === "Property" || - parent.type === "MethodDefinition" - ) { - start = parent.loc.start; - end = getOpeningParenOfParams(node, sourceCode).loc.start; - } else { - start = node.loc.start; - end = getOpeningParenOfParams(node, sourceCode).loc.start; - } - - return { - start: Object.assign({}, start), - end: Object.assign({}, end), - } -} - -/* globals BigInt, globalThis, global, self, window */ - -const globalObject = - typeof globalThis !== "undefined" - ? globalThis - : typeof self !== "undefined" - ? self - : typeof window !== "undefined" - ? window - : typeof global !== "undefined" - ? global - : {}; - -const builtinNames = Object.freeze( - new Set([ - "Array", - "ArrayBuffer", - "BigInt", - "BigInt64Array", - "BigUint64Array", - "Boolean", - "DataView", - "Date", - "decodeURI", - "decodeURIComponent", - "encodeURI", - "encodeURIComponent", - "escape", - "Float32Array", - "Float64Array", - "Function", - "Infinity", - "Int16Array", - "Int32Array", - "Int8Array", - "isFinite", - "isNaN", - "isPrototypeOf", - "JSON", - "Map", - "Math", - "NaN", - "Number", - "Object", - "parseFloat", - "parseInt", - "Promise", - "Proxy", - "Reflect", - "RegExp", - "Set", - "String", - "Symbol", - "Uint16Array", - "Uint32Array", - "Uint8Array", - "Uint8ClampedArray", - "undefined", - "unescape", - "WeakMap", - "WeakSet", - ]) -); -const callAllowed = new Set( - [ - Array.isArray, - typeof BigInt === "function" ? BigInt : undefined, - Boolean, - Date, - Date.parse, - decodeURI, - decodeURIComponent, - encodeURI, - encodeURIComponent, - escape, - isFinite, - isNaN, - isPrototypeOf, - ...Object.getOwnPropertyNames(Math) - .map(k => Math[k]) - .filter(f => typeof f === "function"), - Number, - Number.isFinite, - Number.isNaN, - Number.parseFloat, - Number.parseInt, - Object, - Object.entries, - Object.is, - Object.isExtensible, - Object.isFrozen, - Object.isSealed, - Object.keys, - Object.values, - parseFloat, - parseInt, - RegExp, - String, - String.fromCharCode, - String.fromCodePoint, - String.raw, - Symbol, - Symbol.for, - Symbol.keyFor, - unescape, - ].filter(f => typeof f === "function") -); -const callPassThrough = new Set([ - Object.freeze, - Object.preventExtensions, - Object.seal, -]); - -/** - * Get the property descriptor. - * @param {object} object The object to get. - * @param {string|number|symbol} name The property name to get. - */ -function getPropertyDescriptor(object, name) { - let x = object; - while ((typeof x === "object" || typeof x === "function") && x !== null) { - const d = Object.getOwnPropertyDescriptor(x, name); - if (d) { - return d - } - x = Object.getPrototypeOf(x); - } - return null -} - -/** - * Check if a property is getter or not. - * @param {object} object The object to check. - * @param {string|number|symbol} name The property name to check. - */ -function isGetter(object, name) { - const d = getPropertyDescriptor(object, name); - return d != null && d.get != null -} - -/** - * Get the element values of a given node list. - * @param {Node[]} nodeList The node list to get values. - * @param {Scope|undefined} initialScope The initial scope to find variables. - * @returns {any[]|null} The value list if all nodes are constant. Otherwise, null. - */ -function getElementValues(nodeList, initialScope) { - const valueList = []; - - for (let i = 0; i < nodeList.length; ++i) { - const elementNode = nodeList[i]; - - if (elementNode == null) { - valueList.length = i + 1; - } else if (elementNode.type === "SpreadElement") { - const argument = getStaticValueR(elementNode.argument, initialScope); - if (argument == null) { - return null - } - valueList.push(...argument.value); - } else { - const element = getStaticValueR(elementNode, initialScope); - if (element == null) { - return null - } - valueList.push(element.value); - } - } - - return valueList -} - -const operations = Object.freeze({ - ArrayExpression(node, initialScope) { - const elements = getElementValues(node.elements, initialScope); - return elements != null ? { value: elements } : null - }, - - AssignmentExpression(node, initialScope) { - if (node.operator === "=") { - return getStaticValueR(node.right, initialScope) - } - return null - }, - - //eslint-disable-next-line complexity - BinaryExpression(node, initialScope) { - if (node.operator === "in" || node.operator === "instanceof") { - // Not supported. - return null - } - - const left = getStaticValueR(node.left, initialScope); - const right = getStaticValueR(node.right, initialScope); - if (left != null && right != null) { - switch (node.operator) { - case "==": - return { value: left.value == right.value } //eslint-disable-line eqeqeq - case "!=": - return { value: left.value != right.value } //eslint-disable-line eqeqeq - case "===": - return { value: left.value === right.value } - case "!==": - return { value: left.value !== right.value } - case "<": - return { value: left.value < right.value } - case "<=": - return { value: left.value <= right.value } - case ">": - return { value: left.value > right.value } - case ">=": - return { value: left.value >= right.value } - case "<<": - return { value: left.value << right.value } - case ">>": - return { value: left.value >> right.value } - case ">>>": - return { value: left.value >>> right.value } - case "+": - return { value: left.value + right.value } - case "-": - return { value: left.value - right.value } - case "*": - return { value: left.value * right.value } - case "/": - return { value: left.value / right.value } - case "%": - return { value: left.value % right.value } - case "**": - return { value: Math.pow(left.value, right.value) } - case "|": - return { value: left.value | right.value } - case "^": - return { value: left.value ^ right.value } - case "&": - return { value: left.value & right.value } - - // no default - } - } - - return null - }, - - CallExpression(node, initialScope) { - const calleeNode = node.callee; - const args = getElementValues(node.arguments, initialScope); - - if (args != null) { - if (calleeNode.type === "MemberExpression") { - const object = getStaticValueR(calleeNode.object, initialScope); - const property = calleeNode.computed - ? getStaticValueR(calleeNode.property, initialScope) - : { value: calleeNode.property.name }; - - if (object != null && property != null) { - const receiver = object.value; - const methodName = property.value; - if (callAllowed.has(receiver[methodName])) { - return { value: receiver[methodName](...args) } - } - if (callPassThrough.has(receiver[methodName])) { - return { value: args[0] } - } - } - } else { - const callee = getStaticValueR(calleeNode, initialScope); - if (callee != null) { - const func = callee.value; - if (callAllowed.has(func)) { - return { value: func(...args) } - } - if (callPassThrough.has(func)) { - return { value: args[0] } - } - } - } - } - - return null - }, - - ConditionalExpression(node, initialScope) { - const test = getStaticValueR(node.test, initialScope); - if (test != null) { - return test.value - ? getStaticValueR(node.consequent, initialScope) - : getStaticValueR(node.alternate, initialScope) - } - return null - }, - - ExpressionStatement(node, initialScope) { - return getStaticValueR(node.expression, initialScope) - }, - - Identifier(node, initialScope) { - if (initialScope != null) { - const variable = findVariable(initialScope, node); - - // Built-in globals. - if ( - variable != null && - variable.defs.length === 0 && - builtinNames.has(variable.name) && - variable.name in globalObject - ) { - return { value: globalObject[variable.name] } - } - - // Constants. - if (variable != null && variable.defs.length === 1) { - const def = variable.defs[0]; - if ( - def.parent && - def.parent.kind === "const" && - // TODO(mysticatea): don't support destructuring here. - def.node.id.type === "Identifier" - ) { - return getStaticValueR(def.node.init, initialScope) - } - } - } - return null - }, - - Literal(node) { - //istanbul ignore if : this is implementation-specific behavior. - if ((node.regex != null || node.bigint != null) && node.value == null) { - // It was a RegExp/BigInt literal, but Node.js didn't support it. - return null - } - return { value: node.value } - }, - - LogicalExpression(node, initialScope) { - const left = getStaticValueR(node.left, initialScope); - if (left != null) { - if ( - (node.operator === "||" && Boolean(left.value) === true) || - (node.operator === "&&" && Boolean(left.value) === false) - ) { - return left - } - - const right = getStaticValueR(node.right, initialScope); - if (right != null) { - return right - } - } - - return null - }, - - MemberExpression(node, initialScope) { - const object = getStaticValueR(node.object, initialScope); - const property = node.computed - ? getStaticValueR(node.property, initialScope) - : { value: node.property.name }; - - if ( - object != null && - property != null && - !isGetter(object.value, property.value) - ) { - return { value: object.value[property.value] } - } - return null - }, - - NewExpression(node, initialScope) { - const callee = getStaticValueR(node.callee, initialScope); - const args = getElementValues(node.arguments, initialScope); - - if (callee != null && args != null) { - const Func = callee.value; - if (callAllowed.has(Func)) { - return { value: new Func(...args) } - } - } - - return null - }, - - ObjectExpression(node, initialScope) { - const object = {}; - - for (const propertyNode of node.properties) { - if (propertyNode.type === "Property") { - if (propertyNode.kind !== "init") { - return null - } - const key = propertyNode.computed - ? getStaticValueR(propertyNode.key, initialScope) - : { value: propertyNode.key.name }; - const value = getStaticValueR(propertyNode.value, initialScope); - if (key == null || value == null) { - return null - } - object[key.value] = value.value; - } else if ( - propertyNode.type === "SpreadElement" || - propertyNode.type === "ExperimentalSpreadProperty" - ) { - const argument = getStaticValueR( - propertyNode.argument, - initialScope - ); - if (argument == null) { - return null - } - Object.assign(object, argument.value); - } else { - return null - } - } - - return { value: object } - }, - - SequenceExpression(node, initialScope) { - const last = node.expressions[node.expressions.length - 1]; - return getStaticValueR(last, initialScope) - }, - - TaggedTemplateExpression(node, initialScope) { - const tag = getStaticValueR(node.tag, initialScope); - const expressions = getElementValues( - node.quasi.expressions, - initialScope - ); - - if (tag != null && expressions != null) { - const func = tag.value; - const strings = node.quasi.quasis.map(q => q.value.cooked); - strings.raw = node.quasi.quasis.map(q => q.value.raw); - - if (func === String.raw) { - return { value: func(strings, ...expressions) } - } - } - - return null - }, - - TemplateLiteral(node, initialScope) { - const expressions = getElementValues(node.expressions, initialScope); - if (expressions != null) { - let value = node.quasis[0].value.cooked; - for (let i = 0; i < expressions.length; ++i) { - value += expressions[i]; - value += node.quasis[i + 1].value.cooked; - } - return { value } - } - return null - }, - - UnaryExpression(node, initialScope) { - if (node.operator === "delete") { - // Not supported. - return null - } - if (node.operator === "void") { - return { value: undefined } - } - - const arg = getStaticValueR(node.argument, initialScope); - if (arg != null) { - switch (node.operator) { - case "-": - return { value: -arg.value } - case "+": - return { value: +arg.value } //eslint-disable-line no-implicit-coercion - case "!": - return { value: !arg.value } - case "~": - return { value: ~arg.value } - case "typeof": - return { value: typeof arg.value } - - // no default - } - } - - return null - }, -}); - -/** - * Get the value of a given node if it's a static value. - * @param {Node} node The node to get. - * @param {Scope|undefined} initialScope The scope to start finding variable. - * @returns {{value:any}|null} The static value of the node, or `null`. - */ -function getStaticValueR(node, initialScope) { - if (node != null && Object.hasOwnProperty.call(operations, node.type)) { - return operations[node.type](node, initialScope) - } - return null -} - -/** - * Get the value of a given node if it's a static value. - * @param {Node} node The node to get. - * @param {Scope} [initialScope] The scope to start finding variable. Optional. If this scope was given, this tries to resolve identifier references which are in the given node as much as possible. - * @returns {{value:any}|null} The static value of the node, or `null`. - */ -function getStaticValue(node, initialScope = null) { - try { - return getStaticValueR(node, initialScope) - } catch (_error) { - return null - } -} - -/** - * Get the value of a given node if it's a literal or a template literal. - * @param {Node} node The node to get. - * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is an Identifier node and this scope was given, this checks the variable of the identifier, and returns the value of it if the variable is a constant. - * @returns {string|null} The value of the node, or `null`. - */ -function getStringIfConstant(node, initialScope = null) { - // Handle the literals that the platform doesn't support natively. - if (node && node.type === "Literal" && node.value === null) { - if (node.regex) { - return `/${node.regex.pattern}/${node.regex.flags}` - } - if (node.bigint) { - return node.bigint - } - } - - const evaluated = getStaticValue(node, initialScope); - return evaluated && String(evaluated.value) -} - -/** - * Get the property name from a MemberExpression node or a Property node. - * @param {Node} node The node to get. - * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is a computed property node and this scope was given, this checks the computed property name by the `getStringIfConstant` function with the scope, and returns the value of it. - * @returns {string|null} The property name of the node. - */ -function getPropertyName(node, initialScope) { - switch (node.type) { - case "MemberExpression": - if (node.computed) { - return getStringIfConstant(node.property, initialScope) - } - return node.property.name - - case "Property": - case "MethodDefinition": - if (node.computed) { - return getStringIfConstant(node.key, initialScope) - } - if (node.key.type === "Literal") { - return String(node.key.value) - } - return node.key.name - - // no default - } - - return null -} - -/** - * Get the name and kind of the given function node. - * @param {ASTNode} node - The function node to get. - * @returns {string} The name and kind of the function node. - */ -function getFunctionNameWithKind(node) { - const parent = node.parent; - const tokens = []; - - if (parent.type === "MethodDefinition" && parent.static) { - tokens.push("static"); - } - if (node.async) { - tokens.push("async"); - } - if (node.generator) { - tokens.push("generator"); - } - - if (node.type === "ArrowFunctionExpression") { - tokens.push("arrow", "function"); - } else if ( - parent.type === "Property" || - parent.type === "MethodDefinition" - ) { - if (parent.kind === "constructor") { - return "constructor" - } - if (parent.kind === "get") { - tokens.push("getter"); - } else if (parent.kind === "set") { - tokens.push("setter"); - } else { - tokens.push("method"); - } - } else { - tokens.push("function"); - } - - if (node.id) { - tokens.push(`'${node.id.name}'`); - } else { - const name = getPropertyName(parent); - - if (name) { - tokens.push(`'${name}'`); - } - } - - return tokens.join(" ") -} - -const typeConversionBinaryOps = Object.freeze( - new Set([ - "==", - "!=", - "<", - "<=", - ">", - ">=", - "<<", - ">>", - ">>>", - "+", - "-", - "*", - "/", - "%", - "|", - "^", - "&", - "in", - ]) -); -const typeConversionUnaryOps = Object.freeze(new Set(["-", "+", "!", "~"])); -const visitor = Object.freeze( - Object.assign(Object.create(null), { - $visit(node, options, visitorKeys) { - const { type } = node; - - if (typeof this[type] === "function") { - return this[type](node, options, visitorKeys) - } - - return this.$visitChildren(node, options, visitorKeys) - }, - - $visitChildren(node, options, visitorKeys) { - const { type } = node; - - for (const key of visitorKeys[type] || evk.getKeys(node)) { - const value = node[key]; - - if (Array.isArray(value)) { - for (const element of value) { - if ( - element && - this.$visit(element, options, visitorKeys) - ) { - return true - } - } - } else if (value && this.$visit(value, options, visitorKeys)) { - return true - } - } - - return false - }, - - ArrowFunctionExpression() { - return false - }, - AssignmentExpression() { - return true - }, - AwaitExpression() { - return true - }, - BinaryExpression(node, options, visitorKeys) { - if ( - options.considerImplicitTypeConversion && - typeConversionBinaryOps.has(node.operator) && - (node.left.type !== "Literal" || node.right.type !== "Literal") - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - CallExpression() { - return true - }, - FunctionExpression() { - return false - }, - ImportExpression() { - return true - }, - MemberExpression(node, options, visitorKeys) { - if (options.considerGetters) { - return true - } - if ( - options.considerImplicitTypeConversion && - node.computed && - node.property.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - MethodDefinition(node, options, visitorKeys) { - if ( - options.considerImplicitTypeConversion && - node.computed && - node.key.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - NewExpression() { - return true - }, - Property(node, options, visitorKeys) { - if ( - options.considerImplicitTypeConversion && - node.computed && - node.key.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - UnaryExpression(node, options, visitorKeys) { - if (node.operator === "delete") { - return true - } - if ( - options.considerImplicitTypeConversion && - typeConversionUnaryOps.has(node.operator) && - node.argument.type !== "Literal" - ) { - return true - } - return this.$visitChildren(node, options, visitorKeys) - }, - UpdateExpression() { - return true - }, - YieldExpression() { - return true - }, - }) -); - -/** - * Check whether a given node has any side effect or not. - * @param {Node} node The node to get. - * @param {SourceCode} sourceCode The source code object. - * @param {object} [options] The option object. - * @param {boolean} [options.considerGetters=false] If `true` then it considers member accesses as the node which has side effects. - * @param {boolean} [options.considerImplicitTypeConversion=false] If `true` then it considers implicit type conversion as the node which has side effects. - * @param {object} [options.visitorKeys=evk.KEYS] The keys to traverse nodes. Use `context.getSourceCode().visitorKeys`. - * @returns {boolean} `true` if the node has a certain side effect. - */ -function hasSideEffect( - node, - sourceCode, - { considerGetters = false, considerImplicitTypeConversion = false } = {} -) { - return visitor.$visit( - node, - { considerGetters, considerImplicitTypeConversion }, - sourceCode.visitorKeys || evk.KEYS - ) -} - -/** - * Get the left parenthesis of the parent node syntax if it exists. - * E.g., `if (a) {}` then the `(`. - * @param {Node} node The AST node to check. - * @param {SourceCode} sourceCode The source code object to get tokens. - * @returns {Token|null} The left parenthesis of the parent node syntax - */ -function getParentSyntaxParen(node, sourceCode) { - const parent = node.parent; - - switch (parent.type) { - case "CallExpression": - case "NewExpression": - if (parent.arguments.length === 1 && parent.arguments[0] === node) { - return sourceCode.getTokenAfter( - parent.callee, - isOpeningParenToken - ) - } - return null - - case "DoWhileStatement": - if (parent.test === node) { - return sourceCode.getTokenAfter( - parent.body, - isOpeningParenToken - ) - } - return null - - case "IfStatement": - case "WhileStatement": - if (parent.test === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - case "ImportExpression": - if (parent.source === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - case "SwitchStatement": - if (parent.discriminant === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - case "WithStatement": - if (parent.object === node) { - return sourceCode.getFirstToken(parent, 1) - } - return null - - default: - return null - } -} - -/** - * Check whether a given node is parenthesized or not. - * @param {number} times The number of parantheses. - * @param {Node} node The AST node to check. - * @param {SourceCode} sourceCode The source code object to get tokens. - * @returns {boolean} `true` if the node is parenthesized the given times. - */ -/** - * Check whether a given node is parenthesized or not. - * @param {Node} node The AST node to check. - * @param {SourceCode} sourceCode The source code object to get tokens. - * @returns {boolean} `true` if the node is parenthesized. - */ -function isParenthesized( - timesOrNode, - nodeOrSourceCode, - optionalSourceCode -) { - let times, node, sourceCode, maybeLeftParen, maybeRightParen; - if (typeof timesOrNode === "number") { - times = timesOrNode | 0; - node = nodeOrSourceCode; - sourceCode = optionalSourceCode; - if (!(times >= 1)) { - throw new TypeError("'times' should be a positive integer.") - } - } else { - times = 1; - node = timesOrNode; - sourceCode = nodeOrSourceCode; - } - - if (node == null) { - return false - } - - maybeLeftParen = maybeRightParen = node; - do { - maybeLeftParen = sourceCode.getTokenBefore(maybeLeftParen); - maybeRightParen = sourceCode.getTokenAfter(maybeRightParen); - } while ( - maybeLeftParen != null && - maybeRightParen != null && - isOpeningParenToken(maybeLeftParen) && - isClosingParenToken(maybeRightParen) && - // Avoid false positive such as `if (a) {}` - maybeLeftParen !== getParentSyntaxParen(node, sourceCode) && - --times > 0 - ) - - return times === 0 -} - -/** - * @author Toru Nagashima - * See LICENSE file in root directory for full license. - */ - -const placeholder = /\$(?:[$&`']|[1-9][0-9]?)/gu; - -/** @type {WeakMap} */ -const internal = new WeakMap(); - -/** - * Check whether a given character is escaped or not. - * @param {string} str The string to check. - * @param {number} index The location of the character to check. - * @returns {boolean} `true` if the character is escaped. - */ -function isEscaped(str, index) { - let escaped = false; - for (let i = index - 1; i >= 0 && str.charCodeAt(i) === 0x5c; --i) { - escaped = !escaped; - } - return escaped -} - -/** - * Replace a given string by a given matcher. - * @param {PatternMatcher} matcher The pattern matcher. - * @param {string} str The string to be replaced. - * @param {string} replacement The new substring to replace each matched part. - * @returns {string} The replaced string. - */ -function replaceS(matcher, str, replacement) { - const chunks = []; - let index = 0; - - /** @type {RegExpExecArray} */ - let match = null; - - /** - * @param {string} key The placeholder. - * @returns {string} The replaced string. - */ - function replacer(key) { - switch (key) { - case "$$": - return "$" - case "$&": - return match[0] - case "$`": - return str.slice(0, match.index) - case "$'": - return str.slice(match.index + match[0].length) - default: { - const i = key.slice(1); - if (i in match) { - return match[i] - } - return key - } - } - } - - for (match of matcher.execAll(str)) { - chunks.push(str.slice(index, match.index)); - chunks.push(replacement.replace(placeholder, replacer)); - index = match.index + match[0].length; - } - chunks.push(str.slice(index)); - - return chunks.join("") -} - -/** - * Replace a given string by a given matcher. - * @param {PatternMatcher} matcher The pattern matcher. - * @param {string} str The string to be replaced. - * @param {(...strs[])=>string} replace The function to replace each matched part. - * @returns {string} The replaced string. - */ -function replaceF(matcher, str, replace) { - const chunks = []; - let index = 0; - - for (const match of matcher.execAll(str)) { - chunks.push(str.slice(index, match.index)); - chunks.push(String(replace(...match, match.index, match.input))); - index = match.index + match[0].length; - } - chunks.push(str.slice(index)); - - return chunks.join("") -} - -/** - * The class to find patterns as considering escape sequences. - */ -class PatternMatcher { - /** - * Initialize this matcher. - * @param {RegExp} pattern The pattern to match. - * @param {{escaped:boolean}} options The options. - */ - constructor(pattern, { escaped = false } = {}) { - if (!(pattern instanceof RegExp)) { - throw new TypeError("'pattern' should be a RegExp instance.") - } - if (!pattern.flags.includes("g")) { - throw new Error("'pattern' should contains 'g' flag.") - } - - internal.set(this, { - pattern: new RegExp(pattern.source, pattern.flags), - escaped: Boolean(escaped), - }); - } - - /** - * Find the pattern in a given string. - * @param {string} str The string to find. - * @returns {IterableIterator} The iterator which iterate the matched information. - */ - *execAll(str) { - const { pattern, escaped } = internal.get(this); - let match = null; - let lastIndex = 0; - - pattern.lastIndex = 0; - while ((match = pattern.exec(str)) != null) { - if (escaped || !isEscaped(str, match.index)) { - lastIndex = pattern.lastIndex; - yield match; - pattern.lastIndex = lastIndex; - } - } - } - - /** - * Check whether the pattern is found in a given string. - * @param {string} str The string to check. - * @returns {boolean} `true` if the pattern was found in the string. - */ - test(str) { - const it = this.execAll(str); - const ret = it.next(); - return !ret.done - } - - /** - * Replace a given string. - * @param {string} str The string to be replaced. - * @param {(string|((...strs:string[])=>string))} replacer The string or function to replace. This is the same as the 2nd argument of `String.prototype.replace`. - * @returns {string} The replaced string. - */ - [Symbol.replace](str, replacer) { - return typeof replacer === "function" - ? replaceF(this, String(str), replacer) - : replaceS(this, String(str), String(replacer)) - } -} - -const IMPORT_TYPE = /^(?:Import|Export(?:All|Default|Named))Declaration$/u; -const has = Function.call.bind(Object.hasOwnProperty); - -const READ = Symbol("read"); -const CALL = Symbol("call"); -const CONSTRUCT = Symbol("construct"); -const ESM = Symbol("esm"); - -const requireCall = { require: { [CALL]: true } }; - -/** - * Check whether a given variable is modified or not. - * @param {Variable} variable The variable to check. - * @returns {boolean} `true` if the variable is modified. - */ -function isModifiedGlobal(variable) { - return ( - variable == null || - variable.defs.length !== 0 || - variable.references.some(r => r.isWrite()) - ) -} - -/** - * Check if the value of a given node is passed through to the parent syntax as-is. - * For example, `a` and `b` in (`a || b` and `c ? a : b`) are passed through. - * @param {Node} node A node to check. - * @returns {boolean} `true` if the node is passed through. - */ -function isPassThrough(node) { - const parent = node.parent; - - switch (parent && parent.type) { - case "ConditionalExpression": - return parent.consequent === node || parent.alternate === node - case "LogicalExpression": - return true - case "SequenceExpression": - return parent.expressions[parent.expressions.length - 1] === node - - default: - return false - } -} - -/** - * The reference tracker. - */ -class ReferenceTracker { - /** - * Initialize this tracker. - * @param {Scope} globalScope The global scope. - * @param {object} [options] The options. - * @param {"legacy"|"strict"} [options.mode="strict"] The mode to determine the ImportDeclaration's behavior for CJS modules. - * @param {string[]} [options.globalObjectNames=["global","self","window"]] The variable names for Global Object. - */ - constructor( - globalScope, - { - mode = "strict", - globalObjectNames = ["global", "self", "window"], - } = {} - ) { - this.variableStack = []; - this.globalScope = globalScope; - this.mode = mode; - this.globalObjectNames = globalObjectNames.slice(0); - } - - /** - * Iterate the references of global variables. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *iterateGlobalReferences(traceMap) { - for (const key of Object.keys(traceMap)) { - const nextTraceMap = traceMap[key]; - const path = [key]; - const variable = this.globalScope.set.get(key); - - if (isModifiedGlobal(variable)) { - continue - } - - yield* this._iterateVariableReferences( - variable, - path, - nextTraceMap, - true - ); - } - - for (const key of this.globalObjectNames) { - const path = []; - const variable = this.globalScope.set.get(key); - - if (isModifiedGlobal(variable)) { - continue - } - - yield* this._iterateVariableReferences( - variable, - path, - traceMap, - false - ); - } - } - - /** - * Iterate the references of CommonJS modules. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *iterateCjsReferences(traceMap) { - for (const { node } of this.iterateGlobalReferences(requireCall)) { - const key = getStringIfConstant(node.arguments[0]); - if (key == null || !has(traceMap, key)) { - continue - } - - const nextTraceMap = traceMap[key]; - const path = [key]; - - if (nextTraceMap[READ]) { - yield { - node, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iteratePropertyReferences(node, path, nextTraceMap); - } - } - - /** - * Iterate the references of ES modules. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *iterateEsmReferences(traceMap) { - const programNode = this.globalScope.block; - - for (const node of programNode.body) { - if (!IMPORT_TYPE.test(node.type) || node.source == null) { - continue - } - const moduleId = node.source.value; - - if (!has(traceMap, moduleId)) { - continue - } - const nextTraceMap = traceMap[moduleId]; - const path = [moduleId]; - - if (nextTraceMap[READ]) { - yield { node, path, type: READ, info: nextTraceMap[READ] }; - } - - if (node.type === "ExportAllDeclaration") { - for (const key of Object.keys(nextTraceMap)) { - const exportTraceMap = nextTraceMap[key]; - if (exportTraceMap[READ]) { - yield { - node, - path: path.concat(key), - type: READ, - info: exportTraceMap[READ], - }; - } - } - } else { - for (const specifier of node.specifiers) { - const esm = has(nextTraceMap, ESM); - const it = this._iterateImportReferences( - specifier, - path, - esm - ? nextTraceMap - : this.mode === "legacy" - ? Object.assign( - { default: nextTraceMap }, - nextTraceMap - ) - : { default: nextTraceMap } - ); - - if (esm) { - yield* it; - } else { - for (const report of it) { - report.path = report.path.filter(exceptDefault); - if ( - report.path.length >= 2 || - report.type !== READ - ) { - yield report; - } - } - } - } - } - } - } - - /** - * Iterate the references for a given variable. - * @param {Variable} variable The variable to iterate that references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @param {boolean} shouldReport = The flag to report those references. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *_iterateVariableReferences(variable, path, traceMap, shouldReport) { - if (this.variableStack.includes(variable)) { - return - } - this.variableStack.push(variable); - try { - for (const reference of variable.references) { - if (!reference.isRead()) { - continue - } - const node = reference.identifier; - - if (shouldReport && traceMap[READ]) { - yield { node, path, type: READ, info: traceMap[READ] }; - } - yield* this._iteratePropertyReferences(node, path, traceMap); - } - } finally { - this.variableStack.pop(); - } - } - - /** - * Iterate the references for a given AST node. - * @param rootNode The AST node to iterate references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - //eslint-disable-next-line complexity - *_iteratePropertyReferences(rootNode, path, traceMap) { - let node = rootNode; - while (isPassThrough(node)) { - node = node.parent; - } - - const parent = node.parent; - if (parent.type === "MemberExpression") { - if (parent.object === node) { - const key = getPropertyName(parent); - if (key == null || !has(traceMap, key)) { - return - } - - path = path.concat(key); //eslint-disable-line no-param-reassign - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: parent, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iteratePropertyReferences( - parent, - path, - nextTraceMap - ); - } - return - } - if (parent.type === "CallExpression") { - if (parent.callee === node && traceMap[CALL]) { - yield { node: parent, path, type: CALL, info: traceMap[CALL] }; - } - return - } - if (parent.type === "NewExpression") { - if (parent.callee === node && traceMap[CONSTRUCT]) { - yield { - node: parent, - path, - type: CONSTRUCT, - info: traceMap[CONSTRUCT], - }; - } - return - } - if (parent.type === "AssignmentExpression") { - if (parent.right === node) { - yield* this._iterateLhsReferences(parent.left, path, traceMap); - yield* this._iteratePropertyReferences(parent, path, traceMap); - } - return - } - if (parent.type === "AssignmentPattern") { - if (parent.right === node) { - yield* this._iterateLhsReferences(parent.left, path, traceMap); - } - return - } - if (parent.type === "VariableDeclarator") { - if (parent.init === node) { - yield* this._iterateLhsReferences(parent.id, path, traceMap); - } - } - } - - /** - * Iterate the references for a given Pattern node. - * @param {Node} patternNode The Pattern node to iterate references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *_iterateLhsReferences(patternNode, path, traceMap) { - if (patternNode.type === "Identifier") { - const variable = findVariable(this.globalScope, patternNode); - if (variable != null) { - yield* this._iterateVariableReferences( - variable, - path, - traceMap, - false - ); - } - return - } - if (patternNode.type === "ObjectPattern") { - for (const property of patternNode.properties) { - const key = getPropertyName(property); - - if (key == null || !has(traceMap, key)) { - continue - } - - const nextPath = path.concat(key); - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: property, - path: nextPath, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iterateLhsReferences( - property.value, - nextPath, - nextTraceMap - ); - } - return - } - if (patternNode.type === "AssignmentPattern") { - yield* this._iterateLhsReferences(patternNode.left, path, traceMap); - } - } - - /** - * Iterate the references for a given ModuleSpecifier node. - * @param {Node} specifierNode The ModuleSpecifier node to iterate references. - * @param {string[]} path The current path. - * @param {object} traceMap The trace map. - * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references. - */ - *_iterateImportReferences(specifierNode, path, traceMap) { - const type = specifierNode.type; - - if (type === "ImportSpecifier" || type === "ImportDefaultSpecifier") { - const key = - type === "ImportDefaultSpecifier" - ? "default" - : specifierNode.imported.name; - if (!has(traceMap, key)) { - return - } - - path = path.concat(key); //eslint-disable-line no-param-reassign - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: specifierNode, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - yield* this._iterateVariableReferences( - findVariable(this.globalScope, specifierNode.local), - path, - nextTraceMap, - false - ); - - return - } - - if (type === "ImportNamespaceSpecifier") { - yield* this._iterateVariableReferences( - findVariable(this.globalScope, specifierNode.local), - path, - traceMap, - false - ); - return - } - - if (type === "ExportSpecifier") { - const key = specifierNode.local.name; - if (!has(traceMap, key)) { - return - } - - path = path.concat(key); //eslint-disable-line no-param-reassign - const nextTraceMap = traceMap[key]; - if (nextTraceMap[READ]) { - yield { - node: specifierNode, - path, - type: READ, - info: nextTraceMap[READ], - }; - } - } - } -} - -ReferenceTracker.READ = READ; -ReferenceTracker.CALL = CALL; -ReferenceTracker.CONSTRUCT = CONSTRUCT; -ReferenceTracker.ESM = ESM; - -/** - * This is a predicate function for Array#filter. - * @param {string} name A name part. - * @param {number} index The index of the name. - * @returns {boolean} `false` if it's default. - */ -function exceptDefault(name, index) { - return !(index === 1 && name === "default") -} - -var index = { - CALL, - CONSTRUCT, - ESM, - findVariable, - getFunctionHeadLocation, - getFunctionNameWithKind, - getInnermostScope, - getPropertyName, - getStaticValue, - getStringIfConstant, - hasSideEffect, - isArrowToken, - isClosingBraceToken, - isClosingBracketToken, - isClosingParenToken, - isColonToken, - isCommaToken, - isCommentToken, - isNotArrowToken, - isNotClosingBraceToken, - isNotClosingBracketToken, - isNotClosingParenToken, - isNotColonToken, - isNotCommaToken, - isNotCommentToken, - isNotOpeningBraceToken, - isNotOpeningBracketToken, - isNotOpeningParenToken, - isNotSemicolonToken, - isOpeningBraceToken, - isOpeningBracketToken, - isOpeningParenToken, - isParenthesized, - isSemicolonToken, - PatternMatcher, - READ, - ReferenceTracker, -}; - -export default index; -export { CALL, CONSTRUCT, ESM, PatternMatcher, READ, ReferenceTracker, findVariable, getFunctionHeadLocation, getFunctionNameWithKind, getInnermostScope, getPropertyName, getStaticValue, getStringIfConstant, hasSideEffect, isArrowToken, isClosingBraceToken, isClosingBracketToken, isClosingParenToken, isColonToken, isCommaToken, isCommentToken, isNotArrowToken, isNotClosingBraceToken, isNotClosingBracketToken, isNotClosingParenToken, isNotColonToken, isNotCommaToken, isNotCommentToken, isNotOpeningBraceToken, isNotOpeningBracketToken, isNotOpeningParenToken, isNotSemicolonToken, isOpeningBraceToken, isOpeningBracketToken, isOpeningParenToken, isParenthesized, isSemicolonToken }; -//# sourceMappingURL=index.mjs.map diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.mjs.map b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.mjs.map deleted file mode 100644 index 62ad50ab..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/index.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.mjs","sources":["src/get-innermost-scope.js","src/find-variable.js","src/token-predicate.js","src/get-function-head-location.js","src/get-static-value.js","src/get-string-if-constant.js","src/get-property-name.js","src/get-function-name-with-kind.js","src/has-side-effect.js","src/is-parenthesized.js","src/pattern-matcher.js","src/reference-tracker.js","src/index.js"],"sourcesContent":["/**\n * Get the innermost scope which contains a given location.\n * @param {Scope} initialScope The initial scope to search.\n * @param {Node} node The location to search.\n * @returns {Scope} The innermost scope.\n */\nexport function getInnermostScope(initialScope, node) {\n const location = node.range[0]\n\n let scope = initialScope\n let found = false\n do {\n found = false\n for (const childScope of scope.childScopes) {\n const range = childScope.block.range\n\n if (range[0] <= location && location < range[1]) {\n scope = childScope\n found = true\n break\n }\n }\n } while (found)\n\n return scope\n}\n","import { getInnermostScope } from \"./get-innermost-scope\"\n\n/**\n * Find the variable of a given name.\n * @param {Scope} initialScope The scope to start finding.\n * @param {string|Node} nameOrNode The variable name to find. If this is a Node object then it should be an Identifier node.\n * @returns {Variable|null} The found variable or null.\n */\nexport function findVariable(initialScope, nameOrNode) {\n let name = \"\"\n let scope = initialScope\n\n if (typeof nameOrNode === \"string\") {\n name = nameOrNode\n } else {\n name = nameOrNode.name\n scope = getInnermostScope(scope, nameOrNode)\n }\n\n while (scope != null) {\n const variable = scope.set.get(name)\n if (variable != null) {\n return variable\n }\n scope = scope.upper\n }\n\n return null\n}\n","/**\n * Negate the result of `this` calling.\n * @param {Token} token The token to check.\n * @returns {boolean} `true` if the result of `this(token)` is `false`.\n */\nfunction negate0(token) {\n return !this(token) //eslint-disable-line no-invalid-this\n}\n\n/**\n * Creates the negate function of the given function.\n * @param {function(Token):boolean} f - The function to negate.\n * @returns {function(Token):boolean} Negated function.\n */\nfunction negate(f) {\n return negate0.bind(f)\n}\n\n/**\n * Checks if the given token is an arrow token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an arrow token.\n */\nexport function isArrowToken(token) {\n return token.value === \"=>\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a comma token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a comma token.\n */\nexport function isCommaToken(token) {\n return token.value === \",\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a semicolon token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a semicolon token.\n */\nexport function isSemicolonToken(token) {\n return token.value === \";\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a colon token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a colon token.\n */\nexport function isColonToken(token) {\n return token.value === \":\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is an opening parenthesis token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an opening parenthesis token.\n */\nexport function isOpeningParenToken(token) {\n return token.value === \"(\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a closing parenthesis token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a closing parenthesis token.\n */\nexport function isClosingParenToken(token) {\n return token.value === \")\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is an opening square bracket token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an opening square bracket token.\n */\nexport function isOpeningBracketToken(token) {\n return token.value === \"[\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a closing square bracket token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a closing square bracket token.\n */\nexport function isClosingBracketToken(token) {\n return token.value === \"]\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is an opening brace token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is an opening brace token.\n */\nexport function isOpeningBraceToken(token) {\n return token.value === \"{\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a closing brace token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a closing brace token.\n */\nexport function isClosingBraceToken(token) {\n return token.value === \"}\" && token.type === \"Punctuator\"\n}\n\n/**\n * Checks if the given token is a comment token or not.\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a comment token.\n */\nexport function isCommentToken(token) {\n return (\n token.type === \"Line\" ||\n token.type === \"Block\" ||\n token.type === \"Shebang\"\n )\n}\n\nexport const isNotArrowToken = negate(isArrowToken)\nexport const isNotCommaToken = negate(isCommaToken)\nexport const isNotSemicolonToken = negate(isSemicolonToken)\nexport const isNotColonToken = negate(isColonToken)\nexport const isNotOpeningParenToken = negate(isOpeningParenToken)\nexport const isNotClosingParenToken = negate(isClosingParenToken)\nexport const isNotOpeningBracketToken = negate(isOpeningBracketToken)\nexport const isNotClosingBracketToken = negate(isClosingBracketToken)\nexport const isNotOpeningBraceToken = negate(isOpeningBraceToken)\nexport const isNotClosingBraceToken = negate(isClosingBraceToken)\nexport const isNotCommentToken = negate(isCommentToken)\n","import { isArrowToken, isOpeningParenToken } from \"./token-predicate\"\n\n/**\n * Get the `(` token of the given function node.\n * @param {Node} node - The function node to get.\n * @param {SourceCode} sourceCode - The source code object to get tokens.\n * @returns {Token} `(` token.\n */\nfunction getOpeningParenOfParams(node, sourceCode) {\n return node.id\n ? sourceCode.getTokenAfter(node.id, isOpeningParenToken)\n : sourceCode.getFirstToken(node, isOpeningParenToken)\n}\n\n/**\n * Get the location of the given function node for reporting.\n * @param {Node} node - The function node to get.\n * @param {SourceCode} sourceCode - The source code object to get tokens.\n * @returns {string} The location of the function node for reporting.\n */\nexport function getFunctionHeadLocation(node, sourceCode) {\n const parent = node.parent\n let start = null\n let end = null\n\n if (node.type === \"ArrowFunctionExpression\") {\n const arrowToken = sourceCode.getTokenBefore(node.body, isArrowToken)\n\n start = arrowToken.loc.start\n end = arrowToken.loc.end\n } else if (\n parent.type === \"Property\" ||\n parent.type === \"MethodDefinition\"\n ) {\n start = parent.loc.start\n end = getOpeningParenOfParams(node, sourceCode).loc.start\n } else {\n start = node.loc.start\n end = getOpeningParenOfParams(node, sourceCode).loc.start\n }\n\n return {\n start: Object.assign({}, start),\n end: Object.assign({}, end),\n }\n}\n","/* globals BigInt, globalThis, global, self, window */\n\nimport { findVariable } from \"./find-variable\"\n\nconst globalObject =\n typeof globalThis !== \"undefined\"\n ? globalThis\n : typeof self !== \"undefined\"\n ? self\n : typeof window !== \"undefined\"\n ? window\n : typeof global !== \"undefined\"\n ? global\n : {}\n\nconst builtinNames = Object.freeze(\n new Set([\n \"Array\",\n \"ArrayBuffer\",\n \"BigInt\",\n \"BigInt64Array\",\n \"BigUint64Array\",\n \"Boolean\",\n \"DataView\",\n \"Date\",\n \"decodeURI\",\n \"decodeURIComponent\",\n \"encodeURI\",\n \"encodeURIComponent\",\n \"escape\",\n \"Float32Array\",\n \"Float64Array\",\n \"Function\",\n \"Infinity\",\n \"Int16Array\",\n \"Int32Array\",\n \"Int8Array\",\n \"isFinite\",\n \"isNaN\",\n \"isPrototypeOf\",\n \"JSON\",\n \"Map\",\n \"Math\",\n \"NaN\",\n \"Number\",\n \"Object\",\n \"parseFloat\",\n \"parseInt\",\n \"Promise\",\n \"Proxy\",\n \"Reflect\",\n \"RegExp\",\n \"Set\",\n \"String\",\n \"Symbol\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"undefined\",\n \"unescape\",\n \"WeakMap\",\n \"WeakSet\",\n ])\n)\nconst callAllowed = new Set(\n [\n Array.isArray,\n typeof BigInt === \"function\" ? BigInt : undefined,\n Boolean,\n Date,\n Date.parse,\n decodeURI,\n decodeURIComponent,\n encodeURI,\n encodeURIComponent,\n escape,\n isFinite,\n isNaN,\n isPrototypeOf,\n ...Object.getOwnPropertyNames(Math)\n .map(k => Math[k])\n .filter(f => typeof f === \"function\"),\n Number,\n Number.isFinite,\n Number.isNaN,\n Number.parseFloat,\n Number.parseInt,\n Object,\n Object.entries,\n Object.is,\n Object.isExtensible,\n Object.isFrozen,\n Object.isSealed,\n Object.keys,\n Object.values,\n parseFloat,\n parseInt,\n RegExp,\n String,\n String.fromCharCode,\n String.fromCodePoint,\n String.raw,\n Symbol,\n Symbol.for,\n Symbol.keyFor,\n unescape,\n ].filter(f => typeof f === \"function\")\n)\nconst callPassThrough = new Set([\n Object.freeze,\n Object.preventExtensions,\n Object.seal,\n])\n\n/**\n * Get the property descriptor.\n * @param {object} object The object to get.\n * @param {string|number|symbol} name The property name to get.\n */\nfunction getPropertyDescriptor(object, name) {\n let x = object\n while ((typeof x === \"object\" || typeof x === \"function\") && x !== null) {\n const d = Object.getOwnPropertyDescriptor(x, name)\n if (d) {\n return d\n }\n x = Object.getPrototypeOf(x)\n }\n return null\n}\n\n/**\n * Check if a property is getter or not.\n * @param {object} object The object to check.\n * @param {string|number|symbol} name The property name to check.\n */\nfunction isGetter(object, name) {\n const d = getPropertyDescriptor(object, name)\n return d != null && d.get != null\n}\n\n/**\n * Get the element values of a given node list.\n * @param {Node[]} nodeList The node list to get values.\n * @param {Scope|undefined} initialScope The initial scope to find variables.\n * @returns {any[]|null} The value list if all nodes are constant. Otherwise, null.\n */\nfunction getElementValues(nodeList, initialScope) {\n const valueList = []\n\n for (let i = 0; i < nodeList.length; ++i) {\n const elementNode = nodeList[i]\n\n if (elementNode == null) {\n valueList.length = i + 1\n } else if (elementNode.type === \"SpreadElement\") {\n const argument = getStaticValueR(elementNode.argument, initialScope)\n if (argument == null) {\n return null\n }\n valueList.push(...argument.value)\n } else {\n const element = getStaticValueR(elementNode, initialScope)\n if (element == null) {\n return null\n }\n valueList.push(element.value)\n }\n }\n\n return valueList\n}\n\nconst operations = Object.freeze({\n ArrayExpression(node, initialScope) {\n const elements = getElementValues(node.elements, initialScope)\n return elements != null ? { value: elements } : null\n },\n\n AssignmentExpression(node, initialScope) {\n if (node.operator === \"=\") {\n return getStaticValueR(node.right, initialScope)\n }\n return null\n },\n\n //eslint-disable-next-line complexity\n BinaryExpression(node, initialScope) {\n if (node.operator === \"in\" || node.operator === \"instanceof\") {\n // Not supported.\n return null\n }\n\n const left = getStaticValueR(node.left, initialScope)\n const right = getStaticValueR(node.right, initialScope)\n if (left != null && right != null) {\n switch (node.operator) {\n case \"==\":\n return { value: left.value == right.value } //eslint-disable-line eqeqeq\n case \"!=\":\n return { value: left.value != right.value } //eslint-disable-line eqeqeq\n case \"===\":\n return { value: left.value === right.value }\n case \"!==\":\n return { value: left.value !== right.value }\n case \"<\":\n return { value: left.value < right.value }\n case \"<=\":\n return { value: left.value <= right.value }\n case \">\":\n return { value: left.value > right.value }\n case \">=\":\n return { value: left.value >= right.value }\n case \"<<\":\n return { value: left.value << right.value }\n case \">>\":\n return { value: left.value >> right.value }\n case \">>>\":\n return { value: left.value >>> right.value }\n case \"+\":\n return { value: left.value + right.value }\n case \"-\":\n return { value: left.value - right.value }\n case \"*\":\n return { value: left.value * right.value }\n case \"/\":\n return { value: left.value / right.value }\n case \"%\":\n return { value: left.value % right.value }\n case \"**\":\n return { value: Math.pow(left.value, right.value) }\n case \"|\":\n return { value: left.value | right.value }\n case \"^\":\n return { value: left.value ^ right.value }\n case \"&\":\n return { value: left.value & right.value }\n\n // no default\n }\n }\n\n return null\n },\n\n CallExpression(node, initialScope) {\n const calleeNode = node.callee\n const args = getElementValues(node.arguments, initialScope)\n\n if (args != null) {\n if (calleeNode.type === \"MemberExpression\") {\n const object = getStaticValueR(calleeNode.object, initialScope)\n const property = calleeNode.computed\n ? getStaticValueR(calleeNode.property, initialScope)\n : { value: calleeNode.property.name }\n\n if (object != null && property != null) {\n const receiver = object.value\n const methodName = property.value\n if (callAllowed.has(receiver[methodName])) {\n return { value: receiver[methodName](...args) }\n }\n if (callPassThrough.has(receiver[methodName])) {\n return { value: args[0] }\n }\n }\n } else {\n const callee = getStaticValueR(calleeNode, initialScope)\n if (callee != null) {\n const func = callee.value\n if (callAllowed.has(func)) {\n return { value: func(...args) }\n }\n if (callPassThrough.has(func)) {\n return { value: args[0] }\n }\n }\n }\n }\n\n return null\n },\n\n ConditionalExpression(node, initialScope) {\n const test = getStaticValueR(node.test, initialScope)\n if (test != null) {\n return test.value\n ? getStaticValueR(node.consequent, initialScope)\n : getStaticValueR(node.alternate, initialScope)\n }\n return null\n },\n\n ExpressionStatement(node, initialScope) {\n return getStaticValueR(node.expression, initialScope)\n },\n\n Identifier(node, initialScope) {\n if (initialScope != null) {\n const variable = findVariable(initialScope, node)\n\n // Built-in globals.\n if (\n variable != null &&\n variable.defs.length === 0 &&\n builtinNames.has(variable.name) &&\n variable.name in globalObject\n ) {\n return { value: globalObject[variable.name] }\n }\n\n // Constants.\n if (variable != null && variable.defs.length === 1) {\n const def = variable.defs[0]\n if (\n def.parent &&\n def.parent.kind === \"const\" &&\n // TODO(mysticatea): don't support destructuring here.\n def.node.id.type === \"Identifier\"\n ) {\n return getStaticValueR(def.node.init, initialScope)\n }\n }\n }\n return null\n },\n\n Literal(node) {\n //istanbul ignore if : this is implementation-specific behavior.\n if ((node.regex != null || node.bigint != null) && node.value == null) {\n // It was a RegExp/BigInt literal, but Node.js didn't support it.\n return null\n }\n return { value: node.value }\n },\n\n LogicalExpression(node, initialScope) {\n const left = getStaticValueR(node.left, initialScope)\n if (left != null) {\n if (\n (node.operator === \"||\" && Boolean(left.value) === true) ||\n (node.operator === \"&&\" && Boolean(left.value) === false)\n ) {\n return left\n }\n\n const right = getStaticValueR(node.right, initialScope)\n if (right != null) {\n return right\n }\n }\n\n return null\n },\n\n MemberExpression(node, initialScope) {\n const object = getStaticValueR(node.object, initialScope)\n const property = node.computed\n ? getStaticValueR(node.property, initialScope)\n : { value: node.property.name }\n\n if (\n object != null &&\n property != null &&\n !isGetter(object.value, property.value)\n ) {\n return { value: object.value[property.value] }\n }\n return null\n },\n\n NewExpression(node, initialScope) {\n const callee = getStaticValueR(node.callee, initialScope)\n const args = getElementValues(node.arguments, initialScope)\n\n if (callee != null && args != null) {\n const Func = callee.value\n if (callAllowed.has(Func)) {\n return { value: new Func(...args) }\n }\n }\n\n return null\n },\n\n ObjectExpression(node, initialScope) {\n const object = {}\n\n for (const propertyNode of node.properties) {\n if (propertyNode.type === \"Property\") {\n if (propertyNode.kind !== \"init\") {\n return null\n }\n const key = propertyNode.computed\n ? getStaticValueR(propertyNode.key, initialScope)\n : { value: propertyNode.key.name }\n const value = getStaticValueR(propertyNode.value, initialScope)\n if (key == null || value == null) {\n return null\n }\n object[key.value] = value.value\n } else if (\n propertyNode.type === \"SpreadElement\" ||\n propertyNode.type === \"ExperimentalSpreadProperty\"\n ) {\n const argument = getStaticValueR(\n propertyNode.argument,\n initialScope\n )\n if (argument == null) {\n return null\n }\n Object.assign(object, argument.value)\n } else {\n return null\n }\n }\n\n return { value: object }\n },\n\n SequenceExpression(node, initialScope) {\n const last = node.expressions[node.expressions.length - 1]\n return getStaticValueR(last, initialScope)\n },\n\n TaggedTemplateExpression(node, initialScope) {\n const tag = getStaticValueR(node.tag, initialScope)\n const expressions = getElementValues(\n node.quasi.expressions,\n initialScope\n )\n\n if (tag != null && expressions != null) {\n const func = tag.value\n const strings = node.quasi.quasis.map(q => q.value.cooked)\n strings.raw = node.quasi.quasis.map(q => q.value.raw)\n\n if (func === String.raw) {\n return { value: func(strings, ...expressions) }\n }\n }\n\n return null\n },\n\n TemplateLiteral(node, initialScope) {\n const expressions = getElementValues(node.expressions, initialScope)\n if (expressions != null) {\n let value = node.quasis[0].value.cooked\n for (let i = 0; i < expressions.length; ++i) {\n value += expressions[i]\n value += node.quasis[i + 1].value.cooked\n }\n return { value }\n }\n return null\n },\n\n UnaryExpression(node, initialScope) {\n if (node.operator === \"delete\") {\n // Not supported.\n return null\n }\n if (node.operator === \"void\") {\n return { value: undefined }\n }\n\n const arg = getStaticValueR(node.argument, initialScope)\n if (arg != null) {\n switch (node.operator) {\n case \"-\":\n return { value: -arg.value }\n case \"+\":\n return { value: +arg.value } //eslint-disable-line no-implicit-coercion\n case \"!\":\n return { value: !arg.value }\n case \"~\":\n return { value: ~arg.value }\n case \"typeof\":\n return { value: typeof arg.value }\n\n // no default\n }\n }\n\n return null\n },\n})\n\n/**\n * Get the value of a given node if it's a static value.\n * @param {Node} node The node to get.\n * @param {Scope|undefined} initialScope The scope to start finding variable.\n * @returns {{value:any}|null} The static value of the node, or `null`.\n */\nfunction getStaticValueR(node, initialScope) {\n if (node != null && Object.hasOwnProperty.call(operations, node.type)) {\n return operations[node.type](node, initialScope)\n }\n return null\n}\n\n/**\n * Get the value of a given node if it's a static value.\n * @param {Node} node The node to get.\n * @param {Scope} [initialScope] The scope to start finding variable. Optional. If this scope was given, this tries to resolve identifier references which are in the given node as much as possible.\n * @returns {{value:any}|null} The static value of the node, or `null`.\n */\nexport function getStaticValue(node, initialScope = null) {\n try {\n return getStaticValueR(node, initialScope)\n } catch (_error) {\n return null\n }\n}\n","import { getStaticValue } from \"./get-static-value\"\n\n/**\n * Get the value of a given node if it's a literal or a template literal.\n * @param {Node} node The node to get.\n * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is an Identifier node and this scope was given, this checks the variable of the identifier, and returns the value of it if the variable is a constant.\n * @returns {string|null} The value of the node, or `null`.\n */\nexport function getStringIfConstant(node, initialScope = null) {\n // Handle the literals that the platform doesn't support natively.\n if (node && node.type === \"Literal\" && node.value === null) {\n if (node.regex) {\n return `/${node.regex.pattern}/${node.regex.flags}`\n }\n if (node.bigint) {\n return node.bigint\n }\n }\n\n const evaluated = getStaticValue(node, initialScope)\n return evaluated && String(evaluated.value)\n}\n","import { getStringIfConstant } from \"./get-string-if-constant\"\n\n/**\n * Get the property name from a MemberExpression node or a Property node.\n * @param {Node} node The node to get.\n * @param {Scope} [initialScope] The scope to start finding variable. Optional. If the node is a computed property node and this scope was given, this checks the computed property name by the `getStringIfConstant` function with the scope, and returns the value of it.\n * @returns {string|null} The property name of the node.\n */\nexport function getPropertyName(node, initialScope) {\n switch (node.type) {\n case \"MemberExpression\":\n if (node.computed) {\n return getStringIfConstant(node.property, initialScope)\n }\n return node.property.name\n\n case \"Property\":\n case \"MethodDefinition\":\n if (node.computed) {\n return getStringIfConstant(node.key, initialScope)\n }\n if (node.key.type === \"Literal\") {\n return String(node.key.value)\n }\n return node.key.name\n\n // no default\n }\n\n return null\n}\n","import { getPropertyName } from \"./get-property-name\"\n\n/**\n * Get the name and kind of the given function node.\n * @param {ASTNode} node - The function node to get.\n * @returns {string} The name and kind of the function node.\n */\nexport function getFunctionNameWithKind(node) {\n const parent = node.parent\n const tokens = []\n\n if (parent.type === \"MethodDefinition\" && parent.static) {\n tokens.push(\"static\")\n }\n if (node.async) {\n tokens.push(\"async\")\n }\n if (node.generator) {\n tokens.push(\"generator\")\n }\n\n if (node.type === \"ArrowFunctionExpression\") {\n tokens.push(\"arrow\", \"function\")\n } else if (\n parent.type === \"Property\" ||\n parent.type === \"MethodDefinition\"\n ) {\n if (parent.kind === \"constructor\") {\n return \"constructor\"\n }\n if (parent.kind === \"get\") {\n tokens.push(\"getter\")\n } else if (parent.kind === \"set\") {\n tokens.push(\"setter\")\n } else {\n tokens.push(\"method\")\n }\n } else {\n tokens.push(\"function\")\n }\n\n if (node.id) {\n tokens.push(`'${node.id.name}'`)\n } else {\n const name = getPropertyName(parent)\n\n if (name) {\n tokens.push(`'${name}'`)\n }\n }\n\n return tokens.join(\" \")\n}\n","import evk from \"eslint-visitor-keys\"\n\nconst typeConversionBinaryOps = Object.freeze(\n new Set([\n \"==\",\n \"!=\",\n \"<\",\n \"<=\",\n \">\",\n \">=\",\n \"<<\",\n \">>\",\n \">>>\",\n \"+\",\n \"-\",\n \"*\",\n \"/\",\n \"%\",\n \"|\",\n \"^\",\n \"&\",\n \"in\",\n ])\n)\nconst typeConversionUnaryOps = Object.freeze(new Set([\"-\", \"+\", \"!\", \"~\"]))\nconst visitor = Object.freeze(\n Object.assign(Object.create(null), {\n $visit(node, options, visitorKeys) {\n const { type } = node\n\n if (typeof this[type] === \"function\") {\n return this[type](node, options, visitorKeys)\n }\n\n return this.$visitChildren(node, options, visitorKeys)\n },\n\n $visitChildren(node, options, visitorKeys) {\n const { type } = node\n\n for (const key of visitorKeys[type] || evk.getKeys(node)) {\n const value = node[key]\n\n if (Array.isArray(value)) {\n for (const element of value) {\n if (\n element &&\n this.$visit(element, options, visitorKeys)\n ) {\n return true\n }\n }\n } else if (value && this.$visit(value, options, visitorKeys)) {\n return true\n }\n }\n\n return false\n },\n\n ArrowFunctionExpression() {\n return false\n },\n AssignmentExpression() {\n return true\n },\n AwaitExpression() {\n return true\n },\n BinaryExpression(node, options, visitorKeys) {\n if (\n options.considerImplicitTypeConversion &&\n typeConversionBinaryOps.has(node.operator) &&\n (node.left.type !== \"Literal\" || node.right.type !== \"Literal\")\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n CallExpression() {\n return true\n },\n FunctionExpression() {\n return false\n },\n ImportExpression() {\n return true\n },\n MemberExpression(node, options, visitorKeys) {\n if (options.considerGetters) {\n return true\n }\n if (\n options.considerImplicitTypeConversion &&\n node.computed &&\n node.property.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n MethodDefinition(node, options, visitorKeys) {\n if (\n options.considerImplicitTypeConversion &&\n node.computed &&\n node.key.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n NewExpression() {\n return true\n },\n Property(node, options, visitorKeys) {\n if (\n options.considerImplicitTypeConversion &&\n node.computed &&\n node.key.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n UnaryExpression(node, options, visitorKeys) {\n if (node.operator === \"delete\") {\n return true\n }\n if (\n options.considerImplicitTypeConversion &&\n typeConversionUnaryOps.has(node.operator) &&\n node.argument.type !== \"Literal\"\n ) {\n return true\n }\n return this.$visitChildren(node, options, visitorKeys)\n },\n UpdateExpression() {\n return true\n },\n YieldExpression() {\n return true\n },\n })\n)\n\n/**\n * Check whether a given node has any side effect or not.\n * @param {Node} node The node to get.\n * @param {SourceCode} sourceCode The source code object.\n * @param {object} [options] The option object.\n * @param {boolean} [options.considerGetters=false] If `true` then it considers member accesses as the node which has side effects.\n * @param {boolean} [options.considerImplicitTypeConversion=false] If `true` then it considers implicit type conversion as the node which has side effects.\n * @param {object} [options.visitorKeys=evk.KEYS] The keys to traverse nodes. Use `context.getSourceCode().visitorKeys`.\n * @returns {boolean} `true` if the node has a certain side effect.\n */\nexport function hasSideEffect(\n node,\n sourceCode,\n { considerGetters = false, considerImplicitTypeConversion = false } = {}\n) {\n return visitor.$visit(\n node,\n { considerGetters, considerImplicitTypeConversion },\n sourceCode.visitorKeys || evk.KEYS\n )\n}\n","import { isClosingParenToken, isOpeningParenToken } from \"./token-predicate\"\n\n/**\n * Get the left parenthesis of the parent node syntax if it exists.\n * E.g., `if (a) {}` then the `(`.\n * @param {Node} node The AST node to check.\n * @param {SourceCode} sourceCode The source code object to get tokens.\n * @returns {Token|null} The left parenthesis of the parent node syntax\n */\nfunction getParentSyntaxParen(node, sourceCode) {\n const parent = node.parent\n\n switch (parent.type) {\n case \"CallExpression\":\n case \"NewExpression\":\n if (parent.arguments.length === 1 && parent.arguments[0] === node) {\n return sourceCode.getTokenAfter(\n parent.callee,\n isOpeningParenToken\n )\n }\n return null\n\n case \"DoWhileStatement\":\n if (parent.test === node) {\n return sourceCode.getTokenAfter(\n parent.body,\n isOpeningParenToken\n )\n }\n return null\n\n case \"IfStatement\":\n case \"WhileStatement\":\n if (parent.test === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n case \"ImportExpression\":\n if (parent.source === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n case \"SwitchStatement\":\n if (parent.discriminant === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n case \"WithStatement\":\n if (parent.object === node) {\n return sourceCode.getFirstToken(parent, 1)\n }\n return null\n\n default:\n return null\n }\n}\n\n/**\n * Check whether a given node is parenthesized or not.\n * @param {number} times The number of parantheses.\n * @param {Node} node The AST node to check.\n * @param {SourceCode} sourceCode The source code object to get tokens.\n * @returns {boolean} `true` if the node is parenthesized the given times.\n */\n/**\n * Check whether a given node is parenthesized or not.\n * @param {Node} node The AST node to check.\n * @param {SourceCode} sourceCode The source code object to get tokens.\n * @returns {boolean} `true` if the node is parenthesized.\n */\nexport function isParenthesized(\n timesOrNode,\n nodeOrSourceCode,\n optionalSourceCode\n) {\n let times, node, sourceCode, maybeLeftParen, maybeRightParen\n if (typeof timesOrNode === \"number\") {\n times = timesOrNode | 0\n node = nodeOrSourceCode\n sourceCode = optionalSourceCode\n if (!(times >= 1)) {\n throw new TypeError(\"'times' should be a positive integer.\")\n }\n } else {\n times = 1\n node = timesOrNode\n sourceCode = nodeOrSourceCode\n }\n\n if (node == null) {\n return false\n }\n\n maybeLeftParen = maybeRightParen = node\n do {\n maybeLeftParen = sourceCode.getTokenBefore(maybeLeftParen)\n maybeRightParen = sourceCode.getTokenAfter(maybeRightParen)\n } while (\n maybeLeftParen != null &&\n maybeRightParen != null &&\n isOpeningParenToken(maybeLeftParen) &&\n isClosingParenToken(maybeRightParen) &&\n // Avoid false positive such as `if (a) {}`\n maybeLeftParen !== getParentSyntaxParen(node, sourceCode) &&\n --times > 0\n )\n\n return times === 0\n}\n","/**\n * @author Toru Nagashima \n * See LICENSE file in root directory for full license.\n */\n\nconst placeholder = /\\$(?:[$&`']|[1-9][0-9]?)/gu\n\n/** @type {WeakMap} */\nconst internal = new WeakMap()\n\n/**\n * Check whether a given character is escaped or not.\n * @param {string} str The string to check.\n * @param {number} index The location of the character to check.\n * @returns {boolean} `true` if the character is escaped.\n */\nfunction isEscaped(str, index) {\n let escaped = false\n for (let i = index - 1; i >= 0 && str.charCodeAt(i) === 0x5c; --i) {\n escaped = !escaped\n }\n return escaped\n}\n\n/**\n * Replace a given string by a given matcher.\n * @param {PatternMatcher} matcher The pattern matcher.\n * @param {string} str The string to be replaced.\n * @param {string} replacement The new substring to replace each matched part.\n * @returns {string} The replaced string.\n */\nfunction replaceS(matcher, str, replacement) {\n const chunks = []\n let index = 0\n\n /** @type {RegExpExecArray} */\n let match = null\n\n /**\n * @param {string} key The placeholder.\n * @returns {string} The replaced string.\n */\n function replacer(key) {\n switch (key) {\n case \"$$\":\n return \"$\"\n case \"$&\":\n return match[0]\n case \"$`\":\n return str.slice(0, match.index)\n case \"$'\":\n return str.slice(match.index + match[0].length)\n default: {\n const i = key.slice(1)\n if (i in match) {\n return match[i]\n }\n return key\n }\n }\n }\n\n for (match of matcher.execAll(str)) {\n chunks.push(str.slice(index, match.index))\n chunks.push(replacement.replace(placeholder, replacer))\n index = match.index + match[0].length\n }\n chunks.push(str.slice(index))\n\n return chunks.join(\"\")\n}\n\n/**\n * Replace a given string by a given matcher.\n * @param {PatternMatcher} matcher The pattern matcher.\n * @param {string} str The string to be replaced.\n * @param {(...strs[])=>string} replace The function to replace each matched part.\n * @returns {string} The replaced string.\n */\nfunction replaceF(matcher, str, replace) {\n const chunks = []\n let index = 0\n\n for (const match of matcher.execAll(str)) {\n chunks.push(str.slice(index, match.index))\n chunks.push(String(replace(...match, match.index, match.input)))\n index = match.index + match[0].length\n }\n chunks.push(str.slice(index))\n\n return chunks.join(\"\")\n}\n\n/**\n * The class to find patterns as considering escape sequences.\n */\nexport class PatternMatcher {\n /**\n * Initialize this matcher.\n * @param {RegExp} pattern The pattern to match.\n * @param {{escaped:boolean}} options The options.\n */\n constructor(pattern, { escaped = false } = {}) {\n if (!(pattern instanceof RegExp)) {\n throw new TypeError(\"'pattern' should be a RegExp instance.\")\n }\n if (!pattern.flags.includes(\"g\")) {\n throw new Error(\"'pattern' should contains 'g' flag.\")\n }\n\n internal.set(this, {\n pattern: new RegExp(pattern.source, pattern.flags),\n escaped: Boolean(escaped),\n })\n }\n\n /**\n * Find the pattern in a given string.\n * @param {string} str The string to find.\n * @returns {IterableIterator} The iterator which iterate the matched information.\n */\n *execAll(str) {\n const { pattern, escaped } = internal.get(this)\n let match = null\n let lastIndex = 0\n\n pattern.lastIndex = 0\n while ((match = pattern.exec(str)) != null) {\n if (escaped || !isEscaped(str, match.index)) {\n lastIndex = pattern.lastIndex\n yield match\n pattern.lastIndex = lastIndex\n }\n }\n }\n\n /**\n * Check whether the pattern is found in a given string.\n * @param {string} str The string to check.\n * @returns {boolean} `true` if the pattern was found in the string.\n */\n test(str) {\n const it = this.execAll(str)\n const ret = it.next()\n return !ret.done\n }\n\n /**\n * Replace a given string.\n * @param {string} str The string to be replaced.\n * @param {(string|((...strs:string[])=>string))} replacer The string or function to replace. This is the same as the 2nd argument of `String.prototype.replace`.\n * @returns {string} The replaced string.\n */\n [Symbol.replace](str, replacer) {\n return typeof replacer === \"function\"\n ? replaceF(this, String(str), replacer)\n : replaceS(this, String(str), String(replacer))\n }\n}\n","import { findVariable } from \"./find-variable\"\nimport { getPropertyName } from \"./get-property-name\"\nimport { getStringIfConstant } from \"./get-string-if-constant\"\n\nconst IMPORT_TYPE = /^(?:Import|Export(?:All|Default|Named))Declaration$/u\nconst has = Function.call.bind(Object.hasOwnProperty)\n\nexport const READ = Symbol(\"read\")\nexport const CALL = Symbol(\"call\")\nexport const CONSTRUCT = Symbol(\"construct\")\nexport const ESM = Symbol(\"esm\")\n\nconst requireCall = { require: { [CALL]: true } }\n\n/**\n * Check whether a given variable is modified or not.\n * @param {Variable} variable The variable to check.\n * @returns {boolean} `true` if the variable is modified.\n */\nfunction isModifiedGlobal(variable) {\n return (\n variable == null ||\n variable.defs.length !== 0 ||\n variable.references.some(r => r.isWrite())\n )\n}\n\n/**\n * Check if the value of a given node is passed through to the parent syntax as-is.\n * For example, `a` and `b` in (`a || b` and `c ? a : b`) are passed through.\n * @param {Node} node A node to check.\n * @returns {boolean} `true` if the node is passed through.\n */\nfunction isPassThrough(node) {\n const parent = node.parent\n\n switch (parent && parent.type) {\n case \"ConditionalExpression\":\n return parent.consequent === node || parent.alternate === node\n case \"LogicalExpression\":\n return true\n case \"SequenceExpression\":\n return parent.expressions[parent.expressions.length - 1] === node\n\n default:\n return false\n }\n}\n\n/**\n * The reference tracker.\n */\nexport class ReferenceTracker {\n /**\n * Initialize this tracker.\n * @param {Scope} globalScope The global scope.\n * @param {object} [options] The options.\n * @param {\"legacy\"|\"strict\"} [options.mode=\"strict\"] The mode to determine the ImportDeclaration's behavior for CJS modules.\n * @param {string[]} [options.globalObjectNames=[\"global\",\"self\",\"window\"]] The variable names for Global Object.\n */\n constructor(\n globalScope,\n {\n mode = \"strict\",\n globalObjectNames = [\"global\", \"self\", \"window\"],\n } = {}\n ) {\n this.variableStack = []\n this.globalScope = globalScope\n this.mode = mode\n this.globalObjectNames = globalObjectNames.slice(0)\n }\n\n /**\n * Iterate the references of global variables.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *iterateGlobalReferences(traceMap) {\n for (const key of Object.keys(traceMap)) {\n const nextTraceMap = traceMap[key]\n const path = [key]\n const variable = this.globalScope.set.get(key)\n\n if (isModifiedGlobal(variable)) {\n continue\n }\n\n yield* this._iterateVariableReferences(\n variable,\n path,\n nextTraceMap,\n true\n )\n }\n\n for (const key of this.globalObjectNames) {\n const path = []\n const variable = this.globalScope.set.get(key)\n\n if (isModifiedGlobal(variable)) {\n continue\n }\n\n yield* this._iterateVariableReferences(\n variable,\n path,\n traceMap,\n false\n )\n }\n }\n\n /**\n * Iterate the references of CommonJS modules.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *iterateCjsReferences(traceMap) {\n for (const { node } of this.iterateGlobalReferences(requireCall)) {\n const key = getStringIfConstant(node.arguments[0])\n if (key == null || !has(traceMap, key)) {\n continue\n }\n\n const nextTraceMap = traceMap[key]\n const path = [key]\n\n if (nextTraceMap[READ]) {\n yield {\n node,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iteratePropertyReferences(node, path, nextTraceMap)\n }\n }\n\n /**\n * Iterate the references of ES modules.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *iterateEsmReferences(traceMap) {\n const programNode = this.globalScope.block\n\n for (const node of programNode.body) {\n if (!IMPORT_TYPE.test(node.type) || node.source == null) {\n continue\n }\n const moduleId = node.source.value\n\n if (!has(traceMap, moduleId)) {\n continue\n }\n const nextTraceMap = traceMap[moduleId]\n const path = [moduleId]\n\n if (nextTraceMap[READ]) {\n yield { node, path, type: READ, info: nextTraceMap[READ] }\n }\n\n if (node.type === \"ExportAllDeclaration\") {\n for (const key of Object.keys(nextTraceMap)) {\n const exportTraceMap = nextTraceMap[key]\n if (exportTraceMap[READ]) {\n yield {\n node,\n path: path.concat(key),\n type: READ,\n info: exportTraceMap[READ],\n }\n }\n }\n } else {\n for (const specifier of node.specifiers) {\n const esm = has(nextTraceMap, ESM)\n const it = this._iterateImportReferences(\n specifier,\n path,\n esm\n ? nextTraceMap\n : this.mode === \"legacy\"\n ? Object.assign(\n { default: nextTraceMap },\n nextTraceMap\n )\n : { default: nextTraceMap }\n )\n\n if (esm) {\n yield* it\n } else {\n for (const report of it) {\n report.path = report.path.filter(exceptDefault)\n if (\n report.path.length >= 2 ||\n report.type !== READ\n ) {\n yield report\n }\n }\n }\n }\n }\n }\n }\n\n /**\n * Iterate the references for a given variable.\n * @param {Variable} variable The variable to iterate that references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @param {boolean} shouldReport = The flag to report those references.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *_iterateVariableReferences(variable, path, traceMap, shouldReport) {\n if (this.variableStack.includes(variable)) {\n return\n }\n this.variableStack.push(variable)\n try {\n for (const reference of variable.references) {\n if (!reference.isRead()) {\n continue\n }\n const node = reference.identifier\n\n if (shouldReport && traceMap[READ]) {\n yield { node, path, type: READ, info: traceMap[READ] }\n }\n yield* this._iteratePropertyReferences(node, path, traceMap)\n }\n } finally {\n this.variableStack.pop()\n }\n }\n\n /**\n * Iterate the references for a given AST node.\n * @param rootNode The AST node to iterate references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n //eslint-disable-next-line complexity\n *_iteratePropertyReferences(rootNode, path, traceMap) {\n let node = rootNode\n while (isPassThrough(node)) {\n node = node.parent\n }\n\n const parent = node.parent\n if (parent.type === \"MemberExpression\") {\n if (parent.object === node) {\n const key = getPropertyName(parent)\n if (key == null || !has(traceMap, key)) {\n return\n }\n\n path = path.concat(key) //eslint-disable-line no-param-reassign\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: parent,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iteratePropertyReferences(\n parent,\n path,\n nextTraceMap\n )\n }\n return\n }\n if (parent.type === \"CallExpression\") {\n if (parent.callee === node && traceMap[CALL]) {\n yield { node: parent, path, type: CALL, info: traceMap[CALL] }\n }\n return\n }\n if (parent.type === \"NewExpression\") {\n if (parent.callee === node && traceMap[CONSTRUCT]) {\n yield {\n node: parent,\n path,\n type: CONSTRUCT,\n info: traceMap[CONSTRUCT],\n }\n }\n return\n }\n if (parent.type === \"AssignmentExpression\") {\n if (parent.right === node) {\n yield* this._iterateLhsReferences(parent.left, path, traceMap)\n yield* this._iteratePropertyReferences(parent, path, traceMap)\n }\n return\n }\n if (parent.type === \"AssignmentPattern\") {\n if (parent.right === node) {\n yield* this._iterateLhsReferences(parent.left, path, traceMap)\n }\n return\n }\n if (parent.type === \"VariableDeclarator\") {\n if (parent.init === node) {\n yield* this._iterateLhsReferences(parent.id, path, traceMap)\n }\n }\n }\n\n /**\n * Iterate the references for a given Pattern node.\n * @param {Node} patternNode The Pattern node to iterate references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *_iterateLhsReferences(patternNode, path, traceMap) {\n if (patternNode.type === \"Identifier\") {\n const variable = findVariable(this.globalScope, patternNode)\n if (variable != null) {\n yield* this._iterateVariableReferences(\n variable,\n path,\n traceMap,\n false\n )\n }\n return\n }\n if (patternNode.type === \"ObjectPattern\") {\n for (const property of patternNode.properties) {\n const key = getPropertyName(property)\n\n if (key == null || !has(traceMap, key)) {\n continue\n }\n\n const nextPath = path.concat(key)\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: property,\n path: nextPath,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iterateLhsReferences(\n property.value,\n nextPath,\n nextTraceMap\n )\n }\n return\n }\n if (patternNode.type === \"AssignmentPattern\") {\n yield* this._iterateLhsReferences(patternNode.left, path, traceMap)\n }\n }\n\n /**\n * Iterate the references for a given ModuleSpecifier node.\n * @param {Node} specifierNode The ModuleSpecifier node to iterate references.\n * @param {string[]} path The current path.\n * @param {object} traceMap The trace map.\n * @returns {IterableIterator<{node:Node,path:string[],type:symbol,info:any}>} The iterator to iterate references.\n */\n *_iterateImportReferences(specifierNode, path, traceMap) {\n const type = specifierNode.type\n\n if (type === \"ImportSpecifier\" || type === \"ImportDefaultSpecifier\") {\n const key =\n type === \"ImportDefaultSpecifier\"\n ? \"default\"\n : specifierNode.imported.name\n if (!has(traceMap, key)) {\n return\n }\n\n path = path.concat(key) //eslint-disable-line no-param-reassign\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: specifierNode,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n yield* this._iterateVariableReferences(\n findVariable(this.globalScope, specifierNode.local),\n path,\n nextTraceMap,\n false\n )\n\n return\n }\n\n if (type === \"ImportNamespaceSpecifier\") {\n yield* this._iterateVariableReferences(\n findVariable(this.globalScope, specifierNode.local),\n path,\n traceMap,\n false\n )\n return\n }\n\n if (type === \"ExportSpecifier\") {\n const key = specifierNode.local.name\n if (!has(traceMap, key)) {\n return\n }\n\n path = path.concat(key) //eslint-disable-line no-param-reassign\n const nextTraceMap = traceMap[key]\n if (nextTraceMap[READ]) {\n yield {\n node: specifierNode,\n path,\n type: READ,\n info: nextTraceMap[READ],\n }\n }\n }\n }\n}\n\nReferenceTracker.READ = READ\nReferenceTracker.CALL = CALL\nReferenceTracker.CONSTRUCT = CONSTRUCT\nReferenceTracker.ESM = ESM\n\n/**\n * This is a predicate function for Array#filter.\n * @param {string} name A name part.\n * @param {number} index The index of the name.\n * @returns {boolean} `false` if it's default.\n */\nfunction exceptDefault(name, index) {\n return !(index === 1 && name === \"default\")\n}\n","import { findVariable } from \"./find-variable\"\nimport { getFunctionHeadLocation } from \"./get-function-head-location\"\nimport { getFunctionNameWithKind } from \"./get-function-name-with-kind\"\nimport { getInnermostScope } from \"./get-innermost-scope\"\nimport { getPropertyName } from \"./get-property-name\"\nimport { getStaticValue } from \"./get-static-value\"\nimport { getStringIfConstant } from \"./get-string-if-constant\"\nimport { hasSideEffect } from \"./has-side-effect\"\nimport { isParenthesized } from \"./is-parenthesized\"\nimport { PatternMatcher } from \"./pattern-matcher\"\nimport {\n CALL,\n CONSTRUCT,\n ESM,\n READ,\n ReferenceTracker,\n} from \"./reference-tracker\"\nimport {\n isArrowToken,\n isClosingBraceToken,\n isClosingBracketToken,\n isClosingParenToken,\n isColonToken,\n isCommaToken,\n isCommentToken,\n isNotArrowToken,\n isNotClosingBraceToken,\n isNotClosingBracketToken,\n isNotClosingParenToken,\n isNotColonToken,\n isNotCommaToken,\n isNotCommentToken,\n isNotOpeningBraceToken,\n isNotOpeningBracketToken,\n isNotOpeningParenToken,\n isNotSemicolonToken,\n isOpeningBraceToken,\n isOpeningBracketToken,\n isOpeningParenToken,\n isSemicolonToken,\n} from \"./token-predicate\"\n\nexport default {\n CALL,\n CONSTRUCT,\n ESM,\n findVariable,\n getFunctionHeadLocation,\n getFunctionNameWithKind,\n getInnermostScope,\n getPropertyName,\n getStaticValue,\n getStringIfConstant,\n hasSideEffect,\n isArrowToken,\n isClosingBraceToken,\n isClosingBracketToken,\n isClosingParenToken,\n isColonToken,\n isCommaToken,\n isCommentToken,\n isNotArrowToken,\n isNotClosingBraceToken,\n isNotClosingBracketToken,\n isNotClosingParenToken,\n isNotColonToken,\n isNotCommaToken,\n isNotCommentToken,\n isNotOpeningBraceToken,\n isNotOpeningBracketToken,\n isNotOpeningParenToken,\n isNotSemicolonToken,\n isOpeningBraceToken,\n isOpeningBracketToken,\n isOpeningParenToken,\n isParenthesized,\n isSemicolonToken,\n PatternMatcher,\n READ,\n ReferenceTracker,\n}\nexport {\n CALL,\n CONSTRUCT,\n ESM,\n findVariable,\n getFunctionHeadLocation,\n getFunctionNameWithKind,\n getInnermostScope,\n getPropertyName,\n getStaticValue,\n getStringIfConstant,\n hasSideEffect,\n isArrowToken,\n isClosingBraceToken,\n isClosingBracketToken,\n isClosingParenToken,\n isColonToken,\n isCommaToken,\n isCommentToken,\n isNotArrowToken,\n isNotClosingBraceToken,\n isNotClosingBracketToken,\n isNotClosingParenToken,\n isNotColonToken,\n isNotCommaToken,\n isNotCommentToken,\n isNotOpeningBraceToken,\n isNotOpeningBracketToken,\n isNotOpeningParenToken,\n isNotSemicolonToken,\n isOpeningBraceToken,\n isOpeningBracketToken,\n isOpeningParenToken,\n isParenthesized,\n isSemicolonToken,\n PatternMatcher,\n READ,\n ReferenceTracker,\n}\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/package.json deleted file mode 100644 index 8af7d4f7..00000000 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-utils/package.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "name": "eslint-utils", - "version": "1.4.3", - "description": "Utilities for ESLint plugins.", - "engines": { - "node": ">=6" - }, - "sideEffects": false, - "main": "index", - "module": "index.mjs", - "files": [ - "index.*" - ], - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "devDependencies": { - "@mysticatea/eslint-plugin": "^12.0.0", - "codecov": "^3.6.1", - "dot-prop": "^4.2.0", - "eslint": "^6.5.1", - "esm": "^3.2.25", - "espree": "^6.1.1", - "mocha": "^6.2.2", - "npm-run-all": "^4.1.5", - "nyc": "^14.1.1", - "opener": "^1.5.1", - "rimraf": "^3.0.0", - "rollup": "^1.25.0", - "rollup-plugin-sourcemaps": "^0.4.2", - "vuepress": "^1.2.0", - "warun": "^1.0.0" - }, - "scripts": { - "prebuild": "npm run -s clean", - "build": "rollup -c", - "clean": "rimraf .nyc_output coverage index.*", - "codecov": "nyc report -r lcovonly && codecov", - "coverage": "opener ./coverage/lcov-report/index.html", - "docs:build": "vuepress build docs", - "docs:watch": "vuepress dev docs", - "lint": "eslint src test", - "test": "run-s lint build test:mocha", - "test:mocha": "nyc mocha --reporter dot \"test/*.js\"", - "preversion": "npm test && npm run -s build", - "postversion": "git push && git push --tags", - "prewatch": "npm run -s clean", - "watch": "warun \"{src,test}/**/*.js\" -- npm run -s test:mocha" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/mysticatea/eslint-utils.git" - }, - "keywords": [ - "eslint" - ], - "author": "Toru Nagashima", - "license": "MIT", - "bugs": { - "url": "https://github.com/mysticatea/eslint-utils/issues" - }, - "homepage": "https://github.com/mysticatea/eslint-utils#readme" -} diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/CHANGELOG.md b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/CHANGELOG.md similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/CHANGELOG.md rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/CHANGELOG.md diff --git a/node_modules/mute-stream/LICENSE b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/LICENSE similarity index 100% rename from node_modules/mute-stream/LICENSE rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/LICENSE diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/README.md b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/README.md similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/README.md rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/README.md diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/bin/semver.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/bin/semver.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/bin/semver.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/bin/semver.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/classes/comparator.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/comparator.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/classes/comparator.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/comparator.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/classes/index.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/index.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/classes/index.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/index.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/classes/range.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/range.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/classes/range.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/range.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/classes/semver.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/semver.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/classes/semver.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/semver.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/clean.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/clean.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/clean.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/clean.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/cmp.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/cmp.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/cmp.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/cmp.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/coerce.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/coerce.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/coerce.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/coerce.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/compare-build.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/compare-build.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/compare-build.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/compare-build.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/compare-loose.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/compare-loose.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/compare-loose.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/compare-loose.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/compare.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/compare.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/compare.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/compare.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/diff.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/diff.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/diff.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/diff.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/eq.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/eq.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/eq.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/eq.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/gt.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/gt.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/gt.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/gt.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/gte.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/gte.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/gte.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/gte.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/inc.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/inc.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/inc.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/inc.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/lt.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/lt.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/lt.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/lt.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/lte.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/lte.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/lte.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/lte.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/major.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/major.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/major.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/major.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/minor.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/minor.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/minor.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/minor.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/neq.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/neq.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/neq.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/neq.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/parse.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/parse.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/parse.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/parse.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/patch.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/patch.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/patch.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/patch.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/prerelease.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/prerelease.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/prerelease.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/prerelease.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/rcompare.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/rcompare.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/rcompare.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/rcompare.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/rsort.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/rsort.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/rsort.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/rsort.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/satisfies.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/satisfies.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/satisfies.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/satisfies.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/sort.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/sort.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/sort.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/sort.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/functions/valid.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/valid.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/functions/valid.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/valid.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/index.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/index.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/index.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/index.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/internal/constants.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/constants.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/internal/constants.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/constants.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/internal/debug.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/debug.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/internal/debug.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/debug.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/internal/identifiers.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/identifiers.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/internal/identifiers.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/identifiers.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/internal/re.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/re.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/internal/re.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/re.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/package.json similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/package.json rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/package.json diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/preload.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/preload.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/preload.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/preload.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/range.bnf b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/range.bnf similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/range.bnf rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/range.bnf diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/gtr.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/gtr.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/gtr.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/gtr.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/intersects.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/intersects.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/intersects.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/intersects.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/ltr.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/ltr.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/ltr.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/ltr.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/max-satisfying.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/max-satisfying.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/max-satisfying.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/max-satisfying.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/min-satisfying.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-satisfying.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/min-satisfying.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-satisfying.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/min-version.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-version.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/min-version.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-version.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/outside.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/outside.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/outside.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/outside.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/simplify.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/simplify.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/simplify.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/simplify.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/subset.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/subset.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/subset.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/subset.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/to-comparators.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/to-comparators.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/to-comparators.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/to-comparators.js diff --git a/node_modules/eslint-plugin-jest/node_modules/semver/ranges/valid.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/valid.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/semver/ranges/valid.js rename to node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/valid.js diff --git a/node_modules/@typescript-eslint/eslint-plugin/package.json b/node_modules/@typescript-eslint/eslint-plugin/package.json index e2fa1318..04c205cf 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/eslint-plugin", - "version": "2.22.0", + "version": "4.3.0", "description": "TypeScript plugin for ESLint", "keywords": [ "eslint", @@ -9,7 +9,7 @@ "typescript" ], "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^10.12.0 || >=12.0.0" }, "files": [ "dist", @@ -33,6 +33,7 @@ "check:docs": "jest tests/docs.test.ts --runTestsByPath --silent --runInBand", "check:configs": "jest tests/configs.test.ts --runTestsByPath --silent --runInBand", "clean": "tsc -b tsconfig.build.json --clean", + "postclean": "rimraf dist", "format": "prettier --write \"./**/*.{ts,js,json,md}\" --ignore-path ../../.prettierignore", "generate:configs": "../../node_modules/.bin/ts-node --files --transpile-only tools/generate-configs.ts", "generate:rules-lists": "../../node_modules/.bin/ts-node --files --transpile-only tools/generate-rules-lists.ts", @@ -41,24 +42,26 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/experimental-utils": "2.22.0", - "eslint-utils": "^1.4.3", + "@typescript-eslint/experimental-utils": "4.3.0", + "@typescript-eslint/scope-manager": "4.3.0", + "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.0.0", + "semver": "^7.3.2", "tsutils": "^3.17.1" }, "devDependencies": { - "@types/json-schema": "^7.0.3", - "@types/marked": "^0.7.1", - "@types/prettier": "^1.18.2", - "chalk": "^3.0.0", - "marked": "^0.7.0", + "@types/debug": "*", + "@types/marked": "^1.1.0", + "@types/prettier": "*", + "chalk": "^4.0.0", + "marked": "^1.0.0", "prettier": "*", "typescript": "*" }, "peerDependencies": { - "@typescript-eslint/parser": "^2.0.0", - "eslint": "^5.0.0 || ^6.0.0" + "@typescript-eslint/parser": "^4.0.0", + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -69,5 +72,5 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "5a097d316fb084dc4b13e87d68fe9bf43d8a9548" + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md b/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md index fc8b6a8f..88a8ced7 100644 --- a/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md +++ b/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md @@ -3,6 +3,364 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + + +### Bug Fixes + +* **experimental-utils:** treat RuleTester arrays as readonly ([#2601](https://github.com/typescript-eslint/typescript-eslint/issues/2601)) ([8025777](https://github.com/typescript-eslint/typescript-eslint/commit/80257776b78bd2b2b4389d6bd530b009a75fb520)) + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + + +### Bug Fixes + +* **eslint-plugin:** [no-use-before-define] false positive for function type arguments ([#2554](https://github.com/typescript-eslint/typescript-eslint/issues/2554)) ([189162d](https://github.com/typescript-eslint/typescript-eslint/commit/189162d46ecb116c420232937a7f86df913f4e79)), closes [#2527](https://github.com/typescript-eslint/typescript-eslint/issues/2527) + + + + + +# [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [4.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.0...v4.0.1) (2020-08-31) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [4.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.1...v4.0.0) (2020-08-31) + +## [Please see the release notes for v4.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v4.0.0) + +### Features + +* consume new scope analysis package ([#2039](https://github.com/typescript-eslint/typescript-eslint/issues/2039)) ([3be125d](https://github.com/typescript-eslint/typescript-eslint/commit/3be125d9bdbee1984ac6037874edf619213bd3d0)) +* support ESTree optional chaining representation ([#2308](https://github.com/typescript-eslint/typescript-eslint/issues/2308)) ([e9d2ab6](https://github.com/typescript-eslint/typescript-eslint/commit/e9d2ab638b6767700b52797e74b814ea059beaae)) + + + + + +## [3.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.0...v3.10.1) (2020-08-25) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.1...v3.10.0) (2020-08-24) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [3.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.0...v3.9.1) (2020-08-17) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.8.0...v3.9.0) (2020-08-10) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.1...v3.8.0) (2020-08-03) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [3.7.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.0...v3.7.1) (2020-07-27) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.7.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.1...v3.7.0) (2020-07-20) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [3.6.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.0...v3.6.1) (2020-07-13) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.6.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.5.0...v3.6.0) (2020-07-06) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.5.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.4.0...v3.5.0) (2020-06-29) + + +### Features + +* add package scope-manager ([#1939](https://github.com/typescript-eslint/typescript-eslint/issues/1939)) ([682eb7e](https://github.com/typescript-eslint/typescript-eslint/commit/682eb7e009c3f22a542882dfd3602196a60d2a1e)) +* split types into their own package ([#2229](https://github.com/typescript-eslint/typescript-eslint/issues/2229)) ([5f45918](https://github.com/typescript-eslint/typescript-eslint/commit/5f4591886f3438329fbf2229b03ac66174334a24)) + + + + + +# [3.4.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.3.0...v3.4.0) (2020-06-22) + + +### Bug Fixes + +* **experimental-utils:** correct types for TS versions older than 3.8 ([#2217](https://github.com/typescript-eslint/typescript-eslint/issues/2217)) ([5e4dda2](https://github.com/typescript-eslint/typescript-eslint/commit/5e4dda264a7d6a6a1626848e7599faea1ac34922)) +* **experimental-utils:** getParserServices takes a readonly context ([#2235](https://github.com/typescript-eslint/typescript-eslint/issues/2235)) ([26da8de](https://github.com/typescript-eslint/typescript-eslint/commit/26da8de7fcde9eddec63212d79af781c4bb22991)) + + + + + +# [3.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.2.0...v3.3.0) (2020-06-15) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [3.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.1.0...v3.2.0) (2020-06-08) + + +### Bug Fixes + +* **eslint-plugin:** [prefer-optional-chain] handling first member expression ([#2156](https://github.com/typescript-eslint/typescript-eslint/issues/2156)) ([de18660](https://github.com/typescript-eslint/typescript-eslint/commit/de18660a8cf8f7033798646d8c5b0938d1accb12)) + + + + + +# [3.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.2...v3.1.0) (2020-06-01) + + +### Bug Fixes + +* **experimental-utils:** downlevel type declarations for versions older than 3.8 ([#2133](https://github.com/typescript-eslint/typescript-eslint/issues/2133)) ([7925823](https://github.com/typescript-eslint/typescript-eslint/commit/792582326a8065270b69a0ffcaad5a7b4b103ff3)) + + +### Features + +* **eslint-plugin:** [explicit-module-boundary-types] improve accuracy and coverage ([#2135](https://github.com/typescript-eslint/typescript-eslint/issues/2135)) ([caaa859](https://github.com/typescript-eslint/typescript-eslint/commit/caaa8599284d02ab3341e282cad35a52d0fb86c7)) + + + + + +## [3.0.2](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.1...v3.0.2) (2020-05-27) + + +### Bug Fixes + +* regression for eslint v6 ([#2105](https://github.com/typescript-eslint/typescript-eslint/issues/2105)) ([31fc503](https://github.com/typescript-eslint/typescript-eslint/commit/31fc5039ed919e1515fda673c186d5c83eb5beb3)) + + + + + +## [3.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.0...v3.0.1) (2020-05-25) + + +### Bug Fixes + +* **experimental-utils:** export `CLIEngine` & `ESLint` ([#2083](https://github.com/typescript-eslint/typescript-eslint/issues/2083)) ([014341b](https://github.com/typescript-eslint/typescript-eslint/commit/014341bb23261f609fc2a6fe7fece191466a084a)) + + + + + +# [3.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.34.0...v3.0.0) (2020-05-21) + +## [Please see the release notes for v3.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v3.0.0) + +### Bug Fixes + +* **experimental-utils:** add back SourceCode.isSpaceBetweenTokens ([ae82ea4](https://github.com/typescript-eslint/typescript-eslint/commit/ae82ea4a85a4ca332ebe6104e96c59dba30411be)) +* **typescript-estree:** remove now defunct `Import` node type ([f199cbd](https://github.com/typescript-eslint/typescript-eslint/commit/f199cbdbbd892b5ba03bfff66f463f3d9c92ee9b)) + + +### Features + +* **experimental-utils:** upgrade eslint types for v7 ([#2023](https://github.com/typescript-eslint/typescript-eslint/issues/2023)) ([06869c9](https://github.com/typescript-eslint/typescript-eslint/commit/06869c9656fa37936126666845aee40aad546ebd)) +* drop support for node v8 ([#1997](https://github.com/typescript-eslint/typescript-eslint/issues/1997)) ([b6c3b7b](https://github.com/typescript-eslint/typescript-eslint/commit/b6c3b7b84b8d199fa75a46432febd4a364a63217)) +* upgrade to ESLint v7 ([#2022](https://github.com/typescript-eslint/typescript-eslint/issues/2022)) ([208de71](https://github.com/typescript-eslint/typescript-eslint/commit/208de71059746bf38e94bd460346ffb2698a3e12)) +* **eslint-plugin:** [ban-types] rework default options ([#848](https://github.com/typescript-eslint/typescript-eslint/issues/848)) ([8e31d5d](https://github.com/typescript-eslint/typescript-eslint/commit/8e31d5dbe9fe5227fdbefcecfd50ce5dd51360c3)) +* **typescript-estree:** always return parserServices ([#716](https://github.com/typescript-eslint/typescript-eslint/issues/716)) ([5b23443](https://github.com/typescript-eslint/typescript-eslint/commit/5b23443c48f3f62424db3e742243f3568080b946)) + + + + + +# [2.34.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.33.0...v2.34.0) (2020-05-18) + + +### Features + +* **experimental-utils:** add `suggestion` property for rule modules ([#2033](https://github.com/typescript-eslint/typescript-eslint/issues/2033)) ([f42a5b0](https://github.com/typescript-eslint/typescript-eslint/commit/f42a5b09ebfa173f418a99c552b0cbe221567194)) + + + + + +# [2.33.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.32.0...v2.33.0) (2020-05-12) + + +### Bug Fixes + +* **experimental-utils:** remove accidental dep on json-schema ([#2010](https://github.com/typescript-eslint/typescript-eslint/issues/2010)) ([1875fba](https://github.com/typescript-eslint/typescript-eslint/commit/1875fbad41f2a3dda8f610f5dcd180c6205b73d3)) + + + + + +# [2.32.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.31.0...v2.32.0) (2020-05-11) + + +### Features + +* bump dependencies and align AST ([#2007](https://github.com/typescript-eslint/typescript-eslint/issues/2007)) ([18668b7](https://github.com/typescript-eslint/typescript-eslint/commit/18668b78fd7d1e5281af7fc26c76e0ca53297f69)) + + + + + +# [2.31.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.30.0...v2.31.0) (2020-05-04) + + +### Features + +* **experimental-utils:** expose our RuleTester extension ([#1948](https://github.com/typescript-eslint/typescript-eslint/issues/1948)) ([2dd1638](https://github.com/typescript-eslint/typescript-eslint/commit/2dd1638aaa2658ba99b2341861146b586f489121)) + + + + + +# [2.30.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.29.0...v2.30.0) (2020-04-27) + + +### Features + +* **experimental-utils:** allow rule options to be a readonly tuple ([#1924](https://github.com/typescript-eslint/typescript-eslint/issues/1924)) ([4ef6788](https://github.com/typescript-eslint/typescript-eslint/commit/4ef67884962b6aac61cc895aaa3ba16aa892ecf4)) + + + + + +# [2.29.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.28.0...v2.29.0) (2020-04-20) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13) + + +### Features + +* **eslint-plugin:** add rule `prefer-reduce-type-parameter` ([#1707](https://github.com/typescript-eslint/typescript-eslint/issues/1707)) ([c92d240](https://github.com/typescript-eslint/typescript-eslint/commit/c92d240e49113779053eac32038382b282812afc)) + + + + + +# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06) + + +### Features + +* **experimental-utils:** add types for suggestions from CLIEngine ([#1844](https://github.com/typescript-eslint/typescript-eslint/issues/1844)) ([7c11bd6](https://github.com/typescript-eslint/typescript-eslint/commit/7c11bd66f2d0e5ea9d3943e6b8c66e6ddff50862)) +* **experimental-utils:** update eslint types to match v6.8 ([#1846](https://github.com/typescript-eslint/typescript-eslint/issues/1846)) ([16ce74d](https://github.com/typescript-eslint/typescript-eslint/commit/16ce74d247781ac890dc0baa30c384f97e581b6b)) + + + + + +# [2.26.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.25.0...v2.26.0) (2020-03-30) + + +### Features + +* **typescript-estree:** add option to ignore certain folders from glob resolution ([#1802](https://github.com/typescript-eslint/typescript-eslint/issues/1802)) ([1e29e69](https://github.com/typescript-eslint/typescript-eslint/commit/1e29e69b289d61107a7de67592beae331ba50222)) + + + + + +# [2.25.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.24.0...v2.25.0) (2020-03-23) + + +### Features + +* **experimental-utils:** expose ast utility functions ([#1670](https://github.com/typescript-eslint/typescript-eslint/issues/1670)) ([3eb5d45](https://github.com/typescript-eslint/typescript-eslint/commit/3eb5d4525e95c8ab990f55588b8d830a02ce5a9c)) + + + + + +# [2.24.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.23.0...v2.24.0) (2020-03-16) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [2.23.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.22.0...v2.23.0) (2020-03-09) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + # [2.22.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.21.0...v2.22.0) (2020-03-02) **Note:** Version bump only for package @typescript-eslint/experimental-utils diff --git a/node_modules/@typescript-eslint/experimental-utils/README.md b/node_modules/@typescript-eslint/experimental-utils/README.md index 2f02ef10..208578bf 100644 --- a/node_modules/@typescript-eslint/experimental-utils/README.md +++ b/node_modules/@typescript-eslint/experimental-utils/README.md @@ -1,27 +1,36 @@ -# `@typescript-eslint/experimental-utils` +

Utils for ESLint Plugins

-(Experimental) Utilities for working with TypeScript + ESLint together. +

Utilities for working with TypeScript + ESLint together.

+ +

+ CI + NPM Version + NPM Downloads +

## Note This package has inherited its version number from the `@typescript-eslint` project. -Meaning that even though this package is `1.x.y`, you shouldn't expect 100% stability between minor version bumps. +Meaning that even though this package is `2.x.y`, you shouldn't expect 100% stability between minor version bumps. i.e. treat it as a `0.x.y` package. Feel free to use it now, and let us know what utilities you need or send us PRs with utilities you build on top of it. -Once it is stable, it will be renamed to `@typescript-eslint/util` for a `2.0.0` release. +Once it is stable, it will be renamed to `@typescript-eslint/util` for a `4.0.0` release. ## Exports -| Name | Description | -| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| [`TSESTree`](../packages/typescript-estree/src/ts-estree/ts-estree.ts) | Types for the TypeScript flavor of ESTree created by `@typescript-eslint/typescript-estree`. | -| [`AST_NODE_TYPES`](../packages/typescript-estree/src/ts-estree/ast-node-types.ts) | An enum with the names of every single _node_ found in `TSESTree`. | -| [`AST_TOKEN_TYPES`](../packages/typescript-estree/src/ts-estree/ast-node-types.ts) | An enum with the names of every single _token_ found in `TSESTree`. | -| [`TSESLint`](./src/ts-eslint) | Types for ESLint, correctly typed to work with the types found in `TSESTree`. | -| [`ESLintUtils`](./src/eslint-utils) | Tools for creating ESLint rules with TypeScript. | -| [`ParserServices`](../packages/typescript-estree/src/ts-estree/parser.ts) | The parser services provided when parsing a file using `@typescript-eslint/typescript-estree`. | +| Name | Description | +| -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [`ASTUtils`](./src/ast-utils) | Tools for operating on the ESTree AST. Also includes the [`eslint-utils`](https://www.npmjs.com/package/eslint-utils) package, correctly typed to work with the types found in `TSESTree` | +| [`ESLintUtils`](./src/eslint-utils) | Tools for creating ESLint rules with TypeScript. | +| `JSONSchema` | Types from the [`@types/json-schema`](https://www.npmjs.com/package/@types/json-schema) package, re-exported to save you having to manually import them. Also ensures you're using the same version of the types as this package. | +| [`TSESLint`](./src/ts-eslint) | Types for ESLint, correctly typed to work with the types found in `TSESTree`. | +| [`TSESLintScope`](./src/ts-eslint-scope) | The [`eslint-scope`](https://www.npmjs.com/package/eslint-scope) package, correctly typed to work with the types found in both `TSESTree` and `TSESLint` | +| [`TSESTree`](../types/src/ts-estree.ts) | Types for the TypeScript flavor of ESTree created by `@typescript-eslint/typescript-estree`. | +| [`AST_NODE_TYPES`](../types/src/ast-node-types.ts) | An enum with the names of every single _node_ found in `TSESTree`. | +| [`AST_TOKEN_TYPES`](../types/src/ast-token-types.ts) | An enum with the names of every single _token_ found in `TSESTree`. | +| [`ParserServices`](../typescript-estree/src/parser-options.ts) | Typing for the parser services provided when parsing a file using `@typescript-eslint/typescript-estree`. | ## Contributing diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/PatternMatcher.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/PatternMatcher.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/PatternMatcher.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/PatternMatcher.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/astUtilities.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/astUtilities.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/astUtilities.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/astUtilities.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/predicates.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/predicates.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/predicates.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/predicates.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/misc.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/misc.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/misc.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/misc.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/predicates.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/predicates.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/predicates.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ast-utils/predicates.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/InferTypesFromRule.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/InferTypesFromRule.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/InferTypesFromRule.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/InferTypesFromRule.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleCreator.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleCreator.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleCreator.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleCreator.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleTester.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleTester.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleTester.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/RuleTester.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/applyDefault.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/applyDefault.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/applyDefault.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/applyDefault.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/batchedSingleLineTests.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/batchedSingleLineTests.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/batchedSingleLineTests.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/batchedSingleLineTests.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/deepMerge.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/deepMerge.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/deepMerge.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/deepMerge.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/getParserServices.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/getParserServices.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/getParserServices.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/getParserServices.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/eslint-utils/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/json-schema.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/json-schema.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/json-schema.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/json-schema.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Definition.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Definition.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Definition.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Definition.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Options.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Options.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Options.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Options.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/PatternVisitor.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/PatternVisitor.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/PatternVisitor.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/PatternVisitor.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Reference.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Reference.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Reference.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Reference.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Referencer.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Referencer.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Referencer.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Referencer.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Scope.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Scope.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Scope.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Scope.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/ScopeManager.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/ScopeManager.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/ScopeManager.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/ScopeManager.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Variable.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Variable.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Variable.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/Variable.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/analyze.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/analyze.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/analyze.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/analyze.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint-scope/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/AST.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/AST.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/AST.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/AST.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/CLIEngine.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/CLIEngine.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/CLIEngine.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/CLIEngine.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ESLint.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ESLint.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ESLint.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ESLint.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Linter.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Linter.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Linter.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Linter.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ParserOptions.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ParserOptions.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ParserOptions.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/ParserOptions.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Rule.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Rule.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Rule.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Rule.d.ts diff --git a/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts new file mode 100644 index 00000000..c8f5d2fe --- /dev/null +++ b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts @@ -0,0 +1,137 @@ +import { AST_NODE_TYPES, AST_TOKEN_TYPES } from '../ts-estree'; +import { ParserOptions } from './ParserOptions'; +import { RuleModule } from './Rule'; +interface ValidTestCase> { + /** + * Code for the test case. + */ + readonly code: string; + /** + * Environments for the test case. + */ + readonly env?: Readonly>; + /** + * The fake filename for the test case. Useful for rules that make assertion about filenames. + */ + readonly filename?: string; + /** + * The additional global variables. + */ + readonly globals?: Record; + /** + * Options for the test case. + */ + readonly options?: Readonly; + /** + * The absolute path for the parser. + */ + readonly parser?: string; + /** + * Options for the parser. + */ + readonly parserOptions?: Readonly; + /** + * Settings for the test case. + */ + readonly settings?: Readonly>; +} +interface SuggestionOutput { + /** + * Reported message ID. + */ + readonly messageId: TMessageIds; + /** + * The data used to fill the message template. + */ + readonly data?: Readonly>; + /** + * NOTE: Suggestions will be applied as a stand-alone change, without triggering multi-pass fixes. + * Each individual error has its own suggestion, so you have to show the correct, _isolated_ output for each suggestion. + */ + readonly output: string; +} +interface InvalidTestCase> extends ValidTestCase { + /** + * Expected errors. + */ + readonly errors: readonly TestCaseError[]; + /** + * The expected code after autofixes are applied. If set to `null`, the test runner will assert that no autofix is suggested. + */ + readonly output?: string | null; +} +interface TestCaseError { + /** + * The 1-based column number of the reported start location. + */ + readonly column?: number; + /** + * The data used to fill the message template. + */ + readonly data?: Readonly>; + /** + * The 1-based column number of the reported end location. + */ + readonly endColumn?: number; + /** + * The 1-based line number of the reported end location. + */ + readonly endLine?: number; + /** + * The 1-based line number of the reported start location. + */ + readonly line?: number; + /** + * Reported message ID. + */ + readonly messageId: TMessageIds; + /** + * Reported suggestions. + */ + readonly suggestions?: SuggestionOutput[] | null; + /** + * The type of the reported AST node. + */ + readonly type?: AST_NODE_TYPES | AST_TOKEN_TYPES; +} +interface RunTests> { + readonly valid: readonly (ValidTestCase | string)[]; + readonly invalid: readonly InvalidTestCase[]; +} +interface RuleTesterConfig { + readonly parser: string; + readonly parserOptions?: Readonly; +} +declare class RuleTesterBase { + /** + * Creates a new instance of RuleTester. + * @param testerConfig extra configuration for the tester + */ + constructor(testerConfig?: RuleTesterConfig); + /** + * Adds a new rule test to execute. + * @param ruleName The name of the rule to run. + * @param rule The rule to test. + * @param test The collection of tests to run. + */ + run>(ruleName: string, rule: RuleModule, tests: RunTests): void; + /** + * If you supply a value to this property, the rule tester will call this instead of using the version defined on + * the global namespace. + * @param text a string describing the rule + * @param callback the test callback + */ + static describe?: (text: string, callback: () => void) => void; + /** + * If you supply a value to this property, the rule tester will call this instead of using the version defined on + * the global namespace. + * @param text a string describing the test case + * @param callback the test callback + */ + static it?: (text: string, callback: () => void) => void; +} +declare const RuleTester_base: typeof RuleTesterBase; +declare class RuleTester extends RuleTester_base { +} +export { InvalidTestCase, SuggestionOutput, RuleTester, RuleTesterConfig, RunTests, TestCaseError, ValidTestCase, }; +//# sourceMappingURL=RuleTester.d.ts.map diff --git a/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Scope.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Scope.d.ts new file mode 100644 index 00000000..57b425cc --- /dev/null +++ b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Scope.d.ts @@ -0,0 +1,46 @@ +import * as scopeManager from '@typescript-eslint/scope-manager'; +import { TSESTree } from '@typescript-eslint/types'; +declare namespace Scope { + class ESLintScopeVariable { + readonly defs: Definition[]; + readonly identifiers: TSESTree.Identifier[]; + readonly name: string; + readonly references: Reference[]; + readonly scope: Scope; + /** + * Written to by ESLint. + * If this key exists, this variable is a global variable added by ESLint. + * If this is `true`, this variable can be assigned arbitrary values. + * If this is `false`, this variable is readonly. + */ + writeable?: boolean; + /** + * Written to by ESLint. + * This property is undefined if there are no globals directive comments. + * The array of globals directive comments which defined this global variable in the source code file. + */ + eslintExplicitGlobal?: boolean; + /** + * Written to by ESLint. + * The configured value in config files. This can be different from `variable.writeable` if there are globals directive comments. + */ + eslintImplicitGlobalSetting?: 'readonly' | 'writable'; + /** + * Written to by ESLint. + * If this key exists, it is a global variable added by ESLint. + * If `true`, this global variable was defined by a globals directive comment in the source code file. + */ + eslintExplicitGlobalComments?: TSESTree.Comment[]; + } + export type ScopeManager = scopeManager.ScopeManager; + export type Reference = scopeManager.Reference; + export type Variable = scopeManager.Variable | ESLintScopeVariable; + export type Scope = scopeManager.Scope; + export const ScopeType: typeof scopeManager.ScopeType; + export type DefinitionType = scopeManager.Definition; + export type Definition = scopeManager.Definition; + export const DefinitionType: typeof scopeManager.DefinitionType; + export {}; +} +export { Scope }; +//# sourceMappingURL=Scope.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/SourceCode.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/SourceCode.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/SourceCode.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/SourceCode.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-estree.d.ts b/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-estree.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-estree.d.ts rename to node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-estree.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/PatternMatcher.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/ReferenceTracker.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/astUtilities.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/index.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/predicates.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/eslint-utils/scopeAnalysis.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/index.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/misc.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ast-utils/predicates.js.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/InferTypesFromRule.js.map diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts index 8b7158cf..565a6a9d 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts @@ -3,11 +3,11 @@ declare type CreateRuleMetaDocs = Omit; declare type CreateRuleMeta = { docs: CreateRuleMetaDocs; } & Omit, 'docs'>; -export declare function RuleCreator(urlCreator: (ruleName: string) => string): ({ name, meta, defaultOptions, create, }: { +declare function RuleCreator(urlCreator: (ruleName: string) => string): ({ name, meta, defaultOptions, create, }: Readonly<{ name: string; meta: CreateRuleMeta; - defaultOptions: TOptions; - create: (context: RuleContext, optionsWithDefault: TOptions) => TRuleListener; -}) => RuleModule; -export {}; + defaultOptions: Readonly; + create: (context: Readonly>, optionsWithDefault: Readonly) => TRuleListener; +}>) => RuleModule; +export { RuleCreator }; //# sourceMappingURL=RuleCreator.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map index fd10e53e..2d86f2a5 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"RuleCreator.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/RuleCreator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAC;AAI3B,aAAK,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;AACxD,aAAK,cAAc,CAAC,WAAW,SAAS,MAAM,IAAI;IAChD,IAAI,EAAE,kBAAkB,CAAC;CAC1B,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;AAE5C,wBAAgB,WAAW,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM;;;;;uDAsCnE"} \ No newline at end of file +{"version":3,"file":"RuleCreator.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/RuleCreator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAC;AAI3B,aAAK,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;AACxD,aAAK,cAAc,CAAC,WAAW,SAAS,MAAM,IAAI;IAChD,IAAI,EAAE,kBAAkB,CAAC;CAC1B,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;AAE5C,iBAAS,WAAW,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM;UAanD,MAAM;;;;wDA2Bf;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js index a7f5999e..cba8ed64 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.RuleCreator = void 0; const applyDefault_1 = require("./applyDefault"); function RuleCreator(urlCreator) { // This function will get much easier to call when this is merged https://github.com/Microsoft/TypeScript/pull/26349 diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map index 1939fbb0..cea4eb08 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map @@ -1 +1 @@ -{"version":3,"file":"RuleCreator.js","sourceRoot":"","sources":["../../src/eslint-utils/RuleCreator.ts"],"names":[],"mappings":";;AAOA,iDAA8C;AAQ9C,SAAgB,WAAW,CAAC,UAAwC;IAClE,oHAAoH;IACpH,2FAA2F;IAC3F,OAAO,SAAS,UAAU,CAIxB,EACA,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,MAAM,GASP;QACC,OAAO;YACL,IAAI,kCACC,IAAI,KACP,IAAI,kCACC,IAAI,CAAC,IAAI,KACZ,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,MAExB;YACD,MAAM,CAAC,OAAO;gBACZ,MAAM,kBAAkB,GAAG,2BAAY,CACrC,cAAc,EACd,OAAO,CAAC,OAAO,CAChB,CAAC;gBACF,OAAO,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAtCD,kCAsCC"} \ No newline at end of file +{"version":3,"file":"RuleCreator.js","sourceRoot":"","sources":["../../src/eslint-utils/RuleCreator.ts"],"names":[],"mappings":";;;AAOA,iDAA8C;AAQ9C,SAAS,WAAW,CAAC,UAAwC;IAC3D,oHAAoH;IACpH,2FAA2F;IAC3F,OAAO,SAAS,UAAU,CAIxB,EACA,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,MAAM,GASN;QACA,OAAO;YACL,IAAI,kCACC,IAAI,KACP,IAAI,kCACC,IAAI,CAAC,IAAI,KACZ,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,MAExB;YACD,MAAM,CACJ,OAAqD;gBAErD,MAAM,kBAAkB,GAAG,2BAAY,CACrC,cAAc,EACd,OAAO,CAAC,OAAO,CAChB,CAAC;gBACF,OAAO,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAEQ,kCAAW"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleTester.js.map diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts index bbee8160..b92df58f 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts @@ -5,5 +5,6 @@ * @param userOptions the user opts * @returns the options with defaults */ -export declare function applyDefault(defaultOptions: TDefault, userOptions: TUser | null): TDefault; +declare function applyDefault(defaultOptions: TDefault, userOptions: TUser | null): TDefault; +export { applyDefault }; //# sourceMappingURL=applyDefault.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map index 69af49e3..50c710ed 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"applyDefault.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/applyDefault.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAAE,EAAE,QAAQ,SAAS,KAAK,EAC1E,cAAc,EAAE,QAAQ,EACxB,WAAW,EAAE,KAAK,GAAG,IAAI,GACxB,QAAQ,CAqBV"} \ No newline at end of file +{"version":3,"file":"applyDefault.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/applyDefault.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,KAAK,SAAS,SAAS,OAAO,EAAE,EAAE,QAAQ,SAAS,KAAK,EAC5E,cAAc,EAAE,QAAQ,EACxB,WAAW,EAAE,KAAK,GAAG,IAAI,GACxB,QAAQ,CAuBV;AAMD,OAAO,EAAE,YAAY,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js index 3519fc7d..6ae1a795 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.applyDefault = void 0; const deepMerge_1 = require("./deepMerge"); /** * Pure function - doesn't mutate either parameter! diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map index 3de41a57..797a3b50 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map @@ -1 +1 @@ -{"version":3,"file":"applyDefault.js","sourceRoot":"","sources":["../../src/eslint-utils/applyDefault.ts"],"names":[],"mappings":";;AAAA,2CAA0D;AAE1D;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,cAAwB,EACxB,WAAyB;IAEzB,iBAAiB;IACjB,MAAM,OAAO,GAAa,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;IAErE,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,SAAS,EAAE;QACrD,OAAO,OAAO,CAAC;KAChB;IAED,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACzB,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAChC,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAE/B,IAAI,4BAAgB,CAAC,OAAO,CAAC,IAAI,4BAAgB,CAAC,GAAG,CAAC,EAAE;gBACtD,OAAO,CAAC,CAAC,CAAC,GAAG,qBAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;aACtC;iBAAM;gBACL,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;aACtB;SACF;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AAxBD,oCAwBC"} \ No newline at end of file +{"version":3,"file":"applyDefault.js","sourceRoot":"","sources":["../../src/eslint-utils/applyDefault.ts"],"names":[],"mappings":";;;AAAA,2CAA0D;AAE1D;;;;;;GAMG;AACH,SAAS,YAAY,CACnB,cAAwB,EACxB,WAAyB;IAEzB,iBAAiB;IACjB,MAAM,OAAO,GAAwB,IAAI,CAAC,KAAK,CAC7C,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAC/B,CAAC;IAEF,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,SAAS,EAAE;QACrD,OAAO,OAAO,CAAC;KAChB;IAED,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACzB,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAChC,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAE/B,IAAI,4BAAgB,CAAC,OAAO,CAAC,IAAI,4BAAgB,CAAC,GAAG,CAAC,EAAE;gBACtD,OAAO,CAAC,CAAC,CAAC,GAAG,qBAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;aACtC;iBAAM;gBACL,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;aACtB;SACF;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AAMQ,oCAAY"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js index 31ce4058..7ff93904 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.batchedSingleLineTests = void 0; function batchedSingleLineTests(options) { // eslint counts lines from 1 const lineOffset = options.code.startsWith('\n') ? 2 : 1; @@ -10,13 +11,12 @@ function batchedSingleLineTests(options) { .trim() .split('\n') .map((code, i) => { - var _a; const lineNum = i + lineOffset; const errors = 'errors' in options ? options.errors.filter(e => e.line === lineNum) : []; const returnVal = Object.assign(Object.assign({}, options), { code, errors: errors.map(e => (Object.assign(Object.assign({}, e), { line: 1 }))) }); - if ((_a = output) === null || _a === void 0 ? void 0 : _a[i]) { + if (output === null || output === void 0 ? void 0 : output[i]) { return Object.assign(Object.assign({}, returnVal), { output: output[i] }); } return returnVal; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map index 2bb02242..31f68d68 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map @@ -1 +1 @@ -{"version":3,"file":"batchedSingleLineTests.js","sourceRoot":"","sources":["../../src/eslint-utils/batchedSingleLineTests.ts"],"names":[],"mappings":";;AA8BA,SAAS,sBAAsB,CAI7B,OAAyE;IAEzE,6BAA6B;IAC7B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GACV,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM;QACnC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,OAAO,CAAC,IAAI;SAChB,IAAI,EAAE;SACN,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;;QACf,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC;QAC/B,MAAM,MAAM,GACV,QAAQ,IAAI,OAAO;YACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;YAChD,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,SAAS,mCACV,OAAO,KACV,IAAI,EACJ,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,iCACnB,CAAC,KACJ,IAAI,EAAE,CAAC,IACP,CAAC,GACJ,CAAC;QACF,UAAI,MAAM,0CAAG,CAAC,GAAG;YACf,uCACK,SAAS,KACZ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IACjB;SACH;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACP,CAAC;AAEQ,wDAAsB"} \ No newline at end of file +{"version":3,"file":"batchedSingleLineTests.js","sourceRoot":"","sources":["../../src/eslint-utils/batchedSingleLineTests.ts"],"names":[],"mappings":";;;AA8BA,SAAS,sBAAsB,CAI7B,OAAyE;IAEzE,6BAA6B;IAC7B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GACV,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM;QACnC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,OAAO,CAAC,IAAI;SAChB,IAAI,EAAE;SACN,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACf,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC;QAC/B,MAAM,MAAM,GACV,QAAQ,IAAI,OAAO;YACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;YAChD,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,SAAS,mCACV,OAAO,KACV,IAAI,EACJ,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,iCACnB,CAAC,KACJ,IAAI,EAAE,CAAC,IACP,CAAC,GACJ,CAAC;QACF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,CAAC,GAAG;YACf,uCACK,SAAS,KACZ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IACjB;SACH;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACP,CAAC;AAEQ,wDAAsB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts index b09d1fa3..9650020a 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts @@ -4,7 +4,7 @@ declare type ObjectLike = Record; * @param obj an object * @returns `true` if obj is an object */ -export declare function isObjectNotArray(obj: unknown | unknown[]): obj is T; +declare function isObjectNotArray(obj: unknown | unknown[]): obj is T; /** * Pure function - doesn't mutate either parameter! * Merges two objects together deeply, overwriting the properties in first with the properties in second @@ -13,5 +13,5 @@ export declare function isObjectNotArray(obj: unknown | un * @returns a new object */ export declare function deepMerge(first?: ObjectLike, second?: ObjectLike): Record; -export {}; +export { isObjectNotArray }; //# sourceMappingURL=deepMerge.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map index 93c6cd61..769f39c1 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"deepMerge.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/deepMerge.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAEjD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EACnD,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE,GACvB,GAAG,IAAI,CAAC,CAEV;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,KAAK,GAAE,UAAe,EACtB,MAAM,GAAE,UAAe,GACtB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0BzB"} \ No newline at end of file +{"version":3,"file":"deepMerge.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/deepMerge.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAEjD;;;;GAIG;AACH,iBAAS,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAC5C,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE,GACvB,GAAG,IAAI,CAAC,CAEV;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,KAAK,GAAE,UAAe,EACtB,MAAM,GAAE,UAAe,GACtB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0BzB;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js index 6df1cebf..34fdffc5 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isObjectNotArray = exports.deepMerge = void 0; /** * Check if the variable contains an object strictly rejecting arrays * @param obj an object diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map index 34941bd4..7ee4604b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map @@ -1 +1 @@ -{"version":3,"file":"deepMerge.js","sourceRoot":"","sources":["../../src/eslint-utils/deepMerge.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;AACH,SAAgB,gBAAgB,CAC9B,GAAwB;IAExB,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxD,CAAC;AAJD,4CAIC;AAED;;;;;;GAMG;AACH,SAAgB,SAAS,CACvB,QAAoB,EAAE,EACtB,SAAqB,EAAE;IAEvB,iDAAiD;IACjD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAErE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC1C,MAAM,WAAW,GAAG,GAAG,IAAI,KAAK,CAAC;QACjC,MAAM,YAAY,GAAG,GAAG,IAAI,MAAM,CAAC;QACnC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAEhC,IAAI,WAAW,IAAI,YAAY,EAAE;YAC/B,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE;gBACjE,cAAc;gBACd,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;aAC/C;iBAAM;gBACL,aAAa;gBACb,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;aACxB;SACF;aAAM,IAAI,WAAW,EAAE;YACtB,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;SACvB;aAAM;YACL,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;SACxB;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAgB,CAAC,CAAC;AACvB,CAAC;AA7BD,8BA6BC"} \ No newline at end of file +{"version":3,"file":"deepMerge.js","sourceRoot":"","sources":["../../src/eslint-utils/deepMerge.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,GAAwB;IAExB,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxD,CAAC;AAwCQ,4CAAgB;AAtCzB;;;;;;GAMG;AACH,SAAgB,SAAS,CACvB,QAAoB,EAAE,EACtB,SAAqB,EAAE;IAEvB,iDAAiD;IACjD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAErE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAa,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACtD,MAAM,WAAW,GAAG,GAAG,IAAI,KAAK,CAAC;QACjC,MAAM,YAAY,GAAG,GAAG,IAAI,MAAM,CAAC;QACnC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAEhC,IAAI,WAAW,IAAI,YAAY,EAAE;YAC/B,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE;gBACjE,cAAc;gBACd,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;aAC/C;iBAAM;gBACL,aAAa;gBACb,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;aACxB;SACF;aAAM,IAAI,WAAW,EAAE;YACtB,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;SACvB;aAAM;YACL,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;SACxB;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AA7BD,8BA6BC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts index ad9926c5..98626f43 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts @@ -1,10 +1,8 @@ -import { ParserServices, TSESLint } from '../'; -declare type RequiredParserServices = { - [k in keyof ParserServices]: Exclude; -}; +import * as TSESLint from '../ts-eslint'; +import { ParserServices } from '../ts-estree'; /** * Try to retrieve typescript parser service from context */ -export declare function getParserServices(context: TSESLint.RuleContext): RequiredParserServices; -export {}; +declare function getParserServices(context: Readonly>, allowWithoutFullTypeInformation?: boolean): ParserServices; +export { getParserServices }; //# sourceMappingURL=getParserServices.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map index 7e76cfbc..52fea2c4 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"getParserServices.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/getParserServices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAK/C,aAAK,sBAAsB,GAAG;KAC3B,CAAC,IAAI,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CACnE,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,SAAS,MAAM,EAC1B,QAAQ,SAAS,OAAO,EAAE,EAE1B,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,GACnD,sBAAsB,CAaxB"} \ No newline at end of file +{"version":3,"file":"getParserServices.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/getParserServices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAK9C;;GAEG;AACH,iBAAS,iBAAiB,CACxB,WAAW,SAAS,MAAM,EAC1B,QAAQ,SAAS,SAAS,OAAO,EAAE,EAEnC,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAC9D,+BAA+B,UAAQ,GACtC,cAAc,CAuBhB;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js index 5e7862be..09302fd8 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js @@ -1,17 +1,25 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getParserServices = void 0; const ERROR_MESSAGE = 'You have used a rule which requires parserServices to be generated. You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser.'; /** * Try to retrieve typescript parser service from context */ -function getParserServices(context) { +function getParserServices(context, allowWithoutFullTypeInformation = false) { + var _a; + // backwards compatibility check + // old versions of the parser would not return any parserServices unless parserOptions.project was set if (!context.parserServices || !context.parserServices.program || - !context.parserServices.esTreeNodeToTSNodeMap) { - /** - * The user needs to have configured "project" in their parserOptions - * for @typescript-eslint/parser - */ + !context.parserServices.esTreeNodeToTSNodeMap || + !context.parserServices.tsNodeToESTreeNodeMap) { + throw new Error(ERROR_MESSAGE); + } + const hasFullTypeInformation = (_a = context.parserServices.hasFullTypeInformation) !== null && _a !== void 0 ? _a : + /* backwards compatible */ true; + // if a rule requires full type information, then hard fail if it doesn't exist + // this forces the user to supply parserOptions.project + if (!hasFullTypeInformation && !allowWithoutFullTypeInformation) { throw new Error(ERROR_MESSAGE); } return context.parserServices; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map index 2fc7ad25..4d401257 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map @@ -1 +1 @@ -{"version":3,"file":"getParserServices.js","sourceRoot":"","sources":["../../src/eslint-utils/getParserServices.ts"],"names":[],"mappings":";;AAEA,MAAM,aAAa,GACjB,gLAAgL,CAAC;AAMnL;;GAEG;AACH,SAAgB,iBAAiB,CAI/B,OAAoD;IAEpD,IACE,CAAC,OAAO,CAAC,cAAc;QACvB,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO;QAC/B,CAAC,OAAO,CAAC,cAAc,CAAC,qBAAqB,EAC7C;QACA;;;WAGG;QACH,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;KAChC;IACD,OAAO,OAAO,CAAC,cAAwC,CAAC;AAC1D,CAAC;AAlBD,8CAkBC"} \ No newline at end of file +{"version":3,"file":"getParserServices.js","sourceRoot":"","sources":["../../src/eslint-utils/getParserServices.ts"],"names":[],"mappings":";;;AAGA,MAAM,aAAa,GACjB,gLAAgL,CAAC;AAEnL;;GAEG;AACH,SAAS,iBAAiB,CAIxB,OAA8D,EAC9D,+BAA+B,GAAG,KAAK;;IAEvC,gCAAgC;IAChC,sGAAsG;IACtG,IACE,CAAC,OAAO,CAAC,cAAc;QACvB,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO;QAC/B,CAAC,OAAO,CAAC,cAAc,CAAC,qBAAqB;QAC7C,CAAC,OAAO,CAAC,cAAc,CAAC,qBAAqB,EAC7C;QACA,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;KAChC;IAED,MAAM,sBAAsB,SAC1B,OAAO,CAAC,cAAc,CAAC,sBAAsB;IAC7C,0BAA0B,CAAC,IAAI,CAAC;IAElC,+EAA+E;IAC/E,uDAAuD;IACvD,IAAI,CAAC,sBAAsB,IAAI,CAAC,+BAA+B,EAAE;QAC/D,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;KAChC;IAED,OAAO,OAAO,CAAC,cAAc,CAAC;AAChC,CAAC;AAEQ,8CAAiB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts index 512f2805..8cdfcb01 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts @@ -1,6 +1,8 @@ export * from './applyDefault'; export * from './batchedSingleLineTests'; export * from './getParserServices'; +export * from './InferTypesFromRule'; export * from './RuleCreator'; +export * from './RuleTester'; export * from './deepMerge'; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map index 7af19958..7aca90d9 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js index dc41bf3d..dde280d2 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js @@ -1,11 +1,20 @@ "use strict"; -function __export(m) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; Object.defineProperty(exports, "__esModule", { value: true }); -__export(require("./applyDefault")); -__export(require("./batchedSingleLineTests")); -__export(require("./getParserServices")); -__export(require("./RuleCreator")); -__export(require("./deepMerge")); +__exportStar(require("./applyDefault"), exports); +__exportStar(require("./batchedSingleLineTests"), exports); +__exportStar(require("./getParserServices"), exports); +__exportStar(require("./InferTypesFromRule"), exports); +__exportStar(require("./RuleCreator"), exports); +__exportStar(require("./RuleTester"), exports); +__exportStar(require("./deepMerge"), exports); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map index 2f54b5b8..f24be476 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eslint-utils/index.ts"],"names":[],"mappings":";;;;;AAAA,oCAA+B;AAC/B,8CAAyC;AACzC,yCAAoC;AACpC,mCAA8B;AAC9B,iCAA4B"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eslint-utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA+B;AAC/B,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,gDAA8B;AAC9B,+CAA6B;AAC7B,8CAA4B"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts index 43f41b74..b8a60a9b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts @@ -1,8 +1,8 @@ +import * as ASTUtils from './ast-utils'; import * as ESLintUtils from './eslint-utils'; +import * as JSONSchema from './json-schema'; import * as TSESLint from './ts-eslint'; import * as TSESLintScope from './ts-eslint-scope'; -import * as JSONSchema from './json-schema'; -export { ESLintUtils, JSONSchema, TSESLint, TSESLintScope }; -export { AST_NODE_TYPES, AST_TOKEN_TYPES, TSESTree, } from '@typescript-eslint/typescript-estree/dist/ts-estree'; -export { ParserServices } from '@typescript-eslint/typescript-estree/dist/parser-options'; +export { ASTUtils, ESLintUtils, JSONSchema, TSESLint, TSESLintScope }; +export * from './ts-estree'; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map index 4e4d616e..822db074 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;AAQ5D,OAAO,EACL,cAAc,EACd,eAAe,EACf,QAAQ,GACT,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,0DAA0D,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;AACtE,cAAc,aAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/index.js b/node_modules/@typescript-eslint/experimental-utils/dist/index.js index b502f73e..ef12e06d 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/index.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/index.js @@ -1,27 +1,37 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.TSESLintScope = exports.TSESLint = exports.JSONSchema = exports.ESLintUtils = exports.ASTUtils = void 0; +const ASTUtils = __importStar(require("./ast-utils")); +exports.ASTUtils = ASTUtils; const ESLintUtils = __importStar(require("./eslint-utils")); exports.ESLintUtils = ESLintUtils; +const JSONSchema = __importStar(require("./json-schema")); +exports.JSONSchema = JSONSchema; const TSESLint = __importStar(require("./ts-eslint")); exports.TSESLint = TSESLint; const TSESLintScope = __importStar(require("./ts-eslint-scope")); exports.TSESLintScope = TSESLintScope; -const JSONSchema = __importStar(require("./json-schema")); -exports.JSONSchema = JSONSchema; -// for convenience's sake - export the types directly from here so consumers -// don't need to reference/install both packages in their code -// NOTE - this uses hard links inside ts-estree to avoid initialization of entire package -// via its main file (which imports typescript at runtime). -// Not every eslint-plugin written in typescript requires typescript at runtime. -var ts_estree_1 = require("@typescript-eslint/typescript-estree/dist/ts-estree"); -exports.AST_NODE_TYPES = ts_estree_1.AST_NODE_TYPES; -exports.AST_TOKEN_TYPES = ts_estree_1.AST_TOKEN_TYPES; -exports.TSESTree = ts_estree_1.TSESTree; +__exportStar(require("./ts-estree"), exports); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map index c3c81608..b500da1a 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,4DAA8C;AAKrC,kCAAW;AAJpB,sDAAwC;AAIN,4BAAQ;AAH1C,iEAAmD;AAGP,sCAAa;AAFzD,0DAA4C;AAEtB,gCAAU;AAEhC,4EAA4E;AAC5E,8DAA8D;AAE9D,yFAAyF;AACzF,kEAAkE;AAClE,uFAAuF;AACvF,iFAI6D;AAH3D,qCAAA,cAAc,CAAA;AACd,sCAAA,eAAe,CAAA;AACf,+BAAA,QAAQ,CAAA"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAwC;AAM/B,4BAAQ;AALjB,4DAA8C;AAK3B,kCAAW;AAJ9B,0DAA4C;AAIZ,gCAAU;AAH1C,sDAAwC;AAGI,4BAAQ;AAFpD,iEAAmD;AAEG,sCAAa;AACnE,8CAA4B"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts index 26619fa2..bd6f29cd 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts @@ -1,2 +1,2 @@ -export * from 'json-schema'; +export { JSONSchema4, JSONSchema4Type, JSONSchema4TypeName, JSONSchema4Version, JSONSchema6, JSONSchema6Definition, JSONSchema6Type, JSONSchema6TypeName, JSONSchema6Version, JSONSchema7, JSONSchema7Array, JSONSchema7Definition, JSONSchema7Type, JSONSchema7TypeName, JSONSchema7Version, ValidationError, ValidationResult, } from 'json-schema'; //# sourceMappingURL=json-schema.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map index 37965b4a..845788b3 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"} \ No newline at end of file +{"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js index 2d8f98dc..289fb57e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js @@ -1,3 +1,6 @@ "use strict"; +// Note - @types/json-schema@7.0.4 added some function declarations to the type package +// If we do export *, then it will also export these function declarations. +// This will cause typescript to not scrub the require from the build, breaking anyone who doesn't have it as a dependency Object.defineProperty(exports, "__esModule", { value: true }); //# sourceMappingURL=json-schema.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map index d826a143..51d0b026 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map @@ -1 +1 @@ -{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":""} \ No newline at end of file +{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":";AAAA,uFAAuF;AACvF,2EAA2E;AAC3E,0HAA0H"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts index a42899e7..bcaf94a2 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; interface Definition { type: string; name: TSESTree.BindingName; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map index fea0bd83..ab9c6387 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Definition.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAMhE,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AACD,UAAU,qBAAqB;IAC7B,KACE,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,YAAY,EAClD,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,EAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GACnB,UAAU,CAAC;CACf;AACD,QAAA,MAAM,UAAU,uBAA4C,CAAC;AAG7D,UAAU,mBAAoB,SAAQ,UAAU;CAAG;AACnD,QAAA,MAAM,mBAAmB,gKAOxB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"Definition.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Definition.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AACD,UAAU,qBAAqB;IAC7B,KACE,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,YAAY,EAClD,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,EAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GACnB,UAAU,CAAC;CACf;AACD,QAAA,MAAM,UAAU,uBAA4C,CAAC;AAG7D,UAAU,mBAAoB,SAAQ,UAAU;CAAG;AACnD,QAAA,MAAM,mBAAmB,sCAEf,SAAS,IAAI,QACb,SAAS,IAAI,oEAGlB,mBAAmB,CACvB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js index 46d90a04..dd3de1f5 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.ParameterDefinition = exports.Definition = void 0; const definition_1 = require("eslint-scope/lib/definition"); const Definition = definition_1.Definition; exports.Definition = Definition; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map index 99c09885..fa19c8c1 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map @@ -1 +1 @@ -{"version":3,"file":"Definition.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Definition.ts"],"names":[],"mappings":";;AACA,4DAGqC;AAqBrC,MAAM,UAAU,GAAG,uBAAyC,CAAC;AAapD,gCAAU;AATnB,MAAM,mBAAmB,GAAG,gCAO3B,CAAC;AAEmB,kDAAmB"} \ No newline at end of file +{"version":3,"file":"Definition.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Definition.ts"],"names":[],"mappings":";;;AAAA,4DAGqC;AAsBrC,MAAM,UAAU,GAAG,uBAAyC,CAAC;AAapD,gCAAU;AATnB,MAAM,mBAAmB,GAAG,gCAO3B,CAAC;AAEmB,kDAAmB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts index f87c44d9..48ce3c57 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; declare type PatternVisitorCallback = (pattern: TSESTree.Identifier, info: { rest: boolean; topLevel: boolean; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map index b505a491..fae66aaa 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Options.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAEhE,aAAK,sBAAsB,GAAG,CAC5B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAC5B,IAAI,EAAE;IACJ,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,QAAQ,CAAC,iBAAiB,EAAE,CAAC;CAC3C,KACE,IAAI,CAAC;AAEV,UAAU,qBAAqB;IAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,UAAU,OAAO;IACf,aAAa,CAAC,CAAC,SAAS,QAAQ,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAC9E,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;CACvE;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"Options.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,aAAK,sBAAsB,GAAG,CAC5B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAC5B,IAAI,EAAE;IACJ,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,QAAQ,CAAC,iBAAiB,EAAE,CAAC;CAC3C,KACE,IAAI,CAAC;AAEV,UAAU,qBAAqB;IAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,UAAU,OAAO;IACf,aAAa,CAAC,CAAC,SAAS,QAAQ,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAC9E,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;CACvE;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts index 32127a0e..e21224bc 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; import { ScopeManager } from './ScopeManager'; import { PatternVisitorCallback, PatternVisitorOptions, Visitor } from './Options'; interface PatternVisitor extends Visitor { diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map index 4949422a..eec5b0b1 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"PatternVisitor.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/PatternVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,OAAO,EACR,MAAM,WAAW,CAAC;AAEnB,UAAU,cAAe,SAAQ,OAAO;IACtC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IACvB,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEhC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACxC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3C,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1C,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC5C,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3C,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChD,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;CAC3C;AACD,QAAA,MAAM,cAAc;;;CASnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"PatternVisitor.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/PatternVisitor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,OAAO,EACR,MAAM,WAAW,CAAC;AAEnB,UAAU,cAAe,SAAQ,OAAO;IACtC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IACvB,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEhC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACxC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3C,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1C,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC5C,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3C,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChD,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;CAC3C;AACD,QAAA,MAAM,cAAc;kBAEP,qBAAqB,eACjB,SAAS,QAAQ,YACpB,sBAAsB,GAC/B,cAAc;oBAGD,SAAS,IAAI,GAAG,OAAO;CACxC,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js index 9682bd05..43aa849a 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.PatternVisitor = void 0; const pattern_visitor_1 = __importDefault(require("eslint-scope/lib/pattern-visitor")); const PatternVisitor = pattern_visitor_1.default; exports.PatternVisitor = PatternVisitor; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map index 631dd9ec..e08efc85 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map @@ -1 +1 @@ -{"version":3,"file":"PatternVisitor.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/PatternVisitor.ts"],"names":[],"mappings":";;;;;AACA,uFAAoE;AAyBpE,MAAM,cAAc,GAAG,yBAStB,CAAC;AAEO,wCAAc"} \ No newline at end of file +{"version":3,"file":"PatternVisitor.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/PatternVisitor.ts"],"names":[],"mappings":";;;;;;AAAA,uFAAoE;AA0BpE,MAAM,cAAc,GAAG,yBAStB,CAAC;AAEO,wCAAc"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts index 27b24a52..0d479b39 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; import { Scope } from './Scope'; import { Variable } from './Variable'; export declare type ReferenceFlag = 0x1 | 0x2 | 0x3; @@ -19,10 +19,10 @@ interface Reference { isReadWrite(): boolean; } declare const Reference: { - new (identifier: TSESTree.Identifier, scope: Scope, flag?: 1 | 2 | 3 | undefined, writeExpr?: TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BigIntLiteral | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.ClassBody | TSESTree.ClassDeclaration | TSESTree.ClassExpression | TSESTree.ClassPropertyComputedName | TSESTree.ClassPropertyNonComputedName | TSESTree.ConditionalExpression | TSESTree.ContinueStatement | TSESTree.DebuggerStatement | TSESTree.Decorator | TSESTree.DoWhileStatement | TSESTree.EmptyStatement | TSESTree.ExportAllDeclaration | TSESTree.ExportDefaultDeclaration | TSESTree.ExportNamedDeclaration | TSESTree.ExportSpecifier | TSESTree.ExpressionStatement | TSESTree.ForInStatement | TSESTree.ForOfStatement | TSESTree.ForStatement | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.IfStatement | TSESTree.Import | TSESTree.ImportDeclaration | TSESTree.ImportDefaultSpecifier | TSESTree.ImportNamespaceSpecifier | TSESTree.ImportSpecifier | TSESTree.JSXAttribute | TSESTree.JSXClosingElement | TSESTree.JSXClosingFragment | TSESTree.JSXElement | TSESTree.JSXEmptyExpression | TSESTree.JSXExpressionContainer | TSESTree.JSXFragment | TSESTree.JSXIdentifier | TSESTree.JSXOpeningElement | TSESTree.JSXOpeningFragment | TSESTree.JSXSpreadAttribute | TSESTree.JSXSpreadChild | TSESTree.JSXMemberExpression | TSESTree.JSXText | TSESTree.LabeledStatement | TSESTree.BooleanLiteral | TSESTree.NumberLiteral | TSESTree.NullLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.MethodDefinitionComputedName | TSESTree.MethodDefinitionNonComputedName | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.OptionalCallExpression | TSESTree.OptionalMemberExpressionComputedName | TSESTree.OptionalMemberExpressionNonComputedName | TSESTree.Program | TSESTree.PropertyComputedName | TSESTree.PropertyNonComputedName | TSESTree.RestElement | TSESTree.ReturnStatement | TSESTree.SequenceExpression | TSESTree.SpreadElement | TSESTree.Super | TSESTree.SwitchCase | TSESTree.SwitchStatement | TSESTree.TaggedTemplateExpression | TSESTree.TemplateElement | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.ThrowStatement | TSESTree.TryStatement | TSESTree.TSAbstractClassPropertyComputedName | TSESTree.TSAbstractClassPropertyNonComputedName | TSESTree.TSAbstractKeyword | TSESTree.TSAbstractMethodDefinitionComputedName | TSESTree.TSAbstractMethodDefinitionNonComputedName | TSESTree.TSAnyKeyword | TSESTree.TSArrayType | TSESTree.TSAsExpression | TSESTree.TSAsyncKeyword | TSESTree.TSBigIntKeyword | TSESTree.TSBooleanKeyword | TSESTree.TSCallSignatureDeclaration | TSESTree.TSClassImplements | TSESTree.TSConditionalType | TSESTree.TSConstructorType | TSESTree.TSConstructSignatureDeclaration | TSESTree.TSDeclareFunction | TSESTree.TSDeclareKeyword | TSESTree.TSEmptyBodyFunctionExpression | TSESTree.TSEnumDeclaration | TSESTree.TSEnumMemberComputedName | TSESTree.TSEnumMemberNonComputedName | TSESTree.TSExportAssignment | TSESTree.TSExportKeyword | TSESTree.TSExternalModuleReference | TSESTree.TSFunctionType | TSESTree.TSImportEqualsDeclaration | TSESTree.TSImportType | TSESTree.TSIndexedAccessType | TSESTree.TSIndexSignature | TSESTree.TSInferType | TSESTree.TSInterfaceDeclaration | TSESTree.TSInterfaceBody | TSESTree.TSInterfaceHeritage | TSESTree.TSIntersectionType | TSESTree.TSLiteralType | TSESTree.TSMappedType | TSESTree.TSMethodSignatureComputedName | TSESTree.TSMethodSignatureNonComputedName | TSESTree.TSModuleBlock | TSESTree.TSModuleDeclaration | TSESTree.TSNamespaceExportDeclaration | TSESTree.TSNeverKeyword | TSESTree.TSNonNullExpression | TSESTree.TSNullKeyword | TSESTree.TSNumberKeyword | TSESTree.TSObjectKeyword | TSESTree.TSOptionalType | TSESTree.TSParameterProperty | TSESTree.TSParenthesizedType | TSESTree.TSPropertySignatureComputedName | TSESTree.TSPropertySignatureNonComputedName | TSESTree.TSPublicKeyword | TSESTree.TSPrivateKeyword | TSESTree.TSProtectedKeyword | TSESTree.TSQualifiedName | TSESTree.TSReadonlyKeyword | TSESTree.TSRestType | TSESTree.TSStaticKeyword | TSESTree.TSStringKeyword | TSESTree.TSSymbolKeyword | TSESTree.TSThisType | TSESTree.TSTupleType | TSESTree.TSTypeAliasDeclaration | TSESTree.TSTypeAnnotation | TSESTree.TSTypeAssertion | TSESTree.TSTypeLiteral | TSESTree.TSTypeOperator | TSESTree.TSTypeParameter | TSESTree.TSTypeParameterDeclaration | TSESTree.TSTypeParameterInstantiation | TSESTree.TSTypePredicate | TSESTree.TSTypeQuery | TSESTree.TSTypeReference | TSESTree.TSUndefinedKeyword | TSESTree.TSUnionType | TSESTree.TSUnknownKeyword | TSESTree.TSVoidKeyword | TSESTree.UpdateExpression | TSESTree.UnaryExpression | TSESTree.VariableDeclaration | TSESTree.VariableDeclarator | TSESTree.WhileStatement | TSESTree.WithStatement | TSESTree.YieldExpression | null | undefined, maybeImplicitGlobal?: boolean | undefined, partial?: boolean | undefined, init?: boolean | undefined): Reference; - READ: 1; - WRITE: 2; - RW: 3; + new (identifier: TSESTree.Identifier, scope: Scope, flag?: 2 | 3 | 1 | undefined, writeExpr?: TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BigIntLiteral | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.ChainExpression | TSESTree.ClassBody | TSESTree.ClassDeclaration | TSESTree.ClassExpression | TSESTree.ClassPropertyComputedName | TSESTree.ClassPropertyNonComputedName | TSESTree.ConditionalExpression | TSESTree.ContinueStatement | TSESTree.DebuggerStatement | TSESTree.Decorator | TSESTree.DoWhileStatement | TSESTree.EmptyStatement | TSESTree.ExportAllDeclaration | TSESTree.ExportDefaultDeclaration | TSESTree.ExportNamedDeclaration | TSESTree.ExportSpecifier | TSESTree.ExpressionStatement | TSESTree.ForInStatement | TSESTree.ForOfStatement | TSESTree.ForStatement | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.IfStatement | TSESTree.ImportDeclaration | TSESTree.ImportDefaultSpecifier | TSESTree.ImportExpression | TSESTree.ImportNamespaceSpecifier | TSESTree.ImportSpecifier | TSESTree.JSXAttribute | TSESTree.JSXClosingElement | TSESTree.JSXClosingFragment | TSESTree.JSXElement | TSESTree.JSXEmptyExpression | TSESTree.JSXExpressionContainer | TSESTree.JSXFragment | TSESTree.JSXIdentifier | TSESTree.JSXMemberExpression | TSESTree.JSXOpeningElement | TSESTree.JSXOpeningFragment | TSESTree.JSXSpreadAttribute | TSESTree.JSXSpreadChild | TSESTree.JSXText | TSESTree.LabeledStatement | TSESTree.BooleanLiteral | TSESTree.NumberLiteral | TSESTree.NullLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.MethodDefinitionComputedName | TSESTree.MethodDefinitionNonComputedName | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.Program | TSESTree.PropertyComputedName | TSESTree.PropertyNonComputedName | TSESTree.RestElement | TSESTree.ReturnStatement | TSESTree.SequenceExpression | TSESTree.SpreadElement | TSESTree.Super | TSESTree.SwitchCase | TSESTree.SwitchStatement | TSESTree.TaggedTemplateExpression | TSESTree.TemplateElement | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.ThrowStatement | TSESTree.TryStatement | TSESTree.TSAbstractClassPropertyComputedName | TSESTree.TSAbstractClassPropertyNonComputedName | TSESTree.TSAbstractKeyword | TSESTree.TSAbstractMethodDefinitionComputedName | TSESTree.TSAbstractMethodDefinitionNonComputedName | TSESTree.TSAnyKeyword | TSESTree.TSArrayType | TSESTree.TSAsExpression | TSESTree.TSAsyncKeyword | TSESTree.TSBigIntKeyword | TSESTree.TSBooleanKeyword | TSESTree.TSCallSignatureDeclaration | TSESTree.TSClassImplements | TSESTree.TSConditionalType | TSESTree.TSConstructorType | TSESTree.TSConstructSignatureDeclaration | TSESTree.TSDeclareFunction | TSESTree.TSDeclareKeyword | TSESTree.TSEmptyBodyFunctionExpression | TSESTree.TSEnumDeclaration | TSESTree.TSEnumMemberComputedName | TSESTree.TSEnumMemberNonComputedName | TSESTree.TSExportAssignment | TSESTree.TSExportKeyword | TSESTree.TSExternalModuleReference | TSESTree.TSFunctionType | TSESTree.TSImportEqualsDeclaration | TSESTree.TSImportType | TSESTree.TSIndexedAccessType | TSESTree.TSIndexSignature | TSESTree.TSInferType | TSESTree.TSInterfaceBody | TSESTree.TSInterfaceDeclaration | TSESTree.TSInterfaceHeritage | TSESTree.TSIntersectionType | TSESTree.TSLiteralType | TSESTree.TSMappedType | TSESTree.TSMethodSignatureComputedName | TSESTree.TSMethodSignatureNonComputedName | TSESTree.TSModuleBlock | TSESTree.TSModuleDeclaration | TSESTree.TSNamedTupleMember | TSESTree.TSNamespaceExportDeclaration | TSESTree.TSNeverKeyword | TSESTree.TSNonNullExpression | TSESTree.TSNullKeyword | TSESTree.TSNumberKeyword | TSESTree.TSObjectKeyword | TSESTree.TSOptionalType | TSESTree.TSParameterProperty | TSESTree.TSParenthesizedType | TSESTree.TSPrivateKeyword | TSESTree.TSPropertySignatureComputedName | TSESTree.TSPropertySignatureNonComputedName | TSESTree.TSProtectedKeyword | TSESTree.TSPublicKeyword | TSESTree.TSQualifiedName | TSESTree.TSReadonlyKeyword | TSESTree.TSRestType | TSESTree.TSStaticKeyword | TSESTree.TSStringKeyword | TSESTree.TSSymbolKeyword | TSESTree.TSThisType | TSESTree.TSTupleType | TSESTree.TSTypeAliasDeclaration | TSESTree.TSTypeAnnotation | TSESTree.TSTypeAssertion | TSESTree.TSTypeLiteral | TSESTree.TSTypeOperator | TSESTree.TSTypeParameter | TSESTree.TSTypeParameterDeclaration | TSESTree.TSTypeParameterInstantiation | TSESTree.TSTypePredicate | TSESTree.TSTypeQuery | TSESTree.TSTypeReference | TSESTree.TSUndefinedKeyword | TSESTree.TSUnionType | TSESTree.TSUnknownKeyword | TSESTree.TSVoidKeyword | TSESTree.UnaryExpression | TSESTree.UpdateExpression | TSESTree.VariableDeclaration | TSESTree.VariableDeclarator | TSESTree.WhileStatement | TSESTree.WithStatement | TSESTree.YieldExpression | null | undefined, maybeImplicitGlobal?: boolean | undefined, partial?: boolean | undefined, init?: boolean | undefined): Reference; + READ: 0x1; + WRITE: 0x2; + RW: 0x3; }; export { Reference }; //# sourceMappingURL=Reference.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map index 635aa0cb..1384afbb 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,oBAAY,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE5C,UAAU,SAAS;IACjB,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAChC,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;IAEd,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,OAAO,IAAI,OAAO,CAAC;IACnB,MAAM,IAAI,OAAO,CAAC;IAClB,WAAW,IAAI,OAAO,CAAC;IACvB,UAAU,IAAI,OAAO,CAAC;IACtB,WAAW,IAAI,OAAO,CAAC;CACxB;AACD,QAAA,MAAM,SAAS;;;;;CAcd,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Reference.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,oBAAY,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE5C,UAAU,SAAS;IACjB,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAChC,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;IAEd,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,OAAO,IAAI,OAAO,CAAC;IACnB,MAAM,IAAI,OAAO,CAAC;IAClB,WAAW,IAAI,OAAO,CAAC;IACvB,UAAU,IAAI,OAAO,CAAC;IACtB,WAAW,IAAI,OAAO,CAAC;CACxB;AACD,QAAA,MAAM,SAAS;qBAEC,SAAS,UAAU,SACxB,KAAK,2lKAMX,SAAS;UAEN,GAAG;WACF,GAAG;QACN,GAAG;CACR,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js index 9723b7d8..71a4559a 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.Reference = void 0; const reference_1 = __importDefault(require("eslint-scope/lib/reference")); const Reference = reference_1.default; exports.Reference = Reference; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map index b4dd7824..8b1c95b4 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map @@ -1 +1 @@ -{"version":3,"file":"Reference.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Reference.ts"],"names":[],"mappings":";;;;;AACA,2EAAyD;AAwBzD,MAAM,SAAS,GAAG,mBAcjB,CAAC;AAEO,8BAAS"} \ No newline at end of file +{"version":3,"file":"Reference.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Reference.ts"],"names":[],"mappings":";;;;;;AAAA,2EAAyD;AAyBzD,MAAM,SAAS,GAAG,mBAcjB,CAAC;AAEO,8BAAS"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts index 43a39ead..beeb2888 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; import { PatternVisitorCallback, PatternVisitorOptions, Visitor } from './Options'; import { Scope } from './Scope'; import { ScopeManager } from './ScopeManager'; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map index 89740fb8..37a11bf7 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Referencer.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Referencer.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js index ed334118..4aafa5aa 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js @@ -3,6 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.Referencer = void 0; +/* eslint-disable @typescript-eslint/no-explicit-any */ const referencer_1 = __importDefault(require("eslint-scope/lib/referencer")); const Referencer = referencer_1.default; exports.Referencer = Referencer; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map index 44ec03ab..2d80e28d 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map @@ -1 +1 @@ -{"version":3,"file":"Referencer.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Referencer.ts"],"names":[],"mappings":";;;;;AAEA,6EAA2D;AA0E3D,MAAM,UAAU,GAAG,oBAElB,CAAC;AAEO,gCAAU"} \ No newline at end of file +{"version":3,"file":"Referencer.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Referencer.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAuD;AACvD,6EAA2D;AA2E3D,MAAM,UAAU,GAAG,oBAElB,CAAC;AAEO,gCAAU"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts index 80938565..ae6bd114 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; import { Definition } from './Definition'; import { Reference, ReferenceFlag } from './Reference'; import { ScopeManager } from './ScopeManager'; @@ -71,7 +71,7 @@ interface ScopeChildConstructorWithUpperScope { } interface GlobalScope extends Scope { } -declare const GlobalScope: ScopeConstructor & (new (scopeManager: ScopeManager, block: TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BigIntLiteral | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.ClassBody | TSESTree.ClassDeclaration | TSESTree.ClassExpression | TSESTree.ClassPropertyComputedName | TSESTree.ClassPropertyNonComputedName | TSESTree.ConditionalExpression | TSESTree.ContinueStatement | TSESTree.DebuggerStatement | TSESTree.Decorator | TSESTree.DoWhileStatement | TSESTree.EmptyStatement | TSESTree.ExportAllDeclaration | TSESTree.ExportDefaultDeclaration | TSESTree.ExportNamedDeclaration | TSESTree.ExportSpecifier | TSESTree.ExpressionStatement | TSESTree.ForInStatement | TSESTree.ForOfStatement | TSESTree.ForStatement | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.IfStatement | TSESTree.Import | TSESTree.ImportDeclaration | TSESTree.ImportDefaultSpecifier | TSESTree.ImportNamespaceSpecifier | TSESTree.ImportSpecifier | TSESTree.JSXAttribute | TSESTree.JSXClosingElement | TSESTree.JSXClosingFragment | TSESTree.JSXElement | TSESTree.JSXEmptyExpression | TSESTree.JSXExpressionContainer | TSESTree.JSXFragment | TSESTree.JSXIdentifier | TSESTree.JSXOpeningElement | TSESTree.JSXOpeningFragment | TSESTree.JSXSpreadAttribute | TSESTree.JSXSpreadChild | TSESTree.JSXMemberExpression | TSESTree.JSXText | TSESTree.LabeledStatement | TSESTree.BooleanLiteral | TSESTree.NumberLiteral | TSESTree.NullLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.MethodDefinitionComputedName | TSESTree.MethodDefinitionNonComputedName | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.OptionalCallExpression | TSESTree.OptionalMemberExpressionComputedName | TSESTree.OptionalMemberExpressionNonComputedName | TSESTree.Program | TSESTree.PropertyComputedName | TSESTree.PropertyNonComputedName | TSESTree.RestElement | TSESTree.ReturnStatement | TSESTree.SequenceExpression | TSESTree.SpreadElement | TSESTree.Super | TSESTree.SwitchCase | TSESTree.SwitchStatement | TSESTree.TaggedTemplateExpression | TSESTree.TemplateElement | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.ThrowStatement | TSESTree.TryStatement | TSESTree.TSAbstractClassPropertyComputedName | TSESTree.TSAbstractClassPropertyNonComputedName | TSESTree.TSAbstractKeyword | TSESTree.TSAbstractMethodDefinitionComputedName | TSESTree.TSAbstractMethodDefinitionNonComputedName | TSESTree.TSAnyKeyword | TSESTree.TSArrayType | TSESTree.TSAsExpression | TSESTree.TSAsyncKeyword | TSESTree.TSBigIntKeyword | TSESTree.TSBooleanKeyword | TSESTree.TSCallSignatureDeclaration | TSESTree.TSClassImplements | TSESTree.TSConditionalType | TSESTree.TSConstructorType | TSESTree.TSConstructSignatureDeclaration | TSESTree.TSDeclareFunction | TSESTree.TSDeclareKeyword | TSESTree.TSEmptyBodyFunctionExpression | TSESTree.TSEnumDeclaration | TSESTree.TSEnumMemberComputedName | TSESTree.TSEnumMemberNonComputedName | TSESTree.TSExportAssignment | TSESTree.TSExportKeyword | TSESTree.TSExternalModuleReference | TSESTree.TSFunctionType | TSESTree.TSImportEqualsDeclaration | TSESTree.TSImportType | TSESTree.TSIndexedAccessType | TSESTree.TSIndexSignature | TSESTree.TSInferType | TSESTree.TSInterfaceDeclaration | TSESTree.TSInterfaceBody | TSESTree.TSInterfaceHeritage | TSESTree.TSIntersectionType | TSESTree.TSLiteralType | TSESTree.TSMappedType | TSESTree.TSMethodSignatureComputedName | TSESTree.TSMethodSignatureNonComputedName | TSESTree.TSModuleBlock | TSESTree.TSModuleDeclaration | TSESTree.TSNamespaceExportDeclaration | TSESTree.TSNeverKeyword | TSESTree.TSNonNullExpression | TSESTree.TSNullKeyword | TSESTree.TSNumberKeyword | TSESTree.TSObjectKeyword | TSESTree.TSOptionalType | TSESTree.TSParameterProperty | TSESTree.TSParenthesizedType | TSESTree.TSPropertySignatureComputedName | TSESTree.TSPropertySignatureNonComputedName | TSESTree.TSPublicKeyword | TSESTree.TSPrivateKeyword | TSESTree.TSProtectedKeyword | TSESTree.TSQualifiedName | TSESTree.TSReadonlyKeyword | TSESTree.TSRestType | TSESTree.TSStaticKeyword | TSESTree.TSStringKeyword | TSESTree.TSSymbolKeyword | TSESTree.TSThisType | TSESTree.TSTupleType | TSESTree.TSTypeAliasDeclaration | TSESTree.TSTypeAnnotation | TSESTree.TSTypeAssertion | TSESTree.TSTypeLiteral | TSESTree.TSTypeOperator | TSESTree.TSTypeParameter | TSESTree.TSTypeParameterDeclaration | TSESTree.TSTypeParameterInstantiation | TSESTree.TSTypePredicate | TSESTree.TSTypeQuery | TSESTree.TSTypeReference | TSESTree.TSUndefinedKeyword | TSESTree.TSUnionType | TSESTree.TSUnknownKeyword | TSESTree.TSVoidKeyword | TSESTree.UpdateExpression | TSESTree.UnaryExpression | TSESTree.VariableDeclaration | TSESTree.VariableDeclarator | TSESTree.WhileStatement | TSESTree.WithStatement | TSESTree.YieldExpression | null) => GlobalScope); +declare const GlobalScope: ScopeConstructor & (new (scopeManager: ScopeManager, block: TSESTree.Node | null) => GlobalScope); interface ModuleScope extends Scope { } declare const ModuleScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; @@ -92,7 +92,7 @@ interface SwitchScope extends Scope { declare const SwitchScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; interface FunctionScope extends Scope { } -declare const FunctionScope: ScopeConstructor & (new (scopeManager: ScopeManager, upperScope: Scope, block: TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BigIntLiteral | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.ClassBody | TSESTree.ClassDeclaration | TSESTree.ClassExpression | TSESTree.ClassPropertyComputedName | TSESTree.ClassPropertyNonComputedName | TSESTree.ConditionalExpression | TSESTree.ContinueStatement | TSESTree.DebuggerStatement | TSESTree.Decorator | TSESTree.DoWhileStatement | TSESTree.EmptyStatement | TSESTree.ExportAllDeclaration | TSESTree.ExportDefaultDeclaration | TSESTree.ExportNamedDeclaration | TSESTree.ExportSpecifier | TSESTree.ExpressionStatement | TSESTree.ForInStatement | TSESTree.ForOfStatement | TSESTree.ForStatement | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.IfStatement | TSESTree.Import | TSESTree.ImportDeclaration | TSESTree.ImportDefaultSpecifier | TSESTree.ImportNamespaceSpecifier | TSESTree.ImportSpecifier | TSESTree.JSXAttribute | TSESTree.JSXClosingElement | TSESTree.JSXClosingFragment | TSESTree.JSXElement | TSESTree.JSXEmptyExpression | TSESTree.JSXExpressionContainer | TSESTree.JSXFragment | TSESTree.JSXIdentifier | TSESTree.JSXOpeningElement | TSESTree.JSXOpeningFragment | TSESTree.JSXSpreadAttribute | TSESTree.JSXSpreadChild | TSESTree.JSXMemberExpression | TSESTree.JSXText | TSESTree.LabeledStatement | TSESTree.BooleanLiteral | TSESTree.NumberLiteral | TSESTree.NullLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.MethodDefinitionComputedName | TSESTree.MethodDefinitionNonComputedName | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.OptionalCallExpression | TSESTree.OptionalMemberExpressionComputedName | TSESTree.OptionalMemberExpressionNonComputedName | TSESTree.Program | TSESTree.PropertyComputedName | TSESTree.PropertyNonComputedName | TSESTree.RestElement | TSESTree.ReturnStatement | TSESTree.SequenceExpression | TSESTree.SpreadElement | TSESTree.Super | TSESTree.SwitchCase | TSESTree.SwitchStatement | TSESTree.TaggedTemplateExpression | TSESTree.TemplateElement | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.ThrowStatement | TSESTree.TryStatement | TSESTree.TSAbstractClassPropertyComputedName | TSESTree.TSAbstractClassPropertyNonComputedName | TSESTree.TSAbstractKeyword | TSESTree.TSAbstractMethodDefinitionComputedName | TSESTree.TSAbstractMethodDefinitionNonComputedName | TSESTree.TSAnyKeyword | TSESTree.TSArrayType | TSESTree.TSAsExpression | TSESTree.TSAsyncKeyword | TSESTree.TSBigIntKeyword | TSESTree.TSBooleanKeyword | TSESTree.TSCallSignatureDeclaration | TSESTree.TSClassImplements | TSESTree.TSConditionalType | TSESTree.TSConstructorType | TSESTree.TSConstructSignatureDeclaration | TSESTree.TSDeclareFunction | TSESTree.TSDeclareKeyword | TSESTree.TSEmptyBodyFunctionExpression | TSESTree.TSEnumDeclaration | TSESTree.TSEnumMemberComputedName | TSESTree.TSEnumMemberNonComputedName | TSESTree.TSExportAssignment | TSESTree.TSExportKeyword | TSESTree.TSExternalModuleReference | TSESTree.TSFunctionType | TSESTree.TSImportEqualsDeclaration | TSESTree.TSImportType | TSESTree.TSIndexedAccessType | TSESTree.TSIndexSignature | TSESTree.TSInferType | TSESTree.TSInterfaceDeclaration | TSESTree.TSInterfaceBody | TSESTree.TSInterfaceHeritage | TSESTree.TSIntersectionType | TSESTree.TSLiteralType | TSESTree.TSMappedType | TSESTree.TSMethodSignatureComputedName | TSESTree.TSMethodSignatureNonComputedName | TSESTree.TSModuleBlock | TSESTree.TSModuleDeclaration | TSESTree.TSNamespaceExportDeclaration | TSESTree.TSNeverKeyword | TSESTree.TSNonNullExpression | TSESTree.TSNullKeyword | TSESTree.TSNumberKeyword | TSESTree.TSObjectKeyword | TSESTree.TSOptionalType | TSESTree.TSParameterProperty | TSESTree.TSParenthesizedType | TSESTree.TSPropertySignatureComputedName | TSESTree.TSPropertySignatureNonComputedName | TSESTree.TSPublicKeyword | TSESTree.TSPrivateKeyword | TSESTree.TSProtectedKeyword | TSESTree.TSQualifiedName | TSESTree.TSReadonlyKeyword | TSESTree.TSRestType | TSESTree.TSStaticKeyword | TSESTree.TSStringKeyword | TSESTree.TSSymbolKeyword | TSESTree.TSThisType | TSESTree.TSTupleType | TSESTree.TSTypeAliasDeclaration | TSESTree.TSTypeAnnotation | TSESTree.TSTypeAssertion | TSESTree.TSTypeLiteral | TSESTree.TSTypeOperator | TSESTree.TSTypeParameter | TSESTree.TSTypeParameterDeclaration | TSESTree.TSTypeParameterInstantiation | TSESTree.TSTypePredicate | TSESTree.TSTypeQuery | TSESTree.TSTypeReference | TSESTree.TSUndefinedKeyword | TSESTree.TSUnionType | TSESTree.TSUnknownKeyword | TSESTree.TSVoidKeyword | TSESTree.UpdateExpression | TSESTree.UnaryExpression | TSESTree.VariableDeclaration | TSESTree.VariableDeclarator | TSESTree.WhileStatement | TSESTree.WithStatement | TSESTree.YieldExpression | null, isMethodDefinition: boolean) => FunctionScope); +declare const FunctionScope: ScopeConstructor & (new (scopeManager: ScopeManager, upperScope: Scope, block: TSESTree.Node | null, isMethodDefinition: boolean) => FunctionScope); interface ForScope extends Scope { } declare const ForScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map index 7f7bd636..8b6f342e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Scope.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Scope.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js index 6965dc6f..f4f604fc 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js @@ -1,6 +1,7 @@ "use strict"; /* eslint-disable @typescript-eslint/no-empty-interface, @typescript-eslint/no-explicit-any */ Object.defineProperty(exports, "__esModule", { value: true }); +exports.ClassScope = exports.ForScope = exports.FunctionScope = exports.SwitchScope = exports.BlockScope = exports.WithScope = exports.CatchScope = exports.FunctionExpressionNameScope = exports.ModuleScope = exports.GlobalScope = exports.Scope = void 0; const scope_1 = require("eslint-scope/lib/scope"); const Scope = scope_1.Scope; exports.Scope = Scope; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map index 28325821..b0d79696 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map @@ -1 +1 @@ -{"version":3,"file":"Scope.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Scope.ts"],"names":[],"mappings":";AAAA,8FAA8F;;AAG9F,kDAYgC;AA6GhC,MAAM,KAAK,GAAG,aAA+B,CAAC;AA2D5C,sBAAK;AAhDP,MAAM,WAAW,GAAG,mBAEnB,CAAC;AA+CA,kCAAW;AA5Cb,MAAM,WAAW,GAAG,mBAC8B,CAAC;AA4CjD,kCAAW;AAzCb,MAAM,2BAA2B,GAAG,mCAC8B,CAAC;AAyCjE,kEAA2B;AAtC7B,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAsChD,gCAAU;AAnCZ,MAAM,SAAS,GAAG,iBAC8B,CAAC;AAmC/C,8BAAS;AAhCX,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAgChD,gCAAU;AA7BZ,MAAM,WAAW,GAAG,mBAC8B,CAAC;AA6BjD,kCAAW;AA1Bb,MAAM,aAAa,GAAG,qBAOrB,CAAC;AAoBA,sCAAa;AAjBf,MAAM,QAAQ,GAAG,gBAC8B,CAAC;AAiB9C,4BAAQ;AAdV,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAchD,gCAAU"} \ No newline at end of file +{"version":3,"file":"Scope.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Scope.ts"],"names":[],"mappings":";AAAA,8FAA8F;;;AAE9F,kDAYgC;AA8GhC,MAAM,KAAK,GAAG,aAA+B,CAAC;AA2D5C,sBAAK;AAhDP,MAAM,WAAW,GAAG,mBAEnB,CAAC;AA+CA,kCAAW;AA5Cb,MAAM,WAAW,GAAG,mBAC8B,CAAC;AA4CjD,kCAAW;AAzCb,MAAM,2BAA2B,GAAG,mCAC8B,CAAC;AAyCjE,kEAA2B;AAtC7B,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAsChD,gCAAU;AAnCZ,MAAM,SAAS,GAAG,iBAC8B,CAAC;AAmC/C,8BAAS;AAhCX,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAgChD,gCAAU;AA7BZ,MAAM,WAAW,GAAG,mBAC8B,CAAC;AA6BjD,kCAAW;AA1Bb,MAAM,aAAa,GAAG,qBAOrB,CAAC;AAoBA,sCAAa;AAjBf,MAAM,QAAQ,GAAG,gBAC8B,CAAC;AAiB9C,4BAAQ;AAdV,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAchD,gCAAU"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts index a865aa70..9b7e929a 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts @@ -1,4 +1,5 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; +import { EcmaVersion } from '../ts-eslint'; import { Scope } from './Scope'; import { Variable } from './Variable'; interface ScopeManagerOptions { @@ -8,7 +9,7 @@ interface ScopeManagerOptions { nodejsScope?: boolean; sourceType?: 'module' | 'script'; impliedStrict?: boolean; - ecmaVersion?: number; + ecmaVersion?: EcmaVersion; } interface ScopeManager { __options: ScopeManagerOptions; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map index aeb32e35..7c9ba533 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"ScopeManager.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/ScopeManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ScopeManager.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/ScopeManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js index a37ab9c8..c886eb72 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.ScopeManager = void 0; const scope_manager_1 = __importDefault(require("eslint-scope/lib/scope-manager")); const ScopeManager = scope_manager_1.default; exports.ScopeManager = ScopeManager; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map index 4cb95d61..35d90d13 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map @@ -1 +1 @@ -{"version":3,"file":"ScopeManager.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/ScopeManager.ts"],"names":[],"mappings":";;;;;AACA,mFAAgE;AAsDhE,MAAM,YAAY,GAAG,uBAEpB,CAAC;AAEO,oCAAY"} \ No newline at end of file +{"version":3,"file":"ScopeManager.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/ScopeManager.ts"],"names":[],"mappings":";;;;;;AAAA,mFAAgE;AAwDhE,MAAM,YAAY,GAAG,uBAEpB,CAAC;AAEO,oCAAY"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts index 14323b02..a5d6ddff 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts @@ -1,4 +1,4 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import { TSESTree } from '../ts-estree'; import { Reference } from './Reference'; import { Definition } from './Definition'; import { Scope } from './Scope'; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map index 9c581e3c..604e1855 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Variable.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Variable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAEhE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;IACnC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,QAAA,MAAM,QAAQ,oBAEb,CAAC;AAEF,OAAO,EAAE,QAAQ,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"Variable.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Variable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;IACnC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,QAAA,MAAM,QAAQ,YACJ,QACT,CAAC;AAEF,OAAO,EAAE,QAAQ,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js index 1fe05106..c0fdac2b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.Variable = void 0; const variable_1 = __importDefault(require("eslint-scope/lib/variable")); const Variable = variable_1.default; exports.Variable = Variable; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map index 3d3036fa..d6545bb0 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map @@ -1 +1 @@ -{"version":3,"file":"Variable.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Variable.ts"],"names":[],"mappings":";;;;;AACA,yEAAuD;AAgBvD,MAAM,QAAQ,GAAG,kBAEhB,CAAC;AAEO,4BAAQ"} \ No newline at end of file +{"version":3,"file":"Variable.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Variable.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAuD;AAiBvD,MAAM,QAAQ,GAAG,kBAEhB,CAAC;AAEO,4BAAQ"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts index a719dd65..dbcb76bb 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts @@ -1,3 +1,5 @@ +import { EcmaVersion } from '../ts-eslint'; +import { TSESTree } from '../ts-estree'; import { ScopeManager } from './ScopeManager'; interface AnalysisOptions { optimistic?: boolean; @@ -5,10 +7,10 @@ interface AnalysisOptions { ignoreEval?: boolean; nodejsScope?: boolean; impliedStrict?: boolean; - fallback?: string | ((node: {}) => string[]); + fallback?: string | ((node: TSESTree.Node) => string[]); sourceType?: 'script' | 'module'; - ecmaVersion?: number; + ecmaVersion?: EcmaVersion; } -declare const analyze: (ast: {}, options?: AnalysisOptions | undefined) => ScopeManager; +declare const analyze: (ast: TSESTree.Node, options?: AnalysisOptions | undefined) => ScopeManager; export { analyze, AnalysisOptions }; //# sourceMappingURL=analyze.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map index aa130506..9a3654b6 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/analyze.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,UAAU,eAAe;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC,CAAC;IAC7C,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AACD,QAAA,MAAM,OAAO,kEAGI,CAAC;AAElB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/analyze.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,UAAU,eAAe;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC;IACxD,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AACD,QAAA,MAAM,OAAO,QACN,SAAS,IAAI,4CAEf,YAAY,CAAC;AAElB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js index 4f34a8ff..7fddff17 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.analyze = void 0; const eslint_scope_1 = require("eslint-scope"); const analyze = eslint_scope_1.analyze; exports.analyze = analyze; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map index 4db6fd83..f015cc4e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/analyze.ts"],"names":[],"mappings":";;AAAA,+CAAwD;AAaxD,MAAM,OAAO,GAAG,sBAGC,CAAC;AAET,0BAAO"} \ No newline at end of file +{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/analyze.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AAexD,MAAM,OAAO,GAAG,sBAGC,CAAC;AAET,0BAAO"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js index 77358743..34d3243c 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js @@ -1,16 +1,25 @@ "use strict"; -function __export(m) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.version = void 0; const eslint_scope_1 = require("eslint-scope"); -__export(require("./analyze")); -__export(require("./Definition")); -__export(require("./PatternVisitor")); -__export(require("./Reference")); -__export(require("./Referencer")); -__export(require("./Scope")); -__export(require("./ScopeManager")); -__export(require("./Variable")); +__exportStar(require("./analyze"), exports); +__exportStar(require("./Definition"), exports); +__exportStar(require("./Options"), exports); +__exportStar(require("./PatternVisitor"), exports); +__exportStar(require("./Reference"), exports); +__exportStar(require("./Referencer"), exports); +__exportStar(require("./Scope"), exports); +__exportStar(require("./ScopeManager"), exports); +__exportStar(require("./Variable"), exports); exports.version = eslint_scope_1.version; //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map index 5e963f6b..8872a9fb 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/index.ts"],"names":[],"mappings":";;;;;AAAA,+CAAwD;AAExD,+BAA0B;AAC1B,kCAA6B;AAE7B,sCAAiC;AACjC,iCAA4B;AAC5B,kCAA6B;AAC7B,6BAAwB;AACxB,oCAA+B;AAC/B,gCAA2B;AACd,QAAA,OAAO,GAAW,sBAAa,CAAC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+CAAwD;AAExD,4CAA0B;AAC1B,+CAA6B;AAC7B,4CAA0B;AAC1B,mDAAiC;AACjC,8CAA4B;AAC5B,+CAA6B;AAC7B,0CAAwB;AACxB,iDAA+B;AAC/B,6CAA2B;AACd,QAAA,OAAO,GAAW,sBAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts index bd38a81f..88d63790 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts @@ -1,4 +1,4 @@ -import { TSESTree, AST_TOKEN_TYPES } from '@typescript-eslint/typescript-estree'; +import { TSESTree, AST_TOKEN_TYPES } from '../ts-estree'; declare namespace AST { type TokenType = AST_TOKEN_TYPES; type Token = TSESTree.Token; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map index e9b730d9..8dca544b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"AST.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/AST.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,QAAQ,EACR,eAAe,EAChB,MAAM,sCAAsC,CAAC;AAE9C,kBAAU,GAAG,CAAC;IACZ,KAAY,SAAS,GAAG,eAAe,CAAC;IAExC,KAAY,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEnC,KAAY,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;IAErD,KAAY,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;CACpC;AAED,OAAO,EAAE,GAAG,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"AST.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/AST.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEzD,kBAAU,GAAG,CAAC;IACZ,KAAY,SAAS,GAAG,eAAe,CAAC;IAExC,KAAY,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEnC,KAAY,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;IAErD,KAAY,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;CACpC;AAED,OAAO,EAAE,GAAG,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts index 412c3b3a..f996162e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts @@ -1,15 +1,75 @@ import { Linter } from './Linter'; -import { RuleModule, RuleListener } from './Rule'; -interface CLIEngine { - version: string; +import { RuleListener, RuleMetaData, RuleModule } from './Rule'; +declare class CLIEngineBase { + /** + * Creates a new instance of the core CLI engine. + * @param providedOptions The options for this instance. + */ + constructor(options: CLIEngine.Options); + /** + * Add a plugin by passing its configuration + * @param name Name of the plugin. + * @param pluginObject Plugin configuration object. + */ + addPlugin(name: string, pluginObject: Linter.Plugin): void; + /** + * Executes the current configuration on an array of file and directory names. + * @param patterns An array of file and directory names. + * @returns The results for all files that were linted. + */ executeOnFiles(patterns: string[]): CLIEngine.LintReport; - resolveFileGlobPatterns(patterns: string[]): string[]; + /** + * Executes the current configuration on text. + * @param text A string of JavaScript code to lint. + * @param filename An optional string representing the texts filename. + * @param warnIgnored Always warn when a file is ignored + * @returns The results for the linting. + */ + executeOnText(text: string, filename?: string, warnIgnored?: boolean): CLIEngine.LintReport; + /** + * Returns a configuration object for the given file based on the CLI options. + * This is the same logic used by the ESLint CLI executable to determine configuration for each file it processes. + * @param filePath The path of the file to retrieve a config object for. + * @returns A configuration object for the file. + */ getConfigForFile(filePath: string): Linter.Config; - executeOnText(text: string, filename?: string): CLIEngine.LintReport; - addPlugin(name: string, pluginObject: unknown): void; - isPathIgnored(filePath: string): boolean; + /** + * Returns the formatter representing the given format. + * @param format The name of the format to load or the path to a custom formatter. + * @returns The formatter function. + */ getFormatter(format?: string): CLIEngine.Formatter; + /** + * Checks if a given path is ignored by ESLint. + * @param filePath The path of the file to check. + * @returns Whether or not the given path is ignored. + */ + isPathIgnored(filePath: string): boolean; + /** + * Resolves the patterns passed into `executeOnFiles()` into glob-based patterns for easier handling. + * @param patterns The file patterns passed on the command line. + * @returns The equivalent glob patterns. + */ + resolveFileGlobPatterns(patterns: string[]): string[]; getRules(): Map>; + /** + * Returns results that only contains errors. + * @param results The results to filter. + * @returns The filtered results. + */ + static getErrorResults(results: CLIEngine.LintResult[]): CLIEngine.LintResult[]; + /** + * Returns the formatter representing the given format or null if the `format` is not a string. + * @param format The name of the format to load or the path to a custom formatter. + * @returns The formatter function. + */ + static getFormatter(format?: string): CLIEngine.Formatter; + /** + * Outputs fixes from the given results to files. + * @param report The report object created by CLIEngine. + */ + static outputFixes(report: CLIEngine.LintReport): void; + static version: string; } declare namespace CLIEngine { interface Options { @@ -23,6 +83,7 @@ declare namespace CLIEngine { configFile?: string; cwd?: string; envs?: string[]; + errorOnUnmatchedPattern?: boolean; extensions?: string[]; fix?: boolean; globals?: string[]; @@ -33,6 +94,7 @@ declare namespace CLIEngine { parser?: string; parserOptions?: Linter.ParserOptions; plugins?: string[]; + resolvePluginsRelativeTo?: string; rules?: { [name: string]: Linter.RuleLevel | Linter.RuleLevelAndOptions; }; @@ -55,13 +117,27 @@ declare namespace CLIEngine { warningCount: number; fixableErrorCount: number; fixableWarningCount: number; + usedDeprecatedRules: DeprecatedRuleUse[]; } - type Formatter = (results: LintResult[]) => string; + interface DeprecatedRuleUse { + ruleId: string; + replacedBy: string[]; + } + interface LintResultData { + rulesMeta: { + [ruleId: string]: RuleMetaData; + }; + } + type Formatter = (results: LintResult[], data?: LintResultData) => string; +} +declare const CLIEngine_base: typeof CLIEngineBase; +/** + * The underlying utility that runs the ESLint command line interface. This object will read the filesystem for + * configuration and file information but will not output any results. Instead, it allows you direct access to the + * important information so you can deal with the output yourself. + * @deprecated use the ESLint class instead + */ +declare class CLIEngine extends CLIEngine_base { } -declare const CLIEngine: { - new (options: CLIEngine.Options): CLIEngine; - getErrorResults(results: CLIEngine.LintResult[]): CLIEngine.LintResult[]; - outputFixes(report: CLIEngine.LintReport): void; -}; export { CLIEngine }; //# sourceMappingURL=CLIEngine.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map index 4adb507b..6d8d24e0 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"CLIEngine.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/CLIEngine.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"CLIEngine.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/CLIEngine.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js index 861cf4ad..8ccf2b7e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js @@ -1,7 +1,15 @@ "use strict"; /* eslint-disable @typescript-eslint/no-namespace */ Object.defineProperty(exports, "__esModule", { value: true }); +exports.CLIEngine = void 0; const eslint_1 = require("eslint"); -const CLIEngine = eslint_1.CLIEngine; +/** + * The underlying utility that runs the ESLint command line interface. This object will read the filesystem for + * configuration and file information but will not output any results. Instead, it allows you direct access to the + * important information so you can deal with the output yourself. + * @deprecated use the ESLint class instead + */ +class CLIEngine extends eslint_1.CLIEngine { +} exports.CLIEngine = CLIEngine; //# sourceMappingURL=CLIEngine.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map index 81a10f26..4ac14814 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map @@ -1 +1 @@ -{"version":3,"file":"CLIEngine.js","sourceRoot":"","sources":["../../src/ts-eslint/CLIEngine.ts"],"names":[],"mappings":";AAAA,oDAAoD;;AAEpD,mCAAsD;AA8EtD,MAAM,SAAS,GAAG,kBAOjB,CAAC;AAEO,8BAAS"} \ No newline at end of file +{"version":3,"file":"CLIEngine.js","sourceRoot":"","sources":["../../src/ts-eslint/CLIEngine.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,mCAAsD;AAyKtD;;;;;GAKG;AACH,MAAM,SAAU,SAAS,kBAAwC;CAAG;AAE3D,8BAAS"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ESLint.js.map diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts index 572ad344..248e8fb2 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts @@ -1,84 +1,324 @@ -import { TSESTree, ParserServices } from '@typescript-eslint/typescript-estree'; +import { TSESTree, ParserServices } from '../ts-estree'; import { ParserOptions as TSParserOptions } from './ParserOptions'; -import { RuleModule, RuleFix } from './Rule'; +import { RuleCreateFunction, RuleFix, RuleModule } from './Rule'; import { Scope } from './Scope'; import { SourceCode } from './SourceCode'; -interface Linter { - version: string; - verify(code: SourceCode | string, config: Linter.Config, filename?: string): Linter.LintMessage[]; - verify(code: SourceCode | string, config: Linter.Config, options: Linter.LintOptions): Linter.LintMessage[]; - verifyAndFix(code: string, config: Linter.Config, filename?: string): Linter.FixReport; - verifyAndFix(code: string, config: Linter.Config, options: Linter.FixOptions): Linter.FixReport; +declare class LinterBase { + /** + * Initialize the Linter. + * @param config the config object + */ + constructor(config?: Linter.LinterOptions); + /** + * Define a new parser module + * @param parserId Name of the parser + * @param parserModule The parser object + */ + defineParser(parserId: string, parserModule: Linter.ParserModule): void; + /** + * Defines a new linting rule. + * @param ruleId A unique rule identifier + * @param ruleModule Function from context to object mapping AST node types to event handlers + */ + defineRule(ruleId: string, ruleModule: RuleModule | RuleCreateFunction): void; + /** + * Defines many new linting rules. + * @param rulesToDefine map from unique rule identifier to rule + */ + defineRules(rulesToDefine: Record | RuleCreateFunction>): void; + /** + * Gets an object with all loaded rules. + * @returns All loaded rules + */ + getRules(): Map>; + /** + * Gets the `SourceCode` object representing the parsed source. + * @returns The `SourceCode` object. + */ getSourceCode(): SourceCode; - defineRule(name: string, rule: { - meta?: RuleModule['meta']; - create: RuleModule['create']; - }): void; - defineRules(rules: Record>): void; - getRules(): Map>; - defineParser(name: string, parser: Linter.ParserModule): void; + /** + * Verifies the text against the rules specified by the second argument. + * @param textOrSourceCode The text to parse or a SourceCode object. + * @param config An ESLintConfig instance to configure everything. + * @param filenameOrOptions The optional filename of the file being checked. + * If this is not set, the filename will default to '' in the rule context. + * If this is an object, then it has "filename", "allowInlineConfig", and some properties. + * @returns The results as an array of messages or an empty array if no messages. + */ + verify(textOrSourceCode: SourceCode | string, config: Linter.Config, filenameOrOptions?: string | Linter.VerifyOptions): Linter.LintMessage[]; + /** + * Performs multiple autofix passes over the text until as many fixes as possible have been applied. + * @param text The source text to apply fixes to. + * @param config The ESLint config object to use. + * @param options The ESLint options object to use. + * @returns The result of the fix operation as returned from the SourceCodeFixer. + */ + verifyAndFix(code: string, config: Linter.Config, options: Linter.FixOptions): Linter.FixReport; + /** + * The version from package.json. + */ + readonly version: string; + /** + * The version from package.json. + */ + static readonly version: string; } declare namespace Linter { - type Severity = 0 | 1 | 2; - type RuleLevel = Severity | 'off' | 'warn' | 'error'; - type RuleLevelAndOptions = [RuleLevel, ...unknown[]]; - interface Config { - rules?: { - [name: string]: RuleLevel | RuleLevelAndOptions; - }; - parser?: string; - parserOptions?: ParserOptions; - settings?: { - [name: string]: unknown; - }; + export interface LinterOptions { + /** + * path to a directory that should be considered as the current working directory. + */ + cwd?: string; + } + export type Severity = 0 | 1 | 2; + export type SeverityString = 'off' | 'warn' | 'error'; + export type RuleLevel = Severity | SeverityString; + export type RuleLevelAndOptions = [RuleLevel, ...unknown[]]; + export type RuleEntry = RuleLevel | RuleLevelAndOptions; + export type RulesRecord = Partial>; + interface BaseConfig { + $schema?: string; + /** + * The environment settings. + */ env?: { [name: string]: boolean; }; + /** + * The path to other config files or the package name of shareable configs. + */ + extends?: string | string[]; + /** + * The global variable settings. + */ globals?: { [name: string]: boolean; }; - } - type ParserOptions = TSParserOptions; - interface LintOptions { - filename?: string; - preprocess?: (code: string) => string[]; - postprocess?: (problemLists: LintMessage[][]) => LintMessage[]; - allowInlineConfig?: boolean; + /** + * The flag that disables directive comments. + */ + noInlineConfig?: boolean; + /** + * The override settings per kind of files. + */ + overrides?: ConfigOverride[]; + /** + * The path to a parser or the package name of a parser. + */ + parser?: string; + /** + * The parser options. + */ + parserOptions?: ParserOptions; + /** + * The plugin specifiers. + */ + plugins?: string[]; + /** + * The processor specifier. + */ + processor?: string; + /** + * The flag to report unused `eslint-disable` comments. + */ reportUnusedDisableDirectives?: boolean; + /** + * The rule settings. + */ + rules?: RulesRecord; + /** + * The shared settings. + */ + settings?: { + [name: string]: unknown; + }; } - interface LintMessage { - column: number; - line: number; - endColumn?: number; - endLine?: number; - ruleId: string | null; - message: string; - nodeType: string; - fatal?: true; - severity: Severity; - fix?: RuleFix; - source: string | null; + export interface ConfigOverride extends BaseConfig { + excludedFiles?: string | string[]; + files: string | string[]; } - interface FixOptions extends LintOptions { + export interface Config extends BaseConfig { + /** + * The glob patterns that ignore to lint. + */ + ignorePatterns?: string | string[]; + /** + * The root flag. + */ + root?: boolean; + } + export type ParserOptions = TSParserOptions; + export interface VerifyOptions { + /** + * Allow/disallow inline comments' ability to change config once it is set. Defaults to true if not supplied. + * Useful if you want to validate JS without comments overriding rules. + */ + allowInlineConfig?: boolean; + /** + * if `true` then the linter doesn't make `fix` properties into the lint result. + */ + disableFixes?: boolean; + /** + * the filename of the source code. + */ + filename?: string; + /** + * the predicate function that selects adopt code blocks. + */ + filterCodeBlock?: (filename: string, text: string) => boolean; + /** + * postprocessor for report messages. + * If provided, this should accept an array of the message lists + * for each code block returned from the preprocessor, apply a mapping to + * the messages as appropriate, and return a one-dimensional array of + * messages. + */ + postprocess?: Processor['postprocess']; + /** + * preprocessor for source text. + * If provided, this should accept a string of source text, and return an array of code blocks to lint. + */ + preprocess?: Processor['preprocess']; + /** + * Adds reported errors for unused `eslint-disable` directives. + */ + reportUnusedDisableDirectives?: boolean | SeverityString; + } + export interface FixOptions extends VerifyOptions { + /** + * Determines whether fixes should be applied. + */ fix?: boolean; } - interface FixReport { + export interface LintSuggestion { + desc: string; + fix: RuleFix; + messageId?: string; + } + export interface LintMessage { + /** + * The 1-based column number. + */ + column: number; + /** + * The 1-based column number of the end location. + */ + endColumn?: number; + /** + * The 1-based line number of the end location. + */ + endLine?: number; + /** + * If `true` then this is a fatal error. + */ + fatal?: true; + /** + * Information for autofix. + */ + fix?: RuleFix; + /** + * The 1-based line number. + */ + line: number; + /** + * The error message. + */ + message: string; + messageId?: string; + nodeType: string; + /** + * The ID of the rule which makes this message. + */ + ruleId: string | null; + /** + * The severity of this message. + */ + severity: Severity; + source: string | null; + /** + * Information for suggestions + */ + suggestions?: LintSuggestion[]; + } + export interface FixReport { + /** + * True, if the code was fixed + */ fixed: boolean; + /** + * Fixed code text (might be the same as input if no fixes were applied). + */ output: string; + /** + * Collection of all messages for the given code + */ messages: LintMessage[]; } - type ParserModule = { - parse(text: string, options?: unknown): TSESTree.Program; + export type ParserModule = { + parse(text: string, options?: ParserOptions): TSESTree.Program; } | { - parseForESLint(text: string, options?: unknown): ESLintParseResult; + parseForESLint(text: string, options?: ParserOptions): ESLintParseResult; }; - interface ESLintParseResult { + export interface ESLintParseResult { ast: TSESTree.Program; parserServices?: ParserServices; scopeManager?: Scope.ScopeManager; visitorKeys?: SourceCode.VisitorKeys; } + export interface Processor { + /** + * The function to extract code blocks. + */ + preprocess?: (text: string, filename: string) => Array; + /** + * The function to merge messages. + */ + postprocess?: (messagesList: Linter.LintMessage[][], filename: string) => Linter.LintMessage[]; + /** + * If `true` then it means the processor supports autofix. + */ + supportsAutofix?: boolean; + } + export interface Environment { + /** + * The definition of global variables. + */ + globals?: Record; + /** + * The parser options that will be enabled under this environment. + */ + parserOptions?: ParserOptions; + } + export interface Plugin { + /** + * The definition of plugin configs. + */ + configs?: Record; + /** + * The definition of plugin environments. + */ + environments?: Record; + /** + * The definition of plugin processors. + */ + processors?: Record; + /** + * The definition of plugin rules. + */ + rules?: Record>; + } + export {}; +} +declare const Linter_base: typeof LinterBase; +/** + * The Linter object does the actual evaluation of the JavaScript code. It doesn't do any filesystem operations, it + * simply parses and reports on the code. In particular, the Linter object does not process configuration objects + * or files. + */ +declare class Linter extends Linter_base { } -declare const Linter: new () => Linter; export { Linter }; //# sourceMappingURL=Linter.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map index 608e0a79..5c2bc13e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Linter.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Linter.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Linter.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Linter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js index a8a046c0..4fd16f1b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js @@ -1,7 +1,14 @@ "use strict"; /* eslint-disable @typescript-eslint/no-namespace */ Object.defineProperty(exports, "__esModule", { value: true }); +exports.Linter = void 0; const eslint_1 = require("eslint"); -const Linter = eslint_1.Linter; +/** + * The Linter object does the actual evaluation of the JavaScript code. It doesn't do any filesystem operations, it + * simply parses and reports on the code. In particular, the Linter object does not process configuration objects + * or files. + */ +class Linter extends eslint_1.Linter { +} exports.Linter = Linter; //# sourceMappingURL=Linter.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map index 7d939857..8c8e207d 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map @@ -1 +1 @@ -{"version":3,"file":"Linter.js","sourceRoot":"","sources":["../../src/ts-eslint/Linter.ts"],"names":[],"mappings":";AAAA,oDAAoD;;AAGpD,mCAAgD;AAwHhD,MAAM,MAAM,GAAG,eAEd,CAAC;AAEO,wBAAM"} \ No newline at end of file +{"version":3,"file":"Linter.js","sourceRoot":"","sources":["../../src/ts-eslint/Linter.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,mCAAgD;AA8WhD;;;;GAIG;AACH,MAAM,MAAO,SAAS,eAAkC;CAAG;AAElD,wBAAM"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts index 05c9f40e..d864322b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts @@ -1,24 +1,2 @@ -import { TSESTreeOptions } from '@typescript-eslint/typescript-estree'; -export interface ParserOptions { - comment?: boolean; - ecmaFeatures?: { - globalReturn?: boolean; - jsx?: boolean; - }; - ecmaVersion?: 3 | 5 | 6 | 7 | 8 | 9 | 10 | 2015 | 2016 | 2017 | 2018 | 2019; - errorOnTypeScriptSyntacticAndSemanticIssues?: boolean; - errorOnUnknownASTType?: boolean; - extraFileExtensions?: string[]; - debugLevel?: TSESTreeOptions['debugLevel']; - filePath?: string; - loc?: boolean; - noWatch?: boolean; - project?: string | string[]; - range?: boolean; - sourceType?: 'script' | 'module'; - tokens?: boolean; - tsconfigRootDir?: string; - useJSXTextNode?: boolean; - warnOnUnsupportedTypeScriptVersion?: boolean; -} +export { DebugLevel, EcmaVersion, ParserOptions, SourceType, } from '@typescript-eslint/types'; //# sourceMappingURL=ParserOptions.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map index 26b50de7..33c6d0e0 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"ParserOptions.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/ParserOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE;QACb,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,GAAG,CAAC,EAAE,OAAO,CAAC;KACf,CAAC;IACF,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC5E,2CAA2C,CAAC,EAAE,OAAO,CAAC;IACtD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C"} \ No newline at end of file +{"version":3,"file":"ParserOptions.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/ParserOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,aAAa,EACb,UAAU,GACX,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts index 87e3dd9f..66a65991 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts @@ -1,5 +1,5 @@ -import { ParserServices, TSESTree } from '@typescript-eslint/typescript-estree'; import { JSONSchema4 } from '../json-schema'; +import { ParserServices, TSESTree } from '../ts-estree'; import { AST } from './AST'; import { Linter } from './Linter'; import { Scope } from './Scope'; @@ -23,6 +23,10 @@ interface RuleMetaDataDocs { * The URL of the rule's docs */ url: string; + /** + * Specifies whether the rule can return suggestions. + */ + suggestion?: boolean; /** * Does the rule require us to create a full TypeScript Program in order for it * to type-check code. This is only used for documentation purposes. @@ -90,37 +94,37 @@ interface ReportDescriptorBase { /** * The parameters for the message string associated with `messageId`. */ - data?: Record; + readonly data?: Readonly>; /** * The fixer function. */ - fix?: ReportFixFunction | null; + readonly fix?: ReportFixFunction | null; /** * The messageId which is being reported. */ - messageId: TMessageIds; + readonly messageId: TMessageIds; } interface ReportDescriptorWithSuggestion extends ReportDescriptorBase { /** * 6.7's Suggestions API */ - suggest?: Readonly> | null; + readonly suggest?: Readonly> | null; } interface ReportDescriptorNodeOptionalLoc { /** * The Node or AST Token which the report is being attached to */ - node: TSESTree.Node | TSESTree.Comment | TSESTree.Token; + readonly node: TSESTree.Node | TSESTree.Comment | TSESTree.Token; /** * An override of the location of the report */ - loc?: TSESTree.SourceLocation | TSESTree.LineAndColumnData; + readonly loc?: Readonly | Readonly; } interface ReportDescriptorLocOnly { /** * An override of the location of the report */ - loc: TSESTree.SourceLocation | TSESTree.LineAndColumnData; + loc: Readonly | Readonly; } declare type ReportDescriptor = ReportDescriptorWithSuggestion & (ReportDescriptorNodeOptionalLoc | ReportDescriptorLocOnly); interface RuleContext { @@ -133,11 +137,6 @@ interface RuleContext; /** * The name of the parser from configuration. */ @@ -150,6 +149,11 @@ interface RuleContext; /** * Returns an array of the ancestors of the currently-traversed node, starting at * the root of the AST and continuing through the direct parent of the current node. @@ -174,7 +178,7 @@ interface RuleContext; /** * Marks a variable with the given name in the current scope as used. * This affects the no-unused-vars rule. @@ -200,6 +204,7 @@ interface RuleListener { BreakStatement?: RuleFunction; CallExpression?: RuleFunction; CatchClause?: RuleFunction; + ChainExpression?: RuleFunction; ClassBody?: RuleFunction; ClassDeclaration?: RuleFunction; ClassExpression?: RuleFunction; @@ -223,9 +228,9 @@ interface RuleListener { FunctionExpression?: RuleFunction; Identifier?: RuleFunction; IfStatement?: RuleFunction; - Import?: RuleFunction; ImportDeclaration?: RuleFunction; ImportDefaultSpecifier?: RuleFunction; + ImportExpression?: RuleFunction; ImportNamespaceSpecifier?: RuleFunction; ImportSpecifier?: RuleFunction; JSXAttribute?: RuleFunction; @@ -251,8 +256,6 @@ interface RuleListener { NewExpression?: RuleFunction; ObjectExpression?: RuleFunction; ObjectPattern?: RuleFunction; - OptionalCallExpression?: RuleFunction; - OptionalMemberExpression?: RuleFunction; Program?: RuleFunction; Property?: RuleFunction; RestElement?: RuleFunction; @@ -359,7 +362,8 @@ interface RuleModule): TRuleListener; + create(context: Readonly>): TRuleListener; } -export { ReportDescriptor, ReportFixFunction, ReportSuggestionArray, RuleContext, RuleFix, RuleFixer, RuleFunction, RuleListener, RuleMetaData, RuleMetaDataDocs, RuleModule, }; +declare type RuleCreateFunction = (context: Readonly>) => RuleListener; +export { ReportDescriptor, ReportFixFunction, ReportSuggestionArray, RuleContext, RuleCreateFunction, RuleFix, RuleFixer, RuleFunction, RuleListener, RuleMetaData, RuleMetaDataDocs, RuleModule, }; //# sourceMappingURL=Rule.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map index 38bdbbd5..0e858f84 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts index 9496d90d..12de0ff8 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts @@ -1,53 +1,137 @@ -import { AST_NODE_TYPES, AST_TOKEN_TYPES } from '@typescript-eslint/typescript-estree'; +import { AST_NODE_TYPES, AST_TOKEN_TYPES } from '../ts-estree'; import { ParserOptions } from './ParserOptions'; import { RuleModule } from './Rule'; interface ValidTestCase> { - code: string; - options?: TOptions; - filename?: string; - parserOptions?: ParserOptions; - settings?: Record; - parser?: string; - globals?: Record; - env?: { - browser?: boolean; - }; + /** + * Code for the test case. + */ + readonly code: string; + /** + * Environments for the test case. + */ + readonly env?: Readonly>; + /** + * The fake filename for the test case. Useful for rules that make assertion about filenames. + */ + readonly filename?: string; + /** + * The additional global variables. + */ + readonly globals?: Record; + /** + * Options for the test case. + */ + readonly options?: Readonly; + /** + * The absolute path for the parser. + */ + readonly parser?: string; + /** + * Options for the parser. + */ + readonly parserOptions?: Readonly; + /** + * Settings for the test case. + */ + readonly settings?: Readonly>; } interface SuggestionOutput { - messageId: TMessageIds; - data?: Record; + /** + * Reported message ID. + */ + readonly messageId: TMessageIds; + /** + * The data used to fill the message template. + */ + readonly data?: Readonly>; /** * NOTE: Suggestions will be applied as a stand-alone change, without triggering multi-pass fixes. * Each individual error has its own suggestion, so you have to show the correct, _isolated_ output for each suggestion. */ - output: string; + readonly output: string; } interface InvalidTestCase> extends ValidTestCase { - errors: TestCaseError[]; - output?: string | null; + /** + * Expected errors. + */ + readonly errors: readonly TestCaseError[]; + /** + * The expected code after autofixes are applied. If set to `null`, the test runner will assert that no autofix is suggested. + */ + readonly output?: string | null; } interface TestCaseError { - messageId: TMessageIds; - data?: Record; - type?: AST_NODE_TYPES | AST_TOKEN_TYPES; - line?: number; - column?: number; - endLine?: number; - endColumn?: number; - suggestions?: SuggestionOutput[] | null; + /** + * The 1-based column number of the reported start location. + */ + readonly column?: number; + /** + * The data used to fill the message template. + */ + readonly data?: Readonly>; + /** + * The 1-based column number of the reported end location. + */ + readonly endColumn?: number; + /** + * The 1-based line number of the reported end location. + */ + readonly endLine?: number; + /** + * The 1-based line number of the reported start location. + */ + readonly line?: number; + /** + * Reported message ID. + */ + readonly messageId: TMessageIds; + /** + * Reported suggestions. + */ + readonly suggestions?: SuggestionOutput[] | null; + /** + * The type of the reported AST node. + */ + readonly type?: AST_NODE_TYPES | AST_TOKEN_TYPES; } interface RunTests> { - valid: (ValidTestCase | string)[]; - invalid: InvalidTestCase[]; + readonly valid: readonly (ValidTestCase | string)[]; + readonly invalid: readonly InvalidTestCase[]; } interface RuleTesterConfig { - parser: string; - parserOptions?: ParserOptions; + readonly parser: string; + readonly parserOptions?: Readonly; } -declare const RuleTester_base: new (...args: unknown[]) => any; +declare class RuleTesterBase { + /** + * Creates a new instance of RuleTester. + * @param testerConfig extra configuration for the tester + */ + constructor(testerConfig?: RuleTesterConfig); + /** + * Adds a new rule test to execute. + * @param ruleName The name of the rule to run. + * @param rule The rule to test. + * @param test The collection of tests to run. + */ + run>(ruleName: string, rule: RuleModule, tests: RunTests): void; + /** + * If you supply a value to this property, the rule tester will call this instead of using the version defined on + * the global namespace. + * @param text a string describing the rule + * @param callback the test callback + */ + static describe?: (text: string, callback: () => void) => void; + /** + * If you supply a value to this property, the rule tester will call this instead of using the version defined on + * the global namespace. + * @param text a string describing the test case + * @param callback the test callback + */ + static it?: (text: string, callback: () => void) => void; +} +declare const RuleTester_base: typeof RuleTesterBase; declare class RuleTester extends RuleTester_base { - constructor(config?: RuleTesterConfig); - run>(name: string, rule: RuleModule, tests: RunTests): void; } export { InvalidTestCase, SuggestionOutput, RuleTester, RuleTesterConfig, RunTests, TestCaseError, ValidTestCase, }; //# sourceMappingURL=RuleTester.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map index 582cd765..209fca59 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"RuleTester.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/RuleTester.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,eAAe,EAChB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,UAAU,aAAa,CAAC,QAAQ,SAAS,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,GAAG,CAAC,EAAE;QACJ,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED,UAAU,gBAAgB,CAAC,WAAW,SAAS,MAAM;IACnD,SAAS,EAAE,WAAW,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,eAAe,CACvB,WAAW,SAAS,MAAM,EAC1B,QAAQ,SAAS,QAAQ,CAAC,OAAO,EAAE,CAAC,CACpC,SAAQ,aAAa,CAAC,QAAQ,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,UAAU,aAAa,CAAC,WAAW,SAAS,MAAM;IAChD,SAAS,EAAE,WAAW,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,cAAc,GAAG,eAAe,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,GAAG,IAAI,CAAC;CACtD;AAED,UAAU,QAAQ,CAChB,WAAW,SAAS,MAAM,EAC1B,QAAQ,SAAS,QAAQ,CAAC,OAAO,EAAE,CAAC;IAGpC,KAAK,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;IAC5C,OAAO,EAAE,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;CACnD;AACD,UAAU,gBAAgB;IAExB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;;AAGD,cAAM,UAAW,SAAQ,eAGvB;gBACY,MAAM,CAAC,EAAE,gBAAgB;IAWrC,GAAG,CAAC,WAAW,SAAS,MAAM,EAAE,QAAQ,SAAS,QAAQ,CAAC,OAAO,EAAE,CAAC,EAClE,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,EACvC,KAAK,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,GACrC,IAAI;CAIR;AAED,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,aAAa,EACb,aAAa,GACd,CAAC"} \ No newline at end of file +{"version":3,"file":"RuleTester.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/RuleTester.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js index 1e045950..f31d0a67 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js @@ -1,22 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.RuleTester = void 0; const eslint_1 = require("eslint"); -// the cast on the extends is so that we don't want to have the built type defs to attempt to import eslint class RuleTester extends eslint_1.RuleTester { - constructor(config) { - var _a, _b; - super(config); - // nobody will ever need watching in tests - // so we can give everyone a perf win by disabling watching - if ((_b = (_a = config) === null || _a === void 0 ? void 0 : _a.parserOptions) === null || _b === void 0 ? void 0 : _b.project) { - config.parserOptions.noWatch = - typeof config.parserOptions.noWatch === 'boolean' || true; - } - } - run(name, rule, tests) { - // this method is only defined here because we lazily type the eslint import with `any` - super.run(name, rule, tests); - } } exports.RuleTester = RuleTester; //# sourceMappingURL=RuleTester.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map index 1374a80c..4fe5fc64 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map @@ -1 +1 @@ -{"version":3,"file":"RuleTester.js","sourceRoot":"","sources":["../../src/ts-eslint/RuleTester.ts"],"names":[],"mappings":";;AAIA,mCAAwD;AA4DxD,2GAA2G;AAC3G,MAAM,UAAW,SAAS,mBAGxB;IACA,YAAY,MAAyB;;QACnC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,0CAA0C;QAC1C,2DAA2D;QAC3D,gBAAI,MAAM,0CAAE,aAAa,0CAAE,OAAO,EAAE;YAClC,MAAM,CAAC,aAAa,CAAC,OAAO;gBAC1B,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC;SAC7D;IACH,CAAC;IAED,GAAG,CACD,IAAY,EACZ,IAAuC,EACvC,KAAsC;QAEtC,uFAAuF;QACvF,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAKC,gCAAU"} \ No newline at end of file +{"version":3,"file":"RuleTester.js","sourceRoot":"","sources":["../../src/ts-eslint/RuleTester.ts"],"names":[],"mappings":";;;AAAA,mCAAwD;AAiKxD,MAAM,UAAW,SAAS,mBAA0C;CAAG;AAKrE,gCAAU"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts index 43afac67..a1389e78 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts @@ -1,80 +1,46 @@ -import { TSESTree } from '@typescript-eslint/typescript-estree'; +import * as scopeManager from '@typescript-eslint/scope-manager'; +import { TSESTree } from '@typescript-eslint/types'; declare namespace Scope { - interface ScopeManager { - scopes: Scope[]; - globalScope: Scope | null; - acquire(node: TSESTree.Node, inner?: boolean): Scope | null; - getDeclaredVariables(node: TSESTree.Node): Variable[]; + class ESLintScopeVariable { + readonly defs: Definition[]; + readonly identifiers: TSESTree.Identifier[]; + readonly name: string; + readonly references: Reference[]; + readonly scope: Scope; + /** + * Written to by ESLint. + * If this key exists, this variable is a global variable added by ESLint. + * If this is `true`, this variable can be assigned arbitrary values. + * If this is `false`, this variable is readonly. + */ + writeable?: boolean; + /** + * Written to by ESLint. + * This property is undefined if there are no globals directive comments. + * The array of globals directive comments which defined this global variable in the source code file. + */ + eslintExplicitGlobal?: boolean; + /** + * Written to by ESLint. + * The configured value in config files. This can be different from `variable.writeable` if there are globals directive comments. + */ + eslintImplicitGlobalSetting?: 'readonly' | 'writable'; + /** + * Written to by ESLint. + * If this key exists, it is a global variable added by ESLint. + * If `true`, this global variable was defined by a globals directive comment in the source code file. + */ + eslintExplicitGlobalComments?: TSESTree.Comment[]; } - interface Reference { - identifier: TSESTree.Identifier; - from: Scope; - resolved: Variable | null; - writeExpr: TSESTree.Node | null; - init: boolean; - isWrite(): boolean; - isRead(): boolean; - isWriteOnly(): boolean; - isReadOnly(): boolean; - isReadWrite(): boolean; - } - interface Variable { - name: string; - identifiers: TSESTree.Identifier[]; - references: Reference[]; - defs: Definition[]; - scope: Scope; - eslintUsed?: boolean; - } - interface Scope { - type: 'block' | 'catch' | 'class' | 'for' | 'function' | 'function-expression-name' | 'global' | 'module' | 'switch' | 'with' | 'TDZ'; - isStrict: boolean; - upper: Scope | null; - childScopes: Scope[]; - variableScope: Scope; - block: TSESTree.Node; - variables: Variable[]; - set: Map; - references: Reference[]; - through: Reference[]; - functionExpressionScope: boolean; - } - type DefinitionType = { - type: 'CatchClause'; - node: TSESTree.CatchClause; - parent: null; - } | { - type: 'ClassName'; - node: TSESTree.ClassDeclaration | TSESTree.ClassExpression; - parent: null; - } | { - type: 'FunctionName'; - node: TSESTree.FunctionDeclaration | TSESTree.FunctionExpression; - parent: null; - } | { - type: 'ImplicitGlobalVariable'; - node: TSESTree.Program; - parent: null; - } | { - type: 'ImportBinding'; - node: TSESTree.ImportSpecifier | TSESTree.ImportDefaultSpecifier | TSESTree.ImportNamespaceSpecifier; - parent: TSESTree.ImportDeclaration; - } | { - type: 'Parameter'; - node: TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.ArrowFunctionExpression; - parent: null; - } | { - type: 'TDZ'; - node: unknown; - parent: null; - } | { - type: 'Variable'; - node: TSESTree.VariableDeclarator; - parent: TSESTree.VariableDeclaration; - }; - type Definition = DefinitionType & { - name: TSESTree.Identifier; - }; + export type ScopeManager = scopeManager.ScopeManager; + export type Reference = scopeManager.Reference; + export type Variable = scopeManager.Variable | ESLintScopeVariable; + export type Scope = scopeManager.Scope; + export const ScopeType: typeof scopeManager.ScopeType; + export type DefinitionType = scopeManager.Definition; + export type Definition = scopeManager.Definition; + export const DefinitionType: typeof scopeManager.DefinitionType; + export {}; } export { Scope }; //# sourceMappingURL=Scope.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map index c7c33113..0a97fe27 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Scope.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Scope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,kBAAU,KAAK,CAAC;IAGd,MAAc,mBAAmB;QAC/B,SAAgB,IAAI,EAAE,UAAU,EAAE,CAAC;QACnC,SAAgB,WAAW,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;QACnD,SAAgB,IAAI,EAAE,MAAM,CAAC;QAC7B,SAAgB,UAAU,EAAE,SAAS,EAAE,CAAC;QACxC,SAAgB,KAAK,EAAE,KAAK,CAAC;QAE7B;;;;;WAKG;QACI,SAAS,CAAC,EAAE,OAAO,CAAC;QAE3B;;;;WAIG;QACI,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAEtC;;;WAGG;QACI,2BAA2B,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;QAE7D;;;;WAIG;QACI,4BAA4B,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC1D;IAED,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;IACrD,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;IAC/C,MAAM,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,GAAG,mBAAmB,CAAC;IACnE,MAAM,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;IACvC,MAAM,CAAC,MAAM,SAAS,+BAAyB,CAAC;IAEhD,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,UAAU,CAAC;IACrD,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;IACjD,MAAM,CAAC,MAAM,cAAc,oCAA8B,CAAC;;CAC3D;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js index 58352c51..f2d43b6f 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js @@ -1,4 +1,31 @@ "use strict"; /* eslint-disable @typescript-eslint/no-namespace */ +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.Scope = void 0; +const scopeManager = __importStar(require("@typescript-eslint/scope-manager")); +var Scope; +(function (Scope) { + Scope.ScopeType = scopeManager.ScopeType; + Scope.DefinitionType = scopeManager.DefinitionType; +})(Scope || (Scope = {})); +exports.Scope = Scope; //# sourceMappingURL=Scope.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map index aa9a3e0e..6c89e79b 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map @@ -1 +1 @@ -{"version":3,"file":"Scope.js","sourceRoot":"","sources":["../../src/ts-eslint/Scope.ts"],"names":[],"mappings":";AAAA,oDAAoD"} \ No newline at end of file +{"version":3,"file":"Scope.js","sourceRoot":"","sources":["../../src/ts-eslint/Scope.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;;;;;;;;;;;;;;;;;AAEpD,+EAAiE;AAGjE,IAAU,KAAK,CAgDd;AAhDD,WAAU,KAAK;IA2CA,eAAS,GAAG,YAAY,CAAC,SAAS,CAAC;IAInC,oBAAc,GAAG,YAAY,CAAC,cAAc,CAAC;AAC5D,CAAC,EAhDS,KAAK,KAAL,KAAK,QAgDd;AAEQ,sBAAK"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts index d4c3a8c7..5d5b1936 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts @@ -1,64 +1,311 @@ -import { ParserServices, TSESTree } from '@typescript-eslint/typescript-estree'; +import { ParserServices, TSESTree } from '../ts-estree'; import { Scope } from './Scope'; -declare interface SourceCode { - text: string; +declare class TokenStore { + /** + * Checks whether any comments exist or not between the given 2 nodes. + * @param left The node to check. + * @param right The node to check. + * @returns `true` if one or more comments exist. + */ + commentsExistBetween(left: TSESTree.Node | TSESTree.Token, right: TSESTree.Node | TSESTree.Token): boolean; + /** + * Gets all comment tokens directly after the given node or token. + * @param nodeOrToken The AST node or token to check for adjacent comment tokens. + * @returns An array of comments in occurrence order. + */ + getCommentsAfter(nodeOrToken: TSESTree.Node | TSESTree.Token): TSESTree.Comment[]; + /** + * Gets all comment tokens directly before the given node or token. + * @param nodeOrToken The AST node or token to check for adjacent comment tokens. + * @returns An array of comments in occurrence order. + */ + getCommentsBefore(nodeOrToken: TSESTree.Node | TSESTree.Token): TSESTree.Comment[]; + /** + * Gets all comment tokens inside the given node. + * @param node The AST node to get the comments for. + * @returns An array of comments in occurrence order. + */ + getCommentsInside(node: TSESTree.Node): TSESTree.Comment[]; + /** + * Gets the first token of the given node. + * @param node The AST node. + * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. + * @returns An object representing the token. + */ + getFirstToken(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets the first token between two non-overlapping nodes. + * @param left Node before the desired token range. + * @param right Node after the desired token range. + * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. + * @returns An object representing the token. + */ + getFirstTokenBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets the first `count` tokens of the given node. + * @param node The AST node. + * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. + * @returns Tokens. + */ + getFirstTokens(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets the first `count` tokens between two non-overlapping nodes. + * @param left Node before the desired token range. + * @param right Node after the desired token range. + * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. + * @returns Tokens between left and right. + */ + getFirstTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets the last token of the given node. + * @param node The AST node. + * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. + * @returns An object representing the token. + */ + getLastToken(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets the last token between two non-overlapping nodes. + * @param left Node before the desired token range. + * @param right Node after the desired token range. + * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. + * @returns An object representing the token. + */ + getLastTokenBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets the last `count` tokens of the given node. + * @param node The AST node. + * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. + * @returns Tokens. + */ + getLastTokens(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets the last `count` tokens between two non-overlapping nodes. + * @param left Node before the desired token range. + * @param right Node after the desired token range. + * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. + * @returns Tokens between left and right. + */ + getLastTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets the token that follows a given node or token. + * @param node The AST node or token. + * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. + * @returns An object representing the token. + */ + getTokenAfter(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets the token that precedes a given node or token. + * @param node The AST node or token. + * @param options The option object + * @returns An object representing the token. + */ + getTokenBefore(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets the token starting at the specified index. + * @param offset Index of the start of the token's range. + * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. + * @returns The token starting at index, or null if no such token. + */ + getTokenByRangeStart(offset: number, options?: T): SourceCode.ReturnTypeFromOptions | null; + /** + * Gets all tokens that are related to the given node. + * @param node The AST node. + * @param beforeCount The number of tokens before the node to retrieve. + * @param afterCount The number of tokens after the node to retrieve. + * @returns Array of objects representing tokens. + */ + getTokens(node: TSESTree.Node, beforeCount?: number, afterCount?: number): TSESTree.Token[]; + /** + * Gets all tokens that are related to the given node. + * @param node The AST node. + * @param options The option object. If this is a function then it's `options.filter`. + * @returns Array of objects representing tokens. + */ + getTokens(node: TSESTree.Node, options: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets the `count` tokens that follows a given node or token. + * @param node The AST node. + * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. + * @returns Tokens. + */ + getTokensAfter(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets the `count` tokens that precedes a given node or token. + * @param node The AST node. + * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. + * @returns Tokens. + */ + getTokensBefore(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets all of the tokens between two non-overlapping nodes. + * @param left Node before the desired token range. + * @param right Node after the desired token range. + * @param options The option object. If this is a function then it's `options.filter`. + * @returns Tokens between left and right. + */ + getTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, padding?: T): SourceCode.ReturnTypeFromOptions[]; + /** + * Gets all of the tokens between two non-overlapping nodes. + * @param left Node before the desired token range. + * @param right Node after the desired token range. + * @param padding Number of extra tokens on either side of center. + * @returns Tokens between left and right. + */ + getTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, padding?: number): SourceCode.ReturnTypeFromOptions[]; +} +declare class SourceCodeBase extends TokenStore { + /** + * Represents parsed source code. + * @param text The source code text. + * @param ast The Program node of the AST representing the code. This AST should be created from the text that BOM was stripped. + */ + constructor(text: string, ast: SourceCode.Program); + /** + * Represents parsed source code. + * @param config The config object. + */ + constructor(config: SourceCode.SourceCodeConfig); + /** + * The parsed AST for the source code. + */ ast: SourceCode.Program; - lines: string[]; - hasBOM: boolean; - parserServices: ParserServices; - scopeManager: Scope.ScopeManager; - visitorKeys: SourceCode.VisitorKeys; - tokensAndComments: (TSESTree.Comment | TSESTree.Token)[]; - getText(node?: TSESTree.Node, beforeCount?: number, afterCount?: number): string; - getLines(): string[]; + /** + * Retrieves an array containing all comments in the source code. + * @returns An array of comment nodes. + */ getAllComments(): TSESTree.Comment[]; + /** + * Gets all comments for the given node. + * @param node The AST node to get the comments for. + * @returns An object containing a leading and trailing array of comments indexed by their position. + */ getComments(node: TSESTree.Node): { leading: TSESTree.Comment[]; trailing: TSESTree.Comment[]; }; - getJSDocComment(node: TSESTree.Node): TSESTree.Node | TSESTree.Token | null; - getNodeByRangeIndex(index: number): TSESTree.Node | null; - isSpaceBetween(first: TSESTree.Token | TSESTree.Comment | TSESTree.Node, second: TSESTree.Token | TSESTree.Comment | TSESTree.Node): boolean; /** - * @deprecated in favor of isSpaceBetween() + * Converts a (line, column) pair into a range index. + * @param loc A line/column location + * @returns The range index of the location in the file. + */ + getIndexFromLoc(location: TSESTree.LineAndColumnData): number; + /** + * Gets the entire source text split into an array of lines. + * @returns The source text as an array of lines. + */ + getLines(): string[]; + /** + * Converts a source text index into a (line, column) pair. + * @param index The index of a character in a file + * @returns A {line, column} location object with a 0-indexed column + */ + getLocFromIndex(index: number): TSESTree.LineAndColumnData; + /** + * Gets the deepest node containing a range index. + * @param index Range index of the desired node. + * @returns The node if found or `null` if not found. + */ + getNodeByRangeIndex(index: number): TSESTree.Node | null; + /** + * Gets the source code for the given node. + * @param node The AST node to get the text for. + * @param beforeCount The number of characters before the node to retrieve. + * @param afterCount The number of characters after the node to retrieve. + * @returns The text representing the AST node. + */ + getText(node?: TSESTree.Node, beforeCount?: number, afterCount?: number): string; + /** + * The flag to indicate that the source code has Unicode BOM. + */ + hasBOM: boolean; + /** + * Determines if two nodes or tokens have at least one whitespace character + * between them. Order does not matter. Returns false if the given nodes or + * tokens overlap. + * This was added in v6.7.0. + * @since 6.7.0 + * @param first The first node or token to check between. + * @param second The second node or token to check between. + * @returns True if there is a whitespace character between any of the tokens found between the two given nodes or tokens. + */ + isSpaceBetween?(first: TSESTree.Token | TSESTree.Comment | TSESTree.Node, second: TSESTree.Token | TSESTree.Comment | TSESTree.Node): boolean; + /** + * Determines if two nodes or tokens have at least one whitespace character + * between them. Order does not matter. Returns false if the given nodes or + * tokens overlap. + * For backward compatibility, this method returns true if there are + * `JSXText` tokens that contain whitespace between the two. + * @param first The first node or token to check between. + * @param second The second node or token to check between. + * @returns {boolean} True if there is a whitespace character between + * any of the tokens found between the two given nodes or tokens. + * @deprecated in favor of isSpaceBetween */ isSpaceBetweenTokens(first: TSESTree.Token, second: TSESTree.Token): boolean; - getLocFromIndex(index: number): TSESTree.LineAndColumnData; - getIndexFromLoc(location: TSESTree.LineAndColumnData): number; - getTokenByRangeStart(offset: number, options?: T): SourceCode.ReturnTypeFromOptions | null; - getFirstToken(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions | null; - getFirstTokens(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions[]; - getLastToken(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions | null; - getLastTokens(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions[]; - getTokenBefore(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - getTokensBefore(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - getTokenAfter(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - getTokensAfter(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - getFirstTokenBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - getFirstTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - getLastTokenBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - getLastTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - getTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, padding?: T): SourceCode.ReturnTypeFromOptions[]; - getTokens(node: TSESTree.Node, beforeCount?: number, afterCount?: number): TSESTree.Token[]; - getTokens(node: TSESTree.Node, options: T): SourceCode.ReturnTypeFromOptions[]; - commentsExistBetween(left: TSESTree.Node | TSESTree.Token, right: TSESTree.Node | TSESTree.Token): boolean; - getCommentsBefore(nodeOrToken: TSESTree.Node | TSESTree.Token): TSESTree.Comment[]; - getCommentsAfter(nodeOrToken: TSESTree.Node | TSESTree.Token): TSESTree.Comment[]; - getCommentsInside(node: TSESTree.Node): TSESTree.Comment[]; + /** + * The source code split into lines according to ECMA-262 specification. + * This is done to avoid each rule needing to do so separately. + */ + lines: string[]; + /** + * The indexes in `text` that each line starts + */ + lineStartIndices: number[]; + /** + * The parser services of this source code. + */ + parserServices: ParserServices; + /** + * The scope of this source code. + */ + scopeManager: Scope.ScopeManager | null; + /** + * The original text source code. BOM was stripped from this text. + */ + text: string; + /** + * All of the tokens and comments in the AST. + */ + tokensAndComments: (TSESTree.Comment | TSESTree.Token)[]; + /** + * The visitor keys to traverse AST. + */ + visitorKeys: SourceCode.VisitorKeys; + /** + * Split the source code into multiple lines based on the line delimiters. + * @param text Source code as a string. + * @returns Array of source code lines. + */ + static splitLines(text: string): string[]; } declare namespace SourceCode { interface Program extends TSESTree.Program { comments: TSESTree.Comment[]; tokens: TSESTree.Token[]; } - interface Config { - text: string; + interface SourceCodeConfig { + /** + * The Program node of the AST representing the code. This AST should be created from the text that BOM was stripped. + */ ast: Program; - parserServices?: ParserServices; - scopeManager?: Scope.ScopeManager; - visitorKeys?: VisitorKeys; + /** + * The parser services. + */ + parserServices: ParserServices | null; + /** + * The scope of this source code. + */ + scopeManager: Scope.ScopeManager | null; + /** + * The source code text. + */ + text: string; + /** + * The visitor keys to traverse AST. + */ + visitorKeys: VisitorKeys | null; } interface VisitorKeys { [nodeType: string]: string[]; @@ -66,22 +313,38 @@ declare namespace SourceCode { type FilterPredicate = (tokenOrComment: TSESTree.Token | TSESTree.Comment) => boolean; type ReturnTypeFromOptions = T extends { includeComments: true; - } ? TSESTree.Token | TSESTree.Comment : TSESTree.Token; + } ? TSESTree.Token : Exclude; type CursorWithSkipOptions = number | FilterPredicate | { - includeComments?: boolean; + /** + * The predicate function to choose tokens. + */ filter?: FilterPredicate; + /** + * The flag to iterate comments as well. + */ + includeComments?: boolean; + /** + * The count of tokens the cursor skips. + */ skip?: number; }; type CursorWithCountOptions = number | FilterPredicate | { - includeComments?: boolean; + /** + * The predicate function to choose tokens. + */ filter?: FilterPredicate; + /** + * The flag to iterate comments as well. + */ + includeComments?: boolean; + /** + * The maximum count of tokens the cursor iterates. + */ count?: number; }; } -declare const SourceCode: { - new (text: string, ast: SourceCode.Program): SourceCode; - new (config: SourceCode.Config): SourceCode; - splitLines(text: string): string[]; -}; +declare const SourceCode_base: typeof SourceCodeBase; +declare class SourceCode extends SourceCode_base { +} export { SourceCode }; //# sourceMappingURL=SourceCode.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map index da39616d..18f49a7f 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"SourceCode.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/SourceCode.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"SourceCode.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/SourceCode.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js index 6d18c4b1..8e029b15 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js @@ -1,7 +1,9 @@ "use strict"; /* eslint-disable @typescript-eslint/no-namespace */ Object.defineProperty(exports, "__esModule", { value: true }); +exports.SourceCode = void 0; const eslint_1 = require("eslint"); -const SourceCode = eslint_1.SourceCode; +class SourceCode extends eslint_1.SourceCode { +} exports.SourceCode = SourceCode; //# sourceMappingURL=SourceCode.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map index 50641bdf..60f58ea3 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map @@ -1 +1 @@ -{"version":3,"file":"SourceCode.js","sourceRoot":"","sources":["../../src/ts-eslint/SourceCode.ts"],"names":[],"mappings":";AAAA,oDAAoD;;AAGpD,mCAAwD;AAkMxD,MAAM,UAAU,GAAG,mBAMlB,CAAC;AAEO,gCAAU"} \ No newline at end of file +{"version":3,"file":"SourceCode.js","sourceRoot":"","sources":["../../src/ts-eslint/SourceCode.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,mCAAwD;AAubxD,MAAM,UAAW,SAAS,mBAA0C;CAAG;AAE9D,gCAAU"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts index b8762a7d..05d889d9 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts @@ -1,4 +1,6 @@ export * from './AST'; +export * from './CLIEngine'; +export * from './ESLint'; export * from './Linter'; export * from './ParserOptions'; export * from './Rule'; diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map index d81d9f74..6b3df411 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js index 10c07ab4..41259584 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js @@ -1,9 +1,22 @@ "use strict"; -function __export(m) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; Object.defineProperty(exports, "__esModule", { value: true }); -__export(require("./Linter")); -__export(require("./RuleTester")); -__export(require("./SourceCode")); +__exportStar(require("./AST"), exports); +__exportStar(require("./CLIEngine"), exports); +__exportStar(require("./ESLint"), exports); +__exportStar(require("./Linter"), exports); +__exportStar(require("./ParserOptions"), exports); +__exportStar(require("./Rule"), exports); +__exportStar(require("./RuleTester"), exports); +__exportStar(require("./Scope"), exports); +__exportStar(require("./SourceCode"), exports); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map index 7e9c6a37..7ffb8987 100644 --- a/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map +++ b/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-eslint/index.ts"],"names":[],"mappings":";;;;;AACA,8BAAyB;AAGzB,kCAA6B;AAE7B,kCAA6B"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-eslint/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAsB;AACtB,8CAA4B;AAC5B,2CAAyB;AACzB,2CAAyB;AACzB,kDAAgC;AAChC,yCAAuB;AACvB,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts b/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js b/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js.map b/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js.map rename to node_modules/@typescript-eslint/experimental-utils/dist/ts-estree.js.map diff --git a/node_modules/@typescript-eslint/experimental-utils/package.json b/node_modules/@typescript-eslint/experimental-utils/package.json index 06af978a..5750f691 100644 --- a/node_modules/@typescript-eslint/experimental-utils/package.json +++ b/node_modules/@typescript-eslint/experimental-utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/experimental-utils", - "version": "2.22.0", + "version": "4.3.0", "description": "(Experimental) Utilities for working with TypeScript + ESLint together", "keywords": [ "eslint", @@ -8,10 +8,11 @@ "estree" ], "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^10.12.0 || >=12.0.0" }, "files": [ "dist", + "_ts3.4", "package.json", "README.md", "LICENSE" @@ -29,7 +30,9 @@ "types": "dist/index.d.ts", "scripts": { "build": "tsc -b tsconfig.build.json", + "postbuild": "downlevel-dts dist _ts3.4/dist", "clean": "tsc -b tsconfig.build.json --clean", + "postclean": "rimraf dist && rimraf _ts3.4", "format": "prettier --write \"./**/*.{ts,js,json,md}\" --ignore-path ../../.prettierignore", "lint": "eslint . --ext .js,.ts --ignore-path='../../.eslintignore'", "test": "jest --coverage", @@ -37,8 +40,11 @@ }, "dependencies": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.22.0", - "eslint-scope": "^5.0.0" + "@typescript-eslint/scope-manager": "4.3.0", + "@typescript-eslint/types": "4.3.0", + "@typescript-eslint/typescript-estree": "4.3.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" }, "peerDependencies": { "eslint": "*" @@ -50,5 +56,12 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "5a097d316fb084dc4b13e87d68fe9bf43d8a9548" + "typesVersions": { + "<3.8": { + "*": [ + "_ts3.4/*" + ] + } + }, + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/@typescript-eslint/parser/CHANGELOG.md b/node_modules/@typescript-eslint/parser/CHANGELOG.md index 963551cf..4b413595 100644 --- a/node_modules/@typescript-eslint/parser/CHANGELOG.md +++ b/node_modules/@typescript-eslint/parser/CHANGELOG.md @@ -3,6 +3,347 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) + + +### Features + +* **scope-manager:** add support for JSX scope analysis ([#2498](https://github.com/typescript-eslint/typescript-eslint/issues/2498)) ([f887ab5](https://github.com/typescript-eslint/typescript-eslint/commit/f887ab51f58c1b3571f9a14832864bc0ca59623f)), closes [#2455](https://github.com/typescript-eslint/typescript-eslint/issues/2455) [#2477](https://github.com/typescript-eslint/typescript-eslint/issues/2477) + + + + + +## [4.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.0...v4.0.1) (2020-08-31) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.1...v4.0.0) (2020-08-31) + +## [Please see the release notes for v4.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v4.0.0) + +### Features + +* consume new scope analysis package ([#2039](https://github.com/typescript-eslint/typescript-eslint/issues/2039)) ([3be125d](https://github.com/typescript-eslint/typescript-eslint/commit/3be125d9bdbee1984ac6037874edf619213bd3d0)) +* support ESTree optional chaining representation ([#2308](https://github.com/typescript-eslint/typescript-eslint/issues/2308)) ([e9d2ab6](https://github.com/typescript-eslint/typescript-eslint/commit/e9d2ab638b6767700b52797e74b814ea059beaae)) +* **typescript-estree:** switch to globby ([#2418](https://github.com/typescript-eslint/typescript-eslint/issues/2418)) ([3a7ec9b](https://github.com/typescript-eslint/typescript-eslint/commit/3a7ec9bcf1873a99c6da2f19ade8ab4763b4793c)), closes [#2398](https://github.com/typescript-eslint/typescript-eslint/issues/2398) + + +### BREAKING CHANGES + +* **typescript-estree:** - removes the ability to supply a `RegExp` to `projectFolderIgnoreList`, and changes the meaning of the string value from a regex to a glob. + + + + + +## [3.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.0...v3.10.1) (2020-08-25) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.1...v3.10.0) (2020-08-24) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [3.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.0...v3.9.1) (2020-08-17) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.8.0...v3.9.0) (2020-08-10) + + +### Features + +* **typescript-estree:** support TSv4 labelled tuple members ([#2378](https://github.com/typescript-eslint/typescript-eslint/issues/2378)) ([00d84ff](https://github.com/typescript-eslint/typescript-eslint/commit/00d84ffbcbe9d0ec98bdb2f2ce59959a27ce4dbe)) + + + + + +# [3.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.1...v3.8.0) (2020-08-03) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [3.7.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.0...v3.7.1) (2020-07-27) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.7.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.1...v3.7.0) (2020-07-20) + + +### Features + +* **typescript-estree:** support short-circuiting assignment operators ([#2307](https://github.com/typescript-eslint/typescript-eslint/issues/2307)) ([2c90d9f](https://github.com/typescript-eslint/typescript-eslint/commit/2c90d9fa3aa5ebd7db697dddb7762bca2dd0e06b)) +* **typescript-estree:** support type annotations on catch clauses ([#2306](https://github.com/typescript-eslint/typescript-eslint/issues/2306)) ([b5afe9c](https://github.com/typescript-eslint/typescript-eslint/commit/b5afe9c560b9f38c8dffc312a600db30944129c8)) + + + + + +## [3.6.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.0...v3.6.1) (2020-07-13) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.6.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.5.0...v3.6.0) (2020-07-06) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.5.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.4.0...v3.5.0) (2020-06-29) + + +### Features + +* split types into their own package ([#2229](https://github.com/typescript-eslint/typescript-eslint/issues/2229)) ([5f45918](https://github.com/typescript-eslint/typescript-eslint/commit/5f4591886f3438329fbf2229b03ac66174334a24)) + + + + + +# [3.4.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.3.0...v3.4.0) (2020-06-22) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.2.0...v3.3.0) (2020-06-15) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [3.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.1.0...v3.2.0) (2020-06-08) + + +### Bug Fixes + +* **eslint-plugin:** [prefer-optional-chain] handling first member expression ([#2156](https://github.com/typescript-eslint/typescript-eslint/issues/2156)) ([de18660](https://github.com/typescript-eslint/typescript-eslint/commit/de18660a8cf8f7033798646d8c5b0938d1accb12)) + + + + + +# [3.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.2...v3.1.0) (2020-06-01) + + +### Bug Fixes + +* **experimental-utils:** downlevel type declarations for versions older than 3.8 ([#2133](https://github.com/typescript-eslint/typescript-eslint/issues/2133)) ([7925823](https://github.com/typescript-eslint/typescript-eslint/commit/792582326a8065270b69a0ffcaad5a7b4b103ff3)) + + + + + +## [3.0.2](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.1...v3.0.2) (2020-05-27) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [3.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.0...v3.0.1) (2020-05-25) + + +### Bug Fixes + +* **typescript-estree:** handle `BigInt` with `_` numeric separator ([#2067](https://github.com/typescript-eslint/typescript-eslint/issues/2067)) ([66f1627](https://github.com/typescript-eslint/typescript-eslint/commit/66f1627b11a566d5b925a577e800f99d5c808be2)) + + + + + +# [3.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.34.0...v3.0.0) (2020-05-21) + +## [Please see the release notes for v3.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v3.0.0) + +### Bug Fixes + +* **typescript-estree:** use `TSEmptyBodyFunctionExpression` for body-less nodes ([#1289](https://github.com/typescript-eslint/typescript-eslint/issues/1289)) ([82e7163](https://github.com/typescript-eslint/typescript-eslint/commit/82e7163214b56ccde93ba97807b161669a50a60b)) + + +### Features + +* add index files to parser and typescript-estree ([3dfc46d](https://github.com/typescript-eslint/typescript-eslint/commit/3dfc46dccbbd28eed2d74c7b6cacddf1a0848598)) +* **experimental-utils:** upgrade eslint types for v7 ([#2023](https://github.com/typescript-eslint/typescript-eslint/issues/2023)) ([06869c9](https://github.com/typescript-eslint/typescript-eslint/commit/06869c9656fa37936126666845aee40aad546ebd)) +* upgrade to ESLint v7 ([#2022](https://github.com/typescript-eslint/typescript-eslint/issues/2022)) ([208de71](https://github.com/typescript-eslint/typescript-eslint/commit/208de71059746bf38e94bd460346ffb2698a3e12)) +* **typescript-estree:** align nodes with estree 2020 ([#1389](https://github.com/typescript-eslint/typescript-eslint/issues/1389)) ([aff5b62](https://github.com/typescript-eslint/typescript-eslint/commit/aff5b62044f9b93f2087a1d261e9be3f8d6fd54d)) +* **typescript-estree:** align optional fields ([#1429](https://github.com/typescript-eslint/typescript-eslint/issues/1429)) ([0e0010f](https://github.com/typescript-eslint/typescript-eslint/commit/0e0010f82952f9beeeb84136eea00cc5eecc9db6)) +* drop support for node v8 ([#1997](https://github.com/typescript-eslint/typescript-eslint/issues/1997)) ([b6c3b7b](https://github.com/typescript-eslint/typescript-eslint/commit/b6c3b7b84b8d199fa75a46432febd4a364a63217)) +* **eslint-plugin:** [ban-types] rework default options ([#848](https://github.com/typescript-eslint/typescript-eslint/issues/848)) ([8e31d5d](https://github.com/typescript-eslint/typescript-eslint/commit/8e31d5dbe9fe5227fdbefcecfd50ce5dd51360c3)) +* **typescript-estree:** handle 3.9's non-null assertion changes ([#2036](https://github.com/typescript-eslint/typescript-eslint/issues/2036)) ([06bec63](https://github.com/typescript-eslint/typescript-eslint/commit/06bec63c56536db070608ab136d2ad57083f0c6a)) + + + + + +# [2.34.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.33.0...v2.34.0) (2020-05-18) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.33.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.32.0...v2.33.0) (2020-05-12) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.32.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.31.0...v2.32.0) (2020-05-11) + + +### Features + +* bump dependencies and align AST ([#2007](https://github.com/typescript-eslint/typescript-eslint/issues/2007)) ([18668b7](https://github.com/typescript-eslint/typescript-eslint/commit/18668b78fd7d1e5281af7fc26c76e0ca53297f69)) + + + + + +# [2.31.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.30.0...v2.31.0) (2020-05-04) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.30.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.29.0...v2.30.0) (2020-04-27) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.29.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.28.0...v2.29.0) (2020-04-20) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.26.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.25.0...v2.26.0) (2020-03-30) + + +### Features + +* **typescript-estree:** add option to ignore certain folders from glob resolution ([#1802](https://github.com/typescript-eslint/typescript-eslint/issues/1802)) ([1e29e69](https://github.com/typescript-eslint/typescript-eslint/commit/1e29e69b289d61107a7de67592beae331ba50222)) + + + + + +# [2.25.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.24.0...v2.25.0) (2020-03-23) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [2.24.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.23.0...v2.24.0) (2020-03-16) + + +### Features + +* **typescript-estree:** support 3.8 `export * as ns` ([#1698](https://github.com/typescript-eslint/typescript-eslint/issues/1698)) ([133f622](https://github.com/typescript-eslint/typescript-eslint/commit/133f622f38a286eac45288a9789d2ee529d5e582)) + + + + + +# [2.23.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.22.0...v2.23.0) (2020-03-09) + + +### Features + +* **typescript-estree:** support 3.8 import/export type ([#1697](https://github.com/typescript-eslint/typescript-eslint/issues/1697)) ([625d603](https://github.com/typescript-eslint/typescript-eslint/commit/625d603f94bf0521f834313bf31c734ce4948b7a)) + + + + + # [2.22.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.21.0...v2.22.0) (2020-03-02) **Note:** Version bump only for package @typescript-eslint/parser diff --git a/node_modules/@typescript-eslint/parser/README.md b/node_modules/@typescript-eslint/parser/README.md index cf69891f..f6417fd5 100644 --- a/node_modules/@typescript-eslint/parser/README.md +++ b/node_modules/@typescript-eslint/parser/README.md @@ -1,13 +1,11 @@

TypeScript ESLint Parser

-

An ESLint custom parser which leverages TypeScript ESTree to allow for ESLint to lint TypeScript source code.

+

An ESLint parser which leverages TypeScript ESTree to allow for ESLint to lint TypeScript source code.

- Azure Pipelines - GitHub license + CI NPM Version NPM Downloads - Commitizen friendly

## Getting Started @@ -20,8 +18,9 @@ These docs walk you through setting up ESLint, this parser, and our plugin. If y ### Installation -```sh -yarn add -D @typescript-eslint/parser +```bash +$ yarn add -D typescript @typescript-eslint/parser +$ npm i --save-dev typescript @typescript-eslint/parser ``` ### Usage @@ -52,8 +51,16 @@ The following additional configuration options are available by specifying them interface ParserOptions { ecmaFeatures?: { jsx?: boolean; + globalReturn?: boolean; }; + ecmaVersion?: number; + + jsxPragma?: string; + jsxFragmentName?: string | null; + lib?: string[]; + project?: string | string[]; + projectFolderIgnoreList?: string[]; tsconfigRootDir?: string; extraFileExtensions?: string[]; warnOnUnsupportedTypeScriptVersion?: boolean; @@ -66,7 +73,7 @@ Default `false`. Enable parsing JSX when `true`. More details can be found [here](https://www.typescriptlang.org/docs/handbook/jsx.html). -**NOTE:** this setting does not affect known file types (`.js`, `.jsx`, `.ts`, `.tsx`, `.json`) because the typescript compiler has its own internal handling for known file extensions. The exact behavior is as follows: +**NOTE:** this setting does not affect known file types (`.js`, `.jsx`, `.ts`, `.tsx`, `.json`) because the TypeScript compiler has its own internal handling for known file extensions. The exact behavior is as follows: - if `parserOptions.project` is _not_ provided: - `.js`, `.jsx`, `.tsx` files are parsed as if this is true. @@ -77,6 +84,54 @@ Enable parsing JSX when `true`. More details can be found [here](https://www.typ - `.ts` files are parsed as if this is false. - "unknown" extensions (`.md`, `.vue`) **are parsed as if this is false**. +### `parserOptions.ecmaFeatures.globalReturn` + +Default `false`. + +This options allows you to tell the parser if you want to allow global `return` statements in your codebase. + +### `parserOptions.ecmaVersion` + +Default `2018`. + +Accepts any valid ECMAScript version number: + +- A version: es3, es5, es6, es7, es8, es9, es10, es11, ..., or +- A year: es2015, es2016, es2017, es2018, es2019, es2020, ... + +Specifies the version of ECMAScript syntax you want to use. This is used by the parser to determine how to perform scope analysis, and it affects the default + +### `parserOptions.jsxPragma` + +Default `'React'` + +The identifier that's used for JSX Elements creation (after transpilation). +If you're using a library other than React (like `preact`), then you should change this value. + +This should not be a member expression - just the root identifier (i.e. use `"React"` instead of `"React.createElement"`). + +If you provide `parserOptions.project`, you do not need to set this, as it will automatically detected from the compiler. + +### `parserOptions.jsxFragmentName` + +Default `null` + +The identifier that's used for JSX fragment elements (after transpilation). +If `null`, assumes transpilation will always use a member of the configured `jsxPragma`. +This should not be a member expression - just the root identifier (i.e. use `"h"` instead of `"h.Fragment"`). + +If you provide `parserOptions.project`, you do not need to set this, as it will automatically detected from the compiler. + +### `parserOptions.lib` + +Default `['es2018']` + +For valid options, see the [TypeScript compiler options](https://www.typescriptlang.org/tsconfig#lib). + +Specifies the TypeScript `lib`s that are available. This is used by the scope analyser to ensure there are global variables declared for the types exposed by TypeScript. + +If you provide `parserOptions.project`, you do not need to set this, as it will automatically detected from the compiler. + ### `parserOptions.project` Default `undefined`. @@ -118,26 +173,37 @@ This option allows you to provide a path to your project's `tsconfig.json`. **Th } ``` -### `tsconfigRootDir` +### `parserOptions.tsconfigRootDir` Default `undefined`. This option allows you to provide the root directory for relative tsconfig paths specified in the `project` option above. -### `extraFileExtensions` +### `parserOptions.projectFolderIgnoreList` + +Default `["**/node_modules/**"]`. + +This option allows you to ignore folders from being included in your provided list of `project`s. +This is useful if you have configured glob patterns, but want to make sure you ignore certain folders. + +It accepts an array of globs to exclude from the `project` globs. + +For example, by default it will ensure that a glob like `./**/tsconfig.json` will not match any `tsconfig`s within your `node_modules` folder (some npm packages do not exclude their source files from their published packages). + +### `parserOptions.extraFileExtensions` Default `undefined`. This option allows you to provide one or more additional file extensions which should be considered in the TypeScript Program compilation. The default extensions are `.ts`, `.tsx`, `.js`, and `.jsx`. Add extensions starting with `.`, followed by the file extension. E.g. for a `.vue` file use `"extraFileExtensions: [".vue"]`. -### `warnOnUnsupportedTypeScriptVersion` +### `parserOptions.warnOnUnsupportedTypeScriptVersion` Default `true`. This option allows you to toggle the warning that the parser will give you if you use a version of TypeScript which is not explicitly supported -### `createDefaultProgram` +### `parserOptions.createDefaultProgram` Default `false`. diff --git a/node_modules/@typescript-eslint/parser/dist/analyze-scope.d.ts b/node_modules/@typescript-eslint/parser/dist/analyze-scope.d.ts deleted file mode 100644 index d039e613..00000000 --- a/node_modules/@typescript-eslint/parser/dist/analyze-scope.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { TSESTree } from '@typescript-eslint/experimental-utils'; -import { ParserOptions } from './parser-options'; -import { ScopeManager } from './scope/scope-manager'; -export declare function analyzeScope(ast: TSESTree.Program, parserOptions: ParserOptions): ScopeManager; -//# sourceMappingURL=analyze-scope.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/analyze-scope.d.ts.map b/node_modules/@typescript-eslint/parser/dist/analyze-scope.d.ts.map deleted file mode 100644 index 469f5706..00000000 --- a/node_modules/@typescript-eslint/parser/dist/analyze-scope.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"analyze-scope.d.ts","sourceRoot":"","sources":["../src/analyze-scope.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAGT,MAAM,uCAAuC,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA21BrD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,QAAQ,CAAC,OAAO,EACrB,aAAa,EAAE,aAAa,GAC3B,YAAY,CAsBd"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/analyze-scope.js b/node_modules/@typescript-eslint/parser/dist/analyze-scope.js deleted file mode 100644 index 0f25f491..00000000 --- a/node_modules/@typescript-eslint/parser/dist/analyze-scope.js +++ /dev/null @@ -1,684 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const eslint_visitor_keys_1 = require("eslint-visitor-keys"); -const scope_manager_1 = require("./scope/scope-manager"); -const typescript_estree_1 = require("@typescript-eslint/typescript-estree"); -/** - * Define the override function of `Scope#__define` for global augmentation. - * @param {Function} define The original Scope#__define method. - * @returns {Function} The override function. - */ -function overrideDefine(define) { - return function (node, definition) { - define.call(this, node, definition); - // Set `variable.eslintUsed` to tell ESLint that the variable is exported. - const variable = 'name' in node && - typeof node.name === 'string' && - this.set.get(node.name); - if (variable) { - variable.eslintUsed = true; - } - }; -} -class PatternVisitor extends experimental_utils_1.TSESLintScope.PatternVisitor { - constructor(options, rootPattern, callback) { - super(options, rootPattern, callback); - } - Identifier(node) { - super.Identifier(node); - if (node.decorators) { - this.rightHandNodes.push(...node.decorators); - } - if (node.typeAnnotation) { - this.rightHandNodes.push(node.typeAnnotation); - } - } - ArrayPattern(node) { - node.elements.forEach(this.visit, this); - if (node.decorators) { - this.rightHandNodes.push(...node.decorators); - } - if (node.typeAnnotation) { - this.rightHandNodes.push(node.typeAnnotation); - } - } - ObjectPattern(node) { - node.properties.forEach(this.visit, this); - if (node.decorators) { - this.rightHandNodes.push(...node.decorators); - } - if (node.typeAnnotation) { - this.rightHandNodes.push(node.typeAnnotation); - } - } - RestElement(node) { - super.RestElement(node); - if (node.decorators) { - this.rightHandNodes.push(...node.decorators); - } - if (node.typeAnnotation) { - this.rightHandNodes.push(node.typeAnnotation); - } - } - TSParameterProperty(node) { - this.visit(node.parameter); - if (node.decorators) { - this.rightHandNodes.push(...node.decorators); - } - } -} -class Referencer extends experimental_utils_1.TSESLintScope.Referencer { - constructor(options, scopeManager) { - super(options, scopeManager); - this.typeMode = false; - } - /** - * Override to use PatternVisitor we overrode. - * @param node The Identifier node to visit. - * @param [options] The flag to visit right-hand side nodes. - * @param callback The callback function for left-hand side nodes. - */ - visitPattern(node, options, callback) { - if (!node) { - return; - } - if (typeof options === 'function') { - callback = options; - options = { processRightHandNodes: false }; - } - const visitor = new PatternVisitor(this.options, node, callback); - visitor.visit(node); - if (options.processRightHandNodes) { - visitor.rightHandNodes.forEach(this.visit, this); - } - } - /** - * Override. - * Visit `node.typeParameters` and `node.returnType` additionally to find `typeof` expressions. - * @param node The function node to visit. - */ - visitFunction(node) { - const { type, id, typeParameters, params, returnType, body } = node; - const scopeManager = this.scopeManager; - const upperScope = this.currentScope(); - // Process the name. - if (type === experimental_utils_1.AST_NODE_TYPES.FunctionDeclaration && id) { - upperScope.__define(id, new experimental_utils_1.TSESLintScope.Definition('FunctionName', id, node, null, null, null)); - // Remove overload definition to avoid confusion of no-redeclare rule. - const { defs, identifiers } = upperScope.set.get(id.name); - for (let i = 0; i < defs.length; ++i) { - const def = defs[i]; - if (def.type === 'FunctionName' && - def.node.type === experimental_utils_1.AST_NODE_TYPES.TSDeclareFunction) { - defs.splice(i, 1); - identifiers.splice(i, 1); - break; - } - } - } - else if (type === experimental_utils_1.AST_NODE_TYPES.FunctionExpression && id) { - scopeManager.__nestFunctionExpressionNameScope(node); - } - // Open the function scope. - scopeManager.__nestFunctionScope(node, this.isInnerMethodDefinition); - const innerScope = this.currentScope(); - // Process the type parameters - this.visit(typeParameters); - // Process parameter declarations. - for (let i = 0; i < params.length; ++i) { - this.visitPattern(params[i], { processRightHandNodes: true }, (pattern, info) => { - if (pattern.type !== experimental_utils_1.AST_NODE_TYPES.Identifier || - pattern.name !== 'this') { - innerScope.__define(pattern, new experimental_utils_1.TSESLintScope.ParameterDefinition(pattern, node, i, info.rest)); - this.referencingDefaultValue(pattern, info.assignments, null, true); - } - }); - } - // Process the return type. - this.visit(returnType); - // Process the body. - if (body && body.type === experimental_utils_1.AST_NODE_TYPES.BlockStatement) { - this.visitChildren(body); - } - else { - this.visit(body); - } - // Close the function scope. - this.close(node); - } - /** - * Override. - * Visit decorators. - * @param node The class node to visit. - */ - visitClass(node) { - this.visitDecorators(node.decorators); - const upperTypeMode = this.typeMode; - this.typeMode = true; - if (node.superTypeParameters) { - this.visit(node.superTypeParameters); - } - if (node.implements) { - node.implements.forEach(this.visit, this); - } - this.typeMode = upperTypeMode; - super.visitClass(node); - } - /** - * Visit typeParameters. - * @param node The node to visit. - */ - visitTypeParameters(node) { - if (node.typeParameters) { - const upperTypeMode = this.typeMode; - this.typeMode = true; - this.visit(node.typeParameters); - this.typeMode = upperTypeMode; - } - } - /** - * Override. - */ - JSXOpeningElement(node) { - this.visit(node.name); - this.visitTypeParameters(node); - node.attributes.forEach(this.visit, this); - } - /** - * Override. - * Don't create the reference object in the type mode. - * @param node The Identifier node to visit. - */ - Identifier(node) { - this.visitDecorators(node.decorators); - if (!this.typeMode) { - super.Identifier(node); - } - this.visit(node.typeAnnotation); - } - /** - * Override. - * Visit decorators. - * @param node The MethodDefinition node to visit. - */ - MethodDefinition(node) { - this.visitDecorators(node.decorators); - super.MethodDefinition(node); - } - /** - * Don't create the reference object for the key if not computed. - * @param node The ClassProperty node to visit. - */ - ClassProperty(node) { - const upperTypeMode = this.typeMode; - const { computed, decorators, key, typeAnnotation, value } = node; - this.typeMode = false; - this.visitDecorators(decorators); - if (computed) { - this.visit(key); - } - this.typeMode = true; - this.visit(typeAnnotation); - this.typeMode = false; - this.visit(value); - this.typeMode = upperTypeMode; - } - /** - * Visit new expression. - * @param node The NewExpression node to visit. - */ - NewExpression(node) { - this.visitTypeParameters(node); - this.visit(node.callee); - node.arguments.forEach(this.visit, this); - } - /** - * Override. - * Visit call expression. - * @param node The CallExpression node to visit. - */ - CallExpression(node) { - this.visitTypeParameters(node); - this.visit(node.callee); - node.arguments.forEach(this.visit, this); - } - /** - * Visit optional member expression. - * @param node The OptionalMemberExpression node to visit. - */ - OptionalMemberExpression(node) { - this.visit(node.object); - if (node.computed) { - this.visit(node.property); - } - } - /** - * Visit optional call expression. - * @param node The OptionalMemberExpression node to visit. - */ - OptionalCallExpression(node) { - this.visitTypeParameters(node); - this.visit(node.callee); - node.arguments.forEach(this.visit, this); - } - /** - * Define the variable of this function declaration only once. - * Because to avoid confusion of `no-redeclare` rule by overloading. - * @param node The TSDeclareFunction node to visit. - */ - TSDeclareFunction(node) { - var _a, _b; - const scopeManager = this.scopeManager; - const upperScope = this.currentScope(); - const { id, typeParameters, params, returnType } = node; - // Ignore this if other overload have already existed. - if (id) { - const variable = upperScope.set.get(id.name); - const defs = (_a = variable) === null || _a === void 0 ? void 0 : _a.defs; - const existed = (_b = defs) === null || _b === void 0 ? void 0 : _b.some((d) => d.type === 'FunctionName'); - if (!existed) { - upperScope.__define(id, new experimental_utils_1.TSESLintScope.Definition('FunctionName', id, node, null, null, null)); - } - } - // Open the function scope. - scopeManager.__nestEmptyFunctionScope(node); - const innerScope = this.currentScope(); - // Process the type parameters - this.visit(typeParameters); - // Process parameter declarations. - for (let i = 0; i < params.length; ++i) { - this.visitPattern(params[i], { processRightHandNodes: true }, (pattern, info) => { - innerScope.__define(pattern, new experimental_utils_1.TSESLintScope.ParameterDefinition(pattern, node, i, info.rest)); - // Set `variable.eslintUsed` to tell ESLint that the variable is used. - const variable = innerScope.set.get(pattern.name); - if (variable) { - variable.eslintUsed = true; - } - this.referencingDefaultValue(pattern, info.assignments, null, true); - }); - } - // Process the return type. - this.visit(returnType); - // Close the function scope. - this.close(node); - } - /** - * Create reference objects for the references in parameters and return type. - * @param node The TSEmptyBodyFunctionExpression node to visit. - */ - TSEmptyBodyFunctionExpression(node) { - const upperTypeMode = this.typeMode; - const { typeParameters, params, returnType } = node; - this.typeMode = true; - this.visit(typeParameters); - params.forEach(this.visit, this); - this.visit(returnType); - this.typeMode = upperTypeMode; - } - /** - * Don't make variable because it declares only types. - * Switch to the type mode and visit child nodes to find `typeof x` expression in type declarations. - * @param node The TSInterfaceDeclaration node to visit. - */ - TSInterfaceDeclaration(node) { - this.visitTypeNodes(node); - } - /** - * Don't make variable because it declares only types. - * Switch to the type mode and visit child nodes to find `typeof x` expression in type declarations. - * @param node The TSClassImplements node to visit. - */ - TSClassImplements(node) { - this.visitTypeNodes(node); - } - /** - * Don't make variable because it declares only types. - * Switch to the type mode and visit child nodes to find `typeof x` expression in type declarations. - * @param node The TSIndexSignature node to visit. - */ - TSIndexSignature(node) { - this.visitTypeNodes(node); - } - /** - * Visit type assertion. - * @param node The TSTypeAssertion node to visit. - */ - TSTypeAssertion(node) { - if (this.typeMode) { - this.visit(node.typeAnnotation); - } - else { - this.typeMode = true; - this.visit(node.typeAnnotation); - this.typeMode = false; - } - this.visit(node.expression); - } - /** - * Visit as expression. - * @param node The TSAsExpression node to visit. - */ - TSAsExpression(node) { - this.visit(node.expression); - if (this.typeMode) { - this.visit(node.typeAnnotation); - } - else { - this.typeMode = true; - this.visit(node.typeAnnotation); - this.typeMode = false; - } - } - /** - * Switch to the type mode and visit child nodes to find `typeof x` expression in type declarations. - * @param node The TSTypeAnnotation node to visit. - */ - TSTypeAnnotation(node) { - this.visitTypeNodes(node); - } - /** - * Switch to the type mode and visit child nodes to find `typeof x` expression in type declarations. - * @param node The TSTypeParameterDeclaration node to visit. - */ - TSTypeParameterDeclaration(node) { - this.visitTypeNodes(node); - } - /** - * Create reference objects for the references in `typeof` expression. - * @param node The TSTypeQuery node to visit. - */ - TSTypeQuery(node) { - if (this.typeMode) { - this.typeMode = false; - this.visitChildren(node); - this.typeMode = true; - } - else { - this.visitChildren(node); - } - } - /** - * @param node The TSTypeParameter node to visit. - */ - TSTypeParameter(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSInferType node to visit. - */ - TSInferType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSTypeReference node to visit. - */ - TSTypeReference(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSTypeLiteral node to visit. - */ - TSTypeLiteral(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSLiteralType node to visit. - */ - TSLiteralType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSIntersectionType node to visit. - */ - TSIntersectionType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSConditionalType node to visit. - */ - TSConditionalType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSIndexedAccessType node to visit. - */ - TSIndexedAccessType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSMappedType node to visit. - */ - TSMappedType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSOptionalType node to visit. - */ - TSOptionalType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSParenthesizedType node to visit. - */ - TSParenthesizedType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSRestType node to visit. - */ - TSRestType(node) { - this.visitTypeNodes(node); - } - /** - * @param node The TSTupleType node to visit. - */ - TSTupleType(node) { - this.visitTypeNodes(node); - } - /** - * Create reference objects for the object part. (This is `obj.prop`) - * @param node The TSQualifiedName node to visit. - */ - TSQualifiedName(node) { - this.visit(node.left); - } - /** - * Create reference objects for the references in computed keys. - * @param node The TSPropertySignature node to visit. - */ - TSPropertySignature(node) { - const upperTypeMode = this.typeMode; - const { computed, key, typeAnnotation, initializer } = node; - if (computed) { - this.typeMode = false; - this.visit(key); - this.typeMode = true; - } - else { - this.typeMode = true; - this.visit(key); - } - this.visit(typeAnnotation); - this.visit(initializer); - this.typeMode = upperTypeMode; - } - /** - * Create reference objects for the references in computed keys. - * @param node The TSMethodSignature node to visit. - */ - TSMethodSignature(node) { - const upperTypeMode = this.typeMode; - const { computed, key, typeParameters, params, returnType } = node; - if (computed) { - this.typeMode = false; - this.visit(key); - this.typeMode = true; - } - else { - this.typeMode = true; - this.visit(key); - } - this.visit(typeParameters); - params.forEach(this.visit, this); - this.visit(returnType); - this.typeMode = upperTypeMode; - } - /** - * Create variable object for the enum. - * The enum declaration creates a scope for the enum members. - * - * enum E { - * A, - * B, - * C = A + B // A and B are references to the enum member. - * } - * - * const a = 0 - * enum E { - * A = a // a is above constant. - * } - * - * @param node The TSEnumDeclaration node to visit. - */ - TSEnumDeclaration(node) { - const { id, members } = node; - const scopeManager = this.scopeManager; - const scope = this.currentScope(); - if (id) { - scope.__define(id, new experimental_utils_1.TSESLintScope.Definition('EnumName', id, node)); - } - scopeManager.__nestEnumScope(node); - for (const member of members) { - this.visit(member); - } - this.close(node); - } - /** - * Create variable object for the enum member and create reference object for the initializer. - * And visit the initializer. - * - * @param node The TSEnumMember node to visit. - */ - TSEnumMember(node) { - const { id, initializer } = node; - const scope = this.currentScope(); - scope.__define(id, new experimental_utils_1.TSESLintScope.Definition('EnumMemberName', id, node)); - if (initializer) { - scope.__referencing(id, experimental_utils_1.TSESLintScope.Reference.WRITE, initializer, null, false, true); - this.visit(initializer); - } - } - /** - * Create the variable object for the module name, and visit children. - * @param node The TSModuleDeclaration node to visit. - */ - TSModuleDeclaration(node) { - const scope = this.currentScope(); - const { id, body } = node; - if (node.global) { - this.visitGlobalAugmentation(node); - return; - } - if (id && id.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { - scope.__define(id, new experimental_utils_1.TSESLintScope.Definition('NamespaceName', id, node, null, null, null)); - } - this.visit(body); - } - TSTypeAliasDeclaration(node) { - this.typeMode = true; - this.visitChildren(node); - this.typeMode = false; - } - /** - * Process the module block. - * @param node The TSModuleBlock node to visit. - */ - TSModuleBlock(node) { - this.scopeManager.__nestBlockScope(node); - this.visitChildren(node); - this.close(node); - } - TSAbstractClassProperty(node) { - this.ClassProperty(node); - } - TSAbstractMethodDefinition(node) { - this.MethodDefinition(node); - } - /** - * Process import equal declaration - * @param node The TSImportEqualsDeclaration node to visit. - */ - TSImportEqualsDeclaration(node) { - const { id, moduleReference } = node; - if (id && id.type === experimental_utils_1.AST_NODE_TYPES.Identifier) { - this.currentScope().__define(id, new experimental_utils_1.TSESLintScope.Definition('ImportBinding', id, node, null, null, null)); - } - this.visit(moduleReference); - } - /** - * Process the global augmentation. - * 1. Set the global scope as the current scope. - * 2. Configure the global scope to set `variable.eslintUsed = true` for all defined variables. This means `no-unused-vars` doesn't warn those. - * @param node The TSModuleDeclaration node to visit. - */ - visitGlobalAugmentation(node) { - const scopeManager = this.scopeManager; - const currentScope = this.currentScope(); - const globalScope = scopeManager.globalScope; - const originalDefine = globalScope.__define; - globalScope.__define = overrideDefine(originalDefine); - scopeManager.__currentScope = globalScope; - // Skip TSModuleBlock to avoid to create that block scope. - if (node.body && node.body.type === experimental_utils_1.AST_NODE_TYPES.TSModuleBlock) { - node.body.body.forEach(this.visit, this); - } - scopeManager.__currentScope = currentScope; - globalScope.__define = originalDefine; - } - /** - * Process decorators. - * @param decorators The decorator nodes to visit. - */ - visitDecorators(decorators) { - if (decorators) { - decorators.forEach(this.visit, this); - } - } - /** - * Process all child of type nodes - * @param node node to be processed - */ - visitTypeNodes(node) { - if (this.typeMode) { - this.visitChildren(node); - } - else { - this.typeMode = true; - this.visitChildren(node); - this.typeMode = false; - } - } -} -function analyzeScope(ast, parserOptions) { - var _a; - const options = { - ignoreEval: true, - optimistic: false, - directive: false, - nodejsScope: parserOptions.sourceType === 'script' && - (parserOptions.ecmaFeatures && - parserOptions.ecmaFeatures.globalReturn) === true, - impliedStrict: false, - sourceType: parserOptions.sourceType, - ecmaVersion: (_a = parserOptions.ecmaVersion, (_a !== null && _a !== void 0 ? _a : 2018)), - childVisitorKeys: typescript_estree_1.visitorKeys, - fallback: eslint_visitor_keys_1.getKeys, - }; - const scopeManager = new scope_manager_1.ScopeManager(options); - const referencer = new Referencer(options, scopeManager); - referencer.visit(ast); - return scopeManager; -} -exports.analyzeScope = analyzeScope; -//# sourceMappingURL=analyze-scope.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/analyze-scope.js.map b/node_modules/@typescript-eslint/parser/dist/analyze-scope.js.map deleted file mode 100644 index 7de3a9d3..00000000 --- a/node_modules/@typescript-eslint/parser/dist/analyze-scope.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"analyze-scope.js","sourceRoot":"","sources":["../src/analyze-scope.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/index.d.ts b/node_modules/@typescript-eslint/parser/dist/index.d.ts new file mode 100644 index 00000000..2229e017 --- /dev/null +++ b/node_modules/@typescript-eslint/parser/dist/index.d.ts @@ -0,0 +1,5 @@ +export { parse, parseForESLint, ParserOptions } from './parser'; +export { ParserServices } from '@typescript-eslint/typescript-estree'; +export { clearCaches } from '@typescript-eslint/typescript-estree'; +export declare const version: string; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/index.d.ts.map b/node_modules/@typescript-eslint/parser/dist/index.d.ts.map new file mode 100644 index 00000000..69632b8a --- /dev/null +++ b/node_modules/@typescript-eslint/parser/dist/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,eAAO,MAAM,OAAO,EAAE,MAA2C,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/index.js b/node_modules/@typescript-eslint/parser/dist/index.js new file mode 100644 index 00000000..b9e888ae --- /dev/null +++ b/node_modules/@typescript-eslint/parser/dist/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.version = exports.clearCaches = exports.parseForESLint = exports.parse = void 0; +var parser_1 = require("./parser"); +Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return parser_1.parse; } }); +Object.defineProperty(exports, "parseForESLint", { enumerable: true, get: function () { return parser_1.parseForESLint; } }); +var typescript_estree_1 = require("@typescript-eslint/typescript-estree"); +Object.defineProperty(exports, "clearCaches", { enumerable: true, get: function () { return typescript_estree_1.clearCaches; } }); +// note - cannot migrate this to an import statement because it will make TSC copy the package.json to the dist folder +exports.version = require('../package.json').version; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/index.js.map b/node_modules/@typescript-eslint/parser/dist/index.js.map new file mode 100644 index 00000000..604901f9 --- /dev/null +++ b/node_modules/@typescript-eslint/parser/dist/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAgE;AAAvD,+FAAA,KAAK,OAAA;AAAE,wGAAA,cAAc,OAAA;AAE9B,0EAAmE;AAA1D,gHAAA,WAAW,OAAA;AAEpB,sHAAsH;AACzG,QAAA,OAAO,GAAW,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts b/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts index bbe3a541..a829c401 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts +++ b/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts @@ -1,3 +1,2 @@ -import { TSESLint } from '@typescript-eslint/experimental-utils'; -export declare type ParserOptions = TSESLint.ParserOptions; +export { ParserOptions } from '@typescript-eslint/types'; //# sourceMappingURL=parser-options.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts.map b/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts.map index 65dc7faf..85aeca5e 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts.map +++ b/node_modules/@typescript-eslint/parser/dist/parser-options.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAEjE,oBAAY,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC"} \ No newline at end of file +{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser.d.ts b/node_modules/@typescript-eslint/parser/dist/parser.d.ts index 80010377..0d501b82 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.d.ts +++ b/node_modules/@typescript-eslint/parser/dist/parser.d.ts @@ -1,7 +1,6 @@ -import { TSESLint } from '@typescript-eslint/experimental-utils'; -import { AST_NODE_TYPES, ParserServices, TSESTree, visitorKeys } from '@typescript-eslint/typescript-estree'; -import { analyzeScope } from './analyze-scope'; -declare type ParserOptions = TSESLint.ParserOptions; +import { ParserOptions, TSESTree } from '@typescript-eslint/types'; +import { ParserServices, visitorKeys } from '@typescript-eslint/typescript-estree'; +import { ScopeManager } from '@typescript-eslint/scope-manager'; interface ParseForESLintResult { ast: TSESTree.Program & { range?: [number, number]; @@ -10,12 +9,9 @@ interface ParseForESLintResult { }; services: ParserServices; visitorKeys: typeof visitorKeys; - scopeManager: ReturnType; + scopeManager: ScopeManager; } -export declare const version: any; -export declare const Syntax: Readonly; -export declare function parse(code: string, options?: ParserOptions): ParseForESLintResult['ast']; -export declare function parseForESLint(code: string, options?: ParserOptions | null): ParseForESLintResult; -export { ParserServices, ParserOptions }; -export { clearCaches } from '@typescript-eslint/typescript-estree'; +declare function parse(code: string, options?: ParserOptions): ParseForESLintResult['ast']; +declare function parseForESLint(code: string, options?: ParserOptions | null): ParseForESLintResult; +export { parse, parseForESLint, ParserOptions }; //# sourceMappingURL=parser.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map b/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map index 71cc381b..2e256383 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +++ b/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACjE,OAAO,EACL,cAAc,EAEd,cAAc,EAEd,QAAQ,EAER,WAAW,EACZ,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,aAAK,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;AAK5C,UAAU,oBAAoB;IAC5B,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG;QACtB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,YAAY,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;CAC/C;AAgBD,eAAO,MAAM,OAAO,KAAsB,CAAC;AAE3C,eAAO,MAAM,MAAM,iCAAgC,CAAC;AAEpD,wBAAgB,KAAK,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GACtB,oBAAoB,CAAC,KAAK,CAAC,CAE7B;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,GAC7B,oBAAoB,CA0DtB;AAED,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC"} \ No newline at end of file +{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAO,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAEL,cAAc,EAEd,WAAW,EACZ,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,YAAY,EACb,MAAM,kCAAkC,CAAC;AAM1C,UAAU,oBAAoB;IAC5B,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG;QACtB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,YAAY,EAAE,YAAY,CAAC;CAC5B;AAiDD,iBAAS,KAAK,CACZ,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GACtB,oBAAoB,CAAC,KAAK,CAAC,CAE7B;AAED,iBAAS,cAAc,CACrB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,GAC7B,oBAAoB,CAwFtB;AAED,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser.js b/node_modules/@typescript-eslint/parser/dist/parser.js index 115f5a0d..3b6a30cf 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.js +++ b/node_modules/@typescript-eslint/parser/dist/parser.js @@ -1,20 +1,55 @@ "use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.parseForESLint = exports.parse = void 0; const typescript_estree_1 = require("@typescript-eslint/typescript-estree"); -const analyze_scope_1 = require("./analyze-scope"); -// note - cannot migrate this to an import statement because it will make TSC copy the package.json to the dist folder -const packageJSON = require('../package.json'); +const scope_manager_1 = require("@typescript-eslint/scope-manager"); +const debug_1 = __importDefault(require("debug")); +const typescript_1 = require("typescript"); +const log = debug_1.default('typescript-eslint:parser:parser'); function validateBoolean(value, fallback = false) { if (typeof value !== 'boolean') { return fallback; } return value; } -//------------------------------------------------------------------------------ -// Public -//------------------------------------------------------------------------------ -exports.version = packageJSON.version; -exports.Syntax = Object.freeze(typescript_estree_1.AST_NODE_TYPES); +const LIB_FILENAME_REGEX = /lib\.(.+)\.d\.ts/; +function getLib(compilerOptions) { + var _a; + if (compilerOptions.lib) { + return compilerOptions.lib + .map(lib => { + const match = LIB_FILENAME_REGEX.exec(lib.toLowerCase()); + if (!match) { + return null; + } + return match[1]; + }) + .filter(l => l != null); + } + const target = (_a = compilerOptions.target) !== null && _a !== void 0 ? _a : typescript_1.ScriptTarget.ES5; + // https://github.com/Microsoft/TypeScript/blob/59ad375234dc2efe38d8ee0ba58414474c1d5169/src/compiler/utilitiesPublic.ts#L13-L32 + switch (target) { + case typescript_1.ScriptTarget.ESNext: + return ['esnext.full']; + case typescript_1.ScriptTarget.ES2020: + return ['es2020.full']; + case typescript_1.ScriptTarget.ES2019: + return ['es2019.full']; + case typescript_1.ScriptTarget.ES2018: + return ['es2018.full']; + case typescript_1.ScriptTarget.ES2017: + return ['es2017.full']; + case typescript_1.ScriptTarget.ES2016: + return ['es2016.full']; + case typescript_1.ScriptTarget.ES2015: + return ['es6']; + default: + return ['lib']; + } +} function parse(code, options) { return parseForESLint(code, options).ast; } @@ -23,6 +58,9 @@ function parseForESLint(code, options) { if (!options || typeof options !== 'object') { options = {}; } + else { + options = Object.assign({}, options); + } // https://eslint.org/docs/user-guide/configuring#specifying-parser-options // if sourceType is not provided by default eslint expect that it will be set to "script" if (options.sourceType !== 'module' && options.sourceType !== 'script') { @@ -36,6 +74,14 @@ function parseForESLint(code, options) { useJSXTextNode: validateBoolean(options.useJSXTextNode, true), jsx: validateBoolean(options.ecmaFeatures.jsx), }); + const analyzeOptions = { + ecmaVersion: options.ecmaVersion, + globalReturn: options.ecmaFeatures.globalReturn, + jsxPragma: options.jsxPragma, + jsxFragmentName: options.jsxFragmentName, + lib: options.lib, + sourceType: options.sourceType, + }; if (typeof options.filePath === 'string') { const tsx = options.filePath.endsWith('.tsx'); if (tsx || options.filePath.endsWith('.ts')) { @@ -52,24 +98,34 @@ function parseForESLint(code, options) { } const { ast, services } = typescript_estree_1.parseAndGenerateServices(code, parserOptions); ast.sourceType = options.sourceType; - typescript_estree_1.simpleTraverse(ast, { - enter(node) { - switch (node.type) { - // Function#body cannot be null in ESTree spec. - case typescript_estree_1.AST_NODE_TYPES.FunctionExpression: - if (!node.body) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - node.type = `TSEmptyBody${node.type}`; - } - break; - // no default + if (services.hasFullTypeInformation) { + // automatically apply the options configured for the program + const compilerOptions = services.program.getCompilerOptions(); + if (analyzeOptions.lib == null) { + analyzeOptions.lib = getLib(compilerOptions); + log('Resolved libs from program: %o', analyzeOptions.lib); + } + if (parserOptions.jsx === true) { + if (analyzeOptions.jsxPragma === undefined && + compilerOptions.jsxFactory != null) { + // in case the user has specified something like "preact.h" + const factory = compilerOptions.jsxFactory.split('.')[0].trim(); + analyzeOptions.jsxPragma = factory; + log('Resolved jsxPragma from program: %s', analyzeOptions.jsxPragma); } - }, - }); - const scopeManager = analyze_scope_1.analyzeScope(ast, options); + if (analyzeOptions.jsxFragmentName === undefined && + compilerOptions.jsxFragmentFactory != null) { + // in case the user has specified something like "preact.Fragment" + const fragFactory = compilerOptions.jsxFragmentFactory + .split('.')[0] + .trim(); + analyzeOptions.jsxFragmentName = fragFactory; + log('Resolved jsxFragmentName from program: %s', analyzeOptions.jsxFragmentName); + } + } + } + const scopeManager = scope_manager_1.analyze(ast, analyzeOptions); return { ast, services, scopeManager, visitorKeys: typescript_estree_1.visitorKeys }; } exports.parseForESLint = parseForESLint; -var typescript_estree_2 = require("@typescript-eslint/typescript-estree"); -exports.clearCaches = typescript_estree_2.clearCaches; //# sourceMappingURL=parser.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser.js.map b/node_modules/@typescript-eslint/parser/dist/parser.js.map index cd37c55e..e3b8dd06 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.js.map +++ b/node_modules/@typescript-eslint/parser/dist/parser.js.map @@ -1 +1 @@ -{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":";;;;;;AACA,4EAK8C;AAC9C,oEAI0C;AAC1C,kDAA0B;AAC1B,2CAA2D;AAE3D,MAAM,GAAG,GAAG,eAAK,CAAC,iCAAiC,CAAC,CAAC;AAarD,SAAS,eAAe,CACtB,KAA0B,EAC1B,QAAQ,GAAG,KAAK;IAEhB,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;QAC9B,OAAO,QAAQ,CAAC;KACjB;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAC9C,SAAS,MAAM,CAAC,eAAgC;;IAC9C,IAAI,eAAe,CAAC,GAAG,EAAE;QACvB,OAAO,eAAe,CAAC,GAAG;aACvB,GAAG,CAAC,GAAG,CAAC,EAAE;YACT,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,KAAK,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YAED,OAAO,KAAK,CAAC,CAAC,CAAQ,CAAC;QACzB,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAU,CAAC;KACpC;IAED,MAAM,MAAM,SAAG,eAAe,CAAC,MAAM,mCAAI,yBAAY,CAAC,GAAG,CAAC;IAC1D,gIAAgI;IAChI,QAAQ,MAAM,EAAE;QACd,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,aAAa,CAAC,CAAC;QACzB,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,aAAa,CAAC,CAAC;QACzB,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,aAAa,CAAC,CAAC;QACzB,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,aAAa,CAAC,CAAC;QACzB,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,aAAa,CAAC,CAAC;QACzB,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,aAAa,CAAC,CAAC;QACzB,KAAK,yBAAY,CAAC,MAAM;YACtB,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB;YACE,OAAO,CAAC,KAAK,CAAC,CAAC;KAClB;AACH,CAAC;AAED,SAAS,KAAK,CACZ,IAAY,EACZ,OAAuB;IAEvB,OAAO,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC;AAC3C,CAAC;AA+FQ,sBAAK;AA7Fd,SAAS,cAAc,CACrB,IAAY,EACZ,OAA8B;IAE9B,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC3C,OAAO,GAAG,EAAE,CAAC;KACd;SAAM;QACL,OAAO,qBAAQ,OAAO,CAAE,CAAC;KAC1B;IACD,2EAA2E;IAC3E,yFAAyF;IACzF,IAAI,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;QACtE,OAAO,CAAC,UAAU,GAAG,QAAQ,CAAC;KAC/B;IACD,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE;QAC5C,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;KAC3B;IAED,MAAM,aAAa,GAAoB,EAAE,CAAC;IAC1C,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,EAAE;QACpC,cAAc,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC;QAC7D,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC;KAC/C,CAAC,CAAC;IACH,MAAM,cAAc,GAAmB;QACrC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,YAAY;QAC/C,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC;IAEF,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACxC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC3C,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC;SACzB;KACF;IAED;;;OAGG;IACH,MAAM,kCAAkC,GAAG,eAAe,CACxD,OAAO,CAAC,kCAAkC,EAC1C,IAAI,CACL,CAAC;IACF,IAAI,CAAC,kCAAkC,EAAE;QACvC,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;KAChC;IAED,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,4CAAwB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACxE,GAAG,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAEpC,IAAI,QAAQ,CAAC,sBAAsB,EAAE;QACnC,6DAA6D;QAC7D,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC9D,IAAI,cAAc,CAAC,GAAG,IAAI,IAAI,EAAE;YAC9B,cAAc,CAAC,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;YAC7C,GAAG,CAAC,gCAAgC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;SAC3D;QACD,IAAI,aAAa,CAAC,GAAG,KAAK,IAAI,EAAE;YAC9B,IACE,cAAc,CAAC,SAAS,KAAK,SAAS;gBACtC,eAAe,CAAC,UAAU,IAAI,IAAI,EAClC;gBACA,2DAA2D;gBAC3D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChE,cAAc,CAAC,SAAS,GAAG,OAAO,CAAC;gBACnC,GAAG,CAAC,qCAAqC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;aACtE;YACD,IACE,cAAc,CAAC,eAAe,KAAK,SAAS;gBAC5C,eAAe,CAAC,kBAAkB,IAAI,IAAI,EAC1C;gBACA,kEAAkE;gBAClE,MAAM,WAAW,GAAG,eAAe,CAAC,kBAAkB;qBACnD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qBACb,IAAI,EAAE,CAAC;gBACV,cAAc,CAAC,eAAe,GAAG,WAAW,CAAC;gBAC7C,GAAG,CACD,2CAA2C,EAC3C,cAAc,CAAC,eAAe,CAC/B,CAAC;aACH;SACF;KACF;IAED,MAAM,YAAY,GAAG,uBAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAElD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAX,+BAAW,EAAE,CAAC;AACtD,CAAC;AAEe,wCAAc"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.d.ts b/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.d.ts deleted file mode 100644 index 739952bc..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { TSESTree, TSESLintScope } from '@typescript-eslint/experimental-utils'; -/** - * based on eslint-scope - */ -export declare class ScopeManager extends TSESLintScope.ScopeManager { - scopes: TSESLintScope.Scope[]; - globalScope: TSESLintScope.Scope; - constructor(options: TSESLintScope.ScopeManagerOptions); - /** @internal */ - __nestEnumScope(node: TSESTree.TSEnumDeclaration): TSESLintScope.Scope; - /** @internal */ - __nestEmptyFunctionScope(node: TSESTree.TSDeclareFunction): TSESLintScope.Scope; -} -//# sourceMappingURL=scope-manager.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.d.ts.map b/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.d.ts.map deleted file mode 100644 index 0b213c7c..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scope-manager.d.ts","sourceRoot":"","sources":["../../src/scope/scope-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAGhF;;GAEG;AACH,qBAAa,YAAa,SAAQ,aAAa,CAAC,YAAY;IAC1D,MAAM,EAAG,aAAa,CAAC,KAAK,EAAE,CAAC;IAC/B,WAAW,EAAG,aAAa,CAAC,KAAK,CAAC;gBAEtB,OAAO,EAAE,aAAa,CAAC,mBAAmB;IAItD,gBAAgB;IAChB,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,aAAa,CAAC,KAAK;IAItE,gBAAgB;IAChB,wBAAwB,CACtB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAC/B,aAAa,CAAC,KAAK;CAKvB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.js b/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.js deleted file mode 100644 index 33d7b284..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -const scopes_1 = require("./scopes"); -/** - * based on eslint-scope - */ -class ScopeManager extends experimental_utils_1.TSESLintScope.ScopeManager { - constructor(options) { - super(options); - } - /** @internal */ - __nestEnumScope(node) { - return this.__nestScope(new scopes_1.EnumScope(this, this.__currentScope, node)); - } - /** @internal */ - __nestEmptyFunctionScope(node) { - return this.__nestScope(new scopes_1.EmptyFunctionScope(this, this.__currentScope, node)); - } -} -exports.ScopeManager = ScopeManager; -//# sourceMappingURL=scope-manager.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.js.map b/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.js.map deleted file mode 100644 index 5c3847ed..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scope-manager.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scope-manager.js","sourceRoot":"","sources":["../../src/scope/scope-manager.ts"],"names":[],"mappings":";;AAAA,8EAAgF;AAChF,qCAAyD;AAEzD;;GAEG;AACH,MAAa,YAAa,SAAQ,kCAAa,CAAC,YAAY;IAI1D,YAAY,OAA0C;QACpD,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED,gBAAgB;IAChB,eAAe,CAAC,IAAgC;QAC9C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,kBAAS,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,gBAAgB;IAChB,wBAAwB,CACtB,IAAgC;QAEhC,OAAO,IAAI,CAAC,WAAW,CACrB,IAAI,2BAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CACxD,CAAC;IACJ,CAAC;CACF;AArBD,oCAqBC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scopes.d.ts b/node_modules/@typescript-eslint/parser/dist/scope/scopes.d.ts deleted file mode 100644 index b41e1cd0..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scopes.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { TSESTree, TSESLintScope } from '@typescript-eslint/experimental-utils'; -import { ScopeManager } from './scope-manager'; -/** The scope class for enum. */ -export declare class EnumScope extends TSESLintScope.Scope { - constructor(scopeManager: ScopeManager, upperScope: TSESLintScope.Scope, block: TSESTree.TSEnumDeclaration | null); -} -/** The scope class for empty functions. */ -export declare class EmptyFunctionScope extends TSESLintScope.Scope { - constructor(scopeManager: ScopeManager, upperScope: TSESLintScope.Scope, block: TSESTree.TSDeclareFunction | null); -} -//# sourceMappingURL=scopes.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scopes.d.ts.map b/node_modules/@typescript-eslint/parser/dist/scope/scopes.d.ts.map deleted file mode 100644 index 65f2a1f4..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scopes.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scopes.d.ts","sourceRoot":"","sources":["../../src/scope/scopes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,gCAAgC;AAChC,qBAAa,SAAU,SAAQ,aAAa,CAAC,KAAK;gBAE9C,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,aAAa,CAAC,KAAK,EAC/B,KAAK,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;CAI3C;AAED,2CAA2C;AAC3C,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,KAAK;gBAEvD,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,aAAa,CAAC,KAAK,EAC/B,KAAK,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;CAI3C"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scopes.js b/node_modules/@typescript-eslint/parser/dist/scope/scopes.js deleted file mode 100644 index 52bc504c..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scopes.js +++ /dev/null @@ -1,18 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); -/** The scope class for enum. */ -class EnumScope extends experimental_utils_1.TSESLintScope.Scope { - constructor(scopeManager, upperScope, block) { - super(scopeManager, 'enum', upperScope, block, false); - } -} -exports.EnumScope = EnumScope; -/** The scope class for empty functions. */ -class EmptyFunctionScope extends experimental_utils_1.TSESLintScope.Scope { - constructor(scopeManager, upperScope, block) { - super(scopeManager, 'empty-function', upperScope, block, false); - } -} -exports.EmptyFunctionScope = EmptyFunctionScope; -//# sourceMappingURL=scopes.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/scope/scopes.js.map b/node_modules/@typescript-eslint/parser/dist/scope/scopes.js.map deleted file mode 100644 index 18850e0d..00000000 --- a/node_modules/@typescript-eslint/parser/dist/scope/scopes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scopes.js","sourceRoot":"","sources":["../../src/scope/scopes.ts"],"names":[],"mappings":";;AAAA,8EAAgF;AAGhF,gCAAgC;AAChC,MAAa,SAAU,SAAQ,kCAAa,CAAC,KAAK;IAChD,YACE,YAA0B,EAC1B,UAA+B,EAC/B,KAAwC;QAExC,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;CACF;AARD,8BAQC;AAED,2CAA2C;AAC3C,MAAa,kBAAmB,SAAQ,kCAAa,CAAC,KAAK;IACzD,YACE,YAA0B,EAC1B,UAA+B,EAC/B,KAAwC;QAExC,KAAK,CAAC,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;CACF;AARD,gDAQC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/node_modules/.bin/eslint b/node_modules/@typescript-eslint/parser/node_modules/.bin/eslint new file mode 120000 index 00000000..da97b4e3 --- /dev/null +++ b/node_modules/@typescript-eslint/parser/node_modules/.bin/eslint @@ -0,0 +1 @@ +../../../../eslint/bin/eslint.js \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/package.json b/node_modules/@typescript-eslint/parser/package.json index 0b061a88..214ff284 100644 --- a/node_modules/@typescript-eslint/parser/package.json +++ b/node_modules/@typescript-eslint/parser/package.json @@ -1,16 +1,16 @@ { "name": "@typescript-eslint/parser", - "version": "2.22.0", + "version": "4.3.0", "description": "An ESLint custom parser which leverages TypeScript ESTree", - "main": "dist/parser.js", - "types": "dist/parser.d.ts", + "main": "dist/index.js", + "types": "dist/index.d.ts", "files": [ "dist", "README.md", "LICENSE" ], "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^10.12.0 || >=12.0.0" }, "repository": { "type": "git", @@ -32,25 +32,29 @@ ], "scripts": { "build": "tsc -b tsconfig.build.json", + "postbuild": "downlevel-dts dist _ts3.4/dist", "clean": "tsc -b tsconfig.build.json --clean", + "postclean": "rimraf dist", "format": "prettier --write \"./**/*.{ts,js,json,md}\" --ignore-path ../../.prettierignore", "lint": "eslint . --ext .js,.ts --ignore-path='../../.eslintignore'", "test": "jest --coverage", "typecheck": "tsc -p tsconfig.json --noEmit" }, "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0" + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" }, "dependencies": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.22.0", - "@typescript-eslint/typescript-estree": "2.22.0", - "eslint-visitor-keys": "^1.1.0" + "@typescript-eslint/scope-manager": "4.3.0", + "@typescript-eslint/types": "4.3.0", + "@typescript-eslint/typescript-estree": "4.3.0", + "debug": "^4.1.1" }, "devDependencies": { - "@types/glob": "^7.1.1", - "@typescript-eslint/shared-fixtures": "2.22.0", - "glob": "*" + "@types/glob": "*", + "@typescript-eslint/experimental-utils": "4.3.0", + "@typescript-eslint/shared-fixtures": "4.3.0", + "glob": "*", + "typescript": "*" }, "peerDependenciesMeta": { "typescript": { @@ -61,5 +65,12 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "5a097d316fb084dc4b13e87d68fe9bf43d8a9548" + "typesVersions": { + "<3.8": { + "*": [ + "_ts3.4/*" + ] + } + }, + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md b/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md index cf0ad482..d68103fe 100644 --- a/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md +++ b/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md @@ -3,6 +3,33 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + + +### Bug Fixes + +* **scope-manager:** correct analysis of inferred types in conditional types ([#2537](https://github.com/typescript-eslint/typescript-eslint/issues/2537)) ([4f660fd](https://github.com/typescript-eslint/typescript-eslint/commit/4f660fd31acbb88b30719f925dcb2b3022cc2bab)) + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + # [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map index a471358d..7003cbef 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"TypeVisitor.d.ts","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,cAAM,WAAY,SAAQ,OAAO;;gBAGnB,UAAU,EAAE,UAAU;IAKlC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI;IAS/D,SAAS,CAAC,iBAAiB,CACzB,IAAI,EACA,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,iBAAiB,GAC1B,QAAQ,CAAC,+BAA+B,GACxC,QAAQ,CAAC,cAAc,GACvB,QAAQ,CAAC,iBAAiB,GAC7B,IAAI;IAgCP,SAAS,CAAC,gBAAgB,CACxB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,mBAAmB,GAC9D,IAAI;IAYP,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,GAAG,IAAI;IAIrD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IAKjE,SAAS,CAAC,0BAA0B,CAClC,IAAI,EAAE,QAAQ,CAAC,0BAA0B,GACxC,IAAI;IAIP,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAUnE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAInE,SAAS,CAAC,+BAA+B,CACvC,IAAI,EAAE,QAAQ,CAAC,+BAA+B,GAC7C,IAAI;IAIP,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,GAAG,IAAI;IAI7D,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IASjE,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;IAsCvD,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAoBP,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,GAAG,IAAI;IAOzD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAKnE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,kBAAkB,GAAG,IAAI;IAKrE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,mBAAmB,GAAG,IAAI;IAKvE,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAK/D,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAkBP,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAS/D,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAQ/D,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;CAWxD;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"TypeVisitor.d.ts","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,cAAM,WAAY,SAAQ,OAAO;;gBAGnB,UAAU,EAAE,UAAU;IAKlC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI;IAS/D,SAAS,CAAC,iBAAiB,CACzB,IAAI,EACA,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,iBAAiB,GAC1B,QAAQ,CAAC,+BAA+B,GACxC,QAAQ,CAAC,cAAc,GACvB,QAAQ,CAAC,iBAAiB,GAC7B,IAAI;IAgCP,SAAS,CAAC,gBAAgB,CACxB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,mBAAmB,GAC9D,IAAI;IAYP,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,GAAG,IAAI;IAIrD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IAKjE,SAAS,CAAC,0BAA0B,CAClC,IAAI,EAAE,QAAQ,CAAC,0BAA0B,GACxC,IAAI;IAIP,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAanE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAInE,SAAS,CAAC,+BAA+B,CACvC,IAAI,EAAE,QAAQ,CAAC,+BAA+B,GAC7C,IAAI;IAIP,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,GAAG,IAAI;IAI7D,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IASjE,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;IAsCvD,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAoBP,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,GAAG,IAAI;IAOzD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAKnE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,kBAAkB,GAAG,IAAI;IAKrE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,mBAAmB,GAAG,IAAI;IAKvE,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAK/D,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAkBP,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAS/D,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAQ/D,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;CAWxD;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js index 6a3d4e6e..10b05f6f 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js @@ -79,8 +79,10 @@ class TypeVisitor extends Visitor_1.Visitor { // conditional types can define inferred type parameters // which are only accessible from inside the conditional parameter __classPrivateFieldGet(this, _referencer).scopeManager.nestConditionalTypeScope(node); - this.visitChildren(node); + // type parameters inferred in the condition clause are not accessible within the false branch + this.visitChildren(node, ['falseType']); __classPrivateFieldGet(this, _referencer).close(node); + this.visit(node.falseType); } TSConstructorType(node) { this.visitFunctionType(node); diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map index 6ef5c83e..19d692c2 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map @@ -1 +1 @@ -{"version":3,"file":"TypeVisitor.js","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"TypeVisitor.js","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/package.json b/node_modules/@typescript-eslint/scope-manager/package.json index 10cf383b..d93a7000 100644 --- a/node_modules/@typescript-eslint/scope-manager/package.json +++ b/node_modules/@typescript-eslint/scope-manager/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/scope-manager", - "version": "4.1.0", + "version": "4.3.0", "description": "TypeScript scope analyser for ESLint", "keywords": [ "eslint", @@ -39,12 +39,12 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/types": "4.1.0", - "@typescript-eslint/visitor-keys": "4.1.0" + "@typescript-eslint/types": "4.3.0", + "@typescript-eslint/visitor-keys": "4.3.0" }, "devDependencies": { "@types/glob": "*", - "@typescript-eslint/typescript-estree": "4.1.0", + "@typescript-eslint/typescript-estree": "4.3.0", "glob": "*", "jest-specific-snapshot": "*", "make-dir": "*", @@ -64,5 +64,5 @@ ] } }, - "gitHead": "00a24706222254774121ee62038e67d0efa993e7" + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/@typescript-eslint/types/CHANGELOG.md b/node_modules/@typescript-eslint/types/CHANGELOG.md index 43d03464..a9206bf5 100644 --- a/node_modules/@typescript-eslint/types/CHANGELOG.md +++ b/node_modules/@typescript-eslint/types/CHANGELOG.md @@ -3,6 +3,33 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + + +### Bug Fixes + +* **types:** artificial fix needed to trigger release ([b577daf](https://github.com/typescript-eslint/typescript-eslint/commit/b577daf27cd87870b6e095e4e995519f96d321dd)) + + + + + # [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) diff --git a/node_modules/@typescript-eslint/types/package.json b/node_modules/@typescript-eslint/types/package.json index 641725a4..9b0ca10b 100644 --- a/node_modules/@typescript-eslint/types/package.json +++ b/node_modules/@typescript-eslint/types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/types", - "version": "4.1.0", + "version": "4.3.0", "description": "Types for the TypeScript-ESTree AST spec", "keywords": [ "eslint", @@ -48,5 +48,5 @@ ] } }, - "gitHead": "00a24706222254774121ee62038e67d0efa993e7" + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md b/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md index ffd7ae39..0a5a33b1 100644 --- a/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md +++ b/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md @@ -3,6 +3,400 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +## [4.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.0...v4.0.1) (2020-08-31) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.1...v4.0.0) (2020-08-31) + + +### Bug Fixes + +* correct decorator traversal for AssignmentPattern ([#2375](https://github.com/typescript-eslint/typescript-eslint/issues/2375)) ([d738fa4](https://github.com/typescript-eslint/typescript-eslint/commit/d738fa4eff0a5c4cfc9b30b1c0502f8d1e78d7b6)) +* **typescript-estree:** correct ChainExpression interaction with parentheses and non-nulls ([#2380](https://github.com/typescript-eslint/typescript-eslint/issues/2380)) ([762bc99](https://github.com/typescript-eslint/typescript-eslint/commit/762bc99584ede4d0b8099a743991e957aec86aa8)) + + +### Features + +* support ESTree optional chaining representation ([#2308](https://github.com/typescript-eslint/typescript-eslint/issues/2308)) ([e9d2ab6](https://github.com/typescript-eslint/typescript-eslint/commit/e9d2ab638b6767700b52797e74b814ea059beaae)) +* **typescript-estree:** switch to globby ([#2418](https://github.com/typescript-eslint/typescript-eslint/issues/2418)) ([3a7ec9b](https://github.com/typescript-eslint/typescript-eslint/commit/3a7ec9bcf1873a99c6da2f19ade8ab4763b4793c)), closes [#2398](https://github.com/typescript-eslint/typescript-eslint/issues/2398) + + +### BREAKING CHANGES + +* **typescript-estree:** - removes the ability to supply a `RegExp` to `projectFolderIgnoreList`, and changes the meaning of the string value from a regex to a glob. +* - Removed decorators property from several Nodes that could never semantically have them (FunctionDeclaration, TSEnumDeclaration, and TSInterfaceDeclaration) +- Removed AST_NODE_TYPES.Import. This is a minor breaking change as the node type that used this was removed ages ago. + + + + + +## [3.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.0...v3.10.1) (2020-08-25) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [3.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.1...v3.10.0) (2020-08-24) + + +### Bug Fixes + +* **typescript-estree:** ts.NamedTupleMember workaround for A parser that converts TypeScript source code into an ESTree-compatible form

- Azure Pipelines - GitHub license + CI NPM Version NPM Downloads - Commitizen friendly

-
+## Getting Started + +**[You can find our Getting Started docs here](../../docs/getting-started/linting/README.md)** ## About @@ -182,6 +182,15 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { */ project?: string | string[]; + /** + * If you provide a glob (or globs) to the project option, you can use this option to ignore certain folders from + * being matched by the globs. + * This accepts an array of globs to ignore. + * + * By default, this is set to ["/node_modules/"] + */ + projectFolderIgnoreList?: string[]; + /** * The absolute path to the root directory for all provided `project`s. */ @@ -205,6 +214,7 @@ const PARSE_AND_GENERATE_SERVICES_DEFAULT_OPTIONS: ParseOptions = { extraFileExtensions: [], preserveNodeMaps: false, // or true, if you do not set this, but pass `project` project: undefined, + projectFolderIgnoreList: ['/node_modules/'], tsconfigRootDir: process.cwd(), }; @@ -238,9 +248,7 @@ Types for the AST produced by the parse functions. ## Supported TypeScript Version -We will always endeavor to support the latest stable version of TypeScript. - -The version of TypeScript currently supported by this parser is `~3.2.1`. This is reflected in the `devDependency` requirement within the package.json file, and it is what the tests will be run against. We have an open `peerDependency` requirement in order to allow for experimentation on newer/beta versions of TypeScript. +See the [Supported TypeScript Version](../../README.md#supported-typescript-version) section in the project root. If you use a non-supported version of TypeScript, the parser will log a warning to the console. diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts index cecb91f3..61bc2f1b 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts @@ -4,6 +4,6 @@ import { Extra } from './parser-options'; import { TSESTree } from './ts-estree'; export declare function astConverter(ast: SourceFile, extra: Extra, shouldPreserveNodeMaps: boolean): { estree: TSESTree.Program; - astMaps: ASTMaps | undefined; + astMaps: ASTMaps; }; //# sourceMappingURL=ast-converter.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map index 5ade0e46..df6276c5 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"ast-converter.d.ts","sourceRoot":"","sources":["../src/ast-converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAA2B,OAAO,EAAE,MAAM,WAAW,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,wBAAgB,YAAY,CAC1B,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,KAAK,EACZ,sBAAsB,EAAE,OAAO,GAC9B;IAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,CAwD5D"} \ No newline at end of file +{"version":3,"file":"ast-converter.d.ts","sourceRoot":"","sources":["../src/ast-converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAA2B,OAAO,EAAE,MAAM,WAAW,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,wBAAgB,YAAY,CAC1B,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,KAAK,EACZ,sBAAsB,EAAE,OAAO,GAC9B;IAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CA4DhD"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js index b6d818c8..6af960ee 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.astConverter = void 0; const convert_1 = require("./convert"); const convert_comments_1 = require("./convert-comments"); const node_utils_1 = require("./node-utils"); @@ -27,13 +28,17 @@ function astConverter(ast, extra, shouldPreserveNodeMaps) { /** * Optionally remove range and loc if specified */ - if (extra.range || extra.loc) { + if (!extra.range || !extra.loc) { simple_traverse_1.simpleTraverse(estree, { enter: node => { if (!extra.range) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- TS 4.0 made this an error because the types aren't optional + // @ts-expect-error delete node.range; } if (!extra.loc) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- TS 4.0 made this an error because the types aren't optional + // @ts-expect-error delete node.loc; } }, @@ -51,7 +56,7 @@ function astConverter(ast, extra, shouldPreserveNodeMaps) { if (extra.comment) { estree.comments = convert_comments_1.convertComments(ast, extra.code); } - const astMaps = shouldPreserveNodeMaps ? instance.getASTMaps() : undefined; + const astMaps = instance.getASTMaps(); return { estree, astMaps }; } exports.astConverter = astConverter; diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map index c379ca40..6a5b2155 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map @@ -1 +1 @@ -{"version":3,"file":"ast-converter.js","sourceRoot":"","sources":["../src/ast-converter.ts"],"names":[],"mappings":";;AACA,uCAA6D;AAC7D,yDAAqD;AACrD,6CAA6C;AAG7C,uDAAmD;AAEnD,SAAgB,YAAY,CAC1B,GAAe,EACf,KAAY,EACZ,sBAA+B;IAE/B;;;OAGG;IACH,6BAA6B;IAC7B,8DAA8D;IAC9D,MAAM,gBAAgB,GAAI,GAAW,CAAC,gBAAgB,CAAC;IACvD,IAAI,gBAAgB,CAAC,MAAM,EAAE;QAC3B,MAAM,sBAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KACzC;IAED;;OAEG;IACH,MAAM,QAAQ,GAAG,IAAI,mBAAS,CAAC,GAAG,EAAE;QAClC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,IAAI,KAAK;QAC3D,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK;QAC7C,sBAAsB;KACvB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAEzC;;OAEG;IACH,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE;QAC5B,gCAAc,CAAC,MAAM,EAAE;YACrB,KAAK,EAAE,IAAI,CAAC,EAAE;gBACZ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;oBAChB,OAAO,IAAI,CAAC,KAAK,CAAC;iBACnB;gBACD,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;oBACd,OAAO,IAAI,CAAC,GAAG,CAAC;iBACjB;YACH,CAAC;SACF,CAAC,CAAC;KACJ;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,MAAM,CAAC,MAAM,GAAG,0BAAa,CAAC,GAAG,CAAC,CAAC;KACpC;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,MAAM,CAAC,QAAQ,GAAG,kCAAe,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;KACpD;IAED,MAAM,OAAO,GAAG,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAE3E,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC;AA5DD,oCA4DC"} \ No newline at end of file +{"version":3,"file":"ast-converter.js","sourceRoot":"","sources":["../src/ast-converter.ts"],"names":[],"mappings":";;;AACA,uCAA6D;AAC7D,yDAAqD;AACrD,6CAA6C;AAG7C,uDAAmD;AAEnD,SAAgB,YAAY,CAC1B,GAAe,EACf,KAAY,EACZ,sBAA+B;IAE/B;;;OAGG;IACH,6BAA6B;IAC7B,8DAA8D;IAC9D,MAAM,gBAAgB,GAAI,GAAW,CAAC,gBAAgB,CAAC;IACvD,IAAI,gBAAgB,CAAC,MAAM,EAAE;QAC3B,MAAM,sBAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KACzC;IAED;;OAEG;IACH,MAAM,QAAQ,GAAG,IAAI,mBAAS,CAAC,GAAG,EAAE;QAClC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,IAAI,KAAK;QAC3D,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK;QAC7C,sBAAsB;KACvB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAEzC;;OAEG;IACH,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;QAC9B,gCAAc,CAAC,MAAM,EAAE;YACrB,KAAK,EAAE,IAAI,CAAC,EAAE;gBACZ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;oBAChB,4HAA4H;oBAC5H,mBAAmB;oBACnB,OAAO,IAAI,CAAC,KAAK,CAAC;iBACnB;gBACD,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;oBACd,4HAA4H;oBAC5H,mBAAmB;oBACnB,OAAO,IAAI,CAAC,GAAG,CAAC;iBACjB;YACH,CAAC;SACF,CAAC,CAAC;KACJ;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,MAAM,CAAC,MAAM,GAAG,0BAAa,CAAC,GAAG,CAAC,CAAC;KACpC;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,MAAM,CAAC,QAAQ,GAAG,kCAAe,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;KACpD;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;IAEtC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC;AAhED,oCAgEC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js b/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js index 56c0e582..de4a735a 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js @@ -1,12 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.convertComments = void 0; const ts = __importStar(require("typescript")); const util_1 = require("tsutils/util/util"); const node_utils_1 = require("./node-utils"); diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map index 05250303..6952a589 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map @@ -1 +1 @@ -{"version":3,"file":"convert-comments.js","sourceRoot":"","sources":["../src/convert-comments.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+CAAiC;AACjC,4CAAmD;AACnD,6CAAyC;AACzC,2CAAwD;AAExD;;;;;;GAMG;AACH,SAAgB,eAAe,CAC7B,GAAkB,EAClB,IAAY;IAEZ,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,qBAAc,CACZ,GAAG,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;QACb,MAAM,IAAI,GACR,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,uBAAuB;YACnD,CAAC,CAAC,2BAAe,CAAC,IAAI;YACtB,CAAC,CAAC,2BAAe,CAAC,KAAK,CAAC;QAC5B,MAAM,KAAK,GAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,sBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAE/C,mDAAmD;QACnD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB;YACpD,CAAC,CAAC,sCAAsC;gBACtC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS;YACtB,CAAC,CAAC,4CAA4C;gBAC5C,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC;YACtC,KAAK;YACL,GAAG;SACJ,CAAC,CAAC;IACL,CAAC,EACD,GAAG,CACJ,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAnCD,0CAmCC"} \ No newline at end of file +{"version":3,"file":"convert-comments.js","sourceRoot":"","sources":["../src/convert-comments.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,4CAAmD;AACnD,6CAAyC;AACzC,2CAAwD;AAExD;;;;;;GAMG;AACH,SAAgB,eAAe,CAC7B,GAAkB,EAClB,IAAY;IAEZ,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,qBAAc,CACZ,GAAG,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;QACb,MAAM,IAAI,GACR,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,uBAAuB;YACnD,CAAC,CAAC,2BAAe,CAAC,IAAI;YACtB,CAAC,CAAC,2BAAe,CAAC,KAAK,CAAC;QAC5B,MAAM,KAAK,GAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,sBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAE/C,mDAAmD;QACnD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB;YACpD,CAAC,CAAC,sCAAsC;gBACtC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS;YACtB,CAAC,CAAC,4CAA4C;gBAC5C,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC;YACtC,KAAK;YACL,GAAG;SACJ,CAAC,CAAC;IACL,CAAC,EACD,GAAG,CACJ,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAnCD,0CAmCC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts index a56f7ce9..c065e15d 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts @@ -1,7 +1,7 @@ import * as ts from 'typescript'; import { TSError } from './node-utils'; -import { TSESTree, TSNode } from './ts-estree'; import { ParserWeakMap, ParserWeakMapESTreeToTSNode } from './parser-options'; +import { TSESTree, TSNode } from './ts-estree'; interface ConverterOptions { errorOnUnknownASTType: boolean; useJSXTextNode: boolean; @@ -75,6 +75,7 @@ export declare class Converter { */ private convertType; private createNode; + private convertBindingNameWithTypeAnnotation; /** * Converts a child into a type annotation. This creates an intermediary * TypeAnnotation node to match what Flow does. @@ -109,6 +110,7 @@ export declare class Converter { * @returns an array of converted ESTreeNode params */ private convertParameters; + private convertChainExpression; /** * For nodes that are copied directly from the TypeScript AST into * ESTree mostly as-is. The only difference is the addition of a type diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map index 1956b447..c1f6816c 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAkBL,OAAO,EACR,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,QAAQ,EACR,MAAM,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAI9E,UAAU,gBAAgB;IACxB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,OAAO,CAAC;IACxB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAMhD;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAKzD,UAAU,IAAI,OAAO;IAOrB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;IAkCjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAmDlB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAkBlB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;OAKG;IACH,OAAO,CAAC,oCAAoC;IAa5C;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAe1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAmElB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAmCzB;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAkD9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;CAkiEpB"} \ No newline at end of file +{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAkBL,OAAO,EAGR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAEL,QAAQ,EACR,MAAM,EAEP,MAAM,aAAa,CAAC;AAKrB,UAAU,gBAAgB;IACxB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,OAAO,CAAC;IACxB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAMhD;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAKzD,UAAU,IAAI,OAAO;IAOrB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;IAkCjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAyDlB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,oCAAoC;IAe5C;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;OAKG;IACH,OAAO,CAAC,oCAAoC;IAa5C;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAe1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,sBAAsB;IA4C9B;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAmElB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAkD9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;CA8iEpB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js index 2fcd472b..e45592f5 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js @@ -1,17 +1,31 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.Converter = exports.convertError = void 0; // There's lots of funny stuff due to the typing of ts.Node /* eslint-disable @typescript-eslint/no-explicit-any */ const ts = __importStar(require("typescript")); const node_utils_1 = require("./node-utils"); const ts_estree_1 = require("./ts-estree"); +const version_check_1 = require("./version-check"); const SyntaxKind = ts.SyntaxKind; /** * Extends and formats a given error object @@ -69,7 +83,7 @@ class Converter { if (allowPattern !== undefined) { this.allowPattern = allowPattern; } - const result = this.convertNode(node, ((parent !== null && parent !== void 0 ? parent : node.parent))); + const result = this.convertNode(node, (parent !== null && parent !== void 0 ? parent : node.parent)); this.registerTSNodeInNodeMap(node, result); this.inTypeMode = typeMode; this.allowPattern = pattern; @@ -101,14 +115,19 @@ class Converter { type: ts_estree_1.AST_NODE_TYPES.ExportDefaultDeclaration, declaration: result, range: [exportKeyword.getStart(this.ast), result.range[1]], + exportKind: 'value', }); } else { + const isType = result.type === ts_estree_1.AST_NODE_TYPES.TSInterfaceDeclaration || + result.type === ts_estree_1.AST_NODE_TYPES.TSTypeAliasDeclaration; + const isDeclare = result.declare === true; return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ExportNamedDeclaration, declaration: result, specifiers: [], source: null, + exportKind: isType || isDeclare ? 'type' : 'value', range: [exportKeyword.getStart(this.ast), result.range[1]], }); } @@ -155,7 +174,9 @@ class Converter { createNode(node, data) { const result = data; if (!result.range) { - result.range = node_utils_1.getRange(node, this.ast); + result.range = node_utils_1.getRange( + // this is completely valid, but TS hates it + node, this.ast); } if (!result.loc) { result.loc = node_utils_1.getLocFor(result.range[0], result.range[1], this.ast); @@ -165,6 +186,14 @@ class Converter { } return result; } + convertBindingNameWithTypeAnnotation(name, tsType, parent) { + const id = this.convertPattern(name); + if (tsType) { + id.typeAnnotation = this.convertTypeAnnotation(tsType, parent); + this.fixParentLocation(id, id.typeAnnotation.range); + } + return id; + } /** * Converts a child into a type annotation. This creates an intermediary * TypeAnnotation node to match what Flow does. @@ -174,8 +203,8 @@ class Converter { */ convertTypeAnnotation(child, parent) { // in FunctionType and ConstructorType typeAnnotation has 2 characters `=>` and in other places is just colon - const offset = parent.kind === SyntaxKind.FunctionType || - parent.kind === SyntaxKind.ConstructorType + const offset = (parent === null || parent === void 0 ? void 0 : parent.kind) === SyntaxKind.FunctionType || + (parent === null || parent === void 0 ? void 0 : parent.kind) === SyntaxKind.ConstructorType ? 2 : 1; const annotationStartCol = child.getFullStart() - offset; @@ -197,10 +226,9 @@ class Converter { let allowDirectives = node_utils_1.canContainDirective(parent); return (nodes .map(statement => { - var _a; const child = this.convertChild(statement); if (allowDirectives) { - if (((_a = child) === null || _a === void 0 ? void 0 : _a.expression) && + if ((child === null || child === void 0 ? void 0 : child.expression) && ts.isExpressionStatement(statement) && ts.isStringLiteral(statement.expression)) { const raw = child.expression.raw; @@ -254,13 +282,46 @@ class Converter { return []; } return parameters.map(param => { + var _a; const convertedParam = this.convertChild(param); - if (param.decorators && param.decorators.length) { + if ((_a = param.decorators) === null || _a === void 0 ? void 0 : _a.length) { convertedParam.decorators = param.decorators.map(el => this.convertChild(el)); } return convertedParam; }); } + convertChainExpression(node, tsNode) { + const { child, isOptional } = (() => { + if (node.type === ts_estree_1.AST_NODE_TYPES.MemberExpression) { + return { child: node.object, isOptional: node.optional }; + } + if (node.type === ts_estree_1.AST_NODE_TYPES.CallExpression) { + return { child: node.callee, isOptional: node.optional }; + } + return { child: node.expression, isOptional: false }; + })(); + const isChildUnwrappable = node_utils_1.isChildUnwrappableOptionalChain(tsNode, child); + if (!isChildUnwrappable && !isOptional) { + return node; + } + if (isChildUnwrappable && node_utils_1.isChainExpression(child)) { + // unwrap the chain expression child + const newChild = child.expression; + if (node.type === ts_estree_1.AST_NODE_TYPES.MemberExpression) { + node.object = newChild; + } + else if (node.type === ts_estree_1.AST_NODE_TYPES.CallExpression) { + node.callee = newChild; + } + else { + node.expression = newChild; + } + } + return this.createNode(tsNode, { + type: ts_estree_1.AST_NODE_TYPES.ChainExpression, + expression: node, + }); + } /** * For nodes that are copied directly from the TypeScript AST into * ESTree mostly as-is. The only difference is the addition of a type @@ -328,6 +389,11 @@ class Converter { let result; switch (node.kind) { case SyntaxKind.PropertyAccessExpression: + if (node.name.kind === SyntaxKind.PrivateIdentifier) { + // This is one of the few times where TS explicitly errors, and doesn't even gracefully handle the syntax. + // So we shouldn't ever get into this state to begin with. + throw new Error('Non-private identifier expected.'); + } result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.JSXMemberExpression, object: this.convertJSXTagName(node.expression, parent), @@ -426,16 +492,13 @@ class Converter { * @returns the converted ESTree node */ convertNode(node, parent) { - var _a, _b, _c, _d, _e, _f, _g, _h; + var _a, _b, _c, _d, _e, _f, _g, _h, _j; switch (node.kind) { case SyntaxKind.SourceFile: { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.Program, body: this.convertBodyExpressions(node.statements, node), - // externalModuleIndicator is internal field in TSC - sourceType: node.externalModuleIndicator - ? 'module' - : 'script', + sourceType: node.externalModuleIndicator ? 'module' : 'script', range: [node.getStart(this.ast), node.endOfFileToken.end], }); } @@ -520,7 +583,7 @@ class Converter { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.CatchClause, param: node.variableDeclaration - ? this.convertChild(node.variableDeclaration.name) + ? this.convertBindingNameWithTypeAnnotation(node.variableDeclaration.name, node.variableDeclaration.type) : null, body: this.convertChild(node.block), }); @@ -590,30 +653,18 @@ class Converter { if (node.typeParameters) { result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); } - /** - * Semantically, decorators are not allowed on function declarations, - * but the TypeScript compiler will parse them and produce a valid AST, - * so we handle them here too. - */ - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } // check for exports return this.fixExports(node, result); } case SyntaxKind.VariableDeclaration: { const result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.VariableDeclarator, - id: this.convertPattern(node.name), + id: this.convertBindingNameWithTypeAnnotation(node.name, node.type, node), init: this.convertChild(node.initializer), }); if (node.exclamationToken) { result.definite = true; } - if (node.type) { - result.id.typeAnnotation = this.convertTypeAnnotation(node.type, node); - this.fixParentLocation(result.id, result.id.typeAnnotation.range); - } return result; } case SyntaxKind.VariableStatement: { @@ -763,7 +814,9 @@ class Converter { case SyntaxKind.SetAccessor: case SyntaxKind.MethodDeclaration: { const method = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.FunctionExpression, + type: !node.body + ? ts_estree_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression + : ts_estree_1.AST_NODE_TYPES.FunctionExpression, id: null, generator: !!node.asteriskToken, expression: false, @@ -821,9 +874,8 @@ class Converter { result.accessibility = accessibility; } } - if (result.key.type === ts_estree_1.AST_NODE_TYPES.Identifier && - node.questionToken) { - result.key.optional = true; + if (node.questionToken) { + result.optional = true; } if (node.kind === SyntaxKind.GetAccessor) { result.kind = 'get'; @@ -845,7 +897,9 @@ class Converter { const constructorToken = (lastModifier && node_utils_1.findNextToken(lastModifier, node, this.ast)) || node.getFirstToken(); const constructor = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.FunctionExpression, + type: !node.body + ? ts_estree_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression + : ts_estree_1.AST_NODE_TYPES.FunctionExpression, id: null, params: this.convertParameters(node.parameters), generator: false, @@ -947,13 +1001,13 @@ class Converter { if (node.dotDotDotToken) { result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.RestElement, - argument: this.convertChild((_a = node.propertyName, (_a !== null && _a !== void 0 ? _a : node.name))), + argument: this.convertChild((_a = node.propertyName) !== null && _a !== void 0 ? _a : node.name), }); } else { result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.Property, - key: this.convertChild((_b = node.propertyName, (_b !== null && _b !== void 0 ? _b : node.name))), + key: this.convertChild((_b = node.propertyName) !== null && _b !== void 0 ? _b : node.name), value: this.convertChild(node.name), computed: Boolean(node.propertyName && node.propertyName.kind === SyntaxKind.ComputedPropertyName), @@ -1109,7 +1163,7 @@ class Converter { if (node.modifiers) { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSParameterProperty, - accessibility: (_c = node_utils_1.getTSNodeAccessibility(node), (_c !== null && _c !== void 0 ? _c : undefined)), + accessibility: (_c = node_utils_1.getTSNodeAccessibility(node)) !== null && _c !== void 0 ? _c : undefined, readonly: node_utils_1.hasModifier(SyntaxKind.ReadonlyKeyword, node) || undefined, static: node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node) || undefined, export: node_utils_1.hasModifier(SyntaxKind.ExportKeyword, node) || undefined, @@ -1121,7 +1175,7 @@ class Converter { // Classes case SyntaxKind.ClassDeclaration: case SyntaxKind.ClassExpression: { - const heritageClauses = (_d = node.heritageClauses, (_d !== null && _d !== void 0 ? _d : [])); + const heritageClauses = (_d = node.heritageClauses) !== null && _d !== void 0 ? _d : []; const classNodeType = node.kind === SyntaxKind.ClassDeclaration ? ts_estree_1.AST_NODE_TYPES.ClassDeclaration : ts_estree_1.AST_NODE_TYPES.ClassExpression; @@ -1135,14 +1189,14 @@ class Converter { body: [], range: [node.members.pos - 1, node.end], }), - superClass: ((_e = superClass) === null || _e === void 0 ? void 0 : _e.types[0]) ? this.convertChild(superClass.types[0].expression) + superClass: (superClass === null || superClass === void 0 ? void 0 : superClass.types[0]) ? this.convertChild(superClass.types[0].expression) : null, }); if (superClass) { if (superClass.types.length > 1) { throw node_utils_1.createError(this.ast, superClass.types[1].pos, 'Classes can only extend a single class.'); } - if (superClass.types[0] && superClass.types[0].typeArguments) { + if ((_e = superClass.types[0]) === null || _e === void 0 ? void 0 : _e.typeArguments) { result.superTypeParameters = this.convertTypeArgumentsToTypeParameters(superClass.types[0].typeArguments, superClass.types[0]); } } @@ -1182,8 +1236,12 @@ class Converter { type: ts_estree_1.AST_NODE_TYPES.ImportDeclaration, source: this.convertChild(node.moduleSpecifier), specifiers: [], + importKind: 'value', }); if (node.importClause) { + if (node.importClause.isTypeOnly) { + result.importKind = 'type'; + } if (node.importClause.name) { result.specifiers.push(this.convertChild(node.importClause)); } @@ -1209,20 +1267,23 @@ class Converter { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ImportSpecifier, local: this.convertChild(node.name), - imported: this.convertChild((_f = node.propertyName, (_f !== null && _f !== void 0 ? _f : node.name))), + imported: this.convertChild((_f = node.propertyName) !== null && _f !== void 0 ? _f : node.name), }); - case SyntaxKind.ImportClause: + case SyntaxKind.ImportClause: { + const local = this.convertChild(node.name); return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ImportDefaultSpecifier, - local: this.convertChild(node.name), - range: [node.getStart(this.ast), node.name.end], + local, + range: local.range, }); + } case SyntaxKind.ExportDeclaration: - if (node.exportClause) { + if (((_g = node.exportClause) === null || _g === void 0 ? void 0 : _g.kind) === SyntaxKind.NamedExports) { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ExportNamedDeclaration, source: this.convertChild(node.moduleSpecifier), specifiers: node.exportClause.elements.map(el => this.convertChild(el)), + exportKind: node.isTypeOnly ? 'type' : 'value', declaration: null, }); } @@ -1230,12 +1291,22 @@ class Converter { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ExportAllDeclaration, source: this.convertChild(node.moduleSpecifier), + exportKind: node.isTypeOnly ? 'type' : 'value', + exported: + // note - for compat with 3.7.x, where node.exportClause is always undefined and + // SyntaxKind.NamespaceExport does not exist yet (i.e. is undefined), this + // cannot be shortened to an optional chain, or else you end up with + // undefined === undefined, and the true path will hard error at runtime + node.exportClause && + node.exportClause.kind === SyntaxKind.NamespaceExport + ? this.convertChild(node.exportClause.name) + : null, }); } case SyntaxKind.ExportSpecifier: return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ExportSpecifier, - local: this.convertChild((_g = node.propertyName, (_g !== null && _g !== void 0 ? _g : node.name))), + local: this.convertChild((_h = node.propertyName) !== null && _h !== void 0 ? _h : node.name), exported: this.convertChild(node.name), }); case SyntaxKind.ExportAssignment: @@ -1249,6 +1320,7 @@ class Converter { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.ExportDefaultDeclaration, declaration: this.convertChild(node.expression), + exportKind: 'value', }); } // Unary Operations @@ -1343,90 +1415,50 @@ class Converter { const object = this.convertChild(node.expression); const property = this.convertChild(node.name); const computed = false; - const isLocallyOptional = node.questionDotToken !== undefined; - // the optional expression should propagate up the member expression tree - const isChildOptional = (object.type === ts_estree_1.AST_NODE_TYPES.OptionalMemberExpression || - object.type === ts_estree_1.AST_NODE_TYPES.OptionalCallExpression) && - // (x?.y).z is semantically different, and as such .z is no longer optional - node.expression.kind !== ts.SyntaxKind.ParenthesizedExpression; - if (isLocallyOptional || isChildOptional) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.OptionalMemberExpression, - object, - property, - computed, - optional: isLocallyOptional, - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.MemberExpression, - object, - property, - computed, - optional: false, - }); - } + const result = this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.MemberExpression, + object, + property, + computed, + optional: node.questionDotToken !== undefined, + }); + return this.convertChainExpression(result, node); } case SyntaxKind.ElementAccessExpression: { const object = this.convertChild(node.expression); const property = this.convertChild(node.argumentExpression); const computed = true; - const isLocallyOptional = node.questionDotToken !== undefined; - // the optional expression should propagate up the member expression tree - const isChildOptional = (object.type === ts_estree_1.AST_NODE_TYPES.OptionalMemberExpression || - object.type === ts_estree_1.AST_NODE_TYPES.OptionalCallExpression) && - // (x?.y).z is semantically different, and as such .z is no longer optional - node.expression.kind !== ts.SyntaxKind.ParenthesizedExpression; - if (isLocallyOptional || isChildOptional) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.OptionalMemberExpression, - object, - property, - computed, - optional: isLocallyOptional, - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.MemberExpression, - object, - property, - computed, - optional: false, - }); - } + const result = this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.MemberExpression, + object, + property, + computed, + optional: node.questionDotToken !== undefined, + }); + return this.convertChainExpression(result, node); } case SyntaxKind.CallExpression: { + if (node.expression.kind === SyntaxKind.ImportKeyword) { + if (node.arguments.length !== 1) { + throw node_utils_1.createError(this.ast, node.arguments.pos, 'Dynamic import must have one specifier as an argument.'); + } + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.ImportExpression, + source: this.convertChild(node.arguments[0]), + }); + } const callee = this.convertChild(node.expression); const args = node.arguments.map(el => this.convertChild(el)); - let result; - const isLocallyOptional = node.questionDotToken !== undefined; - // the optional expression should propagate up the member expression tree - const isChildOptional = (callee.type === ts_estree_1.AST_NODE_TYPES.OptionalMemberExpression || - callee.type === ts_estree_1.AST_NODE_TYPES.OptionalCallExpression) && - // (x?.y).z() is semantically different, and as such .z() is no longer optional - node.expression.kind !== ts.SyntaxKind.ParenthesizedExpression; - if (isLocallyOptional || isChildOptional) { - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.OptionalCallExpression, - callee, - arguments: args, - optional: isLocallyOptional, - }); - } - else { - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.CallExpression, - callee, - arguments: args, - optional: false, - }); - } + const result = this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.CallExpression, + callee, + arguments: args, + optional: node.questionDotToken !== undefined, + }); if (node.typeArguments) { result.typeParameters = this.convertTypeArgumentsToTypeParameters(node.typeArguments, node); } - return result; + return this.convertChainExpression(result, node); } case SyntaxKind.NewExpression: { // NOTE - NewExpression cannot have an optional chain in it @@ -1491,14 +1523,22 @@ class Converter { }); } case SyntaxKind.BigIntLiteral: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.BigIntLiteral, - raw: '', - value: '', + const range = node_utils_1.getRange(node, this.ast); + const rawValue = this.ast.text.slice(range[0], range[1]); + const bigint = rawValue + // remove suffix `n` + .slice(0, -1) + // `BigInt` doesn't accept numeric separator + // and `bigint` property should not include numeric separator + .replace(/_/g, ''); + const value = typeof BigInt !== 'undefined' ? BigInt(bigint) : null; + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.Literal, + raw: rawValue, + value: value, + bigint: value === null ? bigint : String(value), + range, }); - result.raw = this.ast.text.slice(result.range[0], result.range[1]); - result.value = result.raw.slice(0, -1); // remove suffix `n` - return result; } case SyntaxKind.RegularExpressionLiteral: { const pattern = node.text.slice(1, node.text.lastIndexOf('/')); @@ -1533,23 +1573,18 @@ class Converter { raw: 'false', }); case SyntaxKind.NullKeyword: { - if (this.inTypeMode) { + if (!version_check_1.typescriptVersionIsAtLeast['4.0'] && this.inTypeMode) { + // 4.0 started nesting null types inside a LiteralType node, but we still need to support pre-4.0 return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSNullKeyword, }); } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: null, - raw: 'null', - }); - } - } - case SyntaxKind.ImportKeyword: return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Import, + type: ts_estree_1.AST_NODE_TYPES.Literal, + value: null, + raw: 'null', }); + } case SyntaxKind.EmptyStatement: return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.EmptyStatement, @@ -1724,10 +1759,11 @@ class Converter { }); } case SyntaxKind.NonNullExpression: { - return this.createNode(node, { + const nnExpr = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSNonNullExpression, expression: this.convertChild(node.expression), }); + return this.convertChainExpression(nnExpr, node); } case SyntaxKind.TypeLiteral: { return this.createNode(node, { @@ -1926,7 +1962,7 @@ class Converter { return result; } case SyntaxKind.InterfaceDeclaration: { - const interfaceHeritageClauses = (_h = node.heritageClauses, (_h !== null && _h !== void 0 ? _h : [])); + const interfaceHeritageClauses = (_j = node.heritageClauses) !== null && _j !== void 0 ? _j : []; const result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSInterfaceDeclaration, body: this.createNode(node, { @@ -1961,14 +1997,6 @@ class Converter { result.implements = interfaceImplements; } } - /** - * Semantically, decorators are not allowed on interface declarations, - * but the TypeScript compiler will parse them and produce a valid AST, - * so we handle them here too. - */ - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } if (node_utils_1.hasModifier(SyntaxKind.AbstractKeyword, node)) { result.abstract = true; } @@ -2014,14 +2042,6 @@ class Converter { }); // apply modifiers first... this.applyModifiersToResult(result, node.modifiers); - /** - * Semantically, decorators are not allowed on enum declarations, - * but the TypeScript compiler will parse them and produce a valid AST, - * so we handle them here too. - */ - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } // ...then check for exports return this.fixExports(node, result); } @@ -2055,24 +2075,12 @@ class Converter { return this.fixExports(node, result); } // TypeScript specific types - case SyntaxKind.OptionalType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSOptionalType, - typeAnnotation: this.convertType(node.type), - }); - } case SyntaxKind.ParenthesizedType: { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSParenthesizedType, typeAnnotation: this.convertType(node.type), }); } - case SyntaxKind.TupleType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTupleType, - elementTypes: node.elementTypes.map(el => this.convertType(el)), - }); - } case SyntaxKind.UnionType: { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSUnionType, @@ -2085,12 +2093,6 @@ class Converter { types: node.types.map(el => this.convertType(el)), }); } - case SyntaxKind.RestType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSRestType, - typeAnnotation: this.convertType(node.type), - }); - } case SyntaxKind.AsExpression: { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.TSAsExpression, @@ -2105,10 +2107,20 @@ class Converter { }); } case SyntaxKind.LiteralType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSLiteralType, - literal: this.convertType(node.literal), - }); + if (version_check_1.typescriptVersionIsAtLeast['4.0'] && + node.literal.kind === SyntaxKind.NullKeyword) { + // 4.0 started nesting null types inside a LiteralType node + // but our AST is designed around the old way of null being a keyword + return this.createNode(node.literal, { + type: ts_estree_1.AST_NODE_TYPES.TSNullKeyword, + }); + } + else { + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.TSLiteralType, + literal: this.convertType(node.literal), + }); + } } case SyntaxKind.TypeAssertionExpression: { return this.createNode(node, { @@ -2142,6 +2154,49 @@ class Converter { type: ts_estree_1.AST_NODE_TYPES.TSAbstractKeyword, }); } + // Tuple + case SyntaxKind.TupleType: { + // In TS 4.0, the `elementTypes` property was changed to `elements`. + // To support both at compile time, we cast to access the newer version + // if the former does not exist. + const elementTypes = 'elementTypes' in node + ? node.elementTypes.map((el) => this.convertType(el)) + : node.elements.map((el) => this.convertType(el)); + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.TSTupleType, + elementTypes, + }); + } + case SyntaxKind.NamedTupleMember: { + const member = this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.TSNamedTupleMember, + elementType: this.convertType(node.type, node), + label: this.convertChild(node.name, node), + optional: node.questionToken != null, + }); + if (node.dotDotDotToken) { + // adjust the start to account for the "..." + member.range[0] = member.label.range[0]; + member.loc.start = member.label.loc.start; + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.TSRestType, + typeAnnotation: member, + }); + } + return member; + } + case SyntaxKind.OptionalType: { + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.TSOptionalType, + typeAnnotation: this.convertType(node.type), + }); + } + case SyntaxKind.RestType: { + return this.createNode(node, { + type: ts_estree_1.AST_NODE_TYPES.TSRestType, + typeAnnotation: this.convertType(node.type), + }); + } default: return this.deeplyCopy(node); } diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map index ba6630da..da4e64df 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map @@ -1 +1 @@ -{"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts index 562517c8..85764acf 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts @@ -7,6 +7,7 @@ interface CachedDirectoryStructureHost extends DirectoryStructureHost { } interface WatchCompilerHostOfConfigFile extends ts.WatchCompilerHostOfConfigFile { onCachedDirectoryStructureHostCreate(host: CachedDirectoryStructureHost): void; + extraFileExtensions?: readonly ts.FileExtensionInfo[]; } export { WatchCompilerHostOfConfigFile }; //# sourceMappingURL=WatchCompilerHostOfConfigFile.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map index 6bb6a9af..408e42e8 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"WatchCompilerHostOfConfigFile.d.ts","sourceRoot":"","sources":["../../src/create-program/WatchCompilerHostOfConfigFile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,UAAU,sBAAsB;IAC9B,aAAa,CAAC,CACZ,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CAAC;CACb;AAGD,UAAU,4BAA6B,SAAQ,sBAAsB;IACnE,aAAa,CACX,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CAAC;CACb;AAGD,UAAU,6BAA6B,CAAC,CAAC,SAAS,EAAE,CAAC,cAAc,CACjE,SAAQ,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC3C,oCAAoC,CAClC,IAAI,EAAE,4BAA4B,GACjC,IAAI,CAAC;CACT;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"WatchCompilerHostOfConfigFile.d.ts","sourceRoot":"","sources":["../../src/create-program/WatchCompilerHostOfConfigFile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,UAAU,sBAAsB;IAC9B,aAAa,CAAC,CACZ,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CAAC;CACb;AAGD,UAAU,4BAA6B,SAAQ,sBAAsB;IACnE,aAAa,CACX,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CAAC;CACb;AAGD,UAAU,6BAA6B,CAAC,CAAC,SAAS,EAAE,CAAC,cAAc,CACjE,SAAQ,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC3C,oCAAoC,CAClC,IAAI,EAAE,4BAA4B,GACjC,IAAI,CAAC;IACR,mBAAmB,CAAC,EAAE,SAAS,EAAE,CAAC,iBAAiB,EAAE,CAAC;CACvD;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js index c3fd55f3..9f60bc04 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js @@ -1,15 +1,28 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createDefaultProgram = void 0; const debug_1 = __importDefault(require("debug")); const path_1 = __importDefault(require("path")); const ts = __importStar(require("typescript")); diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map index 820b18ab..7ae63e4a 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map @@ -1 +1 @@ -{"version":3,"file":"createDefaultProgram.js","sourceRoot":"","sources":["../../src/create-program/createDefaultProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAAiC;AAEjC,qCAIkB;AAElB,MAAM,GAAG,GAAG,eAAK,CAAC,0DAA0D,CAAC,CAAC;AAE9E;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAY;IAEZ,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,QAAQ,IAAI,cAAc,CAAC,CAAC;IAEzE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QAClD,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,YAAY,GAAG,wBAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,EAAE,CAAC,gCAAgC,CACrD,YAAY,EACZ,8CAAqC,CAAC,KAAK,CAAC,kCACvC,EAAE,CAAC,GAAG,KAAE,mCAAmC,EAAE,GAAG,EAAE,GAAE,CAAC,IAC3D,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,YAAY,GAAG,EAAE,CAAC,kBAAkB,CACxC,WAAW,CAAC,OAAO;IACnB,oBAAoB,CAAC,IAAI,CAC1B,CAAC;IACF,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC;IAC1C,YAAY,CAAC,QAAQ,GAAG,CAAC,QAAgB,EAAsB,EAAE,CAC/D,cAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;QACzD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE5B,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAC9B,CAAC,KAAK,CAAC,QAAQ,CAAC,EAChB,WAAW,CAAC,OAAO,EACnB,YAAY,CACb,CAAC;IACF,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAElD,OAAO,GAAG,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AACjC,CAAC;AAEQ,oDAAoB"} \ No newline at end of file +{"version":3,"file":"createDefaultProgram.js","sourceRoot":"","sources":["../../src/create-program/createDefaultProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAAiC;AAEjC,qCAIkB;AAElB,MAAM,GAAG,GAAG,eAAK,CAAC,0DAA0D,CAAC,CAAC;AAE9E;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAY;IAEZ,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,QAAQ,IAAI,cAAc,CAAC,CAAC;IAEzE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QAClD,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,YAAY,GAAG,wBAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,EAAE,CAAC,gCAAgC,CACrD,YAAY,EACZ,8CAAqC,CAAC,KAAK,CAAC,kCACvC,EAAE,CAAC,GAAG,KAAE,mCAAmC,EAAE,GAAG,EAAE,GAAE,CAAC,IAC3D,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,YAAY,GAAG,EAAE,CAAC,kBAAkB,CACxC,WAAW,CAAC,OAAO;IACnB,oBAAoB,CAAC,IAAI,CAC1B,CAAC;IACF,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC;IAC1C,YAAY,CAAC,QAAQ,GAAG,CAAC,QAAgB,EAAsB,EAAE,CAC/D,cAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;QACzD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE5B,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAC9B,CAAC,KAAK,CAAC,QAAQ,CAAC,EAChB,WAAW,CAAC,OAAO,EACnB,YAAY,CACb,CAAC;IACF,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAElD,OAAO,GAAG,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AACjC,CAAC;AAEQ,oDAAoB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js index e0f9447c..88d4ba3b 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js @@ -1,15 +1,28 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createIsolatedProgram = void 0; const debug_1 = __importDefault(require("debug")); const ts = __importStar(require("typescript")); const shared_1 = require("./shared"); diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map index e2ca441a..75a61456 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map @@ -1 +1 @@ -{"version":3,"file":"createIsolatedProgram.js","sourceRoot":"","sources":["../../src/create-program/createIsolatedProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAiC;AAEjC,qCAIkB;AAElB,MAAM,GAAG,GAAG,eAAK,CAAC,2DAA2D,CAAC,CAAC;AAE/E;;;GAGG;AACH,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAY;IACvD,GAAG,CACD,6CAA6C,EAC7C,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxB,KAAK,CAAC,QAAQ,CACf,CAAC;IAEF,MAAM,YAAY,GAAoB;QACpC,UAAU;YACR,OAAO,IAAI,CAAC;QACd,CAAC;QACD,oBAAoB;YAClB,OAAO,KAAK,CAAC,QAAQ,CAAC;QACxB,CAAC;QACD,mBAAmB;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,cAAc;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,qBAAqB;YACnB,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,6BAA6B;QAC7B,UAAU;YACR,OAAO,IAAI,CAAC;QACd,CAAC;QACD,aAAa,CAAC,QAAgB;YAC5B,OAAO,EAAE,CAAC,gBAAgB,CACxB,QAAQ,EACR,IAAI,EACJ,EAAE,CAAC,YAAY,CAAC,MAAM;YACtB,oBAAoB,CAAC,IAAI,EACzB,sBAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAC/B,CAAC;QACJ,CAAC;QACD,QAAQ;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,yBAAyB;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,SAAS;YACP,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;IAEF,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAC9B,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAEd,SAAS,EAAE,IAAI,EACf,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAC9B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,IAC7C,8CAAqC,CAAC,KAAK,CAAC,GAEjD,YAAY,CACb,CAAC;IAEF,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;KACH;IAED,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAC1B,CAAC;AAEQ,sDAAqB"} \ No newline at end of file +{"version":3,"file":"createIsolatedProgram.js","sourceRoot":"","sources":["../../src/create-program/createIsolatedProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAiC;AAEjC,qCAIkB;AAElB,MAAM,GAAG,GAAG,eAAK,CAAC,2DAA2D,CAAC,CAAC;AAE/E;;;GAGG;AACH,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAY;IACvD,GAAG,CACD,6CAA6C,EAC7C,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxB,KAAK,CAAC,QAAQ,CACf,CAAC;IAEF,MAAM,YAAY,GAAoB;QACpC,UAAU;YACR,OAAO,IAAI,CAAC;QACd,CAAC;QACD,oBAAoB;YAClB,OAAO,KAAK,CAAC,QAAQ,CAAC;QACxB,CAAC;QACD,mBAAmB;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,cAAc;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,qBAAqB;YACnB,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,6BAA6B;QAC7B,UAAU;YACR,OAAO,IAAI,CAAC;QACd,CAAC;QACD,aAAa,CAAC,QAAgB;YAC5B,OAAO,EAAE,CAAC,gBAAgB,CACxB,QAAQ,EACR,IAAI,EACJ,EAAE,CAAC,YAAY,CAAC,MAAM;YACtB,oBAAoB,CAAC,IAAI,EACzB,sBAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAC/B,CAAC;QACJ,CAAC;QACD,QAAQ;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,yBAAyB;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,SAAS;YACP,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;IAEF,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAC9B,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAEd,SAAS,EAAE,IAAI,EACf,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAC9B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,IAC7C,8CAAqC,CAAC,KAAK,CAAC,GAEjD,YAAY,CACb,CAAC;IAEF,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;KACH;IAED,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAC1B,CAAC;AAEQ,sDAAqB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map index 254a67fc..18380901 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"createProjectProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAazC;;;;;GAKG;AACH,iBAAS,oBAAoB,CAC3B,IAAI,EAAE,MAAM,EACZ,oBAAoB,EAAE,OAAO,EAC7B,KAAK,EAAE,KAAK,GACX,aAAa,GAAG,SAAS,CA0E3B;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"createProjectProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAazC;;;;;GAKG;AACH,iBAAS,oBAAoB,CAC3B,IAAI,EAAE,MAAM,EACZ,oBAAoB,EAAE,OAAO,EAC7B,KAAK,EAAE,KAAK,GACX,aAAa,GAAG,SAAS,CAyE3B;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js index 23cd1873..917330b7 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createProjectProgram = void 0; const debug_1 = __importDefault(require("debug")); const path_1 = __importDefault(require("path")); const createWatchProgram_1 = require("./createWatchProgram"); @@ -24,11 +25,10 @@ function getExtension(fileName) { function createProjectProgram(code, createDefaultProgram, extra) { log('Creating project program for: %s', extra.filePath); const astAndProgram = node_utils_1.firstDefined(createWatchProgram_1.getProgramsForProjects(code, extra.filePath, extra), currentProgram => { - var _a; const ast = currentProgram.getSourceFile(extra.filePath); // working around https://github.com/typescript-eslint/typescript-eslint/issues/1573 const expectedExt = getExtension(extra.filePath); - const returnedExt = getExtension((_a = ast) === null || _a === void 0 ? void 0 : _a.fileName); + const returnedExt = getExtension(ast === null || ast === void 0 ? void 0 : ast.fileName); if (expectedExt !== returnedExt) { return; } @@ -66,7 +66,6 @@ function createProjectProgram(code, createDefaultProgram, extra) { } if (!hasMatchedAnError) { errorLines.push('The file must be included in at least one of the projects provided.'); - hasMatchedAnError = true; } throw new Error(errorLines.join('\n')); } diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map index e930b49f..a39bb006 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map @@ -1 +1 @@ -{"version":3,"file":"createProjectProgram.js","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"createProjectProgram.js","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js index 38ef7508..910a1fa3 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js @@ -1,15 +1,28 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.createSourceFile = void 0; const debug_1 = __importDefault(require("debug")); const ts = __importStar(require("typescript")); const shared_1 = require("./shared"); diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map index 05dc944d..693f43c7 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map @@ -1 +1 @@ -{"version":3,"file":"createSourceFile.js","sourceRoot":"","sources":["../../src/create-program/createSourceFile.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAiC;AAEjC,qCAAyC;AAEzC,MAAM,GAAG,GAAG,eAAK,CAAC,sDAAsD,CAAC,CAAC;AAE1E,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAY;IAClD,GAAG,CACD,yDAAyD,EACzD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxB,KAAK,CAAC,QAAQ,CACf,CAAC;IAEF,OAAO,EAAE,CAAC,gBAAgB,CACxB,KAAK,CAAC,QAAQ,EACd,IAAI,EACJ,EAAE,CAAC,YAAY,CAAC,MAAM;IACtB,oBAAoB,CAAC,IAAI,EACzB,sBAAa,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAEQ,4CAAgB"} \ No newline at end of file +{"version":3,"file":"createSourceFile.js","sourceRoot":"","sources":["../../src/create-program/createSourceFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAiC;AAEjC,qCAAyC;AAEzC,MAAM,GAAG,GAAG,eAAK,CAAC,sDAAsD,CAAC,CAAC;AAE1E,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAY;IAClD,GAAG,CACD,yDAAyD,EACzD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxB,KAAK,CAAC,QAAQ,CACf,CAAC;IAEF,OAAO,EAAE,CAAC,gBAAgB,CACxB,KAAK,CAAC,QAAQ,EACd,IAAI,EACJ,EAAE,CAAC,YAAY,CAAC,MAAM;IACtB,oBAAoB,CAAC,IAAI,EACzB,sBAAa,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAEQ,4CAAgB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts index 5a0b7837..af73e0c6 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts @@ -14,6 +14,6 @@ declare function clearCaches(): void; * @returns The programs corresponding to the supplied tsconfig paths */ declare function getProgramsForProjects(code: string, filePathIn: string, extra: Extra): ts.Program[]; -declare function createWatchProgram(tsconfigPath: string, extra: Extra): ts.WatchOfConfigFile; +declare function createWatchProgram(tsconfigPath: string, extra: Extra): ts.WatchOfConfigFile; export { clearCaches, createWatchProgram, getProgramsForProjects }; //# sourceMappingURL=createWatchProgram.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map index 4f6b4651..5e6bce83 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"createWatchProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA6C1C;;;GAGG;AACH,iBAAS,WAAW,IAAI,IAAI,CAO3B;AA2DD;;;;;;;GAOG;AACH,iBAAS,sBAAsB,CAC7B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,OAAO,EAAE,CAgGd;AAED,iBAAS,kBAAkB,CACzB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,iCAAiC,CAAC,CAmG5D;AAoJD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"createWatchProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA6C1C;;;GAGG;AACH,iBAAS,WAAW,IAAI,IAAI,CAO3B;AA2DD;;;;;;;GAOG;AACH,iBAAS,sBAAsB,CAC7B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,OAAO,EAAE,CAgGd;AAMD,iBAAS,kBAAkB,CACzB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,cAAc,CAAC,CAwHzC;AAoJD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js index ba5c5053..fe036633 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js @@ -1,17 +1,31 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getProgramsForProjects = exports.createWatchProgram = exports.clearCaches = void 0; const debug_1 = __importDefault(require("debug")); const fs_1 = __importDefault(require("fs")); +const semver_1 = __importDefault(require("semver")); const ts = __importStar(require("typescript")); const shared_1 = require("./shared"); const log = debug_1.default('typescript-eslint:typescript-estree:createWatchProgram'); @@ -86,8 +100,9 @@ function diagnosticReporter(diagnostic) { * @returns hashed result */ function createHash(content) { + var _a; // No ts.sys in browser environments. - if (ts.sys && ts.sys.createHash) { + if ((_a = ts.sys) === null || _a === void 0 ? void 0 : _a.createHash) { return ts.sys.createHash(content); } return content; @@ -133,7 +148,7 @@ function getProgramsForProjects(code, filePathIn, extra) { } if (fileList.has(filePath)) { log('Found existing program for file. %s', filePath); - updatedProgram = (updatedProgram !== null && updatedProgram !== void 0 ? updatedProgram : existingWatch.getProgram().getProgram()); + updatedProgram = updatedProgram !== null && updatedProgram !== void 0 ? updatedProgram : existingWatch.getProgram().getProgram(); // sets parent pointers in source files updatedProgram.getTypeChecker(); return [updatedProgram]; @@ -169,10 +184,13 @@ function getProgramsForProjects(code, filePathIn, extra) { return results; } exports.getProgramsForProjects = getProgramsForProjects; +const isRunningNoTimeoutFix = semver_1.default.satisfies(ts.version, '>=3.9.0-beta', { + includePrerelease: true, +}); function createWatchProgram(tsconfigPath, extra) { log('Creating watch program for %s.', tsconfigPath); // create compiler host - const watchCompilerHost = ts.createWatchCompilerHost(tsconfigPath, shared_1.createDefaultCompilerOptionsFromExtra(extra), ts.sys, ts.createSemanticDiagnosticsBuilderProgram, diagnosticReporter, + const watchCompilerHost = ts.createWatchCompilerHost(tsconfigPath, shared_1.createDefaultCompilerOptionsFromExtra(extra), ts.sys, ts.createAbstractBuilder, diagnosticReporter, /*reportWatchStatus*/ () => { }); // ensure readFile reads the code being linted instead of the copy on disk const oldReadFile = watchCompilerHost.readFile; @@ -181,7 +199,7 @@ function createWatchProgram(tsconfigPath, extra) { const fileContent = filePath === currentLintOperationState.filePath ? currentLintOperationState.code : oldReadFile(filePath, encoding); - if (fileContent) { + if (fileContent !== undefined) { parsedFilesSeenHash.set(filePath, createHash(fileContent)); } return fileContent; @@ -217,23 +235,44 @@ function createWatchProgram(tsconfigPath, extra) { host.readDirectory = (path, extensions, exclude, include, depth) => oldReadDirectory(path, !extensions ? undefined : extensions.concat(extra.extraFileExtensions), exclude, include, depth); oldOnDirectoryStructureHostCreate(host); }; - /* - * The watch change callbacks TS provides us all have a 250ms delay before firing - * https://github.com/microsoft/TypeScript/blob/b845800bdfcc81c8c72e2ac6fdc2c1df0cdab6f9/src/compiler/watch.ts#L1013 - * - * We live in a synchronous world, so we can't wait for that. - * This is a bit of a hack, but it lets us immediately force updates when we detect a tsconfig or directory change - */ - const oldSetTimeout = watchCompilerHost.setTimeout; - watchCompilerHost.setTimeout = (cb, ms, ...args) => { - var _a; - if (ms === 250) { - cb(); - return null; - } - return (_a = oldSetTimeout) === null || _a === void 0 ? void 0 : _a(cb, ms, ...args); - }; - return ts.createWatchProgram(watchCompilerHost); + // This works only on 3.9 + watchCompilerHost.extraFileExtensions = extra.extraFileExtensions.map(extension => ({ + extension, + isMixedContent: true, + scriptKind: ts.ScriptKind.Deferred, + })); + watchCompilerHost.trace = log; + // Since we don't want to asynchronously update program we want to disable timeout methods + // So any changes in the program will be delayed and updated when getProgram is called on watch + let callback; + if (isRunningNoTimeoutFix) { + watchCompilerHost.setTimeout = undefined; + watchCompilerHost.clearTimeout = undefined; + } + else { + log('Running without timeout fix'); + // But because of https://github.com/microsoft/TypeScript/pull/37308 we cannot just set it to undefined + // instead save it and call before getProgram is called + watchCompilerHost.setTimeout = (cb, _ms, ...args) => { + callback = cb.bind(/*this*/ undefined, ...args); + return callback; + }; + watchCompilerHost.clearTimeout = () => { + callback = undefined; + }; + } + const watch = ts.createWatchProgram(watchCompilerHost); + if (!isRunningNoTimeoutFix) { + const originalGetProgram = watch.getProgram; + watch.getProgram = () => { + if (callback) { + callback(); + } + callback = undefined; + return originalGetProgram.call(watch); + }; + } + return watch; } exports.createWatchProgram = createWatchProgram; function hasTSConfigChanged(tsconfigPath) { diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map index 67c1e32b..326e15ae 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map @@ -1 +1 @@ -{"version":3,"file":"createWatchProgram.js","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"createWatchProgram.js","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts index 51c52d40..ea10a480 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts @@ -2,7 +2,7 @@ import * as ts from 'typescript'; import { Extra } from '../parser-options'; interface ASTAndProgram { ast: ts.SourceFile; - program: ts.Program | undefined; + program: ts.Program; } declare function createDefaultCompilerOptionsFromExtra(extra: Extra): ts.CompilerOptions; declare type CanonicalPath = string & { diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map index f4eee569..3e22bc40 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,UAAU,aAAa;IACrB,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC;CACjC;AAeD,iBAAS,qCAAqC,CAC5C,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,eAAe,CASpB;AAGD,aAAK,aAAa,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AASnD,iBAAS,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM7D;AAED,iBAAS,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAI3D;AAED,iBAAS,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,aAAa,CAE1E;AAED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,aAAa,CAEzD;AAED,iBAAS,aAAa,CACpB,KAAK,EAAE,KAAK,EACZ,QAAQ,GAAE,MAAuB,GAChC,EAAE,CAAC,UAAU,CAwBf;AAED,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,qCAAqC,EACrC,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,eAAe,GAChB,CAAC"} \ No newline at end of file +{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,UAAU,aAAa;IACrB,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;CACrB;AAkBD,iBAAS,qCAAqC,CAC5C,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,eAAe,CASpB;AAGD,aAAK,aAAa,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AASnD,iBAAS,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM7D;AAED,iBAAS,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAI3D;AAED,iBAAS,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,aAAa,CAE1E;AAED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,aAAa,CAEzD;AAED,iBAAS,aAAa,CACpB,KAAK,EAAE,KAAK,EACZ,QAAQ,GAAE,MAAuB,GAChC,EAAE,CAAC,UAAU,CAwBf;AAED,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,qCAAqC,EACrC,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,eAAe,GAChB,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js index f3b388b6..5e8c1986 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js @@ -1,15 +1,28 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getTsconfigPath = exports.getScriptKind = exports.getCanonicalFileName = exports.ensureAbsolutePath = exports.createDefaultCompilerOptionsFromExtra = exports.canonicalDirname = void 0; const path_1 = __importDefault(require("path")); const ts = __importStar(require("typescript")); /** @@ -21,6 +34,9 @@ const DEFAULT_COMPILER_OPTIONS = { checkJs: true, noEmit: true, // extendedDiagnostics: true, + /** + * Flags required to make no-unused-vars work + */ noUnusedLocals: true, noUnusedParameters: true, }; diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map index 6a6ff25a..30f05b20 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map @@ -1 +1 @@ -{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts rename to node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map rename to node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.js b/node_modules/@typescript-eslint/typescript-estree/dist/index.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.js rename to node_modules/@typescript-eslint/typescript-estree/dist/index.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map rename to node_modules/@typescript-eslint/typescript-estree/dist/index.js.map diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts index 887e0746..e9b5d410 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts @@ -1,71 +1,74 @@ import * as ts from 'typescript'; import { AST_NODE_TYPES, AST_TOKEN_TYPES, TSESTree } from './ts-estree'; declare const SyntaxKind: typeof ts.SyntaxKind; -declare const TOKEN_TO_TEXT: { - readonly [SyntaxKind.OpenBraceToken]: "{"; - readonly [SyntaxKind.CloseBraceToken]: "}"; - readonly [SyntaxKind.OpenParenToken]: "("; - readonly [SyntaxKind.CloseParenToken]: ")"; - readonly [SyntaxKind.OpenBracketToken]: "["; - readonly [SyntaxKind.CloseBracketToken]: "]"; - readonly [SyntaxKind.DotToken]: "."; - readonly [SyntaxKind.DotDotDotToken]: "..."; - readonly [SyntaxKind.SemicolonToken]: ";"; - readonly [SyntaxKind.CommaToken]: ","; - readonly [SyntaxKind.LessThanToken]: "<"; - readonly [SyntaxKind.GreaterThanToken]: ">"; - readonly [SyntaxKind.LessThanEqualsToken]: "<="; - readonly [SyntaxKind.GreaterThanEqualsToken]: ">="; - readonly [SyntaxKind.EqualsEqualsToken]: "=="; - readonly [SyntaxKind.ExclamationEqualsToken]: "!="; - readonly [SyntaxKind.EqualsEqualsEqualsToken]: "==="; - readonly [SyntaxKind.InstanceOfKeyword]: "instanceof"; - readonly [SyntaxKind.ExclamationEqualsEqualsToken]: "!=="; - readonly [SyntaxKind.EqualsGreaterThanToken]: "=>"; - readonly [SyntaxKind.PlusToken]: "+"; - readonly [SyntaxKind.MinusToken]: "-"; - readonly [SyntaxKind.AsteriskToken]: "*"; - readonly [SyntaxKind.AsteriskAsteriskToken]: "**"; - readonly [SyntaxKind.SlashToken]: "/"; - readonly [SyntaxKind.PercentToken]: "%"; - readonly [SyntaxKind.PlusPlusToken]: "++"; - readonly [SyntaxKind.MinusMinusToken]: "--"; - readonly [SyntaxKind.LessThanLessThanToken]: "<<"; - readonly [SyntaxKind.LessThanSlashToken]: ">"; - readonly [SyntaxKind.GreaterThanGreaterThanGreaterThanToken]: ">>>"; - readonly [SyntaxKind.AmpersandToken]: "&"; - readonly [SyntaxKind.BarToken]: "|"; - readonly [SyntaxKind.CaretToken]: "^"; - readonly [SyntaxKind.ExclamationToken]: "!"; - readonly [SyntaxKind.TildeToken]: "~"; - readonly [SyntaxKind.AmpersandAmpersandToken]: "&&"; - readonly [SyntaxKind.BarBarToken]: "||"; - readonly [SyntaxKind.QuestionToken]: "?"; - readonly [SyntaxKind.ColonToken]: ":"; - readonly [SyntaxKind.EqualsToken]: "="; - readonly [SyntaxKind.PlusEqualsToken]: "+="; - readonly [SyntaxKind.MinusEqualsToken]: "-="; - readonly [SyntaxKind.AsteriskEqualsToken]: "*="; - readonly [SyntaxKind.AsteriskAsteriskEqualsToken]: "**="; - readonly [SyntaxKind.SlashEqualsToken]: "/="; - readonly [SyntaxKind.PercentEqualsToken]: "%="; - readonly [SyntaxKind.LessThanLessThanEqualsToken]: "<<="; - readonly [SyntaxKind.GreaterThanGreaterThanEqualsToken]: ">>="; - readonly [SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken]: ">>>="; - readonly [SyntaxKind.AmpersandEqualsToken]: "&="; - readonly [SyntaxKind.BarEqualsToken]: "|="; - readonly [SyntaxKind.CaretEqualsToken]: "^="; - readonly [SyntaxKind.AtToken]: "@"; - readonly [SyntaxKind.InKeyword]: "in"; - readonly [SyntaxKind.UniqueKeyword]: "unique"; - readonly [SyntaxKind.KeyOfKeyword]: "keyof"; - readonly [SyntaxKind.NewKeyword]: "new"; - readonly [SyntaxKind.ImportKeyword]: "import"; - readonly [SyntaxKind.ReadonlyKeyword]: "readonly"; - readonly [SyntaxKind.QuestionQuestionToken]: "??"; - readonly [SyntaxKind.QuestionDotToken]: "?."; -}; +interface TokenToText { + [SyntaxKind.OpenBraceToken]: '{'; + [SyntaxKind.CloseBraceToken]: '}'; + [SyntaxKind.OpenParenToken]: '('; + [SyntaxKind.CloseParenToken]: ')'; + [SyntaxKind.OpenBracketToken]: '['; + [SyntaxKind.CloseBracketToken]: ']'; + [SyntaxKind.DotToken]: '.'; + [SyntaxKind.DotDotDotToken]: '...'; + [SyntaxKind.SemicolonToken]: ';'; + [SyntaxKind.CommaToken]: ','; + [SyntaxKind.LessThanToken]: '<'; + [SyntaxKind.GreaterThanToken]: '>'; + [SyntaxKind.LessThanEqualsToken]: '<='; + [SyntaxKind.GreaterThanEqualsToken]: '>='; + [SyntaxKind.EqualsEqualsToken]: '=='; + [SyntaxKind.ExclamationEqualsToken]: '!='; + [SyntaxKind.EqualsEqualsEqualsToken]: '==='; + [SyntaxKind.InstanceOfKeyword]: 'instanceof'; + [SyntaxKind.ExclamationEqualsEqualsToken]: '!=='; + [SyntaxKind.EqualsGreaterThanToken]: '=>'; + [SyntaxKind.PlusToken]: '+'; + [SyntaxKind.MinusToken]: '-'; + [SyntaxKind.AsteriskToken]: '*'; + [SyntaxKind.AsteriskAsteriskToken]: '**'; + [SyntaxKind.SlashToken]: '/'; + [SyntaxKind.PercentToken]: '%'; + [SyntaxKind.PlusPlusToken]: '++'; + [SyntaxKind.MinusMinusToken]: '--'; + [SyntaxKind.LessThanLessThanToken]: '<<'; + [SyntaxKind.LessThanSlashToken]: '>'; + [SyntaxKind.GreaterThanGreaterThanGreaterThanToken]: '>>>'; + [SyntaxKind.AmpersandToken]: '&'; + [SyntaxKind.BarToken]: '|'; + [SyntaxKind.CaretToken]: '^'; + [SyntaxKind.ExclamationToken]: '!'; + [SyntaxKind.TildeToken]: '~'; + [SyntaxKind.AmpersandAmpersandToken]: '&&'; + [SyntaxKind.BarBarToken]: '||'; + [SyntaxKind.QuestionToken]: '?'; + [SyntaxKind.ColonToken]: ':'; + [SyntaxKind.EqualsToken]: '='; + [SyntaxKind.PlusEqualsToken]: '+='; + [SyntaxKind.MinusEqualsToken]: '-='; + [SyntaxKind.AsteriskEqualsToken]: '*='; + [SyntaxKind.AsteriskAsteriskEqualsToken]: '**='; + [SyntaxKind.SlashEqualsToken]: '/='; + [SyntaxKind.PercentEqualsToken]: '%='; + [SyntaxKind.LessThanLessThanEqualsToken]: '<<='; + [SyntaxKind.GreaterThanGreaterThanEqualsToken]: '>>='; + [SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken]: '>>>='; + [SyntaxKind.AmpersandEqualsToken]: '&='; + [SyntaxKind.AmpersandAmpersandEqualsToken]: '&&='; + [SyntaxKind.BarEqualsToken]: '|='; + [SyntaxKind.BarBarEqualsToken]: '||='; + [SyntaxKind.CaretEqualsToken]: '^='; + [SyntaxKind.QuestionQuestionEqualsToken]: '??='; + [SyntaxKind.AtToken]: '@'; + [SyntaxKind.InKeyword]: 'in'; + [SyntaxKind.UniqueKeyword]: 'unique'; + [SyntaxKind.KeyOfKeyword]: 'keyof'; + [SyntaxKind.NewKeyword]: 'new'; + [SyntaxKind.ImportKeyword]: 'import'; + [SyntaxKind.ReadonlyKeyword]: 'readonly'; + [SyntaxKind.QuestionQuestionToken]: '??'; + [SyntaxKind.QuestionDotToken]: '?.'; +} /** * Returns true if the given ts.Token is the assignment operator * @param operator the operator token @@ -83,7 +86,7 @@ export declare function isLogicalOperator(operator: ts. * @param kind the token's SyntaxKind * @returns the token applicable token as a string */ -export declare function getTextForTokenKind(kind: T): T extends keyof typeof TOKEN_TO_TEXT ? typeof TOKEN_TO_TEXT[T] : undefined; +export declare function getTextForTokenKind(kind: T): T extends keyof TokenToText ? TokenToText[T] : string | undefined; /** * Returns true if the given ts.Node is a valid ESTree class member * @param node TypeScript AST node @@ -222,6 +225,14 @@ export declare function isComputedProperty(node: ts.Node): boolean; export declare function isOptional(node: { questionToken?: ts.QuestionToken; }): boolean; +/** + * Returns true if the node is an optional chain node + */ +export declare function isChainExpression(node: TSESTree.Node): node is TSESTree.ChainExpression; +/** + * Returns true of the child of property access expression is an optional chain + */ +export declare function isChildUnwrappableOptionalChain(node: ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.CallExpression | ts.NonNullExpression, child: TSESTree.Node): boolean; /** * Returns the type of a given ts.Token * @param token the ts.Token diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map index f42b868f..f898a2f2 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"node-utils.d.ts","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"node-utils.d.ts","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js index 883251e9..05c95cf2 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js @@ -1,111 +1,45 @@ "use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.firstDefined = exports.nodeHasTokens = exports.createError = exports.convertTokens = exports.convertToken = exports.getTokenType = exports.isChildUnwrappableOptionalChain = exports.isChainExpression = exports.isOptional = exports.isComputedProperty = exports.unescapeStringLiteralText = exports.hasJSXAncestor = exports.findFirstMatchingAncestor = exports.findNextToken = exports.getTSNodeAccessibility = exports.getDeclarationKind = exports.isJSXToken = exports.isToken = exports.getRange = exports.canContainDirective = exports.getLocFor = exports.getLineAndCharacterFor = exports.getBinaryExpressionType = exports.isJSDocComment = exports.isComment = exports.isComma = exports.getLastModifier = exports.hasModifier = exports.isESTreeClassMember = exports.getTextForTokenKind = exports.isLogicalOperator = exports.isAssignmentOperator = void 0; const unescape_1 = __importDefault(require("lodash/unescape")); const ts = __importStar(require("typescript")); const ts_estree_1 = require("./ts-estree"); const SyntaxKind = ts.SyntaxKind; -const ASSIGNMENT_OPERATORS = [ - SyntaxKind.EqualsToken, - SyntaxKind.PlusEqualsToken, - SyntaxKind.MinusEqualsToken, - SyntaxKind.AsteriskEqualsToken, - SyntaxKind.AsteriskAsteriskEqualsToken, - SyntaxKind.SlashEqualsToken, - SyntaxKind.PercentEqualsToken, - SyntaxKind.LessThanLessThanEqualsToken, - SyntaxKind.GreaterThanGreaterThanEqualsToken, - SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken, - SyntaxKind.AmpersandEqualsToken, - SyntaxKind.BarEqualsToken, - SyntaxKind.CaretEqualsToken, -]; const LOGICAL_OPERATORS = [ SyntaxKind.BarBarToken, SyntaxKind.AmpersandAmpersandToken, SyntaxKind.QuestionQuestionToken, ]; -const TOKEN_TO_TEXT = { - [SyntaxKind.OpenBraceToken]: '{', - [SyntaxKind.CloseBraceToken]: '}', - [SyntaxKind.OpenParenToken]: '(', - [SyntaxKind.CloseParenToken]: ')', - [SyntaxKind.OpenBracketToken]: '[', - [SyntaxKind.CloseBracketToken]: ']', - [SyntaxKind.DotToken]: '.', - [SyntaxKind.DotDotDotToken]: '...', - [SyntaxKind.SemicolonToken]: ';', - [SyntaxKind.CommaToken]: ',', - [SyntaxKind.LessThanToken]: '<', - [SyntaxKind.GreaterThanToken]: '>', - [SyntaxKind.LessThanEqualsToken]: '<=', - [SyntaxKind.GreaterThanEqualsToken]: '>=', - [SyntaxKind.EqualsEqualsToken]: '==', - [SyntaxKind.ExclamationEqualsToken]: '!=', - [SyntaxKind.EqualsEqualsEqualsToken]: '===', - [SyntaxKind.InstanceOfKeyword]: 'instanceof', - [SyntaxKind.ExclamationEqualsEqualsToken]: '!==', - [SyntaxKind.EqualsGreaterThanToken]: '=>', - [SyntaxKind.PlusToken]: '+', - [SyntaxKind.MinusToken]: '-', - [SyntaxKind.AsteriskToken]: '*', - [SyntaxKind.AsteriskAsteriskToken]: '**', - [SyntaxKind.SlashToken]: '/', - [SyntaxKind.PercentToken]: '%', - [SyntaxKind.PlusPlusToken]: '++', - [SyntaxKind.MinusMinusToken]: '--', - [SyntaxKind.LessThanLessThanToken]: '<<', - [SyntaxKind.LessThanSlashToken]: '>', - [SyntaxKind.GreaterThanGreaterThanGreaterThanToken]: '>>>', - [SyntaxKind.AmpersandToken]: '&', - [SyntaxKind.BarToken]: '|', - [SyntaxKind.CaretToken]: '^', - [SyntaxKind.ExclamationToken]: '!', - [SyntaxKind.TildeToken]: '~', - [SyntaxKind.AmpersandAmpersandToken]: '&&', - [SyntaxKind.BarBarToken]: '||', - [SyntaxKind.QuestionToken]: '?', - [SyntaxKind.ColonToken]: ':', - [SyntaxKind.EqualsToken]: '=', - [SyntaxKind.PlusEqualsToken]: '+=', - [SyntaxKind.MinusEqualsToken]: '-=', - [SyntaxKind.AsteriskEqualsToken]: '*=', - [SyntaxKind.AsteriskAsteriskEqualsToken]: '**=', - [SyntaxKind.SlashEqualsToken]: '/=', - [SyntaxKind.PercentEqualsToken]: '%=', - [SyntaxKind.LessThanLessThanEqualsToken]: '<<=', - [SyntaxKind.GreaterThanGreaterThanEqualsToken]: '>>=', - [SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken]: '>>>=', - [SyntaxKind.AmpersandEqualsToken]: '&=', - [SyntaxKind.BarEqualsToken]: '|=', - [SyntaxKind.CaretEqualsToken]: '^=', - [SyntaxKind.AtToken]: '@', - [SyntaxKind.InKeyword]: 'in', - [SyntaxKind.UniqueKeyword]: 'unique', - [SyntaxKind.KeyOfKeyword]: 'keyof', - [SyntaxKind.NewKeyword]: 'new', - [SyntaxKind.ImportKeyword]: 'import', - [SyntaxKind.ReadonlyKeyword]: 'readonly', - [SyntaxKind.QuestionQuestionToken]: '??', - [SyntaxKind.QuestionDotToken]: '?.', -}; /** * Returns true if the given ts.Token is the assignment operator * @param operator the operator token * @returns is assignment */ function isAssignmentOperator(operator) { - return ASSIGNMENT_OPERATORS.includes(operator.kind); + return (operator.kind >= SyntaxKind.FirstAssignment && + operator.kind <= SyntaxKind.LastAssignment); } exports.isAssignmentOperator = isAssignmentOperator; /** @@ -123,8 +57,7 @@ exports.isLogicalOperator = isLogicalOperator; * @returns the token applicable token as a string */ function getTextForTokenKind(kind) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - return kind in TOKEN_TO_TEXT ? TOKEN_TO_TEXT[kind] : undefined; + return ts.tokenToString(kind); } exports.getTextForTokenKind = getTextForTokenKind; /** @@ -406,6 +339,25 @@ function isOptional(node) { : false; } exports.isOptional = isOptional; +/** + * Returns true if the node is an optional chain node + */ +function isChainExpression(node) { + return node.type === ts_estree_1.AST_NODE_TYPES.ChainExpression; +} +exports.isChainExpression = isChainExpression; +/** + * Returns true of the child of property access expression is an optional chain + */ +function isChildUnwrappableOptionalChain(node, child) { + if (isChainExpression(child) && + // (x?.y).z is semantically different, and as such .z is no longer optional + node.expression.kind !== ts.SyntaxKind.ParenthesizedExpression) { + return true; + } + return false; +} +exports.isChildUnwrappableOptionalChain = isChildUnwrappableOptionalChain; /** * Returns the type of a given ts.Token * @param token the ts.Token diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map index c1644ea0..306ba366 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts index ac7d9259..e64a09d2 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts @@ -1,3 +1,4 @@ +import { DebugLevel } from '@typescript-eslint/types'; import { Program } from 'typescript'; import { TSESTree, TSNode, TSESTreeToTSNode, TSToken } from './ts-estree'; declare type DebugModule = 'typescript-eslint' | 'eslint' | 'typescript'; @@ -13,7 +14,7 @@ export interface Extra { filePath: string; jsx: boolean; loc: boolean; - log: Function; + log: (message: string) => void; preserveNodeMaps?: boolean; projects: string[]; range: boolean; @@ -22,39 +23,29 @@ export interface Extra { tsconfigRootDir: string; useJSXTextNode: boolean; } -export interface TSESTreeOptions { +interface ParseOptions { /** * create a top-level comments array containing all comments */ comment?: boolean; /** - * For convenience: - * - true === ['typescript-eslint'] - * - false === [] - * * An array of modules to turn explicit debugging on for. * - 'typescript-eslint' is the same as setting the env var `DEBUG=typescript-eslint:*` * - 'eslint' is the same as setting the env var `DEBUG=eslint:*` * - 'typescript' is the same as setting `extendedDiagnostics: true` in your tsconfig compilerOptions + * + * For convenience, also supports a boolean: + * - true === ['typescript-eslint'] + * - false === [] */ - debugLevel?: boolean | DebugModule[]; - /** - * Causes the parser to error if the TypeScript compiler returns any unexpected syntax/semantic errors. - */ - errorOnTypeScriptSyntacticAndSemanticIssues?: boolean; + debugLevel?: DebugLevel; /** * Cause the parser to error if it encounters an unknown AST node type (useful for testing). * This case only usually occurs when TypeScript releases new features. */ errorOnUnknownASTType?: boolean; /** - * When `project` is provided, this controls the non-standard file extensions which will be parsed. - * It accepts an array of file extensions, each preceded by a `.`. - */ - extraFileExtensions?: string[]; - /** - * Absolute (or relative to `tsconfigRootDir`) path to the file being parsed. - * When `project` is provided, this is required, as it is used to fetch the file from the TypeScript compiler's cache. + * Absolute (or relative to `cwd`) path to the file being parsed. */ filePath?: string; /** @@ -73,7 +64,34 @@ export interface TSESTreeOptions { * This is similar to the `range` property, except it is line/column relative. */ loc?: boolean; - loggerFn?: Function | false; + loggerFn?: ((message: string) => void) | false; + /** + * Controls whether the `range` property is included on AST nodes. + * The `range` property is a [number, number] which indicates the start/end index of the node in the file contents. + * This is similar to the `loc` property, except this is the absolute index. + */ + range?: boolean; + /** + * Set to true to create a top-level array containing all tokens from the file. + */ + tokens?: boolean; + useJSXTextNode?: boolean; +} +interface ParseAndGenerateServicesOptions extends ParseOptions { + /** + * Causes the parser to error if the TypeScript compiler returns any unexpected syntax/semantic errors. + */ + errorOnTypeScriptSyntacticAndSemanticIssues?: boolean; + /** + * When `project` is provided, this controls the non-standard file extensions which will be parsed. + * It accepts an array of file extensions, each preceded by a `.`. + */ + extraFileExtensions?: string[]; + /** + * Absolute (or relative to `tsconfigRootDir`) path to the file being parsed. + * When `project` is provided, this is required, as it is used to fetch the file from the TypeScript compiler's cache. + */ + filePath?: string; /** * Allows the user to control whether or not two-way AST node maps are preserved * during the AST conversion process. @@ -91,20 +109,17 @@ export interface TSESTreeOptions { */ project?: string | string[]; /** - * Controls whether the `range` property is included on AST nodes. - * The `range` property is a [number, number] which indicates the start/end index of the node in the file contents. - * This is similar to the `loc` property, except this is the absolute index. + * If you provide a glob (or globs) to the project option, you can use this option to ignore certain folders from + * being matched by the globs. + * This accepts an array of globs to ignore. + * + * By default, this is set to ["**\/node_modules/**"] */ - range?: boolean; - /** - * Set to true to create a top-level array containing all tokens from the file. - */ - tokens?: boolean; + projectFolderIgnoreList?: string[]; /** * The absolute path to the root directory for all provided `project`s. */ tsconfigRootDir?: string; - useJSXTextNode?: boolean; /** *************************************************************************************** * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * @@ -113,11 +128,10 @@ export interface TSESTreeOptions { * When passed with `project`, this allows the parser to create a catch-all, default program. * This means that if the parser encounters a file not included in any of the provided `project`s, * it will not error, but will instead parse the file and its dependencies in a new program. - * - * This */ createDefaultProgram?: boolean; } +export declare type TSESTreeOptions = ParseAndGenerateServicesOptions; export interface ParserWeakMap { get(key: TKey): TValue; has(key: unknown): boolean; @@ -127,9 +141,10 @@ export interface ParserWeakMapESTreeToTSNode | undefined; + program: Program; + esTreeNodeToTSNodeMap: ParserWeakMapESTreeToTSNode; + tsNodeToESTreeNodeMap: ParserWeakMap; + hasFullTypeInformation: boolean; } export {}; //# sourceMappingURL=parser-options.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map index 273d6ea1..af6375f0 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts index 63ac4c8e..d31f3a7a 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts @@ -1,21 +1,17 @@ import { TSESTreeOptions, ParserServices } from './parser-options'; import { TSESTree } from './ts-estree'; +interface EmptyObject { +} declare type AST = TSESTree.Program & (T['tokens'] extends true ? { tokens: TSESTree.Token[]; -} : {}) & (T['comment'] extends true ? { +} : EmptyObject) & (T['comment'] extends true ? { comments: TSESTree.Comment[]; -} : {}); +} : EmptyObject); interface ParseAndGenerateServicesResult { ast: AST; services: ParserServices; } -declare const version: string; declare function parse(code: string, options?: T): AST; declare function parseAndGenerateServices(code: string, options: T): ParseAndGenerateServicesResult; -export { AST, parse, parseAndGenerateServices, ParseAndGenerateServicesResult, version, }; -export { ParserServices, TSESTreeOptions } from './parser-options'; -export { simpleTraverse } from './simple-traverse'; -export { visitorKeys } from './visitor-keys'; -export * from './ts-estree'; -export { clearCaches } from './create-program/createWatchProgram'; +export { AST, parse, parseAndGenerateServices, ParseAndGenerateServicesResult }; //# sourceMappingURL=parser.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map index a9a6f406..06470335 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAWA,OAAO,EAAS,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgRvC,aAAK,GAAG,CAAC,CAAC,SAAS,eAAe,IAAI,QAAQ,CAAC,OAAO,GACpD,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;CAAE,GAAG,EAAE,CAAC,GAC9D,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAA;CAAE,GAAG,EAAE,CAAC,CAAC;AAEtE,UAAU,8BAA8B,CAAC,CAAC,SAAS,eAAe;IAChE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAMD,QAAA,MAAM,OAAO,EAAE,MAA2C,CAAC;AAE3D,iBAAS,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EACxD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,GACV,GAAG,CAAC,CAAC,CAAC,CA4CR;AAED,iBAAS,wBAAwB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EAC3E,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,GACT,8BAA8B,CAAC,CAAC,CAAC,CAsFnC;AAED,OAAO,EACL,GAAG,EACH,KAAK,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,OAAO,GACR,CAAC;AACF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC"} \ No newline at end of file +{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAWA,OAAO,EAAS,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAwSvC,UAAU,WAAW;CAAG;AACxB,aAAK,GAAG,CAAC,CAAC,SAAS,eAAe,IAAI,QAAQ,CAAC,OAAO,GACpD,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,GACvE,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,CAAC;AAE/E,UAAU,8BAA8B,CAAC,CAAC,SAAS,eAAe;IAChE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,iBAAS,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EACxD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,GACV,GAAG,CAAC,CAAC,CAAC,CA4CR;AAED,iBAAS,wBAAwB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EAC3E,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,GACT,8BAA8B,CAAC,CAAC,CAAC,CA0EnC;AAED,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/parser.js b/node_modules/@typescript-eslint/typescript-estree/dist/parser.js index ce9ab9ee..20db6212 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/parser.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/parser.js @@ -1,20 +1,30 @@ "use strict"; -function __export(m) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.parseAndGenerateServices = exports.parse = void 0; const debug_1 = __importDefault(require("debug")); -const glob_1 = require("glob"); +const globby_1 = require("globby"); const is_glob_1 = __importDefault(require("is-glob")); const semver_1 = __importDefault(require("semver")); const ts = __importStar(require("typescript")); @@ -26,16 +36,17 @@ const createProjectProgram_1 = require("./create-program/createProjectProgram"); const createSourceFile_1 = require("./create-program/createSourceFile"); const semantic_or_syntactic_errors_1 = require("./semantic-or-syntactic-errors"); const shared_1 = require("./create-program/shared"); +const log = debug_1.default('typescript-eslint:typescript-estree:parser'); /** * This needs to be kept in sync with the top-level README.md in the * typescript-eslint monorepo */ -const SUPPORTED_TYPESCRIPT_VERSIONS = '>=3.2.1 <3.8.0'; +const SUPPORTED_TYPESCRIPT_VERSIONS = '>=3.3.1 <4.1.0'; /* * The semver package will ignore prerelease ranges, and we don't want to explicitly document every one * List them all separately here, so we can automatically create the full string */ -const SUPPORTED_PRERELEASE_RANGES = ['>3.7.0-dev.0', '3.7.1-rc']; +const SUPPORTED_PRERELEASE_RANGES = []; const ACTIVE_TYPESCRIPT_VERSION = ts.version; const isRunningSupportedTypeScriptVersion = semver_1.default.satisfies(ACTIVE_TYPESCRIPT_VERSION, [SUPPORTED_TYPESCRIPT_VERSIONS] .concat(SUPPORTED_PRERELEASE_RANGES) @@ -93,7 +104,7 @@ function resetExtra() { jsx: false, loc: false, log: console.log, - preserveNodeMaps: undefined, + preserveNodeMaps: true, projects: [], range: false, strict: false, @@ -102,7 +113,37 @@ function resetExtra() { useJSXTextNode: false, }; } +/** + * Normalizes, sanitizes, resolves and filters the provided + */ +function prepareAndTransformProjects(projectsInput, ignoreListInput) { + let projects = []; + // Normalize and sanitize the project paths + if (typeof projectsInput === 'string') { + projects.push(projectsInput); + } + else if (Array.isArray(projectsInput)) { + for (const project of projectsInput) { + if (typeof project === 'string') { + projects.push(project); + } + } + } + if (projects.length === 0) { + return projects; + } + // Transform glob patterns into paths + const globbedProjects = projects.filter(project => is_glob_1.default(project)); + projects = projects + .filter(project => !is_glob_1.default(project)) + .concat(globby_1.sync([...globbedProjects, ...ignoreListInput], { + cwd: extra.tsconfigRootDir, + })); + log('parserOptions.project (excluding ignored) matched projects: %s', projects); + return projects; +} function applyParserOptionsToExtra(options) { + var _a; /** * Configure Debug logging */ @@ -151,7 +192,7 @@ function applyParserOptionsToExtra(options) { extra.jsx = true; } /** - * Get the file extension + * Get the file path */ if (typeof options.filePath === 'string' && options.filePath !== '') { extra.filePath = options.filePath; @@ -184,27 +225,24 @@ function applyParserOptionsToExtra(options) { extra.log = options.loggerFn; } else if (options.loggerFn === false) { - extra.log = Function.prototype; - } - if (typeof options.project === 'string') { - extra.projects = [options.project]; - } - else if (Array.isArray(options.project) && - options.project.every(projectPath => typeof projectPath === 'string')) { - extra.projects = options.project; + extra.log = () => { }; } if (typeof options.tsconfigRootDir === 'string') { extra.tsconfigRootDir = options.tsconfigRootDir; } + // NOTE - ensureAbsolutePath relies upon having the correct tsconfigRootDir in extra extra.filePath = shared_1.ensureAbsolutePath(extra.filePath, extra); - // Transform glob patterns into paths - if (extra.projects) { - extra.projects = extra.projects.reduce((projects, project) => projects.concat(is_glob_1.default(project) - ? glob_1.sync(project, { - cwd: extra.tsconfigRootDir || process.cwd(), - }) - : project), []); - } + // NOTE - prepareAndTransformProjects relies upon having the correct tsconfigRootDir in extra + const projectFolderIgnoreList = ((_a = options.projectFolderIgnoreList) !== null && _a !== void 0 ? _a : []) + .reduce((acc, folder) => { + if (typeof folder === 'string') { + acc.push(folder); + } + return acc; + }, []) + // prefix with a ! for not match glob + .map(folder => (folder.startsWith('!') ? folder : `!${folder}`)); + extra.projects = prepareAndTransformProjects(options.project, projectFolderIgnoreList); if (Array.isArray(options.extraFileExtensions) && options.extraFileExtensions.every(ext => typeof ext === 'string')) { extra.extraFileExtensions = options.extraFileExtensions; @@ -212,14 +250,9 @@ function applyParserOptionsToExtra(options) { /** * Allow the user to enable or disable the preservation of the AST node maps * during the conversion process. - * - * NOTE: For backwards compatibility we also preserve node maps in the case where `project` is set, - * and `preserveNodeMaps` is not explicitly set to anything. */ - extra.preserveNodeMaps = - typeof options.preserveNodeMaps === 'boolean' && options.preserveNodeMaps; - if (options.preserveNodeMaps === undefined && extra.projects.length > 0) { - extra.preserveNodeMaps = true; + if (typeof options.preserveNodeMaps === 'boolean') { + extra.preserveNodeMaps = options.preserveNodeMaps; } extra.createDefaultProgram = typeof options.createDefaultProgram === 'boolean' && @@ -245,13 +278,7 @@ function warnAboutTSVersion() { warnedAboutTSVersion = true; } } -//------------------------------------------------------------------------------ -// Public -//------------------------------------------------------------------------------ -const version = require('../package.json').version; -exports.version = version; function parse(code, options) { - var _a; /** * Reset the parse configuration */ @@ -259,7 +286,7 @@ function parse(code, options) { /** * Ensure users do not attempt to use parse() when they need parseAndGenerateServices() */ - if ((_a = options) === null || _a === void 0 ? void 0 : _a.errorOnTypeScriptSyntacticAndSemanticIssues) { + if (options === null || options === void 0 ? void 0 : options.errorOnTypeScriptSyntacticAndSemanticIssues) { throw new Error(`"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()`); } /** @@ -320,18 +347,12 @@ function parseAndGenerateServices(code, options) { */ const shouldProvideParserServices = extra.projects && extra.projects.length > 0; const { ast, program } = getProgramAndAST(code, shouldProvideParserServices, extra.createDefaultProgram); - /** - * Determine if two-way maps of converted AST nodes should be preserved - * during the conversion process - */ - const shouldPreserveNodeMaps = extra.preserveNodeMaps !== undefined - ? extra.preserveNodeMaps - : shouldProvideParserServices; /** * Convert the TypeScript AST to an ESTree-compatible one, and optionally preserve * mappings between converted and original AST nodes */ - const { estree, astMaps } = ast_converter_1.astConverter(ast, extra, shouldPreserveNodeMaps); + const preserveNodeMaps = typeof extra.preserveNodeMaps === 'boolean' ? extra.preserveNodeMaps : true; + const { estree, astMaps } = ast_converter_1.astConverter(ast, extra, preserveNodeMaps); /** * Even if TypeScript parsed the source code ok, and we had no problems converting the AST, * there may be other syntactic or semantic issues in the code that we can optionally report on. @@ -348,22 +369,12 @@ function parseAndGenerateServices(code, options) { return { ast: estree, services: { - program: shouldProvideParserServices ? program : undefined, - esTreeNodeToTSNodeMap: shouldPreserveNodeMaps && astMaps - ? astMaps.esTreeNodeToTSNodeMap - : undefined, - tsNodeToESTreeNodeMap: shouldPreserveNodeMaps && astMaps - ? astMaps.tsNodeToESTreeNodeMap - : undefined, + hasFullTypeInformation: shouldProvideParserServices, + program, + esTreeNodeToTSNodeMap: astMaps.esTreeNodeToTSNodeMap, + tsNodeToESTreeNodeMap: astMaps.tsNodeToESTreeNodeMap, }, }; } exports.parseAndGenerateServices = parseAndGenerateServices; -var simple_traverse_1 = require("./simple-traverse"); -exports.simpleTraverse = simple_traverse_1.simpleTraverse; -var visitor_keys_1 = require("./visitor-keys"); -exports.visitorKeys = visitor_keys_1.visitorKeys; -__export(require("./ts-estree")); -var createWatchProgram_1 = require("./create-program/createWatchProgram"); -exports.clearCaches = createWatchProgram_1.clearCaches; //# sourceMappingURL=parser.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map index 400a2235..d717c37d 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map @@ -1 +1 @@ -{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js b/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js index e77e4e65..96473c4e 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js @@ -1,12 +1,25 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); 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; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getFirstSemanticOrSyntacticError = void 0; const ts = __importStar(require("typescript")); /** * By default, diagnostics from the TypeScript compiler contain all errors - regardless of whether @@ -73,6 +86,7 @@ function whitelistSupportedDiagnostics(diagnostics) { case 1175: // "'implements' clause already seen." case 1176: // "Interface declaration cannot have 'implements' clause." case 1190: // "The variable declaration of a 'for...of' statement cannot have an initializer." + case 1196: // "Catch clause variable type annotation must be 'any' or 'unknown' if specified." case 1200: // "Line terminator not permitted before arrow." case 1206: // "Decorators are not valid here." case 1211: // "A class declaration without the 'default' modifier must have a name." diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map index e26f8945..af69657e 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map @@ -1 +1 @@ -{"version":3,"file":"semantic-or-syntactic-errors.js","sourceRoot":"","sources":["../src/semantic-or-syntactic-errors.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"semantic-or-syntactic-errors.js","sourceRoot":"","sources":["../src/semantic-or-syntactic-errors.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts index d7f3efad..be2b1fca 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts @@ -1,7 +1,9 @@ import { TSESTree } from './ts-estree'; -interface SimpleTraverseOptions { +declare type SimpleTraverseOptions = { enter: (node: TSESTree.Node, parent: TSESTree.Node | undefined) => void; -} -export declare function simpleTraverse(startingNode: TSESTree.Node, options: SimpleTraverseOptions): void; +} | { + [key: string]: (node: TSESTree.Node, parent: TSESTree.Node | undefined) => void; +}; +export declare function simpleTraverse(startingNode: TSESTree.Node, options: SimpleTraverseOptions, setParentPointers?: boolean): void; export {}; //# sourceMappingURL=simple-traverse.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map index 66894a6d..7acdb869 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"simple-traverse.d.ts","sourceRoot":"","sources":["../src/simple-traverse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgBvC,UAAU,qBAAqB;IAC7B,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;CACzE;AAmCD,wBAAgB,cAAc,CAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,EAC3B,OAAO,EAAE,qBAAqB,GAC7B,IAAI,CAEN"} \ No newline at end of file +{"version":3,"file":"simple-traverse.d.ts","sourceRoot":"","sources":["../src/simple-traverse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAevC,aAAK,qBAAqB,GACtB;IACE,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;CACzE,GACD;IACE,CAAC,GAAG,EAAE,MAAM,GAAG,CACb,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,KAC9B,IAAI,CAAC;CACX,CAAC;AA8CN,wBAAgB,cAAc,CAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,EAC3B,OAAO,EAAE,qBAAqB,EAC9B,iBAAiB,UAAQ,GACxB,IAAI,CAKN"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js index 73f0bbdf..b19f9b77 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js @@ -1,6 +1,7 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const visitor_keys_1 = require("./visitor-keys"); +exports.simpleTraverse = void 0; +const visitor_keys_1 = require("@typescript-eslint/visitor-keys"); // eslint-disable-next-line @typescript-eslint/no-explicit-any function isValidNode(x) { return x !== null && typeof x === 'object' && typeof x.type === 'string'; @@ -10,15 +11,24 @@ function getVisitorKeysForNode(allVisitorKeys, node) { return (keys !== null && keys !== void 0 ? keys : []); } class SimpleTraverser { - constructor({ enter }) { + constructor(selectors, setParentPointers = false) { this.allVisitorKeys = visitor_keys_1.visitorKeys; - this.enter = enter; + this.selectors = selectors; + this.setParentPointers = setParentPointers; } traverse(node, parent) { if (!isValidNode(node)) { return; } - this.enter(node, parent); + if (this.setParentPointers) { + node.parent = parent; + } + if ('enter' in this.selectors) { + this.selectors.enter(node, parent); + } + else if (node.type in this.selectors) { + this.selectors[node.type](node, parent); + } const keys = getVisitorKeysForNode(this.allVisitorKeys, node); if (keys.length < 1) { return; @@ -36,8 +46,8 @@ class SimpleTraverser { } } } -function simpleTraverse(startingNode, options) { - new SimpleTraverser(options).traverse(startingNode, undefined); +function simpleTraverse(startingNode, options, setParentPointers = false) { + new SimpleTraverser(options, setParentPointers).traverse(startingNode, undefined); } exports.simpleTraverse = simpleTraverse; //# sourceMappingURL=simple-traverse.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map index ca356772..910f55ed 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map @@ -1 +1 @@ -{"version":3,"file":"simple-traverse.js","sourceRoot":"","sources":["../src/simple-traverse.ts"],"names":[],"mappings":";;AACA,iDAA6C;AAE7C,8DAA8D;AAC9D,SAAS,WAAW,CAAC,CAAM;IACzB,OAAO,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC3E,CAAC;AAED,SAAS,qBAAqB,CAC5B,cAAkC,EAClC,IAAmB;IAEnB,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,QAAO,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,EAAC;AACpB,CAAC;AAMD,MAAM,eAAe;IAInB,YAAY,EAAE,KAAK,EAAyB;QAHpC,mBAAc,GAAG,0BAAW,CAAC;QAInC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,IAAa,EAAE,MAAiC;QACvD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YACtB,OAAO;SACR;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEzB,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,OAAO;SACR;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,eAAe,GAAG,IAAI,CAAC,GAA0B,CAAC,CAAC;YAEzD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBAClC,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE;oBACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;iBAC5B;aACF;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;aACtC;SACF;IACH,CAAC;CACF;AAED,SAAgB,cAAc,CAC5B,YAA2B,EAC3B,OAA8B;IAE9B,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AACjE,CAAC;AALD,wCAKC"} \ No newline at end of file +{"version":3,"file":"simple-traverse.js","sourceRoot":"","sources":["../src/simple-traverse.ts"],"names":[],"mappings":";;;AAAA,kEAA8D;AAG9D,8DAA8D;AAC9D,SAAS,WAAW,CAAC,CAAM;IACzB,OAAO,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC3E,CAAC;AAED,SAAS,qBAAqB,CAC5B,cAAkC,EAClC,IAAmB;IAEnB,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAU,CAAC;AAC/B,CAAC;AAaD,MAAM,eAAe;IAKnB,YAAY,SAAgC,EAAE,iBAAiB,GAAG,KAAK;QAJtD,mBAAc,GAAG,0BAAW,CAAC;QAK5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,QAAQ,CAAC,IAAa,EAAE,MAAiC;QACvD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YACtB,OAAO;SACR;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;QAED,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;YAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACpC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACzC;QAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,OAAO;SACR;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YAElC,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBAClC,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE;oBACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;iBAC5B;aACF;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;aACtC;SACF;IACH,CAAC;CACF;AAED,SAAgB,cAAc,CAC5B,YAA2B,EAC3B,OAA8B,EAC9B,iBAAiB,GAAG,KAAK;IAEzB,IAAI,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CACtD,YAAY,EACZ,SAAS,CACV,CAAC;AACJ,CAAC;AATD,wCASC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.d.ts deleted file mode 100644 index 7dc82909..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.d.ts +++ /dev/null @@ -1,180 +0,0 @@ -export declare enum AST_NODE_TYPES { - ArrayExpression = "ArrayExpression", - ArrayPattern = "ArrayPattern", - ArrowFunctionExpression = "ArrowFunctionExpression", - AssignmentExpression = "AssignmentExpression", - AssignmentPattern = "AssignmentPattern", - AwaitExpression = "AwaitExpression", - BigIntLiteral = "BigIntLiteral", - BinaryExpression = "BinaryExpression", - BlockStatement = "BlockStatement", - BreakStatement = "BreakStatement", - CallExpression = "CallExpression", - CatchClause = "CatchClause", - ClassBody = "ClassBody", - ClassDeclaration = "ClassDeclaration", - ClassExpression = "ClassExpression", - ClassProperty = "ClassProperty", - ConditionalExpression = "ConditionalExpression", - ContinueStatement = "ContinueStatement", - DebuggerStatement = "DebuggerStatement", - Decorator = "Decorator", - DoWhileStatement = "DoWhileStatement", - EmptyStatement = "EmptyStatement", - ExportAllDeclaration = "ExportAllDeclaration", - ExportDefaultDeclaration = "ExportDefaultDeclaration", - ExportNamedDeclaration = "ExportNamedDeclaration", - ExportSpecifier = "ExportSpecifier", - ExpressionStatement = "ExpressionStatement", - ForInStatement = "ForInStatement", - ForOfStatement = "ForOfStatement", - ForStatement = "ForStatement", - FunctionDeclaration = "FunctionDeclaration", - FunctionExpression = "FunctionExpression", - Identifier = "Identifier", - IfStatement = "IfStatement", - Import = "Import", - ImportDeclaration = "ImportDeclaration", - ImportDefaultSpecifier = "ImportDefaultSpecifier", - ImportNamespaceSpecifier = "ImportNamespaceSpecifier", - ImportSpecifier = "ImportSpecifier", - JSXAttribute = "JSXAttribute", - JSXClosingElement = "JSXClosingElement", - JSXClosingFragment = "JSXClosingFragment", - JSXElement = "JSXElement", - JSXEmptyExpression = "JSXEmptyExpression", - JSXExpressionContainer = "JSXExpressionContainer", - JSXFragment = "JSXFragment", - JSXIdentifier = "JSXIdentifier", - JSXMemberExpression = "JSXMemberExpression", - JSXOpeningElement = "JSXOpeningElement", - JSXOpeningFragment = "JSXOpeningFragment", - JSXSpreadAttribute = "JSXSpreadAttribute", - JSXSpreadChild = "JSXSpreadChild", - JSXText = "JSXText", - LabeledStatement = "LabeledStatement", - Literal = "Literal", - LogicalExpression = "LogicalExpression", - MemberExpression = "MemberExpression", - MetaProperty = "MetaProperty", - MethodDefinition = "MethodDefinition", - NewExpression = "NewExpression", - ObjectExpression = "ObjectExpression", - ObjectPattern = "ObjectPattern", - OptionalCallExpression = "OptionalCallExpression", - OptionalMemberExpression = "OptionalMemberExpression", - Program = "Program", - Property = "Property", - RestElement = "RestElement", - ReturnStatement = "ReturnStatement", - SequenceExpression = "SequenceExpression", - SpreadElement = "SpreadElement", - Super = "Super", - SwitchCase = "SwitchCase", - SwitchStatement = "SwitchStatement", - TaggedTemplateExpression = "TaggedTemplateExpression", - TemplateElement = "TemplateElement", - TemplateLiteral = "TemplateLiteral", - ThisExpression = "ThisExpression", - ThrowStatement = "ThrowStatement", - TryStatement = "TryStatement", - UnaryExpression = "UnaryExpression", - UpdateExpression = "UpdateExpression", - VariableDeclaration = "VariableDeclaration", - VariableDeclarator = "VariableDeclarator", - WhileStatement = "WhileStatement", - WithStatement = "WithStatement", - YieldExpression = "YieldExpression", - /** - * TS-prefixed nodes - */ - TSAbstractClassProperty = "TSAbstractClassProperty", - TSAbstractKeyword = "TSAbstractKeyword", - TSAbstractMethodDefinition = "TSAbstractMethodDefinition", - TSAnyKeyword = "TSAnyKeyword", - TSArrayType = "TSArrayType", - TSAsExpression = "TSAsExpression", - TSAsyncKeyword = "TSAsyncKeyword", - TSBooleanKeyword = "TSBooleanKeyword", - TSBigIntKeyword = "TSBigIntKeyword", - TSConditionalType = "TSConditionalType", - TSConstructorType = "TSConstructorType", - TSCallSignatureDeclaration = "TSCallSignatureDeclaration", - TSClassImplements = "TSClassImplements", - TSConstructSignatureDeclaration = "TSConstructSignatureDeclaration", - TSDeclareKeyword = "TSDeclareKeyword", - TSDeclareFunction = "TSDeclareFunction", - TSEmptyBodyFunctionExpression = "TSEmptyBodyFunctionExpression", - TSEnumDeclaration = "TSEnumDeclaration", - TSEnumMember = "TSEnumMember", - TSExportAssignment = "TSExportAssignment", - TSExportKeyword = "TSExportKeyword", - TSExternalModuleReference = "TSExternalModuleReference", - TSImportType = "TSImportType", - TSInferType = "TSInferType", - TSLiteralType = "TSLiteralType", - TSIndexedAccessType = "TSIndexedAccessType", - TSIndexSignature = "TSIndexSignature", - TSInterfaceBody = "TSInterfaceBody", - TSInterfaceDeclaration = "TSInterfaceDeclaration", - TSInterfaceHeritage = "TSInterfaceHeritage", - TSImportEqualsDeclaration = "TSImportEqualsDeclaration", - TSFunctionType = "TSFunctionType", - TSMethodSignature = "TSMethodSignature", - TSModuleBlock = "TSModuleBlock", - TSModuleDeclaration = "TSModuleDeclaration", - TSNamespaceExportDeclaration = "TSNamespaceExportDeclaration", - TSNonNullExpression = "TSNonNullExpression", - TSNeverKeyword = "TSNeverKeyword", - TSNullKeyword = "TSNullKeyword", - TSNumberKeyword = "TSNumberKeyword", - TSMappedType = "TSMappedType", - TSObjectKeyword = "TSObjectKeyword", - TSParameterProperty = "TSParameterProperty", - TSPrivateKeyword = "TSPrivateKeyword", - TSPropertySignature = "TSPropertySignature", - TSProtectedKeyword = "TSProtectedKeyword", - TSPublicKeyword = "TSPublicKeyword", - TSQualifiedName = "TSQualifiedName", - TSReadonlyKeyword = "TSReadonlyKeyword", - TSRestType = "TSRestType", - TSStaticKeyword = "TSStaticKeyword", - TSStringKeyword = "TSStringKeyword", - TSSymbolKeyword = "TSSymbolKeyword", - TSThisType = "TSThisType", - TSTypeAnnotation = "TSTypeAnnotation", - TSTypeAliasDeclaration = "TSTypeAliasDeclaration", - TSTypeAssertion = "TSTypeAssertion", - TSTypeLiteral = "TSTypeLiteral", - TSTypeOperator = "TSTypeOperator", - TSTypeParameter = "TSTypeParameter", - TSTypeParameterDeclaration = "TSTypeParameterDeclaration", - TSTypeParameterInstantiation = "TSTypeParameterInstantiation", - TSTypePredicate = "TSTypePredicate", - TSTypeReference = "TSTypeReference", - TSTypeQuery = "TSTypeQuery", - TSIntersectionType = "TSIntersectionType", - TSTupleType = "TSTupleType", - TSOptionalType = "TSOptionalType", - TSParenthesizedType = "TSParenthesizedType", - TSUnionType = "TSUnionType", - TSUndefinedKeyword = "TSUndefinedKeyword", - TSUnknownKeyword = "TSUnknownKeyword", - TSVoidKeyword = "TSVoidKeyword" -} -export declare enum AST_TOKEN_TYPES { - Boolean = "Boolean", - Identifier = "Identifier", - JSXIdentifier = "JSXIdentifier", - JSXText = "JSXText", - Keyword = "Keyword", - Null = "Null", - Numeric = "Numeric", - Punctuator = "Punctuator", - RegularExpression = "RegularExpression", - String = "String", - Template = "Template", - Block = "Block", - Line = "Line" -} -//# sourceMappingURL=ast-node-types.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.d.ts.map deleted file mode 100644 index 3c6fc53b..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ast-node-types.d.ts","sourceRoot":"","sources":["../../src/ts-estree/ast-node-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.js b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.js deleted file mode 100644 index e1e723df..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.js +++ /dev/null @@ -1,185 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -var AST_NODE_TYPES; -(function (AST_NODE_TYPES) { - AST_NODE_TYPES["ArrayExpression"] = "ArrayExpression"; - AST_NODE_TYPES["ArrayPattern"] = "ArrayPattern"; - AST_NODE_TYPES["ArrowFunctionExpression"] = "ArrowFunctionExpression"; - AST_NODE_TYPES["AssignmentExpression"] = "AssignmentExpression"; - AST_NODE_TYPES["AssignmentPattern"] = "AssignmentPattern"; - AST_NODE_TYPES["AwaitExpression"] = "AwaitExpression"; - AST_NODE_TYPES["BigIntLiteral"] = "BigIntLiteral"; - AST_NODE_TYPES["BinaryExpression"] = "BinaryExpression"; - AST_NODE_TYPES["BlockStatement"] = "BlockStatement"; - AST_NODE_TYPES["BreakStatement"] = "BreakStatement"; - AST_NODE_TYPES["CallExpression"] = "CallExpression"; - AST_NODE_TYPES["CatchClause"] = "CatchClause"; - AST_NODE_TYPES["ClassBody"] = "ClassBody"; - AST_NODE_TYPES["ClassDeclaration"] = "ClassDeclaration"; - AST_NODE_TYPES["ClassExpression"] = "ClassExpression"; - AST_NODE_TYPES["ClassProperty"] = "ClassProperty"; - AST_NODE_TYPES["ConditionalExpression"] = "ConditionalExpression"; - AST_NODE_TYPES["ContinueStatement"] = "ContinueStatement"; - AST_NODE_TYPES["DebuggerStatement"] = "DebuggerStatement"; - AST_NODE_TYPES["Decorator"] = "Decorator"; - AST_NODE_TYPES["DoWhileStatement"] = "DoWhileStatement"; - AST_NODE_TYPES["EmptyStatement"] = "EmptyStatement"; - AST_NODE_TYPES["ExportAllDeclaration"] = "ExportAllDeclaration"; - AST_NODE_TYPES["ExportDefaultDeclaration"] = "ExportDefaultDeclaration"; - AST_NODE_TYPES["ExportNamedDeclaration"] = "ExportNamedDeclaration"; - AST_NODE_TYPES["ExportSpecifier"] = "ExportSpecifier"; - AST_NODE_TYPES["ExpressionStatement"] = "ExpressionStatement"; - AST_NODE_TYPES["ForInStatement"] = "ForInStatement"; - AST_NODE_TYPES["ForOfStatement"] = "ForOfStatement"; - AST_NODE_TYPES["ForStatement"] = "ForStatement"; - AST_NODE_TYPES["FunctionDeclaration"] = "FunctionDeclaration"; - AST_NODE_TYPES["FunctionExpression"] = "FunctionExpression"; - AST_NODE_TYPES["Identifier"] = "Identifier"; - AST_NODE_TYPES["IfStatement"] = "IfStatement"; - AST_NODE_TYPES["Import"] = "Import"; - AST_NODE_TYPES["ImportDeclaration"] = "ImportDeclaration"; - AST_NODE_TYPES["ImportDefaultSpecifier"] = "ImportDefaultSpecifier"; - AST_NODE_TYPES["ImportNamespaceSpecifier"] = "ImportNamespaceSpecifier"; - AST_NODE_TYPES["ImportSpecifier"] = "ImportSpecifier"; - AST_NODE_TYPES["JSXAttribute"] = "JSXAttribute"; - AST_NODE_TYPES["JSXClosingElement"] = "JSXClosingElement"; - AST_NODE_TYPES["JSXClosingFragment"] = "JSXClosingFragment"; - AST_NODE_TYPES["JSXElement"] = "JSXElement"; - AST_NODE_TYPES["JSXEmptyExpression"] = "JSXEmptyExpression"; - AST_NODE_TYPES["JSXExpressionContainer"] = "JSXExpressionContainer"; - AST_NODE_TYPES["JSXFragment"] = "JSXFragment"; - AST_NODE_TYPES["JSXIdentifier"] = "JSXIdentifier"; - AST_NODE_TYPES["JSXMemberExpression"] = "JSXMemberExpression"; - AST_NODE_TYPES["JSXOpeningElement"] = "JSXOpeningElement"; - AST_NODE_TYPES["JSXOpeningFragment"] = "JSXOpeningFragment"; - AST_NODE_TYPES["JSXSpreadAttribute"] = "JSXSpreadAttribute"; - AST_NODE_TYPES["JSXSpreadChild"] = "JSXSpreadChild"; - AST_NODE_TYPES["JSXText"] = "JSXText"; - AST_NODE_TYPES["LabeledStatement"] = "LabeledStatement"; - AST_NODE_TYPES["Literal"] = "Literal"; - AST_NODE_TYPES["LogicalExpression"] = "LogicalExpression"; - AST_NODE_TYPES["MemberExpression"] = "MemberExpression"; - AST_NODE_TYPES["MetaProperty"] = "MetaProperty"; - AST_NODE_TYPES["MethodDefinition"] = "MethodDefinition"; - AST_NODE_TYPES["NewExpression"] = "NewExpression"; - AST_NODE_TYPES["ObjectExpression"] = "ObjectExpression"; - AST_NODE_TYPES["ObjectPattern"] = "ObjectPattern"; - AST_NODE_TYPES["OptionalCallExpression"] = "OptionalCallExpression"; - AST_NODE_TYPES["OptionalMemberExpression"] = "OptionalMemberExpression"; - AST_NODE_TYPES["Program"] = "Program"; - AST_NODE_TYPES["Property"] = "Property"; - AST_NODE_TYPES["RestElement"] = "RestElement"; - AST_NODE_TYPES["ReturnStatement"] = "ReturnStatement"; - AST_NODE_TYPES["SequenceExpression"] = "SequenceExpression"; - AST_NODE_TYPES["SpreadElement"] = "SpreadElement"; - AST_NODE_TYPES["Super"] = "Super"; - AST_NODE_TYPES["SwitchCase"] = "SwitchCase"; - AST_NODE_TYPES["SwitchStatement"] = "SwitchStatement"; - AST_NODE_TYPES["TaggedTemplateExpression"] = "TaggedTemplateExpression"; - AST_NODE_TYPES["TemplateElement"] = "TemplateElement"; - AST_NODE_TYPES["TemplateLiteral"] = "TemplateLiteral"; - AST_NODE_TYPES["ThisExpression"] = "ThisExpression"; - AST_NODE_TYPES["ThrowStatement"] = "ThrowStatement"; - AST_NODE_TYPES["TryStatement"] = "TryStatement"; - AST_NODE_TYPES["UnaryExpression"] = "UnaryExpression"; - AST_NODE_TYPES["UpdateExpression"] = "UpdateExpression"; - AST_NODE_TYPES["VariableDeclaration"] = "VariableDeclaration"; - AST_NODE_TYPES["VariableDeclarator"] = "VariableDeclarator"; - AST_NODE_TYPES["WhileStatement"] = "WhileStatement"; - AST_NODE_TYPES["WithStatement"] = "WithStatement"; - AST_NODE_TYPES["YieldExpression"] = "YieldExpression"; - /** - * TS-prefixed nodes - */ - AST_NODE_TYPES["TSAbstractClassProperty"] = "TSAbstractClassProperty"; - AST_NODE_TYPES["TSAbstractKeyword"] = "TSAbstractKeyword"; - AST_NODE_TYPES["TSAbstractMethodDefinition"] = "TSAbstractMethodDefinition"; - AST_NODE_TYPES["TSAnyKeyword"] = "TSAnyKeyword"; - AST_NODE_TYPES["TSArrayType"] = "TSArrayType"; - AST_NODE_TYPES["TSAsExpression"] = "TSAsExpression"; - AST_NODE_TYPES["TSAsyncKeyword"] = "TSAsyncKeyword"; - AST_NODE_TYPES["TSBooleanKeyword"] = "TSBooleanKeyword"; - AST_NODE_TYPES["TSBigIntKeyword"] = "TSBigIntKeyword"; - AST_NODE_TYPES["TSConditionalType"] = "TSConditionalType"; - AST_NODE_TYPES["TSConstructorType"] = "TSConstructorType"; - AST_NODE_TYPES["TSCallSignatureDeclaration"] = "TSCallSignatureDeclaration"; - AST_NODE_TYPES["TSClassImplements"] = "TSClassImplements"; - AST_NODE_TYPES["TSConstructSignatureDeclaration"] = "TSConstructSignatureDeclaration"; - AST_NODE_TYPES["TSDeclareKeyword"] = "TSDeclareKeyword"; - AST_NODE_TYPES["TSDeclareFunction"] = "TSDeclareFunction"; - AST_NODE_TYPES["TSEmptyBodyFunctionExpression"] = "TSEmptyBodyFunctionExpression"; - AST_NODE_TYPES["TSEnumDeclaration"] = "TSEnumDeclaration"; - AST_NODE_TYPES["TSEnumMember"] = "TSEnumMember"; - AST_NODE_TYPES["TSExportAssignment"] = "TSExportAssignment"; - AST_NODE_TYPES["TSExportKeyword"] = "TSExportKeyword"; - AST_NODE_TYPES["TSExternalModuleReference"] = "TSExternalModuleReference"; - AST_NODE_TYPES["TSImportType"] = "TSImportType"; - AST_NODE_TYPES["TSInferType"] = "TSInferType"; - AST_NODE_TYPES["TSLiteralType"] = "TSLiteralType"; - AST_NODE_TYPES["TSIndexedAccessType"] = "TSIndexedAccessType"; - AST_NODE_TYPES["TSIndexSignature"] = "TSIndexSignature"; - AST_NODE_TYPES["TSInterfaceBody"] = "TSInterfaceBody"; - AST_NODE_TYPES["TSInterfaceDeclaration"] = "TSInterfaceDeclaration"; - AST_NODE_TYPES["TSInterfaceHeritage"] = "TSInterfaceHeritage"; - AST_NODE_TYPES["TSImportEqualsDeclaration"] = "TSImportEqualsDeclaration"; - AST_NODE_TYPES["TSFunctionType"] = "TSFunctionType"; - AST_NODE_TYPES["TSMethodSignature"] = "TSMethodSignature"; - AST_NODE_TYPES["TSModuleBlock"] = "TSModuleBlock"; - AST_NODE_TYPES["TSModuleDeclaration"] = "TSModuleDeclaration"; - AST_NODE_TYPES["TSNamespaceExportDeclaration"] = "TSNamespaceExportDeclaration"; - AST_NODE_TYPES["TSNonNullExpression"] = "TSNonNullExpression"; - AST_NODE_TYPES["TSNeverKeyword"] = "TSNeverKeyword"; - AST_NODE_TYPES["TSNullKeyword"] = "TSNullKeyword"; - AST_NODE_TYPES["TSNumberKeyword"] = "TSNumberKeyword"; - AST_NODE_TYPES["TSMappedType"] = "TSMappedType"; - AST_NODE_TYPES["TSObjectKeyword"] = "TSObjectKeyword"; - AST_NODE_TYPES["TSParameterProperty"] = "TSParameterProperty"; - AST_NODE_TYPES["TSPrivateKeyword"] = "TSPrivateKeyword"; - AST_NODE_TYPES["TSPropertySignature"] = "TSPropertySignature"; - AST_NODE_TYPES["TSProtectedKeyword"] = "TSProtectedKeyword"; - AST_NODE_TYPES["TSPublicKeyword"] = "TSPublicKeyword"; - AST_NODE_TYPES["TSQualifiedName"] = "TSQualifiedName"; - AST_NODE_TYPES["TSReadonlyKeyword"] = "TSReadonlyKeyword"; - AST_NODE_TYPES["TSRestType"] = "TSRestType"; - AST_NODE_TYPES["TSStaticKeyword"] = "TSStaticKeyword"; - AST_NODE_TYPES["TSStringKeyword"] = "TSStringKeyword"; - AST_NODE_TYPES["TSSymbolKeyword"] = "TSSymbolKeyword"; - AST_NODE_TYPES["TSThisType"] = "TSThisType"; - AST_NODE_TYPES["TSTypeAnnotation"] = "TSTypeAnnotation"; - AST_NODE_TYPES["TSTypeAliasDeclaration"] = "TSTypeAliasDeclaration"; - AST_NODE_TYPES["TSTypeAssertion"] = "TSTypeAssertion"; - AST_NODE_TYPES["TSTypeLiteral"] = "TSTypeLiteral"; - AST_NODE_TYPES["TSTypeOperator"] = "TSTypeOperator"; - AST_NODE_TYPES["TSTypeParameter"] = "TSTypeParameter"; - AST_NODE_TYPES["TSTypeParameterDeclaration"] = "TSTypeParameterDeclaration"; - AST_NODE_TYPES["TSTypeParameterInstantiation"] = "TSTypeParameterInstantiation"; - AST_NODE_TYPES["TSTypePredicate"] = "TSTypePredicate"; - AST_NODE_TYPES["TSTypeReference"] = "TSTypeReference"; - AST_NODE_TYPES["TSTypeQuery"] = "TSTypeQuery"; - AST_NODE_TYPES["TSIntersectionType"] = "TSIntersectionType"; - AST_NODE_TYPES["TSTupleType"] = "TSTupleType"; - AST_NODE_TYPES["TSOptionalType"] = "TSOptionalType"; - AST_NODE_TYPES["TSParenthesizedType"] = "TSParenthesizedType"; - AST_NODE_TYPES["TSUnionType"] = "TSUnionType"; - AST_NODE_TYPES["TSUndefinedKeyword"] = "TSUndefinedKeyword"; - AST_NODE_TYPES["TSUnknownKeyword"] = "TSUnknownKeyword"; - AST_NODE_TYPES["TSVoidKeyword"] = "TSVoidKeyword"; -})(AST_NODE_TYPES = exports.AST_NODE_TYPES || (exports.AST_NODE_TYPES = {})); -var AST_TOKEN_TYPES; -(function (AST_TOKEN_TYPES) { - AST_TOKEN_TYPES["Boolean"] = "Boolean"; - AST_TOKEN_TYPES["Identifier"] = "Identifier"; - AST_TOKEN_TYPES["JSXIdentifier"] = "JSXIdentifier"; - AST_TOKEN_TYPES["JSXText"] = "JSXText"; - AST_TOKEN_TYPES["Keyword"] = "Keyword"; - AST_TOKEN_TYPES["Null"] = "Null"; - AST_TOKEN_TYPES["Numeric"] = "Numeric"; - AST_TOKEN_TYPES["Punctuator"] = "Punctuator"; - AST_TOKEN_TYPES["RegularExpression"] = "RegularExpression"; - AST_TOKEN_TYPES["String"] = "String"; - AST_TOKEN_TYPES["Template"] = "Template"; - // comment types - AST_TOKEN_TYPES["Block"] = "Block"; - AST_TOKEN_TYPES["Line"] = "Line"; -})(AST_TOKEN_TYPES = exports.AST_TOKEN_TYPES || (exports.AST_TOKEN_TYPES = {})); -//# sourceMappingURL=ast-node-types.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.js.map deleted file mode 100644 index cdb25764..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ast-node-types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ast-node-types.js","sourceRoot":"","sources":["../../src/ts-estree/ast-node-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts index 0cbb78fe..c3aa41b7 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts @@ -1,7 +1,6 @@ -import { TSNode } from './ts-nodes'; -import { AST_NODE_TYPES } from './ast-node-types'; -import { Node } from './ts-estree'; +import { AST_NODE_TYPES, TSESTree } from '@typescript-eslint/types'; import * as ts from 'typescript'; +import { TSNode } from './ts-nodes'; export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.ArrayExpression]: ts.ArrayLiteralExpression; [AST_NODE_TYPES.ArrayPattern]: ts.ArrayLiteralExpression | ts.ArrayBindingPattern; @@ -9,12 +8,12 @@ export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.AssignmentExpression]: ts.BinaryExpression; [AST_NODE_TYPES.AssignmentPattern]: ts.ShorthandPropertyAssignment | ts.BindingElement | ts.BinaryExpression | ts.ParameterDeclaration; [AST_NODE_TYPES.AwaitExpression]: ts.AwaitExpression; - [AST_NODE_TYPES.BigIntLiteral]: ts.BigIntLiteral; [AST_NODE_TYPES.BinaryExpression]: ts.BinaryExpression; [AST_NODE_TYPES.BlockStatement]: ts.Block; [AST_NODE_TYPES.BreakStatement]: ts.BreakStatement; [AST_NODE_TYPES.CallExpression]: ts.CallExpression; [AST_NODE_TYPES.CatchClause]: ts.CatchClause; + [AST_NODE_TYPES.ChainExpression]: ts.CallExpression | ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.NonNullExpression; [AST_NODE_TYPES.ClassBody]: ts.ClassDeclaration | ts.ClassExpression; [AST_NODE_TYPES.ClassDeclaration]: ts.ClassDeclaration; [AST_NODE_TYPES.ClassExpression]: ts.ClassExpression; @@ -37,9 +36,9 @@ export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.FunctionExpression]: ts.FunctionExpression | ts.ConstructorDeclaration | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration; [AST_NODE_TYPES.Identifier]: ts.Identifier | ts.ConstructorDeclaration | ts.Token; [AST_NODE_TYPES.IfStatement]: ts.IfStatement; - [AST_NODE_TYPES.Import]: ts.ImportExpression; [AST_NODE_TYPES.ImportDeclaration]: ts.ImportDeclaration; [AST_NODE_TYPES.ImportDefaultSpecifier]: ts.ImportClause; + [AST_NODE_TYPES.ImportExpression]: ts.CallExpression; [AST_NODE_TYPES.ImportNamespaceSpecifier]: ts.NamespaceImport; [AST_NODE_TYPES.ImportSpecifier]: ts.ImportSpecifier; [AST_NODE_TYPES.JSXAttribute]: ts.JsxAttribute; @@ -57,7 +56,7 @@ export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.JSXMemberExpression]: ts.PropertyAccessExpression; [AST_NODE_TYPES.JSXText]: ts.JsxText; [AST_NODE_TYPES.LabeledStatement]: ts.LabeledStatement; - [AST_NODE_TYPES.Literal]: ts.StringLiteral | ts.NumericLiteral | ts.RegularExpressionLiteral | ts.JsxText | ts.NullLiteral | ts.BooleanLiteral; + [AST_NODE_TYPES.Literal]: ts.StringLiteral | ts.NumericLiteral | ts.RegularExpressionLiteral | ts.JsxText | ts.NullLiteral | ts.BooleanLiteral | ts.BigIntLiteral; [AST_NODE_TYPES.LogicalExpression]: ts.BinaryExpression; [AST_NODE_TYPES.MemberExpression]: ts.PropertyAccessExpression | ts.ElementAccessExpression; [AST_NODE_TYPES.MetaProperty]: ts.MetaProperty; @@ -65,8 +64,6 @@ export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.NewExpression]: ts.NewExpression; [AST_NODE_TYPES.ObjectExpression]: ts.ObjectLiteralExpression; [AST_NODE_TYPES.ObjectPattern]: ts.ObjectLiteralExpression | ts.ObjectBindingPattern; - [AST_NODE_TYPES.OptionalCallExpression]: ts.CallExpression; - [AST_NODE_TYPES.OptionalMemberExpression]: ts.PropertyAccessExpression | ts.ElementAccessExpression; [AST_NODE_TYPES.Program]: ts.SourceFile; [AST_NODE_TYPES.Property]: ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration | ts.BindingElement; [AST_NODE_TYPES.RestElement]: ts.BindingElement | ts.SpreadAssignment | ts.SpreadElement | ts.ParameterDeclaration; @@ -111,6 +108,7 @@ export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.TSMethodSignature]: ts.MethodSignature; [AST_NODE_TYPES.TSModuleBlock]: ts.ModuleBlock; [AST_NODE_TYPES.TSModuleDeclaration]: ts.ModuleDeclaration; + [AST_NODE_TYPES.TSNamedTupleMember]: ts.NamedTupleMember; [AST_NODE_TYPES.TSNamespaceExportDeclaration]: ts.NamespaceExportDeclaration; [AST_NODE_TYPES.TSNonNullExpression]: ts.NonNullExpression; [AST_NODE_TYPES.TSOptionalType]: ts.OptionalTypeNode; @@ -118,7 +116,7 @@ export interface EstreeToTsNodeTypes { [AST_NODE_TYPES.TSParenthesizedType]: ts.ParenthesizedTypeNode; [AST_NODE_TYPES.TSPropertySignature]: ts.PropertySignature; [AST_NODE_TYPES.TSQualifiedName]: ts.QualifiedName; - [AST_NODE_TYPES.TSRestType]: ts.RestTypeNode; + [AST_NODE_TYPES.TSRestType]: ts.RestTypeNode | ts.NamedTupleMember; [AST_NODE_TYPES.TSThisType]: ts.ThisTypeNode; [AST_NODE_TYPES.TSTupleType]: ts.TupleTypeNode; [AST_NODE_TYPES.TSTypeAliasDeclaration]: ts.TypeAliasDeclaration; @@ -167,5 +165,5 @@ export interface EstreeToTsNodeTypes { * Maps TSESTree AST Node type to the expected TypeScript AST Node type(s). * This mapping is based on the internal logic of the parser. */ -export declare type TSESTreeToTSNode = Extract, EstreeToTsNodeTypes[T['type']]>; +export declare type TSESTreeToTSNode = Extract, EstreeToTsNodeTypes[T['type']]>; //# sourceMappingURL=estree-to-ts-node-types.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map index 5f9a976e..8704471b 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"estree-to-ts-node-types.d.ts","sourceRoot":"","sources":["../../src/ts-estree/estree-to-ts-node-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"estree-to-ts-node-types.d.ts","sourceRoot":"","sources":["../../src/ts-estree/estree-to-ts-node-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js index 04cd0fc4..1a133cdb 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js @@ -1,4 +1,4 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const ast_node_types_1 = require("./ast-node-types"); +const types_1 = require("@typescript-eslint/types"); //# sourceMappingURL=estree-to-ts-node-types.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map index bb7fe26c..b48e0fd3 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map @@ -1 +1 @@ -{"version":3,"file":"estree-to-ts-node-types.js","sourceRoot":"","sources":["../../src/ts-estree/estree-to-ts-node-types.ts"],"names":[],"mappings":";;AACA,qDAAkD"} \ No newline at end of file +{"version":3,"file":"estree-to-ts-node-types.js","sourceRoot":"","sources":["../../src/ts-estree/estree-to-ts-node-types.ts"],"names":[],"mappings":";;AAAA,oDAAoE"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts index 2a011397..37f26a39 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts @@ -1,6 +1,4 @@ -import * as TSESTree from './ts-estree'; -export { TSESTree }; -export * from './ast-node-types'; +export { AST_NODE_TYPES, AST_TOKEN_TYPES, TSESTree, } from '@typescript-eslint/types'; export * from './ts-nodes'; export * from './estree-to-ts-node-types'; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map index 8c3e4241..6a839dc6 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-estree/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-estree/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,eAAe,EACf,QAAQ,GACT,MAAM,0BAA0B,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js index e844b61b..7f938027 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js @@ -1,16 +1,21 @@ "use strict"; -function __export(m) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} -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; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); -const TSESTree = __importStar(require("./ts-estree")); -exports.TSESTree = TSESTree; -__export(require("./ast-node-types")); +exports.TSESTree = exports.AST_TOKEN_TYPES = exports.AST_NODE_TYPES = void 0; +// for simplicity and backwards-compatibility +var types_1 = require("@typescript-eslint/types"); +Object.defineProperty(exports, "AST_NODE_TYPES", { enumerable: true, get: function () { return types_1.AST_NODE_TYPES; } }); +Object.defineProperty(exports, "AST_TOKEN_TYPES", { enumerable: true, get: function () { return types_1.AST_TOKEN_TYPES; } }); +Object.defineProperty(exports, "TSESTree", { enumerable: true, get: function () { return types_1.TSESTree; } }); +__exportStar(require("./ts-nodes"), exports); +__exportStar(require("./estree-to-ts-node-types"), exports); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map index 0b84b6d5..5325d5dc 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-estree/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAwC;AAE/B,4BAAQ;AACjB,sCAAiC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-estree/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAA6C;AAC7C,kDAIkC;AAHhC,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AACf,iGAAA,QAAQ,OAAA;AAEV,6CAA2B;AAC3B,4DAA0C"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.d.ts deleted file mode 100644 index cf8b2f92..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.d.ts +++ /dev/null @@ -1,1064 +0,0 @@ -import { AST_NODE_TYPES, AST_TOKEN_TYPES } from './ast-node-types'; -export interface LineAndColumnData { - /** - * Line number (1-indexed) - */ - line: number; - /** - * Column number on the line (0-indexed) - */ - column: number; -} -export interface SourceLocation { - /** - * The position of the first character of the parsed source region - */ - start: LineAndColumnData; - /** - * The position of the first character after the parsed source region - */ - end: LineAndColumnData; -} -export declare type Range = [number, number]; -export interface BaseNode { - /** - * The source location information of the node. - */ - loc: SourceLocation; - /** - * An array of two numbers. - * Both numbers are a 0-based index which is the position in the array of source code characters. - * The first is the start position of the node, the second is the end position of the node. - */ - range: Range; - /** - * The parent node of the current node - */ - parent?: Node; -} -interface BaseToken extends BaseNode { - value: string; -} -export interface BooleanToken extends BaseToken { - type: AST_TOKEN_TYPES.Boolean; -} -export interface IdentifierToken extends BaseToken { - type: AST_TOKEN_TYPES.Identifier; -} -export interface JSXIdentifierToken extends BaseToken { - type: AST_TOKEN_TYPES.JSXIdentifier; -} -export interface JSXTextToken extends BaseToken { - type: AST_TOKEN_TYPES.JSXText; -} -export interface KeywordToken extends BaseToken { - type: AST_TOKEN_TYPES.Keyword; -} -export interface NullToken extends BaseToken { - type: AST_TOKEN_TYPES.Null; -} -export interface NumericToken extends BaseToken { - type: AST_TOKEN_TYPES.Numeric; -} -export interface PunctuatorToken extends BaseToken { - type: AST_TOKEN_TYPES.Punctuator; -} -export interface RegularExpressionToken extends BaseToken { - type: AST_TOKEN_TYPES.RegularExpression; - regex: { - pattern: string; - flags: string; - }; -} -export interface StringToken extends BaseToken { - type: AST_TOKEN_TYPES.String; -} -export interface TemplateToken extends BaseToken { - type: AST_TOKEN_TYPES.Template; -} -export interface BlockComment extends BaseToken { - type: AST_TOKEN_TYPES.Block; -} -export interface LineComment extends BaseToken { - type: AST_TOKEN_TYPES.Line; -} -export declare type Comment = BlockComment | LineComment; -export declare type Token = BooleanToken | IdentifierToken | JSXIdentifierToken | JSXTextToken | KeywordToken | NullToken | NumericToken | PunctuatorToken | RegularExpressionToken | StringToken | TemplateToken; -export declare type OptionalRangeAndLoc = Pick> & { - range?: Range; - loc?: SourceLocation; -}; -export declare type Node = ArrayExpression | ArrayPattern | ArrowFunctionExpression | AssignmentExpression | AssignmentPattern | AwaitExpression | BigIntLiteral | BinaryExpression | BlockStatement | BreakStatement | CallExpression | CatchClause | ClassBody | ClassDeclaration | ClassExpression | ClassProperty | ConditionalExpression | ContinueStatement | DebuggerStatement | Decorator | DoWhileStatement | EmptyStatement | ExportAllDeclaration | ExportDefaultDeclaration | ExportNamedDeclaration | ExportSpecifier | ExpressionStatement | ForInStatement | ForOfStatement | ForStatement | FunctionDeclaration | FunctionExpression | Identifier | IfStatement | Import | ImportDeclaration | ImportDefaultSpecifier | ImportNamespaceSpecifier | ImportSpecifier | JSXAttribute | JSXClosingElement | JSXClosingFragment | JSXElement | JSXEmptyExpression | JSXExpressionContainer | JSXFragment | JSXIdentifier | JSXOpeningElement | JSXOpeningFragment | JSXSpreadAttribute | JSXSpreadChild | JSXMemberExpression | JSXText | LabeledStatement | Literal | LogicalExpression | MemberExpression | MetaProperty | MethodDefinition | NewExpression | ObjectExpression | ObjectPattern | OptionalCallExpression | OptionalMemberExpression | Program | Property | RestElement | ReturnStatement | SequenceExpression | SpreadElement | Super | SwitchCase | SwitchStatement | TaggedTemplateExpression | TemplateElement | TemplateLiteral | ThisExpression | ThrowStatement | TryStatement | TSAbstractClassProperty | TSAbstractKeyword | TSAbstractMethodDefinition | TSAnyKeyword | TSArrayType | TSAsExpression | TSAsyncKeyword | TSBigIntKeyword | TSBooleanKeyword | TSCallSignatureDeclaration | TSClassImplements | TSConditionalType | TSConstructorType | TSConstructSignatureDeclaration | TSDeclareFunction | TSDeclareKeyword | TSEmptyBodyFunctionExpression | TSEnumDeclaration | TSEnumMember | TSExportAssignment | TSExportKeyword | TSExternalModuleReference | TSFunctionType | TSImportEqualsDeclaration | TSImportType | TSIndexedAccessType | TSIndexSignature | TSInferType | TSInterfaceDeclaration | TSInterfaceBody | TSInterfaceHeritage | TSIntersectionType | TSLiteralType | TSMappedType | TSMethodSignature | TSModuleBlock | TSModuleDeclaration | TSNamespaceExportDeclaration | TSNeverKeyword | TSNonNullExpression | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSOptionalType | TSParameterProperty | TSParenthesizedType | TSPropertySignature | TSPublicKeyword | TSPrivateKeyword | TSProtectedKeyword | TSQualifiedName | TSReadonlyKeyword | TSRestType | TSStaticKeyword | TSStringKeyword | TSSymbolKeyword | TSThisType | TSTupleType | TSTypeAliasDeclaration | TSTypeAnnotation | TSTypeAssertion | TSTypeLiteral | TSTypeOperator | TSTypeParameter | TSTypeParameterDeclaration | TSTypeParameterInstantiation | TSTypePredicate | TSTypeQuery | TSTypeReference | TSUndefinedKeyword | TSUnionType | TSUnknownKeyword | TSVoidKeyword | UpdateExpression | UnaryExpression | VariableDeclaration | VariableDeclarator | WhileStatement | WithStatement | YieldExpression; -export declare type Accessibility = 'public' | 'protected' | 'private'; -export declare type BindingPattern = ArrayPattern | ObjectPattern; -export declare type BindingName = BindingPattern | Identifier; -export declare type ClassElement = ClassProperty | FunctionExpression | MethodDefinition | TSAbstractClassProperty | TSAbstractMethodDefinition | TSEmptyBodyFunctionExpression | TSIndexSignature; -export declare type ClassProperty = ClassPropertyComputedName | ClassPropertyNonComputedName; -export declare type DeclarationStatement = ClassDeclaration | ClassExpression | ExportDefaultDeclaration | ExportAllDeclaration | ExportNamedDeclaration | FunctionDeclaration | TSDeclareFunction | TSImportEqualsDeclaration | TSInterfaceDeclaration | TSModuleDeclaration | TSNamespaceExportDeclaration | TSTypeAliasDeclaration | TSEnumDeclaration; -export declare type EntityName = Identifier | TSQualifiedName; -export declare type ExportDeclaration = ClassDeclaration | ClassExpression | FunctionDeclaration | TSDeclareFunction | TSEnumDeclaration | TSInterfaceDeclaration | TSModuleDeclaration | TSTypeAliasDeclaration | VariableDeclaration; -export declare type Expression = ArrowFunctionExpression | AssignmentExpression | BinaryExpression | ConditionalExpression | JSXClosingElement | JSXClosingFragment | JSXExpressionContainer | JSXOpeningElement | JSXOpeningFragment | JSXSpreadChild | LogicalExpression | NewExpression | RestElement | SequenceExpression | SpreadElement | TSAsExpression | TSUnaryExpression | YieldExpression; -export declare type ExpressionWithTypeArguments = TSClassImplements | TSInterfaceHeritage; -export declare type ForInitialiser = Expression | VariableDeclaration; -export declare type ImportClause = ImportDefaultSpecifier | ImportNamespaceSpecifier | ImportSpecifier; -export declare type IterationStatement = DoWhileStatement | ForInStatement | ForOfStatement | ForStatement | WhileStatement; -export declare type JSXChild = JSXElement | JSXExpression | JSXFragment | JSXText; -export declare type JSXExpression = JSXEmptyExpression | JSXSpreadChild | JSXExpressionContainer; -export declare type JSXTagNameExpression = JSXIdentifier | JSXMemberExpression; -export declare type LeftHandSideExpression = CallExpression | ClassExpression | ClassDeclaration | FunctionExpression | LiteralExpression | MemberExpression | OptionalCallExpression | OptionalMemberExpression | PrimaryExpression | TaggedTemplateExpression | TSNonNullExpression | TSAsExpression; -export declare type Literal = BooleanLiteral | NumberLiteral | NullLiteral | RegExpLiteral | StringLiteral; -export declare type LiteralExpression = BigIntLiteral | Literal | TemplateLiteral; -export declare type MemberExpression = MemberExpressionComputedName | MemberExpressionNonComputedName; -export declare type MethodDefinition = MethodDefinitionComputedName | MethodDefinitionNonComputedName; -export declare type Modifier = TSAbstractKeyword | TSAsyncKeyword | TSDeclareKeyword | TSExportKeyword | TSPublicKeyword | TSPrivateKeyword | TSProtectedKeyword | TSReadonlyKeyword | TSStaticKeyword; -export declare type ObjectLiteralElementLike = MethodDefinition | Property | SpreadElement | TSAbstractMethodDefinition; -export declare type OptionalMemberExpression = OptionalMemberExpressionComputedName | OptionalMemberExpressionNonComputedName; -export declare type Parameter = AssignmentPattern | RestElement | ArrayPattern | ObjectPattern | Identifier | TSParameterProperty; -export declare type DestructuringPattern = Identifier | ObjectPattern | ArrayPattern | RestElement | AssignmentPattern | MemberExpression; -export declare type PrimaryExpression = ArrayExpression | ArrayPattern | ClassExpression | FunctionExpression | Identifier | Import | JSXElement | JSXFragment | JSXOpeningElement | Literal | LiteralExpression | MetaProperty | ObjectExpression | ObjectPattern | Super | TemplateLiteral | ThisExpression | TSNullKeyword; -export declare type Property = PropertyComputedName | PropertyNonComputedName; -export declare type PropertyName = PropertyNameComputed | PropertyNameNonComputed; -export declare type PropertyNameComputed = Expression; -export declare type PropertyNameNonComputed = Identifier | StringLiteral | NumberLiteral; -export declare type Statement = BlockStatement | BreakStatement | ContinueStatement | DebuggerStatement | DeclarationStatement | EmptyStatement | ExpressionStatement | IfStatement | IterationStatement | ImportDeclaration | LabeledStatement | TSModuleBlock | ReturnStatement | SwitchStatement | ThrowStatement | TryStatement | VariableDeclaration | WithStatement; -export declare type TSAbstractClassProperty = TSAbstractClassPropertyComputedName | TSAbstractClassPropertyNonComputedName; -export declare type TSAbstractMethodDefinition = TSAbstractMethodDefinitionComputedName | TSAbstractMethodDefinitionNonComputedName; -export declare type TSMethodSignature = TSMethodSignatureComputedName | TSMethodSignatureNonComputedName; -export declare type TSPropertySignature = TSPropertySignatureComputedName | TSPropertySignatureNonComputedName; -export declare type TSEnumMember = TSEnumMemberComputedName | TSEnumMemberNonComputedName; -export declare type TSUnaryExpression = AwaitExpression | LeftHandSideExpression | TSTypeAssertion | UnaryExpression | UpdateExpression; -export declare type TypeElement = TSCallSignatureDeclaration | TSConstructSignatureDeclaration | TSIndexSignature | TSMethodSignature | TSPropertySignature; -export declare type TypeNode = ThisExpression | TSAnyKeyword | TSArrayType | TSBigIntKeyword | TSBooleanKeyword | TSClassImplements | TSConditionalType | TSConstructorType | TSFunctionType | TSImportType | TSIndexedAccessType | TSInferType | TSInterfaceHeritage | TSIntersectionType | TSLiteralType | TSMappedType | TSNeverKeyword | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSOptionalType | TSParenthesizedType | TSRestType | TSStringKeyword | TSSymbolKeyword | TSThisType | TSTupleType | TSTypeLiteral | TSTypeOperator | TSTypePredicate | TSTypeReference | TSTypeQuery | TSUndefinedKeyword | TSUnionType | TSUnknownKeyword | TSVoidKeyword; -interface BinaryExpressionBase extends BaseNode { - operator: string; - left: Expression; - right: Expression; -} -interface CallExpressionBase extends BaseNode { - callee: LeftHandSideExpression; - arguments: Expression[]; - typeParameters?: TSTypeParameterInstantiation; - optional: boolean; -} -interface ClassDeclarationBase extends BaseNode { - typeParameters?: TSTypeParameterDeclaration; - superTypeParameters?: TSTypeParameterInstantiation; - id: Identifier | null; - body: ClassBody; - superClass: LeftHandSideExpression | null; - implements?: ExpressionWithTypeArguments[]; - abstract?: boolean; - declare?: boolean; - decorators?: Decorator[]; -} -/** this should not be directly used - instead use ClassPropertyComputedNameBase or ClassPropertyNonComputedNameBase */ -interface ClassPropertyBase extends BaseNode { - key: PropertyName; - value: Expression | null; - computed: boolean; - static: boolean; - declare: boolean; - readonly?: boolean; - decorators?: Decorator[]; - accessibility?: Accessibility; - optional?: boolean; - definite?: boolean; - typeAnnotation?: TSTypeAnnotation; -} -interface ClassPropertyComputedNameBase extends ClassPropertyBase { - key: PropertyNameComputed; - computed: true; -} -interface ClassPropertyNonComputedNameBase extends ClassPropertyBase { - key: PropertyNameNonComputed; - computed: false; -} -interface FunctionDeclarationBase extends BaseNode { - id: Identifier | null; - generator: boolean; - expression: boolean; - async: boolean; - params: Parameter[]; - body?: BlockStatement | null; - returnType?: TSTypeAnnotation; - typeParameters?: TSTypeParameterDeclaration; - declare?: boolean; -} -interface FunctionSignatureBase extends BaseNode { - params: Parameter[]; - returnType?: TSTypeAnnotation; - typeParameters?: TSTypeParameterDeclaration; -} -interface LiteralBase extends BaseNode { - raw: string; - value: boolean | number | RegExp | string | null; - regex?: { - pattern: string; - flags: string; - }; -} -/** this should not be directly used - instead use MemberExpressionComputedNameBase or MemberExpressionNonComputedNameBase */ -interface MemberExpressionBase extends BaseNode { - object: LeftHandSideExpression; - property: Expression | Identifier; - computed: boolean; - optional: boolean; -} -interface MemberExpressionComputedNameBase extends MemberExpressionBase { - property: Expression; - computed: true; -} -interface MemberExpressionNonComputedNameBase extends MemberExpressionBase { - property: Identifier; - computed: false; -} -/** this should not be directly used - instead use MethodDefinitionComputedNameBase or MethodDefinitionNonComputedNameBase */ -interface MethodDefinitionBase extends BaseNode { - key: PropertyName; - value: FunctionExpression | TSEmptyBodyFunctionExpression; - computed: boolean; - static: boolean; - kind: 'method' | 'get' | 'set' | 'constructor'; - decorators?: Decorator[]; - accessibility?: Accessibility; - typeParameters?: TSTypeParameterDeclaration; -} -interface MethodDefinitionComputedNameBase extends MethodDefinitionBase { - key: PropertyNameComputed; - computed: true; -} -interface MethodDefinitionNonComputedNameBase extends MethodDefinitionBase { - key: PropertyNameNonComputed; - computed: false; -} -interface PropertyBase extends BaseNode { - type: AST_NODE_TYPES.Property; - key: PropertyName; - value: Expression | AssignmentPattern | BindingName; - computed: boolean; - method: boolean; - shorthand: boolean; - kind: 'init' | 'get' | 'set'; -} -interface TSEnumMemberBase extends BaseNode { - type: AST_NODE_TYPES.TSEnumMember; - id: PropertyNameNonComputed | PropertyNameComputed; - initializer?: Expression; - computed?: boolean; -} -interface TSHeritageBase extends BaseNode { - expression: Expression; - typeParameters?: TSTypeParameterInstantiation; -} -interface TSMethodSignatureBase extends BaseNode { - type: AST_NODE_TYPES.TSMethodSignature; - key: PropertyName; - computed: boolean; - params: Parameter[]; - optional?: boolean; - returnType?: TSTypeAnnotation; - readonly?: boolean; - typeParameters?: TSTypeParameterDeclaration; - accessibility?: Accessibility; - export?: boolean; - static?: boolean; -} -interface TSPropertySignatureBase extends BaseNode { - type: AST_NODE_TYPES.TSPropertySignature; - key: PropertyName; - optional?: boolean; - computed: boolean; - typeAnnotation?: TSTypeAnnotation; - initializer?: Expression; - readonly?: boolean; - static?: boolean; - export?: boolean; - accessibility?: Accessibility; -} -interface UnaryExpressionBase extends BaseNode { - operator: string; - prefix: boolean; - argument: LeftHandSideExpression | Literal | UnaryExpression; -} -export interface ArrayExpression extends BaseNode { - type: AST_NODE_TYPES.ArrayExpression; - elements: Expression[]; -} -export interface ArrayPattern extends BaseNode { - type: AST_NODE_TYPES.ArrayPattern; - elements: (DestructuringPattern | null)[]; - typeAnnotation?: TSTypeAnnotation; - optional?: boolean; - decorators?: Decorator[]; -} -export interface ArrowFunctionExpression extends BaseNode { - type: AST_NODE_TYPES.ArrowFunctionExpression; - generator: boolean; - id: null; - params: Parameter[]; - body: Expression | BlockStatement; - async: boolean; - expression: boolean; - returnType?: TSTypeAnnotation; - typeParameters?: TSTypeParameterDeclaration; -} -export interface AssignmentExpression extends BinaryExpressionBase { - type: AST_NODE_TYPES.AssignmentExpression; -} -export interface AssignmentPattern extends BaseNode { - type: AST_NODE_TYPES.AssignmentPattern; - left: BindingName; - right?: Expression; - typeAnnotation?: TSTypeAnnotation; - optional?: boolean; - decorators?: Decorator[]; -} -export interface AwaitExpression extends BaseNode { - type: AST_NODE_TYPES.AwaitExpression; - argument: TSUnaryExpression; -} -export interface BigIntLiteral extends LiteralBase { - type: AST_NODE_TYPES.BigIntLiteral; -} -export interface BinaryExpression extends BinaryExpressionBase { - type: AST_NODE_TYPES.BinaryExpression; -} -export interface BlockStatement extends BaseNode { - type: AST_NODE_TYPES.BlockStatement; - body: Statement[]; -} -export interface BooleanLiteral extends LiteralBase { - type: AST_NODE_TYPES.Literal; - value: boolean; -} -export interface BreakStatement extends BaseNode { - type: AST_NODE_TYPES.BreakStatement; - label: Identifier | null; -} -export interface CallExpression extends CallExpressionBase { - type: AST_NODE_TYPES.CallExpression; - optional: false; -} -export interface CatchClause extends BaseNode { - type: AST_NODE_TYPES.CatchClause; - param: BindingName | null; - body: BlockStatement; -} -export interface ClassBody extends BaseNode { - type: AST_NODE_TYPES.ClassBody; - body: ClassElement[]; -} -export interface ClassDeclaration extends ClassDeclarationBase { - type: AST_NODE_TYPES.ClassDeclaration; -} -export interface ClassExpression extends ClassDeclarationBase { - type: AST_NODE_TYPES.ClassExpression; -} -export interface ClassPropertyComputedName extends ClassPropertyComputedNameBase { - type: AST_NODE_TYPES.ClassProperty; -} -export interface ClassPropertyNonComputedName extends ClassPropertyNonComputedNameBase { - type: AST_NODE_TYPES.ClassProperty; -} -export interface ConditionalExpression extends BaseNode { - type: AST_NODE_TYPES.ConditionalExpression; - test: Expression; - consequent: Expression; - alternate: Expression; -} -export interface ContinueStatement extends BaseNode { - type: AST_NODE_TYPES.ContinueStatement; - label: Identifier | null; -} -export interface DebuggerStatement extends BaseNode { - type: AST_NODE_TYPES.DebuggerStatement; -} -export interface Decorator extends BaseNode { - type: AST_NODE_TYPES.Decorator; - expression: LeftHandSideExpression; -} -export interface DoWhileStatement extends BaseNode { - type: AST_NODE_TYPES.DoWhileStatement; - test: Expression; - body: Statement; -} -export interface EmptyStatement extends BaseNode { - type: AST_NODE_TYPES.EmptyStatement; -} -export interface ExportAllDeclaration extends BaseNode { - type: AST_NODE_TYPES.ExportAllDeclaration; - source: Expression | null; -} -export interface ExportDefaultDeclaration extends BaseNode { - type: AST_NODE_TYPES.ExportDefaultDeclaration; - declaration: ExportDeclaration | Expression; -} -export interface ExportNamedDeclaration extends BaseNode { - type: AST_NODE_TYPES.ExportNamedDeclaration; - declaration: ExportDeclaration | null; - specifiers: ExportSpecifier[]; - source: Expression | null; -} -export interface ExportSpecifier extends BaseNode { - type: AST_NODE_TYPES.ExportSpecifier; - local: Identifier; - exported: Identifier; -} -export interface ExpressionStatement extends BaseNode { - type: AST_NODE_TYPES.ExpressionStatement; - expression: Expression; - directive?: string; -} -export interface ForInStatement extends BaseNode { - type: AST_NODE_TYPES.ForInStatement; - left: ForInitialiser; - right: Expression; - body: Statement; -} -export interface ForOfStatement extends BaseNode { - type: AST_NODE_TYPES.ForOfStatement; - left: ForInitialiser; - right: Expression; - body: Statement; - await: boolean; -} -export interface ForStatement extends BaseNode { - type: AST_NODE_TYPES.ForStatement; - init: Expression | ForInitialiser | null; - test: Expression | null; - update: Expression | null; - body: Statement; -} -export interface FunctionDeclaration extends FunctionDeclarationBase { - type: AST_NODE_TYPES.FunctionDeclaration; - body: BlockStatement; -} -export interface FunctionExpression extends FunctionDeclarationBase { - type: AST_NODE_TYPES.FunctionExpression; -} -export interface Identifier extends BaseNode { - type: AST_NODE_TYPES.Identifier; - name: string; - typeAnnotation?: TSTypeAnnotation; - optional?: boolean; - decorators?: Decorator[]; -} -export interface IfStatement extends BaseNode { - type: AST_NODE_TYPES.IfStatement; - test: Expression; - consequent: Statement; - alternate: Statement | null; -} -export interface Import extends BaseNode { - type: AST_NODE_TYPES.Import; -} -export interface ImportDeclaration extends BaseNode { - type: AST_NODE_TYPES.ImportDeclaration; - source: Literal; - specifiers: ImportClause[]; -} -export interface ImportDefaultSpecifier extends BaseNode { - type: AST_NODE_TYPES.ImportDefaultSpecifier; - local: Identifier; -} -export interface ImportNamespaceSpecifier extends BaseNode { - type: AST_NODE_TYPES.ImportNamespaceSpecifier; - local: Identifier; -} -export interface ImportSpecifier extends BaseNode { - type: AST_NODE_TYPES.ImportSpecifier; - local: Identifier; - imported: Identifier; -} -export interface JSXAttribute extends BaseNode { - type: AST_NODE_TYPES.JSXAttribute; - name: JSXIdentifier; - value: Literal | JSXExpression | null; -} -export interface JSXClosingElement extends BaseNode { - type: AST_NODE_TYPES.JSXClosingElement; - name: JSXTagNameExpression; -} -export interface JSXClosingFragment extends BaseNode { - type: AST_NODE_TYPES.JSXClosingFragment; -} -export interface JSXElement extends BaseNode { - type: AST_NODE_TYPES.JSXElement; - openingElement: JSXOpeningElement; - closingElement: JSXClosingElement | null; - children: JSXChild[]; -} -export interface JSXEmptyExpression extends BaseNode { - type: AST_NODE_TYPES.JSXEmptyExpression; -} -export interface JSXExpressionContainer extends BaseNode { - type: AST_NODE_TYPES.JSXExpressionContainer; - expression: Expression | JSXEmptyExpression; -} -export interface JSXFragment extends BaseNode { - type: AST_NODE_TYPES.JSXFragment; - openingFragment: JSXOpeningFragment; - closingFragment: JSXClosingFragment; - children: JSXChild[]; -} -export interface JSXIdentifier extends BaseNode { - type: AST_NODE_TYPES.JSXIdentifier; - name: string; -} -export interface JSXMemberExpression extends BaseNode { - type: AST_NODE_TYPES.JSXMemberExpression; - object: JSXTagNameExpression; - property: JSXIdentifier; -} -export interface JSXOpeningElement extends BaseNode { - type: AST_NODE_TYPES.JSXOpeningElement; - typeParameters?: TSTypeParameterInstantiation; - selfClosing: boolean; - name: JSXTagNameExpression; - attributes: JSXAttribute[]; -} -export interface JSXOpeningFragment extends BaseNode { - type: AST_NODE_TYPES.JSXOpeningFragment; -} -export interface JSXSpreadAttribute extends BaseNode { - type: AST_NODE_TYPES.JSXSpreadAttribute; - argument: Expression; -} -export interface JSXSpreadChild extends BaseNode { - type: AST_NODE_TYPES.JSXSpreadChild; - expression: Expression | JSXEmptyExpression; -} -export interface JSXText extends BaseNode { - type: AST_NODE_TYPES.JSXText; - value: string; - raw: string; -} -export interface LabeledStatement extends BaseNode { - type: AST_NODE_TYPES.LabeledStatement; - label: Identifier; - body: Statement; -} -export interface LogicalExpression extends BinaryExpressionBase { - type: AST_NODE_TYPES.LogicalExpression; -} -export interface MemberExpressionComputedName extends MemberExpressionComputedNameBase { - type: AST_NODE_TYPES.MemberExpression; - optional: false; -} -export interface MemberExpressionNonComputedName extends MemberExpressionNonComputedNameBase { - type: AST_NODE_TYPES.MemberExpression; - optional: false; -} -export interface MetaProperty extends BaseNode { - type: AST_NODE_TYPES.MetaProperty; - meta: Identifier; - property: Identifier; -} -export interface MethodDefinitionComputedName extends MethodDefinitionComputedNameBase { - type: AST_NODE_TYPES.MethodDefinition; -} -export interface MethodDefinitionNonComputedName extends MethodDefinitionNonComputedNameBase { - type: AST_NODE_TYPES.MethodDefinition; -} -export interface NewExpression extends BaseNode { - type: AST_NODE_TYPES.NewExpression; - callee: LeftHandSideExpression; - arguments: Expression[]; - typeParameters?: TSTypeParameterInstantiation; -} -export interface NumberLiteral extends LiteralBase { - type: AST_NODE_TYPES.Literal; - value: number; -} -export interface NullLiteral extends LiteralBase { - type: AST_NODE_TYPES.Literal; - value: null; -} -export interface ObjectExpression extends BaseNode { - type: AST_NODE_TYPES.ObjectExpression; - properties: ObjectLiteralElementLike[]; -} -export interface ObjectPattern extends BaseNode { - type: AST_NODE_TYPES.ObjectPattern; - properties: (Property | RestElement)[]; - typeAnnotation?: TSTypeAnnotation; - optional?: boolean; - decorators?: Decorator[]; -} -export interface OptionalCallExpression extends CallExpressionBase { - type: AST_NODE_TYPES.OptionalCallExpression; - optional: boolean; -} -export interface OptionalMemberExpressionComputedName extends MemberExpressionComputedNameBase { - type: AST_NODE_TYPES.OptionalMemberExpression; - optional: boolean; -} -export interface OptionalMemberExpressionNonComputedName extends MemberExpressionNonComputedNameBase { - type: AST_NODE_TYPES.OptionalMemberExpression; - optional: boolean; -} -export interface Program extends BaseNode { - type: AST_NODE_TYPES.Program; - body: Statement[]; - sourceType: 'module' | 'script'; - comments?: Comment[]; - tokens?: Token[]; -} -export interface PropertyComputedName extends PropertyBase { - key: PropertyNameComputed; - computed: true; -} -export interface PropertyNonComputedName extends PropertyBase { - key: PropertyNameNonComputed; - computed: false; -} -export interface RegExpLiteral extends LiteralBase { - type: AST_NODE_TYPES.Literal; - value: RegExp; -} -export interface RestElement extends BaseNode { - type: AST_NODE_TYPES.RestElement; - argument: DestructuringPattern; - typeAnnotation?: TSTypeAnnotation; - optional?: boolean; - value?: AssignmentPattern; - decorators?: Decorator[]; -} -export interface ReturnStatement extends BaseNode { - type: AST_NODE_TYPES.ReturnStatement; - argument: Expression | null; -} -export interface SequenceExpression extends BaseNode { - type: AST_NODE_TYPES.SequenceExpression; - expressions: Expression[]; -} -export interface SpreadElement extends BaseNode { - type: AST_NODE_TYPES.SpreadElement; - argument: Expression; -} -export interface StringLiteral extends LiteralBase { - type: AST_NODE_TYPES.Literal; - value: string; -} -export interface Super extends BaseNode { - type: AST_NODE_TYPES.Super; -} -export interface SwitchCase extends BaseNode { - type: AST_NODE_TYPES.SwitchCase; - test: Expression | null; - consequent: Statement[]; -} -export interface SwitchStatement extends BaseNode { - type: AST_NODE_TYPES.SwitchStatement; - discriminant: Expression; - cases: SwitchCase[]; -} -export interface TaggedTemplateExpression extends BaseNode { - type: AST_NODE_TYPES.TaggedTemplateExpression; - typeParameters?: TSTypeParameterInstantiation; - tag: LeftHandSideExpression; - quasi: TemplateLiteral; -} -export interface TemplateElement extends BaseNode { - type: AST_NODE_TYPES.TemplateElement; - value: { - raw: string; - cooked: string; - }; - tail: boolean; -} -export interface TemplateLiteral extends BaseNode { - type: AST_NODE_TYPES.TemplateLiteral; - quasis: TemplateElement[]; - expressions: Expression[]; -} -export interface ThisExpression extends BaseNode { - type: AST_NODE_TYPES.ThisExpression; -} -export interface ThrowStatement extends BaseNode { - type: AST_NODE_TYPES.ThrowStatement; - argument: Statement | TSAsExpression | null; -} -export interface TryStatement extends BaseNode { - type: AST_NODE_TYPES.TryStatement; - block: BlockStatement; - handler: CatchClause | null; - finalizer: BlockStatement; -} -export interface TSAbstractClassPropertyComputedName extends ClassPropertyComputedNameBase { - type: AST_NODE_TYPES.TSAbstractClassProperty; -} -export interface TSAbstractClassPropertyNonComputedName extends ClassPropertyNonComputedNameBase { - type: AST_NODE_TYPES.TSAbstractClassProperty; -} -export interface TSAbstractKeyword extends BaseNode { - type: AST_NODE_TYPES.TSAbstractKeyword; -} -export interface TSAbstractMethodDefinitionComputedName extends MethodDefinitionComputedNameBase { - type: AST_NODE_TYPES.TSAbstractMethodDefinition; -} -export interface TSAbstractMethodDefinitionNonComputedName extends MethodDefinitionNonComputedNameBase { - type: AST_NODE_TYPES.TSAbstractMethodDefinition; -} -export interface TSAnyKeyword extends BaseNode { - type: AST_NODE_TYPES.TSAnyKeyword; -} -export interface TSArrayType extends BaseNode { - type: AST_NODE_TYPES.TSArrayType; - elementType: TypeNode; -} -export interface TSAsExpression extends BaseNode { - type: AST_NODE_TYPES.TSAsExpression; - expression: Expression; - typeAnnotation: TypeNode; -} -export interface TSAsyncKeyword extends BaseNode { - type: AST_NODE_TYPES.TSAsyncKeyword; -} -export interface TSBigIntKeyword extends BaseNode { - type: AST_NODE_TYPES.TSBigIntKeyword; -} -export interface TSBooleanKeyword extends BaseNode { - type: AST_NODE_TYPES.TSBooleanKeyword; -} -export interface TSCallSignatureDeclaration extends FunctionSignatureBase { - type: AST_NODE_TYPES.TSCallSignatureDeclaration; -} -export interface TSClassImplements extends TSHeritageBase { - type: AST_NODE_TYPES.TSClassImplements; -} -export interface TSConditionalType extends BaseNode { - type: AST_NODE_TYPES.TSConditionalType; - checkType: TypeNode; - extendsType: TypeNode; - trueType: TypeNode; - falseType: TypeNode; -} -export interface TSConstructorType extends FunctionSignatureBase { - type: AST_NODE_TYPES.TSConstructorType; -} -export interface TSConstructSignatureDeclaration extends FunctionSignatureBase { - type: AST_NODE_TYPES.TSConstructSignatureDeclaration; -} -export interface TSDeclareFunction extends FunctionDeclarationBase { - type: AST_NODE_TYPES.TSDeclareFunction; -} -export interface TSDeclareKeyword extends BaseNode { - type: AST_NODE_TYPES.TSDeclareKeyword; -} -export interface TSEmptyBodyFunctionExpression extends FunctionDeclarationBase { - type: AST_NODE_TYPES.TSEmptyBodyFunctionExpression; - body: null; -} -export interface TSEnumDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSEnumDeclaration; - id: Identifier; - members: TSEnumMember[]; - const?: boolean; - declare?: boolean; - modifiers?: Modifier[]; - decorators?: Decorator[]; -} -/** - * this should only really happen in semantically invalid code (errors 1164 and 2452) - * - * VALID: - * enum Foo { ['a'] } - * - * INVALID: - * const x = 'a'; - * enum Foo { [x] } - * enum Bar { ['a' + 'b'] } - */ -export interface TSEnumMemberComputedName extends TSEnumMemberBase { - id: PropertyNameComputed; - computed: true; -} -export interface TSEnumMemberNonComputedName extends TSEnumMemberBase { - id: PropertyNameNonComputed; - computed?: false; -} -export interface TSExportAssignment extends BaseNode { - type: AST_NODE_TYPES.TSExportAssignment; - expression: Expression; -} -export interface TSExportKeyword extends BaseNode { - type: AST_NODE_TYPES.TSExportKeyword; -} -export interface TSExternalModuleReference extends BaseNode { - type: AST_NODE_TYPES.TSExternalModuleReference; - expression: Expression; -} -export interface TSFunctionType extends FunctionSignatureBase { - type: AST_NODE_TYPES.TSFunctionType; -} -export interface TSImportEqualsDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSImportEqualsDeclaration; - id: Identifier; - moduleReference: EntityName | TSExternalModuleReference; - isExport: boolean; -} -export interface TSImportType extends BaseNode { - type: AST_NODE_TYPES.TSImportType; - isTypeOf: boolean; - parameter: TypeNode; - qualifier: EntityName | null; - typeParameters: TSTypeParameterInstantiation | null; -} -export interface TSIndexedAccessType extends BaseNode { - type: AST_NODE_TYPES.TSIndexedAccessType; - objectType: TypeNode; - indexType: TypeNode; -} -export interface TSIndexSignature extends BaseNode { - type: AST_NODE_TYPES.TSIndexSignature; - parameters: Parameter[]; - typeAnnotation?: TSTypeAnnotation; - readonly?: boolean; - accessibility?: Accessibility; - export?: boolean; - static?: boolean; -} -export interface TSInferType extends BaseNode { - type: AST_NODE_TYPES.TSInferType; - typeParameter: TSTypeParameterDeclaration; -} -export interface TSInterfaceDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSInterfaceDeclaration; - body: TSInterfaceBody; - id: Identifier; - typeParameters?: TSTypeParameterDeclaration; - extends?: ExpressionWithTypeArguments[]; - implements?: ExpressionWithTypeArguments[]; - decorators?: Decorator[]; - abstract?: boolean; - declare?: boolean; -} -export interface TSInterfaceBody extends BaseNode { - type: AST_NODE_TYPES.TSInterfaceBody; - body: TypeElement[]; -} -export interface TSInterfaceHeritage extends TSHeritageBase { - type: AST_NODE_TYPES.TSInterfaceHeritage; -} -export interface TSIntersectionType extends BaseNode { - type: AST_NODE_TYPES.TSIntersectionType; - types: TypeNode[]; -} -export interface TSLiteralType extends BaseNode { - type: AST_NODE_TYPES.TSLiteralType; - literal: LiteralExpression | UnaryExpression | UpdateExpression; -} -export interface TSMappedType extends BaseNode { - type: AST_NODE_TYPES.TSMappedType; - typeParameter: TSTypeParameterDeclaration; - readonly?: boolean | '-' | '+'; - optional?: boolean | '-' | '+'; - typeAnnotation?: TypeNode; -} -export interface TSMethodSignatureComputedName extends TSMethodSignatureBase { - key: PropertyNameComputed; - computed: true; -} -export interface TSMethodSignatureNonComputedName extends TSMethodSignatureBase { - key: PropertyNameNonComputed; - computed: false; -} -export interface TSModuleBlock extends BaseNode { - type: AST_NODE_TYPES.TSModuleBlock; - body: Statement[]; -} -export interface TSModuleDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSModuleDeclaration; - id: Identifier | Literal; - body?: TSModuleBlock | TSModuleDeclaration; - global?: boolean; - declare?: boolean; - modifiers?: Modifier[]; -} -export interface TSNamespaceExportDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSNamespaceExportDeclaration; - id: Identifier; -} -export interface TSNeverKeyword extends BaseNode { - type: AST_NODE_TYPES.TSNeverKeyword; -} -export interface TSNonNullExpression extends BaseNode { - type: AST_NODE_TYPES.TSNonNullExpression; - expression: Expression; -} -export interface TSNullKeyword extends BaseNode { - type: AST_NODE_TYPES.TSNullKeyword; -} -export interface TSNumberKeyword extends BaseNode { - type: AST_NODE_TYPES.TSNumberKeyword; -} -export interface TSObjectKeyword extends BaseNode { - type: AST_NODE_TYPES.TSObjectKeyword; -} -export interface TSOptionalType extends BaseNode { - type: AST_NODE_TYPES.TSOptionalType; - typeAnnotation: TypeNode; -} -export interface TSParameterProperty extends BaseNode { - type: AST_NODE_TYPES.TSParameterProperty; - accessibility?: Accessibility; - readonly?: boolean; - static?: boolean; - export?: boolean; - parameter: AssignmentPattern | BindingName | RestElement; - decorators?: Decorator[]; -} -export interface TSParenthesizedType extends BaseNode { - type: AST_NODE_TYPES.TSParenthesizedType; - typeAnnotation: TypeNode; -} -export interface TSPropertySignatureComputedName extends TSPropertySignatureBase { - key: PropertyNameComputed; - computed: true; -} -export interface TSPropertySignatureNonComputedName extends TSPropertySignatureBase { - key: PropertyNameNonComputed; - computed: false; -} -export interface TSPublicKeyword extends BaseNode { - type: AST_NODE_TYPES.TSPublicKeyword; -} -export interface TSPrivateKeyword extends BaseNode { - type: AST_NODE_TYPES.TSPrivateKeyword; -} -export interface TSProtectedKeyword extends BaseNode { - type: AST_NODE_TYPES.TSProtectedKeyword; -} -export interface TSQualifiedName extends BaseNode { - type: AST_NODE_TYPES.TSQualifiedName; - left: EntityName; - right: Identifier; -} -export interface TSReadonlyKeyword extends BaseNode { - type: AST_NODE_TYPES.TSReadonlyKeyword; -} -export interface TSRestType extends BaseNode { - type: AST_NODE_TYPES.TSRestType; - typeAnnotation: TypeNode; -} -export interface TSStaticKeyword extends BaseNode { - type: AST_NODE_TYPES.TSStaticKeyword; -} -export interface TSStringKeyword extends BaseNode { - type: AST_NODE_TYPES.TSStringKeyword; -} -export interface TSSymbolKeyword extends BaseNode { - type: AST_NODE_TYPES.TSSymbolKeyword; -} -export interface TSThisType extends BaseNode { - type: AST_NODE_TYPES.TSThisType; -} -export interface TSTupleType extends BaseNode { - type: AST_NODE_TYPES.TSTupleType; - elementTypes: TypeNode[]; -} -export interface TSTypeAliasDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSTypeAliasDeclaration; - id: Identifier; - typeAnnotation: TypeNode; - declare?: boolean; - typeParameters?: TSTypeParameterDeclaration; -} -export interface TSTypeAnnotation extends BaseNode { - type: AST_NODE_TYPES.TSTypeAnnotation; - typeAnnotation: TypeNode; -} -export interface TSTypeAssertion extends BaseNode { - type: AST_NODE_TYPES.TSTypeAssertion; - typeAnnotation: TypeNode; - expression: Expression; -} -export interface TSTypeLiteral extends BaseNode { - type: AST_NODE_TYPES.TSTypeLiteral; - members: TypeElement[]; -} -export interface TSTypeOperator extends BaseNode { - type: AST_NODE_TYPES.TSTypeOperator; - operator: 'keyof' | 'unique' | 'readonly'; - typeAnnotation?: TypeNode; -} -export interface TSTypeParameter extends BaseNode { - type: AST_NODE_TYPES.TSTypeParameter; - name: Identifier; - constraint?: TypeNode; - default?: TypeNode; -} -export interface TSTypeParameterDeclaration extends BaseNode { - type: AST_NODE_TYPES.TSTypeParameterDeclaration; - params: TSTypeParameter[]; -} -export interface TSTypeParameterInstantiation extends BaseNode { - type: AST_NODE_TYPES.TSTypeParameterInstantiation; - params: TypeNode[]; -} -export interface TSTypePredicate extends BaseNode { - type: AST_NODE_TYPES.TSTypePredicate; - asserts: boolean; - parameterName: Identifier | TSThisType; - typeAnnotation: TSTypeAnnotation | null; -} -export interface TSTypeQuery extends BaseNode { - type: AST_NODE_TYPES.TSTypeQuery; - exprName: EntityName; -} -export interface TSTypeReference extends BaseNode { - type: AST_NODE_TYPES.TSTypeReference; - typeName: EntityName; - typeParameters?: TSTypeParameterInstantiation; -} -export interface TSUndefinedKeyword extends BaseNode { - type: AST_NODE_TYPES.TSUndefinedKeyword; -} -export interface TSUnionType extends BaseNode { - type: AST_NODE_TYPES.TSUnionType; - types: TypeNode[]; -} -export interface TSUnknownKeyword extends BaseNode { - type: AST_NODE_TYPES.TSUnknownKeyword; -} -export interface TSVoidKeyword extends BaseNode { - type: AST_NODE_TYPES.TSVoidKeyword; -} -export interface UpdateExpression extends UnaryExpressionBase { - type: AST_NODE_TYPES.UpdateExpression; - operator: '++' | '--'; -} -export interface UnaryExpression extends UnaryExpressionBase { - type: AST_NODE_TYPES.UnaryExpression; - operator: '+' | '-' | '!' | '~' | 'delete' | 'void' | 'typeof'; -} -export interface VariableDeclaration extends BaseNode { - type: AST_NODE_TYPES.VariableDeclaration; - declarations: VariableDeclarator[]; - kind: 'let' | 'const' | 'var'; - declare?: boolean; -} -export interface VariableDeclarator extends BaseNode { - type: AST_NODE_TYPES.VariableDeclarator; - id: BindingName; - init: Expression | null; - definite?: boolean; -} -export interface WhileStatement extends BaseNode { - type: AST_NODE_TYPES.WhileStatement; - test: Expression; - body: Statement; -} -export interface WithStatement extends BaseNode { - type: AST_NODE_TYPES.WithStatement; - object: Expression; - body: Statement; -} -export interface YieldExpression extends BaseNode { - type: AST_NODE_TYPES.YieldExpression; - delegate: boolean; - argument?: Expression; -} -export {}; -//# sourceMappingURL=ts-estree.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.d.ts.map deleted file mode 100644 index f8d1d329..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ts-estree.d.ts","sourceRoot":"","sources":["../../src/ts-estree/ts-estree.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.js b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.js deleted file mode 100644 index 47f7a01f..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=ts-estree.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.js.map deleted file mode 100644 index 0b1c09c4..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-estree.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ts-estree.js","sourceRoot":"","sources":["../../src/ts-estree/ts-estree.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts index 1b72d58b..8142fc45 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts @@ -1,4 +1,8 @@ import * as ts from 'typescript'; +declare module 'typescript' { + interface NamedTupleMember extends ts.Node { + } +} export declare type TSToken = ts.Token; -export declare type TSNode = ts.Node & (ts.Modifier | ts.Identifier | ts.QualifiedName | ts.ComputedPropertyName | ts.Decorator | ts.TypeParameterDeclaration | ts.CallSignatureDeclaration | ts.ConstructSignatureDeclaration | ts.VariableDeclaration | ts.VariableDeclarationList | ts.ParameterDeclaration | ts.BindingElement | ts.PropertySignature | ts.PropertyDeclaration | ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.SpreadAssignment | ts.ObjectBindingPattern | ts.ArrayBindingPattern | ts.FunctionDeclaration | ts.MethodSignature | ts.MethodDeclaration | ts.ConstructorDeclaration | ts.SemicolonClassElement | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.IndexSignatureDeclaration | ts.KeywordTypeNode | ts.ImportTypeNode | ts.ThisTypeNode | ts.ConstructorTypeNode | ts.FunctionTypeNode | ts.TypeReferenceNode | ts.TypePredicateNode | ts.TypeQueryNode | ts.TypeLiteralNode | ts.ArrayTypeNode | ts.TupleTypeNode | ts.OptionalTypeNode | ts.RestTypeNode | ts.UnionTypeNode | ts.IntersectionTypeNode | ts.ConditionalTypeNode | ts.InferTypeNode | ts.ParenthesizedTypeNode | ts.TypeOperatorNode | ts.IndexedAccessTypeNode | ts.MappedTypeNode | ts.LiteralTypeNode | ts.StringLiteral | ts.OmittedExpression | ts.PartiallyEmittedExpression | ts.PrefixUnaryExpression | ts.PostfixUnaryExpression | ts.NullLiteral | ts.BooleanLiteral | ts.ThisExpression | ts.SuperExpression | ts.ImportExpression | ts.DeleteExpression | ts.TypeOfExpression | ts.VoidExpression | ts.AwaitExpression | ts.YieldExpression | ts.SyntheticExpression | ts.BinaryExpression | ts.ConditionalExpression | ts.FunctionExpression | ts.ArrowFunction | ts.RegularExpressionLiteral | ts.NoSubstitutionTemplateLiteral | ts.NumericLiteral | ts.BigIntLiteral | ts.TemplateHead | ts.TemplateMiddle | ts.TemplateTail | ts.TemplateExpression | ts.TemplateSpan | ts.ParenthesizedExpression | ts.ArrayLiteralExpression | ts.SpreadElement | ts.ObjectLiteralExpression | ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.CallExpression | ts.ExpressionWithTypeArguments | ts.NewExpression | ts.TaggedTemplateExpression | ts.AsExpression | ts.TypeAssertion | ts.NonNullExpression | ts.MetaProperty | ts.JsxElement | ts.JsxOpeningElement | ts.JsxSelfClosingElement | ts.JsxFragment | ts.JsxOpeningFragment | ts.JsxClosingFragment | ts.JsxAttribute | ts.JsxSpreadAttribute | ts.JsxClosingElement | ts.JsxExpression | ts.JsxText | ts.NotEmittedStatement | ts.CommaListExpression | ts.EmptyStatement | ts.DebuggerStatement | ts.MissingDeclaration | ts.Block | ts.VariableStatement | ts.ExpressionStatement | ts.IfStatement | ts.DoStatement | ts.WhileStatement | ts.ForStatement | ts.ForInStatement | ts.ForOfStatement | ts.BreakStatement | ts.ContinueStatement | ts.ReturnStatement | ts.WithStatement | ts.SwitchStatement | ts.CaseBlock | ts.CaseClause | ts.DefaultClause | ts.LabeledStatement | ts.ThrowStatement | ts.TryStatement | ts.CatchClause | ts.ClassDeclaration | ts.ClassExpression | ts.InterfaceDeclaration | ts.HeritageClause | ts.TypeAliasDeclaration | ts.EnumMember | ts.EnumDeclaration | ts.ModuleDeclaration | ts.ModuleBlock | ts.ImportEqualsDeclaration | ts.ExternalModuleReference | ts.ImportDeclaration | ts.ImportClause | ts.NamespaceImport | ts.NamespaceExportDeclaration | ts.ExportDeclaration | ts.NamedImports | ts.NamedExports | ts.ImportSpecifier | ts.ExportSpecifier | ts.ExportAssignment | ts.CommentRange | ts.SourceFile | ts.Bundle | ts.InputFiles | ts.UnparsedSource | ts.JsonMinusNumericLiteral | ts.JSDoc | ts.JSDocTypeExpression | ts.JSDocUnknownTag | ts.JSDocAugmentsTag | ts.JSDocClassTag | ts.JSDocEnumTag | ts.JSDocThisTag | ts.JSDocTemplateTag | ts.JSDocReturnTag | ts.JSDocTypeTag | ts.JSDocTypedefTag | ts.JSDocCallbackTag | ts.JSDocSignature | ts.JSDocPropertyTag | ts.JSDocParameterTag | ts.JSDocTypeLiteral | ts.JSDocFunctionType | ts.JSDocAllType | ts.JSDocUnknownType | ts.JSDocNullableType | ts.JSDocNonNullableType | ts.JSDocOptionalType | ts.JSDocVariadicType | ts.JSDocAuthorTag); +export declare type TSNode = ts.Modifier | ts.Identifier | ts.QualifiedName | ts.ComputedPropertyName | ts.Decorator | ts.TypeParameterDeclaration | ts.CallSignatureDeclaration | ts.ConstructSignatureDeclaration | ts.VariableDeclaration | ts.VariableDeclarationList | ts.ParameterDeclaration | ts.BindingElement | ts.PropertySignature | ts.PropertyDeclaration | ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.SpreadAssignment | ts.ObjectBindingPattern | ts.ArrayBindingPattern | ts.FunctionDeclaration | ts.MethodSignature | ts.MethodDeclaration | ts.ConstructorDeclaration | ts.SemicolonClassElement | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.IndexSignatureDeclaration | ts.KeywordTypeNode | ts.ImportTypeNode | ts.ThisTypeNode | ts.ConstructorTypeNode | ts.FunctionTypeNode | ts.TypeReferenceNode | ts.TypePredicateNode | ts.TypeQueryNode | ts.TypeLiteralNode | ts.ArrayTypeNode | ts.NamedTupleMember | ts.TupleTypeNode | ts.OptionalTypeNode | ts.RestTypeNode | ts.UnionTypeNode | ts.IntersectionTypeNode | ts.ConditionalTypeNode | ts.InferTypeNode | ts.ParenthesizedTypeNode | ts.TypeOperatorNode | ts.IndexedAccessTypeNode | ts.MappedTypeNode | ts.LiteralTypeNode | ts.StringLiteral | ts.OmittedExpression | ts.PartiallyEmittedExpression | ts.PrefixUnaryExpression | ts.PostfixUnaryExpression | ts.NullLiteral | ts.BooleanLiteral | ts.ThisExpression | ts.SuperExpression | ts.ImportExpression | ts.DeleteExpression | ts.TypeOfExpression | ts.VoidExpression | ts.AwaitExpression | ts.YieldExpression | ts.SyntheticExpression | ts.BinaryExpression | ts.ConditionalExpression | ts.FunctionExpression | ts.ArrowFunction | ts.RegularExpressionLiteral | ts.NoSubstitutionTemplateLiteral | ts.NumericLiteral | ts.BigIntLiteral | ts.TemplateHead | ts.TemplateMiddle | ts.TemplateTail | ts.TemplateExpression | ts.TemplateSpan | ts.ParenthesizedExpression | ts.ArrayLiteralExpression | ts.SpreadElement | ts.ObjectLiteralExpression | ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.CallExpression | ts.ExpressionWithTypeArguments | ts.NewExpression | ts.TaggedTemplateExpression | ts.AsExpression | ts.TypeAssertion | ts.NonNullExpression | ts.MetaProperty | ts.JsxElement | ts.JsxOpeningElement | ts.JsxSelfClosingElement | ts.JsxFragment | ts.JsxOpeningFragment | ts.JsxClosingFragment | ts.JsxAttribute | ts.JsxSpreadAttribute | ts.JsxClosingElement | ts.JsxExpression | ts.JsxText | ts.NotEmittedStatement | ts.CommaListExpression | ts.EmptyStatement | ts.DebuggerStatement | ts.MissingDeclaration | ts.Block | ts.VariableStatement | ts.ExpressionStatement | ts.IfStatement | ts.DoStatement | ts.WhileStatement | ts.ForStatement | ts.ForInStatement | ts.ForOfStatement | ts.BreakStatement | ts.ContinueStatement | ts.ReturnStatement | ts.WithStatement | ts.SwitchStatement | ts.CaseBlock | ts.CaseClause | ts.DefaultClause | ts.LabeledStatement | ts.ThrowStatement | ts.TryStatement | ts.CatchClause | ts.ClassDeclaration | ts.ClassExpression | ts.InterfaceDeclaration | ts.HeritageClause | ts.TypeAliasDeclaration | ts.EnumMember | ts.EnumDeclaration | ts.ModuleDeclaration | ts.ModuleBlock | ts.ImportEqualsDeclaration | ts.ExternalModuleReference | ts.ImportDeclaration | ts.ImportClause | ts.NamespaceImport | ts.NamespaceExportDeclaration | ts.ExportDeclaration | ts.NamedImports | ts.NamedExports | ts.ImportSpecifier | ts.ExportSpecifier | ts.ExportAssignment | ts.SourceFile | ts.Bundle | ts.InputFiles | ts.UnparsedSource | ts.JsonMinusNumericLiteral | ts.JSDoc | ts.JSDocTypeExpression | ts.JSDocUnknownTag | ts.JSDocAugmentsTag | ts.JSDocClassTag | ts.JSDocEnumTag | ts.JSDocThisTag | ts.JSDocTemplateTag | ts.JSDocReturnTag | ts.JSDocTypeTag | ts.JSDocTypedefTag | ts.JSDocCallbackTag | ts.JSDocSignature | ts.JSDocPropertyTag | ts.JSDocParameterTag | ts.JSDocTypeLiteral | ts.JSDocFunctionType | ts.JSDocAllType | ts.JSDocUnknownType | ts.JSDocNullableType | ts.JSDocNonNullableType | ts.JSDocOptionalType | ts.JSDocVariadicType | ts.JSDocAuthorTag; //# sourceMappingURL=ts-nodes.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map index 16a4e633..aacaf819 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"ts-nodes.d.ts","sourceRoot":"","sources":["../../src/ts-estree/ts-nodes.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ts-nodes.d.ts","sourceRoot":"","sources":["../../src/ts-estree/ts-nodes.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts rename to node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts.map rename to node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js b/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js rename to node_modules/@typescript-eslint/typescript-estree/dist/version-check.js diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js.map similarity index 100% rename from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js.map rename to node_modules/@typescript-eslint/typescript-estree/dist/version-check.js.map diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.d.ts deleted file mode 100644 index d1198260..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as eslintVisitorKeys from 'eslint-visitor-keys'; -export declare const visitorKeys: eslintVisitorKeys.VisitorKeys; -//# sourceMappingURL=visitor-keys.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.d.ts.map deleted file mode 100644 index 6e7ea9e8..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"visitor-keys.d.ts","sourceRoot":"","sources":["../src/visitor-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAAiB,MAAM,qBAAqB,CAAC;AAEzD,eAAO,MAAM,WAAW,+BA2HtB,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.js b/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.js deleted file mode 100644 index 01e880e3..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.js +++ /dev/null @@ -1,134 +0,0 @@ -"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 }); -const eslintVisitorKeys = __importStar(require("eslint-visitor-keys")); -exports.visitorKeys = eslintVisitorKeys.unionWith({ - // Additional estree nodes. - Import: [], - // Additional Properties. - ArrayPattern: ['decorators', 'elements', 'typeAnnotation'], - ArrowFunctionExpression: ['typeParameters', 'params', 'returnType', 'body'], - ClassDeclaration: [ - 'decorators', - 'id', - 'typeParameters', - 'superClass', - 'superTypeParameters', - 'implements', - 'body', - ], - ClassExpression: [ - 'decorators', - 'id', - 'typeParameters', - 'superClass', - 'superTypeParameters', - 'implements', - 'body', - ], - TaggedTemplateExpression: ['tag', 'typeParameters', 'quasi'], - FunctionDeclaration: ['id', 'typeParameters', 'params', 'returnType', 'body'], - FunctionExpression: ['id', 'typeParameters', 'params', 'returnType', 'body'], - Identifier: ['decorators', 'typeAnnotation'], - MethodDefinition: ['decorators', 'key', 'value'], - ObjectPattern: ['decorators', 'properties', 'typeAnnotation'], - RestElement: ['decorators', 'argument', 'typeAnnotation'], - NewExpression: ['callee', 'typeParameters', 'arguments'], - CallExpression: ['callee', 'typeParameters', 'arguments'], - // JSX - JSXOpeningElement: ['name', 'typeParameters', 'attributes'], - JSXClosingFragment: [], - JSXOpeningFragment: [], - JSXSpreadChild: ['expression'], - // Additional Nodes. - BigIntLiteral: [], - ClassProperty: ['decorators', 'key', 'typeAnnotation', 'value'], - Decorator: ['expression'], - OptionalCallExpression: ['callee', 'typeParameters', 'arguments'], - OptionalMemberExpression: eslintVisitorKeys.KEYS.MemberExpression, - TSAbstractClassProperty: ['decorators', 'key', 'typeAnnotation', 'value'], - TSAbstractKeyword: [], - TSAbstractMethodDefinition: ['key', 'value'], - TSAnyKeyword: [], - TSArrayType: ['elementType'], - TSAsExpression: ['expression', 'typeAnnotation'], - TSAsyncKeyword: [], - TSBigIntKeyword: [], - TSBooleanKeyword: [], - TSCallSignatureDeclaration: ['typeParameters', 'params', 'returnType'], - TSClassImplements: ['expression', 'typeParameters'], - TSConditionalType: ['checkType', 'extendsType', 'trueType', 'falseType'], - TSConstructSignatureDeclaration: ['typeParameters', 'params', 'returnType'], - TSConstructorType: ['typeParameters', 'params', 'returnType'], - TSDeclareFunction: ['id', 'typeParameters', 'params', 'returnType', 'body'], - TSDeclareKeyword: [], - TSEmptyBodyFunctionExpression: [ - 'id', - 'typeParameters', - 'params', - 'returnType', - ], - TSEnumDeclaration: ['id', 'members'], - TSEnumMember: ['id', 'initializer'], - TSExportAssignment: ['expression'], - TSExportKeyword: [], - TSExternalModuleReference: ['expression'], - TSImportType: ['parameter', 'qualifier', 'typeParameters'], - TSInferType: ['typeParameter'], - TSLiteralType: ['literal'], - TSIntersectionType: ['types'], - TSIndexedAccessType: ['indexType', 'objectType'], - TSIndexSignature: ['parameters', 'typeAnnotation'], - TSInterfaceBody: ['body'], - TSInterfaceDeclaration: ['id', 'typeParameters', 'extends', 'body'], - TSInterfaceHeritage: ['expression', 'typeParameters'], - TSImportEqualsDeclaration: ['id', 'moduleReference'], - TSFunctionType: ['typeParameters', 'params', 'returnType'], - TSMappedType: ['typeParameter', 'typeAnnotation'], - TSMethodSignature: ['typeParameters', 'key', 'params', 'returnType'], - TSModuleBlock: ['body'], - TSModuleDeclaration: ['id', 'body'], - TSNamespaceExportDeclaration: ['id'], - TSNonNullExpression: ['expression'], - TSNeverKeyword: [], - TSNullKeyword: [], - TSNumberKeyword: [], - TSObjectKeyword: [], - TSOptionalType: ['typeAnnotation'], - TSParameterProperty: ['decorators', 'parameter'], - TSParenthesizedType: ['typeAnnotation'], - TSPrivateKeyword: [], - TSPropertySignature: ['typeAnnotation', 'key', 'initializer'], - TSProtectedKeyword: [], - TSPublicKeyword: [], - TSQualifiedName: ['left', 'right'], - TSReadonlyKeyword: [], - TSRestType: ['typeAnnotation'], - TSStaticKeyword: [], - TSStringKeyword: [], - TSSymbolKeyword: [], - TSThisType: [], - TSTupleType: ['elementTypes'], - TSTypeAliasDeclaration: ['id', 'typeParameters', 'typeAnnotation'], - TSTypeAnnotation: ['typeAnnotation'], - TSTypeAssertion: ['typeAnnotation', 'expression'], - TSTypeLiteral: ['members'], - TSTypeOperator: ['typeAnnotation'], - TSTypeParameter: ['name', 'constraint', 'default'], - TSTypeParameterDeclaration: ['params'], - TSTypeParameterInstantiation: ['params'], - TSTypePredicate: ['typeAnnotation', 'parameterName'], - TSTypeReference: ['typeName', 'typeParameters'], - TSTypeQuery: ['exprName'], - TSUnionType: ['types'], - TSUndefinedKeyword: [], - TSUnknownKeyword: [], - TSVoidKeyword: [], -}); -//# sourceMappingURL=visitor-keys.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.js.map deleted file mode 100644 index 061adf99..00000000 --- a/node_modules/@typescript-eslint/typescript-estree/dist/visitor-keys.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"visitor-keys.js","sourceRoot":"","sources":["../src/visitor-keys.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver b/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver index 501bb2f5..bb49af14 120000 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver @@ -1 +1 @@ -../../../../semver/bin/semver.js \ No newline at end of file +../../../../jest-circus/node_modules/semver/bin/semver.js \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/CHANGELOG.md b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/CHANGELOG.md new file mode 100644 index 00000000..220af176 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/CHANGELOG.md @@ -0,0 +1,111 @@ +# changes log + +## 7.3.0 + +* Add `subset(r1, r2)` method to determine if `r1` range is entirely + contained by `r2` range. + +## 7.2.3 + +* Fix handling of `includePrelease` mode where version ranges like `1.0.0 - + 2.0.0` would include `3.0.0-pre` and not `1.0.0-pre`. + +## 7.2.2 + +* Fix bug where `2.0.0-pre` would be included in `^1.0.0` if + `includePrerelease` was set to true. + +## 7.2.0 + +* Add `simplifyRange` method to attempt to generate a more human-readable + range expression that is equivalent to a supplied range, for a given set + of versions. + +## 7.1.2 + +* Remove fancy lazy-loading logic, as it was causing problems for webpack + users. + +## 7.1.0 + +* Add `require('semver/preload')` to load the entire module without using + lazy getter methods. + +## 7.0.0 + +* Refactor module into separate files for better tree-shaking +* Drop support for very old node versions, use const/let, `=>` functions, + and classes. + +## 6.3.0 + +* Expose the token enum on the exports + +## 6.2.0 + +* Coerce numbers to strings when passed to semver.coerce() +* Add `rtl` option to coerce from right to left + +## 6.1.3 + +* Handle X-ranges properly in includePrerelease mode + +## 6.1.2 + +* Do not throw when testing invalid version strings + +## 6.1.1 + +* Add options support for semver.coerce() +* Handle undefined version passed to Range.test + +## 6.1.0 + +* Add semver.compareBuild function +* Support `*` in semver.intersects + +## 6.0 + +* Fix `intersects` logic. + + This is technically a bug fix, but since it is also a change to behavior + that may require users updating their code, it is marked as a major + version increment. + +## 5.7 + +* Add `minVersion` method + +## 5.6 + +* Move boolean `loose` param to an options object, with + backwards-compatibility protection. +* Add ability to opt out of special prerelease version handling with + the `includePrerelease` option flag. + +## 5.5 + +* Add version coercion capabilities + +## 5.4 + +* Add intersection checking + +## 5.3 + +* Add `minSatisfying` method + +## 5.2 + +* Add `prerelease(v)` that returns prerelease components + +## 5.1 + +* Add Backus-Naur for ranges +* Remove excessively cute inspection methods + +## 5.0 + +* Remove AMD/Browserified build artifacts +* Fix ltr and gtr when using the `*` range +* Fix for range `*` with a prerelease identifier diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/LICENSE b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/LICENSE new file mode 100644 index 00000000..19129e31 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/README.md b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/README.md new file mode 100644 index 00000000..9bef045a --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/README.md @@ -0,0 +1,566 @@ +semver(1) -- The semantic versioner for npm +=========================================== + +## Install + +```bash +npm install semver +```` + +## Usage + +As a node module: + +```js +const semver = require('semver') + +semver.valid('1.2.3') // '1.2.3' +semver.valid('a.b.c') // null +semver.clean(' =v1.2.3 ') // '1.2.3' +semver.satisfies('1.2.3', '1.x || >=2.5.0 || 5.0.0 - 7.2.3') // true +semver.gt('1.2.3', '9.8.7') // false +semver.lt('1.2.3', '9.8.7') // true +semver.minVersion('>=1.0.0') // '1.0.0' +semver.valid(semver.coerce('v2')) // '2.0.0' +semver.valid(semver.coerce('42.6.7.9.3-alpha')) // '42.6.7' +``` + +You can also just load the module for the function that you care about, if +you'd like to minimize your footprint. + +```js +// load the whole API at once in a single object +const semver = require('semver') + +// or just load the bits you need +// all of them listed here, just pick and choose what you want + +// classes +const SemVer = require('semver/classes/semver') +const Comparator = require('semver/classes/comparator') +const Range = require('semver/classes/range') + +// functions for working with versions +const semverParse = require('semver/functions/parse') +const semverValid = require('semver/functions/valid') +const semverClean = require('semver/functions/clean') +const semverInc = require('semver/functions/inc') +const semverDiff = require('semver/functions/diff') +const semverMajor = require('semver/functions/major') +const semverMinor = require('semver/functions/minor') +const semverPatch = require('semver/functions/patch') +const semverPrerelease = require('semver/functions/prerelease') +const semverCompare = require('semver/functions/compare') +const semverRcompare = require('semver/functions/rcompare') +const semverCompareLoose = require('semver/functions/compare-loose') +const semverCompareBuild = require('semver/functions/compare-build') +const semverSort = require('semver/functions/sort') +const semverRsort = require('semver/functions/rsort') + +// low-level comparators between versions +const semverGt = require('semver/functions/gt') +const semverLt = require('semver/functions/lt') +const semverEq = require('semver/functions/eq') +const semverNeq = require('semver/functions/neq') +const semverGte = require('semver/functions/gte') +const semverLte = require('semver/functions/lte') +const semverCmp = require('semver/functions/cmp') +const semverCoerce = require('semver/functions/coerce') + +// working with ranges +const semverSatisfies = require('semver/functions/satisfies') +const semverMaxSatisfying = require('semver/ranges/max-satisfying') +const semverMinSatisfying = require('semver/ranges/min-satisfying') +const semverToComparators = require('semver/ranges/to-comparators') +const semverMinVersion = require('semver/ranges/min-version') +const semverValidRange = require('semver/ranges/valid') +const semverOutside = require('semver/ranges/outside') +const semverGtr = require('semver/ranges/gtr') +const semverLtr = require('semver/ranges/ltr') +const semverIntersects = require('semver/ranges/intersects') +const simplifyRange = require('semver/ranges/simplify') +const rangeSubset = require('semver/ranges/subset') +``` + +As a command-line utility: + +``` +$ semver -h + +A JavaScript implementation of the https://semver.org/ specification +Copyright Isaac Z. Schlueter + +Usage: semver [options] [ [...]] +Prints valid versions sorted by SemVer precedence + +Options: +-r --range + Print versions that match the specified range. + +-i --increment [] + Increment a version by the specified level. Level can + be one of: major, minor, patch, premajor, preminor, + prepatch, or prerelease. Default level is 'patch'. + Only one version may be specified. + +--preid + Identifier to be used to prefix premajor, preminor, + prepatch or prerelease version increments. + +-l --loose + Interpret versions and ranges loosely + +-p --include-prerelease + Always include prerelease versions in range matching + +-c --coerce + Coerce a string into SemVer if possible + (does not imply --loose) + +--rtl + Coerce version strings right to left + +--ltr + Coerce version strings left to right (default) + +Program exits successfully if any valid version satisfies +all supplied ranges, and prints all satisfying versions. + +If no satisfying versions are found, then exits failure. + +Versions are printed in ascending order, so supplying +multiple versions to the utility will just sort them. +``` + +## Versions + +A "version" is described by the `v2.0.0` specification found at +. + +A leading `"="` or `"v"` character is stripped off and ignored. + +## Ranges + +A `version range` is a set of `comparators` which specify versions +that satisfy the range. + +A `comparator` is composed of an `operator` and a `version`. The set +of primitive `operators` is: + +* `<` Less than +* `<=` Less than or equal to +* `>` Greater than +* `>=` Greater than or equal to +* `=` Equal. If no operator is specified, then equality is assumed, + so this operator is optional, but MAY be included. + +For example, the comparator `>=1.2.7` would match the versions +`1.2.7`, `1.2.8`, `2.5.3`, and `1.3.9`, but not the versions `1.2.6` +or `1.1.0`. + +Comparators can be joined by whitespace to form a `comparator set`, +which is satisfied by the **intersection** of all of the comparators +it includes. + +A range is composed of one or more comparator sets, joined by `||`. A +version matches a range if and only if every comparator in at least +one of the `||`-separated comparator sets is satisfied by the version. + +For example, the range `>=1.2.7 <1.3.0` would match the versions +`1.2.7`, `1.2.8`, and `1.2.99`, but not the versions `1.2.6`, `1.3.0`, +or `1.1.0`. + +The range `1.2.7 || >=1.2.9 <2.0.0` would match the versions `1.2.7`, +`1.2.9`, and `1.4.6`, but not the versions `1.2.8` or `2.0.0`. + +### Prerelease Tags + +If a version has a prerelease tag (for example, `1.2.3-alpha.3`) then +it will only be allowed to satisfy comparator sets if at least one +comparator with the same `[major, minor, patch]` tuple also has a +prerelease tag. + +For example, the range `>1.2.3-alpha.3` would be allowed to match the +version `1.2.3-alpha.7`, but it would *not* be satisfied by +`3.4.5-alpha.9`, even though `3.4.5-alpha.9` is technically "greater +than" `1.2.3-alpha.3` according to the SemVer sort rules. The version +range only accepts prerelease tags on the `1.2.3` version. The +version `3.4.5` *would* satisfy the range, because it does not have a +prerelease flag, and `3.4.5` is greater than `1.2.3-alpha.7`. + +The purpose for this behavior is twofold. First, prerelease versions +frequently are updated very quickly, and contain many breaking changes +that are (by the author's design) not yet fit for public consumption. +Therefore, by default, they are excluded from range matching +semantics. + +Second, a user who has opted into using a prerelease version has +clearly indicated the intent to use *that specific* set of +alpha/beta/rc versions. By including a prerelease tag in the range, +the user is indicating that they are aware of the risk. However, it +is still not appropriate to assume that they have opted into taking a +similar risk on the *next* set of prerelease versions. + +Note that this behavior can be suppressed (treating all prerelease +versions as if they were normal versions, for the purpose of range +matching) by setting the `includePrerelease` flag on the options +object to any +[functions](https://github.com/npm/node-semver#functions) that do +range matching. + +#### Prerelease Identifiers + +The method `.inc` takes an additional `identifier` string argument that +will append the value of the string as a prerelease identifier: + +```javascript +semver.inc('1.2.3', 'prerelease', 'beta') +// '1.2.4-beta.0' +``` + +command-line example: + +```bash +$ semver 1.2.3 -i prerelease --preid beta +1.2.4-beta.0 +``` + +Which then can be used to increment further: + +```bash +$ semver 1.2.4-beta.0 -i prerelease +1.2.4-beta.1 +``` + +### Advanced Range Syntax + +Advanced range syntax desugars to primitive comparators in +deterministic ways. + +Advanced ranges may be combined in the same way as primitive +comparators using white space or `||`. + +#### Hyphen Ranges `X.Y.Z - A.B.C` + +Specifies an inclusive set. + +* `1.2.3 - 2.3.4` := `>=1.2.3 <=2.3.4` + +If a partial version is provided as the first version in the inclusive +range, then the missing pieces are replaced with zeroes. + +* `1.2 - 2.3.4` := `>=1.2.0 <=2.3.4` + +If a partial version is provided as the second version in the +inclusive range, then all versions that start with the supplied parts +of the tuple are accepted, but nothing that would be greater than the +provided tuple parts. + +* `1.2.3 - 2.3` := `>=1.2.3 <2.4.0-0` +* `1.2.3 - 2` := `>=1.2.3 <3.0.0-0` + +#### X-Ranges `1.2.x` `1.X` `1.2.*` `*` + +Any of `X`, `x`, or `*` may be used to "stand in" for one of the +numeric values in the `[major, minor, patch]` tuple. + +* `*` := `>=0.0.0` (Any version satisfies) +* `1.x` := `>=1.0.0 <2.0.0-0` (Matching major version) +* `1.2.x` := `>=1.2.0 <1.3.0-0` (Matching major and minor versions) + +A partial version range is treated as an X-Range, so the special +character is in fact optional. + +* `""` (empty string) := `*` := `>=0.0.0` +* `1` := `1.x.x` := `>=1.0.0 <2.0.0-0` +* `1.2` := `1.2.x` := `>=1.2.0 <1.3.0-0` + +#### Tilde Ranges `~1.2.3` `~1.2` `~1` + +Allows patch-level changes if a minor version is specified on the +comparator. Allows minor-level changes if not. + +* `~1.2.3` := `>=1.2.3 <1.(2+1).0` := `>=1.2.3 <1.3.0-0` +* `~1.2` := `>=1.2.0 <1.(2+1).0` := `>=1.2.0 <1.3.0-0` (Same as `1.2.x`) +* `~1` := `>=1.0.0 <(1+1).0.0` := `>=1.0.0 <2.0.0-0` (Same as `1.x`) +* `~0.2.3` := `>=0.2.3 <0.(2+1).0` := `>=0.2.3 <0.3.0-0` +* `~0.2` := `>=0.2.0 <0.(2+1).0` := `>=0.2.0 <0.3.0-0` (Same as `0.2.x`) +* `~0` := `>=0.0.0 <(0+1).0.0` := `>=0.0.0 <1.0.0-0` (Same as `0.x`) +* `~1.2.3-beta.2` := `>=1.2.3-beta.2 <1.3.0-0` Note that prereleases in + the `1.2.3` version will be allowed, if they are greater than or + equal to `beta.2`. So, `1.2.3-beta.4` would be allowed, but + `1.2.4-beta.2` would not, because it is a prerelease of a + different `[major, minor, patch]` tuple. + +#### Caret Ranges `^1.2.3` `^0.2.5` `^0.0.4` + +Allows changes that do not modify the left-most non-zero element in the +`[major, minor, patch]` tuple. In other words, this allows patch and +minor updates for versions `1.0.0` and above, patch updates for +versions `0.X >=0.1.0`, and *no* updates for versions `0.0.X`. + +Many authors treat a `0.x` version as if the `x` were the major +"breaking-change" indicator. + +Caret ranges are ideal when an author may make breaking changes +between `0.2.4` and `0.3.0` releases, which is a common practice. +However, it presumes that there will *not* be breaking changes between +`0.2.4` and `0.2.5`. It allows for changes that are presumed to be +additive (but non-breaking), according to commonly observed practices. + +* `^1.2.3` := `>=1.2.3 <2.0.0-0` +* `^0.2.3` := `>=0.2.3 <0.3.0-0` +* `^0.0.3` := `>=0.0.3 <0.0.4-0` +* `^1.2.3-beta.2` := `>=1.2.3-beta.2 <2.0.0-0` Note that prereleases in + the `1.2.3` version will be allowed, if they are greater than or + equal to `beta.2`. So, `1.2.3-beta.4` would be allowed, but + `1.2.4-beta.2` would not, because it is a prerelease of a + different `[major, minor, patch]` tuple. +* `^0.0.3-beta` := `>=0.0.3-beta <0.0.4-0` Note that prereleases in the + `0.0.3` version *only* will be allowed, if they are greater than or + equal to `beta`. So, `0.0.3-pr.2` would be allowed. + +When parsing caret ranges, a missing `patch` value desugars to the +number `0`, but will allow flexibility within that value, even if the +major and minor versions are both `0`. + +* `^1.2.x` := `>=1.2.0 <2.0.0-0` +* `^0.0.x` := `>=0.0.0 <0.1.0-0` +* `^0.0` := `>=0.0.0 <0.1.0-0` + +A missing `minor` and `patch` values will desugar to zero, but also +allow flexibility within those values, even if the major version is +zero. + +* `^1.x` := `>=1.0.0 <2.0.0-0` +* `^0.x` := `>=0.0.0 <1.0.0-0` + +### Range Grammar + +Putting all this together, here is a Backus-Naur grammar for ranges, +for the benefit of parser authors: + +```bnf +range-set ::= range ( logical-or range ) * +logical-or ::= ( ' ' ) * '||' ( ' ' ) * +range ::= hyphen | simple ( ' ' simple ) * | '' +hyphen ::= partial ' - ' partial +simple ::= primitive | partial | tilde | caret +primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial +partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )? +xr ::= 'x' | 'X' | '*' | nr +nr ::= '0' | ['1'-'9'] ( ['0'-'9'] ) * +tilde ::= '~' partial +caret ::= '^' partial +qualifier ::= ( '-' pre )? ( '+' build )? +pre ::= parts +build ::= parts +parts ::= part ( '.' part ) * +part ::= nr | [-0-9A-Za-z]+ +``` + +## Functions + +All methods and classes take a final `options` object argument. All +options in this object are `false` by default. The options supported +are: + +- `loose` Be more forgiving about not-quite-valid semver strings. + (Any resulting output will always be 100% strict compliant, of + course.) For backwards compatibility reasons, if the `options` + argument is a boolean value instead of an object, it is interpreted + to be the `loose` param. +- `includePrerelease` Set to suppress the [default + behavior](https://github.com/npm/node-semver#prerelease-tags) of + excluding prerelease tagged versions from ranges unless they are + explicitly opted into. + +Strict-mode Comparators and Ranges will be strict about the SemVer +strings that they parse. + +* `valid(v)`: Return the parsed version, or null if it's not valid. +* `inc(v, release)`: Return the version incremented by the release + type (`major`, `premajor`, `minor`, `preminor`, `patch`, + `prepatch`, or `prerelease`), or null if it's not valid + * `premajor` in one call will bump the version up to the next major + version and down to a prerelease of that major version. + `preminor`, and `prepatch` work the same way. + * If called from a non-prerelease version, the `prerelease` will work the + same as `prepatch`. It increments the patch version, then makes a + prerelease. If the input version is already a prerelease it simply + increments it. +* `prerelease(v)`: Returns an array of prerelease components, or null + if none exist. Example: `prerelease('1.2.3-alpha.1') -> ['alpha', 1]` +* `major(v)`: Return the major version number. +* `minor(v)`: Return the minor version number. +* `patch(v)`: Return the patch version number. +* `intersects(r1, r2, loose)`: Return true if the two supplied ranges + or comparators intersect. +* `parse(v)`: Attempt to parse a string as a semantic version, returning either + a `SemVer` object or `null`. + +### Comparison + +* `gt(v1, v2)`: `v1 > v2` +* `gte(v1, v2)`: `v1 >= v2` +* `lt(v1, v2)`: `v1 < v2` +* `lte(v1, v2)`: `v1 <= v2` +* `eq(v1, v2)`: `v1 == v2` This is true if they're logically equivalent, + even if they're not the exact same string. You already know how to + compare strings. +* `neq(v1, v2)`: `v1 != v2` The opposite of `eq`. +* `cmp(v1, comparator, v2)`: Pass in a comparison string, and it'll call + the corresponding function above. `"==="` and `"!=="` do simple + string comparison, but are included for completeness. Throws if an + invalid comparison string is provided. +* `compare(v1, v2)`: Return `0` if `v1 == v2`, or `1` if `v1` is greater, or `-1` if + `v2` is greater. Sorts in ascending order if passed to `Array.sort()`. +* `rcompare(v1, v2)`: The reverse of compare. Sorts an array of versions + in descending order when passed to `Array.sort()`. +* `compareBuild(v1, v2)`: The same as `compare` but considers `build` when two versions + are equal. Sorts in ascending order if passed to `Array.sort()`. + `v2` is greater. Sorts in ascending order if passed to `Array.sort()`. +* `diff(v1, v2)`: Returns difference between two versions by the release type + (`major`, `premajor`, `minor`, `preminor`, `patch`, `prepatch`, or `prerelease`), + or null if the versions are the same. + +### Comparators + +* `intersects(comparator)`: Return true if the comparators intersect + +### Ranges + +* `validRange(range)`: Return the valid range or null if it's not valid +* `satisfies(version, range)`: Return true if the version satisfies the + range. +* `maxSatisfying(versions, range)`: Return the highest version in the list + that satisfies the range, or `null` if none of them do. +* `minSatisfying(versions, range)`: Return the lowest version in the list + that satisfies the range, or `null` if none of them do. +* `minVersion(range)`: Return the lowest version that can possibly match + the given range. +* `gtr(version, range)`: Return `true` if version is greater than all the + versions possible in the range. +* `ltr(version, range)`: Return `true` if version is less than all the + versions possible in the range. +* `outside(version, range, hilo)`: Return true if the version is outside + the bounds of the range in either the high or low direction. The + `hilo` argument must be either the string `'>'` or `'<'`. (This is + the function called by `gtr` and `ltr`.) +* `intersects(range)`: Return true if any of the ranges comparators intersect +* `simplifyRange(versions, range)`: Return a "simplified" range that + matches the same items in `versions` list as the range specified. Note + that it does *not* guarantee that it would match the same versions in all + cases, only for the set of versions provided. This is useful when + generating ranges by joining together multiple versions with `||` + programmatically, to provide the user with something a bit more + ergonomic. If the provided range is shorter in string-length than the + generated range, then that is returned. +* `subset(subRange, superRange)`: Return `true` if the `subRange` range is + entirely contained by the `superRange` range. + +Note that, since ranges may be non-contiguous, a version might not be +greater than a range, less than a range, *or* satisfy a range! For +example, the range `1.2 <1.2.9 || >2.0.0` would have a hole from `1.2.9` +until `2.0.0`, so the version `1.2.10` would not be greater than the +range (because `2.0.1` satisfies, which is higher), nor less than the +range (since `1.2.8` satisfies, which is lower), and it also does not +satisfy the range. + +If you want to know if a version satisfies or does not satisfy a +range, use the `satisfies(version, range)` function. + +### Coercion + +* `coerce(version, options)`: Coerces a string to semver if possible + +This aims to provide a very forgiving translation of a non-semver string to +semver. It looks for the first digit in a string, and consumes all +remaining characters which satisfy at least a partial semver (e.g., `1`, +`1.2`, `1.2.3`) up to the max permitted length (256 characters). Longer +versions are simply truncated (`4.6.3.9.2-alpha2` becomes `4.6.3`). All +surrounding text is simply ignored (`v3.4 replaces v3.3.1` becomes +`3.4.0`). Only text which lacks digits will fail coercion (`version one` +is not valid). The maximum length for any semver component considered for +coercion is 16 characters; longer components will be ignored +(`10000000000000000.4.7.4` becomes `4.7.4`). The maximum value for any +semver component is `Number.MAX_SAFE_INTEGER || (2**53 - 1)`; higher value +components are invalid (`9999999999999999.4.7.4` is likely invalid). + +If the `options.rtl` flag is set, then `coerce` will return the right-most +coercible tuple that does not share an ending index with a longer coercible +tuple. For example, `1.2.3.4` will return `2.3.4` in rtl mode, not +`4.0.0`. `1.2.3/4` will return `4.0.0`, because the `4` is not a part of +any other overlapping SemVer tuple. + +### Clean + +* `clean(version)`: Clean a string to be a valid semver if possible + +This will return a cleaned and trimmed semver version. If the provided +version is not valid a null will be returned. This does not work for +ranges. + +ex. +* `s.clean(' = v 2.1.5foo')`: `null` +* `s.clean(' = v 2.1.5foo', { loose: true })`: `'2.1.5-foo'` +* `s.clean(' = v 2.1.5-foo')`: `null` +* `s.clean(' = v 2.1.5-foo', { loose: true })`: `'2.1.5-foo'` +* `s.clean('=v2.1.5')`: `'2.1.5'` +* `s.clean(' =v2.1.5')`: `2.1.5` +* `s.clean(' 2.1.5 ')`: `'2.1.5'` +* `s.clean('~1.0.0')`: `null` + +## Exported Modules + + + +You may pull in just the part of this semver utility that you need, if you +are sensitive to packing and tree-shaking concerns. The main +`require('semver')` export uses getter functions to lazily load the parts +of the API that are used. + +The following modules are available: + +* `require('semver')` +* `require('semver/classes')` +* `require('semver/classes/comparator')` +* `require('semver/classes/range')` +* `require('semver/classes/semver')` +* `require('semver/functions/clean')` +* `require('semver/functions/cmp')` +* `require('semver/functions/coerce')` +* `require('semver/functions/compare')` +* `require('semver/functions/compare-build')` +* `require('semver/functions/compare-loose')` +* `require('semver/functions/diff')` +* `require('semver/functions/eq')` +* `require('semver/functions/gt')` +* `require('semver/functions/gte')` +* `require('semver/functions/inc')` +* `require('semver/functions/lt')` +* `require('semver/functions/lte')` +* `require('semver/functions/major')` +* `require('semver/functions/minor')` +* `require('semver/functions/neq')` +* `require('semver/functions/parse')` +* `require('semver/functions/patch')` +* `require('semver/functions/prerelease')` +* `require('semver/functions/rcompare')` +* `require('semver/functions/rsort')` +* `require('semver/functions/satisfies')` +* `require('semver/functions/sort')` +* `require('semver/functions/valid')` +* `require('semver/ranges/gtr')` +* `require('semver/ranges/intersects')` +* `require('semver/ranges/ltr')` +* `require('semver/ranges/max-satisfying')` +* `require('semver/ranges/min-satisfying')` +* `require('semver/ranges/min-version')` +* `require('semver/ranges/outside')` +* `require('semver/ranges/to-comparators')` +* `require('semver/ranges/valid')` diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/bin/semver.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/bin/semver.js new file mode 100755 index 00000000..73fe2953 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/bin/semver.js @@ -0,0 +1,173 @@ +#!/usr/bin/env node +// Standalone semver comparison program. +// Exits successfully and prints matching version(s) if +// any supplied version is valid and passes all tests. + +const argv = process.argv.slice(2) + +let versions = [] + +const range = [] + +let inc = null + +const version = require('../package.json').version + +let loose = false + +let includePrerelease = false + +let coerce = false + +let rtl = false + +let identifier + +const semver = require('../') + +let reverse = false + +const options = {} + +const main = () => { + if (!argv.length) return help() + while (argv.length) { + let a = argv.shift() + const indexOfEqualSign = a.indexOf('=') + if (indexOfEqualSign !== -1) { + a = a.slice(0, indexOfEqualSign) + argv.unshift(a.slice(indexOfEqualSign + 1)) + } + switch (a) { + case '-rv': case '-rev': case '--rev': case '--reverse': + reverse = true + break + case '-l': case '--loose': + loose = true + break + case '-p': case '--include-prerelease': + includePrerelease = true + break + case '-v': case '--version': + versions.push(argv.shift()) + break + case '-i': case '--inc': case '--increment': + switch (argv[0]) { + case 'major': case 'minor': case 'patch': case 'prerelease': + case 'premajor': case 'preminor': case 'prepatch': + inc = argv.shift() + break + default: + inc = 'patch' + break + } + break + case '--preid': + identifier = argv.shift() + break + case '-r': case '--range': + range.push(argv.shift()) + break + case '-c': case '--coerce': + coerce = true + break + case '--rtl': + rtl = true + break + case '--ltr': + rtl = false + break + case '-h': case '--help': case '-?': + return help() + default: + versions.push(a) + break + } + } + + const options = { loose: loose, includePrerelease: includePrerelease, rtl: rtl } + + versions = versions.map((v) => { + return coerce ? (semver.coerce(v, options) || { version: v }).version : v + }).filter((v) => { + return semver.valid(v) + }) + if (!versions.length) return fail() + if (inc && (versions.length !== 1 || range.length)) { return failInc() } + + for (let i = 0, l = range.length; i < l; i++) { + versions = versions.filter((v) => { + return semver.satisfies(v, range[i], options) + }) + if (!versions.length) return fail() + } + return success(versions) +} + + +const failInc = () => { + console.error('--inc can only be used on a single version with no range') + fail() +} + +const fail = () => process.exit(1) + +const success = () => { + const compare = reverse ? 'rcompare' : 'compare' + versions.sort((a, b) => { + return semver[compare](a, b, options) + }).map((v) => { + return semver.clean(v, options) + }).map((v) => { + return inc ? semver.inc(v, inc, options, identifier) : v + }).forEach((v, i, _) => { console.log(v) }) +} + +const help = () => console.log( +`SemVer ${version} + +A JavaScript implementation of the https://semver.org/ specification +Copyright Isaac Z. Schlueter + +Usage: semver [options] [ [...]] +Prints valid versions sorted by SemVer precedence + +Options: +-r --range + Print versions that match the specified range. + +-i --increment [] + Increment a version by the specified level. Level can + be one of: major, minor, patch, premajor, preminor, + prepatch, or prerelease. Default level is 'patch'. + Only one version may be specified. + +--preid + Identifier to be used to prefix premajor, preminor, + prepatch or prerelease version increments. + +-l --loose + Interpret versions and ranges loosely + +-p --include-prerelease + Always include prerelease versions in range matching + +-c --coerce + Coerce a string into SemVer if possible + (does not imply --loose) + +--rtl + Coerce version strings right to left + +--ltr + Coerce version strings left to right (default) + +Program exits successfully if any valid version satisfies +all supplied ranges, and prints all satisfying versions. + +If no satisfying versions are found, then exits failure. + +Versions are printed in ascending order, so supplying +multiple versions to the utility will just sort them.`) + +main() diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js new file mode 100644 index 00000000..3595792d --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js @@ -0,0 +1,139 @@ +const ANY = Symbol('SemVer ANY') +// hoisted class for cyclic dependency +class Comparator { + static get ANY () { + return ANY + } + constructor (comp, options) { + if (!options || typeof options !== 'object') { + options = { + loose: !!options, + includePrerelease: false + } + } + + if (comp instanceof Comparator) { + if (comp.loose === !!options.loose) { + return comp + } else { + comp = comp.value + } + } + + debug('comparator', comp, options) + this.options = options + this.loose = !!options.loose + this.parse(comp) + + if (this.semver === ANY) { + this.value = '' + } else { + this.value = this.operator + this.semver.version + } + + debug('comp', this) + } + + parse (comp) { + const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] + const m = comp.match(r) + + if (!m) { + throw new TypeError(`Invalid comparator: ${comp}`) + } + + this.operator = m[1] !== undefined ? m[1] : '' + if (this.operator === '=') { + this.operator = '' + } + + // if it literally is just '>' or '' then allow anything. + if (!m[2]) { + this.semver = ANY + } else { + this.semver = new SemVer(m[2], this.options.loose) + } + } + + toString () { + return this.value + } + + test (version) { + debug('Comparator.test', version, this.options.loose) + + if (this.semver === ANY || version === ANY) { + return true + } + + if (typeof version === 'string') { + try { + version = new SemVer(version, this.options) + } catch (er) { + return false + } + } + + return cmp(version, this.operator, this.semver, this.options) + } + + intersects (comp, options) { + if (!(comp instanceof Comparator)) { + throw new TypeError('a Comparator is required') + } + + if (!options || typeof options !== 'object') { + options = { + loose: !!options, + includePrerelease: false + } + } + + if (this.operator === '') { + if (this.value === '') { + return true + } + return new Range(comp.value, options).test(this.value) + } else if (comp.operator === '') { + if (comp.value === '') { + return true + } + return new Range(this.value, options).test(comp.semver) + } + + const sameDirectionIncreasing = + (this.operator === '>=' || this.operator === '>') && + (comp.operator === '>=' || comp.operator === '>') + const sameDirectionDecreasing = + (this.operator === '<=' || this.operator === '<') && + (comp.operator === '<=' || comp.operator === '<') + const sameSemVer = this.semver.version === comp.semver.version + const differentDirectionsInclusive = + (this.operator === '>=' || this.operator === '<=') && + (comp.operator === '>=' || comp.operator === '<=') + const oppositeDirectionsLessThan = + cmp(this.semver, '<', comp.semver, options) && + (this.operator === '>=' || this.operator === '>') && + (comp.operator === '<=' || comp.operator === '<') + const oppositeDirectionsGreaterThan = + cmp(this.semver, '>', comp.semver, options) && + (this.operator === '<=' || this.operator === '<') && + (comp.operator === '>=' || comp.operator === '>') + + return ( + sameDirectionIncreasing || + sameDirectionDecreasing || + (sameSemVer && differentDirectionsInclusive) || + oppositeDirectionsLessThan || + oppositeDirectionsGreaterThan + ) + } +} + +module.exports = Comparator + +const {re, t} = require('../internal/re') +const cmp = require('../functions/cmp') +const debug = require('../internal/debug') +const SemVer = require('./semver') +const Range = require('./range') diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/index.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/index.js new file mode 100644 index 00000000..198b84d6 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/index.js @@ -0,0 +1,5 @@ +module.exports = { + SemVer: require('./semver.js'), + Range: require('./range.js'), + Comparator: require('./comparator.js') +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js new file mode 100644 index 00000000..83f89677 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js @@ -0,0 +1,463 @@ +// hoisted class for cyclic dependency +class Range { + constructor (range, options) { + if (!options || typeof options !== 'object') { + options = { + loose: !!options, + includePrerelease: false + } + } + + if (range instanceof Range) { + if ( + range.loose === !!options.loose && + range.includePrerelease === !!options.includePrerelease + ) { + return range + } else { + return new Range(range.raw, options) + } + } + + if (range instanceof Comparator) { + // just put it in the set and return + this.raw = range.value + this.set = [[range]] + this.format() + return this + } + + this.options = options + this.loose = !!options.loose + this.includePrerelease = !!options.includePrerelease + + // First, split based on boolean or || + this.raw = range + this.set = range + .split(/\s*\|\|\s*/) + // map the range to a 2d array of comparators + .map(range => this.parseRange(range.trim())) + // throw out any comparator lists that are empty + // this generally means that it was not a valid range, which is allowed + // in loose mode, but will still throw if the WHOLE range is invalid. + .filter(c => c.length) + + if (!this.set.length) { + throw new TypeError(`Invalid SemVer Range: ${range}`) + } + + this.format() + } + + format () { + this.range = this.set + .map((comps) => { + return comps.join(' ').trim() + }) + .join('||') + .trim() + return this.range + } + + toString () { + return this.range + } + + parseRange (range) { + const loose = this.options.loose + range = range.trim() + // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4` + const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE] + range = range.replace(hr, hyphenReplace(this.options.includePrerelease)) + debug('hyphen replace', range) + // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5` + range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace) + debug('comparator trim', range, re[t.COMPARATORTRIM]) + + // `~ 1.2.3` => `~1.2.3` + range = range.replace(re[t.TILDETRIM], tildeTrimReplace) + + // `^ 1.2.3` => `^1.2.3` + range = range.replace(re[t.CARETTRIM], caretTrimReplace) + + // normalize spaces + range = range.split(/\s+/).join(' ') + + // At this point, the range is completely trimmed and + // ready to be split into comparators. + + const compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] + return range + .split(' ') + .map(comp => parseComparator(comp, this.options)) + .join(' ') + .split(/\s+/) + .map(comp => replaceGTE0(comp, this.options)) + // in loose mode, throw out any that are not valid comparators + .filter(this.options.loose ? comp => !!comp.match(compRe) : () => true) + .map(comp => new Comparator(comp, this.options)) + } + + intersects (range, options) { + if (!(range instanceof Range)) { + throw new TypeError('a Range is required') + } + + return this.set.some((thisComparators) => { + return ( + isSatisfiable(thisComparators, options) && + range.set.some((rangeComparators) => { + return ( + isSatisfiable(rangeComparators, options) && + thisComparators.every((thisComparator) => { + return rangeComparators.every((rangeComparator) => { + return thisComparator.intersects(rangeComparator, options) + }) + }) + ) + }) + ) + }) + } + + // if ANY of the sets match ALL of its comparators, then pass + test (version) { + if (!version) { + return false + } + + if (typeof version === 'string') { + try { + version = new SemVer(version, this.options) + } catch (er) { + return false + } + } + + for (let i = 0; i < this.set.length; i++) { + if (testSet(this.set[i], version, this.options)) { + return true + } + } + return false + } +} +module.exports = Range + +const Comparator = require('./comparator') +const debug = require('../internal/debug') +const SemVer = require('./semver') +const { + re, + t, + comparatorTrimReplace, + tildeTrimReplace, + caretTrimReplace +} = require('../internal/re') + +// take a set of comparators and determine whether there +// exists a version which can satisfy it +const isSatisfiable = (comparators, options) => { + let result = true + const remainingComparators = comparators.slice() + let testComparator = remainingComparators.pop() + + while (result && remainingComparators.length) { + result = remainingComparators.every((otherComparator) => { + return testComparator.intersects(otherComparator, options) + }) + + testComparator = remainingComparators.pop() + } + + return result +} + +// comprised of xranges, tildes, stars, and gtlt's at this point. +// already replaced the hyphen ranges +// turn into a set of JUST comparators. +const parseComparator = (comp, options) => { + debug('comp', comp, options) + comp = replaceCarets(comp, options) + debug('caret', comp) + comp = replaceTildes(comp, options) + debug('tildes', comp) + comp = replaceXRanges(comp, options) + debug('xrange', comp) + comp = replaceStars(comp, options) + debug('stars', comp) + return comp +} + +const isX = id => !id || id.toLowerCase() === 'x' || id === '*' + +// ~, ~> --> * (any, kinda silly) +// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0 +// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0 +// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0 +// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0 +// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0 +const replaceTildes = (comp, options) => + comp.trim().split(/\s+/).map((comp) => { + return replaceTilde(comp, options) + }).join(' ') + +const replaceTilde = (comp, options) => { + const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE] + return comp.replace(r, (_, M, m, p, pr) => { + debug('tilde', comp, _, M, m, p, pr) + let ret + + if (isX(M)) { + ret = '' + } else if (isX(m)) { + ret = `>=${M}.0.0 <${+M + 1}.0.0-0` + } else if (isX(p)) { + // ~1.2 == >=1.2.0 <1.3.0-0 + ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0` + } else if (pr) { + debug('replaceTilde pr', pr) + ret = `>=${M}.${m}.${p}-${pr + } <${M}.${+m + 1}.0-0` + } else { + // ~1.2.3 == >=1.2.3 <1.3.0-0 + ret = `>=${M}.${m}.${p + } <${M}.${+m + 1}.0-0` + } + + debug('tilde return', ret) + return ret + }) +} + +// ^ --> * (any, kinda silly) +// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0 +// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0 +// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0 +// ^1.2.3 --> >=1.2.3 <2.0.0-0 +// ^1.2.0 --> >=1.2.0 <2.0.0-0 +const replaceCarets = (comp, options) => + comp.trim().split(/\s+/).map((comp) => { + return replaceCaret(comp, options) + }).join(' ') + +const replaceCaret = (comp, options) => { + debug('caret', comp, options) + const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET] + const z = options.includePrerelease ? '-0' : '' + return comp.replace(r, (_, M, m, p, pr) => { + debug('caret', comp, _, M, m, p, pr) + let ret + + if (isX(M)) { + ret = '' + } else if (isX(m)) { + ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0` + } else if (isX(p)) { + if (M === '0') { + ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0` + } else { + ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0` + } + } else if (pr) { + debug('replaceCaret pr', pr) + if (M === '0') { + if (m === '0') { + ret = `>=${M}.${m}.${p}-${pr + } <${M}.${m}.${+p + 1}-0` + } else { + ret = `>=${M}.${m}.${p}-${pr + } <${M}.${+m + 1}.0-0` + } + } else { + ret = `>=${M}.${m}.${p}-${pr + } <${+M + 1}.0.0-0` + } + } else { + debug('no pr') + if (M === '0') { + if (m === '0') { + ret = `>=${M}.${m}.${p + }${z} <${M}.${m}.${+p + 1}-0` + } else { + ret = `>=${M}.${m}.${p + }${z} <${M}.${+m + 1}.0-0` + } + } else { + ret = `>=${M}.${m}.${p + } <${+M + 1}.0.0-0` + } + } + + debug('caret return', ret) + return ret + }) +} + +const replaceXRanges = (comp, options) => { + debug('replaceXRanges', comp, options) + return comp.split(/\s+/).map((comp) => { + return replaceXRange(comp, options) + }).join(' ') +} + +const replaceXRange = (comp, options) => { + comp = comp.trim() + const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE] + return comp.replace(r, (ret, gtlt, M, m, p, pr) => { + debug('xRange', comp, ret, gtlt, M, m, p, pr) + const xM = isX(M) + const xm = xM || isX(m) + const xp = xm || isX(p) + const anyX = xp + + if (gtlt === '=' && anyX) { + gtlt = '' + } + + // if we're including prereleases in the match, then we need + // to fix this to -0, the lowest possible prerelease value + pr = options.includePrerelease ? '-0' : '' + + if (xM) { + if (gtlt === '>' || gtlt === '<') { + // nothing is allowed + ret = '<0.0.0-0' + } else { + // nothing is forbidden + ret = '*' + } + } else if (gtlt && anyX) { + // we know patch is an x, because we have any x at all. + // replace X with 0 + if (xm) { + m = 0 + } + p = 0 + + if (gtlt === '>') { + // >1 => >=2.0.0 + // >1.2 => >=1.3.0 + gtlt = '>=' + if (xm) { + M = +M + 1 + m = 0 + p = 0 + } else { + m = +m + 1 + p = 0 + } + } else if (gtlt === '<=') { + // <=0.7.x is actually <0.8.0, since any 0.7.x should + // pass. Similarly, <=7.x is actually <8.0.0, etc. + gtlt = '<' + if (xm) { + M = +M + 1 + } else { + m = +m + 1 + } + } + + if (gtlt === '<') + pr = '-0' + + ret = `${gtlt + M}.${m}.${p}${pr}` + } else if (xm) { + ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0` + } else if (xp) { + ret = `>=${M}.${m}.0${pr + } <${M}.${+m + 1}.0-0` + } + + debug('xRange return', ret) + + return ret + }) +} + +// Because * is AND-ed with everything else in the comparator, +// and '' means "any version", just remove the *s entirely. +const replaceStars = (comp, options) => { + debug('replaceStars', comp, options) + // Looseness is ignored here. star is always as loose as it gets! + return comp.trim().replace(re[t.STAR], '') +} + +const replaceGTE0 = (comp, options) => { + debug('replaceGTE0', comp, options) + return comp.trim() + .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '') +} + +// This function is passed to string.replace(re[t.HYPHENRANGE]) +// M, m, patch, prerelease, build +// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5 +// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do +// 1.2 - 3.4 => >=1.2.0 <3.5.0-0 +const hyphenReplace = incPr => ($0, + from, fM, fm, fp, fpr, fb, + to, tM, tm, tp, tpr, tb) => { + if (isX(fM)) { + from = '' + } else if (isX(fm)) { + from = `>=${fM}.0.0${incPr ? '-0' : ''}` + } else if (isX(fp)) { + from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}` + } else if (fpr) { + from = `>=${from}` + } else { + from = `>=${from}${incPr ? '-0' : ''}` + } + + if (isX(tM)) { + to = '' + } else if (isX(tm)) { + to = `<${+tM + 1}.0.0-0` + } else if (isX(tp)) { + to = `<${tM}.${+tm + 1}.0-0` + } else if (tpr) { + to = `<=${tM}.${tm}.${tp}-${tpr}` + } else if (incPr) { + to = `<${tM}.${tm}.${+tp + 1}-0` + } else { + to = `<=${to}` + } + + return (`${from} ${to}`).trim() +} + +const testSet = (set, version, options) => { + for (let i = 0; i < set.length; i++) { + if (!set[i].test(version)) { + return false + } + } + + if (version.prerelease.length && !options.includePrerelease) { + // Find the set of versions that are allowed to have prereleases + // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0 + // That should allow `1.2.3-pr.2` to pass. + // However, `1.2.4-alpha.notready` should NOT be allowed, + // even though it's within the range set by the comparators. + for (let i = 0; i < set.length; i++) { + debug(set[i].semver) + if (set[i].semver === Comparator.ANY) { + continue + } + + if (set[i].semver.prerelease.length > 0) { + const allowed = set[i].semver + if (allowed.major === version.major && + allowed.minor === version.minor && + allowed.patch === version.patch) { + return true + } + } + } + + // Version has a -pre, but it's not one of the ones we like. + return false + } + + return true +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js new file mode 100644 index 00000000..73247ad2 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js @@ -0,0 +1,290 @@ +const debug = require('../internal/debug') +const { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants') +const { re, t } = require('../internal/re') + +const { compareIdentifiers } = require('../internal/identifiers') +class SemVer { + constructor (version, options) { + if (!options || typeof options !== 'object') { + options = { + loose: !!options, + includePrerelease: false + } + } + if (version instanceof SemVer) { + if (version.loose === !!options.loose && + version.includePrerelease === !!options.includePrerelease) { + return version + } else { + version = version.version + } + } else if (typeof version !== 'string') { + throw new TypeError(`Invalid Version: ${version}`) + } + + if (version.length > MAX_LENGTH) { + throw new TypeError( + `version is longer than ${MAX_LENGTH} characters` + ) + } + + debug('SemVer', version, options) + this.options = options + this.loose = !!options.loose + // this isn't actually relevant for versions, but keep it so that we + // don't run into trouble passing this.options around. + this.includePrerelease = !!options.includePrerelease + + const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]) + + if (!m) { + throw new TypeError(`Invalid Version: ${version}`) + } + + this.raw = version + + // these are actually numbers + this.major = +m[1] + this.minor = +m[2] + this.patch = +m[3] + + if (this.major > MAX_SAFE_INTEGER || this.major < 0) { + throw new TypeError('Invalid major version') + } + + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { + throw new TypeError('Invalid minor version') + } + + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { + throw new TypeError('Invalid patch version') + } + + // numberify any prerelease numeric ids + if (!m[4]) { + this.prerelease = [] + } else { + this.prerelease = m[4].split('.').map((id) => { + if (/^[0-9]+$/.test(id)) { + const num = +id + if (num >= 0 && num < MAX_SAFE_INTEGER) { + return num + } + } + return id + }) + } + + this.build = m[5] ? m[5].split('.') : [] + this.format() + } + + format () { + this.version = `${this.major}.${this.minor}.${this.patch}` + if (this.prerelease.length) { + this.version += `-${this.prerelease.join('.')}` + } + return this.version + } + + toString () { + return this.version + } + + compare (other) { + debug('SemVer.compare', this.version, this.options, other) + if (!(other instanceof SemVer)) { + if (typeof other === 'string' && other === this.version) { + return 0 + } + other = new SemVer(other, this.options) + } + + if (other.version === this.version) { + return 0 + } + + return this.compareMain(other) || this.comparePre(other) + } + + compareMain (other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options) + } + + return ( + compareIdentifiers(this.major, other.major) || + compareIdentifiers(this.minor, other.minor) || + compareIdentifiers(this.patch, other.patch) + ) + } + + comparePre (other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options) + } + + // NOT having a prerelease is > having one + if (this.prerelease.length && !other.prerelease.length) { + return -1 + } else if (!this.prerelease.length && other.prerelease.length) { + return 1 + } else if (!this.prerelease.length && !other.prerelease.length) { + return 0 + } + + let i = 0 + do { + const a = this.prerelease[i] + const b = other.prerelease[i] + debug('prerelease compare', i, a, b) + if (a === undefined && b === undefined) { + return 0 + } else if (b === undefined) { + return 1 + } else if (a === undefined) { + return -1 + } else if (a === b) { + continue + } else { + return compareIdentifiers(a, b) + } + } while (++i) + } + + compareBuild (other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options) + } + + let i = 0 + do { + const a = this.build[i] + const b = other.build[i] + debug('prerelease compare', i, a, b) + if (a === undefined && b === undefined) { + return 0 + } else if (b === undefined) { + return 1 + } else if (a === undefined) { + return -1 + } else if (a === b) { + continue + } else { + return compareIdentifiers(a, b) + } + } while (++i) + } + + // preminor will bump the version up to the next minor release, and immediately + // down to pre-release. premajor and prepatch work the same way. + inc (release, identifier) { + switch (release) { + case 'premajor': + this.prerelease.length = 0 + this.patch = 0 + this.minor = 0 + this.major++ + this.inc('pre', identifier) + break + case 'preminor': + this.prerelease.length = 0 + this.patch = 0 + this.minor++ + this.inc('pre', identifier) + break + case 'prepatch': + // If this is already a prerelease, it will bump to the next version + // drop any prereleases that might already exist, since they are not + // relevant at this point. + this.prerelease.length = 0 + this.inc('patch', identifier) + this.inc('pre', identifier) + break + // If the input is a non-prerelease version, this acts the same as + // prepatch. + case 'prerelease': + if (this.prerelease.length === 0) { + this.inc('patch', identifier) + } + this.inc('pre', identifier) + break + + case 'major': + // If this is a pre-major version, bump up to the same major version. + // Otherwise increment major. + // 1.0.0-5 bumps to 1.0.0 + // 1.1.0 bumps to 2.0.0 + if ( + this.minor !== 0 || + this.patch !== 0 || + this.prerelease.length === 0 + ) { + this.major++ + } + this.minor = 0 + this.patch = 0 + this.prerelease = [] + break + case 'minor': + // If this is a pre-minor version, bump up to the same minor version. + // Otherwise increment minor. + // 1.2.0-5 bumps to 1.2.0 + // 1.2.1 bumps to 1.3.0 + if (this.patch !== 0 || this.prerelease.length === 0) { + this.minor++ + } + this.patch = 0 + this.prerelease = [] + break + case 'patch': + // If this is not a pre-release version, it will increment the patch. + // If it is a pre-release it will bump up to the same patch version. + // 1.2.0-5 patches to 1.2.0 + // 1.2.0 patches to 1.2.1 + if (this.prerelease.length === 0) { + this.patch++ + } + this.prerelease = [] + break + // This probably shouldn't be used publicly. + // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction. + case 'pre': + if (this.prerelease.length === 0) { + this.prerelease = [0] + } else { + let i = this.prerelease.length + while (--i >= 0) { + if (typeof this.prerelease[i] === 'number') { + this.prerelease[i]++ + i = -2 + } + } + if (i === -1) { + // didn't increment anything + this.prerelease.push(0) + } + } + if (identifier) { + // 1.2.0-beta.1 bumps to 1.2.0-beta.2, + // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0 + if (this.prerelease[0] === identifier) { + if (isNaN(this.prerelease[1])) { + this.prerelease = [identifier, 0] + } + } else { + this.prerelease = [identifier, 0] + } + } + break + + default: + throw new Error(`invalid increment argument: ${release}`) + } + this.format() + this.raw = this.version + return this + } +} + +module.exports = SemVer diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/clean.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/clean.js new file mode 100644 index 00000000..811fe6b8 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/clean.js @@ -0,0 +1,6 @@ +const parse = require('./parse') +const clean = (version, options) => { + const s = parse(version.trim().replace(/^[=v]+/, ''), options) + return s ? s.version : null +} +module.exports = clean diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/cmp.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/cmp.js new file mode 100644 index 00000000..3b89db77 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/cmp.js @@ -0,0 +1,48 @@ +const eq = require('./eq') +const neq = require('./neq') +const gt = require('./gt') +const gte = require('./gte') +const lt = require('./lt') +const lte = require('./lte') + +const cmp = (a, op, b, loose) => { + switch (op) { + case '===': + if (typeof a === 'object') + a = a.version + if (typeof b === 'object') + b = b.version + return a === b + + case '!==': + if (typeof a === 'object') + a = a.version + if (typeof b === 'object') + b = b.version + return a !== b + + case '': + case '=': + case '==': + return eq(a, b, loose) + + case '!=': + return neq(a, b, loose) + + case '>': + return gt(a, b, loose) + + case '>=': + return gte(a, b, loose) + + case '<': + return lt(a, b, loose) + + case '<=': + return lte(a, b, loose) + + default: + throw new TypeError(`Invalid operator: ${op}`) + } +} +module.exports = cmp diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/coerce.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/coerce.js new file mode 100644 index 00000000..106ca71c --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/coerce.js @@ -0,0 +1,51 @@ +const SemVer = require('../classes/semver') +const parse = require('./parse') +const {re, t} = require('../internal/re') + +const coerce = (version, options) => { + if (version instanceof SemVer) { + return version + } + + if (typeof version === 'number') { + version = String(version) + } + + if (typeof version !== 'string') { + return null + } + + options = options || {} + + let match = null + if (!options.rtl) { + match = version.match(re[t.COERCE]) + } else { + // Find the right-most coercible string that does not share + // a terminus with a more left-ward coercible string. + // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4' + // + // Walk through the string checking with a /g regexp + // Manually set the index so as to pick up overlapping matches. + // Stop when we get a match that ends at the string end, since no + // coercible string can be more right-ward without the same terminus. + let next + while ((next = re[t.COERCERTL].exec(version)) && + (!match || match.index + match[0].length !== version.length) + ) { + if (!match || + next.index + next[0].length !== match.index + match[0].length) { + match = next + } + re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length + } + // leave it in a clean state + re[t.COERCERTL].lastIndex = -1 + } + + if (match === null) + return null + + return parse(`${match[2]}.${match[3] || '0'}.${match[4] || '0'}`, options) +} +module.exports = coerce diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-build.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-build.js new file mode 100644 index 00000000..9eb881be --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-build.js @@ -0,0 +1,7 @@ +const SemVer = require('../classes/semver') +const compareBuild = (a, b, loose) => { + const versionA = new SemVer(a, loose) + const versionB = new SemVer(b, loose) + return versionA.compare(versionB) || versionA.compareBuild(versionB) +} +module.exports = compareBuild diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-loose.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-loose.js new file mode 100644 index 00000000..4881fbe0 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-loose.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const compareLoose = (a, b) => compare(a, b, true) +module.exports = compareLoose diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare.js new file mode 100644 index 00000000..748b7afa --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare.js @@ -0,0 +1,5 @@ +const SemVer = require('../classes/semver') +const compare = (a, b, loose) => + new SemVer(a, loose).compare(new SemVer(b, loose)) + +module.exports = compare diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/diff.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/diff.js new file mode 100644 index 00000000..87200ef3 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/diff.js @@ -0,0 +1,23 @@ +const parse = require('./parse') +const eq = require('./eq') + +const diff = (version1, version2) => { + if (eq(version1, version2)) { + return null + } else { + const v1 = parse(version1) + const v2 = parse(version2) + const hasPre = v1.prerelease.length || v2.prerelease.length + const prefix = hasPre ? 'pre' : '' + const defaultResult = hasPre ? 'prerelease' : '' + for (const key in v1) { + if (key === 'major' || key === 'minor' || key === 'patch') { + if (v1[key] !== v2[key]) { + return prefix + key + } + } + } + return defaultResult // may be undefined + } +} +module.exports = diff diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/eq.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/eq.js new file mode 100644 index 00000000..271fed97 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/eq.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const eq = (a, b, loose) => compare(a, b, loose) === 0 +module.exports = eq diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gt.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gt.js new file mode 100644 index 00000000..d9b2156d --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gt.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const gt = (a, b, loose) => compare(a, b, loose) > 0 +module.exports = gt diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gte.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gte.js new file mode 100644 index 00000000..5aeaa634 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gte.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const gte = (a, b, loose) => compare(a, b, loose) >= 0 +module.exports = gte diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/inc.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/inc.js new file mode 100644 index 00000000..aa4d83ab --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/inc.js @@ -0,0 +1,15 @@ +const SemVer = require('../classes/semver') + +const inc = (version, release, options, identifier) => { + if (typeof (options) === 'string') { + identifier = options + options = undefined + } + + try { + return new SemVer(version, options).inc(release, identifier).version + } catch (er) { + return null + } +} +module.exports = inc diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lt.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lt.js new file mode 100644 index 00000000..b440ab7d --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lt.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const lt = (a, b, loose) => compare(a, b, loose) < 0 +module.exports = lt diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lte.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lte.js new file mode 100644 index 00000000..6dcc9565 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lte.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const lte = (a, b, loose) => compare(a, b, loose) <= 0 +module.exports = lte diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/major.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/major.js new file mode 100644 index 00000000..4283165e --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/major.js @@ -0,0 +1,3 @@ +const SemVer = require('../classes/semver') +const major = (a, loose) => new SemVer(a, loose).major +module.exports = major diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/minor.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/minor.js new file mode 100644 index 00000000..57b3455f --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/minor.js @@ -0,0 +1,3 @@ +const SemVer = require('../classes/semver') +const minor = (a, loose) => new SemVer(a, loose).minor +module.exports = minor diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/neq.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/neq.js new file mode 100644 index 00000000..f944c015 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/neq.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const neq = (a, b, loose) => compare(a, b, loose) !== 0 +module.exports = neq diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js new file mode 100644 index 00000000..457fee04 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js @@ -0,0 +1,37 @@ +const {MAX_LENGTH} = require('../internal/constants') +const { re, t } = require('../internal/re') +const SemVer = require('../classes/semver') + +const parse = (version, options) => { + if (!options || typeof options !== 'object') { + options = { + loose: !!options, + includePrerelease: false + } + } + + if (version instanceof SemVer) { + return version + } + + if (typeof version !== 'string') { + return null + } + + if (version.length > MAX_LENGTH) { + return null + } + + const r = options.loose ? re[t.LOOSE] : re[t.FULL] + if (!r.test(version)) { + return null + } + + try { + return new SemVer(version, options) + } catch (er) { + return null + } +} + +module.exports = parse diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/patch.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/patch.js new file mode 100644 index 00000000..63afca25 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/patch.js @@ -0,0 +1,3 @@ +const SemVer = require('../classes/semver') +const patch = (a, loose) => new SemVer(a, loose).patch +module.exports = patch diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/prerelease.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/prerelease.js new file mode 100644 index 00000000..06aa1324 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/prerelease.js @@ -0,0 +1,6 @@ +const parse = require('./parse') +const prerelease = (version, options) => { + const parsed = parse(version, options) + return (parsed && parsed.prerelease.length) ? parsed.prerelease : null +} +module.exports = prerelease diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rcompare.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rcompare.js new file mode 100644 index 00000000..0ac509e7 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rcompare.js @@ -0,0 +1,3 @@ +const compare = require('./compare') +const rcompare = (a, b, loose) => compare(b, a, loose) +module.exports = rcompare diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rsort.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rsort.js new file mode 100644 index 00000000..82404c5c --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rsort.js @@ -0,0 +1,3 @@ +const compareBuild = require('./compare-build') +const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)) +module.exports = rsort diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/satisfies.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/satisfies.js new file mode 100644 index 00000000..50af1c19 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/satisfies.js @@ -0,0 +1,10 @@ +const Range = require('../classes/range') +const satisfies = (version, range, options) => { + try { + range = new Range(range, options) + } catch (er) { + return false + } + return range.test(version) +} +module.exports = satisfies diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/sort.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/sort.js new file mode 100644 index 00000000..4d10917a --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/sort.js @@ -0,0 +1,3 @@ +const compareBuild = require('./compare-build') +const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)) +module.exports = sort diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/valid.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/valid.js new file mode 100644 index 00000000..f27bae10 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/valid.js @@ -0,0 +1,6 @@ +const parse = require('./parse') +const valid = (version, options) => { + const v = parse(version, options) + return v ? v.version : null +} +module.exports = valid diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/index.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/index.js new file mode 100644 index 00000000..57e2ae64 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/index.js @@ -0,0 +1,48 @@ +// just pre-load all the stuff that index.js lazily exports +const internalRe = require('./internal/re') +module.exports = { + re: internalRe.re, + src: internalRe.src, + tokens: internalRe.t, + SEMVER_SPEC_VERSION: require('./internal/constants').SEMVER_SPEC_VERSION, + SemVer: require('./classes/semver'), + compareIdentifiers: require('./internal/identifiers').compareIdentifiers, + rcompareIdentifiers: require('./internal/identifiers').rcompareIdentifiers, + parse: require('./functions/parse'), + valid: require('./functions/valid'), + clean: require('./functions/clean'), + inc: require('./functions/inc'), + diff: require('./functions/diff'), + major: require('./functions/major'), + minor: require('./functions/minor'), + patch: require('./functions/patch'), + prerelease: require('./functions/prerelease'), + compare: require('./functions/compare'), + rcompare: require('./functions/rcompare'), + compareLoose: require('./functions/compare-loose'), + compareBuild: require('./functions/compare-build'), + sort: require('./functions/sort'), + rsort: require('./functions/rsort'), + gt: require('./functions/gt'), + lt: require('./functions/lt'), + eq: require('./functions/eq'), + neq: require('./functions/neq'), + gte: require('./functions/gte'), + lte: require('./functions/lte'), + cmp: require('./functions/cmp'), + coerce: require('./functions/coerce'), + Comparator: require('./classes/comparator'), + Range: require('./classes/range'), + satisfies: require('./functions/satisfies'), + toComparators: require('./ranges/to-comparators'), + maxSatisfying: require('./ranges/max-satisfying'), + minSatisfying: require('./ranges/min-satisfying'), + minVersion: require('./ranges/min-version'), + validRange: require('./ranges/valid'), + outside: require('./ranges/outside'), + gtr: require('./ranges/gtr'), + ltr: require('./ranges/ltr'), + intersects: require('./ranges/intersects'), + simplifyRange: require('./ranges/simplify'), + subset: require('./ranges/subset'), +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/constants.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/constants.js new file mode 100644 index 00000000..49df215a --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/constants.js @@ -0,0 +1,17 @@ +// Note: this is the semver.org version of the spec that it implements +// Not necessarily the package version of this code. +const SEMVER_SPEC_VERSION = '2.0.0' + +const MAX_LENGTH = 256 +const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || + /* istanbul ignore next */ 9007199254740991 + +// Max safe segment length for coercion. +const MAX_SAFE_COMPONENT_LENGTH = 16 + +module.exports = { + SEMVER_SPEC_VERSION, + MAX_LENGTH, + MAX_SAFE_INTEGER, + MAX_SAFE_COMPONENT_LENGTH +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/debug.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/debug.js new file mode 100644 index 00000000..1c00e136 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/debug.js @@ -0,0 +1,9 @@ +const debug = ( + typeof process === 'object' && + process.env && + process.env.NODE_DEBUG && + /\bsemver\b/i.test(process.env.NODE_DEBUG) +) ? (...args) => console.error('SEMVER', ...args) + : () => {} + +module.exports = debug diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/identifiers.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/identifiers.js new file mode 100644 index 00000000..ed130942 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/identifiers.js @@ -0,0 +1,23 @@ +const numeric = /^[0-9]+$/ +const compareIdentifiers = (a, b) => { + const anum = numeric.test(a) + const bnum = numeric.test(b) + + if (anum && bnum) { + a = +a + b = +b + } + + return a === b ? 0 + : (anum && !bnum) ? -1 + : (bnum && !anum) ? 1 + : a < b ? -1 + : 1 +} + +const rcompareIdentifiers = (a, b) => compareIdentifiers(b, a) + +module.exports = { + compareIdentifiers, + rcompareIdentifiers +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/re.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/re.js new file mode 100644 index 00000000..54d4176d --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/re.js @@ -0,0 +1,182 @@ +const { MAX_SAFE_COMPONENT_LENGTH } = require('./constants') +const debug = require('./debug') +exports = module.exports = {} + +// The actual regexps go on exports.re +const re = exports.re = [] +const src = exports.src = [] +const t = exports.t = {} +let R = 0 + +const createToken = (name, value, isGlobal) => { + const index = R++ + debug(index, value) + t[name] = index + src[index] = value + re[index] = new RegExp(value, isGlobal ? 'g' : undefined) +} + +// The following Regular Expressions can be used for tokenizing, +// validating, and parsing SemVer version strings. + +// ## Numeric Identifier +// A single `0`, or a non-zero digit followed by zero or more digits. + +createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*') +createToken('NUMERICIDENTIFIERLOOSE', '[0-9]+') + +// ## Non-numeric Identifier +// Zero or more digits, followed by a letter or hyphen, and then zero or +// more letters, digits, or hyphens. + +createToken('NONNUMERICIDENTIFIER', '\\d*[a-zA-Z-][a-zA-Z0-9-]*') + +// ## Main Version +// Three dot-separated numeric identifiers. + +createToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\.` + + `(${src[t.NUMERICIDENTIFIER]})\\.` + + `(${src[t.NUMERICIDENTIFIER]})`) + +createToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` + + `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` + + `(${src[t.NUMERICIDENTIFIERLOOSE]})`) + +// ## Pre-release Version Identifier +// A numeric identifier, or a non-numeric identifier. + +createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER] +}|${src[t.NONNUMERICIDENTIFIER]})`) + +createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE] +}|${src[t.NONNUMERICIDENTIFIER]})`) + +// ## Pre-release Version +// Hyphen, followed by one or more dot-separated pre-release version +// identifiers. + +createToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER] +}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`) + +createToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE] +}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`) + +// ## Build Metadata Identifier +// Any combination of digits, letters, or hyphens. + +createToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+') + +// ## Build Metadata +// Plus sign, followed by one or more period-separated build metadata +// identifiers. + +createToken('BUILD', `(?:\\+(${src[t.BUILDIDENTIFIER] +}(?:\\.${src[t.BUILDIDENTIFIER]})*))`) + +// ## Full Version String +// A main version, followed optionally by a pre-release version and +// build metadata. + +// Note that the only major, minor, patch, and pre-release sections of +// the version string are capturing groups. The build metadata is not a +// capturing group, because it should not ever be used in version +// comparison. + +createToken('FULLPLAIN', `v?${src[t.MAINVERSION] +}${src[t.PRERELEASE]}?${ + src[t.BUILD]}?`) + +createToken('FULL', `^${src[t.FULLPLAIN]}$`) + +// like full, but allows v1.2.3 and =1.2.3, which people do sometimes. +// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty +// common in the npm registry. +createToken('LOOSEPLAIN', `[v=\\s]*${src[t.MAINVERSIONLOOSE] +}${src[t.PRERELEASELOOSE]}?${ + src[t.BUILD]}?`) + +createToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`) + +createToken('GTLT', '((?:<|>)?=?)') + +// Something like "2.*" or "1.2.x". +// Note that "x.x" is a valid xRange identifer, meaning "any version" +// Only the first item is strictly required. +createToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`) +createToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`) + +createToken('XRANGEPLAIN', `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})` + + `(?:\\.(${src[t.XRANGEIDENTIFIER]})` + + `(?:\\.(${src[t.XRANGEIDENTIFIER]})` + + `(?:${src[t.PRERELEASE]})?${ + src[t.BUILD]}?` + + `)?)?`) + +createToken('XRANGEPLAINLOOSE', `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` + + `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` + + `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` + + `(?:${src[t.PRERELEASELOOSE]})?${ + src[t.BUILD]}?` + + `)?)?`) + +createToken('XRANGE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`) +createToken('XRANGELOOSE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`) + +// Coercion. +// Extract anything that could conceivably be a part of a valid semver +createToken('COERCE', `${'(^|[^\\d])' + + '(\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` + + `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` + + `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` + + `(?:$|[^\\d])`) +createToken('COERCERTL', src[t.COERCE], true) + +// Tilde ranges. +// Meaning is "reasonably at or greater than" +createToken('LONETILDE', '(?:~>?)') + +createToken('TILDETRIM', `(\\s*)${src[t.LONETILDE]}\\s+`, true) +exports.tildeTrimReplace = '$1~' + +createToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`) +createToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`) + +// Caret ranges. +// Meaning is "at least and backwards compatible with" +createToken('LONECARET', '(?:\\^)') + +createToken('CARETTRIM', `(\\s*)${src[t.LONECARET]}\\s+`, true) +exports.caretTrimReplace = '$1^' + +createToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`) +createToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`) + +// A simple gt/lt/eq thing, or just "" to indicate "any version" +createToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`) +createToken('COMPARATOR', `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`) + +// An expression to strip any whitespace between the gtlt and the thing +// it modifies, so that `> 1.2.3` ==> `>1.2.3` +createToken('COMPARATORTRIM', `(\\s*)${src[t.GTLT] +}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true) +exports.comparatorTrimReplace = '$1$2$3' + +// Something like `1.2.3 - 1.2.4` +// Note that these all use the loose form, because they'll be +// checked against either the strict or loose comparator form +// later. +createToken('HYPHENRANGE', `^\\s*(${src[t.XRANGEPLAIN]})` + + `\\s+-\\s+` + + `(${src[t.XRANGEPLAIN]})` + + `\\s*$`) + +createToken('HYPHENRANGELOOSE', `^\\s*(${src[t.XRANGEPLAINLOOSE]})` + + `\\s+-\\s+` + + `(${src[t.XRANGEPLAINLOOSE]})` + + `\\s*$`) + +// Star ranges basically just allow anything at all. +createToken('STAR', '(<|>)?=?\\s*\\*') +// >=0.0.0 is like a star +createToken('GTE0', '^\\s*>=\\s*0\.0\.0\\s*$') +createToken('GTE0PRE', '^\\s*>=\\s*0\.0\.0-0\\s*$') diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json new file mode 100644 index 00000000..07867975 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json @@ -0,0 +1,38 @@ +{ + "name": "semver", + "version": "7.3.2", + "description": "The semantic version parser used by npm.", + "main": "index.js", + "scripts": { + "test": "tap", + "snap": "tap", + "preversion": "npm test", + "postversion": "npm publish", + "postpublish": "git push origin --follow-tags" + }, + "devDependencies": { + "tap": "^14.10.7" + }, + "license": "ISC", + "repository": "https://github.com/npm/node-semver", + "bin": { + "semver": "./bin/semver.js" + }, + "files": [ + "bin/**/*.js", + "range.bnf", + "classes/**/*.js", + "functions/**/*.js", + "internal/**/*.js", + "ranges/**/*.js", + "index.js", + "preload.js" + ], + "tap": { + "check-coverage": true, + "coverage-map": "map.js" + }, + "engines": { + "node": ">=10" + } +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/preload.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/preload.js new file mode 100644 index 00000000..947cd4f7 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/preload.js @@ -0,0 +1,2 @@ +// XXX remove in v8 or beyond +module.exports = require('./index.js') diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/range.bnf b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/range.bnf new file mode 100644 index 00000000..d4c6ae0d --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/range.bnf @@ -0,0 +1,16 @@ +range-set ::= range ( logical-or range ) * +logical-or ::= ( ' ' ) * '||' ( ' ' ) * +range ::= hyphen | simple ( ' ' simple ) * | '' +hyphen ::= partial ' - ' partial +simple ::= primitive | partial | tilde | caret +primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial +partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )? +xr ::= 'x' | 'X' | '*' | nr +nr ::= '0' | [1-9] ( [0-9] ) * +tilde ::= '~' partial +caret ::= '^' partial +qualifier ::= ( '-' pre )? ( '+' build )? +pre ::= parts +build ::= parts +parts ::= part ( '.' part ) * +part ::= nr | [-0-9A-Za-z]+ diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/gtr.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/gtr.js new file mode 100644 index 00000000..db7e3559 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/gtr.js @@ -0,0 +1,4 @@ +// Determine if version is greater than all the versions possible in the range. +const outside = require('./outside') +const gtr = (version, range, options) => outside(version, range, '>', options) +module.exports = gtr diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/intersects.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/intersects.js new file mode 100644 index 00000000..3d1a6f31 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/intersects.js @@ -0,0 +1,7 @@ +const Range = require('../classes/range') +const intersects = (r1, r2, options) => { + r1 = new Range(r1, options) + r2 = new Range(r2, options) + return r1.intersects(r2) +} +module.exports = intersects diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/ltr.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/ltr.js new file mode 100644 index 00000000..528a885e --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/ltr.js @@ -0,0 +1,4 @@ +const outside = require('./outside') +// Determine if version is less than all the versions possible in the range +const ltr = (version, range, options) => outside(version, range, '<', options) +module.exports = ltr diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/max-satisfying.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/max-satisfying.js new file mode 100644 index 00000000..6e3d993c --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/max-satisfying.js @@ -0,0 +1,25 @@ +const SemVer = require('../classes/semver') +const Range = require('../classes/range') + +const maxSatisfying = (versions, range, options) => { + let max = null + let maxSV = null + let rangeObj = null + try { + rangeObj = new Range(range, options) + } catch (er) { + return null + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + // satisfies(v, range, options) + if (!max || maxSV.compare(v) === -1) { + // compare(max, v, true) + max = v + maxSV = new SemVer(max, options) + } + } + }) + return max +} +module.exports = maxSatisfying diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-satisfying.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-satisfying.js new file mode 100644 index 00000000..9b60974e --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-satisfying.js @@ -0,0 +1,24 @@ +const SemVer = require('../classes/semver') +const Range = require('../classes/range') +const minSatisfying = (versions, range, options) => { + let min = null + let minSV = null + let rangeObj = null + try { + rangeObj = new Range(range, options) + } catch (er) { + return null + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + // satisfies(v, range, options) + if (!min || minSV.compare(v) === 1) { + // compare(min, v, true) + min = v + minSV = new SemVer(min, options) + } + } + }) + return min +} +module.exports = minSatisfying diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js new file mode 100644 index 00000000..7118d237 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js @@ -0,0 +1,57 @@ +const SemVer = require('../classes/semver') +const Range = require('../classes/range') +const gt = require('../functions/gt') + +const minVersion = (range, loose) => { + range = new Range(range, loose) + + let minver = new SemVer('0.0.0') + if (range.test(minver)) { + return minver + } + + minver = new SemVer('0.0.0-0') + if (range.test(minver)) { + return minver + } + + minver = null + for (let i = 0; i < range.set.length; ++i) { + const comparators = range.set[i] + + comparators.forEach((comparator) => { + // Clone to avoid manipulating the comparator's semver object. + const compver = new SemVer(comparator.semver.version) + switch (comparator.operator) { + case '>': + if (compver.prerelease.length === 0) { + compver.patch++ + } else { + compver.prerelease.push(0) + } + compver.raw = compver.format() + /* fallthrough */ + case '': + case '>=': + if (!minver || gt(minver, compver)) { + minver = compver + } + break + case '<': + case '<=': + /* Ignore maximum versions */ + break + /* istanbul ignore next */ + default: + throw new Error(`Unexpected operation: ${comparator.operator}`) + } + }) + } + + if (minver && range.test(minver)) { + return minver + } + + return null +} +module.exports = minVersion diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js new file mode 100644 index 00000000..e35ed117 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js @@ -0,0 +1,80 @@ +const SemVer = require('../classes/semver') +const Comparator = require('../classes/comparator') +const {ANY} = Comparator +const Range = require('../classes/range') +const satisfies = require('../functions/satisfies') +const gt = require('../functions/gt') +const lt = require('../functions/lt') +const lte = require('../functions/lte') +const gte = require('../functions/gte') + +const outside = (version, range, hilo, options) => { + version = new SemVer(version, options) + range = new Range(range, options) + + let gtfn, ltefn, ltfn, comp, ecomp + switch (hilo) { + case '>': + gtfn = gt + ltefn = lte + ltfn = lt + comp = '>' + ecomp = '>=' + break + case '<': + gtfn = lt + ltefn = gte + ltfn = gt + comp = '<' + ecomp = '<=' + break + default: + throw new TypeError('Must provide a hilo val of "<" or ">"') + } + + // If it satisifes the range it is not outside + if (satisfies(version, range, options)) { + return false + } + + // From now on, variable terms are as if we're in "gtr" mode. + // but note that everything is flipped for the "ltr" function. + + for (let i = 0; i < range.set.length; ++i) { + const comparators = range.set[i] + + let high = null + let low = null + + comparators.forEach((comparator) => { + if (comparator.semver === ANY) { + comparator = new Comparator('>=0.0.0') + } + high = high || comparator + low = low || comparator + if (gtfn(comparator.semver, high.semver, options)) { + high = comparator + } else if (ltfn(comparator.semver, low.semver, options)) { + low = comparator + } + }) + + // If the edge version comparator has a operator then our version + // isn't outside it + if (high.operator === comp || high.operator === ecomp) { + return false + } + + // If the lowest version comparator has an operator and our version + // is less than it then it isn't higher than the range + if ((!low.operator || low.operator === comp) && + ltefn(version, low.semver)) { + return false + } else if (low.operator === ecomp && ltfn(version, low.semver)) { + return false + } + } + return true +} + +module.exports = outside diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/simplify.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/simplify.js new file mode 100644 index 00000000..b792f972 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/simplify.js @@ -0,0 +1,44 @@ +// given a set of versions and a range, create a "simplified" range +// that includes the same versions that the original range does +// If the original range is shorter than the simplified one, return that. +const satisfies = require('../functions/satisfies.js') +const compare = require('../functions/compare.js') +module.exports = (versions, range, options) => { + const set = [] + let min = null + let prev = null + const v = versions.sort((a, b) => compare(a, b, options)) + for (const version of v) { + const included = satisfies(version, range, options) + if (included) { + prev = version + if (!min) + min = version + } else { + if (prev) { + set.push([min, prev]) + } + prev = null + min = null + } + } + if (min) + set.push([min, null]) + + const ranges = [] + for (const [min, max] of set) { + if (min === max) + ranges.push(min) + else if (!max && min === v[0]) + ranges.push('*') + else if (!max) + ranges.push(`>=${min}`) + else if (min === v[0]) + ranges.push(`<=${max}`) + else + ranges.push(`${min} - ${max}`) + } + const simplified = ranges.join(' || ') + const original = typeof range.raw === 'string' ? range.raw : String(range) + return simplified.length < original.length ? simplified : range +} diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js new file mode 100644 index 00000000..6ae29a3c --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js @@ -0,0 +1,155 @@ +const Range = require('../classes/range.js') +const { ANY } = require('../classes/comparator.js') +const satisfies = require('../functions/satisfies.js') +const compare = require('../functions/compare.js') + +// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff: +// - Every simple range `r1, r2, ...` is a subset of some `R1, R2, ...` +// +// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff: +// - If c is only the ANY comparator +// - If C is only the ANY comparator, return true +// - Else return false +// - Let EQ be the set of = comparators in c +// - If EQ is more than one, return true (null set) +// - Let GT be the highest > or >= comparator in c +// - Let LT be the lowest < or <= comparator in c +// - If GT and LT, and GT.semver > LT.semver, return true (null set) +// - If EQ +// - If GT, and EQ does not satisfy GT, return true (null set) +// - If LT, and EQ does not satisfy LT, return true (null set) +// - If EQ satisfies every C, return true +// - Else return false +// - If GT +// - If GT is lower than any > or >= comp in C, return false +// - If GT is >=, and GT.semver does not satisfy every C, return false +// - If LT +// - If LT.semver is greater than that of any > comp in C, return false +// - If LT is <=, and LT.semver does not satisfy every C, return false +// - If any C is a = range, and GT or LT are set, return false +// - Else return true + +const subset = (sub, dom, options) => { + sub = new Range(sub, options) + dom = new Range(dom, options) + let sawNonNull = false + + OUTER: for (const simpleSub of sub.set) { + for (const simpleDom of dom.set) { + const isSub = simpleSubset(simpleSub, simpleDom, options) + sawNonNull = sawNonNull || isSub !== null + if (isSub) + continue OUTER + } + // the null set is a subset of everything, but null simple ranges in + // a complex range should be ignored. so if we saw a non-null range, + // then we know this isn't a subset, but if EVERY simple range was null, + // then it is a subset. + if (sawNonNull) + return false + } + return true +} + +const simpleSubset = (sub, dom, options) => { + if (sub.length === 1 && sub[0].semver === ANY) + return dom.length === 1 && dom[0].semver === ANY + + const eqSet = new Set() + let gt, lt + for (const c of sub) { + if (c.operator === '>' || c.operator === '>=') + gt = higherGT(gt, c, options) + else if (c.operator === '<' || c.operator === '<=') + lt = lowerLT(lt, c, options) + else + eqSet.add(c.semver) + } + + if (eqSet.size > 1) + return null + + let gtltComp + if (gt && lt) { + gtltComp = compare(gt.semver, lt.semver, options) + if (gtltComp > 0) + return null + else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<=')) + return null + } + + // will iterate one or zero times + for (const eq of eqSet) { + if (gt && !satisfies(eq, String(gt), options)) + return null + + if (lt && !satisfies(eq, String(lt), options)) + return null + + for (const c of dom) { + if (!satisfies(eq, String(c), options)) + return false + } + return true + } + + let higher, lower + let hasDomLT, hasDomGT + for (const c of dom) { + hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>=' + hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<=' + if (gt) { + if (c.operator === '>' || c.operator === '>=') { + higher = higherGT(gt, c, options) + if (higher === c) + return false + } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options)) + return false + } + if (lt) { + if (c.operator === '<' || c.operator === '<=') { + lower = lowerLT(lt, c, options) + if (lower === c) + return false + } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options)) + return false + } + if (!c.operator && (lt || gt) && gtltComp !== 0) + return false + } + + // if there was a < or >, and nothing in the dom, then must be false + // UNLESS it was limited by another range in the other direction. + // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0 + if (gt && hasDomLT && !lt && gtltComp !== 0) + return false + + if (lt && hasDomGT && !gt && gtltComp !== 0) + return false + + return true +} + +// >=1.2.3 is lower than >1.2.3 +const higherGT = (a, b, options) => { + if (!a) + return b + const comp = compare(a.semver, b.semver, options) + return comp > 0 ? a + : comp < 0 ? b + : b.operator === '>' && a.operator === '>=' ? b + : a +} + +// <=1.2.3 is higher than <1.2.3 +const lowerLT = (a, b, options) => { + if (!a) + return b + const comp = compare(a.semver, b.semver, options) + return comp < 0 ? a + : comp > 0 ? b + : b.operator === '<' && a.operator === '<=' ? b + : a +} + +module.exports = subset diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/to-comparators.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/to-comparators.js new file mode 100644 index 00000000..6c8bc7e6 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/to-comparators.js @@ -0,0 +1,8 @@ +const Range = require('../classes/range') + +// Mostly just for testing and legacy API reasons +const toComparators = (range, options) => + new Range(range, options).set + .map(comp => comp.map(c => c.value).join(' ').trim().split(' ')) + +module.exports = toComparators diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/valid.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/valid.js new file mode 100644 index 00000000..365f3568 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/valid.js @@ -0,0 +1,11 @@ +const Range = require('../classes/range') +const validRange = (range, options) => { + try { + // Return '*' instead of '' so that truthiness works. + // This will throw if it's invalid anyway + return new Range(range, options).range || '*' + } catch (er) { + return null + } +} +module.exports = validRange diff --git a/node_modules/@typescript-eslint/typescript-estree/package.json b/node_modules/@typescript-eslint/typescript-estree/package.json index b4353db6..840d2d06 100644 --- a/node_modules/@typescript-eslint/typescript-estree/package.json +++ b/node_modules/@typescript-eslint/typescript-estree/package.json @@ -1,16 +1,16 @@ { "name": "@typescript-eslint/typescript-estree", - "version": "2.22.0", + "version": "4.3.0", "description": "A parser that converts TypeScript source code into an ESTree compatible form", - "main": "dist/parser.js", - "types": "dist/parser.d.ts", + "main": "dist/index.js", + "types": "dist/index.d.ts", "files": [ "dist", "README.md", "LICENSE" ], "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^10.12.0 || >=12.0.0" }, "repository": { "type": "git", @@ -32,34 +32,40 @@ ], "scripts": { "build": "tsc -b tsconfig.build.json", + "postbuild": "downlevel-dts dist _ts3.4/dist", "clean": "tsc -b tsconfig.build.json --clean", + "postclean": "rimraf dist", "format": "prettier --write \"./**/*.{ts,js,json,md}\" --ignore-path ../../.prettierignore", "lint": "eslint . --ext .js,.ts --ignore-path='../../.eslintignore'", "test": "jest --coverage", "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { + "@typescript-eslint/types": "4.3.0", + "@typescript-eslint/visitor-keys": "4.3.0", "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", - "glob": "^7.1.6", + "globby": "^11.0.1", "is-glob": "^4.0.1", "lodash": "^4.17.15", - "semver": "^6.3.0", + "semver": "^7.3.2", "tsutils": "^3.17.1" }, "devDependencies": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.11.3", + "@babel/types": "^7.11.0", "@types/babel__code-frame": "^7.0.1", - "@types/debug": "^4.1.5", - "@types/glob": "^7.1.1", + "@types/debug": "*", + "@types/glob": "*", "@types/is-glob": "^4.0.1", - "@types/lodash": "^4.14.149", - "@types/semver": "^6.2.0", - "@types/tmp": "^0.1.0", - "@typescript-eslint/shared-fixtures": "2.22.0", - "tmp": "^0.1.0", + "@types/lodash": "*", + "@types/semver": "^7.1.0", + "@types/tmp": "^0.2.0", + "@typescript-eslint/shared-fixtures": "4.3.0", + "glob": "*", + "jest-specific-snapshot": "*", + "make-dir": "*", + "tmp": "^0.2.1", "typescript": "*" }, "peerDependenciesMeta": { @@ -71,5 +77,12 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "5a097d316fb084dc4b13e87d68fe9bf43d8a9548" + "typesVersions": { + "<3.8": { + "*": [ + "_ts3.4/*" + ] + } + }, + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md b/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md index ef433031..4ef4cf67 100644 --- a/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md +++ b/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md @@ -3,6 +3,30 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.2.0...v4.3.0) (2020-09-28) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +# [4.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.1...v4.2.0) (2020-09-21) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +## [4.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.1.0...v4.1.1) (2020-09-14) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + # [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) **Note:** Version bump only for package @typescript-eslint/visitor-keys diff --git a/node_modules/@typescript-eslint/visitor-keys/package.json b/node_modules/@typescript-eslint/visitor-keys/package.json index cca9d900..5d074568 100644 --- a/node_modules/@typescript-eslint/visitor-keys/package.json +++ b/node_modules/@typescript-eslint/visitor-keys/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/visitor-keys", - "version": "4.1.0", + "version": "4.3.0", "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", "keywords": [ "eslint", @@ -38,7 +38,7 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/types": "4.1.0", + "@typescript-eslint/types": "4.3.0", "eslint-visitor-keys": "^2.0.0" }, "devDependencies": { @@ -55,5 +55,5 @@ ] } }, - "gitHead": "00a24706222254774121ee62038e67d0efa993e7" + "gitHead": "229631e6cd90bba8f509a6d49fec72fd7a576ccf" } diff --git a/node_modules/aria-query/CHANGELOG.md b/node_modules/aria-query/CHANGELOG.md deleted file mode 100644 index ec8be486..00000000 --- a/node_modules/aria-query/CHANGELOG.md +++ /dev/null @@ -1,19 +0,0 @@ -# aria-query Change Log - -## 1.0.0 - -- Updated values of aria-haspopup to include ARIA 1.1 role values -- Added the CHANGELOG file - -## 2.0.0 - -- Remove package-lock file. -- Add Watchman config file. - -## 2.0.1 - -- Added aria-errormessage to the ARIA Props Map. - -## 3.0.0 - -- Bumping to a major version because of a previous breaking change. diff --git a/node_modules/aria-query/LICENSE b/node_modules/aria-query/LICENSE deleted file mode 100644 index 5e0fd33c..00000000 --- a/node_modules/aria-query/LICENSE +++ /dev/null @@ -1,201 +0,0 @@ -Apache License -Version 2.0, January 2004 -http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - -"License" shall mean the terms and conditions for use, reproduction, -and distribution as defined by Sections 1 through 9 of this document. - -"Licensor" shall mean the copyright owner or entity authorized by -the copyright owner that is granting the License. - -"Legal Entity" shall mean the union of the acting entity and all -other entities that control, are controlled by, or are under common -control with that entity. For the purposes of this definition, -"control" means (i) the power, direct or indirect, to cause the -direction or management of such entity, whether by contract or -otherwise, or (ii) ownership of fifty percent (50%) or more of the -outstanding shares, or (iii) beneficial ownership of such entity. - -"You" (or "Your") shall mean an individual or Legal Entity -exercising permissions granted by this License. - -"Source" form shall mean the preferred form for making modifications, -including but not limited to software source code, documentation -source, and configuration files. - -"Object" form shall mean any form resulting from mechanical -transformation or translation of a Source form, including but -not limited to compiled object code, generated documentation, -and conversions to other media types. - -"Work" shall mean the work of authorship, whether in Source or -Object form, made available under the License, as indicated by a -copyright notice that is included in or attached to the work -(an example is provided in the Appendix below). - -"Derivative Works" shall mean any work, whether in Source or Object -form, that is based on (or derived from) the Work and for which the -editorial revisions, annotations, elaborations, or other modifications -represent, as a whole, an original work of authorship. For the purposes -of this License, Derivative Works shall not include works that remain -separable from, or merely link (or bind by name) to the interfaces of, -the Work and Derivative Works thereof. - -"Contribution" shall mean any work of authorship, including -the original version of the Work and any modifications or additions -to that Work or Derivative Works thereof, that is intentionally -submitted to Licensor for inclusion in the Work by the copyright owner -or by an individual or Legal Entity authorized to submit on behalf of -the copyright owner. For the purposes of this definition, "submitted" -means any form of electronic, verbal, or written communication sent -to the Licensor or its representatives, including but not limited to -communication on electronic mailing lists, source code control systems, -and issue tracking systems that are managed by, or on behalf of, the -Licensor for the purpose of discussing and improving the Work, but -excluding communication that is conspicuously marked or otherwise -designated in writing by the copyright owner as "Not a Contribution." - -"Contributor" shall mean Licensor and any individual or Legal Entity -on behalf of whom a Contribution has been received by Licensor and -subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of -this License, each Contributor hereby grants to You a perpetual, -worldwide, non-exclusive, no-charge, royalty-free, irrevocable -copyright license to reproduce, prepare Derivative Works of, -publicly display, publicly perform, sublicense, and distribute the -Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of -this License, each Contributor hereby grants to You a perpetual, -worldwide, non-exclusive, no-charge, royalty-free, irrevocable -(except as stated in this section) patent license to make, have made, -use, offer to sell, sell, import, and otherwise transfer the Work, -where such license applies only to those patent claims licensable -by such Contributor that are necessarily infringed by their -Contribution(s) alone or by combination of their Contribution(s) -with the Work to which such Contribution(s) was submitted. If You -institute patent litigation against any entity (including a -cross-claim or counterclaim in a lawsuit) alleging that the Work -or a Contribution incorporated within the Work constitutes direct -or contributory patent infringement, then any patent licenses -granted to You under this License for that Work shall terminate -as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the -Work or Derivative Works thereof in any medium, with or without -modifications, and in Source or Object form, provided that You -meet the following conditions: - -(a) You must give any other recipients of the Work or -Derivative Works a copy of this License; and - -(b) You must cause any modified files to carry prominent notices -stating that You changed the files; and - -(c) You must retain, in the Source form of any Derivative Works -that You distribute, all copyright, patent, trademark, and -attribution notices from the Source form of the Work, -excluding those notices that do not pertain to any part of -the Derivative Works; and - -(d) If the Work includes a "NOTICE" text file as part of its -distribution, then any Derivative Works that You distribute must -include a readable copy of the attribution notices contained -within such NOTICE file, excluding those notices that do not -pertain to any part of the Derivative Works, in at least one -of the following places: within a NOTICE text file distributed -as part of the Derivative Works; within the Source form or -documentation, if provided along with the Derivative Works; or, -within a display generated by the Derivative Works, if and -wherever such third-party notices normally appear. The contents -of the NOTICE file are for informational purposes only and -do not modify the License. You may add Your own attribution -notices within Derivative Works that You distribute, alongside -or as an addendum to the NOTICE text from the Work, provided -that such additional attribution notices cannot be construed -as modifying the License. - -You may add Your own copyright statement to Your modifications and -may provide additional or different license terms and conditions -for use, reproduction, or distribution of Your modifications, or -for any such Derivative Works as a whole, provided Your use, -reproduction, and distribution of the Work otherwise complies with -the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, -any Contribution intentionally submitted for inclusion in the Work -by You to the Licensor shall be under the terms and conditions of -this License, without any additional terms or conditions. -Notwithstanding the above, nothing herein shall supersede or modify -the terms of any separate license agreement you may have executed -with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade -names, trademarks, service marks, or product names of the Licensor, -except as required for reasonable and customary use in describing the -origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or -agreed to in writing, Licensor provides the Work (and each -Contributor provides its Contributions) on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -implied, including, without limitation, any warranties or conditions -of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A -PARTICULAR PURPOSE. You are solely responsible for determining the -appropriateness of using or redistributing the Work and assume any -risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, -whether in tort (including negligence), contract, or otherwise, -unless required by applicable law (such as deliberate and grossly -negligent acts) or agreed to in writing, shall any Contributor be -liable to You for damages, including any direct, indirect, special, -incidental, or consequential damages of any character arising as a -result of this License or out of the use or inability to use the -Work (including but not limited to damages for loss of goodwill, -work stoppage, computer failure or malfunction, or any and all -other commercial damages or losses), even if such Contributor -has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing -the Work or Derivative Works thereof, You may choose to offer, -and charge a fee for, acceptance of support, warranty, indemnity, -or other liability obligations and/or rights consistent with this -License. However, in accepting such obligations, You may act only -on Your own behalf and on Your sole responsibility, not on behalf -of any other Contributor, and only if You agree to indemnify, -defend, and hold each Contributor harmless for any liability -incurred by, or claims asserted against, such Contributor by reason -of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - -To apply the Apache License to your work, attach the following -boilerplate notice, with the fields enclosed by brackets "{}" -replaced with your own identifying information. (Don't include -the brackets!) The text should be enclosed in the appropriate -comment syntax for the file format. We also recommend that a -file or class name and description of purpose be included on the -same "printed page" as the copyright notice for easier -identification within third-party archives. - -Copyright {yyyy} {name of copyright owner} - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/node_modules/aria-query/README.md b/node_modules/aria-query/README.md deleted file mode 100644 index df8fd0d3..00000000 --- a/node_modules/aria-query/README.md +++ /dev/null @@ -1,161 +0,0 @@ -[![Build Status](https://travis-ci.org/A11yance/aria-query.svg?branch=master)](https://travis-ci.org/A11yance/aria-query) - -CDN URL: https://npm-cdn.com/pkg/aria-query/ - -# ARIA Query - -Programmatic access to the [WAI-ARIA 1.1 Roles Model](https://www.w3.org/TR/wai-aria-1.1/#roles). - -## Utilities - -### Roles - -``` -import { roles } from 'aria-query'; -``` - -A [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) of -role names to the role definition. For example: - -``` -let alertRole = roles.get('alert'); -/** - * Value of alertRole - * { - * "requiredProps": [], - * "props": [ - * "aria-expanded", - * "aria-atomic", - * "aria-busy", - * "aria-controls", - * "aria-describedby", - * "aria-disabled", - * "aria-dropeffect", - * "aria-flowto", - * "aria-grabbed", - * "aria-haspopup", - * "aria-hidden", - * "aria-invalid", - * "aria-label", - * "aria-labelledby", - * "aria-live", - * "aria-owns", - * "aria-relevant" - * ], - * "abstract": false, - * "interactive": false, - * "childrenPresentational": false, - * "baseConcepts": [], - * "relatedConcepts": [ { - * "module": "XForms", - * "concept": { - * "name": "alert" - * } - * }] - * } -``` - -### Elements to Roles - -``` -import { elementRoles } from 'aria-query'; -``` - -HTML Elements with inherent roles are mapped to those roles. In the case of an element like ``, the element often requires a `type` attribute to map to an ARIA role. - -``` -Map { - '{"name": "article"}' => Set { 'article' }, - '{"name": "button"}' => Set { 'button' }, - '{"name": "td"}' => Set { 'cell', 'gridcell' }, - '{"name": "input", "attributes": [ {"name": "type", "value": "checkbox"}] }' => Set { 'checkbox' }, - '{"name": "th"}' => Set { 'columnheader' }, - '{"name": "select"}' => Set { 'combobox', 'listbox' }, - '{"name": "menuitem"}' => Set { 'command', 'menuitem' }, - '{"name": "dd"}' => Set { 'definition' }, - '{"name": "dfn"}' => Set { 'definition' }, - '{"name": "figure"}' => Set { 'figure' }, - '{"name": "form"}' => Set { 'form' }, - '{"name": "table"}' => Set { 'grid', 'table' }, - '{"name": "fieldset"}' => Set { 'group' }, - '{"name": "h1"}' => Set { 'heading' }, - '{"name": "h2"}' => Set { 'heading' }, - '{"name": "h3"}' => Set { 'heading' }, - '{"name": "h4"}' => Set { 'heading' }, - '{"name": "h5"}' => Set { 'heading' }, - '{"name": "h6"}' => Set { 'heading' }, - '{"name": "img"}' => Set { 'img' }, - '{"name": "a"}' => Set { 'link' }, - '{"name": "link"}' => Set { 'link' }, - '{"name": "ol"}' => Set { 'list' }, - '{"name": "ul"}' => Set { 'list' }, - '{"name": "li"}' => Set { 'listitem' }, - '{"name": "nav"}' => Set { 'navigation' }, - '{"name": "option"}' => Set { 'option' }, - '{"name": "input", "attributes": [ {"name": "type", "value": "radio"}] }' => Set { 'radio' }, - '{"name": "frame"}' => Set { 'region' }, - '{"name": "rel"}' => Set { 'roletype' }, - '{"name": "tr"}' => Set { 'row' }, - '{"name": "tbody"}' => Set { 'rowgroup' }, - '{"name": "tfoot"}' => Set { 'rowgroup' }, - '{"name": "thead"}' => Set { 'rowgroup' }, - '{"name": "th", "attributes": [ {"name": "scope", "value": "row"}] }' => Set { 'rowheader' }, - '{"name": "input", "attributes": [ {"name": "type", "value": "search"}] }' => Set { 'searchbox' }, - '{"name": "hr"}' => Set { 'separator' }, - '{"name": "dt"}' => Set { 'term' }, - '{"name": "textarea"}' => Set { 'textbox' }, - '{"name": "input", "attributes": [ {"name": "type", "value": "text"}] }' => Set { 'textbox' } -} -``` - -The map of elements to roles is keyed by an HTML concept. An HTML concept corresponds to the `baseConcepts` and `relatedConcepts` of an ARIA role. Concepts exist in the context of a `module`: HTML, XForms, Dublin Core, for example. The concept representation is an object literal with a name property (the element name) and an optional attributes array. - -The roles are provided in a [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set). - -### Role to element - -``` -import { roleElements } from 'aria-query'; -``` - -ARIA roles are mapped to the HTML Elements with the same inherent role. Some roles, such as `columnheader` are only mapped to an HMTL element that expresses specific attributes. In the case of ``, the element often requires a `type` attribute to map to an ARIA role. - -``` -Map { - 'article' => Set { '{"name": "article"}' }, - 'button' => Set { '{"name": "button"}' }, - 'cell' => Set { '{"name": "td"}' }, - 'checkbox' => Set { '{"name": "input", "attributes": [ {"name": "type", "value": "checkbox"}] }' }, - 'columnheader' => Set { '{"name": "th"}' }, - 'combobox' => Set { '{"name": "select"}' }, - 'command' => Set { '{"name": "menuitem"}' }, - 'definition' => Set { '{"name": "dd"}', '{"name": "dfn"}' }, - 'figure' => Set { '{"name": "figure"}' }, - 'form' => Set { '{"name": "form"}' }, - 'grid' => Set { '{"name": "table"}' }, - 'gridcell' => Set { '{"name": "td"}' }, - 'group' => Set { '{"name": "fieldset"}' }, - 'heading' => Set { '{"name": "h1"}', '{"name": "h2"}', '{"name": "h3"}', '{"name": "h4"}', '{"name": "h5"}', '{"name": "h6"}' }, - 'img' => Set { '{"name": "img"}' }, - 'link' => Set { '{"name": "a"}', '{"name": "link"}' }, - 'list' => Set { '{"name": "ol"}', '{"name": "ul"}' }, - 'listbox' => Set { '{"name": "select"}' }, - 'listitem' => Set { '{"name": "li"}' }, - 'menuitem' => Set { '{"name": "menuitem"}' }, - 'navigation' => Set { '{"name": "nav"}' }, - 'option' => Set { '{"name": "option"}' }, - 'radio' => Set { '{"name": "input", "attributes": [ {"name": "type", "value": "radio"}] }' }, - 'region' => Set { '{"name": "frame"}' }, - 'roletype' => Set { '{"name": "rel"}' }, - 'row' => Set { '{"name": "tr"}' }, - 'rowgroup' => Set { '{"name": "tbody"}', '{"name": "tfoot"}', '{"name": "thead"}' }, - 'rowheader' => Set { '{"name": "th", "attributes": [ {"name": "scope", "value": "row"}] }' }, - 'searchbox' => Set { '{"name": "input", "attributes": [ {"name": "type", "value": "search"}] }' }, - 'separator' => Set { '{"name": "hr"}' }, - 'table' => Set { '{"name": "table"}' }, - 'term' => Set { '{"name": "dt"}' }, - 'textbox' => Set { '{"name": "textarea"}', '{"name": "input", "attributes": [ {"name": "type", "value": "text"}] }' } -} -``` - -The HTML concept values are provided in a [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set). diff --git a/node_modules/aria-query/lib/ariaPropsMap.js b/node_modules/aria-query/lib/ariaPropsMap.js deleted file mode 100644 index f049e28e..00000000 --- a/node_modules/aria-query/lib/ariaPropsMap.js +++ /dev/null @@ -1,116 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - - -var ariaPropsMap = new Map([['aria-activedescendant', { - 'type': 'id' -}], ['aria-atomic', { - 'type': 'boolean' -}], ['aria-autocomplete', { - 'type': 'token', - 'values': ['inline', 'list', 'both', 'none'] -}], ['aria-busy', { - 'type': 'boolean' -}], ['aria-checked', { - 'type': 'tristate' -}], ['aria-colcount', { - type: 'integer' -}], ['aria-colindex', { - type: 'integer' -}], ['aria-colspan', { - type: 'integer' -}], ['aria-controls', { - 'type': 'idlist' -}], ['aria-current', { - type: 'token', - values: ['page', 'step', 'location', 'date', 'time', true, false] -}], ['aria-describedby', { - 'type': 'idlist' -}], ['aria-disabled', { - 'type': 'boolean' -}], ['aria-dropeffect', { - 'type': 'tokenlist', - 'values': ['copy', 'move', 'link', 'execute', 'popup', 'none'] -}], ['aria-errormessage', { - 'type': 'string' -}], ['aria-expanded', { - 'type': 'boolean', - 'allowundefined': true -}], ['aria-flowto', { - 'type': 'idlist' -}], ['aria-grabbed', { - 'type': 'boolean', - 'allowundefined': true -}], ['aria-haspopup', { - 'type': 'token', - 'values': [false, true, 'menu', 'listbox', 'tree', 'grid', 'dialog'] -}], ['aria-hidden', { - 'type': 'boolean' -}], ['aria-invalid', { - 'type': 'token', - 'values': ['grammar', false, 'spelling', true] -}], ['aria-keyshortcuts', { - type: 'string' -}], ['aria-label', { - 'type': 'string' -}], ['aria-labelledby', { - 'type': 'idlist' -}], ['aria-level', { - 'type': 'integer' -}], ['aria-live', { - 'type': 'token', - 'values': ['off', 'polite', 'assertive'] -}], ['aria-modal', { - type: 'boolean' -}], ['aria-multiline', { - 'type': 'boolean' -}], ['aria-multiselectable', { - 'type': 'boolean' -}], ['aria-orientation', { - 'type': 'token', - 'values': ['vertical', 'horizontal'] -}], ['aria-owns', { - 'type': 'idlist' -}], ['aria-placeholder', { - type: 'string' -}], ['aria-posinset', { - 'type': 'integer' -}], ['aria-pressed', { - 'type': 'tristate' -}], ['aria-readonly', { - 'type': 'boolean' -}], ['aria-relevant', { - 'type': 'tokenlist', - 'values': ['additions', 'removals', 'text', 'all'] -}], ['aria-required', { - 'type': 'boolean' -}], ['aria-roledescription', { - type: 'string' -}], ['aria-rowcount', { - type: 'integer' -}], ['aria-rowindex', { - type: 'integer' -}], ['aria-rowspan', { - type: 'integer' -}], ['aria-selected', { - 'type': 'boolean', - 'allowundefined': true -}], ['aria-setsize', { - 'type': 'integer' -}], ['aria-sort', { - 'type': 'token', - 'values': ['ascending', 'descending', 'none', 'other'] -}], ['aria-valuemax', { - 'type': 'number' -}], ['aria-valuemin', { - 'type': 'number' -}], ['aria-valuenow', { - 'type': 'number' -}], ['aria-valuetext', { - 'type': 'string' -}]]); - -exports.default = ariaPropsMap; \ No newline at end of file diff --git a/node_modules/aria-query/lib/domMap.js b/node_modules/aria-query/lib/domMap.js deleted file mode 100644 index 56691c0b..00000000 --- a/node_modules/aria-query/lib/domMap.js +++ /dev/null @@ -1,266 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var domMap = new Map([['a', { - reserved: false -}], ['abbr', { - reserved: false -}], ['acronym', { - reserved: false -}], ['address', { - reserved: false -}], ['applet', { - reserved: false -}], ['area', { - reserved: false -}], ['article', { - reserved: false -}], ['aside', { - reserved: false -}], ['audio', { - reserved: false -}], ['b', { - reserved: false -}], ['base', { - reserved: true -}], ['bdi', { - reserved: false -}], ['bdo', { - reserved: false -}], ['big', { - reserved: false -}], ['blink', { - reserved: false -}], ['blockquote', { - reserved: false -}], ['body', { - reserved: false -}], ['br', { - reserved: false -}], ['button', { - reserved: false -}], ['canvas', { - reserved: false -}], ['caption', { - reserved: false -}], ['center', { - reserved: false -}], ['cite', { - reserved: false -}], ['code', { - reserved: false -}], ['col', { - reserved: true -}], ['colgroup', { - reserved: true -}], ['content', { - reserved: false -}], ['data', { - reserved: false -}], ['datalist', { - reserved: false -}], ['dd', { - reserved: false -}], ['del', { - reserved: false -}], ['details', { - reserved: false -}], ['dfn', { - reserved: false -}], ['dialog', { - reserved: false -}], ['dir', { - reserved: false -}], ['div', { - reserved: false -}], ['dl', { - reserved: false -}], ['dt', { - reserved: false -}], ['em', { - reserved: false -}], ['embed', { - reserved: false -}], ['fieldset', { - reserved: false -}], ['figcaption', { - reserved: false -}], ['figure', { - reserved: false -}], ['font', { - reserved: false -}], ['footer', { - reserved: false -}], ['form', { - reserved: false -}], ['frame', { - reserved: false -}], ['frameset', { - reserved: false -}], ['h1', { - reserved: false -}], ['h2', { - reserved: false -}], ['h3', { - reserved: false -}], ['h4', { - reserved: false -}], ['h5', { - reserved: false -}], ['h6', { - reserved: false -}], ['head', { - reserved: true -}], ['header', { - reserved: false -}], ['hgroup', { - reserved: false -}], ['hr', { - reserved: false -}], ['html', { - reserved: true -}], ['i', { - reserved: false -}], ['iframe', { - reserved: false -}], ['img', { - reserved: false -}], ['input', { - reserved: false -}], ['ins', { - reserved: false -}], ['kbd', { - reserved: false -}], ['keygen', { - reserved: false -}], ['label', { - reserved: false -}], ['legend', { - reserved: false -}], ['li', { - reserved: false -}], ['link', { - reserved: true -}], ['main', { - reserved: false -}], ['map', { - reserved: false -}], ['mark', { - reserved: false -}], ['marquee', { - reserved: false -}], ['menu', { - reserved: false -}], ['menuitem', { - reserved: false -}], ['meta', { - reserved: true -}], ['meter', { - reserved: false -}], ['nav', { - reserved: false -}], ['noembed', { - reserved: true -}], ['noscript', { - reserved: true -}], ['object', { - reserved: false -}], ['ol', { - reserved: false -}], ['optgroup', { - reserved: false -}], ['option', { - reserved: false -}], ['output', { - reserved: false -}], ['p', { - reserved: false -}], ['param', { - reserved: true -}], ['picture', { - reserved: true -}], ['pre', { - reserved: false -}], ['progress', { - reserved: false -}], ['q', { - reserved: false -}], ['rp', { - reserved: false -}], ['rt', { - reserved: false -}], ['rtc', { - reserved: false -}], ['ruby', { - reserved: false -}], ['s', { - reserved: false -}], ['samp', { - reserved: false -}], ['script', { - reserved: true -}], ['section', { - reserved: false -}], ['select', { - reserved: false -}], ['small', { - reserved: false -}], ['source', { - reserved: true -}], ['spacer', { - reserved: false -}], ['span', { - reserved: false -}], ['strike', { - reserved: false -}], ['strong', { - reserved: false -}], ['style', { - reserved: true -}], ['sub', { - reserved: false -}], ['summary', { - reserved: false -}], ['sup', { - reserved: false -}], ['table', { - reserved: false -}], ['tbody', { - reserved: false -}], ['td', { - reserved: false -}], ['textarea', { - reserved: false -}], ['tfoot', { - reserved: false -}], ['th', { - reserved: false -}], ['thead', { - reserved: false -}], ['time', { - reserved: false -}], ['title', { - reserved: true -}], ['tr', { - reserved: false -}], ['track', { - reserved: true -}], ['tt', { - reserved: false -}], ['u', { - reserved: false -}], ['ul', { - reserved: false -}], ['var', { - reserved: false -}], ['video', { - reserved: false -}], ['wbr', { - reserved: false -}], ['xmp', { - reserved: false -}]]); - -exports.default = domMap; \ No newline at end of file diff --git a/node_modules/aria-query/lib/elementRoleMap.js b/node_modules/aria-query/lib/elementRoleMap.js deleted file mode 100644 index dcb8bc01..00000000 --- a/node_modules/aria-query/lib/elementRoleMap.js +++ /dev/null @@ -1,47 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _rolesMap = require('./rolesMap'); - -var _rolesMap2 = _interopRequireDefault(_rolesMap); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } - -var elementRoleMap = new Map([]); - -[].concat(_toConsumableArray(_rolesMap2.default.keys())).forEach(function (key) { - var role = _rolesMap2.default.get(key); - if (role) { - [].concat(_toConsumableArray(role.baseConcepts), _toConsumableArray(role.relatedConcepts)).forEach(function (relation) { - if (relation.module === 'HTML') { - var concept = relation.concept; - if (concept) { - var conceptStr = JSON.stringify(concept); - - var roles = ([].concat(_toConsumableArray(elementRoleMap.entries())).find(function (_ref) { - var _ref2 = _slicedToArray(_ref, 2), - key = _ref2[0], - value = _ref2[1]; - - return JSON.stringify(key) === conceptStr; - }) || [])[1]; - - if (!roles) { - roles = new Set([]); - } - roles.add(key); - elementRoleMap.set(concept, roles); - } - } - }); - } -}); - -exports.default = elementRoleMap; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/commandRole.js b/node_modules/aria-query/lib/etc/roles/abstract/commandRole.js deleted file mode 100644 index 7dbaa0dc..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/commandRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var commandRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'menuitem' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget']] -}; - -exports.default = commandRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/compositeRole.js b/node_modules/aria-query/lib/etc/roles/abstract/compositeRole.js deleted file mode 100644 index c60a7dde..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/compositeRole.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var compositeRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-activedescendant': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget']] -}; - -exports.default = compositeRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/inputRole.js b/node_modules/aria-query/lib/etc/roles/abstract/inputRole.js deleted file mode 100644 index fad691f2..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/inputRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var inputRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'XForms', - concept: { - name: 'input' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget']] -}; - -exports.default = inputRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/landmarkRole.js b/node_modules/aria-query/lib/etc/roles/abstract/landmarkRole.js deleted file mode 100644 index 4ba2a0cc..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/landmarkRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var landmarkRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = landmarkRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/rangeRole.js b/node_modules/aria-query/lib/etc/roles/abstract/rangeRole.js deleted file mode 100644 index 3d567652..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/rangeRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var rangeRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-valuemax': null, - 'aria-valuemin': null, - 'aria-valuenow': null, - 'aria-valuetext': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget']] -}; - -exports.default = rangeRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/roletypeRole.js b/node_modules/aria-query/lib/etc/roles/abstract/roletypeRole.js deleted file mode 100644 index d1b24d96..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/roletypeRole.js +++ /dev/null @@ -1,57 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var roletypeRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-atomic': null, - 'aria-busy': null, - 'aria-controls': null, - 'aria-current': null, - 'aria-describedby': null, - 'aria-details': null, - 'aria-disabled': null, - 'aria-dropeffect': null, - 'aria-errormessage': null, - 'aria-flowto': null, - 'aria-grabbed': null, - 'aria-haspopup': null, - 'aria-hidden': null, - 'aria-invalid': null, - 'aria-keyshortcuts': null, - 'aria-label': null, - 'aria-labelledby': null, - 'aria-live': null, - 'aria-owns': null, - 'aria-relevant': null, - 'aria-roledescription': null - }, - relatedConcepts: [{ - module: 'XHTML', - concept: { - name: 'role' - } - }, { - module: 'HTML', - concept: { - name: 'rel' - } - }, { - module: 'Dublin Core', - concept: { - name: 'type' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [] -}; - -exports.default = roletypeRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/sectionRole.js b/node_modules/aria-query/lib/etc/roles/abstract/sectionRole.js deleted file mode 100644 index 2022e90b..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/sectionRole.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var sectionRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: [], - props: { - 'aria-expanded': null - }, - relatedConcepts: [{ - module: 'DTB', - concept: { - name: 'frontmatter' - } - }, { - module: 'DTB', - concept: { - name: 'level' - } - }, { - module: 'SMIL', - concept: { - name: 'level' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = sectionRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/sectionheadRole.js b/node_modules/aria-query/lib/etc/roles/abstract/sectionheadRole.js deleted file mode 100644 index cea70434..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/sectionheadRole.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var sectionheadRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-expanded': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = sectionheadRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/selectRole.js b/node_modules/aria-query/lib/etc/roles/abstract/selectRole.js deleted file mode 100644 index 76b627e8..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/selectRole.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var selectRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-orientation': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite'], ['roletype', 'structure', 'section', 'group']] -}; - -exports.default = selectRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/structureRole.js b/node_modules/aria-query/lib/etc/roles/abstract/structureRole.js deleted file mode 100644 index ccd6f9b2..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/structureRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var structureRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: [], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype']] -}; - -exports.default = structureRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/widgetRole.js b/node_modules/aria-query/lib/etc/roles/abstract/widgetRole.js deleted file mode 100644 index d9941357..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/widgetRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var widgetRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: [], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype']] -}; - -exports.default = widgetRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/abstract/windowRole.js b/node_modules/aria-query/lib/etc/roles/abstract/windowRole.js deleted file mode 100644 index ce31439a..00000000 --- a/node_modules/aria-query/lib/etc/roles/abstract/windowRole.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var windowRole = { - abstract: true, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-expanded': null, - 'aria-modal': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype']] -}; - -exports.default = windowRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/ariaAbstractRoles.js b/node_modules/aria-query/lib/etc/roles/ariaAbstractRoles.js deleted file mode 100644 index a7c136a1..00000000 --- a/node_modules/aria-query/lib/etc/roles/ariaAbstractRoles.js +++ /dev/null @@ -1,59 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _commandRole = require('./abstract/commandRole'); - -var _commandRole2 = _interopRequireDefault(_commandRole); - -var _compositeRole = require('./abstract/compositeRole'); - -var _compositeRole2 = _interopRequireDefault(_compositeRole); - -var _inputRole = require('./abstract/inputRole'); - -var _inputRole2 = _interopRequireDefault(_inputRole); - -var _landmarkRole = require('./abstract/landmarkRole'); - -var _landmarkRole2 = _interopRequireDefault(_landmarkRole); - -var _rangeRole = require('./abstract/rangeRole'); - -var _rangeRole2 = _interopRequireDefault(_rangeRole); - -var _roletypeRole = require('./abstract/roletypeRole'); - -var _roletypeRole2 = _interopRequireDefault(_roletypeRole); - -var _sectionRole = require('./abstract/sectionRole'); - -var _sectionRole2 = _interopRequireDefault(_sectionRole); - -var _sectionheadRole = require('./abstract/sectionheadRole'); - -var _sectionheadRole2 = _interopRequireDefault(_sectionheadRole); - -var _selectRole = require('./abstract/selectRole'); - -var _selectRole2 = _interopRequireDefault(_selectRole); - -var _structureRole = require('./abstract/structureRole'); - -var _structureRole2 = _interopRequireDefault(_structureRole); - -var _widgetRole = require('./abstract/widgetRole'); - -var _widgetRole2 = _interopRequireDefault(_widgetRole); - -var _windowRole = require('./abstract/windowRole'); - -var _windowRole2 = _interopRequireDefault(_windowRole); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var ariaAbstractRoles = new Map([['command', _commandRole2.default], ['composite', _compositeRole2.default], ['input', _inputRole2.default], ['landmark', _landmarkRole2.default], ['range', _rangeRole2.default], ['roletype', _roletypeRole2.default], ['section', _sectionRole2.default], ['sectionhead', _sectionheadRole2.default], ['select', _selectRole2.default], ['structure', _structureRole2.default], ['widget', _widgetRole2.default], ['window', _windowRole2.default]]); - -exports.default = ariaAbstractRoles; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/ariaDpubRoles.js b/node_modules/aria-query/lib/etc/roles/ariaDpubRoles.js deleted file mode 100644 index 9fe38c08..00000000 --- a/node_modules/aria-query/lib/etc/roles/ariaDpubRoles.js +++ /dev/null @@ -1,166 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _docAbstractRole = require('./dpub/docAbstractRole'); - -var _docAbstractRole2 = _interopRequireDefault(_docAbstractRole); - -var _docAcknowledgmentsRole = require('./dpub/docAcknowledgmentsRole'); - -var _docAcknowledgmentsRole2 = _interopRequireDefault(_docAcknowledgmentsRole); - -var _docAfterwordRole = require('./dpub/docAfterwordRole'); - -var _docAfterwordRole2 = _interopRequireDefault(_docAfterwordRole); - -var _docAppendixRole = require('./dpub/docAppendixRole'); - -var _docAppendixRole2 = _interopRequireDefault(_docAppendixRole); - -var _docBacklinkRole = require('./dpub/docBacklinkRole'); - -var _docBacklinkRole2 = _interopRequireDefault(_docBacklinkRole); - -var _docBiblioentryRole = require('./dpub/docBiblioentryRole'); - -var _docBiblioentryRole2 = _interopRequireDefault(_docBiblioentryRole); - -var _docBibliographyRole = require('./dpub/docBibliographyRole'); - -var _docBibliographyRole2 = _interopRequireDefault(_docBibliographyRole); - -var _docBibliorefRole = require('./dpub/docBibliorefRole'); - -var _docBibliorefRole2 = _interopRequireDefault(_docBibliorefRole); - -var _docChapterRole = require('./dpub/docChapterRole'); - -var _docChapterRole2 = _interopRequireDefault(_docChapterRole); - -var _docColophonRole = require('./dpub/docColophonRole'); - -var _docColophonRole2 = _interopRequireDefault(_docColophonRole); - -var _docConclusionRole = require('./dpub/docConclusionRole'); - -var _docConclusionRole2 = _interopRequireDefault(_docConclusionRole); - -var _docCoverRole = require('./dpub/docCoverRole'); - -var _docCoverRole2 = _interopRequireDefault(_docCoverRole); - -var _docCreditRole = require('./dpub/docCreditRole'); - -var _docCreditRole2 = _interopRequireDefault(_docCreditRole); - -var _docCreditsRole = require('./dpub/docCreditsRole'); - -var _docCreditsRole2 = _interopRequireDefault(_docCreditsRole); - -var _docDedicationRole = require('./dpub/docDedicationRole'); - -var _docDedicationRole2 = _interopRequireDefault(_docDedicationRole); - -var _docEndnoteRole = require('./dpub/docEndnoteRole'); - -var _docEndnoteRole2 = _interopRequireDefault(_docEndnoteRole); - -var _docEndnotesRole = require('./dpub/docEndnotesRole'); - -var _docEndnotesRole2 = _interopRequireDefault(_docEndnotesRole); - -var _docEpigraphRole = require('./dpub/docEpigraphRole'); - -var _docEpigraphRole2 = _interopRequireDefault(_docEpigraphRole); - -var _docEpilogueRole = require('./dpub/docEpilogueRole'); - -var _docEpilogueRole2 = _interopRequireDefault(_docEpilogueRole); - -var _docErrataRole = require('./dpub/docErrataRole'); - -var _docErrataRole2 = _interopRequireDefault(_docErrataRole); - -var _docExampleRole = require('./dpub/docExampleRole'); - -var _docExampleRole2 = _interopRequireDefault(_docExampleRole); - -var _docFootnoteRole = require('./dpub/docFootnoteRole'); - -var _docFootnoteRole2 = _interopRequireDefault(_docFootnoteRole); - -var _docForewordRole = require('./dpub/docForewordRole'); - -var _docForewordRole2 = _interopRequireDefault(_docForewordRole); - -var _docGlossaryRole = require('./dpub/docGlossaryRole'); - -var _docGlossaryRole2 = _interopRequireDefault(_docGlossaryRole); - -var _docGlossrefRole = require('./dpub/docGlossrefRole'); - -var _docGlossrefRole2 = _interopRequireDefault(_docGlossrefRole); - -var _docIndexRole = require('./dpub/docIndexRole'); - -var _docIndexRole2 = _interopRequireDefault(_docIndexRole); - -var _docIntroductionRole = require('./dpub/docIntroductionRole'); - -var _docIntroductionRole2 = _interopRequireDefault(_docIntroductionRole); - -var _docNoterefRole = require('./dpub/docNoterefRole'); - -var _docNoterefRole2 = _interopRequireDefault(_docNoterefRole); - -var _docNoticeRole = require('./dpub/docNoticeRole'); - -var _docNoticeRole2 = _interopRequireDefault(_docNoticeRole); - -var _docPagebreakRole = require('./dpub/docPagebreakRole'); - -var _docPagebreakRole2 = _interopRequireDefault(_docPagebreakRole); - -var _docPagelistRole = require('./dpub/docPagelistRole'); - -var _docPagelistRole2 = _interopRequireDefault(_docPagelistRole); - -var _docPartRole = require('./dpub/docPartRole'); - -var _docPartRole2 = _interopRequireDefault(_docPartRole); - -var _docPrefaceRole = require('./dpub/docPrefaceRole'); - -var _docPrefaceRole2 = _interopRequireDefault(_docPrefaceRole); - -var _docPrologueRole = require('./dpub/docPrologueRole'); - -var _docPrologueRole2 = _interopRequireDefault(_docPrologueRole); - -var _docPullquoteRole = require('./dpub/docPullquoteRole'); - -var _docPullquoteRole2 = _interopRequireDefault(_docPullquoteRole); - -var _docQnaRole = require('./dpub/docQnaRole'); - -var _docQnaRole2 = _interopRequireDefault(_docQnaRole); - -var _docSubtitleRole = require('./dpub/docSubtitleRole'); - -var _docSubtitleRole2 = _interopRequireDefault(_docSubtitleRole); - -var _docTipRole = require('./dpub/docTipRole'); - -var _docTipRole2 = _interopRequireDefault(_docTipRole); - -var _docTocRole = require('./dpub/docTocRole'); - -var _docTocRole2 = _interopRequireDefault(_docTocRole); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var ariaDpubRoles = new Map([['doc-abstract', _docAbstractRole2.default], ['doc-acknowledgments', _docAcknowledgmentsRole2.default], ['doc-afterword', _docAfterwordRole2.default], ['doc-appendix', _docAppendixRole2.default], ['doc-backlink', _docBacklinkRole2.default], ['doc-biblioentry', _docBiblioentryRole2.default], ['doc-bibliography', _docBibliographyRole2.default], ['doc-biblioref', _docBibliorefRole2.default], ['doc-chapter', _docChapterRole2.default], ['doc-colophon', _docColophonRole2.default], ['doc-conclusion', _docConclusionRole2.default], ['doc-cover', _docCoverRole2.default], ['doc-credit', _docCreditRole2.default], ['doc-credits', _docCreditsRole2.default], ['doc-dedication', _docDedicationRole2.default], ['doc-endnote', _docEndnoteRole2.default], ['doc-endnotes', _docEndnotesRole2.default], ['doc-epigraph', _docEpigraphRole2.default], ['doc-epilogue', _docEpilogueRole2.default], ['doc-errata', _docErrataRole2.default], ['doc-example', _docExampleRole2.default], ['doc-footnote', _docFootnoteRole2.default], ['doc-foreword', _docForewordRole2.default], ['doc-glossary', _docGlossaryRole2.default], ['doc-glossref', _docGlossrefRole2.default], ['doc-index', _docIndexRole2.default], ['doc-introduction', _docIntroductionRole2.default], ['doc-noteref', _docNoterefRole2.default], ['doc-notice', _docNoticeRole2.default], ['doc-pagebreak', _docPagebreakRole2.default], ['doc-pagelist', _docPagelistRole2.default], ['doc-part', _docPartRole2.default], ['doc-preface', _docPrefaceRole2.default], ['doc-prologue', _docPrologueRole2.default], ['doc-pullquote', _docPullquoteRole2.default], ['doc-qna', _docQnaRole2.default], ['doc-subtitle', _docSubtitleRole2.default], ['doc-tip', _docTipRole2.default], ['doc-toc', _docTocRole2.default]]); -exports.default = ariaDpubRoles; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/ariaLiteralRoles.js b/node_modules/aria-query/lib/etc/roles/ariaLiteralRoles.js deleted file mode 100644 index 2c0725a7..00000000 --- a/node_modules/aria-query/lib/etc/roles/ariaLiteralRoles.js +++ /dev/null @@ -1,286 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _alertRole = require('./literal/alertRole'); - -var _alertRole2 = _interopRequireDefault(_alertRole); - -var _alertdialogRole = require('./literal/alertdialogRole'); - -var _alertdialogRole2 = _interopRequireDefault(_alertdialogRole); - -var _applicationRole = require('./literal/applicationRole'); - -var _applicationRole2 = _interopRequireDefault(_applicationRole); - -var _articleRole = require('./literal/articleRole'); - -var _articleRole2 = _interopRequireDefault(_articleRole); - -var _bannerRole = require('./literal/bannerRole'); - -var _bannerRole2 = _interopRequireDefault(_bannerRole); - -var _buttonRole = require('./literal/buttonRole'); - -var _buttonRole2 = _interopRequireDefault(_buttonRole); - -var _cellRole = require('./literal/cellRole'); - -var _cellRole2 = _interopRequireDefault(_cellRole); - -var _checkboxRole = require('./literal/checkboxRole'); - -var _checkboxRole2 = _interopRequireDefault(_checkboxRole); - -var _columnheaderRole = require('./literal/columnheaderRole'); - -var _columnheaderRole2 = _interopRequireDefault(_columnheaderRole); - -var _comboboxRole = require('./literal/comboboxRole'); - -var _comboboxRole2 = _interopRequireDefault(_comboboxRole); - -var _complementaryRole = require('./literal/complementaryRole'); - -var _complementaryRole2 = _interopRequireDefault(_complementaryRole); - -var _contentinfoRole = require('./literal/contentinfoRole'); - -var _contentinfoRole2 = _interopRequireDefault(_contentinfoRole); - -var _definitionRole = require('./literal/definitionRole'); - -var _definitionRole2 = _interopRequireDefault(_definitionRole); - -var _dialogRole = require('./literal/dialogRole'); - -var _dialogRole2 = _interopRequireDefault(_dialogRole); - -var _directoryRole = require('./literal/directoryRole'); - -var _directoryRole2 = _interopRequireDefault(_directoryRole); - -var _documentRole = require('./literal/documentRole'); - -var _documentRole2 = _interopRequireDefault(_documentRole); - -var _feedRole = require('./literal/feedRole'); - -var _feedRole2 = _interopRequireDefault(_feedRole); - -var _figureRole = require('./literal/figureRole'); - -var _figureRole2 = _interopRequireDefault(_figureRole); - -var _formRole = require('./literal/formRole'); - -var _formRole2 = _interopRequireDefault(_formRole); - -var _gridRole = require('./literal/gridRole'); - -var _gridRole2 = _interopRequireDefault(_gridRole); - -var _gridcellRole = require('./literal/gridcellRole'); - -var _gridcellRole2 = _interopRequireDefault(_gridcellRole); - -var _groupRole = require('./literal/groupRole'); - -var _groupRole2 = _interopRequireDefault(_groupRole); - -var _headingRole = require('./literal/headingRole'); - -var _headingRole2 = _interopRequireDefault(_headingRole); - -var _imgRole = require('./literal/imgRole'); - -var _imgRole2 = _interopRequireDefault(_imgRole); - -var _linkRole = require('./literal/linkRole'); - -var _linkRole2 = _interopRequireDefault(_linkRole); - -var _listRole = require('./literal/listRole'); - -var _listRole2 = _interopRequireDefault(_listRole); - -var _listboxRole = require('./literal/listboxRole'); - -var _listboxRole2 = _interopRequireDefault(_listboxRole); - -var _listitemRole = require('./literal/listitemRole'); - -var _listitemRole2 = _interopRequireDefault(_listitemRole); - -var _logRole = require('./literal/logRole'); - -var _logRole2 = _interopRequireDefault(_logRole); - -var _mainRole = require('./literal/mainRole'); - -var _mainRole2 = _interopRequireDefault(_mainRole); - -var _marqueeRole = require('./literal/marqueeRole'); - -var _marqueeRole2 = _interopRequireDefault(_marqueeRole); - -var _mathRole = require('./literal/mathRole'); - -var _mathRole2 = _interopRequireDefault(_mathRole); - -var _menuRole = require('./literal/menuRole'); - -var _menuRole2 = _interopRequireDefault(_menuRole); - -var _menubarRole = require('./literal/menubarRole'); - -var _menubarRole2 = _interopRequireDefault(_menubarRole); - -var _menuitemRole = require('./literal/menuitemRole'); - -var _menuitemRole2 = _interopRequireDefault(_menuitemRole); - -var _menuitemcheckboxRole = require('./literal/menuitemcheckboxRole'); - -var _menuitemcheckboxRole2 = _interopRequireDefault(_menuitemcheckboxRole); - -var _menuitemradioRole = require('./literal/menuitemradioRole'); - -var _menuitemradioRole2 = _interopRequireDefault(_menuitemradioRole); - -var _navigationRole = require('./literal/navigationRole'); - -var _navigationRole2 = _interopRequireDefault(_navigationRole); - -var _noneRole = require('./literal/noneRole'); - -var _noneRole2 = _interopRequireDefault(_noneRole); - -var _noteRole = require('./literal/noteRole'); - -var _noteRole2 = _interopRequireDefault(_noteRole); - -var _optionRole = require('./literal/optionRole'); - -var _optionRole2 = _interopRequireDefault(_optionRole); - -var _presentationRole = require('./literal/presentationRole'); - -var _presentationRole2 = _interopRequireDefault(_presentationRole); - -var _progressbarRole = require('./literal/progressbarRole'); - -var _progressbarRole2 = _interopRequireDefault(_progressbarRole); - -var _radioRole = require('./literal/radioRole'); - -var _radioRole2 = _interopRequireDefault(_radioRole); - -var _radiogroupRole = require('./literal/radiogroupRole'); - -var _radiogroupRole2 = _interopRequireDefault(_radiogroupRole); - -var _regionRole = require('./literal/regionRole'); - -var _regionRole2 = _interopRequireDefault(_regionRole); - -var _rowRole = require('./literal/rowRole'); - -var _rowRole2 = _interopRequireDefault(_rowRole); - -var _rowgroupRole = require('./literal/rowgroupRole'); - -var _rowgroupRole2 = _interopRequireDefault(_rowgroupRole); - -var _rowheaderRole = require('./literal/rowheaderRole'); - -var _rowheaderRole2 = _interopRequireDefault(_rowheaderRole); - -var _scrollbarRole = require('./literal/scrollbarRole'); - -var _scrollbarRole2 = _interopRequireDefault(_scrollbarRole); - -var _searchRole = require('./literal/searchRole'); - -var _searchRole2 = _interopRequireDefault(_searchRole); - -var _searchboxRole = require('./literal/searchboxRole'); - -var _searchboxRole2 = _interopRequireDefault(_searchboxRole); - -var _separatorRole = require('./literal/separatorRole'); - -var _separatorRole2 = _interopRequireDefault(_separatorRole); - -var _sliderRole = require('./literal/sliderRole'); - -var _sliderRole2 = _interopRequireDefault(_sliderRole); - -var _spinbuttonRole = require('./literal/spinbuttonRole'); - -var _spinbuttonRole2 = _interopRequireDefault(_spinbuttonRole); - -var _statusRole = require('./literal/statusRole'); - -var _statusRole2 = _interopRequireDefault(_statusRole); - -var _switchRole = require('./literal/switchRole'); - -var _switchRole2 = _interopRequireDefault(_switchRole); - -var _tabRole = require('./literal/tabRole'); - -var _tabRole2 = _interopRequireDefault(_tabRole); - -var _tableRole = require('./literal/tableRole'); - -var _tableRole2 = _interopRequireDefault(_tableRole); - -var _tablistRole = require('./literal/tablistRole'); - -var _tablistRole2 = _interopRequireDefault(_tablistRole); - -var _tabpanelRole = require('./literal/tabpanelRole'); - -var _tabpanelRole2 = _interopRequireDefault(_tabpanelRole); - -var _termRole = require('./literal/termRole'); - -var _termRole2 = _interopRequireDefault(_termRole); - -var _textboxRole = require('./literal/textboxRole'); - -var _textboxRole2 = _interopRequireDefault(_textboxRole); - -var _timerRole = require('./literal/timerRole'); - -var _timerRole2 = _interopRequireDefault(_timerRole); - -var _toolbarRole = require('./literal/toolbarRole'); - -var _toolbarRole2 = _interopRequireDefault(_toolbarRole); - -var _tooltipRole = require('./literal/tooltipRole'); - -var _tooltipRole2 = _interopRequireDefault(_tooltipRole); - -var _treeRole = require('./literal/treeRole'); - -var _treeRole2 = _interopRequireDefault(_treeRole); - -var _treegridRole = require('./literal/treegridRole'); - -var _treegridRole2 = _interopRequireDefault(_treegridRole); - -var _treeitemRole = require('./literal/treeitemRole'); - -var _treeitemRole2 = _interopRequireDefault(_treeitemRole); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var ariaLiteralRoles = new Map([['alert', _alertRole2.default], ['alertdialog', _alertdialogRole2.default], ['application', _applicationRole2.default], ['article', _articleRole2.default], ['banner', _bannerRole2.default], ['button', _buttonRole2.default], ['cell', _cellRole2.default], ['checkbox', _checkboxRole2.default], ['columnheader', _columnheaderRole2.default], ['combobox', _comboboxRole2.default], ['complementary', _complementaryRole2.default], ['contentinfo', _contentinfoRole2.default], ['definition', _definitionRole2.default], ['dialog', _dialogRole2.default], ['directory', _directoryRole2.default], ['document', _documentRole2.default], ['feed', _feedRole2.default], ['figure', _figureRole2.default], ['form', _formRole2.default], ['grid', _gridRole2.default], ['gridcell', _gridcellRole2.default], ['group', _groupRole2.default], ['heading', _headingRole2.default], ['img', _imgRole2.default], ['link', _linkRole2.default], ['list', _listRole2.default], ['listbox', _listboxRole2.default], ['listitem', _listitemRole2.default], ['log', _logRole2.default], ['main', _mainRole2.default], ['marquee', _marqueeRole2.default], ['math', _mathRole2.default], ['menu', _menuRole2.default], ['menubar', _menubarRole2.default], ['menuitem', _menuitemRole2.default], ['menuitemcheckbox', _menuitemcheckboxRole2.default], ['menuitemradio', _menuitemradioRole2.default], ['navigation', _navigationRole2.default], ['none', _noneRole2.default], ['note', _noteRole2.default], ['option', _optionRole2.default], ['presentation', _presentationRole2.default], ['progressbar', _progressbarRole2.default], ['radio', _radioRole2.default], ['radiogroup', _radiogroupRole2.default], ['region', _regionRole2.default], ['row', _rowRole2.default], ['rowgroup', _rowgroupRole2.default], ['rowheader', _rowheaderRole2.default], ['scrollbar', _scrollbarRole2.default], ['search', _searchRole2.default], ['searchbox', _searchboxRole2.default], ['separator', _separatorRole2.default], ['slider', _sliderRole2.default], ['spinbutton', _spinbuttonRole2.default], ['status', _statusRole2.default], ['switch', _switchRole2.default], ['tab', _tabRole2.default], ['table', _tableRole2.default], ['tablist', _tablistRole2.default], ['tabpanel', _tabpanelRole2.default], ['term', _termRole2.default], ['textbox', _textboxRole2.default], ['timer', _timerRole2.default], ['toolbar', _toolbarRole2.default], ['tooltip', _tooltipRole2.default], ['tree', _treeRole2.default], ['treegrid', _treegridRole2.default], ['treeitem', _treeitemRole2.default]]); -exports.default = ariaLiteralRoles; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docAbstractRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docAbstractRole.js deleted file mode 100644 index 3b982f7f..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docAbstractRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docAbstractRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'abstract [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docAbstractRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docAcknowledgmentsRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docAcknowledgmentsRole.js deleted file mode 100644 index 481962c8..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docAcknowledgmentsRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docAcknowledgmentsRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'acknowledgments [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docAcknowledgmentsRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docAfterwordRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docAfterwordRole.js deleted file mode 100644 index f84ce5ba..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docAfterwordRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docAfterwordRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'afterword [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docAfterwordRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docAppendixRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docAppendixRole.js deleted file mode 100644 index 45e4cd60..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docAppendixRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docAppendixRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'appendix [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docAppendixRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docBacklinkRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docBacklinkRole.js deleted file mode 100644 index 29ff7154..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docBacklinkRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docBacklinkRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'content'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'referrer [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command', 'link']] -}; - -exports.default = docBacklinkRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docBiblioentryRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docBiblioentryRole.js deleted file mode 100644 index 9494be31..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docBiblioentryRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docBiblioentryRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'EPUB biblioentry [EPUB-SSV]' - } - }], - requireContextRole: ['doc-bibliography'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'listitem']] -}; - -exports.default = docBiblioentryRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docBibliographyRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docBibliographyRole.js deleted file mode 100644 index 359d7ee7..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docBibliographyRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docBibliographyRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'bibliography [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [['doc-biblioentry']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docBibliographyRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docBibliorefRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docBibliorefRole.js deleted file mode 100644 index ae9c56d1..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docBibliorefRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docBibliorefRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'biblioref [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command', 'link']] -}; - -exports.default = docBibliorefRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docChapterRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docChapterRole.js deleted file mode 100644 index 1a3bf92d..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docChapterRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docChapterRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'chapter [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docChapterRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docColophonRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docColophonRole.js deleted file mode 100644 index 46953c83..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docColophonRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docColophonRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'colophon [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docColophonRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docConclusionRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docConclusionRole.js deleted file mode 100644 index 6f97f549..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docConclusionRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docConclusionRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'conclusion [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docConclusionRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docCoverRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docCoverRole.js deleted file mode 100644 index 7a1932f8..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docCoverRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docCoverRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'cover [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'img']] -}; - -exports.default = docCoverRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docCreditRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docCreditRole.js deleted file mode 100644 index 719e7d8f..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docCreditRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docCreditRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'credit [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docCreditRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docCreditsRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docCreditsRole.js deleted file mode 100644 index 600095d0..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docCreditsRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docCreditsRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'credits [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docCreditsRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docDedicationRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docDedicationRole.js deleted file mode 100644 index 62f1ec40..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docDedicationRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docDedicationRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'dedication [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docDedicationRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docEndnoteRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docEndnoteRole.js deleted file mode 100644 index 091f25c0..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docEndnoteRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docEndnoteRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'rearnote [EPUB-SSV]' - } - }], - requireContextRole: ['doc-endnotes'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'listitem']] -}; - -exports.default = docEndnoteRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docEndnotesRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docEndnotesRole.js deleted file mode 100644 index 6762d0fd..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docEndnotesRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docEndnotesRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'rearnotes [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [['doc-endnote']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docEndnotesRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docEpigraphRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docEpigraphRole.js deleted file mode 100644 index 25a249bf..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docEpigraphRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docEpigraphRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'epigraph [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docEpigraphRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docEpilogueRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docEpilogueRole.js deleted file mode 100644 index 93cd59a4..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docEpilogueRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docEpilogueRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'epilogue [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docEpilogueRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docErrataRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docErrataRole.js deleted file mode 100644 index 1e6292bd..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docErrataRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docErrataRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'errata [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docErrataRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docExampleRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docExampleRole.js deleted file mode 100644 index 9303b450..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docExampleRole.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docExampleRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docExampleRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docFootnoteRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docFootnoteRole.js deleted file mode 100644 index 0f0c703c..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docFootnoteRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docFootnoteRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'footnote [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docFootnoteRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docForewordRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docForewordRole.js deleted file mode 100644 index ef8d5478..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docForewordRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docForewordRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'foreword [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docForewordRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docGlossaryRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docGlossaryRole.js deleted file mode 100644 index 7e1a3c1d..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docGlossaryRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docGlossaryRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'glossary [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [['term'], ['definition']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docGlossaryRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docGlossrefRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docGlossrefRole.js deleted file mode 100644 index 8ff014a0..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docGlossrefRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docGlossrefRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'glossref [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command', 'link']] -}; - -exports.default = docGlossrefRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docIndexRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docIndexRole.js deleted file mode 100644 index 14a90c6f..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docIndexRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docIndexRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'index [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark', 'navigation']] -}; - -exports.default = docIndexRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docIntroductionRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docIntroductionRole.js deleted file mode 100644 index b0ac4847..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docIntroductionRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docIntroductionRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'introduction [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docIntroductionRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docNoterefRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docNoterefRole.js deleted file mode 100644 index e5d97170..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docNoterefRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docNoterefRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'noteref [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command', 'link']] -}; - -exports.default = docNoterefRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docNoticeRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docNoticeRole.js deleted file mode 100644 index 4d18713d..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docNoticeRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docNoticeRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'notice [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'note']] -}; - -exports.default = docNoticeRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docPagebreakRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docPagebreakRole.js deleted file mode 100644 index ef6d9d89..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docPagebreakRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docPagebreakRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'pagebreak [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'separator']] -}; - -exports.default = docPagebreakRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docPagelistRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docPagelistRole.js deleted file mode 100644 index 47d909c1..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docPagelistRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docPagelistRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'page-list [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark', 'navigation']] -}; - -exports.default = docPagelistRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docPartRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docPartRole.js deleted file mode 100644 index b71e71f3..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docPartRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docPartRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'part [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docPartRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docPrefaceRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docPrefaceRole.js deleted file mode 100644 index 550286e1..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docPrefaceRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docPrefaceRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'preface [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docPrefaceRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docPrologueRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docPrologueRole.js deleted file mode 100644 index 3e6b491a..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docPrologueRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docPrologueRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'prologue [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = docPrologueRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docPullquoteRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docPullquoteRole.js deleted file mode 100644 index c17add8b..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docPullquoteRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docPullquoteRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'pullquote [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['none']] -}; - -exports.default = docPullquoteRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docQnaRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docQnaRole.js deleted file mode 100644 index 349ae5af..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docQnaRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docQnaRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'qna [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = docQnaRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docSubtitleRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docSubtitleRole.js deleted file mode 100644 index 53edeaee..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docSubtitleRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docSubtitleRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'subtitle [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'sectionhead']] -}; - -exports.default = docSubtitleRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docTipRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docTipRole.js deleted file mode 100644 index f6a2b593..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docTipRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docTipRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'help [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'note']] -}; - -exports.default = docTipRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/dpub/docTocRole.js b/node_modules/aria-query/lib/etc/roles/dpub/docTocRole.js deleted file mode 100644 index a9587ed0..00000000 --- a/node_modules/aria-query/lib/etc/roles/dpub/docTocRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var docTocRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-describedat': null - }, - relatedConcepts: [{ - module: 'EPUB', - concept: { - name: 'toc [EPUB-SSV]' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark', 'navigation']] -}; - -exports.default = docTocRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/alertRole.js b/node_modules/aria-query/lib/etc/roles/literal/alertRole.js deleted file mode 100644 index ca8fca6d..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/alertRole.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var alertRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-atomic': 'true', - 'aria-live': 'assertive' - }, - relatedConcepts: [{ - module: 'XForms', - concept: { - name: 'alert' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = alertRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/alertdialogRole.js b/node_modules/aria-query/lib/etc/roles/literal/alertdialogRole.js deleted file mode 100644 index a7ef1f91..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/alertdialogRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var alertdialogRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'XForms', - concept: { - name: 'alert' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'alert'], ['roletype', 'window', 'dialog']] -}; - -exports.default = alertdialogRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/applicationRole.js b/node_modules/aria-query/lib/etc/roles/literal/applicationRole.js deleted file mode 100644 index d6d60b94..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/applicationRole.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var applicationRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - concept: { - name: 'Device Independence Delivery Unit' - } - }], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-activedescendant': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = applicationRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/articleRole.js b/node_modules/aria-query/lib/etc/roles/literal/articleRole.js deleted file mode 100644 index a8a0ab90..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/articleRole.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var articleRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-posinset': null, - 'aria-setsize': null - }, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'article' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'document']] -}; - -exports.default = articleRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/bannerRole.js b/node_modules/aria-query/lib/etc/roles/literal/bannerRole.js deleted file mode 100644 index 835e2c98..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/bannerRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var bannerRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = bannerRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/buttonRole.js b/node_modules/aria-query/lib/etc/roles/literal/buttonRole.js deleted file mode 100644 index f776f2eb..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/buttonRole.js +++ /dev/null @@ -1,38 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var buttonRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'button' - } - }], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-expanded': null, - 'aria-pressed': null - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'link' - } - }, { - module: 'XForms', - concept: { - name: 'trigger' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command']] -}; - -exports.default = buttonRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/cellRole.js b/node_modules/aria-query/lib/etc/roles/literal/cellRole.js deleted file mode 100644 index 63bdce1b..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/cellRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var cellRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'td' - } - }], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-colindex': null, - 'aria-colspan': null, - 'aria-rowindex': null, - 'aria-rowspan': null - }, - relatedConcepts: [], - requireContextRole: ['row'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = cellRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/checkboxRole.js b/node_modules/aria-query/lib/etc/roles/literal/checkboxRole.js deleted file mode 100644 index f3c0e715..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/checkboxRole.js +++ /dev/null @@ -1,39 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var checkboxRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-checked': 'false', - 'aria-readonly': null - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'option' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'checkbox' - }] - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: { - 'aria-checked': null - }, - superClass: [['roletype', 'widget', 'input']] -}; - -exports.default = checkboxRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/columnheaderRole.js b/node_modules/aria-query/lib/etc/roles/literal/columnheaderRole.js deleted file mode 100644 index 80386a59..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/columnheaderRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var columnheaderRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'th' - } - }], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-sort': null - }, - relatedConcepts: [], - requireContextRole: ['row'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'cell'], ['roletype', 'structure', 'section', 'cell', 'gridcell'], ['roletype', 'widget', 'gridcell'], ['roletype', 'structure', 'sectionhead']] -}; - -exports.default = columnheaderRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/comboboxRole.js b/node_modules/aria-query/lib/etc/roles/literal/comboboxRole.js deleted file mode 100644 index 18c7b66f..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/comboboxRole.js +++ /dev/null @@ -1,39 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var comboboxRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-expanded': 'false', - 'aria-autocomplete': null, - 'aria-required': null, - 'aria-haspopup': 'listbox', - 'aria-readonly': null - }, - relatedConcepts: [{ - module: 'XForms', - concept: { - name: 'select' - } - }, { - module: 'HTML', - concept: { - name: 'select' - } - }], - requireContextRole: [], - requiredOwnedElements: [['textbox'], ['listbox'], ['tree'], ['grid'], ['dialog']], - requiredProps: { - 'aria-controls': null, - 'aria-expanded': 'false' - }, - superClass: [['roletype', 'widget', 'composite', 'select'], ['roletype', 'structure', 'section', 'group', 'select']] -}; - -exports.default = comboboxRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/complementaryRole.js b/node_modules/aria-query/lib/etc/roles/literal/complementaryRole.js deleted file mode 100644 index 349cc77d..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/complementaryRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var complementaryRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = complementaryRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/contentinfoRole.js b/node_modules/aria-query/lib/etc/roles/literal/contentinfoRole.js deleted file mode 100644 index fb34dcd9..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/contentinfoRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var contentinfoRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = contentinfoRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/definitionRole.js b/node_modules/aria-query/lib/etc/roles/literal/definitionRole.js deleted file mode 100644 index d28c238b..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/definitionRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var definitionRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'dd' - } - }, { - module: 'HTML', - concept: { - name: 'dfn' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = definitionRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/dialogRole.js b/node_modules/aria-query/lib/etc/roles/literal/dialogRole.js deleted file mode 100644 index fed41d0d..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/dialogRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var dialogRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'window']] -}; - -exports.default = dialogRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/directoryRole.js b/node_modules/aria-query/lib/etc/roles/literal/directoryRole.js deleted file mode 100644 index 605a37a8..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/directoryRole.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var directoryRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'DAISY Guide' - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'list']] -}; - -exports.default = directoryRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/documentRole.js b/node_modules/aria-query/lib/etc/roles/literal/documentRole.js deleted file mode 100644 index 36740f07..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/documentRole.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var documentRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-expanded': null - }, - relatedConcepts: [{ - concept: { - name: 'Device Independence Delivery Unit' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = documentRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/feedRole.js b/node_modules/aria-query/lib/etc/roles/literal/feedRole.js deleted file mode 100644 index e3b9e55d..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/feedRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var feedRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [['article']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'list']] -}; - -exports.default = feedRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/figureRole.js b/node_modules/aria-query/lib/etc/roles/literal/figureRole.js deleted file mode 100644 index 4ecbe3d0..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/figureRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var figureRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'figure' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = figureRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/formRole.js b/node_modules/aria-query/lib/etc/roles/literal/formRole.js deleted file mode 100644 index 65b0ad21..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/formRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var formRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'form' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = formRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/gridRole.js b/node_modules/aria-query/lib/etc/roles/literal/gridRole.js deleted file mode 100644 index df0883c6..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/gridRole.js +++ /dev/null @@ -1,33 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var gridRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'table', - attributes: [{ - name: 'role', - value: 'grid' - }] - } - }], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-level': null, - 'aria-multiselectable': null, - 'aria-readonly': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [['rowgroup', 'row'], ['row']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite'], ['roletype', 'structure', 'section', 'table']] -}; - -exports.default = gridRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/gridcellRole.js b/node_modules/aria-query/lib/etc/roles/literal/gridcellRole.js deleted file mode 100644 index e82c740a..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/gridcellRole.js +++ /dev/null @@ -1,33 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var gridcellRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'td', - attributes: [{ - name: 'role', - value: 'gridcell' - }] - } - }], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-readonly': null, - 'aria-required': null, - 'aria-selected': null - }, - relatedConcepts: [], - requireContextRole: ['row'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'cell'], ['roletype', 'widget']] -}; - -exports.default = gridcellRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/groupRole.js b/node_modules/aria-query/lib/etc/roles/literal/groupRole.js deleted file mode 100644 index 8f5f8c6a..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/groupRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var groupRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-activedescendant': null - }, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'fieldset' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = groupRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/headingRole.js b/node_modules/aria-query/lib/etc/roles/literal/headingRole.js deleted file mode 100644 index d6ba588c..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/headingRole.js +++ /dev/null @@ -1,52 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var headingRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-level': '2' - }, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'h1' - } - }, { - module: 'HTML', - concept: { - name: 'h2' - } - }, { - module: 'HTML', - concept: { - name: 'h3' - } - }, { - module: 'HTML', - concept: { - name: 'h4' - } - }, { - module: 'HTML', - concept: { - name: 'h5' - } - }, { - module: 'HTML', - concept: { - name: 'h6' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'sectionhead']] -}; - -exports.default = headingRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/imgRole.js b/node_modules/aria-query/lib/etc/roles/literal/imgRole.js deleted file mode 100644 index ef8f91e7..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/imgRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var imgRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'img' - } - }, { - module: 'DTB', - concept: { - name: 'imggroup' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = imgRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/linkRole.js b/node_modules/aria-query/lib/etc/roles/literal/linkRole.js deleted file mode 100644 index 3e38a25b..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/linkRole.js +++ /dev/null @@ -1,43 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var linkRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-expanded': null - }, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'a', - attributes: [{ - name: 'href' - }] - } - }, { - module: 'HTML', - concept: { - name: 'area', - attributes: [{ - name: 'href' - }] - } - }, { - module: 'HTML', - concept: { - name: 'link' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command']] -}; - -exports.default = linkRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/listRole.js b/node_modules/aria-query/lib/etc/roles/literal/listRole.js deleted file mode 100644 index 985e6aa5..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/listRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var listRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'ol' - } - }, { - module: 'HTML', - concept: { - name: 'ul' - } - }], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [['group', 'listitem'], ['listitem']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = listRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/listboxRole.js b/node_modules/aria-query/lib/etc/roles/literal/listboxRole.js deleted file mode 100644 index 237989e3..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/listboxRole.js +++ /dev/null @@ -1,40 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var listboxRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-multiselectable': null, - 'aria-readonly': null, - 'aria-required': null, - 'aria-orientation': 'vertical' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'list' - } - }, { - module: 'HTML', - concept: { - name: 'select' - } - }, { - module: 'XForms', - concept: { - name: 'select' - } - }], - requireContextRole: [], - requiredOwnedElements: [['option']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite', 'select'], ['roletype', 'structure', 'section', 'group', 'select']] -}; - -exports.default = listboxRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/listitemRole.js b/node_modules/aria-query/lib/etc/roles/literal/listitemRole.js deleted file mode 100644 index 10d48960..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/listitemRole.js +++ /dev/null @@ -1,34 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var listitemRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'li' - } - }], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-level': null, - 'aria-posinset': null, - 'aria-setsize': null - }, - relatedConcepts: [{ - module: 'XForms', - concept: { - name: 'item' - } - }], - requireContextRole: ['group', 'list'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = listitemRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/logRole.js b/node_modules/aria-query/lib/etc/roles/literal/logRole.js deleted file mode 100644 index 967c73cf..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/logRole.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var logRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-live': 'polite' - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = logRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/mainRole.js b/node_modules/aria-query/lib/etc/roles/literal/mainRole.js deleted file mode 100644 index 9841c281..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/mainRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var mainRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'main' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = mainRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/marqueeRole.js b/node_modules/aria-query/lib/etc/roles/literal/marqueeRole.js deleted file mode 100644 index ea2ab785..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/marqueeRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var marqueeRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = marqueeRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/mathRole.js b/node_modules/aria-query/lib/etc/roles/literal/mathRole.js deleted file mode 100644 index c099bda2..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/mathRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var mathRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = mathRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/menuRole.js b/node_modules/aria-query/lib/etc/roles/literal/menuRole.js deleted file mode 100644 index 86865c6b..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/menuRole.js +++ /dev/null @@ -1,42 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var menuRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-orientation': 'vertical' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'list' - } - }, { - module: 'DTB', - concept: { - name: 'sidebar' - } - }, { - module: 'XForms', - concept: { - name: 'select' - } - }, { - module: 'JAPI', - concept: { - name: 'MENU' - } - }], - requireContextRole: [], - requiredOwnedElements: [['group', 'menuitemradio'], ['menuitem'], ['menuitemcheckbox'], ['menuitemradio']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite', 'select'], ['roletype', 'structure', 'section', 'group', 'select']] -}; - -exports.default = menuRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/menubarRole.js b/node_modules/aria-query/lib/etc/roles/literal/menubarRole.js deleted file mode 100644 index 0f485875..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/menubarRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var menubarRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-orientation': 'vertical' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'toolbar' - } - }], - requireContextRole: [], - requiredOwnedElements: [['group', 'menuitemradio'], ['menuitem'], ['menuitemcheckbox'], ['menuitemradio']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite', 'select', 'menu'], ['roletype', 'structure', 'section', 'group', 'select', 'menu']] -}; - -exports.default = menubarRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/menuitemRole.js b/node_modules/aria-query/lib/etc/roles/literal/menuitemRole.js deleted file mode 100644 index 2ff41cde..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/menuitemRole.js +++ /dev/null @@ -1,43 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var menuitemRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-posinset': null, - 'aria-setsize': null - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'option' - } - }, { - module: 'ARIA', - concept: { - name: 'listitem' - } - }, { - module: 'HTML', - concept: { - name: 'menuitem' - } - }, { - module: 'JAPI', - concept: { - name: 'MENU_ITEM' - } - }], - requireContextRole: ['group', 'menu', 'menubar'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'command']] -}; - -exports.default = menuitemRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/menuitemcheckboxRole.js b/node_modules/aria-query/lib/etc/roles/literal/menuitemcheckboxRole.js deleted file mode 100644 index c47211d2..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/menuitemcheckboxRole.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var menuitemcheckboxRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-checked': 'false' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menuitem' - } - }], - requireContextRole: ['menu', 'menubar'], - requiredOwnedElements: [], - requiredProps: { - 'aria-checked': null - }, - superClass: [['roletype', 'widget', 'command', 'menuitem'], ['roletype', 'widget', 'input', 'checkbox']] -}; - -exports.default = menuitemcheckboxRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/menuitemradioRole.js b/node_modules/aria-query/lib/etc/roles/literal/menuitemradioRole.js deleted file mode 100644 index 845a33e6..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/menuitemradioRole.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var menuitemradioRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-checked': 'false' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menuitem' - } - }], - requireContextRole: ['group', 'menu', 'menubar'], - requiredOwnedElements: [], - requiredProps: { - 'aria-checked': null - }, - superClass: [['roletype', 'widget', 'command', 'menuitem', 'menuitemcheckbox'], ['roletype', 'widget', 'input', 'checkbox', 'menuitemcheckbox'], ['roletype', 'widget', 'input', 'radio']] -}; - -exports.default = menuitemradioRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/navigationRole.js b/node_modules/aria-query/lib/etc/roles/literal/navigationRole.js deleted file mode 100644 index 9bb2dcc7..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/navigationRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var navigationRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'nav' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = navigationRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/noneRole.js b/node_modules/aria-query/lib/etc/roles/literal/noneRole.js deleted file mode 100644 index f426bb2b..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/noneRole.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var noneRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: [], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [] -}; - -exports.default = noneRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/noteRole.js b/node_modules/aria-query/lib/etc/roles/literal/noteRole.js deleted file mode 100644 index 8e5866b6..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/noteRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var noteRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = noteRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/optionRole.js b/node_modules/aria-query/lib/etc/roles/literal/optionRole.js deleted file mode 100644 index 49964285..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/optionRole.js +++ /dev/null @@ -1,42 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var optionRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'option' - } - }], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-checked': null, - 'aria-posinset': null, - 'aria-selected': 'false', - 'aria-setsize': null - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'listitem' - } - }, { - module: 'XForms', - concept: { - name: 'item' - } - }], - requireContextRole: ['listbox'], - requiredOwnedElements: [], - requiredProps: { - 'aria-selected': 'false' - }, - superClass: [['roletype', 'widget', 'input']] -}; - -exports.default = optionRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/presentationRole.js b/node_modules/aria-query/lib/etc/roles/literal/presentationRole.js deleted file mode 100644 index 7ca3b0ab..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/presentationRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var presentationRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = presentationRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/progressbarRole.js b/node_modules/aria-query/lib/etc/roles/literal/progressbarRole.js deleted file mode 100644 index 1c6e689e..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/progressbarRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var progressbarRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'status' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'range']] -}; - -exports.default = progressbarRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/radioRole.js b/node_modules/aria-query/lib/etc/roles/literal/radioRole.js deleted file mode 100644 index a3a14bee..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/radioRole.js +++ /dev/null @@ -1,36 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var radioRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-checked': 'false', - 'aria-posinset': null, - 'aria-selected': null, - 'aria-setsize': null - }, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'radio' - }] - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: { - 'aria-checked': 'false' - }, - superClass: [['roletype', 'widget', 'input']] -}; - -exports.default = radioRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/radiogroupRole.js b/node_modules/aria-query/lib/etc/roles/literal/radiogroupRole.js deleted file mode 100644 index 60b243d3..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/radiogroupRole.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var radiogroupRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-readonly': null, - 'aria-required': null - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'list' - } - }], - requireContextRole: [], - requiredOwnedElements: [['radio']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite', 'select'], ['roletype', 'structure', 'section', 'group', 'select']] -}; - -exports.default = radiogroupRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/regionRole.js b/node_modules/aria-query/lib/etc/roles/literal/regionRole.js deleted file mode 100644 index 0d467e7c..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/regionRole.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var regionRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [ - // frame tag on html5 is deprecated - { - module: 'HTML', - concept: { - name: 'frame' - } - }, { - module: 'HTML', - concept: { - name: 'section' - } - }, { - concept: { - name: 'Device Independence Glossart perceivable unit' - } - }, { - module: 'ARIA', - concept: { - name: 'section' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = regionRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/rowRole.js b/node_modules/aria-query/lib/etc/roles/literal/rowRole.js deleted file mode 100644 index d7ff890e..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/rowRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var rowRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'tr' - } - }], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-colindex': null, - 'aria-level': null, - 'aria-rowindex': null, - 'aria-selected': null - }, - relatedConcepts: [], - requireContextRole: ['grid', 'rowgroup', 'table', 'treegrid'], - requiredOwnedElements: [['cell'], ['columnheader'], ['gridcell'], ['rowheader']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'group'], ['roletype', 'widget']] -}; - -exports.default = rowRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/rowgroupRole.js b/node_modules/aria-query/lib/etc/roles/literal/rowgroupRole.js deleted file mode 100644 index 0727eb8a..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/rowgroupRole.js +++ /dev/null @@ -1,38 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var rowgroupRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'tbody' - } - }, { - module: 'HTML', - concept: { - name: 'tfoot' - } - }, { - module: 'HTML', - concept: { - name: 'thead' - } - }], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-activedescendant': null, - 'aria-expanded': null - }, - relatedConcepts: [], - requireContextRole: ['grid', 'table', 'treegrid'], - requiredOwnedElements: [['row']], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = rowgroupRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/rowheaderRole.js b/node_modules/aria-query/lib/etc/roles/literal/rowheaderRole.js deleted file mode 100644 index 070456b9..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/rowheaderRole.js +++ /dev/null @@ -1,31 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var rowheaderRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'th', - attributes: [{ - name: 'scope', - value: 'row' - }] - } - }], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: { - 'aria-sort': null - }, - relatedConcepts: [], - requireContextRole: ['row'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'cell'], ['roletype', 'structure', 'section', 'cell', 'gridcell'], ['roletype', 'widget', 'gridcell'], ['roletype', 'structure', 'sectionhead']] -}; - -exports.default = rowheaderRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/scrollbarRole.js b/node_modules/aria-query/lib/etc/roles/literal/scrollbarRole.js deleted file mode 100644 index 50964266..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/scrollbarRole.js +++ /dev/null @@ -1,48 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var scrollbarRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: { - 'aria-controls': null, - 'aria-orientation': null, - 'aria-valuemax': null, - 'aria-valuemin': null, - 'aria-valuenow': null, - 'aria-atomic': null, - 'aria-busy': null, - 'aria-describedby': null, - 'aria-disabled': null, - 'aria-dropeffect': null, - 'aria-flowto': null, - 'aria-grabbed': null, - 'aria-haspopup': null, - 'aria-hidden': null, - 'aria-invalid': null, - 'aria-label': null, - 'aria-labelledby': null, - 'aria-live': null, - 'aria-owns': null, - 'aria-relevant': null, - 'aria-valuetext': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: { - 'aria-controls': null, - 'aria-orientation': null, - 'aria-valuemax': null, - 'aria-valuemin': null, - 'aria-valuenow': null - }, - superClass: [] -}; - -exports.default = scrollbarRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/searchRole.js b/node_modules/aria-query/lib/etc/roles/literal/searchRole.js deleted file mode 100644 index 61d55e3e..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/searchRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var searchRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'landmark']] -}; - -exports.default = searchRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/searchboxRole.js b/node_modules/aria-query/lib/etc/roles/literal/searchboxRole.js deleted file mode 100644 index eb43a1ab..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/searchboxRole.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var searchboxRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'search' - }] - } - }], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'input', 'textbox']] -}; - -exports.default = searchboxRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/separatorRole.js b/node_modules/aria-query/lib/etc/roles/literal/separatorRole.js deleted file mode 100644 index f24a9310..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/separatorRole.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var separatorRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: { - 'aria-expanded': null, - 'aria-orientation': 'horizontal' - }, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'hr' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure']] -}; - -exports.default = separatorRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/sliderRole.js b/node_modules/aria-query/lib/etc/roles/literal/sliderRole.js deleted file mode 100644 index 4d7fdb49..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/sliderRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var sliderRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author'], - props: { - 'aria-orientation': 'horizontal', - 'aria-readonly': null, - 'aria-valuemax': '100', - 'aria-valuemin': '0', - 'aria-valuenow': '50' - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: { - 'aria-valuemax': '100', - 'aria-valuemin': '0', - 'aria-valuenow': '50' - }, - superClass: [['roletype', 'widget', 'input'], ['roletype', 'widget', 'range']] -}; - -exports.default = sliderRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/spinbuttonRole.js b/node_modules/aria-query/lib/etc/roles/literal/spinbuttonRole.js deleted file mode 100644 index 5b944044..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/spinbuttonRole.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var spinbuttonRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-valuenow': '0', - 'aria-required': null, - 'aria-readonly': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: { - 'aria-valuemax': null, - 'aria-valuemin': null, - 'aria-valuenow': '0' - }, - superClass: [['roletype', 'widget', 'composite'], ['roletype', 'widget', 'input'], ['roletype', 'widget', 'range']] -}; - -exports.default = spinbuttonRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/statusRole.js b/node_modules/aria-query/lib/etc/roles/literal/statusRole.js deleted file mode 100644 index 860322e1..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/statusRole.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var statusRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-atomic': 'true', - 'aria-live': 'polite' - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = statusRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/switchRole.js b/node_modules/aria-query/lib/etc/roles/literal/switchRole.js deleted file mode 100644 index 7bbf3bdc..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/switchRole.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var switchRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-checked': 'false' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'button' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: { - 'aria-checked': 'false' - }, - superClass: [['roletype', 'widget', 'input', 'checkbox']] -}; - -exports.default = switchRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/tabRole.js b/node_modules/aria-query/lib/etc/roles/literal/tabRole.js deleted file mode 100644 index ef0c5477..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/tabRole.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var tabRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: true, - nameFrom: ['author', 'contents'], - props: { - 'aria-posinset': null, - 'aria-selected': 'false', - 'aria-setsize': null - }, - relatedConcepts: [], - requireContextRole: ['tablist'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'sectionhead'], ['roletype', 'widget']] -}; - -exports.default = tabRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/tableRole.js b/node_modules/aria-query/lib/etc/roles/literal/tableRole.js deleted file mode 100644 index 11087db9..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/tableRole.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var tableRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [{ - module: 'HTML', - concept: { - name: 'table' - } - }], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-colcount': null, - 'aria-rowcount': null - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [['row'], ['rowgroup', 'row']], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = tableRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/tablistRole.js b/node_modules/aria-query/lib/etc/roles/literal/tablistRole.js deleted file mode 100644 index 09a88c68..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/tablistRole.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var tablistRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-level': null, - 'aria-multiselectable': null, - 'aria-orientation': 'horizontal', - 'aria-expanded': null - }, - relatedConcepts: [{ - module: 'DAISY', - concept: { - name: 'guide' - } - }], - requireContextRole: [], - requiredOwnedElements: [['tab']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite']] -}; - -exports.default = tablistRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/tabpanelRole.js b/node_modules/aria-query/lib/etc/roles/literal/tabpanelRole.js deleted file mode 100644 index 82d145ff..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/tabpanelRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var tabpanelRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = tabpanelRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/termRole.js b/node_modules/aria-query/lib/etc/roles/literal/termRole.js deleted file mode 100644 index 913a02f9..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/termRole.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var termRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'dt' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = termRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/textboxRole.js b/node_modules/aria-query/lib/etc/roles/literal/textboxRole.js deleted file mode 100644 index d70d9c87..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/textboxRole.js +++ /dev/null @@ -1,51 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var textboxRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-activedescendant': null, - 'aria-autocomplete': null, - 'aria-multiline': null, - 'aria-placeholder': null, - 'aria-readonly': null, - 'aria-required': null - }, - relatedConcepts: [{ - module: 'XForms', - concept: { - name: 'input' - } - }, { - module: 'HTML', - concept: { - name: 'textarea' - } - }, { - module: 'HTML', - concept: { - name: 'input' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'text' - }] - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'widget', 'input']] -}; - -exports.default = textboxRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/timerRole.js b/node_modules/aria-query/lib/etc/roles/literal/timerRole.js deleted file mode 100644 index 406471c6..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/timerRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var timerRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'status']] -}; - -exports.default = timerRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/toolbarRole.js b/node_modules/aria-query/lib/etc/roles/literal/toolbarRole.js deleted file mode 100644 index 3b51df10..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/toolbarRole.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var toolbarRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-orientation': 'horizontal' - }, - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menubar' - } - }], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'group']] -}; - -exports.default = toolbarRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/tooltipRole.js b/node_modules/aria-query/lib/etc/roles/literal/tooltipRole.js deleted file mode 100644 index 7c1f317e..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/tooltipRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var tooltipRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section']] -}; - -exports.default = tooltipRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/treeRole.js b/node_modules/aria-query/lib/etc/roles/literal/treeRole.js deleted file mode 100644 index ed73b30a..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/treeRole.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var treeRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: { - 'aria-multiselectable': null, - 'aria-required': null, - 'aria-orientation': 'vertical' - }, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [['group', 'treeitem'], ['treeitem']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite', 'select'], ['roletype', 'structure', 'section', 'group', 'select']] -}; - -exports.default = treeRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/treegridRole.js b/node_modules/aria-query/lib/etc/roles/literal/treegridRole.js deleted file mode 100644 index 11f64ff1..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/treegridRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var treegridRole = { - abstract: false, - accessibleNameRequired: false, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author'], - props: {}, - relatedConcepts: [], - requireContextRole: [], - requiredOwnedElements: [['rowgroup', 'row'], ['row']], - requiredProps: {}, - superClass: [['roletype', 'widget', 'composite', 'grid'], ['roletype', 'structure', 'section', 'table', 'grid'], ['roletype', 'widget', 'composite', 'select', 'tree'], ['roletype', 'structure', 'section', 'group', 'select', 'tree']] -}; - -exports.default = treegridRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/etc/roles/literal/treeitemRole.js b/node_modules/aria-query/lib/etc/roles/literal/treeitemRole.js deleted file mode 100644 index 3a2d653a..00000000 --- a/node_modules/aria-query/lib/etc/roles/literal/treeitemRole.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var treeitemRole = { - abstract: false, - accessibleNameRequired: true, - baseConcepts: [], - childrenPresentational: false, - nameFrom: ['author', 'contents'], - props: {}, - relatedConcepts: [], - requireContextRole: ['group', 'tree'], - requiredOwnedElements: [], - requiredProps: {}, - superClass: [['roletype', 'structure', 'section', 'listitem'], ['roletype', 'widget', 'input', 'option']] -}; - -exports.default = treeitemRole; \ No newline at end of file diff --git a/node_modules/aria-query/lib/index.js b/node_modules/aria-query/lib/index.js deleted file mode 100644 index 7aaae853..00000000 --- a/node_modules/aria-query/lib/index.js +++ /dev/null @@ -1,35 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.roleElements = exports.elementRoles = exports.roles = exports.dom = exports.aria = undefined; - -var _ariaPropsMap = require('./ariaPropsMap'); - -var _ariaPropsMap2 = _interopRequireDefault(_ariaPropsMap); - -var _domMap = require('./domMap'); - -var _domMap2 = _interopRequireDefault(_domMap); - -var _rolesMap = require('./rolesMap'); - -var _rolesMap2 = _interopRequireDefault(_rolesMap); - -var _elementRoleMap = require('./elementRoleMap'); - -var _elementRoleMap2 = _interopRequireDefault(_elementRoleMap); - -var _roleElementMap = require('./roleElementMap'); - -var _roleElementMap2 = _interopRequireDefault(_roleElementMap); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var aria = exports.aria = _ariaPropsMap2.default; - -var dom = exports.dom = _domMap2.default; -var roles = exports.roles = _rolesMap2.default; -var elementRoles = exports.elementRoles = _elementRoleMap2.default; -var roleElements = exports.roleElements = _roleElementMap2.default; \ No newline at end of file diff --git a/node_modules/aria-query/lib/roleElementMap.js b/node_modules/aria-query/lib/roleElementMap.js deleted file mode 100644 index 3e2877f4..00000000 --- a/node_modules/aria-query/lib/roleElementMap.js +++ /dev/null @@ -1,33 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _rolesMap = require('./rolesMap'); - -var _rolesMap2 = _interopRequireDefault(_rolesMap); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } - -var roleElementMap = new Map([]); - -[].concat(_toConsumableArray(_rolesMap2.default.keys())).forEach(function (key) { - var role = _rolesMap2.default.get(key); - if (role) { - [].concat(_toConsumableArray(role.baseConcepts), _toConsumableArray(role.relatedConcepts)).forEach(function (relation) { - if (relation.module === 'HTML') { - var concept = relation.concept; - if (concept) { - var relationConcepts = roleElementMap.get(key) || new Set([]); - relationConcepts.add(concept); - roleElementMap.set(key, relationConcepts); - } - } - }); - } -}); - -exports.default = roleElementMap; \ No newline at end of file diff --git a/node_modules/aria-query/lib/rolesMap.js b/node_modules/aria-query/lib/rolesMap.js deleted file mode 100644 index d6c6f3b8..00000000 --- a/node_modules/aria-query/lib/rolesMap.js +++ /dev/null @@ -1,108 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _ariaAbstractRoles = require('./etc/roles/ariaAbstractRoles'); - -var _ariaAbstractRoles2 = _interopRequireDefault(_ariaAbstractRoles); - -var _ariaLiteralRoles = require('./etc/roles/ariaLiteralRoles'); - -var _ariaLiteralRoles2 = _interopRequireDefault(_ariaLiteralRoles); - -var _ariaDpubRoles = require('./etc/roles/ariaDpubRoles'); - -var _ariaDpubRoles2 = _interopRequireDefault(_ariaDpubRoles); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var rolesMap = new Map([]); -[_ariaAbstractRoles2.default, _ariaLiteralRoles2.default, _ariaDpubRoles2.default].forEach(function (roleSet) { - roleSet.forEach(function (roleDefinition, name) { - return rolesMap.set(name, roleDefinition); - }); -}); - -rolesMap.forEach(function (roleDefinition, name) { - // Conglomerate the properties - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = roleDefinition.superClass[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var superClassIter = _step.value; - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = superClassIter[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var superClassName = _step2.value; - - var superClassDefinition = rolesMap.get(superClassName); - if (superClassDefinition) { - var _iteratorNormalCompletion3 = true; - var _didIteratorError3 = false; - var _iteratorError3 = undefined; - - try { - for (var _iterator3 = Object.keys(superClassDefinition.props)[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) { - var prop = _step3.value; - - if (!Object.prototype.hasOwnProperty.call(roleDefinition.props, prop)) { - Object.assign(roleDefinition.props, _defineProperty({}, prop, superClassDefinition.props[prop])); - } - } - } catch (err) { - _didIteratorError3 = true; - _iteratorError3 = err; - } finally { - try { - if (!_iteratorNormalCompletion3 && _iterator3.return) { - _iterator3.return(); - } - } finally { - if (_didIteratorError3) { - throw _iteratorError3; - } - } - } - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } -}); - -exports.default = rolesMap; \ No newline at end of file diff --git a/node_modules/aria-query/package.json b/node_modules/aria-query/package.json deleted file mode 100644 index 1432a363..00000000 --- a/node_modules/aria-query/package.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "name": "aria-query", - "version": "3.0.0", - "description": "Programmatic access to the ARIA specification", - "main": "lib/index.js", - "files": [ - "lib" - ], - "scripts": { - "build": "rimraf lib && babel src --out-dir lib", - "prepublish": "npm run lint && npm run flow && npm run test && npm run build", - "coveralls": "cat ./reports/lcov.info | coveralls", - "flow": "flow; test $? -eq 0 -o $? -eq 2", - "lint": "eslint --config .eslintrc src __tests__", - "lint:fix": "npm run lint -- --fix", - "pretest": "npm run lint:fix && npm run flow", - "test": "jest --coverage", - "output_as_hack": "babel-node ./scripts/output_as_hack.js" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/A11yance/aria-query.git" - }, - "keywords": [ - "accessibility", - "ARIA" - ], - "author": "Jesse Beach ", - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/A11yance/aria-query/issues" - }, - "homepage": "https://github.com/A11yance/aria-query#readme", - "devDependencies": { - "babel-cli": "^6.18.0", - "babel-core": "^6.21.0", - "babel-eslint": "^7.1.1", - "babel-jest": "^18.0.0", - "babel-plugin-transform-flow-strip-types": "^6.21.0", - "babel-plugin-transform-object-rest-spread": "^6.20.2", - "babel-polyfill": "^6.20.0", - "babel-preset-es2015": "^6.18.0", - "coveralls": "^2.11.15", - "eslint": "^3.13.1", - "eslint-plugin-flowtype": "^2.30.0", - "eslint-plugin-import": "^2.2.0", - "expect": "^1.20.2", - "flow-bin": "^0.40.0", - "jest": "^18.1.0", - "minimist": "^1.2.0", - "rimraf": "^2.5.4" - }, - "dependencies": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" - }, - "jest": { - "coverageReporters": [ - "lcov" - ], - "coverageDirectory": "reports", - "testPathDirs": [ - "/__tests__" - ] - } -} diff --git a/node_modules/ast-types-flow/README.md b/node_modules/ast-types-flow/README.md deleted file mode 100644 index 61daf694..00000000 --- a/node_modules/ast-types-flow/README.md +++ /dev/null @@ -1,99 +0,0 @@ -# ast-types-flow - -Flow types for the Javascript AST. Based off of [benjamn/ast-types](https://github.com/benjamn/ast-types). - -## Usage - -First install `ast-types-flow` via npm, then you can import any of the types -that are exported. - -```javascript -/* @flow */ - -import type {Node} from 'ast-types-flow'; - -function getName(node: Node): string { - switch (node.type) { - case 'Identifier': - return node.name; - - case 'ClassDeclaration': - return node.id.name; // Error, id could be null. - - case 'FunctionDeclaration': - return node.id.name; // Fine if it's always there. - - case 'FunctionExpression': - if (node.id) { - return node.id.name; // Can refine id to make sure it exists. - } else { - return 'Unknown'; - } - - case 'Literal': - return node.name; // Error, Literals don't have names, don't be silly. - } - return 'Unknown'; -} -``` - -## How it works - -A notion of "extends" is added to the Flow syntax via comments. A transform is -included that will compile the source code into useful disjoint union types -based on how the different types extend each other. For example: - -```javascript -type Node = { - common: string, -}; - -type Foo = { - // extends Node - foo: string, -}; - -type Bar = { - // extends Node - bar: number, -}; -``` - -Will be transformed into: - -```javascript -type Node = { - type: 'Foo', - _Foo: void, - common: string, - foo: string, -} | { - type: 'Bar', - _Bar: void, - common: string, - bar: number, -}; - -type Foo = { - type: 'Foo', - _Foo: void, - common: string, - foo: string, -}; - -type Bar = { - type: 'Bar', - _Foo: void, - common: string, - bar: number, -}; -``` - -A few things to note: - -1. The type `Node` would more ideally be compiled into `Foo | Bar` but then the -disjoint union cannot be properly refined. For now we have to duplicate the -complete definitions. -2. Each entry in a disjoint union has to be structurally unique or Flow will -have an error on the definition. That is why the private `_Foo: void` fields -appear in the types. diff --git a/node_modules/ast-types-flow/lib/types.js b/node_modules/ast-types-flow/lib/types.js deleted file mode 100644 index 4f7e499e..00000000 --- a/node_modules/ast-types-flow/lib/types.js +++ /dev/null @@ -1,5045 +0,0 @@ -/** - * @flow - */ - -'use strict'; - -/* - * Flow types for the Babylon AST. - */ - -// Abstract types. Something must extend these. - -export type Comment = { - type: 'CommentLine'; - _CommentLine: void; - value: string; - end: number; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; -} | { - type: 'CommentBlock'; - _CommentBlock: void; - value: string; - end: number; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; -}; - -export type Declaration = { - type: 'ClassBody'; - _ClassBody: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassDeclaration'; - _ClassDeclaration: void; - body: ClassBody; - id: ?Identifier; - superClass: ?Expression; - decorators: any; - superTypeParameters: any; - typeParameters: any; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'FunctionDeclaration'; - _FunctionDeclaration: void; - body: BlockStatement; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'MethodDefinition'; - _MethodDefinition: void; - computed: boolean; - key: Node; - kind: 'constructor' | 'method' | 'get' | 'set'; - static: boolean; - value: FunctionExpression; - decorators: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'VariableDeclaration'; - _VariableDeclaration: void; - declarations: Array; - kind: 'var' | 'let' | 'const'; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassProperty'; - _ClassProperty: void; - computed: boolean; - key: Node; - static: boolean; - typeAnnotation: ?TypeAnnotation; - value: ?Expression; - decorators: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Expression = { - type: 'ArrayExpression'; - _ArrayExpression: void; - elements: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'AssignmentExpression'; - _AssignmentExpression: void; - left: Pattern; - operator: AssignmentOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'AwaitExpression'; - _AwaitExpression: void; - all: boolean; - argument: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BinaryExpression'; - _BinaryExpression: void; - left: Expression; - operator: BinaryOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BindExpression'; - _BindExpression: void; - callee: Node; - object: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'CallExpression'; - _CallExpression: void; - arguments: Array; - callee: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassExpression'; - _ClassExpression: void; - body: ClassBody; - id: ?Identifier; - superClass: ?Expression; - decorators: any; - superTypeParameters: any; - typeParameters: any; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ComprehensionExpression'; - _ComprehensionExpression: void; - body: Expression; - blocks: Array; - filter: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ConditionalExpression'; - _ConditionalExpression: void; - alternate: Expression; - consequent: Expression; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DoExpression'; - _DoExpression: void; - body: Statement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'FunctionExpression'; - _FunctionExpression: void; - body: BlockStatement; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'Identifier'; - _Identifier: void; - name: string; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Literal'; - _Literal: void; - raw: string; - regex: ?{pattern: string, flags: string}; - value: ?(string | boolean | number | RegExp); - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'LogicalExpression'; - _LogicalExpression: void; - left: Expression; - operator: LogicalOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'MemberExpression'; - _MemberExpression: void; - computed: boolean; - object: Expression; - property: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NewExpression'; - _NewExpression: void; - arguments: Array; - callee: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectExpression'; - _ObjectExpression: void; - properties: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SequenceExpression'; - _SequenceExpression: void; - expression: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TaggedTemplateExpression'; - _TaggedTemplateExpression: void; - quasi: TemplateLiteral; - tag: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TemplateLiteral'; - _TemplateLiteral: void; - expressions: Array; - quasis: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ThisExpression'; - _ThisExpression: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'UnaryExpression'; - _UnaryExpression: void; - argument: Expression; - operator: UnaryOperator; - prefix: true; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'UpdateExpression'; - _UpdateExpression: void; - argument: Expression; - operator: UpdateOperator; - prefix: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'YieldExpression'; - _YieldExpression: void; - argument: ?Expression; - delegate: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeCastExpression'; - _TypeCastExpression: void; - expression: Expression; - typeAnnotation: TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXElement'; - _JSXElement: void; - children: Array; - closingElement: ?JSXClosingElement; - openingElement: JSXOpeningElement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXEmptyExpression'; - _JSXEmptyExpression: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXExpressionContainer'; - _JSXExpressionContainer: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXMemberExpression'; - _JSXMemberExpression: void; - computed: boolean; - object: Node; - property: JSXIdentifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Function = { - type: 'ArrowFunctionExpression'; - _ArrowFunctionExpression: void; - body: Node; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'FunctionDeclaration'; - _FunctionDeclaration: void; - body: BlockStatement; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'FunctionExpression'; - _FunctionExpression: void; - body: BlockStatement; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -}; - -export type Node = { - type: 'ArrayExpression'; - _ArrayExpression: void; - elements: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ArrayPattern'; - _ArrayPattern: void; - elements: Array; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ArrowFunctionExpression'; - _ArrowFunctionExpression: void; - body: Node; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'AssignmentExpression'; - _AssignmentExpression: void; - left: Pattern; - operator: AssignmentOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'AssignmentPattern'; - _AssignmentPattern: void; - left: Pattern; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'AwaitExpression'; - _AwaitExpression: void; - all: boolean; - argument: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BinaryExpression'; - _BinaryExpression: void; - left: Expression; - operator: BinaryOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BindExpression'; - _BindExpression: void; - callee: Node; - object: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BlockStatement'; - _BlockStatement: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BreakStatement'; - _BreakStatement: void; - label: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'CallExpression'; - _CallExpression: void; - arguments: Array; - callee: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'CatchClause'; - _CatchClause: void; - body: BlockStatement; - param: Pattern; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassBody'; - _ClassBody: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassDeclaration'; - _ClassDeclaration: void; - body: ClassBody; - id: ?Identifier; - superClass: ?Expression; - decorators: any; - superTypeParameters: any; - typeParameters: any; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassExpression'; - _ClassExpression: void; - body: ClassBody; - id: ?Identifier; - superClass: ?Expression; - decorators: any; - superTypeParameters: any; - typeParameters: any; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ComprehensionBlock'; - _ComprehensionBlock: void; - each: boolean; - left: Pattern; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ComprehensionExpression'; - _ComprehensionExpression: void; - body: Expression; - blocks: Array; - filter: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ConditionalExpression'; - _ConditionalExpression: void; - alternate: Expression; - consequent: Expression; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ContinueStatement'; - _ContinueStatement: void; - label: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Decorator'; - _Decorator: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DebuggerStatement'; - _DebuggerStatement: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DoWhileStatement'; - _DoWhileStatement: void; - body: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DoExpression'; - _DoExpression: void; - body: Statement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'EmptyStatement'; - _EmptyStatement: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExpressionStatement'; - _ExpressionStatement: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'File'; - _File: void; - program: Program; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ForInStatement'; - _ForInStatement: void; - body: Statement; - left: Node; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ForOfStatement'; - _ForOfStatement: void; - body: Statement; - left: Node; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ForStatement'; - _ForStatement: void; - init: ?Node; - test: ?Expression; - update: ?Expression; - body: Statement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'FunctionDeclaration'; - _FunctionDeclaration: void; - body: BlockStatement; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'FunctionExpression'; - _FunctionExpression: void; - body: BlockStatement; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -} | { - type: 'Identifier'; - _Identifier: void; - name: string; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'IfStatement'; - _IfStatement: void; - alternate: ?Statement; - consequent: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ImportDefaultSpecifier'; - _ImportDefaultSpecifier: void; - local: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ImportNamespaceSpecifier'; - _ImportNamespaceSpecifier: void; - local: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ImportDeclaration'; - _ImportDeclaration: void; - specifiers: Array; - source: Literal; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ImportSpecifier'; - _ImportSpecifier: void; - imported: Node; - local: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'LabeledStatement'; - _LabeledStatement: void; - body: Statement; - label: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Literal'; - _Literal: void; - raw: string; - regex: ?{pattern: string, flags: string}; - value: ?(string | boolean | number | RegExp); - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'LogicalExpression'; - _LogicalExpression: void; - left: Expression; - operator: LogicalOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'MemberExpression'; - _MemberExpression: void; - computed: boolean; - object: Expression; - property: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'MetaProperty'; - _MetaProperty: void; - meta: Node; - property: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'MethodDefinition'; - _MethodDefinition: void; - computed: boolean; - key: Node; - kind: 'constructor' | 'method' | 'get' | 'set'; - static: boolean; - value: FunctionExpression; - decorators: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NewExpression'; - _NewExpression: void; - arguments: Array; - callee: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Noop'; - _Noop: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectExpression'; - _ObjectExpression: void; - properties: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectPattern'; - _ObjectPattern: void; - properties: Array; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Program'; - _Program: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Property'; - _Property: void; - computed: boolean; - key: Node; - kind: 'init' | 'get' | 'set'; - method: boolean; - shorthand: boolean; - value: Node; - decorators: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'RestElement'; - _RestElement: void; - argument: Pattern; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ReturnStatement'; - _ReturnStatement: void; - argument: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SequenceExpression'; - _SequenceExpression: void; - expression: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SpreadElement'; - _SpreadElement: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SpreadProperty'; - _SpreadProperty: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Super'; - _Super: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SwitchCase'; - _SwitchCase: void; - consequent: Array; - test: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SwitchStatement'; - _SwitchStatement: void; - cases: Array; - discriminant: Expression; - lexical: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TaggedTemplateExpression'; - _TaggedTemplateExpression: void; - quasi: TemplateLiteral; - tag: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TemplateElement'; - _TemplateElement: void; - tail: boolean; - value: {cooked: string, raw: string}; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TemplateLiteral'; - _TemplateLiteral: void; - expressions: Array; - quasis: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ThisExpression'; - _ThisExpression: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ThrowStatement'; - _ThrowStatement: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TryStatement'; - _TryStatement: void; - block: BlockStatement; - finalizer: ?BlockStatement; - guardedHandlers: Array; - handler: ?CatchClause; - handlers: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'UnaryExpression'; - _UnaryExpression: void; - argument: Expression; - operator: UnaryOperator; - prefix: true; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'UpdateExpression'; - _UpdateExpression: void; - argument: Expression; - operator: UpdateOperator; - prefix: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'VariableDeclaration'; - _VariableDeclaration: void; - declarations: Array; - kind: 'var' | 'let' | 'const'; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'VariableDeclarator'; - _VariableDeclarator: void; - id: Pattern; - init: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'WhileStatement'; - _WhileStatement: void; - body: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'WithStatement'; - _WithStatement: void; - body: Statement; - object: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'YieldExpression'; - _YieldExpression: void; - argument: ?Expression; - delegate: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExportAllDeclaration'; - _ExportAllDeclaration: void; - exported: Node; - source: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExportDefaultDeclaration'; - _ExportDefaultDeclaration: void; - declaration: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExportNamedDeclaration'; - _ExportNamedDeclaration: void; - declaration: Node; - source: Literal; - specifiers: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExportDefaultSpecifier'; - _ExportDefaultSpecifier: void; - exported: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExportNamespaceSpecifier'; - _ExportNamespaceSpecifier: void; - exported: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExportSpecifier'; - _ExportSpecifier: void; - local: Node; - exported: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'AnyTypeAnnotation'; - _AnyTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ArrayTypeAnnotation'; - _ArrayTypeAnnotation: void; - elementType: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BooleanLiteralTypeAnnotation'; - _BooleanLiteralTypeAnnotation: void; - raw: string; - value: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BooleanTypeAnnotation'; - _BooleanTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassImplements'; - _ClassImplements: void; - id: Identifier; - typeParameters: ?TypeParameterInstantiation; - superClass: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ClassProperty'; - _ClassProperty: void; - computed: boolean; - key: Node; - static: boolean; - typeAnnotation: ?TypeAnnotation; - value: ?Expression; - decorators: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareClass'; - _DeclareClass: void; - body: ObjectTypeAnnotation; - extends: Array; - id: Identifier; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareFunction'; - _DeclareFunction: void; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareModule'; - _DeclareModule: void; - body: BlockStatement; - id: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareVariable'; - _DeclareVariable: void; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'FunctionTypeAnnotation'; - _FunctionTypeAnnotation: void; - params: Array; - rest: ?FunctionTypeParam; - returnType: Type; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'FunctionTypeParam'; - _FunctionTypeParam: void; - name: Identifier; - optional: boolean; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'GenericTypeAnnotation'; - _GenericTypeAnnotation: void; - id: Node; - typeParameters: ?TypeParameterInstantiation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'InterfaceExtends'; - _InterfaceExtends: void; - id: Identifier; - typeParameters: ?TypeParameterInstantiation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'InterfaceDeclaration'; - _InterfaceDeclaration: void; - body: ObjectTypeAnnotation; - extends: Array; - id: Identifier; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'IntersectionTypeAnnotation'; - _IntersectionTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'MixedTypeAnnotation'; - _MixedTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NullableTypeAnnotation'; - _NullableTypeAnnotation: void; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NumberLiteralTypeAnnotation'; - _NumberLiteralTypeAnnotation: void; - raw: string; - value: number; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NumberTypeAnnotation'; - _NumberTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'StringLiteralTypeAnnotation'; - _StringLiteralTypeAnnotation: void; - raw: string; - value: string; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'StringTypeAnnotation'; - _StringTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TupleTypeAnnotation'; - _TupleTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeofTypeAnnotation'; - _TypeofTypeAnnotation: void; - argument: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeAlias'; - _TypeAlias: void; - id: Identifier; - right: Type; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeAnnotation'; - _TypeAnnotation: void; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeCastExpression'; - _TypeCastExpression: void; - expression: Expression; - typeAnnotation: TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeParameterDeclaration'; - _TypeParameterDeclaration: void; - params: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeParameterInstantiation'; - _TypeParameterInstantiation: void; - params: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectTypeAnnotation'; - _ObjectTypeAnnotation: void; - callProperties: Array; - indexers: Array; - properties: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectTypeCallProperty'; - _ObjectTypeCallProperty: void; - static: boolean; - value: FunctionTypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectTypeIndexer'; - _ObjectTypeIndexer: void; - id: Identifier; - key: Type; - value: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectTypeProperty'; - _ObjectTypeProperty: void; - key: Node; - optional: boolean; - value: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'QualifiedTypeIdentifier'; - _QualifiedTypeIdentifier: void; - id: Identifier; - qualification: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'UnionTypeAnnotation'; - _UnionTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'VoidTypeAnnotation'; - _VoidTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXAttribute'; - _JSXAttribute: void; - name: Node; - value: ?Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXClosingElement'; - _JSXClosingElement: void; - name: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXElement'; - _JSXElement: void; - children: Array; - closingElement: ?JSXClosingElement; - openingElement: JSXOpeningElement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXEmptyExpression'; - _JSXEmptyExpression: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXExpressionContainer'; - _JSXExpressionContainer: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXIdentifier'; - _JSXIdentifier: void; - name: string; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXMemberExpression'; - _JSXMemberExpression: void; - computed: boolean; - object: Node; - property: JSXIdentifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXNamespacedName'; - _JSXNamespacedName: void; - name: JSXIdentifier; - namespace: JSXIdentifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXOpeningElement'; - _JSXOpeningElement: void; - attributes: Array; - name: Array; - selfClosing: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'JSXSpreadAttribute'; - _JSXSpreadAttribute: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Pattern = { - type: 'ArrayPattern'; - _ArrayPattern: void; - elements: Array; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'AssignmentPattern'; - _AssignmentPattern: void; - left: Pattern; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'Identifier'; - _Identifier: void; - name: string; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectPattern'; - _ObjectPattern: void; - properties: Array; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'RestElement'; - _RestElement: void; - argument: Pattern; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Statement = { - type: 'BlockStatement'; - _BlockStatement: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BreakStatement'; - _BreakStatement: void; - label: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ContinueStatement'; - _ContinueStatement: void; - label: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DoWhileStatement'; - _DoWhileStatement: void; - body: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'EmptyStatement'; - _EmptyStatement: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ExpressionStatement'; - _ExpressionStatement: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ForInStatement'; - _ForInStatement: void; - body: Statement; - left: Node; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ForOfStatement'; - _ForOfStatement: void; - body: Statement; - left: Node; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ForStatement'; - _ForStatement: void; - init: ?Node; - test: ?Expression; - update: ?Expression; - body: Statement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'IfStatement'; - _IfStatement: void; - alternate: ?Statement; - consequent: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'LabeledStatement'; - _LabeledStatement: void; - body: Statement; - label: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ReturnStatement'; - _ReturnStatement: void; - argument: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'SwitchStatement'; - _SwitchStatement: void; - cases: Array; - discriminant: Expression; - lexical: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ThrowStatement'; - _ThrowStatement: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TryStatement'; - _TryStatement: void; - block: BlockStatement; - finalizer: ?BlockStatement; - guardedHandlers: Array; - handler: ?CatchClause; - handlers: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'WhileStatement'; - _WhileStatement: void; - body: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'WithStatement'; - _WithStatement: void; - body: Statement; - object: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareClass'; - _DeclareClass: void; - body: ObjectTypeAnnotation; - extends: Array; - id: Identifier; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareFunction'; - _DeclareFunction: void; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareModule'; - _DeclareModule: void; - body: BlockStatement; - id: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'DeclareVariable'; - _DeclareVariable: void; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'InterfaceDeclaration'; - _InterfaceDeclaration: void; - body: ObjectTypeAnnotation; - extends: Array; - id: Identifier; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TypeAlias'; - _TypeAlias: void; - id: Identifier; - right: Type; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Type = { - type: 'AnyTypeAnnotation'; - _AnyTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ArrayTypeAnnotation'; - _ArrayTypeAnnotation: void; - elementType: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BooleanLiteralTypeAnnotation'; - _BooleanLiteralTypeAnnotation: void; - raw: string; - value: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'BooleanTypeAnnotation'; - _BooleanTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'FunctionTypeAnnotation'; - _FunctionTypeAnnotation: void; - params: Array; - rest: ?FunctionTypeParam; - returnType: Type; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'GenericTypeAnnotation'; - _GenericTypeAnnotation: void; - id: Node; - typeParameters: ?TypeParameterInstantiation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'IntersectionTypeAnnotation'; - _IntersectionTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'MixedTypeAnnotation'; - _MixedTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NullableTypeAnnotation'; - _NullableTypeAnnotation: void; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NumberLiteralTypeAnnotation'; - _NumberLiteralTypeAnnotation: void; - raw: string; - value: number; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'NumberTypeAnnotation'; - _NumberTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'StringLiteralTypeAnnotation'; - _StringLiteralTypeAnnotation: void; - raw: string; - value: string; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'StringTypeAnnotation'; - _StringTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'TupleTypeAnnotation'; - _TupleTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'ObjectTypeAnnotation'; - _ObjectTypeAnnotation: void; - callProperties: Array; - indexers: Array; - properties: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'UnionTypeAnnotation'; - _UnionTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -} | { - type: 'VoidTypeAnnotation'; - _VoidTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// Concrete Types. Nothing can extend these. - -export type CommentLine = { - type: 'CommentLine'; - _CommentLine: void; - value: string; - end: number; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; -}; - -export type CommentBlock = { - type: 'CommentBlock'; - _CommentBlock: void; - value: string; - end: number; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; -}; - -// Babel concrete types. - -export type ArrayExpression = { - type: 'ArrayExpression'; - _ArrayExpression: void; - elements: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ArrayPattern = { - type: 'ArrayPattern'; - _ArrayPattern: void; - elements: Array; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ArrowFunctionExpression = { - type: 'ArrowFunctionExpression'; - _ArrowFunctionExpression: void; - body: Node; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -}; - -type AssignmentOperator = - '=' | - '+=' | - '-=' | - '*=' | - '/=' | - '%=' | - '<<=' | - '>>=' | - '>>>=' | - '|=' | - '^=' | - '&='; - -export type AssignmentExpression = { - type: 'AssignmentExpression'; - _AssignmentExpression: void; - left: Pattern; - operator: AssignmentOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type AssignmentPattern = { - type: 'AssignmentPattern'; - _AssignmentPattern: void; - left: Pattern; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type AwaitExpression = { - type: 'AwaitExpression'; - _AwaitExpression: void; - all: boolean; - argument: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -type BinaryOperator = - '==' | - '!=' | - '===' | - '!==' | - '<' | - '<=' | - '>' | - '>=' | - '<<' | - '>>' | - '>>>' | - '+' | - '-' | - '*' | - '/' | - '%' | - '&' | - '|' | - '^' | - 'in' | - 'instanceof' | - '..'; - -export type BinaryExpression = { - type: 'BinaryExpression'; - _BinaryExpression: void; - left: Expression; - operator: BinaryOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: What is this? -export type BindExpression = { - type: 'BindExpression'; - _BindExpression: void; - callee: Node; - object: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type BlockStatement = { - type: 'BlockStatement'; - _BlockStatement: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type BreakStatement = { - type: 'BreakStatement'; - _BreakStatement: void; - label: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type CallExpression = { - type: 'CallExpression'; - _CallExpression: void; - arguments: Array; - callee: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type CatchClause = { - type: 'CatchClause'; - _CatchClause: void; - body: BlockStatement; - param: Pattern; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ClassBody = { - type: 'ClassBody'; - _ClassBody: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ClassDeclaration = { - type: 'ClassDeclaration'; - _ClassDeclaration: void; - body: ClassBody; - id: ?Identifier; - superClass: ?Expression; - decorators: any; - superTypeParameters: any; - typeParameters: any; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ClassExpression = { - type: 'ClassExpression'; - _ClassExpression: void; - body: ClassBody; - id: ?Identifier; - superClass: ?Expression; - decorators: any; - superTypeParameters: any; - typeParameters: any; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ComprehensionBlock = { - type: 'ComprehensionBlock'; - _ComprehensionBlock: void; - each: boolean; - left: Pattern; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ComprehensionExpression = { - type: 'ComprehensionExpression'; - _ComprehensionExpression: void; - body: Expression; - blocks: Array; - filter: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ConditionalExpression = { - type: 'ConditionalExpression'; - _ConditionalExpression: void; - alternate: Expression; - consequent: Expression; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ContinueStatement = { - type: 'ContinueStatement'; - _ContinueStatement: void; - label: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type Decorator = { - type: 'Decorator'; - _Decorator: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type DebuggerStatement = { - type: 'DebuggerStatement'; - _DebuggerStatement: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type DoWhileStatement = { - type: 'DoWhileStatement'; - _DoWhileStatement: void; - body: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type DoExpression = { - type: 'DoExpression'; - _DoExpression: void; - body: Statement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type EmptyStatement = { - type: 'EmptyStatement'; - _EmptyStatement: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ExpressionStatement = { - type: 'ExpressionStatement'; - _ExpressionStatement: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type File = { - type: 'File'; - _File: void; - program: Program; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ForInStatement = { - type: 'ForInStatement'; - _ForInStatement: void; - body: Statement; - left: Node; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ForOfStatement = { - type: 'ForOfStatement'; - _ForOfStatement: void; - body: Statement; - left: Node; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ForStatement = { - type: 'ForStatement'; - _ForStatement: void; - init: ?Node; - test: ?Expression; - update: ?Expression; - body: Statement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type FunctionDeclaration = { - type: 'FunctionDeclaration'; - _FunctionDeclaration: void; - body: BlockStatement; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -}; - -export type FunctionExpression = { - type: 'FunctionExpression'; - _FunctionExpression: void; - body: BlockStatement; - id: ?Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; - async: boolean; - defaults: Array; - expression: boolean; - generator: boolean; - params: Array; - rest: ?Identifier; - returnType: ?TypeAnnotation; - typeParameters: ?TypeParameterDeclaration; -}; - -export type Identifier = { - type: 'Identifier'; - _Identifier: void; - name: string; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type IfStatement = { - type: 'IfStatement'; - _IfStatement: void; - alternate: ?Statement; - consequent: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ImportDefaultSpecifier = { - type: 'ImportDefaultSpecifier'; - _ImportDefaultSpecifier: void; - local: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ImportNamespaceSpecifier = { - type: 'ImportNamespaceSpecifier'; - _ImportNamespaceSpecifier: void; - local: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ImportDeclaration = { - type: 'ImportDeclaration'; - _ImportDeclaration: void; - specifiers: Array; - source: Literal; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ImportSpecifier = { - type: 'ImportSpecifier'; - _ImportSpecifier: void; - imported: Node; - local: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type LabeledStatement = { - type: 'LabeledStatement'; - _LabeledStatement: void; - body: Statement; - label: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Literal = { - type: 'Literal'; - _Literal: void; - raw: string; - regex: ?{pattern: string, flags: string}; - value: ?(string | boolean | number | RegExp); - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -type LogicalOperator = '||' | '&&'; - -export type LogicalExpression = { - type: 'LogicalExpression'; - _LogicalExpression: void; - left: Expression; - operator: LogicalOperator; - right: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type MemberExpression = { - type: 'MemberExpression'; - _MemberExpression: void; - computed: boolean; - object: Expression; - property: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type MetaProperty = { - type: 'MetaProperty'; - _MetaProperty: void; - meta: Node; - property: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type MethodDefinition = { - type: 'MethodDefinition'; - _MethodDefinition: void; - computed: boolean; - key: Node; - kind: 'constructor' | 'method' | 'get' | 'set'; - static: boolean; - value: FunctionExpression; - decorators: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type NewExpression = { - type: 'NewExpression'; - _NewExpression: void; - arguments: Array; - callee: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Noop = { - type: 'Noop'; - _Noop: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ObjectExpression = { - type: 'ObjectExpression'; - _ObjectExpression: void; - properties: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ObjectPattern = { - type: 'ObjectPattern'; - _ObjectPattern: void; - properties: Array; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Program = { - type: 'Program'; - _Program: void; - body: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Property = { - type: 'Property'; - _Property: void; - computed: boolean; - key: Node; - kind: 'init' | 'get' | 'set'; - method: boolean; - shorthand: boolean; - value: Node; - decorators: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type RestElement = { - type: 'RestElement'; - _RestElement: void; - argument: Pattern; - typeAnnotation: ?TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ReturnStatement = { - type: 'ReturnStatement'; - _ReturnStatement: void; - argument: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type SequenceExpression = { - type: 'SequenceExpression'; - _SequenceExpression: void; - expression: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type SpreadElement = { - type: 'SpreadElement'; - _SpreadElement: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type SpreadProperty = { - type: 'SpreadProperty'; - _SpreadProperty: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type Super = { - type: 'Super'; - _Super: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type SwitchCase = { - type: 'SwitchCase'; - _SwitchCase: void; - consequent: Array; - test: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type SwitchStatement = { - type: 'SwitchStatement'; - _SwitchStatement: void; - cases: Array; - discriminant: Expression; - lexical: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TaggedTemplateExpression = { - type: 'TaggedTemplateExpression'; - _TaggedTemplateExpression: void; - quasi: TemplateLiteral; - tag: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TemplateElement = { - type: 'TemplateElement'; - _TemplateElement: void; - tail: boolean; - value: {cooked: string, raw: string}; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TemplateLiteral = { - type: 'TemplateLiteral'; - _TemplateLiteral: void; - expressions: Array; - quasis: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ThisExpression = { - type: 'ThisExpression'; - _ThisExpression: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ThrowStatement = { - type: 'ThrowStatement'; - _ThrowStatement: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TryStatement = { - type: 'TryStatement'; - _TryStatement: void; - block: BlockStatement; - finalizer: ?BlockStatement; - guardedHandlers: Array; - handler: ?CatchClause; - handlers: ?Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -type UnaryOperator = '-' | '+' | '!' | '~' | 'typeof' | 'void' | 'delete'; - -export type UnaryExpression = { - type: 'UnaryExpression'; - _UnaryExpression: void; - argument: Expression; - operator: UnaryOperator; - prefix: true; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -type UpdateOperator = '++' | '--'; - -export type UpdateExpression = { - type: 'UpdateExpression'; - _UpdateExpression: void; - argument: Expression; - operator: UpdateOperator; - prefix: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type VariableDeclaration = { - type: 'VariableDeclaration'; - _VariableDeclaration: void; - declarations: Array; - kind: 'var' | 'let' | 'const'; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type VariableDeclarator = { - type: 'VariableDeclarator'; - _VariableDeclarator: void; - id: Pattern; - init: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type WhileStatement = { - type: 'WhileStatement'; - _WhileStatement: void; - body: Statement; - test: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type WithStatement = { - type: 'WithStatement'; - _WithStatement: void; - body: Statement; - object: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type YieldExpression = { - type: 'YieldExpression'; - _YieldExpression: void; - argument: ?Expression; - delegate: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ExportAllDeclaration = { - type: 'ExportAllDeclaration'; - _ExportAllDeclaration: void; - exported: Node; - source: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ExportDefaultDeclaration = { - type: 'ExportDefaultDeclaration'; - _ExportDefaultDeclaration: void; - declaration: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ExportNamedDeclaration = { - type: 'ExportNamedDeclaration'; - _ExportNamedDeclaration: void; - declaration: Node; - source: Literal; - specifiers: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ExportDefaultSpecifier = { - type: 'ExportDefaultSpecifier'; - _ExportDefaultSpecifier: void; - exported: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ExportNamespaceSpecifier = { - type: 'ExportNamespaceSpecifier'; - _ExportNamespaceSpecifier: void; - exported: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type ExportSpecifier = { - type: 'ExportSpecifier'; - _ExportSpecifier: void; - local: Node; - exported: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type AnyTypeAnnotation = { - type: 'AnyTypeAnnotation'; - _AnyTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ArrayTypeAnnotation = { - type: 'ArrayTypeAnnotation'; - _ArrayTypeAnnotation: void; - elementType: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type BooleanLiteralTypeAnnotation = { - type: 'BooleanLiteralTypeAnnotation'; - _BooleanLiteralTypeAnnotation: void; - raw: string; - value: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type BooleanTypeAnnotation = { - type: 'BooleanTypeAnnotation'; - _BooleanTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ClassImplements = { - type: 'ClassImplements'; - _ClassImplements: void; - id: Identifier; - typeParameters: ?TypeParameterInstantiation; - superClass: ?Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ClassProperty = { - type: 'ClassProperty'; - _ClassProperty: void; - computed: boolean; - key: Node; - static: boolean; - typeAnnotation: ?TypeAnnotation; - value: ?Expression; - decorators: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type DeclareClass = { - type: 'DeclareClass'; - _DeclareClass: void; - body: ObjectTypeAnnotation; - extends: Array; - id: Identifier; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type DeclareFunction = { - type: 'DeclareFunction'; - _DeclareFunction: void; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type DeclareModule = { - type: 'DeclareModule'; - _DeclareModule: void; - body: BlockStatement; - id: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -// TODO: Make this correct. -export type DeclareVariable = { - type: 'DeclareVariable'; - _DeclareVariable: void; - id: Identifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type FunctionTypeAnnotation = { - type: 'FunctionTypeAnnotation'; - _FunctionTypeAnnotation: void; - params: Array; - rest: ?FunctionTypeParam; - returnType: Type; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type FunctionTypeParam = { - type: 'FunctionTypeParam'; - _FunctionTypeParam: void; - name: Identifier; - optional: boolean; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type GenericTypeAnnotation = { - type: 'GenericTypeAnnotation'; - _GenericTypeAnnotation: void; - id: Node; - typeParameters: ?TypeParameterInstantiation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type InterfaceExtends = { - type: 'InterfaceExtends'; - _InterfaceExtends: void; - id: Identifier; - typeParameters: ?TypeParameterInstantiation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type InterfaceDeclaration = { - type: 'InterfaceDeclaration'; - _InterfaceDeclaration: void; - body: ObjectTypeAnnotation; - extends: Array; - id: Identifier; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type IntersectionTypeAnnotation = { - type: 'IntersectionTypeAnnotation'; - _IntersectionTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type MixedTypeAnnotation = { - type: 'MixedTypeAnnotation'; - _MixedTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type NullableTypeAnnotation = { - type: 'NullableTypeAnnotation'; - _NullableTypeAnnotation: void; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type NumberLiteralTypeAnnotation = { - type: 'NumberLiteralTypeAnnotation'; - _NumberLiteralTypeAnnotation: void; - raw: string; - value: number; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type NumberTypeAnnotation = { - type: 'NumberTypeAnnotation'; - _NumberTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type StringLiteralTypeAnnotation = { - type: 'StringLiteralTypeAnnotation'; - _StringLiteralTypeAnnotation: void; - raw: string; - value: string; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type StringTypeAnnotation = { - type: 'StringTypeAnnotation'; - _StringTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TupleTypeAnnotation = { - type: 'TupleTypeAnnotation'; - _TupleTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TypeofTypeAnnotation = { - type: 'TypeofTypeAnnotation'; - _TypeofTypeAnnotation: void; - argument: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TypeAlias = { - type: 'TypeAlias'; - _TypeAlias: void; - id: Identifier; - right: Type; - typeParameters: ?TypeParameterDeclaration; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TypeAnnotation = { - type: 'TypeAnnotation'; - _TypeAnnotation: void; - typeAnnotation: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TypeCastExpression = { - type: 'TypeCastExpression'; - _TypeCastExpression: void; - expression: Expression; - typeAnnotation: TypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TypeParameterDeclaration = { - type: 'TypeParameterDeclaration'; - _TypeParameterDeclaration: void; - params: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type TypeParameterInstantiation = { - type: 'TypeParameterInstantiation'; - _TypeParameterInstantiation: void; - params: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ObjectTypeAnnotation = { - type: 'ObjectTypeAnnotation'; - _ObjectTypeAnnotation: void; - callProperties: Array; - indexers: Array; - properties: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ObjectTypeCallProperty = { - type: 'ObjectTypeCallProperty'; - _ObjectTypeCallProperty: void; - static: boolean; - value: FunctionTypeAnnotation; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ObjectTypeIndexer = { - type: 'ObjectTypeIndexer'; - _ObjectTypeIndexer: void; - id: Identifier; - key: Type; - value: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type ObjectTypeProperty = { - type: 'ObjectTypeProperty'; - _ObjectTypeProperty: void; - key: Node; - optional: boolean; - value: Type; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type QualifiedTypeIdentifier = { - type: 'QualifiedTypeIdentifier'; - _QualifiedTypeIdentifier: void; - id: Identifier; - qualification: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type UnionTypeAnnotation = { - type: 'UnionTypeAnnotation'; - _UnionTypeAnnotation: void; - types: Array; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type VoidTypeAnnotation = { - type: 'VoidTypeAnnotation'; - _VoidTypeAnnotation: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXAttribute = { - type: 'JSXAttribute'; - _JSXAttribute: void; - name: Node; - value: ?Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXClosingElement = { - type: 'JSXClosingElement'; - _JSXClosingElement: void; - name: Node; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXElement = { - type: 'JSXElement'; - _JSXElement: void; - children: Array; - closingElement: ?JSXClosingElement; - openingElement: JSXOpeningElement; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXEmptyExpression = { - type: 'JSXEmptyExpression'; - _JSXEmptyExpression: void; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXExpressionContainer = { - type: 'JSXExpressionContainer'; - _JSXExpressionContainer: void; - expression: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXIdentifier = { - type: 'JSXIdentifier'; - _JSXIdentifier: void; - name: string; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXMemberExpression = { - type: 'JSXMemberExpression'; - _JSXMemberExpression: void; - computed: boolean; - object: Node; - property: JSXIdentifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXNamespacedName = { - type: 'JSXNamespacedName'; - _JSXNamespacedName: void; - name: JSXIdentifier; - namespace: JSXIdentifier; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXOpeningElement = { - type: 'JSXOpeningElement'; - _JSXOpeningElement: void; - attributes: Array; - name: Array; - selfClosing: boolean; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; - -export type JSXSpreadAttribute = { - type: 'JSXSpreadAttribute'; - _JSXSpreadAttribute: void; - argument: Expression; - end: number; - innerComments: ?Array; - leadingComments: ?Array; - loc: { - end: {column: number, line: number}, - start: {column: number, line: number}, - }; - start: number; - trailingComments: ?Array; -}; diff --git a/node_modules/ast-types-flow/package.json b/node_modules/ast-types-flow/package.json deleted file mode 100644 index 4179ffb9..00000000 --- a/node_modules/ast-types-flow/package.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "ast-types-flow", - "version": "0.0.7", - "description": "Flow types for the Javascript AST", - "main": "lib/types.js", - "files": [ - "lib" - ], - "scripts": { - "build": "gulp build", - "test": "flow" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/kyldvs/ast-types-flow.git" - }, - "keywords": [ - "flow", - "ast", - "javascript" - ], - "author": "kyldvs", - "license": "ISC", - "bugs": { - "url": "https://github.com/kyldvs/ast-types-flow/issues" - }, - "homepage": "https://github.com/kyldvs/ast-types-flow#readme", - "devDependencies": { - "gulp": "^3.9.0", - "gulp-util": "^3.0.6", - "jscodeshift": "^0.3.7", - "nuclide-node-transpiler": "0.0.30", - "through2": "^2.0.0" - } -} diff --git a/node_modules/axobject-query/CHANGELOG.md b/node_modules/axobject-query/CHANGELOG.md deleted file mode 100755 index cd10d07b..00000000 --- a/node_modules/axobject-query/CHANGELOG.md +++ /dev/null @@ -1,26 +0,0 @@ -# axobject-query Change Log - -## 1.0.1 - -- Changed label from structure to widget -- Added the CHANGELOG file - -## 2.0.1 - -- Add NPM and Watchman configs - -## 2.1.0 - -- b436e56 (origin/update-dependencies, update-dependencies) Update dependencies; ESLint to 6 -- c157720 Fixes for select and datalist - -## 2.1.1 - -- Bumping the version to see if Travis will run green on the master branch - -## 2.1.2 - -- a1c5ef9 Updated the Copyright to 2020 for A11yance -- 5c5e04d Remove Peer Dependency to ESLint -- ec1b53b Remove dependencies on @babel/runtime and @babel/runtime-corejs3 - diff --git a/node_modules/axobject-query/LICENSE b/node_modules/axobject-query/LICENSE deleted file mode 100755 index 3a8ae7c3..00000000 --- a/node_modules/axobject-query/LICENSE +++ /dev/null @@ -1,201 +0,0 @@ -Apache License -Version 2.0, January 2004 -http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - -"License" shall mean the terms and conditions for use, reproduction, -and distribution as defined by Sections 1 through 9 of this document. - -"Licensor" shall mean the copyright owner or entity authorized by -the copyright owner that is granting the License. - -"Legal Entity" shall mean the union of the acting entity and all -other entities that control, are controlled by, or are under common -control with that entity. For the purposes of this definition, -"control" means (i) the power, direct or indirect, to cause the -direction or management of such entity, whether by contract or -otherwise, or (ii) ownership of fifty percent (50%) or more of the -outstanding shares, or (iii) beneficial ownership of such entity. - -"You" (or "Your") shall mean an individual or Legal Entity -exercising permissions granted by this License. - -"Source" form shall mean the preferred form for making modifications, -including but not limited to software source code, documentation -source, and configuration files. - -"Object" form shall mean any form resulting from mechanical -transformation or translation of a Source form, including but -not limited to compiled object code, generated documentation, -and conversions to other media types. - -"Work" shall mean the work of authorship, whether in Source or -Object form, made available under the License, as indicated by a -copyright notice that is included in or attached to the work -(an example is provided in the Appendix below). - -"Derivative Works" shall mean any work, whether in Source or Object -form, that is based on (or derived from) the Work and for which the -editorial revisions, annotations, elaborations, or other modifications -represent, as a whole, an original work of authorship. For the purposes -of this License, Derivative Works shall not include works that remain -separable from, or merely link (or bind by name) to the interfaces of, -the Work and Derivative Works thereof. - -"Contribution" shall mean any work of authorship, including -the original version of the Work and any modifications or additions -to that Work or Derivative Works thereof, that is intentionally -submitted to Licensor for inclusion in the Work by the copyright owner -or by an individual or Legal Entity authorized to submit on behalf of -the copyright owner. For the purposes of this definition, "submitted" -means any form of electronic, verbal, or written communication sent -to the Licensor or its representatives, including but not limited to -communication on electronic mailing lists, source code control systems, -and issue tracking systems that are managed by, or on behalf of, the -Licensor for the purpose of discussing and improving the Work, but -excluding communication that is conspicuously marked or otherwise -designated in writing by the copyright owner as "Not a Contribution." - -"Contributor" shall mean Licensor and any individual or Legal Entity -on behalf of whom a Contribution has been received by Licensor and -subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of -this License, each Contributor hereby grants to You a perpetual, -worldwide, non-exclusive, no-charge, royalty-free, irrevocable -copyright license to reproduce, prepare Derivative Works of, -publicly display, publicly perform, sublicense, and distribute the -Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of -this License, each Contributor hereby grants to You a perpetual, -worldwide, non-exclusive, no-charge, royalty-free, irrevocable -(except as stated in this section) patent license to make, have made, -use, offer to sell, sell, import, and otherwise transfer the Work, -where such license applies only to those patent claims licensable -by such Contributor that are necessarily infringed by their -Contribution(s) alone or by combination of their Contribution(s) -with the Work to which such Contribution(s) was submitted. If You -institute patent litigation against any entity (including a -cross-claim or counterclaim in a lawsuit) alleging that the Work -or a Contribution incorporated within the Work constitutes direct -or contributory patent infringement, then any patent licenses -granted to You under this License for that Work shall terminate -as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the -Work or Derivative Works thereof in any medium, with or without -modifications, and in Source or Object form, provided that You -meet the following conditions: - -(a) You must give any other recipients of the Work or -Derivative Works a copy of this License; and - -(b) You must cause any modified files to carry prominent notices -stating that You changed the files; and - -(c) You must retain, in the Source form of any Derivative Works -that You distribute, all copyright, patent, trademark, and -attribution notices from the Source form of the Work, -excluding those notices that do not pertain to any part of -the Derivative Works; and - -(d) If the Work includes a "NOTICE" text file as part of its -distribution, then any Derivative Works that You distribute must -include a readable copy of the attribution notices contained -within such NOTICE file, excluding those notices that do not -pertain to any part of the Derivative Works, in at least one -of the following places: within a NOTICE text file distributed -as part of the Derivative Works; within the Source form or -documentation, if provided along with the Derivative Works; or, -within a display generated by the Derivative Works, if and -wherever such third-party notices normally appear. The contents -of the NOTICE file are for informational purposes only and -do not modify the License. You may add Your own attribution -notices within Derivative Works that You distribute, alongside -or as an addendum to the NOTICE text from the Work, provided -that such additional attribution notices cannot be construed -as modifying the License. - -You may add Your own copyright statement to Your modifications and -may provide additional or different license terms and conditions -for use, reproduction, or distribution of Your modifications, or -for any such Derivative Works as a whole, provided Your use, -reproduction, and distribution of the Work otherwise complies with -the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, -any Contribution intentionally submitted for inclusion in the Work -by You to the Licensor shall be under the terms and conditions of -this License, without any additional terms or conditions. -Notwithstanding the above, nothing herein shall supersede or modify -the terms of any separate license agreement you may have executed -with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade -names, trademarks, service marks, or product names of the Licensor, -except as required for reasonable and customary use in describing the -origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or -agreed to in writing, Licensor provides the Work (and each -Contributor provides its Contributions) on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -implied, including, without limitation, any warranties or conditions -of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A -PARTICULAR PURPOSE. You are solely responsible for determining the -appropriateness of using or redistributing the Work and assume any -risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, -whether in tort (including negligence), contract, or otherwise, -unless required by applicable law (such as deliberate and grossly -negligent acts) or agreed to in writing, shall any Contributor be -liable to You for damages, including any direct, indirect, special, -incidental, or consequential damages of any character arising as a -result of this License or out of the use or inability to use the -Work (including but not limited to damages for loss of goodwill, -work stoppage, computer failure or malfunction, or any and all -other commercial damages or losses), even if such Contributor -has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing -the Work or Derivative Works thereof, You may choose to offer, -and charge a fee for, acceptance of support, warranty, indemnity, -or other liability obligations and/or rights consistent with this -License. However, in accepting such obligations, You may act only -on Your own behalf and on Your sole responsibility, not on behalf -of any other Contributor, and only if You agree to indemnify, -defend, and hold each Contributor harmless for any liability -incurred by, or claims asserted against, such Contributor by reason -of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - -To apply the Apache License to your work, attach the following -boilerplate notice, with the fields enclosed by brackets "{}" -replaced with your own identifying information. (Don't include -the brackets!) The text should be enclosed in the appropriate -comment syntax for the file format. We also recommend that a -file or class name and description of purpose be included on the -same "printed page" as the copyright notice for easier -identification within third-party archives. - -Copyright 2020 A11yance - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/node_modules/axobject-query/README.md b/node_modules/axobject-query/README.md deleted file mode 100755 index 1dbf635a..00000000 --- a/node_modules/axobject-query/README.md +++ /dev/null @@ -1,384 +0,0 @@ -[![Build Status](https://travis-ci.org/A11yance/axobject-query.svg?branch=master)](https://travis-ci.org/A11yance/axobject-query) - -**NOTICE: The API for AXObject Query is very much under development until a major version release. Please be aware that data structures might change in minor version releases before 1.0.0 is released.** - -# AXObject Query - -Approximate model of the [Chrome AXObject](https://cs.chromium.org/chromium/src/third_party/WebKit/Source/modules/accessibility/AXObject.h). - -The project attempts to map the AXObject concepts to the [WAI-ARIA 1.1 Roles Model](https://www.w3.org/TR/wai-aria-1.1/#roles) so that a complete representation of the semantic HTML layer, as it is exposed assistive technology, can be obtained. - -## Utilities - -### AXObjects - -```javascript -import { AXObjects } from 'axobject-query'; -``` - -AXObjects are mapped to their HTML and ARIA concepts in the `relatedConcepts` field. - -The `type` field is a loose association of an AXObject to the `window`, `structure` and `widget` abstract roles in ARIA. The `generic` value is given to `DivRole`; it does not exist in ARIA. Divs are special in HTML in the way that they are used as generic containers. Span might have also been associated with a generic type except that there is no `SpanRole` AXObject. - -``` -Map { - 'AbbrRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'AlertDialogRole' => { relatedConcepts: [ [Object] ], type: 'window' }, - 'AlertRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'AnnotationRole' => { relatedConcepts: [], type: 'structure' }, - 'ApplicationRole' => { relatedConcepts: [ [Object] ], type: 'window' }, - 'ArticleRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'AudioRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'BannerRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'BlockquoteRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'BusyIndicatorRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'ButtonRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'CanvasRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'CaptionRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'CellRole' => { relatedConcepts: [ [Object], [Object], [Object] ], type: 'widget' }, - 'CheckBoxRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'ColorWellRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'ColumnHeaderRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'ColumnRole' => { relatedConcepts: [], type: 'structure' }, - 'ComboBoxRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'ComplementaryRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'ContentInfoRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'DateRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'DateTimeRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'DefinitionRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'DescriptionListDetailRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'DescriptionListRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'DescriptionListTermRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'DetailsRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'DialogRole' => { relatedConcepts: [ [Object], [Object] ], type: 'window' }, - 'DirectoryRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'DisclosureTriangleRole' => { relatedConcepts: [], type: 'widget' }, - 'DivRole' => { relatedConcepts: [ [Object] ], type: 'generic' }, - 'DocumentRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'EmbeddedObjectRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'FeedRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'FigcaptionRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'FigureRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'FooterRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'FormRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'GridRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'GroupRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'HeadingRole' => { relatedConcepts: [ [Object], [Object], [Object], [Object], [Object], [Object], [Object] ], type: 'structure' }, - 'IframePresentationalRole' => { relatedConcepts: [], type: 'window' }, - 'IframeRole' => { relatedConcepts: [ [Object] ], type: 'window' }, - 'IgnoredRole' => { relatedConcepts: [], type: 'structure' }, - 'ImageMapLinkRole' => { relatedConcepts: [], type: 'widget' }, - 'ImageMapRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'ImageRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'InlineTextBoxRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'InputTimeRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'LabelRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'LegendRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'LineBreakRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'LinkRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'ListBoxOptionRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'ListBoxRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'ListItemRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'ListMarkerRole' => { relatedConcepts: [], type: 'structure' }, - 'ListRole' => { relatedConcepts: [ [Object], [Object], [Object] ], type: 'structure' }, - 'LogRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'MainRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'MarkRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'MarqueeRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'MathRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'MenuBarRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'MenuButtonRole' => { relatedConcepts: [], type: 'widget' }, - 'MenuItemRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'MenuItemCheckBoxRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'MenuItemRadioRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'MenuListOptionRole' => { relatedConcepts: [], type: 'widget' }, - 'MenuListPopupRole' => { relatedConcepts: [], type: 'widget' }, - 'MenuRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'MeterRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'NavigationRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'NoneRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'NoteRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'OutlineRole' => { relatedConcepts: [], type: 'structure' }, - 'ParagraphRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'PopUpButtonRole' => { relatedConcepts: [], type: 'widget' }, - 'PreRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'PresentationalRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'ProgressIndicatorRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'RadioButtonRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'RadioGroupRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'RegionRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'RootWebAreaRole' => { relatedConcepts: [], type: 'structure' }, - 'RowHeaderRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'RowRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'RubyRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'RulerRole' => { relatedConcepts: [], type: 'structure' }, - 'ScrollAreaRole' => { relatedConcepts: [], type: 'structure' }, - 'ScrollBarRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'SeamlessWebAreaRole' => { relatedConcepts: [], type: 'structure' }, - 'SearchRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'SearchBoxRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'SliderRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'SliderThumbRole' => { relatedConcepts: [], type: 'structure' }, - 'SpinButtonRole' => { relatedConcepts: [ [Object], [Object] ], type: 'widget' }, - 'SpinButtonPartRole' => { relatedConcepts: [], type: 'structure' }, - 'SplitterRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'StaticTextRole' => { relatedConcepts: [], type: 'structure' }, - 'StatusRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'SVGRootRole' => { relatedConcepts: [], type: 'structure' }, - 'SwitchRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'TabGroupRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'TabRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'TableHeaderContainerRole' => { relatedConcepts: [], type: 'structure' }, - 'TableRole' => { relatedConcepts: [ [Object], [Object] ], type: 'structure' }, - 'TabListRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'TabPanelRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'TermRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'TextFieldRole' => { relatedConcepts: [ [Object], [Object], [Object] ], type: 'widget' }, - 'TimeRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'TimerRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'ToggleButtonRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'ToolbarRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'TreeRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'TreeGridRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'TreeItemRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'UserInterfaceTooltipRole' => { relatedConcepts: [ [Object] ], type: 'structure' }, - 'VideoRole' => { relatedConcepts: [ [Object] ], type: 'widget' }, - 'WebAreaRole' => { relatedConcepts: [], type: 'structure' }, - 'WindowRole' => { relatedConcepts: [], type: 'window' } -} -``` - -### AXObject to Element - -```javascript -import { AXObjectElements } from 'axobject-query'; -``` - -AXObjects are mapped to their related HTML concepts, which may require attributes (in the case of inputs) to obtain the correct association. - -``` -Map { - 'AbbrRole' => Set { { name: 'abbr' } }, - 'ArticleRole' => Set { { name: 'article' } }, - 'AudioRole' => Set { { name: 'audio' } }, - 'BlockquoteRole' => Set { { name: 'blockquote' } }, - 'ButtonRole' => Set { { name: 'button' } }, - 'CanvasRole' => Set { { name: 'canvas' } }, - 'CaptionRole' => Set { { name: 'caption' } }, - 'CellRole' => Set { { name: 'td' } }, - 'CheckBoxRole' => Set { { name: 'input', attributes: [Object] } }, - 'ColorWellRole' => Set { { name: 'input', attributes: [Object] } }, - 'ColumnHeaderRole' => Set { { name: 'th' } }, - 'DateRole' => Set { { name: 'input', attributes: [Object] } }, - 'DateTimeRole' => Set { { name: 'input', attributes: [Object] } }, - 'DefinitionRole' => Set { { name: 'dfn' } }, - 'DescriptionListDetailRole' => Set { { name: 'dd' } }, - 'DescriptionListRole' => Set { { name: 'dl' } }, - 'DescriptionListTermRole' => Set { { name: 'dt' } }, - 'DetailsRole' => Set { { name: 'details' } }, - 'DialogRole' => Set { { name: 'dialog' } }, - 'DirectoryRole' => Set { { name: 'dir' } }, - 'DivRole' => Set { { name: 'div' } }, - 'EmbeddedObjectRole' => Set { { name: 'embed' } }, - 'FigcaptionRole' => Set { { name: 'figcaption' } }, - 'FigureRole' => Set { { name: 'figure' } }, - 'FooterRole' => Set { { name: 'footer' } }, - 'FormRole' => Set { { name: 'form' } }, - 'HeadingRole' => Set { { name: 'h1' }, { name: 'h2' }, { name: 'h3' }, { name: 'h4' }, { name: 'h5' }, { name: 'h6' } }, - 'IframeRole' => Set { { name: 'iframe' } }, - 'ImageMapRole' => Set { { name: 'img', attributes: [Object] } }, - 'ImageRole' => Set { { name: 'img' } }, - 'InlineTextBoxRole' => Set { { name: 'input' } }, - 'InputTimeRole' => Set { { name: 'input', attributes: [Object] } }, - 'LabelRole' => Set { { name: 'label' } }, - 'LegendRole' => Set { { name: 'legend' } }, - 'LineBreakRole' => Set { { name: 'br' } }, - 'LinkRole' => Set { { name: 'a', attributes: [Object] } }, - 'ListBoxOptionRole' => Set { { name: 'option' } }, - 'ListItemRole' => Set { { name: 'li' } }, - 'ListRole' => Set { { name: 'ul' }, { name: 'ol' } }, - 'MainRole' => Set { { name: 'main' } }, - 'MarkRole' => Set { { name: 'mark' } }, - 'MarqueeRole' => Set { { name: 'marquee' } }, - 'MenuItemRole' => Set { { name: 'menuitem' } }, - 'MenuRole' => Set { { name: 'menu' } }, - 'MeterRole' => Set { { name: 'meter' } }, - 'NavigationRole' => Set { { name: 'nav' } }, - 'ParagraphRole' => Set { { name: 'p' } }, - 'PreRole' => Set { { name: 'pre' } }, - 'ProgressIndicatorRole' => Set { { name: 'progress' } }, - 'RadioButtonRole' => Set { { name: 'input', attributes: [Object] } }, - 'RowHeaderRole' => Set { { name: 'th', attributes: [Object] } }, - 'RowRole' => Set { { name: 'tr' } }, - 'RubyRole' => Set { { name: 'ruby' } }, - 'SearchBoxRole' => Set { { name: 'input', attributes: [Object] } }, - 'SliderRole' => Set { { name: 'input', attributes: [Object] } }, - 'SpinButtonRole' => Set { { name: 'input', attributes: [Object] } }, - 'TableRole' => Set { { name: 'table' } }, - 'TextFieldRole' => Set { { name: 'input' }, { name: 'input', attributes: [Object] } }, - 'TimeRole' => Set { { name: 'time' } }, - 'VideoRole' => Set { { name: 'video' } -} -``` - -### AXObject to Role - -```javascript -import { AXObjectRoles } from 'axobject-query'; -``` - -AXObjects are mapped to their related ARIA concepts.. - -``` -Map { - 'AlertDialogRole' => Set { { name: 'alertdialog' } }, - 'AlertRole' => Set { { name: 'alert' } }, - 'ApplicationRole' => Set { { name: 'application' } }, - 'ArticleRole' => Set { { name: 'article' } }, - 'BannerRole' => Set { { name: 'banner' } }, - 'BusyIndicatorRole' => Set { { attributes: [Object] } }, - 'ButtonRole' => Set { { name: 'button' } }, - 'CellRole' => Set { { name: 'cell' }, { name: 'gridcell' } }, - 'CheckBoxRole' => Set { { name: 'checkbox' } }, - 'ColumnHeaderRole' => Set { { name: 'columnheader' } }, - 'ComboBoxRole' => Set { { name: 'combobox' } }, - 'ComplementaryRole' => Set { { name: 'complementary' } }, - 'ContentInfoRole' => Set { { name: 'structureinfo' } }, - 'DialogRole' => Set { { name: 'dialog' } }, - 'DirectoryRole' => Set { { name: 'directory' } }, - 'DocumentRole' => Set { { name: 'document' } }, - 'FeedRole' => Set { { name: 'feed' } }, - 'FigureRole' => Set { { name: 'figure' } }, - 'FormRole' => Set { { name: 'form' } }, - 'GridRole' => Set { { name: 'grid' } }, - 'GroupRole' => Set { { name: 'group' } }, - 'HeadingRole' => Set { { name: 'heading' } }, - 'ImageRole' => Set { { name: 'img' } }, - 'LinkRole' => Set { { name: 'link' } }, - 'ListBoxOptionRole' => Set { { name: 'option' } }, - 'ListBoxRole' => Set { { name: 'listbox' } }, - 'ListItemRole' => Set { { name: 'listitem' } }, - 'ListRole' => Set { { name: 'list' } }, - 'LogRole' => Set { { name: 'log' } }, - 'MainRole' => Set { { name: 'main' } }, - 'MarqueeRole' => Set { { name: 'marquee' } }, - 'MathRole' => Set { { name: 'math' } }, - 'MenuBarRole' => Set { { name: 'menubar' } }, - 'MenuItemRole' => Set { { name: 'menuitem' } }, - 'MenuItemCheckBoxRole' => Set { { name: 'menuitemcheckbox' } }, - 'MenuItemRadioRole' => Set { { name: 'menuitemradio' } }, - 'MenuRole' => Set { { name: 'menu' } }, - 'NavigationRole' => Set { { name: 'navigation' } }, - 'NoneRole' => Set { { name: 'none' } }, - 'NoteRole' => Set { { name: 'note' } }, - 'PresentationalRole' => Set { { name: 'presentation' } }, - 'ProgressIndicatorRole' => Set { { name: 'progressbar' } }, - 'RadioButtonRole' => Set { { name: 'radio' } }, - 'RadioGroupRole' => Set { { name: 'radiogroup' } }, - 'RegionRole' => Set { { name: 'region' } }, - 'RowHeaderRole' => Set { { name: 'rowheader' } }, - 'RowRole' => Set { { name: 'row' } }, - 'ScrollBarRole' => Set { { name: 'scrollbar' } }, - 'SearchRole' => Set { { name: 'search' } }, - 'SearchBoxRole' => Set { { name: 'searchbox' } }, - 'SliderRole' => Set { { name: 'slider' } }, - 'SpinButtonRole' => Set { { name: 'spinbutton' } }, - 'SplitterRole' => Set { { name: 'separator' } }, - 'StatusRole' => Set { { name: 'status' } }, - 'SwitchRole' => Set { { name: 'switch' } }, - 'TabGroupRole' => Set { { name: 'tablist' } }, - 'TabRole' => Set { { name: 'tab' } }, - 'TableRole' => Set { { name: 'table' } }, - 'TabListRole' => Set { { name: 'tablist' } }, - 'TabPanelRole' => Set { { name: 'tabpanel' } }, - 'TermRole' => Set { { name: 'term' } }, - 'TextFieldRole' => Set { { name: 'textbox' } }, - 'TimerRole' => Set { { name: 'timer' } }, - 'ToggleButtonRole' => Set { { attributes: [Object] } }, - 'ToolbarRole' => Set { { name: 'toolbar' } }, - 'TreeRole' => Set { { name: 'tree' } }, - 'TreeGridRole' => Set { { name: 'treegrid' } }, - 'TreeItemRole' => Set { { name: 'treeitem' } }, - 'UserInterfaceTooltipRole' => Set { { name: 'tooltip' } } -} -``` - -### Element to AXObject - -```javascript -import { elementAXObjects } from 'axobject-query'; -``` - -HTML elements are mapped to their related AXConcepts concepts. - -``` -Map { - { name: 'abbr' } => Set { 'AbbrRole' }, - { name: 'article' } => Set { 'ArticleRole' }, - { name: 'audio' } => Set { 'AudioRole' }, - { name: 'blockquote' } => Set { 'BlockquoteRole' }, - { name: 'button' } => Set { 'ButtonRole' }, - { name: 'canvas' } => Set { 'CanvasRole' }, - { name: 'caption' } => Set { 'CaptionRole' }, - { name: 'td' } => Set { 'CellRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'CheckBoxRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'ColorWellRole' }, - { name: 'th' } => Set { 'ColumnHeaderRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'DateRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'DateTimeRole' }, - { name: 'dfn' } => Set { 'DefinitionRole' }, - { name: 'dd' } => Set { 'DescriptionListDetailRole' }, - { name: 'dl' } => Set { 'DescriptionListRole' }, - { name: 'dt' } => Set { 'DescriptionListTermRole' }, - { name: 'details' } => Set { 'DetailsRole' }, - { name: 'dialog' } => Set { 'DialogRole' }, - { name: 'dir' } => Set { 'DirectoryRole' }, - { name: 'div' } => Set { 'DivRole' }, - { name: 'embed' } => Set { 'EmbeddedObjectRole' }, - { name: 'figcaption' } => Set { 'FigcaptionRole' }, - { name: 'figure' } => Set { 'FigureRole' }, - { name: 'footer' } => Set { 'FooterRole' }, - { name: 'form' } => Set { 'FormRole' }, - { name: 'h1' } => Set { 'HeadingRole' }, - { name: 'h2' } => Set { 'HeadingRole' }, - { name: 'h3' } => Set { 'HeadingRole' }, - { name: 'h4' } => Set { 'HeadingRole' }, - { name: 'h5' } => Set { 'HeadingRole' }, - { name: 'h6' } => Set { 'HeadingRole' }, - { name: 'iframe' } => Set { 'IframeRole' }, - { name: 'img', attributes: [ [Object] ] } => Set { 'ImageMapRole' }, - { name: 'img' } => Set { 'ImageRole' }, - { name: 'input' } => Set { 'InlineTextBoxRole', 'TextFieldRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'InputTimeRole' }, - { name: 'label' } => Set { 'LabelRole' }, - { name: 'legend' } => Set { 'LegendRole' }, - { name: 'br' } => Set { 'LineBreakRole' }, - { name: 'a', attributes: [ [Object] ] } => Set { 'LinkRole' }, - { name: 'option' } => Set { 'ListBoxOptionRole' }, - { name: 'li' } => Set { 'ListItemRole' }, - { name: 'ul' } => Set { 'ListRole' }, - { name: 'ol' } => Set { 'ListRole' }, - { name: 'main' } => Set { 'MainRole' }, - { name: 'mark' } => Set { 'MarkRole' }, - { name: 'marquee' } => Set { 'MarqueeRole' }, - { name: 'menuitem' } => Set { 'MenuItemRole' }, - { name: 'menu' } => Set { 'MenuRole' }, - { name: 'meter' } => Set { 'MeterRole' }, - { name: 'nav' } => Set { 'NavigationRole' }, - { name: 'p' } => Set { 'ParagraphRole' }, - { name: 'pre' } => Set { 'PreRole' }, - { name: 'progress' } => Set { 'ProgressIndicatorRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'RadioButtonRole' }, - { name: 'th', attributes: [ [Object] ] } => Set { 'RowHeaderRole' }, - { name: 'tr' } => Set { 'RowRole' }, - { name: 'ruby' } => Set { 'RubyRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'SearchBoxRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'SliderRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'SpinButtonRole' }, - { name: 'table' } => Set { 'TableRole' }, - { name: 'input' } => Set { 'InlineTextBoxRole', 'TextFieldRole' }, - { name: 'input', attributes: [ [Object] ] } => Set { 'TextFieldRole' }, - { name: 'time' } => Set { 'TimeRole' }, - { name: 'video' } => Set { 'VideoRole' } -} -``` diff --git a/node_modules/axobject-query/lib/AXObjectElementMap.js b/node_modules/axobject-query/lib/AXObjectElementMap.js deleted file mode 100755 index ab0703d4..00000000 --- a/node_modules/axobject-query/lib/AXObjectElementMap.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _AXObjectsMap = _interopRequireDefault(require("./AXObjectsMap")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -var AXObjectElementMap = new Map([]); -var _iteratorNormalCompletion = true; -var _didIteratorError = false; -var _iteratorError = undefined; - -try { - var _loop = function _loop() { - var _step$value = _slicedToArray(_step.value, 2), - name = _step$value[0], - def = _step$value[1]; - - var relatedConcepts = def.relatedConcepts; - - if (Array.isArray(relatedConcepts)) { - relatedConcepts.forEach(function (relation) { - if (relation.module === 'HTML') { - var concept = relation.concept; - - if (concept) { - var relationConcepts = AXObjectElementMap.get(name) || new Set([]); - relationConcepts.add(concept); - AXObjectElementMap.set(name, relationConcepts); - } - } - }); - } - }; - - for (var _iterator = _AXObjectsMap["default"][Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - _loop(); - } -} catch (err) { - _didIteratorError = true; - _iteratorError = err; -} finally { - try { - if (!_iteratorNormalCompletion && _iterator["return"] != null) { - _iterator["return"](); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } -} - -var _default = AXObjectElementMap; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/AXObjectRoleMap.js b/node_modules/axobject-query/lib/AXObjectRoleMap.js deleted file mode 100755 index 1743fd05..00000000 --- a/node_modules/axobject-query/lib/AXObjectRoleMap.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _AXObjectsMap = _interopRequireDefault(require("./AXObjectsMap")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -var AXObjectRoleMap = new Map([]); -var _iteratorNormalCompletion = true; -var _didIteratorError = false; -var _iteratorError = undefined; - -try { - var _loop = function _loop() { - var _step$value = _slicedToArray(_step.value, 2), - name = _step$value[0], - def = _step$value[1]; - - var relatedConcepts = def.relatedConcepts; - - if (Array.isArray(relatedConcepts)) { - relatedConcepts.forEach(function (relation) { - if (relation.module === 'ARIA') { - var concept = relation.concept; - - if (concept) { - var relationConcepts = AXObjectRoleMap.get(name) || new Set([]); - relationConcepts.add(concept); - AXObjectRoleMap.set(name, relationConcepts); - } - } - }); - } - }; - - for (var _iterator = _AXObjectsMap["default"][Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - _loop(); - } -} catch (err) { - _didIteratorError = true; - _iteratorError = err; -} finally { - try { - if (!_iteratorNormalCompletion && _iterator["return"] != null) { - _iterator["return"](); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } -} - -var _default = AXObjectRoleMap; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/AXObjectsMap.js b/node_modules/axobject-query/lib/AXObjectsMap.js deleted file mode 100755 index f838ec60..00000000 --- a/node_modules/axobject-query/lib/AXObjectsMap.js +++ /dev/null @@ -1,258 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _AbbrRole = _interopRequireDefault(require("./etc/objects/AbbrRole")); - -var _AlertDialogRole = _interopRequireDefault(require("./etc/objects/AlertDialogRole")); - -var _AlertRole = _interopRequireDefault(require("./etc/objects/AlertRole")); - -var _AnnotationRole = _interopRequireDefault(require("./etc/objects/AnnotationRole")); - -var _ApplicationRole = _interopRequireDefault(require("./etc/objects/ApplicationRole")); - -var _ArticleRole = _interopRequireDefault(require("./etc/objects/ArticleRole")); - -var _AudioRole = _interopRequireDefault(require("./etc/objects/AudioRole")); - -var _BannerRole = _interopRequireDefault(require("./etc/objects/BannerRole")); - -var _BlockquoteRole = _interopRequireDefault(require("./etc/objects/BlockquoteRole")); - -var _BusyIndicatorRole = _interopRequireDefault(require("./etc/objects/BusyIndicatorRole")); - -var _ButtonRole = _interopRequireDefault(require("./etc/objects/ButtonRole")); - -var _CanvasRole = _interopRequireDefault(require("./etc/objects/CanvasRole")); - -var _CaptionRole = _interopRequireDefault(require("./etc/objects/CaptionRole")); - -var _CellRole = _interopRequireDefault(require("./etc/objects/CellRole")); - -var _CheckBoxRole = _interopRequireDefault(require("./etc/objects/CheckBoxRole")); - -var _ColorWellRole = _interopRequireDefault(require("./etc/objects/ColorWellRole")); - -var _ColumnHeaderRole = _interopRequireDefault(require("./etc/objects/ColumnHeaderRole")); - -var _ColumnRole = _interopRequireDefault(require("./etc/objects/ColumnRole")); - -var _ComboBoxRole = _interopRequireDefault(require("./etc/objects/ComboBoxRole")); - -var _ComplementaryRole = _interopRequireDefault(require("./etc/objects/ComplementaryRole")); - -var _ContentInfoRole = _interopRequireDefault(require("./etc/objects/ContentInfoRole")); - -var _DateRole = _interopRequireDefault(require("./etc/objects/DateRole")); - -var _DateTimeRole = _interopRequireDefault(require("./etc/objects/DateTimeRole")); - -var _DefinitionRole = _interopRequireDefault(require("./etc/objects/DefinitionRole")); - -var _DescriptionListDetailRole = _interopRequireDefault(require("./etc/objects/DescriptionListDetailRole")); - -var _DescriptionListRole = _interopRequireDefault(require("./etc/objects/DescriptionListRole")); - -var _DescriptionListTermRole = _interopRequireDefault(require("./etc/objects/DescriptionListTermRole")); - -var _DetailsRole = _interopRequireDefault(require("./etc/objects/DetailsRole")); - -var _DialogRole = _interopRequireDefault(require("./etc/objects/DialogRole")); - -var _DirectoryRole = _interopRequireDefault(require("./etc/objects/DirectoryRole")); - -var _DisclosureTriangleRole = _interopRequireDefault(require("./etc/objects/DisclosureTriangleRole")); - -var _DivRole = _interopRequireDefault(require("./etc/objects/DivRole")); - -var _DocumentRole = _interopRequireDefault(require("./etc/objects/DocumentRole")); - -var _EmbeddedObjectRole = _interopRequireDefault(require("./etc/objects/EmbeddedObjectRole")); - -var _FeedRole = _interopRequireDefault(require("./etc/objects/FeedRole")); - -var _FigcaptionRole = _interopRequireDefault(require("./etc/objects/FigcaptionRole")); - -var _FigureRole = _interopRequireDefault(require("./etc/objects/FigureRole")); - -var _FooterRole = _interopRequireDefault(require("./etc/objects/FooterRole")); - -var _FormRole = _interopRequireDefault(require("./etc/objects/FormRole")); - -var _GridRole = _interopRequireDefault(require("./etc/objects/GridRole")); - -var _GroupRole = _interopRequireDefault(require("./etc/objects/GroupRole")); - -var _HeadingRole = _interopRequireDefault(require("./etc/objects/HeadingRole")); - -var _IframePresentationalRole = _interopRequireDefault(require("./etc/objects/IframePresentationalRole")); - -var _IframeRole = _interopRequireDefault(require("./etc/objects/IframeRole")); - -var _IgnoredRole = _interopRequireDefault(require("./etc/objects/IgnoredRole")); - -var _ImageMapLinkRole = _interopRequireDefault(require("./etc/objects/ImageMapLinkRole")); - -var _ImageMapRole = _interopRequireDefault(require("./etc/objects/ImageMapRole")); - -var _ImageRole = _interopRequireDefault(require("./etc/objects/ImageRole")); - -var _InlineTextBoxRole = _interopRequireDefault(require("./etc/objects/InlineTextBoxRole")); - -var _InputTimeRole = _interopRequireDefault(require("./etc/objects/InputTimeRole")); - -var _LabelRole = _interopRequireDefault(require("./etc/objects/LabelRole")); - -var _LegendRole = _interopRequireDefault(require("./etc/objects/LegendRole")); - -var _LineBreakRole = _interopRequireDefault(require("./etc/objects/LineBreakRole")); - -var _LinkRole = _interopRequireDefault(require("./etc/objects/LinkRole")); - -var _ListBoxOptionRole = _interopRequireDefault(require("./etc/objects/ListBoxOptionRole")); - -var _ListBoxRole = _interopRequireDefault(require("./etc/objects/ListBoxRole")); - -var _ListItemRole = _interopRequireDefault(require("./etc/objects/ListItemRole")); - -var _ListMarkerRole = _interopRequireDefault(require("./etc/objects/ListMarkerRole")); - -var _ListRole = _interopRequireDefault(require("./etc/objects/ListRole")); - -var _LogRole = _interopRequireDefault(require("./etc/objects/LogRole")); - -var _MainRole = _interopRequireDefault(require("./etc/objects/MainRole")); - -var _MarkRole = _interopRequireDefault(require("./etc/objects/MarkRole")); - -var _MarqueeRole = _interopRequireDefault(require("./etc/objects/MarqueeRole")); - -var _MathRole = _interopRequireDefault(require("./etc/objects/MathRole")); - -var _MenuBarRole = _interopRequireDefault(require("./etc/objects/MenuBarRole")); - -var _MenuButtonRole = _interopRequireDefault(require("./etc/objects/MenuButtonRole")); - -var _MenuItemRole = _interopRequireDefault(require("./etc/objects/MenuItemRole")); - -var _MenuItemCheckBoxRole = _interopRequireDefault(require("./etc/objects/MenuItemCheckBoxRole")); - -var _MenuItemRadioRole = _interopRequireDefault(require("./etc/objects/MenuItemRadioRole")); - -var _MenuListOptionRole = _interopRequireDefault(require("./etc/objects/MenuListOptionRole")); - -var _MenuListPopupRole = _interopRequireDefault(require("./etc/objects/MenuListPopupRole")); - -var _MenuRole = _interopRequireDefault(require("./etc/objects/MenuRole")); - -var _MeterRole = _interopRequireDefault(require("./etc/objects/MeterRole")); - -var _NavigationRole = _interopRequireDefault(require("./etc/objects/NavigationRole")); - -var _NoneRole = _interopRequireDefault(require("./etc/objects/NoneRole")); - -var _NoteRole = _interopRequireDefault(require("./etc/objects/NoteRole")); - -var _OutlineRole = _interopRequireDefault(require("./etc/objects/OutlineRole")); - -var _ParagraphRole = _interopRequireDefault(require("./etc/objects/ParagraphRole")); - -var _PopUpButtonRole = _interopRequireDefault(require("./etc/objects/PopUpButtonRole")); - -var _PreRole = _interopRequireDefault(require("./etc/objects/PreRole")); - -var _PresentationalRole = _interopRequireDefault(require("./etc/objects/PresentationalRole")); - -var _ProgressIndicatorRole = _interopRequireDefault(require("./etc/objects/ProgressIndicatorRole")); - -var _RadioButtonRole = _interopRequireDefault(require("./etc/objects/RadioButtonRole")); - -var _RadioGroupRole = _interopRequireDefault(require("./etc/objects/RadioGroupRole")); - -var _RegionRole = _interopRequireDefault(require("./etc/objects/RegionRole")); - -var _RootWebAreaRole = _interopRequireDefault(require("./etc/objects/RootWebAreaRole")); - -var _RowHeaderRole = _interopRequireDefault(require("./etc/objects/RowHeaderRole")); - -var _RowRole = _interopRequireDefault(require("./etc/objects/RowRole")); - -var _RubyRole = _interopRequireDefault(require("./etc/objects/RubyRole")); - -var _RulerRole = _interopRequireDefault(require("./etc/objects/RulerRole")); - -var _ScrollAreaRole = _interopRequireDefault(require("./etc/objects/ScrollAreaRole")); - -var _ScrollBarRole = _interopRequireDefault(require("./etc/objects/ScrollBarRole")); - -var _SeamlessWebAreaRole = _interopRequireDefault(require("./etc/objects/SeamlessWebAreaRole")); - -var _SearchRole = _interopRequireDefault(require("./etc/objects/SearchRole")); - -var _SearchBoxRole = _interopRequireDefault(require("./etc/objects/SearchBoxRole")); - -var _SliderRole = _interopRequireDefault(require("./etc/objects/SliderRole")); - -var _SliderThumbRole = _interopRequireDefault(require("./etc/objects/SliderThumbRole")); - -var _SpinButtonRole = _interopRequireDefault(require("./etc/objects/SpinButtonRole")); - -var _SpinButtonPartRole = _interopRequireDefault(require("./etc/objects/SpinButtonPartRole")); - -var _SplitterRole = _interopRequireDefault(require("./etc/objects/SplitterRole")); - -var _StaticTextRole = _interopRequireDefault(require("./etc/objects/StaticTextRole")); - -var _StatusRole = _interopRequireDefault(require("./etc/objects/StatusRole")); - -var _SVGRootRole = _interopRequireDefault(require("./etc/objects/SVGRootRole")); - -var _SwitchRole = _interopRequireDefault(require("./etc/objects/SwitchRole")); - -var _TabGroupRole = _interopRequireDefault(require("./etc/objects/TabGroupRole")); - -var _TabRole = _interopRequireDefault(require("./etc/objects/TabRole")); - -var _TableHeaderContainerRole = _interopRequireDefault(require("./etc/objects/TableHeaderContainerRole")); - -var _TableRole = _interopRequireDefault(require("./etc/objects/TableRole")); - -var _TabListRole = _interopRequireDefault(require("./etc/objects/TabListRole")); - -var _TabPanelRole = _interopRequireDefault(require("./etc/objects/TabPanelRole")); - -var _TermRole = _interopRequireDefault(require("./etc/objects/TermRole")); - -var _TextFieldRole = _interopRequireDefault(require("./etc/objects/TextFieldRole")); - -var _TimeRole = _interopRequireDefault(require("./etc/objects/TimeRole")); - -var _TimerRole = _interopRequireDefault(require("./etc/objects/TimerRole")); - -var _ToggleButtonRole = _interopRequireDefault(require("./etc/objects/ToggleButtonRole")); - -var _ToolbarRole = _interopRequireDefault(require("./etc/objects/ToolbarRole")); - -var _TreeRole = _interopRequireDefault(require("./etc/objects/TreeRole")); - -var _TreeGridRole = _interopRequireDefault(require("./etc/objects/TreeGridRole")); - -var _TreeItemRole = _interopRequireDefault(require("./etc/objects/TreeItemRole")); - -var _UserInterfaceTooltipRole = _interopRequireDefault(require("./etc/objects/UserInterfaceTooltipRole")); - -var _VideoRole = _interopRequireDefault(require("./etc/objects/VideoRole")); - -var _WebAreaRole = _interopRequireDefault(require("./etc/objects/WebAreaRole")); - -var _WindowRole = _interopRequireDefault(require("./etc/objects/WindowRole")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var AXObjectsMap = new Map([['AbbrRole', _AbbrRole["default"]], ['AlertDialogRole', _AlertDialogRole["default"]], ['AlertRole', _AlertRole["default"]], ['AnnotationRole', _AnnotationRole["default"]], ['ApplicationRole', _ApplicationRole["default"]], ['ArticleRole', _ArticleRole["default"]], ['AudioRole', _AudioRole["default"]], ['BannerRole', _BannerRole["default"]], ['BlockquoteRole', _BlockquoteRole["default"]], ['BusyIndicatorRole', _BusyIndicatorRole["default"]], ['ButtonRole', _ButtonRole["default"]], ['CanvasRole', _CanvasRole["default"]], ['CaptionRole', _CaptionRole["default"]], ['CellRole', _CellRole["default"]], ['CheckBoxRole', _CheckBoxRole["default"]], ['ColorWellRole', _ColorWellRole["default"]], ['ColumnHeaderRole', _ColumnHeaderRole["default"]], ['ColumnRole', _ColumnRole["default"]], ['ComboBoxRole', _ComboBoxRole["default"]], ['ComplementaryRole', _ComplementaryRole["default"]], ['ContentInfoRole', _ContentInfoRole["default"]], ['DateRole', _DateRole["default"]], ['DateTimeRole', _DateTimeRole["default"]], ['DefinitionRole', _DefinitionRole["default"]], ['DescriptionListDetailRole', _DescriptionListDetailRole["default"]], ['DescriptionListRole', _DescriptionListRole["default"]], ['DescriptionListTermRole', _DescriptionListTermRole["default"]], ['DetailsRole', _DetailsRole["default"]], ['DialogRole', _DialogRole["default"]], ['DirectoryRole', _DirectoryRole["default"]], ['DisclosureTriangleRole', _DisclosureTriangleRole["default"]], ['DivRole', _DivRole["default"]], ['DocumentRole', _DocumentRole["default"]], ['EmbeddedObjectRole', _EmbeddedObjectRole["default"]], ['FeedRole', _FeedRole["default"]], ['FigcaptionRole', _FigcaptionRole["default"]], ['FigureRole', _FigureRole["default"]], ['FooterRole', _FooterRole["default"]], ['FormRole', _FormRole["default"]], ['GridRole', _GridRole["default"]], ['GroupRole', _GroupRole["default"]], ['HeadingRole', _HeadingRole["default"]], ['IframePresentationalRole', _IframePresentationalRole["default"]], ['IframeRole', _IframeRole["default"]], ['IgnoredRole', _IgnoredRole["default"]], ['ImageMapLinkRole', _ImageMapLinkRole["default"]], ['ImageMapRole', _ImageMapRole["default"]], ['ImageRole', _ImageRole["default"]], ['InlineTextBoxRole', _InlineTextBoxRole["default"]], ['InputTimeRole', _InputTimeRole["default"]], ['LabelRole', _LabelRole["default"]], ['LegendRole', _LegendRole["default"]], ['LineBreakRole', _LineBreakRole["default"]], ['LinkRole', _LinkRole["default"]], ['ListBoxOptionRole', _ListBoxOptionRole["default"]], ['ListBoxRole', _ListBoxRole["default"]], ['ListItemRole', _ListItemRole["default"]], ['ListMarkerRole', _ListMarkerRole["default"]], ['ListRole', _ListRole["default"]], ['LogRole', _LogRole["default"]], ['MainRole', _MainRole["default"]], ['MarkRole', _MarkRole["default"]], ['MarqueeRole', _MarqueeRole["default"]], ['MathRole', _MathRole["default"]], ['MenuBarRole', _MenuBarRole["default"]], ['MenuButtonRole', _MenuButtonRole["default"]], ['MenuItemRole', _MenuItemRole["default"]], ['MenuItemCheckBoxRole', _MenuItemCheckBoxRole["default"]], ['MenuItemRadioRole', _MenuItemRadioRole["default"]], ['MenuListOptionRole', _MenuListOptionRole["default"]], ['MenuListPopupRole', _MenuListPopupRole["default"]], ['MenuRole', _MenuRole["default"]], ['MeterRole', _MeterRole["default"]], ['NavigationRole', _NavigationRole["default"]], ['NoneRole', _NoneRole["default"]], ['NoteRole', _NoteRole["default"]], ['OutlineRole', _OutlineRole["default"]], ['ParagraphRole', _ParagraphRole["default"]], ['PopUpButtonRole', _PopUpButtonRole["default"]], ['PreRole', _PreRole["default"]], ['PresentationalRole', _PresentationalRole["default"]], ['ProgressIndicatorRole', _ProgressIndicatorRole["default"]], ['RadioButtonRole', _RadioButtonRole["default"]], ['RadioGroupRole', _RadioGroupRole["default"]], ['RegionRole', _RegionRole["default"]], ['RootWebAreaRole', _RootWebAreaRole["default"]], ['RowHeaderRole', _RowHeaderRole["default"]], ['RowRole', _RowRole["default"]], ['RubyRole', _RubyRole["default"]], ['RulerRole', _RulerRole["default"]], ['ScrollAreaRole', _ScrollAreaRole["default"]], ['ScrollBarRole', _ScrollBarRole["default"]], ['SeamlessWebAreaRole', _SeamlessWebAreaRole["default"]], ['SearchRole', _SearchRole["default"]], ['SearchBoxRole', _SearchBoxRole["default"]], ['SliderRole', _SliderRole["default"]], ['SliderThumbRole', _SliderThumbRole["default"]], ['SpinButtonRole', _SpinButtonRole["default"]], ['SpinButtonPartRole', _SpinButtonPartRole["default"]], ['SplitterRole', _SplitterRole["default"]], ['StaticTextRole', _StaticTextRole["default"]], ['StatusRole', _StatusRole["default"]], ['SVGRootRole', _SVGRootRole["default"]], ['SwitchRole', _SwitchRole["default"]], ['TabGroupRole', _TabGroupRole["default"]], ['TabRole', _TabRole["default"]], ['TableHeaderContainerRole', _TableHeaderContainerRole["default"]], ['TableRole', _TableRole["default"]], ['TabListRole', _TabListRole["default"]], ['TabPanelRole', _TabPanelRole["default"]], ['TermRole', _TermRole["default"]], ['TextFieldRole', _TextFieldRole["default"]], ['TimeRole', _TimeRole["default"]], ['TimerRole', _TimerRole["default"]], ['ToggleButtonRole', _ToggleButtonRole["default"]], ['ToolbarRole', _ToolbarRole["default"]], ['TreeRole', _TreeRole["default"]], ['TreeGridRole', _TreeGridRole["default"]], ['TreeItemRole', _TreeItemRole["default"]], ['UserInterfaceTooltipRole', _UserInterfaceTooltipRole["default"]], ['VideoRole', _VideoRole["default"]], ['WebAreaRole', _WebAreaRole["default"]], ['WindowRole', _WindowRole["default"]]]); -var _default = AXObjectsMap; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/elementAXObjectMap.js b/node_modules/axobject-query/lib/elementAXObjectMap.js deleted file mode 100755 index de59262a..00000000 --- a/node_modules/axobject-query/lib/elementAXObjectMap.js +++ /dev/null @@ -1,89 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _AXObjectsMap = _interopRequireDefault(require("./AXObjectsMap")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } - -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } - -function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } - -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } - -var axObjectNames = _toConsumableArray(_AXObjectsMap["default"].keys()); - -var elementAXObjectMap = new Map([]); -var _iteratorNormalCompletion = true; -var _didIteratorError = false; -var _iteratorError = undefined; - -try { - var _loop = function _loop() { - var _step$value = _slicedToArray(_step.value, 2), - name = _step$value[0], - def = _step$value[1]; - - var relatedConcepts = def.relatedConcepts; - - if (Array.isArray(relatedConcepts)) { - relatedConcepts.forEach(function (relation) { - if (relation.module === 'HTML') { - var concept = relation.concept; - - if (concept) { - var conceptStr = JSON.stringify(concept); - var axObjects = (_toConsumableArray(elementAXObjectMap.entries()).find(function (_ref) { - var _ref2 = _slicedToArray(_ref, 2), - key = _ref2[0], - value = _ref2[1]; - - return JSON.stringify(key) === conceptStr; - }) || [])[1]; - - if (!axObjects) { - axObjects = new Set([]); - } - - axObjects.add(name); - elementAXObjectMap.set(concept, axObjects); - } - } - }); - } - }; - - for (var _iterator = _AXObjectsMap["default"][Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - _loop(); - } -} catch (err) { - _didIteratorError = true; - _iteratorError = err; -} finally { - try { - if (!_iteratorNormalCompletion && _iterator["return"] != null) { - _iterator["return"](); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } -} - -var _default = elementAXObjectMap; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/AbbrRole.js b/node_modules/axobject-query/lib/etc/objects/AbbrRole.js deleted file mode 100755 index bf0b95c0..00000000 --- a/node_modules/axobject-query/lib/etc/objects/AbbrRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var AbbrRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'abbr' - } - }], - type: 'structure' -}; -var _default = AbbrRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/AlertDialogRole.js b/node_modules/axobject-query/lib/etc/objects/AlertDialogRole.js deleted file mode 100755 index 18bfa434..00000000 --- a/node_modules/axobject-query/lib/etc/objects/AlertDialogRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var AlertDialogRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'alertdialog' - } - }], - type: 'window' -}; -var _default = AlertDialogRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/AlertRole.js b/node_modules/axobject-query/lib/etc/objects/AlertRole.js deleted file mode 100755 index 81f17b73..00000000 --- a/node_modules/axobject-query/lib/etc/objects/AlertRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var AlertRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'alert' - } - }], - type: 'structure' -}; -var _default = AlertRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/AnnotationRole.js b/node_modules/axobject-query/lib/etc/objects/AnnotationRole.js deleted file mode 100755 index 70c6e57c..00000000 --- a/node_modules/axobject-query/lib/etc/objects/AnnotationRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var AnnotationRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = AnnotationRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ApplicationRole.js b/node_modules/axobject-query/lib/etc/objects/ApplicationRole.js deleted file mode 100755 index 65bee64b..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ApplicationRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ApplicationRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'application' - } - }], - type: 'window' -}; -var _default = ApplicationRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ArticleRole.js b/node_modules/axobject-query/lib/etc/objects/ArticleRole.js deleted file mode 100755 index 853648d9..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ArticleRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ArticleRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'article' - } - }, { - module: 'HTML', - concept: { - name: 'article' - } - }], - type: 'structure' -}; -var _default = ArticleRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/AudioRole.js b/node_modules/axobject-query/lib/etc/objects/AudioRole.js deleted file mode 100755 index ea1053c0..00000000 --- a/node_modules/axobject-query/lib/etc/objects/AudioRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var AudioRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'audio' - } - }], - type: 'widget' -}; -var _default = AudioRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/BannerRole.js b/node_modules/axobject-query/lib/etc/objects/BannerRole.js deleted file mode 100755 index bcd2d746..00000000 --- a/node_modules/axobject-query/lib/etc/objects/BannerRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var BannerRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'banner' - } - }], - type: 'structure' -}; -var _default = BannerRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/BlockquoteRole.js b/node_modules/axobject-query/lib/etc/objects/BlockquoteRole.js deleted file mode 100755 index 33278538..00000000 --- a/node_modules/axobject-query/lib/etc/objects/BlockquoteRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var BlockquoteRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'blockquote' - } - }], - type: 'structure' -}; -var _default = BlockquoteRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/BusyIndicatorRole.js b/node_modules/axobject-query/lib/etc/objects/BusyIndicatorRole.js deleted file mode 100755 index 46c5e81d..00000000 --- a/node_modules/axobject-query/lib/etc/objects/BusyIndicatorRole.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var BusyIndicatorRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - attributes: [{ - name: 'aria-busy', - value: 'true' - }] - } - }], - type: 'widget' -}; -var _default = BusyIndicatorRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ButtonRole.js b/node_modules/axobject-query/lib/etc/objects/ButtonRole.js deleted file mode 100755 index 3e9b7fdd..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ButtonRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ButtonRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'button' - } - }, { - module: 'HTML', - concept: { - name: 'button' - } - }], - type: 'widget' -}; -var _default = ButtonRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/CanvasRole.js b/node_modules/axobject-query/lib/etc/objects/CanvasRole.js deleted file mode 100755 index 9a77c15a..00000000 --- a/node_modules/axobject-query/lib/etc/objects/CanvasRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var CanvasRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'canvas' - } - }], - type: 'widget' -}; -var _default = CanvasRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/CaptionRole.js b/node_modules/axobject-query/lib/etc/objects/CaptionRole.js deleted file mode 100755 index d48a00cd..00000000 --- a/node_modules/axobject-query/lib/etc/objects/CaptionRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var CaptionRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'caption' - } - }], - type: 'structure' -}; -var _default = CaptionRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/CellRole.js b/node_modules/axobject-query/lib/etc/objects/CellRole.js deleted file mode 100755 index cae480a8..00000000 --- a/node_modules/axobject-query/lib/etc/objects/CellRole.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var CellRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'cell' - } - }, { - module: 'ARIA', - concept: { - name: 'gridcell' - } - }, { - module: 'HTML', - concept: { - name: 'td' - } - }], - type: 'widget' -}; -var _default = CellRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/CheckBoxRole.js b/node_modules/axobject-query/lib/etc/objects/CheckBoxRole.js deleted file mode 100755 index b2da29db..00000000 --- a/node_modules/axobject-query/lib/etc/objects/CheckBoxRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var CheckBoxRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'checkbox' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'checkbox' - }] - } - }], - type: 'widget' -}; -var _default = CheckBoxRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ColorWellRole.js b/node_modules/axobject-query/lib/etc/objects/ColorWellRole.js deleted file mode 100755 index 9a4d1e20..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ColorWellRole.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ColorWellRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'color' - }] - } - }], - type: 'widget' -}; -var _default = ColorWellRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ColumnHeaderRole.js b/node_modules/axobject-query/lib/etc/objects/ColumnHeaderRole.js deleted file mode 100755 index 16e4a5b7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ColumnHeaderRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ColumnHeaderRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'columnheader' - } - }, { - module: 'HTML', - concept: { - name: 'th' - } - }], - type: 'widget' -}; -var _default = ColumnHeaderRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ColumnRole.js b/node_modules/axobject-query/lib/etc/objects/ColumnRole.js deleted file mode 100755 index 8aecdfc1..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ColumnRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ColumnRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = ColumnRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ComboBoxRole.js b/node_modules/axobject-query/lib/etc/objects/ComboBoxRole.js deleted file mode 100755 index 10b2683f..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ComboBoxRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ComboBoxRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'combobox' - } - }, { - module: 'HTML', - concept: { - name: 'select' - } - }], - type: 'widget' -}; -var _default = ComboBoxRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ComplementaryRole.js b/node_modules/axobject-query/lib/etc/objects/ComplementaryRole.js deleted file mode 100755 index d76c3a5c..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ComplementaryRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ComplementaryRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'complementary' - } - }], - type: 'structure' -}; -var _default = ComplementaryRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ContentInfoRole.js b/node_modules/axobject-query/lib/etc/objects/ContentInfoRole.js deleted file mode 100755 index 5f75d63c..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ContentInfoRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ContentInfoRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'structureinfo' - } - }], - type: 'structure' -}; -var _default = ContentInfoRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DateRole.js b/node_modules/axobject-query/lib/etc/objects/DateRole.js deleted file mode 100755 index 14198404..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DateRole.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DateRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'date' - }] - } - }], - type: 'widget' -}; -var _default = DateRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DateTimeRole.js b/node_modules/axobject-query/lib/etc/objects/DateTimeRole.js deleted file mode 100755 index f186d128..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DateTimeRole.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DateTimeRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'datetime' - }] - } - }], - type: 'widget' -}; -var _default = DateTimeRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DefinitionRole.js b/node_modules/axobject-query/lib/etc/objects/DefinitionRole.js deleted file mode 100755 index 8ea20cca..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DefinitionRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DefinitionRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'dfn' - } - }], - type: 'structure' -}; -var _default = DefinitionRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DescriptionListDetailRole.js b/node_modules/axobject-query/lib/etc/objects/DescriptionListDetailRole.js deleted file mode 100755 index df9b3c68..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DescriptionListDetailRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DescriptionListDetailRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'dd' - } - }], - type: 'structure' -}; -var _default = DescriptionListDetailRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DescriptionListRole.js b/node_modules/axobject-query/lib/etc/objects/DescriptionListRole.js deleted file mode 100755 index 1acef363..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DescriptionListRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DescriptionListRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'dl' - } - }], - type: 'structure' -}; -var _default = DescriptionListRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DescriptionListTermRole.js b/node_modules/axobject-query/lib/etc/objects/DescriptionListTermRole.js deleted file mode 100755 index 9a4662c0..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DescriptionListTermRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DescriptionListTermRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'dt' - } - }], - type: 'structure' -}; -var _default = DescriptionListTermRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DetailsRole.js b/node_modules/axobject-query/lib/etc/objects/DetailsRole.js deleted file mode 100755 index 4fce94a7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DetailsRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DetailsRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'details' - } - }], - type: 'structure' -}; -var _default = DetailsRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DialogRole.js b/node_modules/axobject-query/lib/etc/objects/DialogRole.js deleted file mode 100755 index c4cb6b5b..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DialogRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DialogRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'dialog' - } - }, { - module: 'HTML', - concept: { - name: 'dialog' - } - }], - type: 'window' -}; -var _default = DialogRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DirectoryRole.js b/node_modules/axobject-query/lib/etc/objects/DirectoryRole.js deleted file mode 100755 index d4fa15c9..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DirectoryRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DirectoryRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'directory' - } - }, { - module: 'HTML', - concept: { - name: 'dir' - } - }], - type: 'structure' -}; -var _default = DirectoryRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DisclosureTriangleRole.js b/node_modules/axobject-query/lib/etc/objects/DisclosureTriangleRole.js deleted file mode 100755 index 9330a649..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DisclosureTriangleRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DisclosureTriangleRole = { - relatedConcepts: [], - type: 'widget' -}; -var _default = DisclosureTriangleRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DivRole.js b/node_modules/axobject-query/lib/etc/objects/DivRole.js deleted file mode 100755 index e28f056d..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DivRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DivRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'div' - } - }], - type: 'generic' -}; -var _default = DivRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/DocumentRole.js b/node_modules/axobject-query/lib/etc/objects/DocumentRole.js deleted file mode 100755 index 0582dd70..00000000 --- a/node_modules/axobject-query/lib/etc/objects/DocumentRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var DocumentRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'document' - } - }], - type: 'structure' -}; -var _default = DocumentRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/EmbeddedObjectRole.js b/node_modules/axobject-query/lib/etc/objects/EmbeddedObjectRole.js deleted file mode 100755 index 80307dcd..00000000 --- a/node_modules/axobject-query/lib/etc/objects/EmbeddedObjectRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var EmbeddedObjectRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'embed' - } - }], - type: 'widget' -}; -var _default = EmbeddedObjectRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/FeedRole.js b/node_modules/axobject-query/lib/etc/objects/FeedRole.js deleted file mode 100755 index 4a5bafcc..00000000 --- a/node_modules/axobject-query/lib/etc/objects/FeedRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var FeedRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'feed' - } - }], - type: 'structure' -}; -var _default = FeedRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/FigcaptionRole.js b/node_modules/axobject-query/lib/etc/objects/FigcaptionRole.js deleted file mode 100755 index 6b31f2de..00000000 --- a/node_modules/axobject-query/lib/etc/objects/FigcaptionRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var FigcaptionRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'figcaption' - } - }], - type: 'structure' -}; -var _default = FigcaptionRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/FigureRole.js b/node_modules/axobject-query/lib/etc/objects/FigureRole.js deleted file mode 100755 index 9547b791..00000000 --- a/node_modules/axobject-query/lib/etc/objects/FigureRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var FigureRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'figure' - } - }, { - module: 'HTML', - concept: { - name: 'figure' - } - }], - type: 'structure' -}; -var _default = FigureRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/FooterRole.js b/node_modules/axobject-query/lib/etc/objects/FooterRole.js deleted file mode 100755 index 346302ea..00000000 --- a/node_modules/axobject-query/lib/etc/objects/FooterRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var FooterRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'footer' - } - }], - type: 'structure' -}; -var _default = FooterRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/FormRole.js b/node_modules/axobject-query/lib/etc/objects/FormRole.js deleted file mode 100755 index 882e46fb..00000000 --- a/node_modules/axobject-query/lib/etc/objects/FormRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var FormRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'form' - } - }, { - module: 'HTML', - concept: { - name: 'form' - } - }], - type: 'structure' -}; -var _default = FormRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/GridRole.js b/node_modules/axobject-query/lib/etc/objects/GridRole.js deleted file mode 100755 index e6d22902..00000000 --- a/node_modules/axobject-query/lib/etc/objects/GridRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var GridRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'grid' - } - }], - type: 'widget' -}; -var _default = GridRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/GroupRole.js b/node_modules/axobject-query/lib/etc/objects/GroupRole.js deleted file mode 100755 index 835da2da..00000000 --- a/node_modules/axobject-query/lib/etc/objects/GroupRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var GroupRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'group' - } - }], - type: 'structure' -}; -var _default = GroupRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/HeadingRole.js b/node_modules/axobject-query/lib/etc/objects/HeadingRole.js deleted file mode 100755 index ea304b8e..00000000 --- a/node_modules/axobject-query/lib/etc/objects/HeadingRole.js +++ /dev/null @@ -1,47 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var HeadingRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'heading' - } - }, { - module: 'HTML', - concept: { - name: 'h1' - } - }, { - module: 'HTML', - concept: { - name: 'h2' - } - }, { - module: 'HTML', - concept: { - name: 'h3' - } - }, { - module: 'HTML', - concept: { - name: 'h4' - } - }, { - module: 'HTML', - concept: { - name: 'h5' - } - }, { - module: 'HTML', - concept: { - name: 'h6' - } - }], - type: 'structure' -}; -var _default = HeadingRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/IframePresentationalRole.js b/node_modules/axobject-query/lib/etc/objects/IframePresentationalRole.js deleted file mode 100755 index d1fcda16..00000000 --- a/node_modules/axobject-query/lib/etc/objects/IframePresentationalRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var IframePresentationalRole = { - relatedConcepts: [], - type: 'window' -}; -var _default = IframePresentationalRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/IframeRole.js b/node_modules/axobject-query/lib/etc/objects/IframeRole.js deleted file mode 100755 index ff123b04..00000000 --- a/node_modules/axobject-query/lib/etc/objects/IframeRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var IframeRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'iframe' - } - }], - type: 'window' -}; -var _default = IframeRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/IgnoredRole.js b/node_modules/axobject-query/lib/etc/objects/IgnoredRole.js deleted file mode 100755 index d708b052..00000000 --- a/node_modules/axobject-query/lib/etc/objects/IgnoredRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var IgnoredRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = IgnoredRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ImageMapLinkRole.js b/node_modules/axobject-query/lib/etc/objects/ImageMapLinkRole.js deleted file mode 100755 index 8fcdf3bc..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ImageMapLinkRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ImageMapLinkRole = { - relatedConcepts: [], - type: 'widget' -}; -var _default = ImageMapLinkRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ImageMapRole.js b/node_modules/axobject-query/lib/etc/objects/ImageMapRole.js deleted file mode 100755 index 1931c263..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ImageMapRole.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ImageMapRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'img', - attributes: [{ - name: 'usemap' - }] - } - }], - type: 'structure' -}; -var _default = ImageMapRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ImageRole.js b/node_modules/axobject-query/lib/etc/objects/ImageRole.js deleted file mode 100755 index 9c65f033..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ImageRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ImageRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'img' - } - }, { - module: 'HTML', - concept: { - name: 'img' - } - }], - type: 'structure' -}; -var _default = ImageRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/InlineTextBoxRole.js b/node_modules/axobject-query/lib/etc/objects/InlineTextBoxRole.js deleted file mode 100755 index 2e1e1c28..00000000 --- a/node_modules/axobject-query/lib/etc/objects/InlineTextBoxRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var InlineTextBoxRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'input' - } - }], - type: 'widget' -}; -var _default = InlineTextBoxRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/InputTimeRole.js b/node_modules/axobject-query/lib/etc/objects/InputTimeRole.js deleted file mode 100755 index c37a8cd7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/InputTimeRole.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var InputTimeRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'time' - }] - } - }], - type: 'widget' -}; -var _default = InputTimeRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/LabelRole.js b/node_modules/axobject-query/lib/etc/objects/LabelRole.js deleted file mode 100755 index 606222ac..00000000 --- a/node_modules/axobject-query/lib/etc/objects/LabelRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var LabelRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'label' - } - }], - type: 'structure' -}; -var _default = LabelRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/LegendRole.js b/node_modules/axobject-query/lib/etc/objects/LegendRole.js deleted file mode 100755 index 0418d5a4..00000000 --- a/node_modules/axobject-query/lib/etc/objects/LegendRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var LegendRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'legend' - } - }], - type: 'structure' -}; -var _default = LegendRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/LineBreakRole.js b/node_modules/axobject-query/lib/etc/objects/LineBreakRole.js deleted file mode 100755 index c3e1e90b..00000000 --- a/node_modules/axobject-query/lib/etc/objects/LineBreakRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var LineBreakRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'br' - } - }], - type: 'structure' -}; -var _default = LineBreakRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/LinkRole.js b/node_modules/axobject-query/lib/etc/objects/LinkRole.js deleted file mode 100755 index d6d0854f..00000000 --- a/node_modules/axobject-query/lib/etc/objects/LinkRole.js +++ /dev/null @@ -1,25 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var LinkRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'link' - } - }, { - module: 'HTML', - concept: { - name: 'a', - attributes: [{ - name: 'href' - }] - } - }], - type: 'widget' -}; -var _default = LinkRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ListBoxOptionRole.js b/node_modules/axobject-query/lib/etc/objects/ListBoxOptionRole.js deleted file mode 100755 index 6ae363fc..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ListBoxOptionRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ListBoxOptionRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'option' - } - }, { - module: 'HTML', - concept: { - name: 'option' - } - }], - type: 'widget' -}; -var _default = ListBoxOptionRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ListBoxRole.js b/node_modules/axobject-query/lib/etc/objects/ListBoxRole.js deleted file mode 100755 index eb20039f..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ListBoxRole.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ListBoxRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'listbox' - } - }, { - module: 'HTML', - concept: { - name: 'datalist' - } - }, { - module: 'HTML', - concept: { - name: 'select' - } - }], - type: 'widget' -}; -var _default = ListBoxRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ListItemRole.js b/node_modules/axobject-query/lib/etc/objects/ListItemRole.js deleted file mode 100755 index 099092a8..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ListItemRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ListItemRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'listitem' - } - }, { - module: 'HTML', - concept: { - name: 'li' - } - }], - type: 'structure' -}; -var _default = ListItemRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ListMarkerRole.js b/node_modules/axobject-query/lib/etc/objects/ListMarkerRole.js deleted file mode 100755 index 28c9e435..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ListMarkerRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ListMarkerRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = ListMarkerRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ListRole.js b/node_modules/axobject-query/lib/etc/objects/ListRole.js deleted file mode 100755 index 9eea3006..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ListRole.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ListRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'list' - } - }, { - module: 'HTML', - concept: { - name: 'ul' - } - }, { - module: 'HTML', - concept: { - name: 'ol' - } - }], - type: 'structure' -}; -var _default = ListRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/LogRole.js b/node_modules/axobject-query/lib/etc/objects/LogRole.js deleted file mode 100755 index e193e4f0..00000000 --- a/node_modules/axobject-query/lib/etc/objects/LogRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var LogRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'log' - } - }], - type: 'structure' -}; -var _default = LogRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MainRole.js b/node_modules/axobject-query/lib/etc/objects/MainRole.js deleted file mode 100755 index 2de7bfd1..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MainRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MainRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'main' - } - }, { - module: 'HTML', - concept: { - name: 'main' - } - }], - type: 'structure' -}; -var _default = MainRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MarkRole.js b/node_modules/axobject-query/lib/etc/objects/MarkRole.js deleted file mode 100755 index 86b28713..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MarkRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MarkRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'mark' - } - }], - type: 'structure' -}; -var _default = MarkRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MarqueeRole.js b/node_modules/axobject-query/lib/etc/objects/MarqueeRole.js deleted file mode 100755 index 6c820f52..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MarqueeRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MarqueeRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'marquee' - } - }, { - module: 'HTML', - concept: { - name: 'marquee' - } - }], - type: 'structure' -}; -var _default = MarqueeRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MathRole.js b/node_modules/axobject-query/lib/etc/objects/MathRole.js deleted file mode 100755 index 7438d63a..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MathRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MathRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'math' - } - }], - type: 'structure' -}; -var _default = MathRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuBarRole.js b/node_modules/axobject-query/lib/etc/objects/MenuBarRole.js deleted file mode 100755 index d3e630fc..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuBarRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuBarRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menubar' - } - }], - type: 'structure' -}; -var _default = MenuBarRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuButtonRole.js b/node_modules/axobject-query/lib/etc/objects/MenuButtonRole.js deleted file mode 100755 index c05ebff7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuButtonRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuButtonRole = { - relatedConcepts: [], - type: 'widget' -}; -var _default = MenuButtonRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuItemCheckBoxRole.js b/node_modules/axobject-query/lib/etc/objects/MenuItemCheckBoxRole.js deleted file mode 100755 index 4cead35b..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuItemCheckBoxRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuItemCheckBoxRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menuitemcheckbox' - } - }], - type: 'widget' -}; -var _default = MenuItemCheckBoxRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuItemRadioRole.js b/node_modules/axobject-query/lib/etc/objects/MenuItemRadioRole.js deleted file mode 100755 index b096abb7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuItemRadioRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuItemRadioRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menuitemradio' - } - }], - type: 'widget' -}; -var _default = MenuItemRadioRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuItemRole.js b/node_modules/axobject-query/lib/etc/objects/MenuItemRole.js deleted file mode 100755 index 9df46cdb..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuItemRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuItemRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menuitem' - } - }, { - module: 'HTML', - concept: { - name: 'menuitem' - } - }], - type: 'widget' -}; -var _default = MenuItemRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuListOptionRole.js b/node_modules/axobject-query/lib/etc/objects/MenuListOptionRole.js deleted file mode 100755 index 56d2822c..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuListOptionRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuListOptionRole = { - relatedConcepts: [], - type: 'widget' -}; -var _default = MenuListOptionRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuListPopupRole.js b/node_modules/axobject-query/lib/etc/objects/MenuListPopupRole.js deleted file mode 100755 index 5dca3d5a..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuListPopupRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuListPopupRole = { - relatedConcepts: [], - type: 'widget' -}; -var _default = MenuListPopupRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MenuRole.js b/node_modules/axobject-query/lib/etc/objects/MenuRole.js deleted file mode 100755 index 375afc9c..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MenuRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MenuRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'menu' - } - }, { - module: 'HTML', - concept: { - name: 'menu' - } - }], - type: 'structure' -}; -var _default = MenuRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/MeterRole.js b/node_modules/axobject-query/lib/etc/objects/MeterRole.js deleted file mode 100755 index a35c309a..00000000 --- a/node_modules/axobject-query/lib/etc/objects/MeterRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var MeterRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'meter' - } - }], - type: 'structure' -}; -var _default = MeterRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/NavigationRole.js b/node_modules/axobject-query/lib/etc/objects/NavigationRole.js deleted file mode 100755 index 38fb0fa1..00000000 --- a/node_modules/axobject-query/lib/etc/objects/NavigationRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var NavigationRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'navigation' - } - }, { - module: 'HTML', - concept: { - name: 'nav' - } - }], - type: 'structure' -}; -var _default = NavigationRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/NoneRole.js b/node_modules/axobject-query/lib/etc/objects/NoneRole.js deleted file mode 100755 index 5ed1fbe5..00000000 --- a/node_modules/axobject-query/lib/etc/objects/NoneRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var NoneRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'none' - } - }], - type: 'structure' -}; -var _default = NoneRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/NoteRole.js b/node_modules/axobject-query/lib/etc/objects/NoteRole.js deleted file mode 100755 index 2fca9582..00000000 --- a/node_modules/axobject-query/lib/etc/objects/NoteRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var NoteRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'note' - } - }], - type: 'structure' -}; -var _default = NoteRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/OutlineRole.js b/node_modules/axobject-query/lib/etc/objects/OutlineRole.js deleted file mode 100755 index babaec0e..00000000 --- a/node_modules/axobject-query/lib/etc/objects/OutlineRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var OutlineRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = OutlineRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ParagraphRole.js b/node_modules/axobject-query/lib/etc/objects/ParagraphRole.js deleted file mode 100755 index a95f3109..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ParagraphRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ParagraphRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'p' - } - }], - type: 'structure' -}; -var _default = ParagraphRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/PopUpButtonRole.js b/node_modules/axobject-query/lib/etc/objects/PopUpButtonRole.js deleted file mode 100755 index 37671fb8..00000000 --- a/node_modules/axobject-query/lib/etc/objects/PopUpButtonRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var PopUpButtonRole = { - relatedConcepts: [], - type: 'widget' -}; -var _default = PopUpButtonRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/PreRole.js b/node_modules/axobject-query/lib/etc/objects/PreRole.js deleted file mode 100755 index 5a357e18..00000000 --- a/node_modules/axobject-query/lib/etc/objects/PreRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var PreRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'pre' - } - }], - type: 'structure' -}; -var _default = PreRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/PresentationalRole.js b/node_modules/axobject-query/lib/etc/objects/PresentationalRole.js deleted file mode 100755 index 8dff20ac..00000000 --- a/node_modules/axobject-query/lib/etc/objects/PresentationalRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var PresentationalRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'presentation' - } - }], - type: 'structure' -}; -var _default = PresentationalRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ProgressIndicatorRole.js b/node_modules/axobject-query/lib/etc/objects/ProgressIndicatorRole.js deleted file mode 100755 index 0456f0de..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ProgressIndicatorRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ProgressIndicatorRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'progressbar' - } - }, { - module: 'HTML', - concept: { - name: 'progress' - } - }], - type: 'structure' -}; -var _default = ProgressIndicatorRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RadioButtonRole.js b/node_modules/axobject-query/lib/etc/objects/RadioButtonRole.js deleted file mode 100755 index b87fc95e..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RadioButtonRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RadioButtonRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'radio' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'radio' - }] - } - }], - type: 'widget' -}; -var _default = RadioButtonRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RadioGroupRole.js b/node_modules/axobject-query/lib/etc/objects/RadioGroupRole.js deleted file mode 100755 index 39060139..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RadioGroupRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RadioGroupRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'radiogroup' - } - }], - type: 'structure' -}; -var _default = RadioGroupRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RegionRole.js b/node_modules/axobject-query/lib/etc/objects/RegionRole.js deleted file mode 100755 index 320bae7d..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RegionRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RegionRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'region' - } - }], - type: 'structure' -}; -var _default = RegionRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RootWebAreaRole.js b/node_modules/axobject-query/lib/etc/objects/RootWebAreaRole.js deleted file mode 100755 index d64a8a04..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RootWebAreaRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RootWebAreaRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = RootWebAreaRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RowHeaderRole.js b/node_modules/axobject-query/lib/etc/objects/RowHeaderRole.js deleted file mode 100755 index 347cf14a..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RowHeaderRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RowHeaderRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'rowheader' - } - }, { - module: 'HTML', - concept: { - name: 'th', - attributes: [{ - name: 'scope', - value: 'row' - }] - } - }], - type: 'widget' -}; -var _default = RowHeaderRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RowRole.js b/node_modules/axobject-query/lib/etc/objects/RowRole.js deleted file mode 100755 index d3a3e385..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RowRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RowRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'row' - } - }, { - module: 'HTML', - concept: { - name: 'tr' - } - }], - type: 'structure' -}; -var _default = RowRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RubyRole.js b/node_modules/axobject-query/lib/etc/objects/RubyRole.js deleted file mode 100755 index e37140ef..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RubyRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RubyRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'ruby' - } - }], - type: 'structure' -}; -var _default = RubyRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/RulerRole.js b/node_modules/axobject-query/lib/etc/objects/RulerRole.js deleted file mode 100755 index d1940032..00000000 --- a/node_modules/axobject-query/lib/etc/objects/RulerRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var RulerRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = RulerRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SVGRootRole.js b/node_modules/axobject-query/lib/etc/objects/SVGRootRole.js deleted file mode 100755 index b948df94..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SVGRootRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SVGRootRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = SVGRootRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ScrollAreaRole.js b/node_modules/axobject-query/lib/etc/objects/ScrollAreaRole.js deleted file mode 100755 index 4cc0b192..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ScrollAreaRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ScrollAreaRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = ScrollAreaRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ScrollBarRole.js b/node_modules/axobject-query/lib/etc/objects/ScrollBarRole.js deleted file mode 100755 index 6858bbe4..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ScrollBarRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ScrollBarRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'scrollbar' - } - }], - type: 'widget' -}; -var _default = ScrollBarRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SeamlessWebAreaRole.js b/node_modules/axobject-query/lib/etc/objects/SeamlessWebAreaRole.js deleted file mode 100755 index 371df8fb..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SeamlessWebAreaRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SeamlessWebAreaRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = SeamlessWebAreaRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SearchBoxRole.js b/node_modules/axobject-query/lib/etc/objects/SearchBoxRole.js deleted file mode 100755 index 8c3e0fba..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SearchBoxRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SearchBoxRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'searchbox' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'search' - }] - } - }], - type: 'widget' -}; -var _default = SearchBoxRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SearchRole.js b/node_modules/axobject-query/lib/etc/objects/SearchRole.js deleted file mode 100755 index 1e8588c6..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SearchRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SearchRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'search' - } - }], - type: 'structure' -}; -var _default = SearchRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SliderRole.js b/node_modules/axobject-query/lib/etc/objects/SliderRole.js deleted file mode 100755 index c2be5225..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SliderRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SliderRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'slider' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'range' - }] - } - }], - type: 'widget' -}; -var _default = SliderRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SliderThumbRole.js b/node_modules/axobject-query/lib/etc/objects/SliderThumbRole.js deleted file mode 100755 index a1232800..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SliderThumbRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SliderThumbRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = SliderThumbRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SpinButtonPartRole.js b/node_modules/axobject-query/lib/etc/objects/SpinButtonPartRole.js deleted file mode 100755 index 845d3b58..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SpinButtonPartRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SpinButtonPartRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = SpinButtonPartRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SpinButtonRole.js b/node_modules/axobject-query/lib/etc/objects/SpinButtonRole.js deleted file mode 100755 index 377d4ea1..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SpinButtonRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SpinButtonRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'spinbutton' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'number' - }] - } - }], - type: 'widget' -}; -var _default = SpinButtonRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SplitterRole.js b/node_modules/axobject-query/lib/etc/objects/SplitterRole.js deleted file mode 100755 index c61764ae..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SplitterRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SplitterRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'separator' - } - }], - type: 'widget' -}; -var _default = SplitterRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/StaticTextRole.js b/node_modules/axobject-query/lib/etc/objects/StaticTextRole.js deleted file mode 100755 index 1444d6f3..00000000 --- a/node_modules/axobject-query/lib/etc/objects/StaticTextRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var StaticTextRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = StaticTextRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/StatusRole.js b/node_modules/axobject-query/lib/etc/objects/StatusRole.js deleted file mode 100755 index 2d097b2d..00000000 --- a/node_modules/axobject-query/lib/etc/objects/StatusRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var StatusRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'status' - } - }], - type: 'structure' -}; -var _default = StatusRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/SwitchRole.js b/node_modules/axobject-query/lib/etc/objects/SwitchRole.js deleted file mode 100755 index 6a30a36e..00000000 --- a/node_modules/axobject-query/lib/etc/objects/SwitchRole.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var SwitchRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'switch' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'checkbox' - }] - } - }], - type: 'widget' -}; -var _default = SwitchRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TabGroupRole.js b/node_modules/axobject-query/lib/etc/objects/TabGroupRole.js deleted file mode 100755 index fe5c1d7d..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TabGroupRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TabGroupRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'tablist' - } - }], - type: 'structure' -}; -var _default = TabGroupRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TabListRole.js b/node_modules/axobject-query/lib/etc/objects/TabListRole.js deleted file mode 100755 index 93283356..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TabListRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TabListRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'tablist' - } - }], - type: 'structure' -}; -var _default = TabListRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TabPanelRole.js b/node_modules/axobject-query/lib/etc/objects/TabPanelRole.js deleted file mode 100755 index 94dffbe4..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TabPanelRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TabPanelRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'tabpanel' - } - }], - type: 'structure' -}; -var _default = TabPanelRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TabRole.js b/node_modules/axobject-query/lib/etc/objects/TabRole.js deleted file mode 100755 index 5ed110c7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TabRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TabRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'tab' - } - }], - type: 'widget' -}; -var _default = TabRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TableHeaderContainerRole.js b/node_modules/axobject-query/lib/etc/objects/TableHeaderContainerRole.js deleted file mode 100755 index 9f07fb05..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TableHeaderContainerRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TableHeaderContainerRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = TableHeaderContainerRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TableRole.js b/node_modules/axobject-query/lib/etc/objects/TableRole.js deleted file mode 100755 index e2f45f03..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TableRole.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TableRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'table' - } - }, { - module: 'HTML', - concept: { - name: 'table' - } - }], - type: 'structure' -}; -var _default = TableRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TermRole.js b/node_modules/axobject-query/lib/etc/objects/TermRole.js deleted file mode 100755 index 71c23c18..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TermRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TermRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'term' - } - }], - type: 'structure' -}; -var _default = TermRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TextFieldRole.js b/node_modules/axobject-query/lib/etc/objects/TextFieldRole.js deleted file mode 100755 index d61c3fa0..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TextFieldRole.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TextFieldRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'textbox' - } - }, { - module: 'HTML', - concept: { - name: 'input' - } - }, { - module: 'HTML', - concept: { - name: 'input', - attributes: [{ - name: 'type', - value: 'text' - }] - } - }], - type: 'widget' -}; -var _default = TextFieldRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TimeRole.js b/node_modules/axobject-query/lib/etc/objects/TimeRole.js deleted file mode 100755 index 03ffecb3..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TimeRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TimeRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'time' - } - }], - type: 'structure' -}; -var _default = TimeRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TimerRole.js b/node_modules/axobject-query/lib/etc/objects/TimerRole.js deleted file mode 100755 index 70eb2e6f..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TimerRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TimerRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'timer' - } - }], - type: 'structure' -}; -var _default = TimerRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ToggleButtonRole.js b/node_modules/axobject-query/lib/etc/objects/ToggleButtonRole.js deleted file mode 100755 index 53233e82..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ToggleButtonRole.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ToggleButtonRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - attributes: [{ - name: 'aria-pressed' - }] - } - }], - type: 'widget' -}; -var _default = ToggleButtonRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/ToolbarRole.js b/node_modules/axobject-query/lib/etc/objects/ToolbarRole.js deleted file mode 100755 index f2efea59..00000000 --- a/node_modules/axobject-query/lib/etc/objects/ToolbarRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var ToolbarRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'toolbar' - } - }], - type: 'structure' -}; -var _default = ToolbarRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TreeGridRole.js b/node_modules/axobject-query/lib/etc/objects/TreeGridRole.js deleted file mode 100755 index f2813d2c..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TreeGridRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TreeGridRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'treegrid' - } - }], - type: 'widget' -}; -var _default = TreeGridRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TreeItemRole.js b/node_modules/axobject-query/lib/etc/objects/TreeItemRole.js deleted file mode 100755 index 78d8c3c7..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TreeItemRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TreeItemRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'treeitem' - } - }], - type: 'widget' -}; -var _default = TreeItemRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/TreeRole.js b/node_modules/axobject-query/lib/etc/objects/TreeRole.js deleted file mode 100755 index f016d254..00000000 --- a/node_modules/axobject-query/lib/etc/objects/TreeRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var TreeRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'tree' - } - }], - type: 'widget' -}; -var _default = TreeRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/UserInterfaceTooltipRole.js b/node_modules/axobject-query/lib/etc/objects/UserInterfaceTooltipRole.js deleted file mode 100755 index 5bf9cad6..00000000 --- a/node_modules/axobject-query/lib/etc/objects/UserInterfaceTooltipRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var UserInterfaceTooltipRole = { - relatedConcepts: [{ - module: 'ARIA', - concept: { - name: 'tooltip' - } - }], - type: 'structure' -}; -var _default = UserInterfaceTooltipRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/VideoRole.js b/node_modules/axobject-query/lib/etc/objects/VideoRole.js deleted file mode 100755 index 56630e04..00000000 --- a/node_modules/axobject-query/lib/etc/objects/VideoRole.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var VideoRole = { - relatedConcepts: [{ - module: 'HTML', - concept: { - name: 'video' - } - }], - type: 'widget' -}; -var _default = VideoRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/WebAreaRole.js b/node_modules/axobject-query/lib/etc/objects/WebAreaRole.js deleted file mode 100755 index fd1059ff..00000000 --- a/node_modules/axobject-query/lib/etc/objects/WebAreaRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var WebAreaRole = { - relatedConcepts: [], - type: 'structure' -}; -var _default = WebAreaRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/etc/objects/WindowRole.js b/node_modules/axobject-query/lib/etc/objects/WindowRole.js deleted file mode 100755 index e30d1ded..00000000 --- a/node_modules/axobject-query/lib/etc/objects/WindowRole.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; -var WindowRole = { - relatedConcepts: [], - type: 'window' -}; -var _default = WindowRole; -exports["default"] = _default; \ No newline at end of file diff --git a/node_modules/axobject-query/lib/index.js b/node_modules/axobject-query/lib/index.js deleted file mode 100755 index 14318e55..00000000 --- a/node_modules/axobject-query/lib/index.js +++ /dev/null @@ -1,25 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.elementAXObjects = exports.AXObjects = exports.AXObjectRoles = exports.AXObjectElements = void 0; - -var _AXObjectElementMap = _interopRequireDefault(require("./AXObjectElementMap")); - -var _AXObjectRoleMap = _interopRequireDefault(require("./AXObjectRoleMap")); - -var _AXObjectsMap = _interopRequireDefault(require("./AXObjectsMap")); - -var _elementAXObjectMap = _interopRequireDefault(require("./elementAXObjectMap")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -var AXObjectElements = _AXObjectElementMap["default"]; -exports.AXObjectElements = AXObjectElements; -var AXObjectRoles = _AXObjectRoleMap["default"]; -exports.AXObjectRoles = AXObjectRoles; -var AXObjects = _AXObjectsMap["default"]; -exports.AXObjects = AXObjects; -var elementAXObjects = _elementAXObjectMap["default"]; -exports.elementAXObjects = elementAXObjects; \ No newline at end of file diff --git a/node_modules/axobject-query/package.json b/node_modules/axobject-query/package.json deleted file mode 100755 index 2e0200d4..00000000 --- a/node_modules/axobject-query/package.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "name": "axobject-query", - "version": "2.1.2", - "description": "Programmatic access to information about the AXObject Model", - "main": "lib/index.js", - "files": [ - "lib" - ], - "scripts": { - "build": "rimraf lib && babel src --out-dir lib", - "prepare": "npm run lint && npm run flow && npm run test && npm run build", - "coveralls": "cat ./reports/lcov.info | coveralls", - "flow": "flow; test $? -eq 0 -o $? -eq 2", - "lint": "eslint --config .eslintrc src __tests__", - "lint:fix": "npm run lint -- --fix", - "pretest": "npm run lint:fix && npm run flow", - "test": "npm run jest", - "test:ci": "npm run jest -- --ci --runInBand", - "jest": "jest --coverage __tests__/**/*" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/A11yance/axobject-query.git" - }, - "keywords": [ - "accessibility" - ], - "author": "Jesse Beach ", - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/A11yance/axobject-query/issues" - }, - "homepage": "https://github.com/A11yance/axobject-query#readme", - "devDependencies": { - "@babel/cli": "^7.6.4", - "@babel/core": "^7.6.4", - "@babel/preset-env": "^7.6.3", - "@babel/preset-flow": "^7.7.4", - "babel-eslint": "^10.0.1", - "babel-jest": "^24.0.0", - "coveralls": "^2.12.0", - "eslint": "^5 || ^6", - "eslint-config-airbnb-base": "^13.0.0", - "eslint-plugin-flowtype": "^3.5.0", - "eslint-plugin-import": "^2.18.0", - "expect": "^1.20.2", - "flow-bin": "^0.112.0", - "jest": "^24.9.0", - "rimraf": "^2.6.3" - }, - "dependencies": {}, - "jest": { - "coverageReporters": [ - "lcov" - ], - "coverageDirectory": "reports", - "roots": [ - "/__tests__" - ] - } -} diff --git a/node_modules/babel-eslint/LICENSE b/node_modules/babel-eslint/LICENSE deleted file mode 100644 index 80194a85..00000000 --- a/node_modules/babel-eslint/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -Copyright (c) 2014-2016 Sebastian McKenzie - -MIT License - -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. diff --git a/node_modules/babel-eslint/README.md b/node_modules/babel-eslint/README.md deleted file mode 100644 index 6a4f9085..00000000 --- a/node_modules/babel-eslint/README.md +++ /dev/null @@ -1,103 +0,0 @@ -# babel-eslint [![npm](https://img.shields.io/npm/v/babel-eslint.svg)](https://www.npmjs.com/package/babel-eslint) [![travis](https://img.shields.io/travis/babel/babel-eslint/master.svg)](https://travis-ci.org/babel/babel-eslint) [![npm-downloads](https://img.shields.io/npm/dm/babel-eslint.svg)](https://www.npmjs.com/package/babel-eslint) - -**babel-eslint** allows you to lint **ALL** valid Babel code with the fantastic -[ESLint](https://github.com/eslint/eslint). - -### Why Use babel-eslint - -You only need to use babel-eslint if you are using types (Flow) or experimental features not supported in ESLint itself yet. Otherwise try the default parser (you don't have to use it just because you are using Babel). - ---- - -> If there is an issue, first check if it can be reproduced with the regular parser or with the latest versions of `eslint` and `babel-eslint`! - -For questions and support please visit the [`#discussion`](https://babeljs.slack.com/messages/discussion/) babel slack channel (sign up [here](https://github.com/babel/notes/issues/38)) or eslint [gitter](https://gitter.im/eslint/eslint)! - -> Note that the `ecmaFeatures` config property may still be required for ESLint to work properly with features not in ECMAScript 5 by default. Examples are `globalReturn` and `modules`). - -## Known Issues - -Flow: -> Check out [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype): An `eslint` plugin that makes flow type annotations global variables and marks declarations as used. Solves the problem of false positives with `no-undef` and `no-unused-vars`. -- `no-undef` for global flow types: `ReactElement`, `ReactClass` [#130](https://github.com/babel/babel-eslint/issues/130#issuecomment-111215076) - - Workaround: define types as globals in `.eslintrc` or define types and import them `import type ReactElement from './types'` -- `no-unused-vars/no-undef` with Flow declarations (`declare module A {}`) [#132](https://github.com/babel/babel-eslint/issues/132#issuecomment-112815926) - -Modules/strict mode -- `no-unused-vars: [2, {vars: local}]` [#136](https://github.com/babel/babel-eslint/issues/136) - -Please check out [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) for React/JSX issues -- `no-unused-vars` with jsx - -Please check out [eslint-plugin-babel](https://github.com/babel/eslint-plugin-babel) for other issues - -## How does it work? - -ESLint allows custom parsers. This is great but some of the syntax nodes that Babel supports -aren't supported by ESLint. When using this plugin, ESLint is monkeypatched and your code is -transformed into code that ESLint can understand. All location info such as line numbers, -columns is also retained so you can track down errors with ease. - -Basically `babel-eslint` exports an [`index.js`](/index.js) that a linter can use. -It just needs to export a `parse` method that takes in a string of code and outputs an AST. - -## Usage - -### Supported ESLint versions - -ESLint | babel-eslint ------------- | ------------- -4.x | >= 6.x -3.x | >= 6.x -2.x | >= 6.x -1.x | >= 5.x - -### Install - -Ensure that you have substituted the correct version lock for `eslint` and `babel-eslint` into this command: - -```sh -$ npm install eslint@4.x babel-eslint@8 --save-dev -# or -$ yarn add eslint@4.x babel-eslint@8 -D -``` - -### Setup - -**.eslintrc** - -```json -{ - "parser": "babel-eslint", - "rules": { - "strict": 0 - } -} -``` - -Check out the [ESLint docs](http://eslint.org/docs/rules/) for all possible rules. - -### Configuration - -- `sourceType` can be set to `'module'`(default) or `'script'` if your code isn't using ECMAScript modules. -- `allowImportExportEverywhere` (default `false`) can be set to `true` to allow import and export declarations to appear anywhere a statement is allowed if your build environment supports that. Otherwise import and export declarations can only appear at a program's top level. -- `codeFrame` (default `true`) can be set to `false` to disable the code frame in the reporter. This is useful since some eslint formatters don't play well with it. - -**.eslintrc** - -```json -{ - "parser": "babel-eslint", - "parserOptions": { - "sourceType": "module", - "allowImportExportEverywhere": false, - "codeFrame": true - } -} -``` - -### Run - -```sh -$ eslint your-files-here -``` diff --git a/node_modules/babel-eslint/lib/analyze-scope.js b/node_modules/babel-eslint/lib/analyze-scope.js deleted file mode 100644 index 80bdff09..00000000 --- a/node_modules/babel-eslint/lib/analyze-scope.js +++ /dev/null @@ -1,346 +0,0 @@ -"use strict"; - -const t = require("@babel/types"); -const requireFromESLint = require("./require-from-eslint"); - -const escope = requireFromESLint("eslint-scope"); -const Definition = requireFromESLint("eslint-scope/lib/definition").Definition; -const OriginalPatternVisitor = requireFromESLint( - "eslint-scope/lib/pattern-visitor" -); -const OriginalReferencer = requireFromESLint("eslint-scope/lib/referencer"); -const fallback = require("eslint-visitor-keys").getKeys; -const childVisitorKeys = require("./visitor-keys"); - -const flowFlippedAliasKeys = t.FLIPPED_ALIAS_KEYS.Flow.concat([ - "ArrayPattern", - "ClassDeclaration", - "ClassExpression", - "FunctionDeclaration", - "FunctionExpression", - "Identifier", - "ObjectPattern", - "RestElement", -]); -const visitorKeysMap = Object.keys(t.VISITOR_KEYS).reduce(function(acc, key) { - const value = t.VISITOR_KEYS[key]; - if (flowFlippedAliasKeys.indexOf(value) === -1) { - acc[key] = value; - } - return acc; -}, {}); - -const propertyTypes = { - // loops - callProperties: { type: "loop", values: ["value"] }, - indexers: { type: "loop", values: ["key", "value"] }, - properties: { type: "loop", values: ["argument", "value"] }, - types: { type: "loop" }, - params: { type: "loop" }, - // single property - argument: { type: "single" }, - elementType: { type: "single" }, - qualification: { type: "single" }, - rest: { type: "single" }, - returnType: { type: "single" }, - // others - typeAnnotation: { type: "typeAnnotation" }, - typeParameters: { type: "typeParameters" }, - id: { type: "id" }, -}; - -class PatternVisitor extends OriginalPatternVisitor { - ArrayPattern(node) { - node.elements.forEach(this.visit, this); - } - - ObjectPattern(node) { - node.properties.forEach(this.visit, this); - } -} - -class Referencer extends OriginalReferencer { - // inherits. - visitPattern(node, options, callback) { - if (!node) { - return; - } - - // Visit type annotations. - this._checkIdentifierOrVisit(node.typeAnnotation); - if (t.isAssignmentPattern(node)) { - this._checkIdentifierOrVisit(node.left.typeAnnotation); - } - - // Overwrite `super.visitPattern(node, options, callback)` in order to not visit `ArrayPattern#typeAnnotation` and `ObjectPattern#typeAnnotation`. - if (typeof options === "function") { - callback = options; - options = { processRightHandNodes: false }; - } - - const visitor = new PatternVisitor(this.options, node, callback); - visitor.visit(node); - - // Process the right hand nodes recursively. - if (options.processRightHandNodes) { - visitor.rightHandNodes.forEach(this.visit, this); - } - } - - // inherits. - visitClass(node) { - // Decorators. - this._visitArray(node.decorators); - - // Flow type parameters. - const typeParamScope = this._nestTypeParamScope(node); - - // Flow super types. - this._visitTypeAnnotation(node.implements); - this._visitTypeAnnotation( - node.superTypeParameters && node.superTypeParameters.params - ); - - // Basic. - super.visitClass(node); - - // Close the type parameter scope. - if (typeParamScope) { - this.close(node); - } - } - - // inherits. - visitFunction(node) { - const typeParamScope = this._nestTypeParamScope(node); - - // Flow return types. - this._checkIdentifierOrVisit(node.returnType); - - // Basic. - super.visitFunction(node); - - // Close the type parameter scope. - if (typeParamScope) { - this.close(node); - } - } - - // inherits. - visitProperty(node) { - if (node.value && node.value.type === "TypeCastExpression") { - this._visitTypeAnnotation(node.value); - } - this._visitArray(node.decorators); - super.visitProperty(node); - } - - InterfaceDeclaration(node) { - this._createScopeVariable(node, node.id); - - const typeParamScope = this._nestTypeParamScope(node); - - // TODO: Handle mixins - this._visitArray(node.extends); - this.visit(node.body); - - if (typeParamScope) { - this.close(node); - } - } - - EnumDeclaration(node) { - this._createScopeVariable(node, node.id); - } - - TypeAlias(node) { - this._createScopeVariable(node, node.id); - - const typeParamScope = this._nestTypeParamScope(node); - - this.visit(node.right); - - if (typeParamScope) { - this.close(node); - } - } - - ClassProperty(node) { - this._visitClassProperty(node); - } - - ClassPrivateProperty(node) { - this._visitClassProperty(node); - } - - DeclareModule(node) { - this._visitDeclareX(node); - } - - DeclareFunction(node) { - this._visitDeclareX(node); - } - - DeclareVariable(node) { - this._visitDeclareX(node); - } - - DeclareClass(node) { - this._visitDeclareX(node); - } - - // visit OptionalMemberExpression as a MemberExpression. - OptionalMemberExpression(node) { - super.MemberExpression(node); - } - - _visitClassProperty(node) { - this._visitTypeAnnotation(node.typeAnnotation); - this.visitProperty(node); - } - - _visitDeclareX(node) { - if (node.id) { - this._createScopeVariable(node, node.id); - } - - const typeParamScope = this._nestTypeParamScope(node); - if (typeParamScope) { - this.close(node); - } - } - - _createScopeVariable(node, name) { - this.currentScope().variableScope.__define( - name, - new Definition("Variable", name, node, null, null, null) - ); - } - - _nestTypeParamScope(node) { - if (!node.typeParameters) { - return null; - } - - const parentScope = this.scopeManager.__currentScope; - const scope = new escope.Scope( - this.scopeManager, - "type-parameters", - parentScope, - node, - false - ); - - this.scopeManager.__nestScope(scope); - for (let j = 0; j < node.typeParameters.params.length; j++) { - const name = node.typeParameters.params[j]; - scope.__define(name, new Definition("TypeParameter", name, name)); - if (name.typeAnnotation) { - this._checkIdentifierOrVisit(name); - } - } - scope.__define = function() { - return parentScope.__define.apply(parentScope, arguments); - }; - - return scope; - } - - _visitTypeAnnotation(node) { - if (!node) { - return; - } - if (Array.isArray(node)) { - node.forEach(this._visitTypeAnnotation, this); - return; - } - - // get property to check (params, id, etc...) - const visitorValues = visitorKeysMap[node.type]; - if (!visitorValues) { - return; - } - - // can have multiple properties - for (let i = 0; i < visitorValues.length; i++) { - const visitorValue = visitorValues[i]; - const propertyType = propertyTypes[visitorValue]; - const nodeProperty = node[visitorValue]; - // check if property or type is defined - if (propertyType == null || nodeProperty == null) { - continue; - } - if (propertyType.type === "loop") { - for (let j = 0; j < nodeProperty.length; j++) { - if (Array.isArray(propertyType.values)) { - for (let k = 0; k < propertyType.values.length; k++) { - const loopPropertyNode = nodeProperty[j][propertyType.values[k]]; - if (loopPropertyNode) { - this._checkIdentifierOrVisit(loopPropertyNode); - } - } - } else { - this._checkIdentifierOrVisit(nodeProperty[j]); - } - } - } else if (propertyType.type === "single") { - this._checkIdentifierOrVisit(nodeProperty); - } else if (propertyType.type === "typeAnnotation") { - this._visitTypeAnnotation(node.typeAnnotation); - } else if (propertyType.type === "typeParameters") { - for (let l = 0; l < node.typeParameters.params.length; l++) { - this._checkIdentifierOrVisit(node.typeParameters.params[l]); - } - } else if (propertyType.type === "id") { - if (node.id.type === "Identifier") { - this._checkIdentifierOrVisit(node.id); - } else { - this._visitTypeAnnotation(node.id); - } - } - } - } - - _checkIdentifierOrVisit(node) { - if (node && node.typeAnnotation) { - this._visitTypeAnnotation(node.typeAnnotation); - } else if (node && node.type === "Identifier") { - this.visit(node); - } else { - this._visitTypeAnnotation(node); - } - } - - _visitArray(nodeList) { - if (nodeList) { - for (const node of nodeList) { - this.visit(node); - } - } - } -} - -module.exports = function(ast, parserOptions) { - const options = { - ignoreEval: true, - optimistic: false, - directive: false, - nodejsScope: - ast.sourceType === "script" && - (parserOptions.ecmaFeatures && - parserOptions.ecmaFeatures.globalReturn) === true, - impliedStrict: false, - sourceType: ast.sourceType, - ecmaVersion: parserOptions.ecmaVersion || 2018, - fallback, - }; - - options.childVisitorKeys = childVisitorKeys; - - const scopeManager = new escope.ScopeManager(options); - const referencer = new Referencer(options, scopeManager); - - referencer.visit(ast); - - return scopeManager; -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/attachComments.js b/node_modules/babel-eslint/lib/babylon-to-espree/attachComments.js deleted file mode 100644 index 8c608a45..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/attachComments.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; - -// comment fixes -module.exports = function(ast, comments, tokens) { - if (comments.length) { - var firstComment = comments[0]; - var lastComment = comments[comments.length - 1]; - // fixup program start - if (!tokens.length) { - // if no tokens, the program starts at the end of the last comment - ast.start = lastComment.end; - ast.loc.start.line = lastComment.loc.end.line; - ast.loc.start.column = lastComment.loc.end.column; - - if (ast.leadingComments === null && ast.innerComments.length) { - ast.leadingComments = ast.innerComments; - } - } else if (firstComment.start < tokens[0].start) { - // if there are comments before the first token, the program starts at the first token - var token = tokens[0]; - // ast.start = token.start; - // ast.loc.start.line = token.loc.start.line; - // ast.loc.start.column = token.loc.start.column; - - // estraverse do not put leading comments on first node when the comment - // appear before the first token - if (ast.body.length) { - var node = ast.body[0]; - node.leadingComments = []; - var firstTokenStart = token.start; - var len = comments.length; - for (var i = 0; i < len && comments[i].start < firstTokenStart; i++) { - node.leadingComments.push(comments[i]); - } - } - } - // fixup program end - if (tokens.length) { - var lastToken = tokens[tokens.length - 1]; - if (lastComment.end > lastToken.end) { - // If there is a comment after the last token, the program ends at the - // last token and not the comment - // ast.end = lastToken.end; - ast.range[1] = lastToken.end; - ast.loc.end.line = lastToken.loc.end.line; - ast.loc.end.column = lastToken.loc.end.column; - } - } - } else { - if (!tokens.length) { - ast.loc.start.line = 1; - ast.loc.end.line = 1; - } - } - if (ast.body && ast.body.length > 0) { - ast.loc.start.line = ast.body[0].loc.start.line; - ast.range[0] = ast.body[0].start; - } -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/convertComments.js b/node_modules/babel-eslint/lib/babylon-to-espree/convertComments.js deleted file mode 100644 index 17d71173..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/convertComments.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; - -module.exports = function(comments) { - for (var i = 0; i < comments.length; i++) { - var comment = comments[i]; - if (comment.type === "CommentBlock") { - comment.type = "Block"; - } else if (comment.type === "CommentLine") { - comment.type = "Line"; - } - // sometimes comments don't get ranges computed, - // even with options.ranges === true - if (!comment.range) { - comment.range = [comment.start, comment.end]; - } - } -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/convertTemplateType.js b/node_modules/babel-eslint/lib/babylon-to-espree/convertTemplateType.js deleted file mode 100644 index accde61e..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/convertTemplateType.js +++ /dev/null @@ -1,92 +0,0 @@ -"use strict"; - -module.exports = function(tokens, tt) { - let curlyBrace = null; - let templateTokens = []; - const result = []; - - function addTemplateType() { - const start = templateTokens[0]; - const end = templateTokens[templateTokens.length - 1]; - - const value = templateTokens.reduce((result, token) => { - if (token.value) { - result += token.value; - } else if (token.type !== tt.template) { - result += token.type.label; - } - - return result; - }, ""); - - result.push({ - type: "Template", - value: value, - start: start.start, - end: end.end, - loc: { - start: start.loc.start, - end: end.loc.end, - }, - }); - - templateTokens = []; - } - - tokens.forEach(token => { - switch (token.type) { - case tt.backQuote: - if (curlyBrace) { - result.push(curlyBrace); - curlyBrace = null; - } - - templateTokens.push(token); - - if (templateTokens.length > 1) { - addTemplateType(); - } - - break; - - case tt.dollarBraceL: - templateTokens.push(token); - addTemplateType(); - break; - - case tt.braceR: - if (curlyBrace) { - result.push(curlyBrace); - } - - curlyBrace = token; - break; - - case tt.template: - if (curlyBrace) { - templateTokens.push(curlyBrace); - curlyBrace = null; - } - - templateTokens.push(token); - break; - - case tt.eof: - if (curlyBrace) { - result.push(curlyBrace); - } - - break; - - default: - if (curlyBrace) { - result.push(curlyBrace); - curlyBrace = null; - } - - result.push(token); - } - }); - - return result; -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/index.js b/node_modules/babel-eslint/lib/babylon-to-espree/index.js deleted file mode 100644 index 6d6e12bf..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/index.js +++ /dev/null @@ -1,30 +0,0 @@ -"use strict"; - -var attachComments = require("./attachComments"); -var convertComments = require("./convertComments"); -var toTokens = require("./toTokens"); -var toAST = require("./toAST"); - -module.exports = function(ast, traverse, tt, code) { - // convert tokens - ast.tokens = toTokens(ast.tokens, tt, code); - - // add comments - convertComments(ast.comments); - - // transform esprima and acorn divergent nodes - toAST(ast, traverse, code); - - // ast.program.tokens = ast.tokens; - // ast.program.comments = ast.comments; - // ast = ast.program; - - // remove File - ast.type = "Program"; - ast.sourceType = ast.program.sourceType; - ast.directives = ast.program.directives; - ast.body = ast.program.body; - delete ast.program; - - attachComments(ast, ast.comments, ast.tokens); -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/toAST.js b/node_modules/babel-eslint/lib/babylon-to-espree/toAST.js deleted file mode 100644 index b3da41f0..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/toAST.js +++ /dev/null @@ -1,118 +0,0 @@ -"use strict"; - -var t = require("@babel/types"); -var convertComments = require("./convertComments"); - -module.exports = function(ast, traverse, code) { - var state = { source: code }; - - // Monkey patch visitor keys in order to be able to traverse the estree nodes - t.VISITOR_KEYS.Property = t.VISITOR_KEYS.ObjectProperty; - t.VISITOR_KEYS.MethodDefinition = [ - "key", - "value", - "decorators", - "returnType", - "typeParameters", - ]; - - traverse(ast, astTransformVisitor, null, state); - - delete t.VISITOR_KEYS.Property; - delete t.VISITOR_KEYS.MethodDefinition; -}; - -var astTransformVisitor = { - noScope: true, - enter(path) { - var node = path.node; - - // private var to track original node type - node._babelType = node.type; - - if (node.innerComments) { - node.trailingComments = node.innerComments; - delete node.innerComments; - } - - if (node.trailingComments) { - convertComments(node.trailingComments); - } - - if (node.leadingComments) { - convertComments(node.leadingComments); - } - }, - exit(path) { - var node = path.node; - - if (path.isJSXText()) { - node.type = "Literal"; - } - - if ( - path.isRestElement() && - path.parent && - path.parent.type === "ObjectPattern" - ) { - node.type = "ExperimentalRestProperty"; - } - - if ( - path.isSpreadElement() && - path.parent && - path.parent.type === "ObjectExpression" - ) { - node.type = "ExperimentalSpreadProperty"; - } - - if (path.isTypeParameter()) { - node.type = "Identifier"; - node.typeAnnotation = node.bound; - delete node.bound; - } - - // flow: prevent "no-undef" - // for "Component" in: "let x: React.Component" - if (path.isQualifiedTypeIdentifier()) { - delete node.id; - } - // for "b" in: "var a: { b: Foo }" - if (path.isObjectTypeProperty()) { - delete node.key; - } - // for "indexer" in: "var a: {[indexer: string]: number}" - if (path.isObjectTypeIndexer()) { - delete node.id; - } - // for "param" in: "var a: { func(param: Foo): Bar };" - if (path.isFunctionTypeParam()) { - delete node.name; - } - - // modules - - if (path.isImportDeclaration()) { - delete node.isType; - } - - // template string range fixes - if (path.isTemplateLiteral()) { - for (var j = 0; j < node.quasis.length; j++) { - var q = node.quasis[j]; - q.range[0] -= 1; - if (q.tail) { - q.range[1] += 1; - } else { - q.range[1] += 2; - } - q.loc.start.column -= 1; - if (q.tail) { - q.loc.end.column += 1; - } else { - q.loc.end.column += 2; - } - } - } - }, -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/toToken.js b/node_modules/babel-eslint/lib/babylon-to-espree/toToken.js deleted file mode 100644 index 44c73529..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/toToken.js +++ /dev/null @@ -1,84 +0,0 @@ -"use strict"; - -module.exports = function(token, tt, source) { - var type = token.type; - token.range = [token.start, token.end]; - - if (type === tt.name) { - token.type = "Identifier"; - } else if ( - type === tt.semi || - type === tt.comma || - type === tt.parenL || - type === tt.parenR || - type === tt.braceL || - type === tt.braceR || - type === tt.slash || - type === tt.dot || - type === tt.bracketL || - type === tt.bracketR || - type === tt.ellipsis || - type === tt.arrow || - type === tt.pipeline || - type === tt.star || - type === tt.incDec || - type === tt.colon || - type === tt.question || - type === tt.questionDot || - type === tt.template || - type === tt.backQuote || - type === tt.dollarBraceL || - type === tt.at || - type === tt.logicalOR || - type === tt.logicalAND || - type === tt.nullishCoalescing || - type === tt.bitwiseOR || - type === tt.bitwiseXOR || - type === tt.bitwiseAND || - type === tt.equality || - type === tt.relational || - type === tt.bitShift || - type === tt.plusMin || - type === tt.modulo || - type === tt.exponent || - type === tt.bang || - type === tt.tilde || - type === tt.doubleColon || - type.isAssign - ) { - token.type = "Punctuator"; - if (!token.value) token.value = type.label; - } else if (type === tt.jsxTagStart) { - token.type = "Punctuator"; - token.value = "<"; - } else if (type === tt.jsxTagEnd) { - token.type = "Punctuator"; - token.value = ">"; - } else if (type === tt.jsxName) { - token.type = "JSXIdentifier"; - } else if (type === tt.jsxText) { - token.type = "JSXText"; - } else if (type.keyword === "null") { - token.type = "Null"; - } else if (type.keyword === "false" || type.keyword === "true") { - token.type = "Boolean"; - } else if (type.keyword) { - token.type = "Keyword"; - } else if (type === tt.num) { - token.type = "Numeric"; - token.value = source.slice(token.start, token.end); - } else if (type === tt.string) { - token.type = "String"; - token.value = source.slice(token.start, token.end); - } else if (type === tt.regexp) { - token.type = "RegularExpression"; - var value = token.value; - token.regex = { - pattern: value.pattern, - flags: value.flags, - }; - token.value = `/${value.pattern}/${value.flags}`; - } - - return token; -}; diff --git a/node_modules/babel-eslint/lib/babylon-to-espree/toTokens.js b/node_modules/babel-eslint/lib/babylon-to-espree/toTokens.js deleted file mode 100644 index bb30819b..00000000 --- a/node_modules/babel-eslint/lib/babylon-to-espree/toTokens.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; - -var convertTemplateType = require("./convertTemplateType"); -var toToken = require("./toToken"); - -module.exports = function(tokens, tt, code) { - return convertTemplateType(tokens, tt) - .filter(t => t.type !== "CommentLine" && t.type !== "CommentBlock") - .map(t => toToken(t, tt, code)); -}; diff --git a/node_modules/babel-eslint/lib/index.js b/node_modules/babel-eslint/lib/index.js deleted file mode 100644 index 9e527d26..00000000 --- a/node_modules/babel-eslint/lib/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; - -exports.parse = function(code, options) { - return exports.parseForESLint(code, options).ast; -}; - -exports.parseForESLint = function(code, options) { - options = options || {}; - options.ecmaVersion = options.ecmaVersion || 2018; - options.sourceType = options.sourceType || "module"; - options.allowImportExportEverywhere = - options.allowImportExportEverywhere || false; - - return require("./parse-with-scope")(code, options); -}; - -exports.parseNoPatch = function(code, options) { - return require("./parse")(code, options); -}; diff --git a/node_modules/babel-eslint/lib/parse-with-scope.js b/node_modules/babel-eslint/lib/parse-with-scope.js deleted file mode 100644 index 36e3fce5..00000000 --- a/node_modules/babel-eslint/lib/parse-with-scope.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; - -const visitorKeys = require("./visitor-keys"); -const analyzeScope = require("./analyze-scope"); -const parse = require("./parse"); - -module.exports = function(code, options) { - const ast = parse(code, options); - const scopeManager = analyzeScope(ast, options); - - return { ast, scopeManager, visitorKeys }; -}; diff --git a/node_modules/babel-eslint/lib/parse.js b/node_modules/babel-eslint/lib/parse.js deleted file mode 100644 index d0fe8e55..00000000 --- a/node_modules/babel-eslint/lib/parse.js +++ /dev/null @@ -1,93 +0,0 @@ -"use strict"; - -var babylonToEspree = require("./babylon-to-espree"); -var parse = require("@babel/parser").parse; -var tt = require("@babel/parser").tokTypes; -var traverse = require("@babel/traverse").default; -var codeFrameColumns = require("@babel/code-frame").codeFrameColumns; - -module.exports = function(code, options) { - const legacyDecorators = - options.ecmaFeatures && options.ecmaFeatures.legacyDecorators; - - var opts = { - codeFrame: options.hasOwnProperty("codeFrame") ? options.codeFrame : true, - sourceType: options.sourceType, - allowImportExportEverywhere: options.allowImportExportEverywhere, // consistent with espree - allowReturnOutsideFunction: true, - allowSuperOutsideMethod: true, - ranges: true, - tokens: true, - plugins: [ - ["flow", { all: true, enums: true }], - "jsx", - "estree", - "asyncFunctions", - "asyncGenerators", - "classConstructorCall", - "classProperties", - legacyDecorators - ? "decorators-legacy" - : ["decorators", { decoratorsBeforeExport: false }], - "doExpressions", - "exponentiationOperator", - "exportDefaultFrom", - "exportNamespaceFrom", - "functionBind", - "functionSent", - "objectRestSpread", - "trailingFunctionCommas", - "dynamicImport", - "numericSeparator", - "optionalChaining", - "importMeta", - "classPrivateProperties", - "bigInt", - "optionalCatchBinding", - "throwExpressions", - ["pipelineOperator", { proposal: "minimal" }], - "nullishCoalescingOperator", - "logicalAssignment", - ], - }; - - var ast; - try { - ast = parse(code, opts); - } catch (err) { - if (err instanceof SyntaxError) { - err.lineNumber = err.loc.line; - err.column = err.loc.column; - - if (opts.codeFrame) { - err.lineNumber = err.loc.line; - err.column = err.loc.column + 1; - - // remove trailing "(LINE:COLUMN)" acorn message and add in esprima syntax error message start - err.message = - "Line " + - err.lineNumber + - ": " + - err.message.replace(/ \((\d+):(\d+)\)$/, "") + - // add codeframe - "\n\n" + - codeFrameColumns( - code, - { - start: { - line: err.lineNumber, - column: err.column, - }, - }, - { highlightCode: true } - ); - } - } - - throw err; - } - - babylonToEspree(ast, traverse, tt, code); - - return ast; -}; diff --git a/node_modules/babel-eslint/lib/require-from-eslint.js b/node_modules/babel-eslint/lib/require-from-eslint.js deleted file mode 100644 index 3834689f..00000000 --- a/node_modules/babel-eslint/lib/require-from-eslint.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; - -const resolve = require("resolve"); -const eslintBase = require.resolve("eslint"); - -module.exports = function requireFromESLint(id) { - const path = resolve.sync(id, { basedir: eslintBase }); - return require(path); -}; diff --git a/node_modules/babel-eslint/lib/visitor-keys.js b/node_modules/babel-eslint/lib/visitor-keys.js deleted file mode 100644 index 921a0bb0..00000000 --- a/node_modules/babel-eslint/lib/visitor-keys.js +++ /dev/null @@ -1,15 +0,0 @@ -"use strict"; - -const BABEL_VISITOR_KEYS = require("@babel/types").VISITOR_KEYS; -const ESLINT_VISITOR_KEYS = require("eslint-visitor-keys").KEYS; - -module.exports = Object.assign( - { - Literal: ESLINT_VISITOR_KEYS.Literal, - MethodDefinition: ["decorators"].concat( - ESLINT_VISITOR_KEYS.MethodDefinition - ), - Property: ["decorators"].concat(ESLINT_VISITOR_KEYS.Property), - }, - BABEL_VISITOR_KEYS -); diff --git a/node_modules/babel-eslint/node_modules/.bin/parser b/node_modules/babel-eslint/node_modules/.bin/parser deleted file mode 120000 index ea2e5042..00000000 --- a/node_modules/babel-eslint/node_modules/.bin/parser +++ /dev/null @@ -1 +0,0 @@ -../../../@babel/parser/bin/babel-parser.js \ No newline at end of file diff --git a/node_modules/babel-eslint/package.json b/node_modules/babel-eslint/package.json deleted file mode 100644 index 9abee15d..00000000 --- a/node_modules/babel-eslint/package.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "name": "babel-eslint", - "version": "10.1.0", - "description": "Custom parser for ESLint", - "main": "lib/index.js", - "files": [ - "lib" - ], - "repository": { - "type": "git", - "url": "https://github.com/babel/babel-eslint.git" - }, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" - }, - "scripts": { - "test": "npm run lint && npm run test-only", - "test-only": "mocha && mocha --require test/fixtures/preprocess-to-patch.js", - "lint": "eslint lib test", - "fix": "eslint lib test --fix", - "precommit": "lint-staged", - "preversion": "npm test", - "changelog": "git log `git describe --tags --abbrev=0`..HEAD --pretty=format:' * %s (%an)' | grep -v 'Merge pull request'" - }, - "author": "Sebastian McKenzie ", - "license": "MIT", - "engines": { - "node": ">=6" - }, - "bugs": { - "url": "https://github.com/babel/babel-eslint/issues" - }, - "homepage": "https://github.com/babel/babel-eslint", - "peerDependencies": { - "eslint": ">= 4.12.1" - }, - "devDependencies": { - "babel-eslint": "^8.2.6", - "dedent": "^0.7.0", - "eslint": "^5.6.0", - "eslint-config-babel": "^7.0.1", - "eslint-plugin-flowtype": "^2.30.3", - "eslint-plugin-import": "^2.14.0", - "eslint-plugin-prettier": "^2.1.2", - "espree": "^3.5.2", - "husky": "^1.0.0-rc.13", - "lint-staged": "^7.2.2", - "mocha": "^5.0.1", - "prettier": "^1.4.4" - }, - "lint-staged": { - "*.js": [ - "eslint --format=codeframe --fix", - "git add" - ] - } -} diff --git a/node_modules/babel-plugin-jest-hoist/node_modules/@babel/template/node_modules/.bin/parser b/node_modules/babel-plugin-jest-hoist/node_modules/@babel/template/node_modules/.bin/parser index 97a06c36..ef1b372c 120000 --- a/node_modules/babel-plugin-jest-hoist/node_modules/@babel/template/node_modules/.bin/parser +++ b/node_modules/babel-plugin-jest-hoist/node_modules/@babel/template/node_modules/.bin/parser @@ -1 +1 @@ -../../../parser/bin/babel-parser.js \ No newline at end of file +../../../../../../jest-circus/node_modules/@babel/template/node_modules/@babel/parser/bin/babel-parser.js \ No newline at end of file diff --git a/node_modules/chardet/.travis.yml b/node_modules/chardet/.travis.yml deleted file mode 100644 index ceafed96..00000000 --- a/node_modules/chardet/.travis.yml +++ /dev/null @@ -1,5 +0,0 @@ -language: node_js -node_js: - - "6" - - "8" - - "10" diff --git a/node_modules/chardet/LICENSE b/node_modules/chardet/LICENSE deleted file mode 100644 index fcdc8796..00000000 --- a/node_modules/chardet/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (C) 2018 Dmitry Shirokov - -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. diff --git a/node_modules/chardet/README.md b/node_modules/chardet/README.md deleted file mode 100644 index 9e317d78..00000000 --- a/node_modules/chardet/README.md +++ /dev/null @@ -1,81 +0,0 @@ - -chardet [![Build Status](https://travis-ci.org/runk/node-chardet.png)](https://travis-ci.org/runk/node-chardet) -===== - -Chardet is a character detection module for NodeJS written in pure Javascript. -Module is based on ICU project http://site.icu-project.org/, which uses character -occurency analysis to determine the most probable encoding. - -## Installation - -``` -npm i chardet -``` - -## Usage - -To return the encoding with the highest confidence: -```javascript -var chardet = require('chardet'); -chardet.detect(Buffer.alloc('hello there!')); -// or -chardet.detectFile('/path/to/file', function(err, encoding) {}); -// or -chardet.detectFileSync('/path/to/file'); -``` - - -To return the full list of possible encodings: -```javascript -var chardet = require('chardet'); -chardet.detectAll(Buffer.alloc('hello there!')); -// or -chardet.detectFileAll('/path/to/file', function(err, encoding) {}); -// or -chardet.detectFileAllSync('/path/to/file'); - -//Returned value is an array of objects sorted by confidence value in decending order -//e.g. [{ confidence: 90, name: 'UTF-8'}, {confidence: 20, name: 'windows-1252', lang: 'fr'}] -``` - -## Working with large data sets - -Sometimes, when data set is huge and you want to optimize performace (in tradeoff of less accuracy), -you can sample only first N bytes of the buffer: - -```javascript -chardet.detectFile('/path/to/file', { sampleSize: 32 }, function(err, encoding) {}); -``` - -## Supported Encodings: - -* UTF-8 -* UTF-16 LE -* UTF-16 BE -* UTF-32 LE -* UTF-32 BE -* ISO-2022-JP -* ISO-2022-KR -* ISO-2022-CN -* Shift-JIS -* Big5 -* EUC-JP -* EUC-KR -* GB18030 -* ISO-8859-1 -* ISO-8859-2 -* ISO-8859-5 -* ISO-8859-6 -* ISO-8859-7 -* ISO-8859-8 -* ISO-8859-9 -* windows-1250 -* windows-1251 -* windows-1252 -* windows-1253 -* windows-1254 -* windows-1255 -* windows-1256 -* KOI8-R - -Currently only these encodings are supported, more will be added soon. diff --git a/node_modules/chardet/encoding/iso2022.js b/node_modules/chardet/encoding/iso2022.js deleted file mode 100644 index afff88ae..00000000 --- a/node_modules/chardet/encoding/iso2022.js +++ /dev/null @@ -1,141 +0,0 @@ -var util = require('util'), - Match = require ('../match'); - - -/** - * This is a superclass for the individual detectors for - * each of the detectable members of the ISO 2022 family - * of encodings. - */ - -function ISO_2022() {} - -ISO_2022.prototype.match = function(det) { - - /** - * Matching function shared among the 2022 detectors JP, CN and KR - * Counts up the number of legal an unrecognized escape sequences in - * the sample of text, and computes a score based on the total number & - * the proportion that fit the encoding. - * - * - * @param text the byte buffer containing text to analyse - * @param textLen the size of the text in the byte. - * @param escapeSequences the byte escape sequences to test for. - * @return match quality, in the range of 0-100. - */ - - var i, j; - var escN; - var hits = 0; - var misses = 0; - var shifts = 0; - var quality; - - // TODO: refactor me - var text = det.fInputBytes; - var textLen = det.fInputLen; - - scanInput: - for (i = 0; i < textLen; i++) { - if (text[i] == 0x1b) { - checkEscapes: - for (escN = 0; escN < this.escapeSequences.length; escN++) { - var seq = this.escapeSequences[escN]; - - if ((textLen - i) < seq.length) - continue checkEscapes; - - for (j = 1; j < seq.length; j++) - if (seq[j] != text[i + j]) - continue checkEscapes; - - - hits++; - i += seq.length - 1; - continue scanInput; - } - - misses++; - } - - // Shift in/out - if (text[i] == 0x0e || text[i] == 0x0f) - shifts++; - - } - - if (hits == 0) - return null; - - // - // Initial quality is based on relative proportion of recongized vs. - // unrecognized escape sequences. - // All good: quality = 100; - // half or less good: quality = 0; - // linear inbetween. - quality = (100 * hits - 100 * misses) / (hits + misses); - - // Back off quality if there were too few escape sequences seen. - // Include shifts in this computation, so that KR does not get penalized - // for having only a single Escape sequence, but many shifts. - if (hits + shifts < 5) - quality -= (5 - (hits + shifts)) * 10; - - return quality <= 0 ? null : new Match(det, this, quality); -}; - -module.exports.ISO_2022_JP = function() { - this.name = function() { - return 'ISO-2022-JP'; - }; - this.escapeSequences = [ - [ 0x1b, 0x24, 0x28, 0x43 ], // KS X 1001:1992 - [ 0x1b, 0x24, 0x28, 0x44 ], // JIS X 212-1990 - [ 0x1b, 0x24, 0x40 ], // JIS C 6226-1978 - [ 0x1b, 0x24, 0x41 ], // GB 2312-80 - [ 0x1b, 0x24, 0x42 ], // JIS X 208-1983 - [ 0x1b, 0x26, 0x40 ], // JIS X 208 1990, 1997 - [ 0x1b, 0x28, 0x42 ], // ASCII - [ 0x1b, 0x28, 0x48 ], // JIS-Roman - [ 0x1b, 0x28, 0x49 ], // Half-width katakana - [ 0x1b, 0x28, 0x4a ], // JIS-Roman - [ 0x1b, 0x2e, 0x41 ], // ISO 8859-1 - [ 0x1b, 0x2e, 0x46 ] // ISO 8859-7 - ]; -}; -util.inherits(module.exports.ISO_2022_JP, ISO_2022); - - - -module.exports.ISO_2022_KR = function() { - this.name = function() { - return 'ISO-2022-KR'; - }; - this.escapeSequences = [ - [ 0x1b, 0x24, 0x29, 0x43 ] - ]; -}; -util.inherits(module.exports.ISO_2022_KR, ISO_2022); - - - -module.exports.ISO_2022_CN = function() { - this.name = function() { - return 'ISO-2022-CN'; - }; - this.escapeSequences = [ - [ 0x1b, 0x24, 0x29, 0x41 ], // GB 2312-80 - [ 0x1b, 0x24, 0x29, 0x47 ], // CNS 11643-1992 Plane 1 - [ 0x1b, 0x24, 0x2A, 0x48 ], // CNS 11643-1992 Plane 2 - [ 0x1b, 0x24, 0x29, 0x45 ], // ISO-IR-165 - [ 0x1b, 0x24, 0x2B, 0x49 ], // CNS 11643-1992 Plane 3 - [ 0x1b, 0x24, 0x2B, 0x4A ], // CNS 11643-1992 Plane 4 - [ 0x1b, 0x24, 0x2B, 0x4B ], // CNS 11643-1992 Plane 5 - [ 0x1b, 0x24, 0x2B, 0x4C ], // CNS 11643-1992 Plane 6 - [ 0x1b, 0x24, 0x2B, 0x4D ], // CNS 11643-1992 Plane 7 - [ 0x1b, 0x4e ], // SS2 - [ 0x1b, 0x4f ] // SS3 - ]; -}; -util.inherits(module.exports.ISO_2022_CN, ISO_2022); diff --git a/node_modules/chardet/encoding/mbcs.js b/node_modules/chardet/encoding/mbcs.js deleted file mode 100644 index 5aa1557b..00000000 --- a/node_modules/chardet/encoding/mbcs.js +++ /dev/null @@ -1,502 +0,0 @@ -var util = require('util'), - Match = require ('../match'); - -/** - * Binary search implementation (recursive) - */ -function binarySearch(arr, searchValue) { - function find(arr, searchValue, left, right) { - if (right < left) - return -1; - - /* - int mid = mid = (left + right) / 2; - There is a bug in the above line; - Joshua Bloch suggests the following replacement: - */ - var mid = Math.floor((left + right) >>> 1); - if (searchValue > arr[mid]) - return find(arr, searchValue, mid + 1, right); - - if (searchValue < arr[mid]) - return find(arr, searchValue, left, mid - 1); - - return mid; - }; - - return find(arr, searchValue, 0, arr.length - 1); -}; - -// 'Character' iterated character class. -// Recognizers for specific mbcs encodings make their 'characters' available -// by providing a nextChar() function that fills in an instance of iteratedChar -// with the next char from the input. -// The returned characters are not converted to Unicode, but remain as the raw -// bytes (concatenated into an int) from the codepage data. -// -// For Asian charsets, use the raw input rather than the input that has been -// stripped of markup. Detection only considers multi-byte chars, effectively -// stripping markup anyway, and double byte chars do occur in markup too. -// -function IteratedChar() { - - this.charValue = 0; // 1-4 bytes from the raw input data - this.index = 0; - this.nextIndex = 0; - this.error = false; - this.done = false; - - this.reset = function() { - this.charValue = 0; - this.index = -1; - this.nextIndex = 0; - this.error = false; - this.done = false; - }; - - this.nextByte = function(det) { - if (this.nextIndex >= det.fRawLength) { - this.done = true; - return -1; - } - var byteValue = det.fRawInput[this.nextIndex++] & 0x00ff; - return byteValue; - }; -}; - - - -/** - * Asian double or multi-byte - charsets. - * Match is determined mostly by the input data adhering to the - * encoding scheme for the charset, and, optionally, - * frequency-of-occurence of characters. - */ - -function mbcs() {}; - -/** - * Test the match of this charset with the input text data - * which is obtained via the CharsetDetector object. - * - * @param det The CharsetDetector, which contains the input text - * to be checked for being in this charset. - * @return Two values packed into one int (Damn java, anyhow) - * bits 0-7: the match confidence, ranging from 0-100 - * bits 8-15: The match reason, an enum-like value. - */ -mbcs.prototype.match = function(det) { - - var singleByteCharCount = 0, //TODO Do we really need this? - doubleByteCharCount = 0, - commonCharCount = 0, - badCharCount = 0, - totalCharCount = 0, - confidence = 0; - - var iter = new IteratedChar(); - - detectBlock: { - for (iter.reset(); this.nextChar(iter, det);) { - totalCharCount++; - if (iter.error) { - badCharCount++; - } else { - var cv = iter.charValue & 0xFFFFFFFF; - - if (cv <= 0xff) { - singleByteCharCount++; - } else { - doubleByteCharCount++; - if (this.commonChars != null) { - // NOTE: This assumes that there are no 4-byte common chars. - if (binarySearch(this.commonChars, cv) >= 0) { - commonCharCount++; - } - } - } - } - if (badCharCount >= 2 && badCharCount * 5 >= doubleByteCharCount) { - // console.log('its here!') - // Bail out early if the byte data is not matching the encoding scheme. - break detectBlock; - } - } - - if (doubleByteCharCount <= 10 && badCharCount== 0) { - // Not many multi-byte chars. - if (doubleByteCharCount == 0 && totalCharCount < 10) { - // There weren't any multibyte sequences, and there was a low density of non-ASCII single bytes. - // We don't have enough data to have any confidence. - // Statistical analysis of single byte non-ASCII charcters would probably help here. - confidence = 0; - } - else { - // ASCII or ISO file? It's probably not our encoding, - // but is not incompatible with our encoding, so don't give it a zero. - confidence = 10; - } - break detectBlock; - } - - // - // No match if there are too many characters that don't fit the encoding scheme. - // (should we have zero tolerance for these?) - // - if (doubleByteCharCount < 20 * badCharCount) { - confidence = 0; - break detectBlock; - } - - if (this.commonChars == null) { - // We have no statistics on frequently occuring characters. - // Assess confidence purely on having a reasonable number of - // multi-byte characters (the more the better - confidence = 30 + doubleByteCharCount - 20 * badCharCount; - if (confidence > 100) { - confidence = 100; - } - } else { - // - // Frequency of occurence statistics exist. - // - var maxVal = Math.log(parseFloat(doubleByteCharCount) / 4); - var scaleFactor = 90.0 / maxVal; - confidence = Math.floor(Math.log(commonCharCount + 1) * scaleFactor + 10); - confidence = Math.min(confidence, 100); - } - } // end of detectBlock: - - return confidence == 0 ? null : new Match(det, this, confidence); -}; - -/** - * Get the next character (however many bytes it is) from the input data - * Subclasses for specific charset encodings must implement this function - * to get characters according to the rules of their encoding scheme. - * - * This function is not a method of class iteratedChar only because - * that would require a lot of extra derived classes, which is awkward. - * @param it The iteratedChar 'struct' into which the returned char is placed. - * @param det The charset detector, which is needed to get at the input byte data - * being iterated over. - * @return True if a character was returned, false at end of input. - */ - -mbcs.prototype.nextChar = function(iter, det) {}; - - - -/** - * Shift-JIS charset recognizer. - */ -module.exports.sjis = function() { - this.name = function() { - return 'Shift-JIS'; - }; - this.language = function() { - return 'ja'; - }; - - // TODO: This set of data comes from the character frequency- - // of-occurence analysis tool. The data needs to be moved - // into a resource and loaded from there. - this.commonChars = [ - 0x8140, 0x8141, 0x8142, 0x8145, 0x815b, 0x8169, 0x816a, 0x8175, 0x8176, 0x82a0, - 0x82a2, 0x82a4, 0x82a9, 0x82aa, 0x82ab, 0x82ad, 0x82af, 0x82b1, 0x82b3, 0x82b5, - 0x82b7, 0x82bd, 0x82be, 0x82c1, 0x82c4, 0x82c5, 0x82c6, 0x82c8, 0x82c9, 0x82cc, - 0x82cd, 0x82dc, 0x82e0, 0x82e7, 0x82e8, 0x82e9, 0x82ea, 0x82f0, 0x82f1, 0x8341, - 0x8343, 0x834e, 0x834f, 0x8358, 0x835e, 0x8362, 0x8367, 0x8375, 0x8376, 0x8389, - 0x838a, 0x838b, 0x838d, 0x8393, 0x8e96, 0x93fa, 0x95aa - ]; - - this.nextChar = function(iter, det) { - iter.index = iter.nextIndex; - iter.error = false; - - var firstByte; - firstByte = iter.charValue = iter.nextByte(det); - if (firstByte < 0) - return false; - - if (firstByte <= 0x7f || (firstByte > 0xa0 && firstByte <= 0xdf)) - return true; - - var secondByte = iter.nextByte(det); - if (secondByte < 0) - return false; - - iter.charValue = (firstByte << 8) | secondByte; - if (! ((secondByte >= 0x40 && secondByte <= 0x7f) || (secondByte >= 0x80 && secondByte <= 0xff))) { - // Illegal second byte value. - iter.error = true; - } - return true; - }; -}; -util.inherits(module.exports.sjis, mbcs); - - - -/** - * Big5 charset recognizer. - */ -module.exports.big5 = function() { - this.name = function() { - return 'Big5'; - }; - this.language = function() { - return 'zh'; - }; - // TODO: This set of data comes from the character frequency- - // of-occurence analysis tool. The data needs to be moved - // into a resource and loaded from there. - this.commonChars = [ - 0xa140, 0xa141, 0xa142, 0xa143, 0xa147, 0xa149, 0xa175, 0xa176, 0xa440, 0xa446, - 0xa447, 0xa448, 0xa451, 0xa454, 0xa457, 0xa464, 0xa46a, 0xa46c, 0xa477, 0xa4a3, - 0xa4a4, 0xa4a7, 0xa4c1, 0xa4ce, 0xa4d1, 0xa4df, 0xa4e8, 0xa4fd, 0xa540, 0xa548, - 0xa558, 0xa569, 0xa5cd, 0xa5e7, 0xa657, 0xa661, 0xa662, 0xa668, 0xa670, 0xa6a8, - 0xa6b3, 0xa6b9, 0xa6d3, 0xa6db, 0xa6e6, 0xa6f2, 0xa740, 0xa751, 0xa759, 0xa7da, - 0xa8a3, 0xa8a5, 0xa8ad, 0xa8d1, 0xa8d3, 0xa8e4, 0xa8fc, 0xa9c0, 0xa9d2, 0xa9f3, - 0xaa6b, 0xaaba, 0xaabe, 0xaacc, 0xaafc, 0xac47, 0xac4f, 0xacb0, 0xacd2, 0xad59, - 0xaec9, 0xafe0, 0xb0ea, 0xb16f, 0xb2b3, 0xb2c4, 0xb36f, 0xb44c, 0xb44e, 0xb54c, - 0xb5a5, 0xb5bd, 0xb5d0, 0xb5d8, 0xb671, 0xb7ed, 0xb867, 0xb944, 0xbad8, 0xbb44, - 0xbba1, 0xbdd1, 0xc2c4, 0xc3b9, 0xc440, 0xc45f - ]; - this.nextChar = function(iter, det) { - iter.index = iter.nextIndex; - iter.error = false; - - var firstByte = iter.charValue = iter.nextByte(det); - - if (firstByte < 0) - return false; - - // single byte character. - if (firstByte <= 0x7f || firstByte == 0xff) - return true; - - var secondByte = iter.nextByte(det); - - if (secondByte < 0) - return false; - - iter.charValue = (iter.charValue << 8) | secondByte; - - if (secondByte < 0x40 || secondByte == 0x7f || secondByte == 0xff) - iter.error = true; - - return true; - }; -}; -util.inherits(module.exports.big5, mbcs); - - - -/** - * EUC charset recognizers. One abstract class that provides the common function - * for getting the next character according to the EUC encoding scheme, - * and nested derived classes for EUC_KR, EUC_JP, EUC_CN. - * - * Get the next character value for EUC based encodings. - * Character 'value' is simply the raw bytes that make up the character - * packed into an int. - */ -function eucNextChar(iter, det) { - iter.index = iter.nextIndex; - iter.error = false; - var firstByte = 0; - var secondByte = 0; - var thirdByte = 0; - //int fourthByte = 0; - buildChar: { - firstByte = iter.charValue = iter.nextByte(det); - if (firstByte < 0) { - // Ran off the end of the input data - iter.done = true; - break buildChar; - } - if (firstByte <= 0x8d) { - // single byte char - break buildChar; - } - secondByte = iter.nextByte(det); - iter.charValue = (iter.charValue << 8) | secondByte; - if (firstByte >= 0xA1 && firstByte <= 0xfe) { - // Two byte Char - if (secondByte < 0xa1) { - iter.error = true; - } - break buildChar; - } - if (firstByte == 0x8e) { - // Code Set 2. - // In EUC-JP, total char size is 2 bytes, only one byte of actual char value. - // In EUC-TW, total char size is 4 bytes, three bytes contribute to char value. - // We don't know which we've got. - // Treat it like EUC-JP. If the data really was EUC-TW, the following two - // bytes will look like a well formed 2 byte char. - if (secondByte < 0xa1) { - iter.error = true; - } - break buildChar; - } - if (firstByte == 0x8f) { - // Code set 3. - // Three byte total char size, two bytes of actual char value. - thirdByte = iter.nextByte(det); - iter.charValue = (iter.charValue << 8) | thirdByte; - if (thirdByte < 0xa1) { - iter.error = true; - } - } - } - return iter.done == false; -}; - - - -/** - * The charset recognize for EUC-JP. A singleton instance of this class - * is created and kept by the public CharsetDetector class - */ -module.exports.euc_jp = function() { - this.name = function() { - return 'EUC-JP'; - }; - this.language = function() { - return 'ja'; - }; - - // TODO: This set of data comes from the character frequency- - // of-occurence analysis tool. The data needs to be moved - // into a resource and loaded from there. - this.commonChars = [ - 0xa1a1, 0xa1a2, 0xa1a3, 0xa1a6, 0xa1bc, 0xa1ca, 0xa1cb, 0xa1d6, 0xa1d7, 0xa4a2, - 0xa4a4, 0xa4a6, 0xa4a8, 0xa4aa, 0xa4ab, 0xa4ac, 0xa4ad, 0xa4af, 0xa4b1, 0xa4b3, - 0xa4b5, 0xa4b7, 0xa4b9, 0xa4bb, 0xa4bd, 0xa4bf, 0xa4c0, 0xa4c1, 0xa4c3, 0xa4c4, - 0xa4c6, 0xa4c7, 0xa4c8, 0xa4c9, 0xa4ca, 0xa4cb, 0xa4ce, 0xa4cf, 0xa4d0, 0xa4de, - 0xa4df, 0xa4e1, 0xa4e2, 0xa4e4, 0xa4e8, 0xa4e9, 0xa4ea, 0xa4eb, 0xa4ec, 0xa4ef, - 0xa4f2, 0xa4f3, 0xa5a2, 0xa5a3, 0xa5a4, 0xa5a6, 0xa5a7, 0xa5aa, 0xa5ad, 0xa5af, - 0xa5b0, 0xa5b3, 0xa5b5, 0xa5b7, 0xa5b8, 0xa5b9, 0xa5bf, 0xa5c3, 0xa5c6, 0xa5c7, - 0xa5c8, 0xa5c9, 0xa5cb, 0xa5d0, 0xa5d5, 0xa5d6, 0xa5d7, 0xa5de, 0xa5e0, 0xa5e1, - 0xa5e5, 0xa5e9, 0xa5ea, 0xa5eb, 0xa5ec, 0xa5ed, 0xa5f3, 0xb8a9, 0xb9d4, 0xbaee, - 0xbbc8, 0xbef0, 0xbfb7, 0xc4ea, 0xc6fc, 0xc7bd, 0xcab8, 0xcaf3, 0xcbdc, 0xcdd1 - ]; - - this.nextChar = eucNextChar; -}; -util.inherits(module.exports.euc_jp, mbcs); - - - -/** - * The charset recognize for EUC-KR. A singleton instance of this class - * is created and kept by the public CharsetDetector class - */ -module.exports.euc_kr = function() { - this.name = function() { - return 'EUC-KR'; - }; - this.language = function() { - return 'ko'; - }; - - // TODO: This set of data comes from the character frequency- - // of-occurence analysis tool. The data needs to be moved - // into a resource and loaded from there. - this.commonChars = [ - 0xb0a1, 0xb0b3, 0xb0c5, 0xb0cd, 0xb0d4, 0xb0e6, 0xb0ed, 0xb0f8, 0xb0fa, 0xb0fc, - 0xb1b8, 0xb1b9, 0xb1c7, 0xb1d7, 0xb1e2, 0xb3aa, 0xb3bb, 0xb4c2, 0xb4cf, 0xb4d9, - 0xb4eb, 0xb5a5, 0xb5b5, 0xb5bf, 0xb5c7, 0xb5e9, 0xb6f3, 0xb7af, 0xb7c2, 0xb7ce, - 0xb8a6, 0xb8ae, 0xb8b6, 0xb8b8, 0xb8bb, 0xb8e9, 0xb9ab, 0xb9ae, 0xb9cc, 0xb9ce, - 0xb9fd, 0xbab8, 0xbace, 0xbad0, 0xbaf1, 0xbbe7, 0xbbf3, 0xbbfd, 0xbcad, 0xbcba, - 0xbcd2, 0xbcf6, 0xbdba, 0xbdc0, 0xbdc3, 0xbdc5, 0xbec6, 0xbec8, 0xbedf, 0xbeee, - 0xbef8, 0xbefa, 0xbfa1, 0xbfa9, 0xbfc0, 0xbfe4, 0xbfeb, 0xbfec, 0xbff8, 0xc0a7, - 0xc0af, 0xc0b8, 0xc0ba, 0xc0bb, 0xc0bd, 0xc0c7, 0xc0cc, 0xc0ce, 0xc0cf, 0xc0d6, - 0xc0da, 0xc0e5, 0xc0fb, 0xc0fc, 0xc1a4, 0xc1a6, 0xc1b6, 0xc1d6, 0xc1df, 0xc1f6, - 0xc1f8, 0xc4a1, 0xc5cd, 0xc6ae, 0xc7cf, 0xc7d1, 0xc7d2, 0xc7d8, 0xc7e5, 0xc8ad - ]; - - this.nextChar = eucNextChar; -}; -util.inherits(module.exports.euc_kr, mbcs); - - - -/** - * GB-18030 recognizer. Uses simplified Chinese statistics. - */ -module.exports.gb_18030 = function() { - this.name = function() { - return 'GB18030'; - }; - this.language = function() { - return 'zh'; - }; - - /* - * Get the next character value for EUC based encodings. - * Character 'value' is simply the raw bytes that make up the character - * packed into an int. - */ - this.nextChar = function(iter, det) { - iter.index = iter.nextIndex; - iter.error = false; - var firstByte = 0; - var secondByte = 0; - var thirdByte = 0; - var fourthByte = 0; - buildChar: { - firstByte = iter.charValue = iter.nextByte(det); - if (firstByte < 0) { - // Ran off the end of the input data - iter.done = true; - break buildChar; - } - if (firstByte <= 0x80) { - // single byte char - break buildChar; - } - secondByte = iter.nextByte(det); - iter.charValue = (iter.charValue << 8) | secondByte; - if (firstByte >= 0x81 && firstByte <= 0xFE) { - // Two byte Char - if ((secondByte >= 0x40 && secondByte <= 0x7E) || (secondByte >=80 && secondByte <= 0xFE)) { - break buildChar; - } - // Four byte char - if (secondByte >= 0x30 && secondByte <= 0x39) { - thirdByte = iter.nextByte(det); - if (thirdByte >= 0x81 && thirdByte <= 0xFE) { - fourthByte = iter.nextByte(det); - if (fourthByte >= 0x30 && fourthByte <= 0x39) { - iter.charValue = (iter.charValue << 16) | (thirdByte << 8) | fourthByte; - break buildChar; - } - } - } - iter.error = true; - break buildChar; - } - } - return iter.done == false; - }; - - // TODO: This set of data comes from the character frequency- - // of-occurence analysis tool. The data needs to be moved - // into a resource and loaded from there. - this.commonChars = [ - 0xa1a1, 0xa1a2, 0xa1a3, 0xa1a4, 0xa1b0, 0xa1b1, 0xa1f1, 0xa1f3, 0xa3a1, 0xa3ac, - 0xa3ba, 0xb1a8, 0xb1b8, 0xb1be, 0xb2bb, 0xb3c9, 0xb3f6, 0xb4f3, 0xb5bd, 0xb5c4, - 0xb5e3, 0xb6af, 0xb6d4, 0xb6e0, 0xb7a2, 0xb7a8, 0xb7bd, 0xb7d6, 0xb7dd, 0xb8b4, - 0xb8df, 0xb8f6, 0xb9ab, 0xb9c9, 0xb9d8, 0xb9fa, 0xb9fd, 0xbacd, 0xbba7, 0xbbd6, - 0xbbe1, 0xbbfa, 0xbcbc, 0xbcdb, 0xbcfe, 0xbdcc, 0xbecd, 0xbedd, 0xbfb4, 0xbfc6, - 0xbfc9, 0xc0b4, 0xc0ed, 0xc1cb, 0xc2db, 0xc3c7, 0xc4dc, 0xc4ea, 0xc5cc, 0xc6f7, - 0xc7f8, 0xc8ab, 0xc8cb, 0xc8d5, 0xc8e7, 0xc9cf, 0xc9fa, 0xcab1, 0xcab5, 0xcac7, - 0xcad0, 0xcad6, 0xcaf5, 0xcafd, 0xccec, 0xcdf8, 0xceaa, 0xcec4, 0xced2, 0xcee5, - 0xcfb5, 0xcfc2, 0xcfd6, 0xd0c2, 0xd0c5, 0xd0d0, 0xd0d4, 0xd1a7, 0xd2aa, 0xd2b2, - 0xd2b5, 0xd2bb, 0xd2d4, 0xd3c3, 0xd3d0, 0xd3fd, 0xd4c2, 0xd4da, 0xd5e2, 0xd6d0 - ]; -}; -util.inherits(module.exports.gb_18030, mbcs); diff --git a/node_modules/chardet/encoding/sbcs.js b/node_modules/chardet/encoding/sbcs.js deleted file mode 100644 index 80d525e6..00000000 --- a/node_modules/chardet/encoding/sbcs.js +++ /dev/null @@ -1,907 +0,0 @@ -var util = require('util'), - Match = require ('../match'); - -/** - * This class recognizes single-byte encodings. Because the encoding scheme is so - * simple, language statistics are used to do the matching. - */ - -function NGramParser(theNgramList, theByteMap) { - var N_GRAM_MASK = 0xFFFFFF; - - this.byteIndex = 0; - this.ngram = 0; - - this.ngramList = theNgramList; - this.byteMap = theByteMap; - - this.ngramCount = 0; - this.hitCount = 0; - - this.spaceChar; - - /* - * Binary search for value in table, which must have exactly 64 entries. - */ - this.search = function(table, value) { - var index = 0; - - if (table[index + 32] <= value) index += 32; - if (table[index + 16] <= value) index += 16; - if (table[index + 8] <= value) index += 8; - if (table[index + 4] <= value) index += 4; - if (table[index + 2] <= value) index += 2; - if (table[index + 1] <= value) index += 1; - if (table[index] > value) index -= 1; - - if (index < 0 || table[index] != value) - return -1; - - return index; - }; - - this.lookup = function(thisNgram) { - this.ngramCount += 1; - if (this.search(this.ngramList, thisNgram) >= 0) { - this.hitCount += 1; - } - }; - - this.addByte = function(b) { - this.ngram = ((this.ngram << 8) + (b & 0xFF)) & N_GRAM_MASK; - this.lookup(this.ngram); - } - - this.nextByte = function(det) { - if (this.byteIndex >= det.fInputLen) - return -1; - - return det.fInputBytes[this.byteIndex++] & 0xFF; - } - - this.parse = function(det, spaceCh) { - var b, ignoreSpace = false; - this.spaceChar = spaceCh; - - while ((b = this.nextByte(det)) >= 0) { - var mb = this.byteMap[b]; - - // TODO: 0x20 might not be a space in all character sets... - if (mb != 0) { - if (!(mb == this.spaceChar && ignoreSpace)) { - this.addByte(mb); - } - - ignoreSpace = (mb == this.spaceChar); - } - } - - // TODO: Is this OK? The buffer could have ended in the middle of a word... - this.addByte(this.spaceChar); - - var rawPercent = this.hitCount / this.ngramCount; - - // TODO - This is a bit of a hack to take care of a case - // were we were getting a confidence of 135... - if (rawPercent > 0.33) - return 98; - - return Math.floor(rawPercent * 300.0); - }; -}; - -function NGramsPlusLang(la, ng) { - this.fLang = la; - this.fNGrams = ng; -}; - -function sbcs() {}; -sbcs.prototype.spaceChar = 0x20; -sbcs.prototype.ngrams = function() {}; -sbcs.prototype.byteMap = function() {}; -sbcs.prototype.match = function(det) { - - var ngrams = this.ngrams(); - var multiple = (Array.isArray(ngrams) && ngrams[0] instanceof NGramsPlusLang); - - if (!multiple) { - var parser = new NGramParser(ngrams, this.byteMap()); - var confidence = parser.parse(det, this.spaceChar); - return confidence <= 0 ? null : new Match(det, this, confidence); - } - - var bestConfidenceSoFar = -1; - var lang = null; - - for (var i = ngrams.length - 1; i >= 0; i--) { - var ngl = ngrams[i]; - - var parser = new NGramParser(ngl.fNGrams, this.byteMap()); - var confidence = parser.parse(det, this.spaceChar); - if (confidence > bestConfidenceSoFar) { - bestConfidenceSoFar = confidence; - lang = ngl.fLang; - } - } - - var name = this.name(det); - return bestConfidenceSoFar <= 0 ? null : new Match(det, this, bestConfidenceSoFar, name, lang); -}; - - -module.exports.ISO_8859_1 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0xAA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0xB5, 0x20, 0x20, - 0x20, 0x20, 0xBA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0x20, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0x20, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF - ]; - }; - - this.ngrams = function() { - return [ - new NGramsPlusLang('da', [ - 0x206166, 0x206174, 0x206465, 0x20656E, 0x206572, 0x20666F, 0x206861, 0x206920, - 0x206D65, 0x206F67, 0x2070E5, 0x207369, 0x207374, 0x207469, 0x207669, 0x616620, - 0x616E20, 0x616E64, 0x617220, 0x617420, 0x646520, 0x64656E, 0x646572, 0x646574, - 0x652073, 0x656420, 0x656465, 0x656E20, 0x656E64, 0x657220, 0x657265, 0x657320, - 0x657420, 0x666F72, 0x676520, 0x67656E, 0x676572, 0x696765, 0x696C20, 0x696E67, - 0x6B6520, 0x6B6B65, 0x6C6572, 0x6C6967, 0x6C6C65, 0x6D6564, 0x6E6465, 0x6E6520, - 0x6E6720, 0x6E6765, 0x6F6720, 0x6F6D20, 0x6F7220, 0x70E520, 0x722064, 0x722065, - 0x722073, 0x726520, 0x737465, 0x742073, 0x746520, 0x746572, 0x74696C, 0x766572 - ]), - new NGramsPlusLang('de', [ - 0x20616E, 0x206175, 0x206265, 0x206461, 0x206465, 0x206469, 0x206569, 0x206765, - 0x206861, 0x20696E, 0x206D69, 0x207363, 0x207365, 0x20756E, 0x207665, 0x20766F, - 0x207765, 0x207A75, 0x626572, 0x636820, 0x636865, 0x636874, 0x646173, 0x64656E, - 0x646572, 0x646965, 0x652064, 0x652073, 0x65696E, 0x656974, 0x656E20, 0x657220, - 0x657320, 0x67656E, 0x68656E, 0x687420, 0x696368, 0x696520, 0x696E20, 0x696E65, - 0x697420, 0x6C6963, 0x6C6C65, 0x6E2061, 0x6E2064, 0x6E2073, 0x6E6420, 0x6E6465, - 0x6E6520, 0x6E6720, 0x6E6765, 0x6E7465, 0x722064, 0x726465, 0x726569, 0x736368, - 0x737465, 0x742064, 0x746520, 0x74656E, 0x746572, 0x756E64, 0x756E67, 0x766572 - ]), - new NGramsPlusLang('en', [ - 0x206120, 0x20616E, 0x206265, 0x20636F, 0x20666F, 0x206861, 0x206865, 0x20696E, - 0x206D61, 0x206F66, 0x207072, 0x207265, 0x207361, 0x207374, 0x207468, 0x20746F, - 0x207768, 0x616964, 0x616C20, 0x616E20, 0x616E64, 0x617320, 0x617420, 0x617465, - 0x617469, 0x642061, 0x642074, 0x652061, 0x652073, 0x652074, 0x656420, 0x656E74, - 0x657220, 0x657320, 0x666F72, 0x686174, 0x686520, 0x686572, 0x696420, 0x696E20, - 0x696E67, 0x696F6E, 0x697320, 0x6E2061, 0x6E2074, 0x6E6420, 0x6E6720, 0x6E7420, - 0x6F6620, 0x6F6E20, 0x6F7220, 0x726520, 0x727320, 0x732061, 0x732074, 0x736169, - 0x737420, 0x742074, 0x746572, 0x746861, 0x746865, 0x74696F, 0x746F20, 0x747320 - ]), - new NGramsPlusLang('es', [ - 0x206120, 0x206361, 0x20636F, 0x206465, 0x20656C, 0x20656E, 0x206573, 0x20696E, - 0x206C61, 0x206C6F, 0x207061, 0x20706F, 0x207072, 0x207175, 0x207265, 0x207365, - 0x20756E, 0x207920, 0x612063, 0x612064, 0x612065, 0x61206C, 0x612070, 0x616369, - 0x61646F, 0x616C20, 0x617220, 0x617320, 0x6369F3, 0x636F6E, 0x646520, 0x64656C, - 0x646F20, 0x652064, 0x652065, 0x65206C, 0x656C20, 0x656E20, 0x656E74, 0x657320, - 0x657374, 0x69656E, 0x69F36E, 0x6C6120, 0x6C6F73, 0x6E2065, 0x6E7465, 0x6F2064, - 0x6F2065, 0x6F6E20, 0x6F7220, 0x6F7320, 0x706172, 0x717565, 0x726120, 0x726573, - 0x732064, 0x732065, 0x732070, 0x736520, 0x746520, 0x746F20, 0x756520, 0xF36E20 - ]), - new NGramsPlusLang('fr', [ - 0x206175, 0x20636F, 0x206461, 0x206465, 0x206475, 0x20656E, 0x206574, 0x206C61, - 0x206C65, 0x207061, 0x20706F, 0x207072, 0x207175, 0x207365, 0x20736F, 0x20756E, - 0x20E020, 0x616E74, 0x617469, 0x636520, 0x636F6E, 0x646520, 0x646573, 0x647520, - 0x652061, 0x652063, 0x652064, 0x652065, 0x65206C, 0x652070, 0x652073, 0x656E20, - 0x656E74, 0x657220, 0x657320, 0x657420, 0x657572, 0x696F6E, 0x697320, 0x697420, - 0x6C6120, 0x6C6520, 0x6C6573, 0x6D656E, 0x6E2064, 0x6E6520, 0x6E7320, 0x6E7420, - 0x6F6E20, 0x6F6E74, 0x6F7572, 0x717565, 0x72206C, 0x726520, 0x732061, 0x732064, - 0x732065, 0x73206C, 0x732070, 0x742064, 0x746520, 0x74696F, 0x756520, 0x757220 - ]), - new NGramsPlusLang('it', [ - 0x20616C, 0x206368, 0x20636F, 0x206465, 0x206469, 0x206520, 0x20696C, 0x20696E, - 0x206C61, 0x207065, 0x207072, 0x20756E, 0x612063, 0x612064, 0x612070, 0x612073, - 0x61746F, 0x636865, 0x636F6E, 0x64656C, 0x646920, 0x652061, 0x652063, 0x652064, - 0x652069, 0x65206C, 0x652070, 0x652073, 0x656C20, 0x656C6C, 0x656E74, 0x657220, - 0x686520, 0x692061, 0x692063, 0x692064, 0x692073, 0x696120, 0x696C20, 0x696E20, - 0x696F6E, 0x6C6120, 0x6C6520, 0x6C6920, 0x6C6C61, 0x6E6520, 0x6E6920, 0x6E6F20, - 0x6E7465, 0x6F2061, 0x6F2064, 0x6F2069, 0x6F2073, 0x6F6E20, 0x6F6E65, 0x706572, - 0x726120, 0x726520, 0x736920, 0x746120, 0x746520, 0x746920, 0x746F20, 0x7A696F - ]), - new NGramsPlusLang('nl', [ - 0x20616C, 0x206265, 0x206461, 0x206465, 0x206469, 0x206565, 0x20656E, 0x206765, - 0x206865, 0x20696E, 0x206D61, 0x206D65, 0x206F70, 0x207465, 0x207661, 0x207665, - 0x20766F, 0x207765, 0x207A69, 0x61616E, 0x616172, 0x616E20, 0x616E64, 0x617220, - 0x617420, 0x636874, 0x646520, 0x64656E, 0x646572, 0x652062, 0x652076, 0x65656E, - 0x656572, 0x656E20, 0x657220, 0x657273, 0x657420, 0x67656E, 0x686574, 0x696520, - 0x696E20, 0x696E67, 0x697320, 0x6E2062, 0x6E2064, 0x6E2065, 0x6E2068, 0x6E206F, - 0x6E2076, 0x6E6465, 0x6E6720, 0x6F6E64, 0x6F6F72, 0x6F7020, 0x6F7220, 0x736368, - 0x737465, 0x742064, 0x746520, 0x74656E, 0x746572, 0x76616E, 0x766572, 0x766F6F - ]), - new NGramsPlusLang('no', [ - 0x206174, 0x206176, 0x206465, 0x20656E, 0x206572, 0x20666F, 0x206861, 0x206920, - 0x206D65, 0x206F67, 0x2070E5, 0x207365, 0x20736B, 0x20736F, 0x207374, 0x207469, - 0x207669, 0x20E520, 0x616E64, 0x617220, 0x617420, 0x646520, 0x64656E, 0x646574, - 0x652073, 0x656420, 0x656E20, 0x656E65, 0x657220, 0x657265, 0x657420, 0x657474, - 0x666F72, 0x67656E, 0x696B6B, 0x696C20, 0x696E67, 0x6B6520, 0x6B6B65, 0x6C6520, - 0x6C6C65, 0x6D6564, 0x6D656E, 0x6E2073, 0x6E6520, 0x6E6720, 0x6E6765, 0x6E6E65, - 0x6F6720, 0x6F6D20, 0x6F7220, 0x70E520, 0x722073, 0x726520, 0x736F6D, 0x737465, - 0x742073, 0x746520, 0x74656E, 0x746572, 0x74696C, 0x747420, 0x747465, 0x766572 - ]), - new NGramsPlusLang('pt', [ - 0x206120, 0x20636F, 0x206461, 0x206465, 0x20646F, 0x206520, 0x206573, 0x206D61, - 0x206E6F, 0x206F20, 0x207061, 0x20706F, 0x207072, 0x207175, 0x207265, 0x207365, - 0x20756D, 0x612061, 0x612063, 0x612064, 0x612070, 0x616465, 0x61646F, 0x616C20, - 0x617220, 0x617261, 0x617320, 0x636F6D, 0x636F6E, 0x646120, 0x646520, 0x646F20, - 0x646F73, 0x652061, 0x652064, 0x656D20, 0x656E74, 0x657320, 0x657374, 0x696120, - 0x696361, 0x6D656E, 0x6E7465, 0x6E746F, 0x6F2061, 0x6F2063, 0x6F2064, 0x6F2065, - 0x6F2070, 0x6F7320, 0x706172, 0x717565, 0x726120, 0x726573, 0x732061, 0x732064, - 0x732065, 0x732070, 0x737461, 0x746520, 0x746F20, 0x756520, 0xE36F20, 0xE7E36F - ]), - new NGramsPlusLang('sv', [ - 0x206174, 0x206176, 0x206465, 0x20656E, 0x2066F6, 0x206861, 0x206920, 0x20696E, - 0x206B6F, 0x206D65, 0x206F63, 0x2070E5, 0x20736B, 0x20736F, 0x207374, 0x207469, - 0x207661, 0x207669, 0x20E472, 0x616465, 0x616E20, 0x616E64, 0x617220, 0x617474, - 0x636820, 0x646520, 0x64656E, 0x646572, 0x646574, 0x656420, 0x656E20, 0x657220, - 0x657420, 0x66F672, 0x67656E, 0x696C6C, 0x696E67, 0x6B6120, 0x6C6C20, 0x6D6564, - 0x6E2073, 0x6E6120, 0x6E6465, 0x6E6720, 0x6E6765, 0x6E696E, 0x6F6368, 0x6F6D20, - 0x6F6E20, 0x70E520, 0x722061, 0x722073, 0x726120, 0x736B61, 0x736F6D, 0x742073, - 0x746120, 0x746520, 0x746572, 0x74696C, 0x747420, 0x766172, 0xE47220, 0xF67220, - ]) - ]; - }; - - this.name = function(det) { - return (det && det.fC1Bytes) ? 'windows-1252' : 'ISO-8859-1'; - }; -}; -util.inherits(module.exports.ISO_8859_1, sbcs); - - -module.exports.ISO_8859_2 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0xB1, 0x20, 0xB3, 0x20, 0xB5, 0xB6, 0x20, - 0x20, 0xB9, 0xBA, 0xBB, 0xBC, 0x20, 0xBE, 0xBF, - 0x20, 0xB1, 0x20, 0xB3, 0x20, 0xB5, 0xB6, 0xB7, - 0x20, 0xB9, 0xBA, 0xBB, 0xBC, 0x20, 0xBE, 0xBF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0x20, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0x20, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x20 - ]; - } - - this.ngrams = function() { - return [ - new NGramsPlusLang('cs', [ - 0x206120, 0x206279, 0x20646F, 0x206A65, 0x206E61, 0x206E65, 0x206F20, 0x206F64, - 0x20706F, 0x207072, 0x2070F8, 0x20726F, 0x207365, 0x20736F, 0x207374, 0x20746F, - 0x207620, 0x207679, 0x207A61, 0x612070, 0x636520, 0x636820, 0x652070, 0x652073, - 0x652076, 0x656D20, 0x656EED, 0x686F20, 0x686F64, 0x697374, 0x6A6520, 0x6B7465, - 0x6C6520, 0x6C6920, 0x6E6120, 0x6EE920, 0x6EEC20, 0x6EED20, 0x6F2070, 0x6F646E, - 0x6F6A69, 0x6F7374, 0x6F7520, 0x6F7661, 0x706F64, 0x706F6A, 0x70726F, 0x70F865, - 0x736520, 0x736F75, 0x737461, 0x737469, 0x73746E, 0x746572, 0x746EED, 0x746F20, - 0x752070, 0xBE6520, 0xE16EED, 0xE9686F, 0xED2070, 0xED2073, 0xED6D20, 0xF86564, - ]), - new NGramsPlusLang('hu', [ - 0x206120, 0x20617A, 0x206265, 0x206567, 0x20656C, 0x206665, 0x206861, 0x20686F, - 0x206973, 0x206B65, 0x206B69, 0x206BF6, 0x206C65, 0x206D61, 0x206D65, 0x206D69, - 0x206E65, 0x20737A, 0x207465, 0x20E973, 0x612061, 0x61206B, 0x61206D, 0x612073, - 0x616B20, 0x616E20, 0x617A20, 0x62616E, 0x62656E, 0x656779, 0x656B20, 0x656C20, - 0x656C65, 0x656D20, 0x656E20, 0x657265, 0x657420, 0x657465, 0x657474, 0x677920, - 0x686F67, 0x696E74, 0x697320, 0x6B2061, 0x6BF67A, 0x6D6567, 0x6D696E, 0x6E2061, - 0x6E616B, 0x6E656B, 0x6E656D, 0x6E7420, 0x6F6779, 0x732061, 0x737A65, 0x737A74, - 0x737AE1, 0x73E967, 0x742061, 0x747420, 0x74E173, 0x7A6572, 0xE16E20, 0xE97320, - ]), - new NGramsPlusLang('pl', [ - 0x20637A, 0x20646F, 0x206920, 0x206A65, 0x206B6F, 0x206D61, 0x206D69, 0x206E61, - 0x206E69, 0x206F64, 0x20706F, 0x207072, 0x207369, 0x207720, 0x207769, 0x207779, - 0x207A20, 0x207A61, 0x612070, 0x612077, 0x616E69, 0x636820, 0x637A65, 0x637A79, - 0x646F20, 0x647A69, 0x652070, 0x652073, 0x652077, 0x65207A, 0x65676F, 0x656A20, - 0x656D20, 0x656E69, 0x676F20, 0x696120, 0x696520, 0x69656A, 0x6B6120, 0x6B6920, - 0x6B6965, 0x6D6965, 0x6E6120, 0x6E6961, 0x6E6965, 0x6F2070, 0x6F7761, 0x6F7769, - 0x706F6C, 0x707261, 0x70726F, 0x70727A, 0x727A65, 0x727A79, 0x7369EA, 0x736B69, - 0x737461, 0x776965, 0x796368, 0x796D20, 0x7A6520, 0x7A6965, 0x7A7920, 0xF37720, - ]), - new NGramsPlusLang('ro', [ - 0x206120, 0x206163, 0x206361, 0x206365, 0x20636F, 0x206375, 0x206465, 0x206469, - 0x206C61, 0x206D61, 0x207065, 0x207072, 0x207365, 0x2073E3, 0x20756E, 0x20BA69, - 0x20EE6E, 0x612063, 0x612064, 0x617265, 0x617420, 0x617465, 0x617520, 0x636172, - 0x636F6E, 0x637520, 0x63E320, 0x646520, 0x652061, 0x652063, 0x652064, 0x652070, - 0x652073, 0x656120, 0x656920, 0x656C65, 0x656E74, 0x657374, 0x692061, 0x692063, - 0x692064, 0x692070, 0x696520, 0x696920, 0x696E20, 0x6C6120, 0x6C6520, 0x6C6F72, - 0x6C7569, 0x6E6520, 0x6E7472, 0x6F7220, 0x70656E, 0x726520, 0x726561, 0x727520, - 0x73E320, 0x746520, 0x747275, 0x74E320, 0x756920, 0x756C20, 0xBA6920, 0xEE6E20, - ]) - ]; - }; - - this.name = function(det) { - return (det && det.fC1Bytes) ? 'windows-1250' : 'ISO-8859-2'; - }; -}; -util.inherits(module.exports.ISO_8859_2, sbcs); - - -module.exports.ISO_8859_5 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0x20, 0xFE, 0xFF, - 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, - 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, - 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0x20, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0x20, 0xFE, 0xFF - ]; - }; - - this.ngrams = function() { - return [ - 0x20D220, 0x20D2DE, 0x20D4DE, 0x20D7D0, 0x20D820, 0x20DAD0, 0x20DADE, 0x20DDD0, - 0x20DDD5, 0x20DED1, 0x20DFDE, 0x20DFE0, 0x20E0D0, 0x20E1DE, 0x20E1E2, 0x20E2DE, - 0x20E7E2, 0x20EDE2, 0xD0DDD8, 0xD0E2EC, 0xD3DE20, 0xD5DBEC, 0xD5DDD8, 0xD5E1E2, - 0xD5E220, 0xD820DF, 0xD8D520, 0xD8D820, 0xD8EF20, 0xDBD5DD, 0xDBD820, 0xDBECDD, - 0xDDD020, 0xDDD520, 0xDDD8D5, 0xDDD8EF, 0xDDDE20, 0xDDDED2, 0xDE20D2, 0xDE20DF, - 0xDE20E1, 0xDED220, 0xDED2D0, 0xDED3DE, 0xDED920, 0xDEDBEC, 0xDEDC20, 0xDEE1E2, - 0xDFDEDB, 0xDFE0D5, 0xDFE0D8, 0xDFE0DE, 0xE0D0D2, 0xE0D5D4, 0xE1E2D0, 0xE1E2D2, - 0xE1E2D8, 0xE1EF20, 0xE2D5DB, 0xE2DE20, 0xE2DEE0, 0xE2EC20, 0xE7E2DE, 0xEBE520 - ]; - }; - - this.name = function(det) { - return 'ISO-8859-5'; - }; - - this.language = function() { - return 'ru'; - }; -}; -util.inherits(module.exports.ISO_8859_5, sbcs); - - -module.exports.ISO_8859_6 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, - 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, - 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, - 0xD8, 0xD9, 0xDA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 - ]; - }; - - this.ngrams = function() { - return [ - 0x20C7E4, 0x20C7E6, 0x20C8C7, 0x20D9E4, 0x20E1EA, 0x20E4E4, 0x20E5E6, 0x20E8C7, - 0xC720C7, 0xC7C120, 0xC7CA20, 0xC7D120, 0xC7E420, 0xC7E4C3, 0xC7E4C7, 0xC7E4C8, - 0xC7E4CA, 0xC7E4CC, 0xC7E4CD, 0xC7E4CF, 0xC7E4D3, 0xC7E4D9, 0xC7E4E2, 0xC7E4E5, - 0xC7E4E8, 0xC7E4EA, 0xC7E520, 0xC7E620, 0xC7E6CA, 0xC820C7, 0xC920C7, 0xC920E1, - 0xC920E4, 0xC920E5, 0xC920E8, 0xCA20C7, 0xCF20C7, 0xCFC920, 0xD120C7, 0xD1C920, - 0xD320C7, 0xD920C7, 0xD9E4E9, 0xE1EA20, 0xE420C7, 0xE4C920, 0xE4E920, 0xE4EA20, - 0xE520C7, 0xE5C720, 0xE5C920, 0xE5E620, 0xE620C7, 0xE720C7, 0xE7C720, 0xE8C7E4, - 0xE8E620, 0xE920C7, 0xEA20C7, 0xEA20E5, 0xEA20E8, 0xEAC920, 0xEAD120, 0xEAE620 - ]; - }; - - this.name = function(det) { - return 'ISO-8859-6'; - }; - - this.language = function() { - return 'ar'; - }; -}; -util.inherits(module.exports.ISO_8859_6, sbcs); - - -module.exports.ISO_8859_7 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0xA1, 0xA2, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0xDC, 0x20, - 0xDD, 0xDE, 0xDF, 0x20, 0xFC, 0x20, 0xFD, 0xFE, - 0xC0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0x20, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0xFB, 0xDC, 0xDD, 0xDE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x20 - ]; - }; - - this.ngrams = function() { - return [ - 0x20E1ED, 0x20E1F0, 0x20E3E9, 0x20E4E9, 0x20E5F0, 0x20E720, 0x20EAE1, 0x20ECE5, - 0x20EDE1, 0x20EF20, 0x20F0E1, 0x20F0EF, 0x20F0F1, 0x20F3F4, 0x20F3F5, 0x20F4E7, - 0x20F4EF, 0xDFE120, 0xE120E1, 0xE120F4, 0xE1E920, 0xE1ED20, 0xE1F0FC, 0xE1F220, - 0xE3E9E1, 0xE5E920, 0xE5F220, 0xE720F4, 0xE7ED20, 0xE7F220, 0xE920F4, 0xE9E120, - 0xE9EADE, 0xE9F220, 0xEAE1E9, 0xEAE1F4, 0xECE520, 0xED20E1, 0xED20E5, 0xED20F0, - 0xEDE120, 0xEFF220, 0xEFF520, 0xF0EFF5, 0xF0F1EF, 0xF0FC20, 0xF220E1, 0xF220E5, - 0xF220EA, 0xF220F0, 0xF220F4, 0xF3E520, 0xF3E720, 0xF3F4EF, 0xF4E120, 0xF4E1E9, - 0xF4E7ED, 0xF4E7F2, 0xF4E9EA, 0xF4EF20, 0xF4EFF5, 0xF4F9ED, 0xF9ED20, 0xFEED20 - ]; - }; - - this.name = function(det) { - return (det && det.fC1Bytes) ? 'windows-1253' : 'ISO-8859-7'; - }; - - this.language = function() { - return 'el'; - }; -}; -util.inherits(module.exports.ISO_8859_7, sbcs); - -module.exports.ISO_8859_8 = function() { - - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0xB5, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0x20, 0x20, 0x20, 0x20, 0x20 - ]; - }; - - this.ngrams = function() { - return [ - new NGramsPlusLang('he', [ - 0x20E0E5, 0x20E0E7, 0x20E0E9, 0x20E0FA, 0x20E1E9, 0x20E1EE, 0x20E4E0, 0x20E4E5, - 0x20E4E9, 0x20E4EE, 0x20E4F2, 0x20E4F9, 0x20E4FA, 0x20ECE0, 0x20ECE4, 0x20EEE0, - 0x20F2EC, 0x20F9EC, 0xE0FA20, 0xE420E0, 0xE420E1, 0xE420E4, 0xE420EC, 0xE420EE, - 0xE420F9, 0xE4E5E0, 0xE5E020, 0xE5ED20, 0xE5EF20, 0xE5F820, 0xE5FA20, 0xE920E4, - 0xE9E420, 0xE9E5FA, 0xE9E9ED, 0xE9ED20, 0xE9EF20, 0xE9F820, 0xE9FA20, 0xEC20E0, - 0xEC20E4, 0xECE020, 0xECE420, 0xED20E0, 0xED20E1, 0xED20E4, 0xED20EC, 0xED20EE, - 0xED20F9, 0xEEE420, 0xEF20E4, 0xF0E420, 0xF0E920, 0xF0E9ED, 0xF2EC20, 0xF820E4, - 0xF8E9ED, 0xF9EC20, 0xFA20E0, 0xFA20E1, 0xFA20E4, 0xFA20EC, 0xFA20EE, 0xFA20F9, - ]), - new NGramsPlusLang('he', [ - 0x20E0E5, 0x20E0EC, 0x20E4E9, 0x20E4EC, 0x20E4EE, 0x20E4F0, 0x20E9F0, 0x20ECF2, - 0x20ECF9, 0x20EDE5, 0x20EDE9, 0x20EFE5, 0x20EFE9, 0x20F8E5, 0x20F8E9, 0x20FAE0, - 0x20FAE5, 0x20FAE9, 0xE020E4, 0xE020EC, 0xE020ED, 0xE020FA, 0xE0E420, 0xE0E5E4, - 0xE0EC20, 0xE0EE20, 0xE120E4, 0xE120ED, 0xE120FA, 0xE420E4, 0xE420E9, 0xE420EC, - 0xE420ED, 0xE420EF, 0xE420F8, 0xE420FA, 0xE4EC20, 0xE5E020, 0xE5E420, 0xE7E020, - 0xE9E020, 0xE9E120, 0xE9E420, 0xEC20E4, 0xEC20ED, 0xEC20FA, 0xECF220, 0xECF920, - 0xEDE9E9, 0xEDE9F0, 0xEDE9F8, 0xEE20E4, 0xEE20ED, 0xEE20FA, 0xEEE120, 0xEEE420, - 0xF2E420, 0xF920E4, 0xF920ED, 0xF920FA, 0xF9E420, 0xFAE020, 0xFAE420, 0xFAE5E9, - ]) - ]; - }; - - this.name = function(det) { - return (det && det.fC1Bytes) ? 'windows-1255' : 'ISO-8859-8'; - }; - - this.language = function() { - return 'he'; - }; - -}; -util.inherits(module.exports.ISO_8859_8, sbcs); - - -module.exports.ISO_8859_9 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0xAA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0xB5, 0x20, 0x20, - 0x20, 0x20, 0xBA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0x20, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0x69, 0xFE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0x20, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF - ]; - }; - - this.ngrams = function() { - return [ - 0x206261, 0x206269, 0x206275, 0x206461, 0x206465, 0x206765, 0x206861, 0x20696C, - 0x206B61, 0x206B6F, 0x206D61, 0x206F6C, 0x207361, 0x207461, 0x207665, 0x207961, - 0x612062, 0x616B20, 0x616C61, 0x616D61, 0x616E20, 0x616EFD, 0x617220, 0x617261, - 0x6172FD, 0x6173FD, 0x617961, 0x626972, 0x646120, 0x646520, 0x646920, 0x652062, - 0x65206B, 0x656469, 0x656E20, 0x657220, 0x657269, 0x657369, 0x696C65, 0x696E20, - 0x696E69, 0x697220, 0x6C616E, 0x6C6172, 0x6C6520, 0x6C6572, 0x6E2061, 0x6E2062, - 0x6E206B, 0x6E6461, 0x6E6465, 0x6E6520, 0x6E6920, 0x6E696E, 0x6EFD20, 0x72696E, - 0x72FD6E, 0x766520, 0x796120, 0x796F72, 0xFD6E20, 0xFD6E64, 0xFD6EFD, 0xFDF0FD - ]; - }; - - this.name = function(det) { - return (det && det.fC1Bytes) ? 'windows-1254' : 'ISO-8859-9'; - }; - - this.language = function() { - return 'tr'; - }; -}; -util.inherits(module.exports.ISO_8859_9, sbcs); - - -module.exports.windows_1251 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x90, 0x83, 0x20, 0x83, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x9A, 0x20, 0x9C, 0x9D, 0x9E, 0x9F, - 0x90, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x9A, 0x20, 0x9C, 0x9D, 0x9E, 0x9F, - 0x20, 0xA2, 0xA2, 0xBC, 0x20, 0xB4, 0x20, 0x20, - 0xB8, 0x20, 0xBA, 0x20, 0x20, 0x20, 0x20, 0xBF, - 0x20, 0x20, 0xB3, 0xB3, 0xB4, 0xB5, 0x20, 0x20, - 0xB8, 0x20, 0xBA, 0x20, 0xBC, 0xBE, 0xBE, 0xBF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, - 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF - ]; - }; - - this.ngrams = function() { - return [ - 0x20E220, 0x20E2EE, 0x20E4EE, 0x20E7E0, 0x20E820, 0x20EAE0, 0x20EAEE, 0x20EDE0, - 0x20EDE5, 0x20EEE1, 0x20EFEE, 0x20EFF0, 0x20F0E0, 0x20F1EE, 0x20F1F2, 0x20F2EE, - 0x20F7F2, 0x20FDF2, 0xE0EDE8, 0xE0F2FC, 0xE3EE20, 0xE5EBFC, 0xE5EDE8, 0xE5F1F2, - 0xE5F220, 0xE820EF, 0xE8E520, 0xE8E820, 0xE8FF20, 0xEBE5ED, 0xEBE820, 0xEBFCED, - 0xEDE020, 0xEDE520, 0xEDE8E5, 0xEDE8FF, 0xEDEE20, 0xEDEEE2, 0xEE20E2, 0xEE20EF, - 0xEE20F1, 0xEEE220, 0xEEE2E0, 0xEEE3EE, 0xEEE920, 0xEEEBFC, 0xEEEC20, 0xEEF1F2, - 0xEFEEEB, 0xEFF0E5, 0xEFF0E8, 0xEFF0EE, 0xF0E0E2, 0xF0E5E4, 0xF1F2E0, 0xF1F2E2, - 0xF1F2E8, 0xF1FF20, 0xF2E5EB, 0xF2EE20, 0xF2EEF0, 0xF2FC20, 0xF7F2EE, 0xFBF520 - ]; - }; - - this.name = function(det) { - return 'windows-1251'; - }; - - this.language = function() { - return 'ru'; - }; -}; -util.inherits(module.exports.windows_1251, sbcs); - - -module.exports.windows_1256 = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x81, 0x20, 0x83, 0x20, 0x20, 0x20, 0x20, - 0x88, 0x20, 0x8A, 0x20, 0x9C, 0x8D, 0x8E, 0x8F, - 0x90, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x98, 0x20, 0x9A, 0x20, 0x9C, 0x20, 0x20, 0x9F, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0xAA, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0xB5, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, - 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, - 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0x20, - 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, - 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, - 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, - 0x20, 0x20, 0x20, 0x20, 0xF4, 0x20, 0x20, 0x20, - 0x20, 0xF9, 0x20, 0xFB, 0xFC, 0x20, 0x20, 0xFF - ]; - }; - - this.ngrams = function() { - return [ - 0x20C7E1, 0x20C7E4, 0x20C8C7, 0x20DAE1, 0x20DDED, 0x20E1E1, 0x20E3E4, 0x20E6C7, - 0xC720C7, 0xC7C120, 0xC7CA20, 0xC7D120, 0xC7E120, 0xC7E1C3, 0xC7E1C7, 0xC7E1C8, - 0xC7E1CA, 0xC7E1CC, 0xC7E1CD, 0xC7E1CF, 0xC7E1D3, 0xC7E1DA, 0xC7E1DE, 0xC7E1E3, - 0xC7E1E6, 0xC7E1ED, 0xC7E320, 0xC7E420, 0xC7E4CA, 0xC820C7, 0xC920C7, 0xC920DD, - 0xC920E1, 0xC920E3, 0xC920E6, 0xCA20C7, 0xCF20C7, 0xCFC920, 0xD120C7, 0xD1C920, - 0xD320C7, 0xDA20C7, 0xDAE1EC, 0xDDED20, 0xE120C7, 0xE1C920, 0xE1EC20, 0xE1ED20, - 0xE320C7, 0xE3C720, 0xE3C920, 0xE3E420, 0xE420C7, 0xE520C7, 0xE5C720, 0xE6C7E1, - 0xE6E420, 0xEC20C7, 0xED20C7, 0xED20E3, 0xED20E6, 0xEDC920, 0xEDD120, 0xEDE420 - ]; - }; - - this.name = function(det) { - return 'windows-1256'; - }; - - this.language = function() { - return 'ar'; - }; -}; -util.inherits(module.exports.windows_1256, sbcs); - - -module.exports.KOI8_R = function() { - this.byteMap = function() { - return [ - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, - 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, - 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, - 0x78, 0x79, 0x7A, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0xA3, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0xA3, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, - 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, - 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, - 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, - 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, - 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, - 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, - 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF - ]; - }; - - this.ngrams = function() { - return [ - 0x20C4CF, 0x20C920, 0x20CBC1, 0x20CBCF, 0x20CEC1, 0x20CEC5, 0x20CFC2, 0x20D0CF, - 0x20D0D2, 0x20D2C1, 0x20D3CF, 0x20D3D4, 0x20D4CF, 0x20D720, 0x20D7CF, 0x20DAC1, - 0x20DCD4, 0x20DED4, 0xC1CEC9, 0xC1D4D8, 0xC5CCD8, 0xC5CEC9, 0xC5D3D4, 0xC5D420, - 0xC7CF20, 0xC920D0, 0xC9C520, 0xC9C920, 0xC9D120, 0xCCC5CE, 0xCCC920, 0xCCD8CE, - 0xCEC120, 0xCEC520, 0xCEC9C5, 0xCEC9D1, 0xCECF20, 0xCECFD7, 0xCF20D0, 0xCF20D3, - 0xCF20D7, 0xCFC7CF, 0xCFCA20, 0xCFCCD8, 0xCFCD20, 0xCFD3D4, 0xCFD720, 0xCFD7C1, - 0xD0CFCC, 0xD0D2C5, 0xD0D2C9, 0xD0D2CF, 0xD2C1D7, 0xD2C5C4, 0xD3D120, 0xD3D4C1, - 0xD3D4C9, 0xD3D4D7, 0xD4C5CC, 0xD4CF20, 0xD4CFD2, 0xD4D820, 0xD9C820, 0xDED4CF - ]; - }; - - this.name = function(det) { - return 'KOI8-R'; - }; - - this.language = function() { - return 'ru'; - }; -}; -util.inherits(module.exports.KOI8_R, sbcs); - - -/* -module.exports.ISO_8859_7 = function() { - this.byteMap = function() { - return [ - - ]; - }; - - this.ngrams = function() { - return [ - - ]; - }; - - this.name = function(det) { - if (typeof det == 'undefined') - return 'ISO-8859-7'; - return det.fC1Bytes ? 'windows-1253' : 'ISO-8859-7'; - }; - - this.language = function() { - return 'el'; - }; -}; -util.inherits(module.exports.ISO_8859_7, sbcs); -*/ - diff --git a/node_modules/chardet/encoding/unicode.js b/node_modules/chardet/encoding/unicode.js deleted file mode 100644 index 6458d79f..00000000 --- a/node_modules/chardet/encoding/unicode.js +++ /dev/null @@ -1,112 +0,0 @@ -'use strict'; -var util = require('util'), - Match = require ('../match'); - -/** - * This class matches UTF-16 and UTF-32, both big- and little-endian. The - * BOM will be used if it is present. - */ -module.exports.UTF_16BE = function() { - this.name = function() { - return 'UTF-16BE'; - }; - this.match = function(det) { - var input = det.fRawInput; - - if (input.length >= 2 && ((input[0] & 0xff) == 0xfe && (input[1] & 0xff) == 0xff)) { - return new Match(det, this, 100); // confidence = 100 - } - - // TODO: Do some statistics to check for unsigned UTF-16BE - return null; - }; -}; - -module.exports.UTF_16LE = function() { - this.name = function() { - return 'UTF-16LE'; - }; - this.match = function(det) { - var input = det.fRawInput; - - if (input.length >= 2 && ((input[0] & 0xff) == 0xff && (input[1] & 0xff) == 0xfe)) { - // LE BOM is present. - if (input.length >= 4 && input[2] == 0x00 && input[3] == 0x00) { - // It is probably UTF-32 LE, not UTF-16 - return null; - } - return new Match(det, this, 100); // confidence = 100 - } - - // TODO: Do some statistics to check for unsigned UTF-16LE - return null; - } -}; - -function UTF_32() {}; -UTF_32.prototype.match = function(det) { - var input = det.fRawInput, - limit = (det.fRawLength / 4) * 4, - numValid = 0, - numInvalid = 0, - hasBOM = false, - confidence = 0; - - if (limit == 0) { - return null; - } - - if (this.getChar(input, 0) == 0x0000FEFF) { - hasBOM = true; - } - - for (var i = 0; i < limit; i += 4) { - var ch = this.getChar(input, i); - - if (ch < 0 || ch >= 0x10FFFF || (ch >= 0xD800 && ch <= 0xDFFF)) { - numInvalid += 1; - } else { - numValid += 1; - } - } - - // Cook up some sort of confidence score, based on presence of a BOM - // and the existence of valid and/or invalid multi-byte sequences. - if (hasBOM && numInvalid == 0) { - confidence = 100; - } else if (hasBOM && numValid > numInvalid * 10) { - confidence = 80; - } else if (numValid > 3 && numInvalid == 0) { - confidence = 100; - } else if (numValid > 0 && numInvalid == 0) { - confidence = 80; - } else if (numValid > numInvalid * 10) { - // Probably corrupt UTF-32BE data. Valid sequences aren't likely by chance. - confidence = 25; - } - - // return confidence == 0 ? null : new CharsetMatch(det, this, confidence); - return confidence == 0 ? null : new Match(det, this, confidence); -}; - -module.exports.UTF_32BE = function() { - this.name = function() { - return 'UTF-32BE'; - }; - this.getChar = function(input, index) { - return (input[index + 0] & 0xff) << 24 | (input[index + 1] & 0xff) << 16 | - (input[index + 2] & 0xff) << 8 | (input[index + 3] & 0xff); - }; -}; -util.inherits(module.exports.UTF_32BE, UTF_32); - -module.exports.UTF_32LE = function() { - this.name = function() { - return 'UTF-32LE'; - }; - this.getChar = function(input, index) { - return (input[index + 3] & 0xff) << 24 | (input[index + 2] & 0xff) << 16 | - (input[index + 1] & 0xff) << 8 | (input[index + 0] & 0xff); - }; -}; -util.inherits(module.exports.UTF_32LE, UTF_32); diff --git a/node_modules/chardet/encoding/utf8.js b/node_modules/chardet/encoding/utf8.js deleted file mode 100644 index c996ce2b..00000000 --- a/node_modules/chardet/encoding/utf8.js +++ /dev/null @@ -1,84 +0,0 @@ - -var Match = require ('../match'); - -/** - * Charset recognizer for UTF-8 - */ -module.exports = function() { - this.name = function() { - return 'UTF-8'; - }; - this.match = function(det) { - - var hasBOM = false, - numValid = 0, - numInvalid = 0, - input = det.fRawInput, - trailBytes = 0, - confidence; - - if (det.fRawLength >= 3 && - (input[0] & 0xff) == 0xef && (input[1] & 0xff) == 0xbb && (input[2] & 0xff) == 0xbf) { - hasBOM = true; - } - - // Scan for multi-byte sequences - for (var i = 0; i < det.fRawLength; i++) { - var b = input[i]; - if ((b & 0x80) == 0) - continue; // ASCII - - // Hi bit on char found. Figure out how long the sequence should be - if ((b & 0x0e0) == 0x0c0) { - trailBytes = 1; - } else if ((b & 0x0f0) == 0x0e0) { - trailBytes = 2; - } else if ((b & 0x0f8) == 0xf0) { - trailBytes = 3; - } else { - numInvalid++; - if (numInvalid > 5) - break; - trailBytes = 0; - } - - // Verify that we've got the right number of trail bytes in the sequence - for (;;) { - i++; - if (i >= det.fRawLength) - break; - - if ((input[i] & 0xc0) != 0x080) { - numInvalid++; - break; - } - if (--trailBytes == 0) { - numValid++; - break; - } - } - } - - // Cook up some sort of confidence score, based on presense of a BOM - // and the existence of valid and/or invalid multi-byte sequences. - confidence = 0; - if (hasBOM && numInvalid == 0) - confidence = 100; - else if (hasBOM && numValid > numInvalid * 10) - confidence = 80; - else if (numValid > 3 && numInvalid == 0) - confidence = 100; - else if (numValid > 0 && numInvalid == 0) - confidence = 80; - else if (numValid == 0 && numInvalid == 0) - // Plain ASCII. - confidence = 10; - else if (numValid > numInvalid * 10) - // Probably corruput utf-8 data. Valid sequences aren't likely by chance. - confidence = 25; - else - return null - - return new Match(det, this, confidence); - }; -}; diff --git a/node_modules/chardet/index.js b/node_modules/chardet/index.js deleted file mode 100644 index 91b2bec6..00000000 --- a/node_modules/chardet/index.js +++ /dev/null @@ -1,151 +0,0 @@ - -var fs = require('fs'); - -var utf8 = require('./encoding/utf8'), - unicode = require('./encoding/unicode'), - mbcs = require('./encoding/mbcs'), - sbcs = require('./encoding/sbcs'), - iso2022 = require('./encoding/iso2022'); - -var self = this; - -var recognisers = [ - new utf8, - new unicode.UTF_16BE, - new unicode.UTF_16LE, - new unicode.UTF_32BE, - new unicode.UTF_32LE, - new mbcs.sjis, - new mbcs.big5, - new mbcs.euc_jp, - new mbcs.euc_kr, - new mbcs.gb_18030, - new iso2022.ISO_2022_JP, - new iso2022.ISO_2022_KR, - new iso2022.ISO_2022_CN, - new sbcs.ISO_8859_1, - new sbcs.ISO_8859_2, - new sbcs.ISO_8859_5, - new sbcs.ISO_8859_6, - new sbcs.ISO_8859_7, - new sbcs.ISO_8859_8, - new sbcs.ISO_8859_9, - new sbcs.windows_1251, - new sbcs.windows_1256, - new sbcs.KOI8_R -]; - -module.exports.detect = function(buffer, opts) { - - // Tally up the byte occurence statistics. - var fByteStats = []; - for (var i = 0; i < 256; i++) - fByteStats[i] = 0; - - for (var i = buffer.length - 1; i >= 0; i--) - fByteStats[buffer[i] & 0x00ff]++; - - var fC1Bytes = false; - for (var i = 0x80; i <= 0x9F; i += 1) { - if (fByteStats[i] != 0) { - fC1Bytes = true; - break; - } - } - - var context = { - fByteStats: fByteStats, - fC1Bytes: fC1Bytes, - fRawInput: buffer, - fRawLength: buffer.length, - fInputBytes: buffer, - fInputLen: buffer.length - }; - - var matches = recognisers.map(function(rec) { - return rec.match(context); - }).filter(function(match) { - return !!match; - }).sort(function(a, b) { - return b.confidence - a.confidence; - }); - - if (opts && opts.returnAllMatches === true) { - return matches; - } - else { - return matches.length > 0 ? matches[0].name : null; - } -}; - -module.exports.detectFile = function(filepath, opts, cb) { - if (typeof opts === 'function') { - cb = opts; - opts = undefined; - } - - var fd; - - var handler = function(err, buffer) { - if (fd) { - fs.closeSync(fd); - } - - if (err) return cb(err, null); - cb(null, self.detect(buffer, opts)); - }; - - if (opts && opts.sampleSize) { - fd = fs.openSync(filepath, 'r'), - sample = Buffer.allocUnsafe(opts.sampleSize); - - fs.read(fd, sample, 0, opts.sampleSize, null, function(err) { - handler(err, sample); - }); - return; - } - - fs.readFile(filepath, handler); -}; - -module.exports.detectFileSync = function(filepath, opts) { - if (opts && opts.sampleSize) { - var fd = fs.openSync(filepath, 'r'), - sample = Buffer.allocUnsafe(opts.sampleSize); - - fs.readSync(fd, sample, 0, opts.sampleSize); - fs.closeSync(fd); - return self.detect(sample, opts); - } - - return self.detect(fs.readFileSync(filepath), opts); -}; - -// Wrappers for the previous functions to return all encodings -module.exports.detectAll = function(buffer, opts) { - if (typeof opts !== 'object') { - opts = {}; - } - opts.returnAllMatches = true; - return self.detect(buffer, opts); -} - -module.exports.detectFileAll = function(filepath, opts, cb) { - if (typeof opts === 'function') { - cb = opts; - opts = undefined; - } - if (typeof opts !== 'object') { - opts = {}; - } - opts.returnAllMatches = true; - self.detectFile(filepath, opts, cb); -} - -module.exports.detectFileAllSync = function(filepath, opts) { - if (typeof opts !== 'object') { - opts = {}; - } - opts.returnAllMatches = true; - return self.detectFileSync(filepath, opts); -} diff --git a/node_modules/chardet/match.js b/node_modules/chardet/match.js deleted file mode 100644 index d52faa2d..00000000 --- a/node_modules/chardet/match.js +++ /dev/null @@ -1,6 +0,0 @@ - -module.exports = function(det, rec, confidence, name, lang) { - this.confidence = confidence; - this.name = name || rec.name(det); - this.lang = lang; -}; diff --git a/node_modules/chardet/package.json b/node_modules/chardet/package.json deleted file mode 100644 index af046ba8..00000000 --- a/node_modules/chardet/package.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "chardet", - "version": "0.7.0", - "homepage": "https://github.com/runk/node-chardet", - "description": "Character detector", - "keywords": [ - "encoding", - "character", - "utf8", - "detector", - "chardet", - "icu" - ], - "author": "Dmitry Shirokov ", - "contributors": [ - "@spikying", - "@wtgtybhertgeghgtwtg", - "@suisho", - "@seangarner", - "@zevanty" - ], - "devDependencies": { - "github-publish-release": "^5.0.0", - "mocha": "^5.2.0" - }, - "repository": { - "type": "git", - "url": "git@github.com:runk/node-chardet.git" - }, - "bugs": { - "mail": "deadrunk@gmail.com", - "url": "http://github.com/runk/node-chardet/issues" - }, - "scripts": { - "test": "mocha -R spec --recursive --bail", - "release": "scripts/release" - }, - "main": "index.js", - "engine": { - "node": ">=4" - }, - "readmeFilename": "README.md", - "directories": { - "test": "test" - }, - "license": "MIT" -} diff --git a/node_modules/cli-cursor/index.d.ts b/node_modules/cli-cursor/index.d.ts deleted file mode 100644 index 2b252d05..00000000 --- a/node_modules/cli-cursor/index.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -/// - -/** -Show cursor. - -@param stream - Default: `process.stderr`. - -@example -``` -import * as cliCursor from 'cli-cursor'; - -cliCursor.show(); -``` -*/ -export function show(stream?: NodeJS.WritableStream): void; - -/** -Hide cursor. - -@param stream - Default: `process.stderr`. - -@example -``` -import * as cliCursor from 'cli-cursor'; - -cliCursor.hide(); -``` -*/ -export function hide(stream?: NodeJS.WritableStream): void; - -/** -Toggle cursor visibility. - -@param force - Is useful to show or hide the cursor based on a boolean. -@param stream - Default: `process.stderr`. - -@example -``` -import * as cliCursor from 'cli-cursor'; - -const unicornsAreAwesome = true; -cliCursor.toggle(unicornsAreAwesome); -``` -*/ -export function toggle(force?: boolean, stream?: NodeJS.WritableStream): void; diff --git a/node_modules/cli-cursor/index.js b/node_modules/cli-cursor/index.js deleted file mode 100644 index 710c4051..00000000 --- a/node_modules/cli-cursor/index.js +++ /dev/null @@ -1,35 +0,0 @@ -'use strict'; -const restoreCursor = require('restore-cursor'); - -let isHidden = false; - -exports.show = (writableStream = process.stderr) => { - if (!writableStream.isTTY) { - return; - } - - isHidden = false; - writableStream.write('\u001B[?25h'); -}; - -exports.hide = (writableStream = process.stderr) => { - if (!writableStream.isTTY) { - return; - } - - restoreCursor(); - isHidden = true; - writableStream.write('\u001B[?25l'); -}; - -exports.toggle = (force, writableStream) => { - if (force !== undefined) { - isHidden = force; - } - - if (isHidden) { - exports.show(writableStream); - } else { - exports.hide(writableStream); - } -}; diff --git a/node_modules/cli-cursor/package.json b/node_modules/cli-cursor/package.json deleted file mode 100644 index 5ce1e659..00000000 --- a/node_modules/cli-cursor/package.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "name": "cli-cursor", - "version": "3.1.0", - "description": "Toggle the CLI cursor", - "license": "MIT", - "repository": "sindresorhus/cli-cursor", - "author": { - "name": "Sindre Sorhus", - "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" - }, - "engines": { - "node": ">=8" - }, - "scripts": { - "test": "xo && ava && tsd" - }, - "files": [ - "index.js", - "index.d.ts" - ], - "keywords": [ - "cli", - "cursor", - "ansi", - "toggle", - "display", - "show", - "hide", - "term", - "terminal", - "console", - "tty", - "shell", - "command-line" - ], - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "devDependencies": { - "@types/node": "^12.0.7", - "ava": "^2.1.0", - "tsd": "^0.7.2", - "xo": "^0.24.0" - } -} diff --git a/node_modules/cli-cursor/readme.md b/node_modules/cli-cursor/readme.md deleted file mode 100644 index 3478ac80..00000000 --- a/node_modules/cli-cursor/readme.md +++ /dev/null @@ -1,55 +0,0 @@ -# cli-cursor [![Build Status](https://travis-ci.org/sindresorhus/cli-cursor.svg?branch=master)](https://travis-ci.org/sindresorhus/cli-cursor) - -> Toggle the CLI cursor - -The cursor is [gracefully restored](https://github.com/sindresorhus/restore-cursor) if the process exits. - - -## Install - -``` -$ npm install cli-cursor -``` - - -## Usage - -```js -const cliCursor = require('cli-cursor'); - -cliCursor.hide(); - -const unicornsAreAwesome = true; -cliCursor.toggle(unicornsAreAwesome); -``` - - -## API - -### .show(stream?) - -### .hide(stream?) - -### .toggle(force?, stream?) - -#### force - -Useful for showing or hiding the cursor based on a boolean. - -#### stream - -Type: `stream.Writable`
-Default: `process.stderr` - - ---- - -
- - Get professional support for this package with a Tidelift subscription - -
- - Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. -
-
diff --git a/node_modules/cli-width/.npmignore b/node_modules/cli-width/.npmignore deleted file mode 100644 index 2db169c1..00000000 --- a/node_modules/cli-width/.npmignore +++ /dev/null @@ -1,3 +0,0 @@ -test -coverage -CHANGELOG.md diff --git a/node_modules/cli-width/.travis.yml b/node_modules/cli-width/.travis.yml deleted file mode 100644 index 7a188cb0..00000000 --- a/node_modules/cli-width/.travis.yml +++ /dev/null @@ -1,11 +0,0 @@ -language: node_js -node_js: - - '0.10' - - '0.11' - - '0.12' - - 'iojs-1' - - 'iojs-2' - - 'iojs-3' - - '4.0' -after_script: - - npm run coveralls diff --git a/node_modules/cli-width/CHANGELOG.md b/node_modules/cli-width/CHANGELOG.md deleted file mode 100644 index c46429b8..00000000 --- a/node_modules/cli-width/CHANGELOG.md +++ /dev/null @@ -1,16 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. - - -# [2.2.0](https://github.com/knownasilya/cli-width/compare/v2.1.1...v2.2.0) (2017-08-22) - - -### Features - -* return default if env is 0 ([1833baf](https://github.com/knownasilya/cli-width/commit/1833baf)), closes [#9](https://github.com/knownasilya/cli-width/issues/9) - - - - -## [2.1.1](https://github.com/knownasilya/cli-width/compare/v2.1.0...v2.1.1) (2017-08-22) diff --git a/node_modules/cli-width/LICENSE b/node_modules/cli-width/LICENSE deleted file mode 100644 index 173ed319..00000000 --- a/node_modules/cli-width/LICENSE +++ /dev/null @@ -1,13 +0,0 @@ -Copyright (c) 2015, Ilya Radchenko - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/cli-width/README.md b/node_modules/cli-width/README.md deleted file mode 100644 index b7157ea5..00000000 --- a/node_modules/cli-width/README.md +++ /dev/null @@ -1,72 +0,0 @@ -cli-width -========= - -Get stdout window width, with four fallbacks, `tty`, `output.columns`, a custom environment variable and then a default. - -[![npm version](https://badge.fury.io/js/cli-width.svg)](http://badge.fury.io/js/cli-width) -[![Build Status](https://travis-ci.org/knownasilya/cli-width.svg)](https://travis-ci.org/knownasilya/cli-width) -[![Coverage Status](https://coveralls.io/repos/knownasilya/cli-width/badge.svg?branch=master&service=github)](https://coveralls.io/github/knownasilya/cli-width?branch=master) - -## Usage - -``` -npm install --save cli-width -``` - -```js -'use strict'; - -var cliWidth = require('cli-width'); - -cliWidth(); // maybe 204 :) -``` - -You can also set the `CLI_WIDTH` environment variable. - -If none of the methods are supported, and the environment variable isn't set, -the default width value is going to be `0`, that can be changed using the configurable `options`. - -## API - -### cliWidth([options]) - -`cliWidth` can be configured using an `options` parameter, the possible properties are: - -- **defaultWidth**\ Defines a default value to be used if none of the methods are available, defaults to `0` -- **output**\ A stream to be used to read width values from, defaults to `process.stdout` -- **tty**\ TTY module to try to read width from as a fallback, defaults to `require('tty')` - - -### Examples - -Defining both a default width value and a stream output to try to read from: - -```js -var cliWidth = require('cli-width'); -var ttys = require('ttys'); - -cliWidth({ - defaultWidth: 80, - output: ttys.output -}); -``` - -Defines a different tty module to read width from: - -```js -var cliWidth = require('cli-width'); -var ttys = require('ttys'); - -cliWidth({ - tty: ttys -}); -``` - -## Tests - -```bash -npm install -npm test -``` - -Coverage can be generated with `npm run coverage`. diff --git a/node_modules/cli-width/index.js b/node_modules/cli-width/index.js deleted file mode 100644 index de939f31..00000000 --- a/node_modules/cli-width/index.js +++ /dev/null @@ -1,49 +0,0 @@ -'use strict'; - -exports = module.exports = cliWidth; - -function normalizeOpts(options) { - var defaultOpts = { - defaultWidth: 0, - output: process.stdout, - tty: require('tty') - }; - - if (!options) { - return defaultOpts; - } else { - Object.keys(defaultOpts).forEach(function (key) { - if (!options[key]) { - options[key] = defaultOpts[key]; - } - }); - - return options; - } -} - -function cliWidth(options) { - var opts = normalizeOpts(options); - - if (opts.output.getWindowSize) { - return opts.output.getWindowSize()[0] || opts.defaultWidth; - } else { - if (opts.tty.getWindowSize) { - return opts.tty.getWindowSize()[1] || opts.defaultWidth; - } else { - if (opts.output.columns) { - return opts.output.columns; - } else { - if (process.env.CLI_WIDTH) { - var width = parseInt(process.env.CLI_WIDTH, 10); - - if (!isNaN(width) && width !== 0) { - return width; - } - } - } - - return opts.defaultWidth; - } - } -}; diff --git a/node_modules/cli-width/package.json b/node_modules/cli-width/package.json deleted file mode 100644 index 765800d4..00000000 --- a/node_modules/cli-width/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "cli-width", - "version": "2.2.0", - "description": "Get stdout window width, with two fallbacks, tty and then a default.", - "main": "index.js", - "scripts": { - "test": "node test | tspec", - "coverage": "isparta cover test/*.js | tspec", - "coveralls": "npm run coverage -s && coveralls < coverage/lcov.info", - "postcoveralls": "rimraf ./coverage", - "release": "standard-version" - }, - "repository": { - "type": "git", - "url": "git@github.com:knownasilya/cli-width.git" - }, - "author": "Ilya Radchenko ", - "license": "ISC", - "bugs": { - "url": "https://github.com/knownasilya/cli-width/issues" - }, - "homepage": "https://github.com/knownasilya/cli-width", - "devDependencies": { - "coveralls": "^2.11.4", - "isparta": "^3.0.4", - "rimraf": "^2.4.3", - "standard-version": "^4.2.0", - "tap-spec": "^4.1.0", - "tape": "^3.4.0" - } -} diff --git a/node_modules/commander/CHANGELOG.md b/node_modules/commander/CHANGELOG.md deleted file mode 100644 index 7dce779d..00000000 --- a/node_modules/commander/CHANGELOG.md +++ /dev/null @@ -1,419 +0,0 @@ -2.20.3 / 2019-10-11 -================== - - * Support Node.js 0.10 (Revert #1059) - * Ran "npm unpublish commander@2.20.2". There is no 2.20.2. - -2.20.1 / 2019-09-29 -================== - - * Improve executable subcommand tracking - * Update dev dependencies - -2.20.0 / 2019-04-02 -================== - - * fix: resolve symbolic links completely when hunting for subcommands (#935) - * Update index.d.ts (#930) - * Update Readme.md (#924) - * Remove --save option as it isn't required anymore (#918) - * Add link to the license file (#900) - * Added example of receiving args from options (#858) - * Added missing semicolon (#882) - * Add extension to .eslintrc (#876) - -2.19.0 / 2018-10-02 -================== - - * Removed newline after Options and Commands headers (#864) - * Bugfix - Error output (#862) - * Fix to change default value to string (#856) - -2.18.0 / 2018-09-07 -================== - - * Standardize help output (#853) - * chmod 644 travis.yml (#851) - * add support for execute typescript subcommand via ts-node (#849) - -2.17.1 / 2018-08-07 -================== - - * Fix bug in command emit (#844) - -2.17.0 / 2018-08-03 -================== - - * fixed newline output after help information (#833) - * Fix to emit the action even without command (#778) - * npm update (#823) - -2.16.0 / 2018-06-29 -================== - - * Remove Makefile and `test/run` (#821) - * Make 'npm test' run on Windows (#820) - * Add badge to display install size (#807) - * chore: cache node_modules (#814) - * chore: remove Node.js 4 (EOL), add Node.js 10 (#813) - * fixed typo in readme (#812) - * Fix types (#804) - * Update eslint to resolve vulnerabilities in lodash (#799) - * updated readme with custom event listeners. (#791) - * fix tests (#794) - -2.15.0 / 2018-03-07 -================== - - * Update downloads badge to point to graph of downloads over time instead of duplicating link to npm - * Arguments description - -2.14.1 / 2018-02-07 -================== - - * Fix typing of help function - -2.14.0 / 2018-02-05 -================== - - * only register the option:version event once - * Fixes issue #727: Passing empty string for option on command is set to undefined - * enable eqeqeq rule - * resolves #754 add linter configuration to project - * resolves #560 respect custom name for version option - * document how to override the version flag - * document using options per command - -2.13.0 / 2018-01-09 -================== - - * Do not print default for --no- - * remove trailing spaces in command help - * Update CI's Node.js to LTS and latest version - * typedefs: Command and Option types added to commander namespace - -2.12.2 / 2017-11-28 -================== - - * fix: typings are not shipped - -2.12.1 / 2017-11-23 -================== - - * Move @types/node to dev dependency - -2.12.0 / 2017-11-22 -================== - - * add attributeName() method to Option objects - * Documentation updated for options with --no prefix - * typings: `outputHelp` takes a string as the first parameter - * typings: use overloads - * feat(typings): update to match js api - * Print default value in option help - * Fix translation error - * Fail when using same command and alias (#491) - * feat(typings): add help callback - * fix bug when description is add after command with options (#662) - * Format js code - * Rename History.md to CHANGELOG.md (#668) - * feat(typings): add typings to support TypeScript (#646) - * use current node - -2.11.0 / 2017-07-03 -================== - - * Fix help section order and padding (#652) - * feature: support for signals to subcommands (#632) - * Fixed #37, --help should not display first (#447) - * Fix translation errors. (#570) - * Add package-lock.json - * Remove engines - * Upgrade package version - * Prefix events to prevent conflicts between commands and options (#494) - * Removing dependency on graceful-readlink - * Support setting name in #name function and make it chainable - * Add .vscode directory to .gitignore (Visual Studio Code metadata) - * Updated link to ruby commander in readme files - -2.10.0 / 2017-06-19 -================== - - * Update .travis.yml. drop support for older node.js versions. - * Fix require arguments in README.md - * On SemVer you do not start from 0.0.1 - * Add missing semi colon in readme - * Add save param to npm install - * node v6 travis test - * Update Readme_zh-CN.md - * Allow literal '--' to be passed-through as an argument - * Test subcommand alias help - * link build badge to master branch - * Support the alias of Git style sub-command - * added keyword commander for better search result on npm - * Fix Sub-Subcommands - * test node.js stable - * Fixes TypeError when a command has an option called `--description` - * Update README.md to make it beginner friendly and elaborate on the difference between angled and square brackets. - * Add chinese Readme file - -2.9.0 / 2015-10-13 -================== - - * Add option `isDefault` to set default subcommand #415 @Qix- - * Add callback to allow filtering or post-processing of help text #434 @djulien - * Fix `undefined` text in help information close #414 #416 @zhiyelee - -2.8.1 / 2015-04-22 -================== - - * Back out `support multiline description` Close #396 #397 - -2.8.0 / 2015-04-07 -================== - - * Add `process.execArg` support, execution args like `--harmony` will be passed to sub-commands #387 @DigitalIO @zhiyelee - * Fix bug in Git-style sub-commands #372 @zhiyelee - * Allow commands to be hidden from help #383 @tonylukasavage - * When git-style sub-commands are in use, yet none are called, display help #382 @claylo - * Add ability to specify arguments syntax for top-level command #258 @rrthomas - * Support multiline descriptions #208 @zxqfox - -2.7.1 / 2015-03-11 -================== - - * Revert #347 (fix collisions when option and first arg have same name) which causes a bug in #367. - -2.7.0 / 2015-03-09 -================== - - * Fix git-style bug when installed globally. Close #335 #349 @zhiyelee - * Fix collisions when option and first arg have same name. Close #346 #347 @tonylukasavage - * Add support for camelCase on `opts()`. Close #353 @nkzawa - * Add node.js 0.12 and io.js to travis.yml - * Allow RegEx options. #337 @palanik - * Fixes exit code when sub-command failing. Close #260 #332 @pirelenito - * git-style `bin` files in $PATH make sense. Close #196 #327 @zhiyelee - -2.6.0 / 2014-12-30 -================== - - * added `Command#allowUnknownOption` method. Close #138 #318 @doozr @zhiyelee - * Add application description to the help msg. Close #112 @dalssoft - -2.5.1 / 2014-12-15 -================== - - * fixed two bugs incurred by variadic arguments. Close #291 @Quentin01 #302 @zhiyelee - -2.5.0 / 2014-10-24 -================== - - * add support for variadic arguments. Closes #277 @whitlockjc - -2.4.0 / 2014-10-17 -================== - - * fixed a bug on executing the coercion function of subcommands option. Closes #270 - * added `Command.prototype.name` to retrieve command name. Closes #264 #266 @tonylukasavage - * added `Command.prototype.opts` to retrieve all the options as a simple object of key-value pairs. Closes #262 @tonylukasavage - * fixed a bug on subcommand name. Closes #248 @jonathandelgado - * fixed function normalize doesn’t honor option terminator. Closes #216 @abbr - -2.3.0 / 2014-07-16 -================== - - * add command alias'. Closes PR #210 - * fix: Typos. Closes #99 - * fix: Unused fs module. Closes #217 - -2.2.0 / 2014-03-29 -================== - - * add passing of previous option value - * fix: support subcommands on windows. Closes #142 - * Now the defaultValue passed as the second argument of the coercion function. - -2.1.0 / 2013-11-21 -================== - - * add: allow cflag style option params, unit test, fixes #174 - -2.0.0 / 2013-07-18 -================== - - * remove input methods (.prompt, .confirm, etc) - -1.3.2 / 2013-07-18 -================== - - * add support for sub-commands to co-exist with the original command - -1.3.1 / 2013-07-18 -================== - - * add quick .runningCommand hack so you can opt-out of other logic when running a sub command - -1.3.0 / 2013-07-09 -================== - - * add EACCES error handling - * fix sub-command --help - -1.2.0 / 2013-06-13 -================== - - * allow "-" hyphen as an option argument - * support for RegExp coercion - -1.1.1 / 2012-11-20 -================== - - * add more sub-command padding - * fix .usage() when args are present. Closes #106 - -1.1.0 / 2012-11-16 -================== - - * add git-style executable subcommand support. Closes #94 - -1.0.5 / 2012-10-09 -================== - - * fix `--name` clobbering. Closes #92 - * fix examples/help. Closes #89 - -1.0.4 / 2012-09-03 -================== - - * add `outputHelp()` method. - -1.0.3 / 2012-08-30 -================== - - * remove invalid .version() defaulting - -1.0.2 / 2012-08-24 -================== - - * add `--foo=bar` support [arv] - * fix password on node 0.8.8. Make backward compatible with 0.6 [focusaurus] - -1.0.1 / 2012-08-03 -================== - - * fix issue #56 - * fix tty.setRawMode(mode) was moved to tty.ReadStream#setRawMode() (i.e. process.stdin.setRawMode()) - -1.0.0 / 2012-07-05 -================== - - * add support for optional option descriptions - * add defaulting of `.version()` to package.json's version - -0.6.1 / 2012-06-01 -================== - - * Added: append (yes or no) on confirmation - * Added: allow node.js v0.7.x - -0.6.0 / 2012-04-10 -================== - - * Added `.prompt(obj, callback)` support. Closes #49 - * Added default support to .choose(). Closes #41 - * Fixed the choice example - -0.5.1 / 2011-12-20 -================== - - * Fixed `password()` for recent nodes. Closes #36 - -0.5.0 / 2011-12-04 -================== - - * Added sub-command option support [itay] - -0.4.3 / 2011-12-04 -================== - - * Fixed custom help ordering. Closes #32 - -0.4.2 / 2011-11-24 -================== - - * Added travis support - * Fixed: line-buffered input automatically trimmed. Closes #31 - -0.4.1 / 2011-11-18 -================== - - * Removed listening for "close" on --help - -0.4.0 / 2011-11-15 -================== - - * Added support for `--`. Closes #24 - -0.3.3 / 2011-11-14 -================== - - * Fixed: wait for close event when writing help info [Jerry Hamlet] - -0.3.2 / 2011-11-01 -================== - - * Fixed long flag definitions with values [felixge] - -0.3.1 / 2011-10-31 -================== - - * Changed `--version` short flag to `-V` from `-v` - * Changed `.version()` so it's configurable [felixge] - -0.3.0 / 2011-10-31 -================== - - * Added support for long flags only. Closes #18 - -0.2.1 / 2011-10-24 -================== - - * "node": ">= 0.4.x < 0.7.0". Closes #20 - -0.2.0 / 2011-09-26 -================== - - * Allow for defaults that are not just boolean. Default peassignment only occurs for --no-*, optional, and required arguments. [Jim Isaacs] - -0.1.0 / 2011-08-24 -================== - - * Added support for custom `--help` output - -0.0.5 / 2011-08-18 -================== - - * Changed: when the user enters nothing prompt for password again - * Fixed issue with passwords beginning with numbers [NuckChorris] - -0.0.4 / 2011-08-15 -================== - - * Fixed `Commander#args` - -0.0.3 / 2011-08-15 -================== - - * Added default option value support - -0.0.2 / 2011-08-15 -================== - - * Added mask support to `Command#password(str[, mask], fn)` - * Added `Command#password(str, fn)` - -0.0.1 / 2010-01-03 -================== - - * Initial release diff --git a/node_modules/commander/LICENSE b/node_modules/commander/LICENSE deleted file mode 100644 index 10f997ab..00000000 --- a/node_modules/commander/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -(The MIT License) - -Copyright (c) 2011 TJ Holowaychuk - -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. diff --git a/node_modules/commander/Readme.md b/node_modules/commander/Readme.md deleted file mode 100644 index c846e7a2..00000000 --- a/node_modules/commander/Readme.md +++ /dev/null @@ -1,428 +0,0 @@ -# Commander.js - - -[![Build Status](https://api.travis-ci.org/tj/commander.js.svg?branch=master)](http://travis-ci.org/tj/commander.js) -[![NPM Version](http://img.shields.io/npm/v/commander.svg?style=flat)](https://www.npmjs.org/package/commander) -[![NPM Downloads](https://img.shields.io/npm/dm/commander.svg?style=flat)](https://npmcharts.com/compare/commander?minimal=true) -[![Install Size](https://packagephobia.now.sh/badge?p=commander)](https://packagephobia.now.sh/result?p=commander) -[![Join the chat at https://gitter.im/tj/commander.js](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/tj/commander.js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) - - The complete solution for [node.js](http://nodejs.org) command-line interfaces, inspired by Ruby's [commander](https://github.com/commander-rb/commander). - [API documentation](http://tj.github.com/commander.js/) - - -## Installation - - $ npm install commander - -## Option parsing - -Options with commander are defined with the `.option()` method, also serving as documentation for the options. The example below parses args and options from `process.argv`, leaving remaining args as the `program.args` array which were not consumed by options. - -```js -#!/usr/bin/env node - -/** - * Module dependencies. - */ - -var program = require('commander'); - -program - .version('0.1.0') - .option('-p, --peppers', 'Add peppers') - .option('-P, --pineapple', 'Add pineapple') - .option('-b, --bbq-sauce', 'Add bbq sauce') - .option('-c, --cheese [type]', 'Add the specified type of cheese [marble]', 'marble') - .parse(process.argv); - -console.log('you ordered a pizza with:'); -if (program.peppers) console.log(' - peppers'); -if (program.pineapple) console.log(' - pineapple'); -if (program.bbqSauce) console.log(' - bbq'); -console.log(' - %s cheese', program.cheese); -``` - -Short flags may be passed as a single arg, for example `-abc` is equivalent to `-a -b -c`. Multi-word options such as "--template-engine" are camel-cased, becoming `program.templateEngine` etc. - -Note that multi-word options starting with `--no` prefix negate the boolean value of the following word. For example, `--no-sauce` sets the value of `program.sauce` to false. - -```js -#!/usr/bin/env node - -/** - * Module dependencies. - */ - -var program = require('commander'); - -program - .option('--no-sauce', 'Remove sauce') - .parse(process.argv); - -console.log('you ordered a pizza'); -if (program.sauce) console.log(' with sauce'); -else console.log(' without sauce'); -``` - -To get string arguments from options you will need to use angle brackets <> for required inputs or square brackets [] for optional inputs. - -e.g. ```.option('-m --myarg [myVar]', 'my super cool description')``` - -Then to access the input if it was passed in. - -e.g. ```var myInput = program.myarg``` - -**NOTE**: If you pass a argument without using brackets the example above will return true and not the value passed in. - - -## Version option - -Calling the `version` implicitly adds the `-V` and `--version` options to the command. -When either of these options is present, the command prints the version number and exits. - - $ ./examples/pizza -V - 0.0.1 - -If you want your program to respond to the `-v` option instead of the `-V` option, simply pass custom flags to the `version` method using the same syntax as the `option` method. - -```js -program - .version('0.0.1', '-v, --version') -``` - -The version flags can be named anything, but the long option is required. - -## Command-specific options - -You can attach options to a command. - -```js -#!/usr/bin/env node - -var program = require('commander'); - -program - .command('rm ') - .option('-r, --recursive', 'Remove recursively') - .action(function (dir, cmd) { - console.log('remove ' + dir + (cmd.recursive ? ' recursively' : '')) - }) - -program.parse(process.argv) -``` - -A command's options are validated when the command is used. Any unknown options will be reported as an error. However, if an action-based command does not define an action, then the options are not validated. - -## Coercion - -```js -function range(val) { - return val.split('..').map(Number); -} - -function list(val) { - return val.split(','); -} - -function collect(val, memo) { - memo.push(val); - return memo; -} - -function increaseVerbosity(v, total) { - return total + 1; -} - -program - .version('0.1.0') - .usage('[options] ') - .option('-i, --integer ', 'An integer argument', parseInt) - .option('-f, --float ', 'A float argument', parseFloat) - .option('-r, --range ..', 'A range', range) - .option('-l, --list ', 'A list', list) - .option('-o, --optional [value]', 'An optional value') - .option('-c, --collect [value]', 'A repeatable value', collect, []) - .option('-v, --verbose', 'A value that can be increased', increaseVerbosity, 0) - .parse(process.argv); - -console.log(' int: %j', program.integer); -console.log(' float: %j', program.float); -console.log(' optional: %j', program.optional); -program.range = program.range || []; -console.log(' range: %j..%j', program.range[0], program.range[1]); -console.log(' list: %j', program.list); -console.log(' collect: %j', program.collect); -console.log(' verbosity: %j', program.verbose); -console.log(' args: %j', program.args); -``` - -## Regular Expression -```js -program - .version('0.1.0') - .option('-s --size ', 'Pizza size', /^(large|medium|small)$/i, 'medium') - .option('-d --drink [drink]', 'Drink', /^(coke|pepsi|izze)$/i) - .parse(process.argv); - -console.log(' size: %j', program.size); -console.log(' drink: %j', program.drink); -``` - -## Variadic arguments - - The last argument of a command can be variadic, and only the last argument. To make an argument variadic you have to - append `...` to the argument name. Here is an example: - -```js -#!/usr/bin/env node - -/** - * Module dependencies. - */ - -var program = require('commander'); - -program - .version('0.1.0') - .command('rmdir [otherDirs...]') - .action(function (dir, otherDirs) { - console.log('rmdir %s', dir); - if (otherDirs) { - otherDirs.forEach(function (oDir) { - console.log('rmdir %s', oDir); - }); - } - }); - -program.parse(process.argv); -``` - - An `Array` is used for the value of a variadic argument. This applies to `program.args` as well as the argument passed - to your action as demonstrated above. - -## Specify the argument syntax - -```js -#!/usr/bin/env node - -var program = require('commander'); - -program - .version('0.1.0') - .arguments(' [env]') - .action(function (cmd, env) { - cmdValue = cmd; - envValue = env; - }); - -program.parse(process.argv); - -if (typeof cmdValue === 'undefined') { - console.error('no command given!'); - process.exit(1); -} -console.log('command:', cmdValue); -console.log('environment:', envValue || "no environment given"); -``` -Angled brackets (e.g. ``) indicate required input. Square brackets (e.g. `[env]`) indicate optional input. - -## Git-style sub-commands - -```js -// file: ./examples/pm -var program = require('commander'); - -program - .version('0.1.0') - .command('install [name]', 'install one or more packages') - .command('search [query]', 'search with optional query') - .command('list', 'list packages installed', {isDefault: true}) - .parse(process.argv); -``` - -When `.command()` is invoked with a description argument, no `.action(callback)` should be called to handle sub-commands, otherwise there will be an error. This tells commander that you're going to use separate executables for sub-commands, much like `git(1)` and other popular tools. -The commander will try to search the executables in the directory of the entry script (like `./examples/pm`) with the name `program-command`, like `pm-install`, `pm-search`. - -Options can be passed with the call to `.command()`. Specifying `true` for `opts.noHelp` will remove the subcommand from the generated help output. Specifying `true` for `opts.isDefault` will run the subcommand if no other subcommand is specified. - -If the program is designed to be installed globally, make sure the executables have proper modes, like `755`. - -### `--harmony` - -You can enable `--harmony` option in two ways: -* Use `#! /usr/bin/env node --harmony` in the sub-commands scripts. Note some os version don’t support this pattern. -* Use the `--harmony` option when call the command, like `node --harmony examples/pm publish`. The `--harmony` option will be preserved when spawning sub-command process. - -## Automated --help - - The help information is auto-generated based on the information commander already knows about your program, so the following `--help` info is for free: - -``` -$ ./examples/pizza --help -Usage: pizza [options] - -An application for pizzas ordering - -Options: - -h, --help output usage information - -V, --version output the version number - -p, --peppers Add peppers - -P, --pineapple Add pineapple - -b, --bbq Add bbq sauce - -c, --cheese Add the specified type of cheese [marble] - -C, --no-cheese You do not want any cheese -``` - -## Custom help - - You can display arbitrary `-h, --help` information - by listening for "--help". Commander will automatically - exit once you are done so that the remainder of your program - does not execute causing undesired behaviors, for example - in the following executable "stuff" will not output when - `--help` is used. - -```js -#!/usr/bin/env node - -/** - * Module dependencies. - */ - -var program = require('commander'); - -program - .version('0.1.0') - .option('-f, --foo', 'enable some foo') - .option('-b, --bar', 'enable some bar') - .option('-B, --baz', 'enable some baz'); - -// must be before .parse() since -// node's emit() is immediate - -program.on('--help', function(){ - console.log('') - console.log('Examples:'); - console.log(' $ custom-help --help'); - console.log(' $ custom-help -h'); -}); - -program.parse(process.argv); - -console.log('stuff'); -``` - -Yields the following help output when `node script-name.js -h` or `node script-name.js --help` are run: - -``` -Usage: custom-help [options] - -Options: - -h, --help output usage information - -V, --version output the version number - -f, --foo enable some foo - -b, --bar enable some bar - -B, --baz enable some baz - -Examples: - $ custom-help --help - $ custom-help -h -``` - -## .outputHelp(cb) - -Output help information without exiting. -Optional callback cb allows post-processing of help text before it is displayed. - -If you want to display help by default (e.g. if no command was provided), you can use something like: - -```js -var program = require('commander'); -var colors = require('colors'); - -program - .version('0.1.0') - .command('getstream [url]', 'get stream URL') - .parse(process.argv); - -if (!process.argv.slice(2).length) { - program.outputHelp(make_red); -} - -function make_red(txt) { - return colors.red(txt); //display the help text in red on the console -} -``` - -## .help(cb) - - Output help information and exit immediately. - Optional callback cb allows post-processing of help text before it is displayed. - - -## Custom event listeners - You can execute custom actions by listening to command and option events. - -```js -program.on('option:verbose', function () { - process.env.VERBOSE = this.verbose; -}); - -// error on unknown commands -program.on('command:*', function () { - console.error('Invalid command: %s\nSee --help for a list of available commands.', program.args.join(' ')); - process.exit(1); -}); -``` - -## Examples - -```js -var program = require('commander'); - -program - .version('0.1.0') - .option('-C, --chdir ', 'change the working directory') - .option('-c, --config ', 'set config path. defaults to ./deploy.conf') - .option('-T, --no-tests', 'ignore test hook'); - -program - .command('setup [env]') - .description('run setup commands for all envs') - .option("-s, --setup_mode [mode]", "Which setup mode to use") - .action(function(env, options){ - var mode = options.setup_mode || "normal"; - env = env || 'all'; - console.log('setup for %s env(s) with %s mode', env, mode); - }); - -program - .command('exec ') - .alias('ex') - .description('execute the given remote cmd') - .option("-e, --exec_mode ", "Which exec mode to use") - .action(function(cmd, options){ - console.log('exec "%s" using %s mode', cmd, options.exec_mode); - }).on('--help', function() { - console.log(''); - console.log('Examples:'); - console.log(''); - console.log(' $ deploy exec sequential'); - console.log(' $ deploy exec async'); - }); - -program - .command('*') - .action(function(env){ - console.log('deploying "%s"', env); - }); - -program.parse(process.argv); -``` - -More Demos can be found in the [examples](https://github.com/tj/commander.js/tree/master/examples) directory. - -## License - -[MIT](https://github.com/tj/commander.js/blob/master/LICENSE) diff --git a/node_modules/commander/index.js b/node_modules/commander/index.js deleted file mode 100644 index ec1d61d5..00000000 --- a/node_modules/commander/index.js +++ /dev/null @@ -1,1224 +0,0 @@ -/** - * Module dependencies. - */ - -var EventEmitter = require('events').EventEmitter; -var spawn = require('child_process').spawn; -var path = require('path'); -var dirname = path.dirname; -var basename = path.basename; -var fs = require('fs'); - -/** - * Inherit `Command` from `EventEmitter.prototype`. - */ - -require('util').inherits(Command, EventEmitter); - -/** - * Expose the root command. - */ - -exports = module.exports = new Command(); - -/** - * Expose `Command`. - */ - -exports.Command = Command; - -/** - * Expose `Option`. - */ - -exports.Option = Option; - -/** - * Initialize a new `Option` with the given `flags` and `description`. - * - * @param {String} flags - * @param {String} description - * @api public - */ - -function Option(flags, description) { - this.flags = flags; - this.required = flags.indexOf('<') >= 0; - this.optional = flags.indexOf('[') >= 0; - this.bool = flags.indexOf('-no-') === -1; - flags = flags.split(/[ ,|]+/); - if (flags.length > 1 && !/^[[<]/.test(flags[1])) this.short = flags.shift(); - this.long = flags.shift(); - this.description = description || ''; -} - -/** - * Return option name. - * - * @return {String} - * @api private - */ - -Option.prototype.name = function() { - return this.long - .replace('--', '') - .replace('no-', ''); -}; - -/** - * Return option name, in a camelcase format that can be used - * as a object attribute key. - * - * @return {String} - * @api private - */ - -Option.prototype.attributeName = function() { - return camelcase(this.name()); -}; - -/** - * Check if `arg` matches the short or long flag. - * - * @param {String} arg - * @return {Boolean} - * @api private - */ - -Option.prototype.is = function(arg) { - return this.short === arg || this.long === arg; -}; - -/** - * Initialize a new `Command`. - * - * @param {String} name - * @api public - */ - -function Command(name) { - this.commands = []; - this.options = []; - this._execs = {}; - this._allowUnknownOption = false; - this._args = []; - this._name = name || ''; -} - -/** - * Add command `name`. - * - * The `.action()` callback is invoked when the - * command `name` is specified via __ARGV__, - * and the remaining arguments are applied to the - * function for access. - * - * When the `name` is "*" an un-matched command - * will be passed as the first arg, followed by - * the rest of __ARGV__ remaining. - * - * Examples: - * - * program - * .version('0.0.1') - * .option('-C, --chdir ', 'change the working directory') - * .option('-c, --config ', 'set config path. defaults to ./deploy.conf') - * .option('-T, --no-tests', 'ignore test hook') - * - * program - * .command('setup') - * .description('run remote setup commands') - * .action(function() { - * console.log('setup'); - * }); - * - * program - * .command('exec ') - * .description('run the given remote command') - * .action(function(cmd) { - * console.log('exec "%s"', cmd); - * }); - * - * program - * .command('teardown [otherDirs...]') - * .description('run teardown commands') - * .action(function(dir, otherDirs) { - * console.log('dir "%s"', dir); - * if (otherDirs) { - * otherDirs.forEach(function (oDir) { - * console.log('dir "%s"', oDir); - * }); - * } - * }); - * - * program - * .command('*') - * .description('deploy the given env') - * .action(function(env) { - * console.log('deploying "%s"', env); - * }); - * - * program.parse(process.argv); - * - * @param {String} name - * @param {String} [desc] for git-style sub-commands - * @return {Command} the new command - * @api public - */ - -Command.prototype.command = function(name, desc, opts) { - if (typeof desc === 'object' && desc !== null) { - opts = desc; - desc = null; - } - opts = opts || {}; - var args = name.split(/ +/); - var cmd = new Command(args.shift()); - - if (desc) { - cmd.description(desc); - this.executables = true; - this._execs[cmd._name] = true; - if (opts.isDefault) this.defaultExecutable = cmd._name; - } - cmd._noHelp = !!opts.noHelp; - this.commands.push(cmd); - cmd.parseExpectedArgs(args); - cmd.parent = this; - - if (desc) return this; - return cmd; -}; - -/** - * Define argument syntax for the top-level command. - * - * @api public - */ - -Command.prototype.arguments = function(desc) { - return this.parseExpectedArgs(desc.split(/ +/)); -}; - -/** - * Add an implicit `help [cmd]` subcommand - * which invokes `--help` for the given command. - * - * @api private - */ - -Command.prototype.addImplicitHelpCommand = function() { - this.command('help [cmd]', 'display help for [cmd]'); -}; - -/** - * Parse expected `args`. - * - * For example `["[type]"]` becomes `[{ required: false, name: 'type' }]`. - * - * @param {Array} args - * @return {Command} for chaining - * @api public - */ - -Command.prototype.parseExpectedArgs = function(args) { - if (!args.length) return; - var self = this; - args.forEach(function(arg) { - var argDetails = { - required: false, - name: '', - variadic: false - }; - - switch (arg[0]) { - case '<': - argDetails.required = true; - argDetails.name = arg.slice(1, -1); - break; - case '[': - argDetails.name = arg.slice(1, -1); - break; - } - - if (argDetails.name.length > 3 && argDetails.name.slice(-3) === '...') { - argDetails.variadic = true; - argDetails.name = argDetails.name.slice(0, -3); - } - if (argDetails.name) { - self._args.push(argDetails); - } - }); - return this; -}; - -/** - * Register callback `fn` for the command. - * - * Examples: - * - * program - * .command('help') - * .description('display verbose help') - * .action(function() { - * // output help here - * }); - * - * @param {Function} fn - * @return {Command} for chaining - * @api public - */ - -Command.prototype.action = function(fn) { - var self = this; - var listener = function(args, unknown) { - // Parse any so-far unknown options - args = args || []; - unknown = unknown || []; - - var parsed = self.parseOptions(unknown); - - // Output help if necessary - outputHelpIfNecessary(self, parsed.unknown); - - // If there are still any unknown options, then we simply - // die, unless someone asked for help, in which case we give it - // to them, and then we die. - if (parsed.unknown.length > 0) { - self.unknownOption(parsed.unknown[0]); - } - - // Leftover arguments need to be pushed back. Fixes issue #56 - if (parsed.args.length) args = parsed.args.concat(args); - - self._args.forEach(function(arg, i) { - if (arg.required && args[i] == null) { - self.missingArgument(arg.name); - } else if (arg.variadic) { - if (i !== self._args.length - 1) { - self.variadicArgNotLast(arg.name); - } - - args[i] = args.splice(i); - } - }); - - // Always append ourselves to the end of the arguments, - // to make sure we match the number of arguments the user - // expects - if (self._args.length) { - args[self._args.length] = self; - } else { - args.push(self); - } - - fn.apply(self, args); - }; - var parent = this.parent || this; - var name = parent === this ? '*' : this._name; - parent.on('command:' + name, listener); - if (this._alias) parent.on('command:' + this._alias, listener); - return this; -}; - -/** - * Define option with `flags`, `description` and optional - * coercion `fn`. - * - * The `flags` string should contain both the short and long flags, - * separated by comma, a pipe or space. The following are all valid - * all will output this way when `--help` is used. - * - * "-p, --pepper" - * "-p|--pepper" - * "-p --pepper" - * - * Examples: - * - * // simple boolean defaulting to false - * program.option('-p, --pepper', 'add pepper'); - * - * --pepper - * program.pepper - * // => Boolean - * - * // simple boolean defaulting to true - * program.option('-C, --no-cheese', 'remove cheese'); - * - * program.cheese - * // => true - * - * --no-cheese - * program.cheese - * // => false - * - * // required argument - * program.option('-C, --chdir ', 'change the working directory'); - * - * --chdir /tmp - * program.chdir - * // => "/tmp" - * - * // optional argument - * program.option('-c, --cheese [type]', 'add cheese [marble]'); - * - * @param {String} flags - * @param {String} description - * @param {Function|*} [fn] or default - * @param {*} [defaultValue] - * @return {Command} for chaining - * @api public - */ - -Command.prototype.option = function(flags, description, fn, defaultValue) { - var self = this, - option = new Option(flags, description), - oname = option.name(), - name = option.attributeName(); - - // default as 3rd arg - if (typeof fn !== 'function') { - if (fn instanceof RegExp) { - var regex = fn; - fn = function(val, def) { - var m = regex.exec(val); - return m ? m[0] : def; - }; - } else { - defaultValue = fn; - fn = null; - } - } - - // preassign default value only for --no-*, [optional], or - if (!option.bool || option.optional || option.required) { - // when --no-* we make sure default is true - if (!option.bool) defaultValue = true; - // preassign only if we have a default - if (defaultValue !== undefined) { - self[name] = defaultValue; - option.defaultValue = defaultValue; - } - } - - // register the option - this.options.push(option); - - // when it's passed assign the value - // and conditionally invoke the callback - this.on('option:' + oname, function(val) { - // coercion - if (val !== null && fn) { - val = fn(val, self[name] === undefined ? defaultValue : self[name]); - } - - // unassigned or bool - if (typeof self[name] === 'boolean' || typeof self[name] === 'undefined') { - // if no value, bool true, and we have a default, then use it! - if (val == null) { - self[name] = option.bool - ? defaultValue || true - : false; - } else { - self[name] = val; - } - } else if (val !== null) { - // reassign - self[name] = val; - } - }); - - return this; -}; - -/** - * Allow unknown options on the command line. - * - * @param {Boolean} arg if `true` or omitted, no error will be thrown - * for unknown options. - * @api public - */ -Command.prototype.allowUnknownOption = function(arg) { - this._allowUnknownOption = arguments.length === 0 || arg; - return this; -}; - -/** - * Parse `argv`, settings options and invoking commands when defined. - * - * @param {Array} argv - * @return {Command} for chaining - * @api public - */ - -Command.prototype.parse = function(argv) { - // implicit help - if (this.executables) this.addImplicitHelpCommand(); - - // store raw args - this.rawArgs = argv; - - // guess name - this._name = this._name || basename(argv[1], '.js'); - - // github-style sub-commands with no sub-command - if (this.executables && argv.length < 3 && !this.defaultExecutable) { - // this user needs help - argv.push('--help'); - } - - // process argv - var parsed = this.parseOptions(this.normalize(argv.slice(2))); - var args = this.args = parsed.args; - - var result = this.parseArgs(this.args, parsed.unknown); - - // executable sub-commands - var name = result.args[0]; - - var aliasCommand = null; - // check alias of sub commands - if (name) { - aliasCommand = this.commands.filter(function(command) { - return command.alias() === name; - })[0]; - } - - if (this._execs[name] === true) { - return this.executeSubCommand(argv, args, parsed.unknown); - } else if (aliasCommand) { - // is alias of a subCommand - args[0] = aliasCommand._name; - return this.executeSubCommand(argv, args, parsed.unknown); - } else if (this.defaultExecutable) { - // use the default subcommand - args.unshift(this.defaultExecutable); - return this.executeSubCommand(argv, args, parsed.unknown); - } - - return result; -}; - -/** - * Execute a sub-command executable. - * - * @param {Array} argv - * @param {Array} args - * @param {Array} unknown - * @api private - */ - -Command.prototype.executeSubCommand = function(argv, args, unknown) { - args = args.concat(unknown); - - if (!args.length) this.help(); - if (args[0] === 'help' && args.length === 1) this.help(); - - // --help - if (args[0] === 'help') { - args[0] = args[1]; - args[1] = '--help'; - } - - // executable - var f = argv[1]; - // name of the subcommand, link `pm-install` - var bin = basename(f, path.extname(f)) + '-' + args[0]; - - // In case of globally installed, get the base dir where executable - // subcommand file should be located at - var baseDir; - - var resolvedLink = fs.realpathSync(f); - - baseDir = dirname(resolvedLink); - - // prefer local `./` to bin in the $PATH - var localBin = path.join(baseDir, bin); - - // whether bin file is a js script with explicit `.js` or `.ts` extension - var isExplicitJS = false; - if (exists(localBin + '.js')) { - bin = localBin + '.js'; - isExplicitJS = true; - } else if (exists(localBin + '.ts')) { - bin = localBin + '.ts'; - isExplicitJS = true; - } else if (exists(localBin)) { - bin = localBin; - } - - args = args.slice(1); - - var proc; - if (process.platform !== 'win32') { - if (isExplicitJS) { - args.unshift(bin); - // add executable arguments to spawn - args = (process.execArgv || []).concat(args); - - proc = spawn(process.argv[0], args, { stdio: 'inherit', customFds: [0, 1, 2] }); - } else { - proc = spawn(bin, args, { stdio: 'inherit', customFds: [0, 1, 2] }); - } - } else { - args.unshift(bin); - proc = spawn(process.execPath, args, { stdio: 'inherit' }); - } - - var signals = ['SIGUSR1', 'SIGUSR2', 'SIGTERM', 'SIGINT', 'SIGHUP']; - signals.forEach(function(signal) { - process.on(signal, function() { - if (proc.killed === false && proc.exitCode === null) { - proc.kill(signal); - } - }); - }); - proc.on('close', process.exit.bind(process)); - proc.on('error', function(err) { - if (err.code === 'ENOENT') { - console.error('error: %s(1) does not exist, try --help', bin); - } else if (err.code === 'EACCES') { - console.error('error: %s(1) not executable. try chmod or run with root', bin); - } - process.exit(1); - }); - - // Store the reference to the child process - this.runningCommand = proc; -}; - -/** - * Normalize `args`, splitting joined short flags. For example - * the arg "-abc" is equivalent to "-a -b -c". - * This also normalizes equal sign and splits "--abc=def" into "--abc def". - * - * @param {Array} args - * @return {Array} - * @api private - */ - -Command.prototype.normalize = function(args) { - var ret = [], - arg, - lastOpt, - index; - - for (var i = 0, len = args.length; i < len; ++i) { - arg = args[i]; - if (i > 0) { - lastOpt = this.optionFor(args[i - 1]); - } - - if (arg === '--') { - // Honor option terminator - ret = ret.concat(args.slice(i)); - break; - } else if (lastOpt && lastOpt.required) { - ret.push(arg); - } else if (arg.length > 1 && arg[0] === '-' && arg[1] !== '-') { - arg.slice(1).split('').forEach(function(c) { - ret.push('-' + c); - }); - } else if (/^--/.test(arg) && ~(index = arg.indexOf('='))) { - ret.push(arg.slice(0, index), arg.slice(index + 1)); - } else { - ret.push(arg); - } - } - - return ret; -}; - -/** - * Parse command `args`. - * - * When listener(s) are available those - * callbacks are invoked, otherwise the "*" - * event is emitted and those actions are invoked. - * - * @param {Array} args - * @return {Command} for chaining - * @api private - */ - -Command.prototype.parseArgs = function(args, unknown) { - var name; - - if (args.length) { - name = args[0]; - if (this.listeners('command:' + name).length) { - this.emit('command:' + args.shift(), args, unknown); - } else { - this.emit('command:*', args); - } - } else { - outputHelpIfNecessary(this, unknown); - - // If there were no args and we have unknown options, - // then they are extraneous and we need to error. - if (unknown.length > 0) { - this.unknownOption(unknown[0]); - } - if (this.commands.length === 0 && - this._args.filter(function(a) { return a.required; }).length === 0) { - this.emit('command:*'); - } - } - - return this; -}; - -/** - * Return an option matching `arg` if any. - * - * @param {String} arg - * @return {Option} - * @api private - */ - -Command.prototype.optionFor = function(arg) { - for (var i = 0, len = this.options.length; i < len; ++i) { - if (this.options[i].is(arg)) { - return this.options[i]; - } - } -}; - -/** - * Parse options from `argv` returning `argv` - * void of these options. - * - * @param {Array} argv - * @return {Array} - * @api public - */ - -Command.prototype.parseOptions = function(argv) { - var args = [], - len = argv.length, - literal, - option, - arg; - - var unknownOptions = []; - - // parse options - for (var i = 0; i < len; ++i) { - arg = argv[i]; - - // literal args after -- - if (literal) { - args.push(arg); - continue; - } - - if (arg === '--') { - literal = true; - continue; - } - - // find matching Option - option = this.optionFor(arg); - - // option is defined - if (option) { - // requires arg - if (option.required) { - arg = argv[++i]; - if (arg == null) return this.optionMissingArgument(option); - this.emit('option:' + option.name(), arg); - // optional arg - } else if (option.optional) { - arg = argv[i + 1]; - if (arg == null || (arg[0] === '-' && arg !== '-')) { - arg = null; - } else { - ++i; - } - this.emit('option:' + option.name(), arg); - // bool - } else { - this.emit('option:' + option.name()); - } - continue; - } - - // looks like an option - if (arg.length > 1 && arg[0] === '-') { - unknownOptions.push(arg); - - // If the next argument looks like it might be - // an argument for this option, we pass it on. - // If it isn't, then it'll simply be ignored - if ((i + 1) < argv.length && argv[i + 1][0] !== '-') { - unknownOptions.push(argv[++i]); - } - continue; - } - - // arg - args.push(arg); - } - - return { args: args, unknown: unknownOptions }; -}; - -/** - * Return an object containing options as key-value pairs - * - * @return {Object} - * @api public - */ -Command.prototype.opts = function() { - var result = {}, - len = this.options.length; - - for (var i = 0; i < len; i++) { - var key = this.options[i].attributeName(); - result[key] = key === this._versionOptionName ? this._version : this[key]; - } - return result; -}; - -/** - * Argument `name` is missing. - * - * @param {String} name - * @api private - */ - -Command.prototype.missingArgument = function(name) { - console.error("error: missing required argument `%s'", name); - process.exit(1); -}; - -/** - * `Option` is missing an argument, but received `flag` or nothing. - * - * @param {String} option - * @param {String} flag - * @api private - */ - -Command.prototype.optionMissingArgument = function(option, flag) { - if (flag) { - console.error("error: option `%s' argument missing, got `%s'", option.flags, flag); - } else { - console.error("error: option `%s' argument missing", option.flags); - } - process.exit(1); -}; - -/** - * Unknown option `flag`. - * - * @param {String} flag - * @api private - */ - -Command.prototype.unknownOption = function(flag) { - if (this._allowUnknownOption) return; - console.error("error: unknown option `%s'", flag); - process.exit(1); -}; - -/** - * Variadic argument with `name` is not the last argument as required. - * - * @param {String} name - * @api private - */ - -Command.prototype.variadicArgNotLast = function(name) { - console.error("error: variadic arguments must be last `%s'", name); - process.exit(1); -}; - -/** - * Set the program version to `str`. - * - * This method auto-registers the "-V, --version" flag - * which will print the version number when passed. - * - * @param {String} str - * @param {String} [flags] - * @return {Command} for chaining - * @api public - */ - -Command.prototype.version = function(str, flags) { - if (arguments.length === 0) return this._version; - this._version = str; - flags = flags || '-V, --version'; - var versionOption = new Option(flags, 'output the version number'); - this._versionOptionName = versionOption.long.substr(2) || 'version'; - this.options.push(versionOption); - this.on('option:' + this._versionOptionName, function() { - process.stdout.write(str + '\n'); - process.exit(0); - }); - return this; -}; - -/** - * Set the description to `str`. - * - * @param {String} str - * @param {Object} argsDescription - * @return {String|Command} - * @api public - */ - -Command.prototype.description = function(str, argsDescription) { - if (arguments.length === 0) return this._description; - this._description = str; - this._argsDescription = argsDescription; - return this; -}; - -/** - * Set an alias for the command - * - * @param {String} alias - * @return {String|Command} - * @api public - */ - -Command.prototype.alias = function(alias) { - var command = this; - if (this.commands.length !== 0) { - command = this.commands[this.commands.length - 1]; - } - - if (arguments.length === 0) return command._alias; - - if (alias === command._name) throw new Error('Command alias can\'t be the same as its name'); - - command._alias = alias; - return this; -}; - -/** - * Set / get the command usage `str`. - * - * @param {String} str - * @return {String|Command} - * @api public - */ - -Command.prototype.usage = function(str) { - var args = this._args.map(function(arg) { - return humanReadableArgName(arg); - }); - - var usage = '[options]' + - (this.commands.length ? ' [command]' : '') + - (this._args.length ? ' ' + args.join(' ') : ''); - - if (arguments.length === 0) return this._usage || usage; - this._usage = str; - - return this; -}; - -/** - * Get or set the name of the command - * - * @param {String} str - * @return {String|Command} - * @api public - */ - -Command.prototype.name = function(str) { - if (arguments.length === 0) return this._name; - this._name = str; - return this; -}; - -/** - * Return prepared commands. - * - * @return {Array} - * @api private - */ - -Command.prototype.prepareCommands = function() { - return this.commands.filter(function(cmd) { - return !cmd._noHelp; - }).map(function(cmd) { - var args = cmd._args.map(function(arg) { - return humanReadableArgName(arg); - }).join(' '); - - return [ - cmd._name + - (cmd._alias ? '|' + cmd._alias : '') + - (cmd.options.length ? ' [options]' : '') + - (args ? ' ' + args : ''), - cmd._description - ]; - }); -}; - -/** - * Return the largest command length. - * - * @return {Number} - * @api private - */ - -Command.prototype.largestCommandLength = function() { - var commands = this.prepareCommands(); - return commands.reduce(function(max, command) { - return Math.max(max, command[0].length); - }, 0); -}; - -/** - * Return the largest option length. - * - * @return {Number} - * @api private - */ - -Command.prototype.largestOptionLength = function() { - var options = [].slice.call(this.options); - options.push({ - flags: '-h, --help' - }); - return options.reduce(function(max, option) { - return Math.max(max, option.flags.length); - }, 0); -}; - -/** - * Return the largest arg length. - * - * @return {Number} - * @api private - */ - -Command.prototype.largestArgLength = function() { - return this._args.reduce(function(max, arg) { - return Math.max(max, arg.name.length); - }, 0); -}; - -/** - * Return the pad width. - * - * @return {Number} - * @api private - */ - -Command.prototype.padWidth = function() { - var width = this.largestOptionLength(); - if (this._argsDescription && this._args.length) { - if (this.largestArgLength() > width) { - width = this.largestArgLength(); - } - } - - if (this.commands && this.commands.length) { - if (this.largestCommandLength() > width) { - width = this.largestCommandLength(); - } - } - - return width; -}; - -/** - * Return help for options. - * - * @return {String} - * @api private - */ - -Command.prototype.optionHelp = function() { - var width = this.padWidth(); - - // Append the help information - return this.options.map(function(option) { - return pad(option.flags, width) + ' ' + option.description + - ((option.bool && option.defaultValue !== undefined) ? ' (default: ' + JSON.stringify(option.defaultValue) + ')' : ''); - }).concat([pad('-h, --help', width) + ' ' + 'output usage information']) - .join('\n'); -}; - -/** - * Return command help documentation. - * - * @return {String} - * @api private - */ - -Command.prototype.commandHelp = function() { - if (!this.commands.length) return ''; - - var commands = this.prepareCommands(); - var width = this.padWidth(); - - return [ - 'Commands:', - commands.map(function(cmd) { - var desc = cmd[1] ? ' ' + cmd[1] : ''; - return (desc ? pad(cmd[0], width) : cmd[0]) + desc; - }).join('\n').replace(/^/gm, ' '), - '' - ].join('\n'); -}; - -/** - * Return program help documentation. - * - * @return {String} - * @api private - */ - -Command.prototype.helpInformation = function() { - var desc = []; - if (this._description) { - desc = [ - this._description, - '' - ]; - - var argsDescription = this._argsDescription; - if (argsDescription && this._args.length) { - var width = this.padWidth(); - desc.push('Arguments:'); - desc.push(''); - this._args.forEach(function(arg) { - desc.push(' ' + pad(arg.name, width) + ' ' + argsDescription[arg.name]); - }); - desc.push(''); - } - } - - var cmdName = this._name; - if (this._alias) { - cmdName = cmdName + '|' + this._alias; - } - var usage = [ - 'Usage: ' + cmdName + ' ' + this.usage(), - '' - ]; - - var cmds = []; - var commandHelp = this.commandHelp(); - if (commandHelp) cmds = [commandHelp]; - - var options = [ - 'Options:', - '' + this.optionHelp().replace(/^/gm, ' '), - '' - ]; - - return usage - .concat(desc) - .concat(options) - .concat(cmds) - .join('\n'); -}; - -/** - * Output help information for this command - * - * @api public - */ - -Command.prototype.outputHelp = function(cb) { - if (!cb) { - cb = function(passthru) { - return passthru; - }; - } - process.stdout.write(cb(this.helpInformation())); - this.emit('--help'); -}; - -/** - * Output help information and exit. - * - * @api public - */ - -Command.prototype.help = function(cb) { - this.outputHelp(cb); - process.exit(); -}; - -/** - * Camel-case the given `flag` - * - * @param {String} flag - * @return {String} - * @api private - */ - -function camelcase(flag) { - return flag.split('-').reduce(function(str, word) { - return str + word[0].toUpperCase() + word.slice(1); - }); -} - -/** - * Pad `str` to `width`. - * - * @param {String} str - * @param {Number} width - * @return {String} - * @api private - */ - -function pad(str, width) { - var len = Math.max(0, width - str.length); - return str + Array(len + 1).join(' '); -} - -/** - * Output help information if necessary - * - * @param {Command} command to output help for - * @param {Array} array of options to search for -h or --help - * @api private - */ - -function outputHelpIfNecessary(cmd, options) { - options = options || []; - for (var i = 0; i < options.length; i++) { - if (options[i] === '--help' || options[i] === '-h') { - cmd.outputHelp(); - process.exit(0); - } - } -} - -/** - * Takes an argument an returns its human readable equivalent for help usage. - * - * @param {Object} arg - * @return {String} - * @api private - */ - -function humanReadableArgName(arg) { - var nameOutput = arg.name + (arg.variadic === true ? '...' : ''); - - return arg.required - ? '<' + nameOutput + '>' - : '[' + nameOutput + ']'; -} - -// for versions before node v0.8 when there weren't `fs.existsSync` -function exists(file) { - try { - if (fs.statSync(file).isFile()) { - return true; - } - } catch (e) { - return false; - } -} diff --git a/node_modules/commander/package.json b/node_modules/commander/package.json deleted file mode 100644 index 0023c5cd..00000000 --- a/node_modules/commander/package.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "name": "commander", - "version": "2.20.3", - "description": "the complete solution for node.js command-line programs", - "keywords": [ - "commander", - "command", - "option", - "parser" - ], - "author": "TJ Holowaychuk ", - "license": "MIT", - "repository": { - "type": "git", - "url": "https://github.com/tj/commander.js.git" - }, - "scripts": { - "lint": "eslint index.js", - "test": "node test/run.js && npm run test-typings", - "test-typings": "tsc -p tsconfig.json" - }, - "main": "index", - "files": [ - "index.js", - "typings/index.d.ts" - ], - "dependencies": {}, - "devDependencies": { - "@types/node": "^12.7.8", - "eslint": "^6.4.0", - "should": "^13.2.3", - "sinon": "^7.5.0", - "standard": "^14.3.1", - "ts-node": "^8.4.1", - "typescript": "^3.6.3" - }, - "typings": "typings/index.d.ts" -} diff --git a/node_modules/commander/typings/index.d.ts b/node_modules/commander/typings/index.d.ts deleted file mode 100644 index bcda2771..00000000 --- a/node_modules/commander/typings/index.d.ts +++ /dev/null @@ -1,310 +0,0 @@ -// Type definitions for commander 2.11 -// Project: https://github.com/visionmedia/commander.js -// Definitions by: Alan Agius , Marcelo Dezem , vvakame , Jules Randolph -// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped - -declare namespace local { - - class Option { - flags: string; - required: boolean; - optional: boolean; - bool: boolean; - short?: string; - long: string; - description: string; - - /** - * Initialize a new `Option` with the given `flags` and `description`. - * - * @param {string} flags - * @param {string} [description] - */ - constructor(flags: string, description?: string); - } - - class Command extends NodeJS.EventEmitter { - [key: string]: any; - - args: string[]; - - /** - * Initialize a new `Command`. - * - * @param {string} [name] - */ - constructor(name?: string); - - /** - * Set the program version to `str`. - * - * This method auto-registers the "-V, --version" flag - * which will print the version number when passed. - * - * @param {string} str - * @param {string} [flags] - * @returns {Command} for chaining - */ - version(str: string, flags?: string): Command; - - /** - * Add command `name`. - * - * The `.action()` callback is invoked when the - * command `name` is specified via __ARGV__, - * and the remaining arguments are applied to the - * function for access. - * - * When the `name` is "*" an un-matched command - * will be passed as the first arg, followed by - * the rest of __ARGV__ remaining. - * - * @example - * program - * .version('0.0.1') - * .option('-C, --chdir ', 'change the working directory') - * .option('-c, --config ', 'set config path. defaults to ./deploy.conf') - * .option('-T, --no-tests', 'ignore test hook') - * - * program - * .command('setup') - * .description('run remote setup commands') - * .action(function() { - * console.log('setup'); - * }); - * - * program - * .command('exec ') - * .description('run the given remote command') - * .action(function(cmd) { - * console.log('exec "%s"', cmd); - * }); - * - * program - * .command('teardown [otherDirs...]') - * .description('run teardown commands') - * .action(function(dir, otherDirs) { - * console.log('dir "%s"', dir); - * if (otherDirs) { - * otherDirs.forEach(function (oDir) { - * console.log('dir "%s"', oDir); - * }); - * } - * }); - * - * program - * .command('*') - * .description('deploy the given env') - * .action(function(env) { - * console.log('deploying "%s"', env); - * }); - * - * program.parse(process.argv); - * - * @param {string} name - * @param {string} [desc] for git-style sub-commands - * @param {CommandOptions} [opts] command options - * @returns {Command} the new command - */ - command(name: string, desc?: string, opts?: commander.CommandOptions): Command; - - /** - * Define argument syntax for the top-level command. - * - * @param {string} desc - * @returns {Command} for chaining - */ - arguments(desc: string): Command; - - /** - * Parse expected `args`. - * - * For example `["[type]"]` becomes `[{ required: false, name: 'type' }]`. - * - * @param {string[]} args - * @returns {Command} for chaining - */ - parseExpectedArgs(args: string[]): Command; - - /** - * Register callback `fn` for the command. - * - * @example - * program - * .command('help') - * .description('display verbose help') - * .action(function() { - * // output help here - * }); - * - * @param {(...args: any[]) => void} fn - * @returns {Command} for chaining - */ - action(fn: (...args: any[]) => void): Command; - - /** - * Define option with `flags`, `description` and optional - * coercion `fn`. - * - * The `flags` string should contain both the short and long flags, - * separated by comma, a pipe or space. The following are all valid - * all will output this way when `--help` is used. - * - * "-p, --pepper" - * "-p|--pepper" - * "-p --pepper" - * - * @example - * // simple boolean defaulting to false - * program.option('-p, --pepper', 'add pepper'); - * - * --pepper - * program.pepper - * // => Boolean - * - * // simple boolean defaulting to true - * program.option('-C, --no-cheese', 'remove cheese'); - * - * program.cheese - * // => true - * - * --no-cheese - * program.cheese - * // => false - * - * // required argument - * program.option('-C, --chdir ', 'change the working directory'); - * - * --chdir /tmp - * program.chdir - * // => "/tmp" - * - * // optional argument - * program.option('-c, --cheese [type]', 'add cheese [marble]'); - * - * @param {string} flags - * @param {string} [description] - * @param {((arg1: any, arg2: any) => void) | RegExp} [fn] function or default - * @param {*} [defaultValue] - * @returns {Command} for chaining - */ - option(flags: string, description?: string, fn?: ((arg1: any, arg2: any) => void) | RegExp, defaultValue?: any): Command; - option(flags: string, description?: string, defaultValue?: any): Command; - - /** - * Allow unknown options on the command line. - * - * @param {boolean} [arg] if `true` or omitted, no error will be thrown for unknown options. - * @returns {Command} for chaining - */ - allowUnknownOption(arg?: boolean): Command; - - /** - * Parse `argv`, settings options and invoking commands when defined. - * - * @param {string[]} argv - * @returns {Command} for chaining - */ - parse(argv: string[]): Command; - - /** - * Parse options from `argv` returning `argv` void of these options. - * - * @param {string[]} argv - * @returns {ParseOptionsResult} - */ - parseOptions(argv: string[]): commander.ParseOptionsResult; - - /** - * Return an object containing options as key-value pairs - * - * @returns {{[key: string]: any}} - */ - opts(): { [key: string]: any }; - - /** - * Set the description to `str`. - * - * @param {string} str - * @param {{[argName: string]: string}} argsDescription - * @return {(Command | string)} - */ - description(str: string, argsDescription?: {[argName: string]: string}): Command; - description(): string; - - /** - * Set an alias for the command. - * - * @param {string} alias - * @return {(Command | string)} - */ - alias(alias: string): Command; - alias(): string; - - /** - * Set or get the command usage. - * - * @param {string} str - * @return {(Command | string)} - */ - usage(str: string): Command; - usage(): string; - - /** - * Set the name of the command. - * - * @param {string} str - * @return {Command} - */ - name(str: string): Command; - - /** - * Get the name of the command. - * - * @return {string} - */ - name(): string; - - /** - * Output help information for this command. - * - * @param {(str: string) => string} [cb] - */ - outputHelp(cb?: (str: string) => string): void; - - /** Output help information and exit. - * - * @param {(str: string) => string} [cb] - */ - help(cb?: (str: string) => string): never; - } - -} - -declare namespace commander { - - type Command = local.Command - - type Option = local.Option - - interface CommandOptions { - noHelp?: boolean; - isDefault?: boolean; - } - - interface ParseOptionsResult { - args: string[]; - unknown: string[]; - } - - interface CommanderStatic extends Command { - Command: typeof local.Command; - Option: typeof local.Option; - CommandOptions: CommandOptions; - ParseOptionsResult: ParseOptionsResult; - } - -} - -declare const commander: commander.CommanderStatic; -export = commander; diff --git a/node_modules/comment-parser/.eslintignore b/node_modules/comment-parser/.eslintignore deleted file mode 100644 index 8d87b1d2..00000000 --- a/node_modules/comment-parser/.eslintignore +++ /dev/null @@ -1 +0,0 @@ -node_modules/* diff --git a/node_modules/comment-parser/.eslintrc.json b/node_modules/comment-parser/.eslintrc.json deleted file mode 100644 index dc82bd7f..00000000 --- a/node_modules/comment-parser/.eslintrc.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "extends": "standard", - "env": { - "browser": true, - "node": true, - "mocha": true - }, - "rules": { - "camelcase": "off" - } -} diff --git a/node_modules/comment-parser/CHANGELOG.md b/node_modules/comment-parser/CHANGELOG.md deleted file mode 100644 index a406a226..00000000 --- a/node_modules/comment-parser/CHANGELOG.md +++ /dev/null @@ -1,91 +0,0 @@ -# v0.7.2 -- make stringify to start each line with * in multiline comments - -# v0.7.1 -- ensure non-space characters after asterisk are included in source - -# v0.7.0 -- allow fenced blocks in tag description, see opts.fence - -# v0.6.2 -- document TypeScript definitions - -# v0.6.1 -- adjust strigifier indentation - -# v0.6.0 -- soft-drop node@6 support -- migrate to ES6 syntax -- allow to generate comments out of parsed data - -# v0.5.5 -- allow loose tag names, e.g. @.tag, @-tag - -# v0.5.4 -- allow quoted literal names, e.g. `@tag "My Var" description` - -# v0.5.3 -- corrected TypeScript definitions - -# v0.5.2 -- added TypeScript definitions -- removed `readable-stream` dependency - -# v0.5.1 -- Support for tab as separator between tag components. -- Docs: Indicate when `optional` is `true`; `default` property - -# v0.5.0 -- line wrapping control with `opts.join` - -# v0.4.2 -- tolerate inconsistent lines alignment within block - -# v0.4.1 -- refactored parsing, allow to not start lines with "* " inside block - -# v0.3.2 -- fix RegExp for `description` extraction to allow $ char - -# v0.3.1 -- use `readable-stream` fro Node 0.8 comatibility -- allow to pass optional parameters to `parse.file(path [,opts], done)` -- allow `parse.stream` to work with Buffers in addition to strings - -# v0.3.0 -- `feature` allow to use custom parsers -- `feature` always include source, no `raw_value` option needed -- `bugfix` always provide `optional` tag property -- `refactor` clean up tests - -# v0.2.3 - -- `bugfix` Accept `/** one line */` comments -- `refactor` Get rid of `lodash` to avoid unnecessary extra size when bundled - -# v0.2.2 - -- `feature` allow spaces in default values `@my-tag {my.type} [name=John Doe]` - -# v0.2.1 - -- `refactor` make line pasing mechanism more tolerable - -# v0.2.0 - -- `feature` include source line numbers in parsed data -- `feature` optionally prevent dotten names expanding - -# v0.1.2 - -- `bugfix` Allow to build nested tags from `name.subname` even if `name` wasn't d -- `bugfix` Preserve indentation when extracting comments - -# v0.1.1 - -- `improvement` `parse(source)` returns array of all blocks found in source or an empty array -- `bugfix` fixed indented blocks parsing - -# v0.1.0 - -Initial implementation diff --git a/node_modules/comment-parser/LICENSE b/node_modules/comment-parser/LICENSE deleted file mode 100644 index c91d3e72..00000000 --- a/node_modules/comment-parser/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Sergii Iavorskyi - -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. \ No newline at end of file diff --git a/node_modules/comment-parser/README.md b/node_modules/comment-parser/README.md deleted file mode 100644 index bd857fd9..00000000 --- a/node_modules/comment-parser/README.md +++ /dev/null @@ -1,221 +0,0 @@ -# comment-parser - -Generic JSDoc-like comment parser. This library is not intended to be documentation generator, but rather composite unit for it. - -`npm install comment-parser` - -Module provides `parse(s: string[, opts: object]): object[]` function which takes `/** ... */` comment string and returns array of objects with parsed data. - -It is not trying to detect relations between tags or somehow recognize their meaning. Any tag can be used, as long as it satisfies the format. - -```javascript -/** - * Singleline or multiline description text. Line breaks are preserved. - * - * @some-tag {Type} name Singleline or multiline description text - * @some-tag {Type} name.subname Singleline or multiline description text - * @some-tag {Type} name.subname.subsubname Singleline or - * multiline description text - * @some-tag {Type} [optionalName=someDefault] - * @another-tag - */ -``` - -this would be parsed into following - -```json -[{ - "tags": [{ - "tag": "some-tag", - "type": "Type", - "name": "name", - "optional": false, - "description": "Singleline or multiline description text", - "line": 3, - "source": "@some-tag {Type} name Singleline or multiline description text" - }, { - "tag": "some-tag", - "type": "Type", - "name": "name.subname", - "optional": false, - "description": "Singleline or multiline description text", - "line": 4, - "source": "@some-tag {Type} name.subname Singleline or multiline description text" - }, { - "tag": "some-tag", - "type": "Type", - "name": "name.subname.subsubname", - "optional": false, - "description": "Singleline or\nmultiline description text", - "line": 5, - "source": "@some-tag {Type} name.subname.subsubname Singleline or\nmultiline description text" - }, { - "tag": "some-tag", - "type": "Type", - "name": "optionalName", - "optional": true, - "description": "", - "line": 7, - "default": "someDefault", - "source": "@some-tag {Type} [optionalName=someDefault]" - }, { - "tag": "another-tag", - "name": "", - "optional": false, - "type": "", - "description": "", - "line": 8, - "source": "@another-tag" - }], - "line": 0, - "description": "Singleline or multiline description text. Line breaks are preserved.", - "source": "Singleline or multiline description text. Line breaks are preserved.\n\n@some-tag {Type} name Singleline or multiline description text\n@some-tag {Type} name.subname Singleline or multiline description text\n@some-tag {Type} name.subname.subsubname Singleline or\nmultiline description text\n@another-tag" -}] -``` - -Below are examples of acceptable comment formats - -```javascript -/** online comment */ - -/** first line - * second line */ - -/** - No *s on middle lines is acceptable too - which might be convenient for writing big - chunks of text. - - * keeping *s on some lines - * would work either - - left bound is determined by opening marker position - and white space will be trimmed as there was '* ' - */ - -``` - -Comments starting with `/***` and `/*` are ignored. - -Also you can parse entire file with `parse.file('path/to/file', callback)` or acquire an instance of [Transform](http://nodejs.org/api/stream.html#stream_class_stream_transform) stream with `parse.stream()`. - -## Options - -### `dotted_names: boolean` - -By default dotted names like `name.subname.subsubname` will be expanded into -nested sections, this can be prevented by passing `opts.dotted_names = false`. - -### `trim: boolean` - -Set this to `false` to avoid the default of trimming whitespace at the start and -end of each line. - -### `join: string | number | boolean` - -If the following lines of a multiline comment do not start with a star, `join` will have the following effect on *tag* `source` (and `description`) when joining the lines together: - -1. If a string, use that string in place of the leading whitespace (and avoid newlines). -2. If a non-zero number (e.g., `1`), do no trimming and avoid newlines. -3. If `undefined`, `false`, or `0`, use the default behavior of not trimming - but adding a newline. -4. Otherwise (e.g., if `join` is `true`), replace any leading whitespace with a single space and avoid newlines. - -Note that if a multi-line comment has lines that start with a star, these will -be appended with initial whitespace as is and with newlines regardless of the -`join` setting. - -Note also that the *comment* `source` will not be changed by this setting. - -### `fence: string | RegExp | ((source: string) => boolean)` - -Set to a string or regular expression to toggle state upon finding an -odd number of matches within a line. Defaults to \`\`\`. - -If set to a function, it should return `true` to toggle fenced state; -upon returning `true` the first time, this will prevent subsequent lines -from being interpreted as starting a new jsdoc tag until such time as the -function returns `true` again to indicate that the state has toggled -back. - -### `parsers: Parser[]` (Custom parsers) - -In case you need to parse tags in different way you can pass `opts.parsers = [parser1, ..., parserN]`, where each parser is `function name(str:String, data:Object):{source:String, data:Object}`. - -Each parser function takes string left after previous parsers applied and data produced by them. And returns `null` or `{source: '', data:{}}` where `source` is consumed substring and `data` is a payload with tag node fields. - -Tag node data is build by merging result bits from all parsers. Here is some example that is not doing actual parsing but is demonstrating the flow: - -```javascript -/** - * Source to be parsed below - * @tag {type} name Description - */ -parse(source, {parsers: [ - // takes entire string - function parse_tag(str, data) { - return {source: ' @tag', data: {tag: 'tag'}}; - }, - // parser throwing exception - function check_tag(str, data) { - if (allowed_tags.indexOf(data.tag) === -1) { - throw new Error('Unrecognized tag "' + data.tag + '"'); - } - }, - // takes the rest of the string after ' @tag'' - function parse_name1(str, data) { - return {source: ' name', data: {name: 'name1'}}; - }, - // alternative name parser - function parse_name2(str, data) { - return {source: ' name', data: {name: 'name2'}}; - } -]}); -``` - -This would produce following: - -```json -[{ - "tags": [{ - "tag": "tag", - "errors": [ - "check_tag: Unrecognized tag \"tag\"" - ], - "name": "name2", - "optional": false, - "type": "", - "description": "", - "line": 2, - "source": "@tag {type} name Description" - }], - "line": 0, - "description": "Source to be parsed below", - "source": "Source to be parsed below\n@tag {type} name Description" -}] -``` - -## Stringifying - -One may also convert `comment-parser` JSON structures back into strings using -the `stringify` method (`stringify(o: (object|Array) [, opts: object]): string`). - -This method accepts the JSON as its first argument and an optional options -object with an `indent` property set to either a string or a number that -will be used to determine the number of spaces of indent. The indent of the -start of the doc block will be one space less than the indent of each line of -asterisks for the sake of alignment as per usual practice. - -The `stringify` export delegates to the specialized methods `stringifyBlocks`, -`stringifyBlock`, and `stringifyTag`, which are available on the `stringify` -function object. - -## Packaging - -`comment-parser` is CommonJS module and was primarely designed to be used with Node. Module `index.js` includes stream and file functionality. Use prser-only module in browser `comment-parser/parse.js` - -## Contributors - -``` -> npm info --registry https://registry.npmjs.org comment-parser contributors -``` diff --git a/node_modules/comment-parser/index.d.ts b/node_modules/comment-parser/index.d.ts deleted file mode 100644 index 03772d90..00000000 --- a/node_modules/comment-parser/index.d.ts +++ /dev/null @@ -1,192 +0,0 @@ -// Type definitions for comment-parser -// Project: comment-parser -// Definitions by: Javier "Ciberman" Mora - -declare namespace parse { - - /** - * In case you need to parse tags in a different way you can specify custom parsers here. - * Each parser function takes string left after previous parsers were applied and the data produced by them. - * It should return either `undefined` or the new object, where `source` is the consumed substring. - */ - export type Parser = (str: string, data: any) => { source: string, data: any }; - - /** - * Represents a parsed doc comment. - */ - export interface Comment { - /** - * A list of tags that are present in this doc comment. - */ - tags: Tag[]; - /** - * The starting line in the source code of this doc comment. - */ - line: number; - /** - * The description of this doc comment. Empty string if no description was specified. - */ - description: string; - /** - * The source of this doc comment, exactly as it appeared in the doc comment before parsing. - */ - source: string; - } - - /** - * Represents a parsed tag. A tag has the following format: - * > @tag {type} [name=default] description - */ - export interface Tag { - /** - * The tag's kind, eg `param` or `return`. - */ - tag: string; - /** - * The name of this tag, ie the first word after the tag. Empty string if no name was specified. - */ - name: string; - /** - * `true` if the tag is optional (tag name enclosed in brackets), `false` otherwise. - */ - optional: boolean; - /** - * The type declaration of this tag that is enclosed in curly braces. Empty string if no type was specified. - */ - type: string; - /** - * The description of this tag that comes after the name. Empty string if no description was specified. - */ - description: string; - /** - * The line number where this tag starts - */ - line: number; - /** - * The source of this tag, exactly as it appeared in the doc comment before parsing. - */ - source: string; - /** - * The default value for this tag. `undefined` in case no default value was specified. - */ - default?: string; - /** - * A list of errors that occurred during the parsing of this tag. `undefined` if not error occurred. - */ - errors? : string[]; - /** - * If `dotted_names` was set to `true`, a list of sub tags. `undefined` if `dotted_names` was set to `false` or if - * no sub tags exist. - */ - tags?: Tag[]; - } - - /** - * Options for parsing doc comments. - */ - export interface Options { - /** - * In case you need to parse tags in a different way you can specify custom parsers here. - * Each parser function takes string left after previous parsers were applied and the data produced by them. - * It should return either `undefined` or the new object, where `source` is the consumed substring. - * - * If you specify custom parsers, the default parsers are overwritten, but you can access them via the constant - * `PARSERS`. - */ - parsers: Parser[]; - /** - * By default dotted names like `name.subname.subsubname` will be expanded into nested sections, this can be - * prevented by passing `opts.dotted_names = false`. - */ - dotted_names: boolean; - /** - * Impacts behavior of joining non-asterisked multiline comments. Strings, - * non-zero numbers, or `true` will collapse newlines. Strings will - * additionally replace leading whitespace and `true` will replace with - * a single space. - */ - join: string | number | boolean; - /** - * `true` to trim whitespace at the start and end of each line, `false` otherwise. - */ - trim: boolean; - /** - * Return `true` to toggle fenced state; upon returning `true` the - * first time, will prevent subsequent lines from being interpreted as - * starting a new jsdoc tag until such time as the function returns - * `true` again to indicate that the state has toggled back; can also - * be simply set to a string or regular expression which will toggle - * state upon finding an odd number of matches within a line. - */ - fence: string | RegExp | ((source: string) => boolean); - } - - /** - * Options for turning a parsed doc comment back into a string. - */ - export interface StringifyOptions { - /** - * Indentation for each line. If a string is passed, that string is used verbatim to indent each line. If a number - * is passed, indents each line with that many whitespaces. - */ - indent: string | number; - } - - export interface Stringify { - /** - * One may also convert comment-parser JSON structures back into strings using this stringify method. - * - * This method accepts the JSON as its first argument and an optional options object with an indent property set to - * either a string or a number that will be used to determine the number of spaces of indent. The indent of the start - * of the doc block will be one space less than the indent of each line of asterisks for the sake of alignment as per - * usual practice. - * - * The stringify export delegates to the specialized methods `stringifyBlocks`, `stringifyBlock`, and - * `stringifyTag`, which are available on the stringify function object. - * @param comment A tag, comment or a list of comments to stringify. - * @param options Options to control how the comment or comments are stringified. - * @return The stringified doc comment(s). - */ - (comment: Tag | Comment | Comment[], options?: Partial): string; - /** - * Similar to `stringify`, but only accepts a list of doc comments. - * @param comments A list of comments to stringify. - * @param options Options to control how the comments are stringified. - * @return The stringified doc comment(s). - */ - stringifyBlocks(comments: Comment[], options?: Partial): string; - /** - * Similar to `stringify`, but only accepts a single doc comment. - * @param comment A comment to stringify. - * @param options Options to control how the comment is stringified. - * @return The stringified doc comment(s). - */ - stringifyBlock(comment: Comment, options?: Partial): string; - /** - * Similar to `stringify`, but only accepts a single tag. - * @param tag A tag to stringify. - * @param options Options to control how the tag is stringified. - * @return The stringified doc comment(s). - */ - stringifyTag(tag: Tag, options?: Partial): string; - } - - export const stringify: parse.Stringify; - - /** - * The default list of parsers that is used to parse comments. - */ - export const PARSERS: Record<"parse_tag" | "parse_type" | "parse_description" | "parse_name", Parser> -} - -/** - * The main method of this module which takes comment string and returns an array of objects with parsed data. - * It is not trying to detect relations between tags or somehow recognize their meaning. Any tag can be used, as long - * as it satisfies the format. - * @param str A string with doc comments and source code to parse. - * @param opts Options to control how the source string is parsed. - * @return The parsed list of doc comments. - */ -declare function parse(str: string, opts?: Partial): parse.Comment[]; - -export = parse; diff --git a/node_modules/comment-parser/index.js b/node_modules/comment-parser/index.js deleted file mode 100644 index c673db3d..00000000 --- a/node_modules/comment-parser/index.js +++ /dev/null @@ -1,64 +0,0 @@ - -'use strict' - -const fs = require('fs') -const stream = require('stream') - -const parse = require('./parser') - -const stringify = require('./stringifier') - -module.exports = parse - -module.exports.stringify = stringify - -/* ------- Transform stream ------- */ - -class Parser extends stream.Transform { - constructor (opts) { - opts = opts || {} - super({ objectMode: true }) - this._extract = parse.mkextract(opts) - } - - _transform (data, encoding, done) { - let block - const lines = data.toString().split(/\n/) - - while (lines.length) { - block = this._extract(lines.shift()) - if (block) { - this.push(block) - } - } - - done() - } -} - -module.exports.stream = function stream (opts) { - return new Parser(opts) -} - -/* ------- File parser ------- */ - -module.exports.file = function file (file_path, done) { - let opts = {} - const collected = [] - - if (arguments.length === 3) { - opts = done - done = arguments[2] - } - - return fs.createReadStream(file_path, { encoding: 'utf8' }) - .on('error', done) - .pipe(new Parser(opts)) - .on('error', done) - .on('data', function (data) { - collected.push(data) - }) - .on('finish', function () { - done(null, collected) - }) -} diff --git a/node_modules/comment-parser/package.json b/node_modules/comment-parser/package.json deleted file mode 100644 index 02756bea..00000000 --- a/node_modules/comment-parser/package.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "name": "comment-parser", - "version": "0.7.2", - "description": "Generic JSDoc-like comment parser. ", - "main": "index.js", - "types": "index.d.ts", - "directories": { - "test": "tests" - }, - "dependencies": {}, - "devDependencies": { - "chai": "^4.2.0", - "eslint": "^6.6.0", - "eslint-config-standard": "^14.1.0", - "eslint-plugin-import": "^2.18.2", - "eslint-plugin-node": "^10.0.0", - "eslint-plugin-promise": "^4.2.1", - "eslint-plugin-standard": "^4.0.1", - "mocha": "^6.2.2", - "nodemon": "^1.19.4", - "nyc": "^14.1.1", - "typescript": "^3.6.4" - }, - "engines": { - "node": ">= 6.0.0" - }, - "scripts": { - "typescript": "tsc index.d.ts", - "lint:fix": "eslint --fix .", - "test:lint": "eslint .", - "test:typescript": "tsc index.d.ts", - "test:unit": "nyc mocha tests", - "test": "npm run test:typescript && npm run test:lint && npm run test:unit", - "watch": "nodemon -q -i node_modules -x npm test" - }, - "nyc": { - "branches": 85, - "lines": 85, - "functions": 85, - "statements": 85, - "exclude": [ - "tests" - ] - }, - "repository": { - "type": "git", - "url": "git@github.com:yavorskiy/comment-parser.git" - }, - "keywords": [ - "jsdoc", - "comments", - "parser" - ], - "author": "Sergii Iavorskyi (https://github.com/yavorskiy)", - "contributors": [ - "Alexej Yaroshevich (https://github.com/zxqfox)", - "Andre Wachsmuth (https://github.com/blutorange)", - "Brett Zamir (https://github.com/brettz9)", - "Dieter Oberkofler (https://github.com/doberkofler)", - "Evgeny Reznichenko (https://github.com/zxcabs)", - "Javier \"Ciberma\" Mora (https://github.com/jhm-ciberman)", - "Jordan Harband (https://github.com/ljharb)", - "tengattack (https://github.com/tengattack)" - ], - "license": "MIT", - "bugs": { - "url": "https://github.com/yavorskiy/comment-parser/issues" - }, - "homepage": "https://github.com/yavorskiy/comment-parser" -} diff --git a/node_modules/comment-parser/parser.js b/node_modules/comment-parser/parser.js deleted file mode 100644 index c827b72e..00000000 --- a/node_modules/comment-parser/parser.js +++ /dev/null @@ -1,286 +0,0 @@ - -'use strict' - -const PARSERS = require('./parsers') - -const MARKER_START = '/**' -const MARKER_START_SKIP = '/***' -const MARKER_END = '*/' - -/* ------- util functions ------- */ - -function find (list, filter) { - let i = list.length - let matchs = true - - while (i--) { - for (const k in filter) { - if ({}.hasOwnProperty.call(filter, k)) { - matchs = (filter[k] === list[i][k]) && matchs - } - } - if (matchs) { return list[i] } - } - return null -} - -/* ------- parsing ------- */ - -/** - * Parses "@tag {type} name description" - * @param {string} str Raw doc string - * @param {Array} parsers Array of parsers to be applied to the source - * @returns {object} parsed tag node - */ -function parse_tag (str, parsers) { - if (typeof str !== 'string' || !(/\s*@/).test(str)) { return null } - - const data = parsers.reduce(function (state, parser) { - let result - - try { - result = parser(state.source, Object.assign({}, state.data)) - } catch (err) { - state.data.errors = (state.data.errors || []) - .concat(parser.name + ': ' + err.message) - } - - if (result) { - state.source = state.source.slice(result.source.length) - state.data = Object.assign(state.data, result.data) - } - - return state - }, { - source: str, - data: {} - }).data - - data.optional = !!data.optional - data.type = data.type === undefined ? '' : data.type - data.name = data.name === undefined ? '' : data.name - data.description = data.description === undefined ? '' : data.description - - return data -} - -/** - * Parses comment block (array of String lines) - */ -function parse_block (source, opts) { - const trim = opts.trim - ? s => s.trim() - : s => s - - const toggleFence = (typeof opts.fence === 'function') - ? opts.fence - : line => line.split(opts.fence).length % 2 === 0 - - let source_str = source - .map((line) => { return trim(line.source) }) - .join('\n') - - source_str = trim(source_str) - - const start = source[0].number - - // merge source lines into tags - // we assume tag starts with "@" - source = source - .reduce(function (state, line) { - line.source = trim(line.source) - - // start of a new tag detected - if (line.source.match(/^\s*@(\S+)/) && !state.isFenced) { - state.tags.push({ - source: [line.source], - line: line.number - }) - // keep appending source to the current tag - } else { - const tag = state.tags[state.tags.length - 1] - if (opts.join !== undefined && opts.join !== false && opts.join !== 0 && - !line.startWithStar && tag.source.length > 0) { - let source - if (typeof opts.join === 'string') { - source = opts.join + line.source.replace(/^\s+/, '') - } else if (typeof opts.join === 'number') { - source = line.source - } else { - source = ' ' + line.source.replace(/^\s+/, '') - } - tag.source[tag.source.length - 1] += source - } else { - tag.source.push(line.source) - } - } - - if (toggleFence(line.source)) { - state.isFenced = !state.isFenced - } - return state - }, { - tags: [{ source: [] }], - isFenced: false - }) - .tags - .map((tag) => { - tag.source = trim(tag.source.join('\n')) - return tag - }) - - // Block description - const description = source.shift() - - // skip if no descriptions and no tags - if (description.source === '' && source.length === 0) { - return null - } - - const tags = source.reduce(function (tags, tag) { - const tag_node = parse_tag(tag.source, opts.parsers) - if (!tag_node) { return tags } - - tag_node.line = tag.line - tag_node.source = tag.source - - if (opts.dotted_names && tag_node.name.includes('.')) { - let parent_name - let parent_tag - let parent_tags = tags - const parts = tag_node.name.split('.') - - while (parts.length > 1) { - parent_name = parts.shift() - parent_tag = find(parent_tags, { - tag: tag_node.tag, - name: parent_name - }) - - if (!parent_tag) { - parent_tag = { - tag: tag_node.tag, - line: Number(tag_node.line), - name: parent_name, - type: '', - description: '' - } - parent_tags.push(parent_tag) - } - - parent_tag.tags = parent_tag.tags || [] - parent_tags = parent_tag.tags - } - - tag_node.name = parts[0] - parent_tags.push(tag_node) - return tags - } - - return tags.concat(tag_node) - }, []) - - return { - tags, - line: start, - description: description.source, - source: source_str - } -} - -/** - * Produces `extract` function with internal state initialized - */ -function mkextract (opts) { - let chunk = null - let indent = 0 - let number = 0 - - opts = Object.assign({}, { - trim: true, - dotted_names: false, - fence: '```', - parsers: [ - PARSERS.parse_tag, - PARSERS.parse_type, - PARSERS.parse_name, - PARSERS.parse_description - ] - }, opts || {}) - - /** - * Read lines until they make a block - * Return parsed block once fullfilled or null otherwise - */ - return function extract (line) { - let result = null - const startPos = line.indexOf(MARKER_START) - const endPos = line.indexOf(MARKER_END) - - // if open marker detected and it's not, skip one - if (startPos !== -1 && line.indexOf(MARKER_START_SKIP) !== startPos) { - chunk = [] - indent = startPos + MARKER_START.length - } - - // if we are on middle of comment block - if (chunk) { - let lineStart = indent - let startWithStar = false - - // figure out if we slice from opening marker pos - // or line start is shifted to the left - const nonSpaceChar = line.match(/\S/) - - // skip for the first line starting with /** (fresh chunk) - // it always has the right indentation - if (chunk.length > 0 && nonSpaceChar) { - if (nonSpaceChar[0] === '*') { - const afterNonSpaceCharIdx = nonSpaceChar.index + 1 - const extraCharIsSpace = line.charAt(afterNonSpaceCharIdx) === ' ' - lineStart = afterNonSpaceCharIdx + (extraCharIsSpace ? 1 : 0) - startWithStar = true - } else if (nonSpaceChar.index < indent) { - lineStart = nonSpaceChar.index - } - } - - // slice the line until end or until closing marker start - chunk.push({ - number, - startWithStar, - source: line.slice(lineStart, endPos === -1 ? line.length : endPos) - }) - - // finalize block if end marker detected - if (endPos !== -1) { - result = parse_block(chunk, opts) - chunk = null - indent = 0 - } - } - - number += 1 - return result - } -} - -/* ------- Public API ------- */ - -module.exports = function parse (source, opts) { - const blocks = [] - const extract = mkextract(opts) - const lines = source.split(/\n/) - - lines.forEach((line) => { - const block = extract(line) - if (block) { - blocks.push(block) - } - }) - - return blocks -} - -module.exports.PARSERS = PARSERS -module.exports.mkextract = mkextract diff --git a/node_modules/comment-parser/parsers.js b/node_modules/comment-parser/parsers.js deleted file mode 100644 index dcf3e6bb..00000000 --- a/node_modules/comment-parser/parsers.js +++ /dev/null @@ -1,110 +0,0 @@ -'use strict' - -function skipws (str) { - let i = 0 - do { - if (str[i] !== ' ' && str[i] !== '\t') { return i } - } while (++i < str.length) - return i -} - -/* ------- default parsers ------- */ - -const PARSERS = {} - -PARSERS.parse_tag = function parse_tag (str) { - const result = str.match(/^\s*@(\S+)/) - if (!result) { throw new Error('Invalid `@tag`, missing @ symbol') } - - return { - source: result[0], - data: { tag: result[1] } - } -} - -PARSERS.parse_type = function parse_type (str, data) { - if (data.errors && data.errors.length) { return null } - - let pos = skipws(str) - let res = '' - let curlies = 0 - - if (str[pos] !== '{') { return null } - - while (pos < str.length) { - curlies += (str[pos] === '{' ? 1 : (str[pos] === '}' ? -1 : 0)) - res += str[pos] - pos++ - if (curlies === 0) { break } - } - - if (curlies !== 0) { throw new Error('Invalid `{type}`, unpaired curlies') } - - return { - source: str.slice(0, pos), - data: { type: res.slice(1, -1) } - } -} - -PARSERS.parse_name = function parse_name (str, data) { - if (data.errors && data.errors.length) { return null } - - let pos = skipws(str) - let name = '' - let brackets = 0 - let res = { optional: false } - - // if it starts with quoted group assume it is a literal - const quotedGroups = str.slice(pos).split('"') - if (quotedGroups.length > 1 && quotedGroups[0] === '' && quotedGroups.length % 2 === 1) { - name = quotedGroups[1] - pos += name.length + 2 - // assume name is non-space string or anything wrapped into brackets - } else { - while (pos < str.length) { - brackets += (str[pos] === '[' ? 1 : (str[pos] === ']' ? -1 : 0)) - name += str[pos] - pos++ - if (brackets === 0 && /\s/.test(str[pos])) { break } - } - - if (brackets !== 0) { throw new Error('Invalid `name`, unpaired brackets') } - - res = { name: name, optional: false } - - if (name[0] === '[' && name[name.length - 1] === ']') { - res.optional = true - name = name.slice(1, -1) - - if (name.indexOf('=') !== -1) { - const parts = name.split('=') - name = parts[0] - res.default = parts[1].replace(/^(["'])(.+)(\1)$/, '$2') - } - } - } - - res.name = name - - return { - source: str.slice(0, pos), - data: res - } -} - -PARSERS.parse_description = function parse_description (str, data) { - if (data.errors && data.errors.length) { return null } - - const result = str.match(/^\s+((.|\s)+)?/) - - if (result) { - return { - source: result[0], - data: { description: result[1] === undefined ? '' : result[1] } - } - } - - return null -} - -module.exports = PARSERS diff --git a/node_modules/comment-parser/stringifier.js b/node_modules/comment-parser/stringifier.js deleted file mode 100644 index 78cd5103..00000000 --- a/node_modules/comment-parser/stringifier.js +++ /dev/null @@ -1,57 +0,0 @@ -'use strict' - -const getIndent = (indent) => { - return typeof indent === 'number' ? ' '.repeat(indent) : indent -} - -module.exports = exports = function stringify (arg, opts) { - if (Array.isArray(arg)) { - return stringifyBlocks(arg, opts) - } - if (arg && typeof arg === 'object') { - if ('tag' in arg) { - return stringifyTag(arg, opts) - } - if ('tags' in arg) { - return stringifyBlock(arg, opts) - } - } - throw new TypeError('Unexpected argument passed to `stringify`.') -} - -const stringifyBlocks = exports.stringifyBlocks = function stringifyBlocks ( - blocks, { indent = '' } = {} -) { - const indnt = getIndent(indent) - return blocks.reduce((s, block) => { - return s + stringifyBlock(block, { indent }) - }, (indnt ? indnt.slice(0, -1) : '') + '/**\n') + indnt + '*/' -} - -const stringifyBlock = exports.stringifyBlock = function stringifyBlock ( - block, { indent = '' } = {} -) { - // block.line - const indnt = getIndent(indent) - return (block.description ? `${indnt}${block.description.replace(/^/gm, '* ')}\n${indnt}*\n` : '') + - block.tags.reduce((s, tag) => { - return s + stringifyTag(tag, { indent }) - }, '') -} - -const stringifyTag = exports.stringifyTag = function stringifyTag ( - tag, { indent = '' } = {} -) { - const indnt = getIndent(indent) - const { - type, name, optional, description, tag: tagName, default: deflt //, line , source - } = tag - return indnt + `* @${tagName}` + - (type ? ` {${type}}` : '') + - (name ? ` ${ - optional ? '[' : '' - }${name}${deflt ? `=${deflt}` : ''}${ - optional ? ']' : '' - }` : '') + - (description ? ` ${description.replace(/\n/g, '\n' + indnt + '* ')}` : '') + '\n' -} diff --git a/node_modules/core-js-pure/LICENSE b/node_modules/core-js-pure/LICENSE deleted file mode 100644 index 9c4e4e17..00000000 --- a/node_modules/core-js-pure/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2014-2020 Denis Pushkarev - -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. diff --git a/node_modules/core-js-pure/README.md b/node_modules/core-js-pure/README.md deleted file mode 100644 index 478f4937..00000000 --- a/node_modules/core-js-pure/README.md +++ /dev/null @@ -1,58 +0,0 @@ -# core-js-pure - -[![Sponsors on Open Collective](https://opencollective.com/core-js/sponsors/badge.svg)](#sponsors) [![Backers on Open Collective](https://opencollective.com/core-js/backers/badge.svg)](#backers) [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/zloirock/core-js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![version](https://img.shields.io/npm/v/core-js-pure.svg)](https://www.npmjs.com/package/core-js-pure) [![npm downloads](https://img.shields.io/npm/dm/core-js-pure.svg)](http://npm-stat.com/charts.html?package=core-js-pure&author=&from=2019-03-18) [![Build Status](https://travis-ci.org/zloirock/core-js.svg)](https://travis-ci.org/zloirock/core-js) [![devDependency status](https://david-dm.org/zloirock/core-js/dev-status.svg)](https://david-dm.org/zloirock/core-js?type=dev) - -> Modular standard library for JavaScript. Includes polyfills for [ECMAScript up to 2019](https://github.com/zloirock/core-js#ecmascript): [promises](https://github.com/zloirock/core-js#ecmascript-promise), [symbols](https://github.com/zloirock/core-js#ecmascript-symbol), [collections](https://github.com/zloirock/core-js#ecmascript-collections), iterators, [typed arrays](https://github.com/zloirock/core-js#ecmascript-typed-arrays), many other features, [ECMAScript proposals](https://github.com/zloirock/core-js#ecmascript-proposals), [some cross-platform WHATWG / W3C features and proposals](#web-standards) like [`URL`](https://github.com/zloirock/core-js#url-and-urlsearchparams). You can load only required features or use it without global namespace pollution. - -## As advertising: the author is looking for a good job -) - -## [core-js@3, babel and a look into the future](https://github.com/zloirock/core-js/tree/master/docs/2019-03-19-core-js-3-babel-and-a-look-into-the-future.md) - -## Raising funds - -`core-js` isn't backed by a company, so the future of this project depends on you. Become a sponsor or a backer [**on Open Collective**](https://opencollective.com/core-js) or [**on Patreon**](https://www.patreon.com/zloirock) if you are interested in `core-js`. - ---- - - - ---- - - - ---- - -[*Example*](http://goo.gl/a2xexl): -```js -import 'core-js'; // <- at the top of your entry point - -Array.from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -[1, [2, 3], [4, [5]]].flat(2); // => [1, 2, 3, 4, 5] -Promise.resolve(32).then(x => console.log(x)); // => 32 -``` - -*You can load only required features*: -```js -import 'core-js/features/array/from'; // <- at the top of your entry point -import 'core-js/features/array/flat'; // <- at the top of your entry point -import 'core-js/features/set'; // <- at the top of your entry point -import 'core-js/features/promise'; // <- at the top of your entry point - -Array.from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -[1, [2, 3], [4, [5]]].flat(2); // => [1, 2, 3, 4, 5] -Promise.resolve(32).then(x => console.log(x)); // => 32 -``` - -*Or use it without global namespace pollution*: -```js -import from from 'core-js-pure/features/array/from'; -import flat from 'core-js-pure/features/array/flat'; -import Set from 'core-js-pure/features/set'; -import Promise from 'core-js-pure/features/promise'; - -from(new Set([1, 2, 3, 2, 1])); // => [1, 2, 3] -flat([1, [2, 3], [4, [5]]], 2); // => [1, 2, 3, 4, 5] -Promise.resolve(32).then(x => console.log(x)); // => 32 -``` - -**It's a version without global namespace pollution (the third example), for more info see [`core-js` documentation](https://github.com/zloirock/core-js/blob/master/README.md)**. diff --git a/node_modules/core-js-pure/configurator.js b/node_modules/core-js-pure/configurator.js deleted file mode 100644 index 0a5288eb..00000000 --- a/node_modules/core-js-pure/configurator.js +++ /dev/null @@ -1,23 +0,0 @@ -var has = require('./internals/has'); -var isArray = require('./internals/is-array'); -var isForced = require('./internals/is-forced'); -var shared = require('./internals/shared-store'); - -var data = isForced.data; -var normalize = isForced.normalize; -var USE_FUNCTION_CONSTRUCTOR = 'USE_FUNCTION_CONSTRUCTOR'; -var ASYNC_ITERATOR_PROTOTYPE = 'AsyncIteratorPrototype'; - -var setAggressivenessLevel = function (object, constant) { - if (isArray(object)) for (var i = 0; i < object.length; i++) data[normalize(object[i])] = constant; -}; - -module.exports = function (options) { - if (typeof options == 'object') { - setAggressivenessLevel(options.useNative, isForced.NATIVE); - setAggressivenessLevel(options.usePolyfill, isForced.POLYFILL); - setAggressivenessLevel(options.useFeatureDetection, null); - if (has(options, USE_FUNCTION_CONSTRUCTOR)) shared[USE_FUNCTION_CONSTRUCTOR] = !!options[USE_FUNCTION_CONSTRUCTOR]; - if (has(options, ASYNC_ITERATOR_PROTOTYPE)) shared[USE_FUNCTION_CONSTRUCTOR] = options[ASYNC_ITERATOR_PROTOTYPE]; - } -}; diff --git a/node_modules/core-js-pure/es/README.md b/node_modules/core-js-pure/es/README.md deleted file mode 100644 index 872a356e..00000000 --- a/node_modules/core-js-pure/es/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains entry points for [stable ECMAScript features](https://github.com/zloirock/core-js/tree/v3#ecmascript) with dependencies. diff --git a/node_modules/core-js-pure/es/array-buffer/constructor.js b/node_modules/core-js-pure/es/array-buffer/constructor.js deleted file mode 100644 index b7a76ed5..00000000 --- a/node_modules/core-js-pure/es/array-buffer/constructor.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.array-buffer.constructor'); -require('../../modules/es.object.to-string'); -var path = require('../../internals/path'); - -module.exports = path.ArrayBuffer; diff --git a/node_modules/core-js-pure/es/array-buffer/index.js b/node_modules/core-js-pure/es/array-buffer/index.js deleted file mode 100644 index 8697373d..00000000 --- a/node_modules/core-js-pure/es/array-buffer/index.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.array-buffer.constructor'); -require('../../modules/es.array-buffer.is-view'); -require('../../modules/es.array-buffer.slice'); -require('../../modules/es.object.to-string'); -var path = require('../../internals/path'); - -module.exports = path.ArrayBuffer; diff --git a/node_modules/core-js-pure/es/array-buffer/is-view.js b/node_modules/core-js-pure/es/array-buffer/is-view.js deleted file mode 100644 index c86c3b76..00000000 --- a/node_modules/core-js-pure/es/array-buffer/is-view.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array-buffer.is-view'); -var path = require('../../internals/path'); - -module.exports = path.ArrayBuffer.isView; diff --git a/node_modules/core-js-pure/es/array-buffer/slice.js b/node_modules/core-js-pure/es/array-buffer/slice.js deleted file mode 100644 index 931f8bc9..00000000 --- a/node_modules/core-js-pure/es/array-buffer/slice.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.array-buffer.slice'); diff --git a/node_modules/core-js-pure/es/array/concat.js b/node_modules/core-js-pure/es/array/concat.js deleted file mode 100644 index 9a13ce62..00000000 --- a/node_modules/core-js-pure/es/array/concat.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.concat'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'concat'); diff --git a/node_modules/core-js-pure/es/array/copy-within.js b/node_modules/core-js-pure/es/array/copy-within.js deleted file mode 100644 index de8032f6..00000000 --- a/node_modules/core-js-pure/es/array/copy-within.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.copy-within'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'copyWithin'); diff --git a/node_modules/core-js-pure/es/array/entries.js b/node_modules/core-js-pure/es/array/entries.js deleted file mode 100644 index efd91b0f..00000000 --- a/node_modules/core-js-pure/es/array/entries.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'entries'); diff --git a/node_modules/core-js-pure/es/array/every.js b/node_modules/core-js-pure/es/array/every.js deleted file mode 100644 index b95c87f3..00000000 --- a/node_modules/core-js-pure/es/array/every.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.every'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'every'); diff --git a/node_modules/core-js-pure/es/array/fill.js b/node_modules/core-js-pure/es/array/fill.js deleted file mode 100644 index c52d60a1..00000000 --- a/node_modules/core-js-pure/es/array/fill.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.fill'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'fill'); diff --git a/node_modules/core-js-pure/es/array/filter.js b/node_modules/core-js-pure/es/array/filter.js deleted file mode 100644 index f1d0e16d..00000000 --- a/node_modules/core-js-pure/es/array/filter.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.filter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'filter'); diff --git a/node_modules/core-js-pure/es/array/find-index.js b/node_modules/core-js-pure/es/array/find-index.js deleted file mode 100644 index 9ccbdda8..00000000 --- a/node_modules/core-js-pure/es/array/find-index.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.find-index'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'findIndex'); diff --git a/node_modules/core-js-pure/es/array/find.js b/node_modules/core-js-pure/es/array/find.js deleted file mode 100644 index 7b3cc38b..00000000 --- a/node_modules/core-js-pure/es/array/find.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.find'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'find'); diff --git a/node_modules/core-js-pure/es/array/flat-map.js b/node_modules/core-js-pure/es/array/flat-map.js deleted file mode 100644 index f201cbbc..00000000 --- a/node_modules/core-js-pure/es/array/flat-map.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.array.flat-map'); -require('../../modules/es.array.unscopables.flat-map'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'flatMap'); diff --git a/node_modules/core-js-pure/es/array/flat.js b/node_modules/core-js-pure/es/array/flat.js deleted file mode 100644 index c6717609..00000000 --- a/node_modules/core-js-pure/es/array/flat.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.array.flat'); -require('../../modules/es.array.unscopables.flat'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'flat'); diff --git a/node_modules/core-js-pure/es/array/for-each.js b/node_modules/core-js-pure/es/array/for-each.js deleted file mode 100644 index 28518139..00000000 --- a/node_modules/core-js-pure/es/array/for-each.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.for-each'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'forEach'); diff --git a/node_modules/core-js-pure/es/array/from.js b/node_modules/core-js-pure/es/array/from.js deleted file mode 100644 index f54806d2..00000000 --- a/node_modules/core-js-pure/es/array/from.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.string.iterator'); -require('../../modules/es.array.from'); -var path = require('../../internals/path'); - -module.exports = path.Array.from; diff --git a/node_modules/core-js-pure/es/array/includes.js b/node_modules/core-js-pure/es/array/includes.js deleted file mode 100644 index 06f837ce..00000000 --- a/node_modules/core-js-pure/es/array/includes.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.includes'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'includes'); diff --git a/node_modules/core-js-pure/es/array/index-of.js b/node_modules/core-js-pure/es/array/index-of.js deleted file mode 100644 index 83e91e72..00000000 --- a/node_modules/core-js-pure/es/array/index-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.index-of'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'indexOf'); diff --git a/node_modules/core-js-pure/es/array/index.js b/node_modules/core-js-pure/es/array/index.js deleted file mode 100644 index 8c18680f..00000000 --- a/node_modules/core-js-pure/es/array/index.js +++ /dev/null @@ -1,33 +0,0 @@ -require('../../modules/es.string.iterator'); -require('../../modules/es.array.from'); -require('../../modules/es.array.is-array'); -require('../../modules/es.array.of'); -require('../../modules/es.array.concat'); -require('../../modules/es.array.copy-within'); -require('../../modules/es.array.every'); -require('../../modules/es.array.fill'); -require('../../modules/es.array.filter'); -require('../../modules/es.array.find'); -require('../../modules/es.array.find-index'); -require('../../modules/es.array.flat'); -require('../../modules/es.array.flat-map'); -require('../../modules/es.array.for-each'); -require('../../modules/es.array.includes'); -require('../../modules/es.array.index-of'); -require('../../modules/es.array.iterator'); -require('../../modules/es.array.join'); -require('../../modules/es.array.last-index-of'); -require('../../modules/es.array.map'); -require('../../modules/es.array.reduce'); -require('../../modules/es.array.reduce-right'); -require('../../modules/es.array.reverse'); -require('../../modules/es.array.slice'); -require('../../modules/es.array.some'); -require('../../modules/es.array.sort'); -require('../../modules/es.array.species'); -require('../../modules/es.array.splice'); -require('../../modules/es.array.unscopables.flat'); -require('../../modules/es.array.unscopables.flat-map'); -var path = require('../../internals/path'); - -module.exports = path.Array; diff --git a/node_modules/core-js-pure/es/array/is-array.js b/node_modules/core-js-pure/es/array/is-array.js deleted file mode 100644 index d000180b..00000000 --- a/node_modules/core-js-pure/es/array/is-array.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.is-array'); -var path = require('../../internals/path'); - -module.exports = path.Array.isArray; diff --git a/node_modules/core-js-pure/es/array/iterator.js b/node_modules/core-js-pure/es/array/iterator.js deleted file mode 100644 index 726484e0..00000000 --- a/node_modules/core-js-pure/es/array/iterator.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'values'); diff --git a/node_modules/core-js-pure/es/array/join.js b/node_modules/core-js-pure/es/array/join.js deleted file mode 100644 index 523edbf0..00000000 --- a/node_modules/core-js-pure/es/array/join.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.join'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'join'); diff --git a/node_modules/core-js-pure/es/array/keys.js b/node_modules/core-js-pure/es/array/keys.js deleted file mode 100644 index 679d5255..00000000 --- a/node_modules/core-js-pure/es/array/keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'keys'); diff --git a/node_modules/core-js-pure/es/array/last-index-of.js b/node_modules/core-js-pure/es/array/last-index-of.js deleted file mode 100644 index 616897f9..00000000 --- a/node_modules/core-js-pure/es/array/last-index-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.last-index-of'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'lastIndexOf'); diff --git a/node_modules/core-js-pure/es/array/map.js b/node_modules/core-js-pure/es/array/map.js deleted file mode 100644 index 6b641fe2..00000000 --- a/node_modules/core-js-pure/es/array/map.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.map'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'map'); diff --git a/node_modules/core-js-pure/es/array/of.js b/node_modules/core-js-pure/es/array/of.js deleted file mode 100644 index 5153029f..00000000 --- a/node_modules/core-js-pure/es/array/of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.of'); -var path = require('../../internals/path'); - -module.exports = path.Array.of; diff --git a/node_modules/core-js-pure/es/array/reduce-right.js b/node_modules/core-js-pure/es/array/reduce-right.js deleted file mode 100644 index 43cb972f..00000000 --- a/node_modules/core-js-pure/es/array/reduce-right.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.reduce-right'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'reduceRight'); diff --git a/node_modules/core-js-pure/es/array/reduce.js b/node_modules/core-js-pure/es/array/reduce.js deleted file mode 100644 index db06a3ff..00000000 --- a/node_modules/core-js-pure/es/array/reduce.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.reduce'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'reduce'); diff --git a/node_modules/core-js-pure/es/array/reverse.js b/node_modules/core-js-pure/es/array/reverse.js deleted file mode 100644 index d5cc94ee..00000000 --- a/node_modules/core-js-pure/es/array/reverse.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.reverse'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'reverse'); diff --git a/node_modules/core-js-pure/es/array/slice.js b/node_modules/core-js-pure/es/array/slice.js deleted file mode 100644 index 0c9eb942..00000000 --- a/node_modules/core-js-pure/es/array/slice.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.slice'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'slice'); diff --git a/node_modules/core-js-pure/es/array/some.js b/node_modules/core-js-pure/es/array/some.js deleted file mode 100644 index 407d5563..00000000 --- a/node_modules/core-js-pure/es/array/some.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.some'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'some'); diff --git a/node_modules/core-js-pure/es/array/sort.js b/node_modules/core-js-pure/es/array/sort.js deleted file mode 100644 index 03360906..00000000 --- a/node_modules/core-js-pure/es/array/sort.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.sort'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'sort'); diff --git a/node_modules/core-js-pure/es/array/splice.js b/node_modules/core-js-pure/es/array/splice.js deleted file mode 100644 index 95b51f05..00000000 --- a/node_modules/core-js-pure/es/array/splice.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.splice'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'splice'); diff --git a/node_modules/core-js-pure/es/array/values.js b/node_modules/core-js-pure/es/array/values.js deleted file mode 100644 index 726484e0..00000000 --- a/node_modules/core-js-pure/es/array/values.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.array.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'values'); diff --git a/node_modules/core-js-pure/es/array/virtual/concat.js b/node_modules/core-js-pure/es/array/virtual/concat.js deleted file mode 100644 index fc9eb035..00000000 --- a/node_modules/core-js-pure/es/array/virtual/concat.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.concat'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').concat; diff --git a/node_modules/core-js-pure/es/array/virtual/copy-within.js b/node_modules/core-js-pure/es/array/virtual/copy-within.js deleted file mode 100644 index 71cc9bdf..00000000 --- a/node_modules/core-js-pure/es/array/virtual/copy-within.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.copy-within'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').copyWithin; diff --git a/node_modules/core-js-pure/es/array/virtual/entries.js b/node_modules/core-js-pure/es/array/virtual/entries.js deleted file mode 100644 index 1ce2e786..00000000 --- a/node_modules/core-js-pure/es/array/virtual/entries.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.iterator'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').entries; diff --git a/node_modules/core-js-pure/es/array/virtual/every.js b/node_modules/core-js-pure/es/array/virtual/every.js deleted file mode 100644 index cc45acc5..00000000 --- a/node_modules/core-js-pure/es/array/virtual/every.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.every'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').every; diff --git a/node_modules/core-js-pure/es/array/virtual/fill.js b/node_modules/core-js-pure/es/array/virtual/fill.js deleted file mode 100644 index 75b5c8b3..00000000 --- a/node_modules/core-js-pure/es/array/virtual/fill.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.fill'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').fill; diff --git a/node_modules/core-js-pure/es/array/virtual/filter.js b/node_modules/core-js-pure/es/array/virtual/filter.js deleted file mode 100644 index 90cb323d..00000000 --- a/node_modules/core-js-pure/es/array/virtual/filter.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.filter'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').filter; diff --git a/node_modules/core-js-pure/es/array/virtual/find-index.js b/node_modules/core-js-pure/es/array/virtual/find-index.js deleted file mode 100644 index ff1a6218..00000000 --- a/node_modules/core-js-pure/es/array/virtual/find-index.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.find-index'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').findIndex; diff --git a/node_modules/core-js-pure/es/array/virtual/find.js b/node_modules/core-js-pure/es/array/virtual/find.js deleted file mode 100644 index a4372bdc..00000000 --- a/node_modules/core-js-pure/es/array/virtual/find.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.find'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').find; diff --git a/node_modules/core-js-pure/es/array/virtual/flat-map.js b/node_modules/core-js-pure/es/array/virtual/flat-map.js deleted file mode 100644 index 9e379f4d..00000000 --- a/node_modules/core-js-pure/es/array/virtual/flat-map.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../../modules/es.array.flat-map'); -require('../../../modules/es.array.unscopables.flat-map'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').flatMap; diff --git a/node_modules/core-js-pure/es/array/virtual/flat.js b/node_modules/core-js-pure/es/array/virtual/flat.js deleted file mode 100644 index 60b772ee..00000000 --- a/node_modules/core-js-pure/es/array/virtual/flat.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../../modules/es.array.flat'); -require('../../../modules/es.array.unscopables.flat'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').flat; diff --git a/node_modules/core-js-pure/es/array/virtual/for-each.js b/node_modules/core-js-pure/es/array/virtual/for-each.js deleted file mode 100644 index c65b26cf..00000000 --- a/node_modules/core-js-pure/es/array/virtual/for-each.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.for-each'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').forEach; diff --git a/node_modules/core-js-pure/es/array/virtual/includes.js b/node_modules/core-js-pure/es/array/virtual/includes.js deleted file mode 100644 index 732d58be..00000000 --- a/node_modules/core-js-pure/es/array/virtual/includes.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.includes'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').includes; diff --git a/node_modules/core-js-pure/es/array/virtual/index-of.js b/node_modules/core-js-pure/es/array/virtual/index-of.js deleted file mode 100644 index 074e191e..00000000 --- a/node_modules/core-js-pure/es/array/virtual/index-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.index-of'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').indexOf; diff --git a/node_modules/core-js-pure/es/array/virtual/index.js b/node_modules/core-js-pure/es/array/virtual/index.js deleted file mode 100644 index f1455e12..00000000 --- a/node_modules/core-js-pure/es/array/virtual/index.js +++ /dev/null @@ -1,29 +0,0 @@ -require('../../../modules/es.array.concat'); -require('../../../modules/es.array.copy-within'); -require('../../../modules/es.array.every'); -require('../../../modules/es.array.fill'); -require('../../../modules/es.array.filter'); -require('../../../modules/es.array.find'); -require('../../../modules/es.array.find-index'); -require('../../../modules/es.array.flat'); -require('../../../modules/es.array.flat-map'); -require('../../../modules/es.array.for-each'); -require('../../../modules/es.array.includes'); -require('../../../modules/es.array.index-of'); -require('../../../modules/es.array.iterator'); -require('../../../modules/es.array.join'); -require('../../../modules/es.array.last-index-of'); -require('../../../modules/es.array.map'); -require('../../../modules/es.array.reduce'); -require('../../../modules/es.array.reduce-right'); -require('../../../modules/es.array.reverse'); -require('../../../modules/es.array.slice'); -require('../../../modules/es.array.some'); -require('../../../modules/es.array.sort'); -require('../../../modules/es.array.species'); -require('../../../modules/es.array.splice'); -require('../../../modules/es.array.unscopables.flat'); -require('../../../modules/es.array.unscopables.flat-map'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array'); diff --git a/node_modules/core-js-pure/es/array/virtual/iterator.js b/node_modules/core-js-pure/es/array/virtual/iterator.js deleted file mode 100644 index cd9f502f..00000000 --- a/node_modules/core-js-pure/es/array/virtual/iterator.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.iterator'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').values; diff --git a/node_modules/core-js-pure/es/array/virtual/join.js b/node_modules/core-js-pure/es/array/virtual/join.js deleted file mode 100644 index 8cb329e9..00000000 --- a/node_modules/core-js-pure/es/array/virtual/join.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.join'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').join; diff --git a/node_modules/core-js-pure/es/array/virtual/keys.js b/node_modules/core-js-pure/es/array/virtual/keys.js deleted file mode 100644 index 28829901..00000000 --- a/node_modules/core-js-pure/es/array/virtual/keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.iterator'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').keys; diff --git a/node_modules/core-js-pure/es/array/virtual/last-index-of.js b/node_modules/core-js-pure/es/array/virtual/last-index-of.js deleted file mode 100644 index ca1ae9b7..00000000 --- a/node_modules/core-js-pure/es/array/virtual/last-index-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.last-index-of'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').lastIndexOf; diff --git a/node_modules/core-js-pure/es/array/virtual/map.js b/node_modules/core-js-pure/es/array/virtual/map.js deleted file mode 100644 index 7205f966..00000000 --- a/node_modules/core-js-pure/es/array/virtual/map.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.map'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').map; diff --git a/node_modules/core-js-pure/es/array/virtual/reduce-right.js b/node_modules/core-js-pure/es/array/virtual/reduce-right.js deleted file mode 100644 index 0ad59264..00000000 --- a/node_modules/core-js-pure/es/array/virtual/reduce-right.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.reduce-right'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').reduceRight; diff --git a/node_modules/core-js-pure/es/array/virtual/reduce.js b/node_modules/core-js-pure/es/array/virtual/reduce.js deleted file mode 100644 index d9b01c4c..00000000 --- a/node_modules/core-js-pure/es/array/virtual/reduce.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.reduce'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').reduce; diff --git a/node_modules/core-js-pure/es/array/virtual/reverse.js b/node_modules/core-js-pure/es/array/virtual/reverse.js deleted file mode 100644 index 31ca6d86..00000000 --- a/node_modules/core-js-pure/es/array/virtual/reverse.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.reverse'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').reverse; diff --git a/node_modules/core-js-pure/es/array/virtual/slice.js b/node_modules/core-js-pure/es/array/virtual/slice.js deleted file mode 100644 index f60f5d59..00000000 --- a/node_modules/core-js-pure/es/array/virtual/slice.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.slice'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').slice; diff --git a/node_modules/core-js-pure/es/array/virtual/some.js b/node_modules/core-js-pure/es/array/virtual/some.js deleted file mode 100644 index a7ae18f8..00000000 --- a/node_modules/core-js-pure/es/array/virtual/some.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.some'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').some; diff --git a/node_modules/core-js-pure/es/array/virtual/sort.js b/node_modules/core-js-pure/es/array/virtual/sort.js deleted file mode 100644 index b7e0a460..00000000 --- a/node_modules/core-js-pure/es/array/virtual/sort.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.sort'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').sort; diff --git a/node_modules/core-js-pure/es/array/virtual/splice.js b/node_modules/core-js-pure/es/array/virtual/splice.js deleted file mode 100644 index 2533cecc..00000000 --- a/node_modules/core-js-pure/es/array/virtual/splice.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.splice'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').splice; diff --git a/node_modules/core-js-pure/es/array/virtual/values.js b/node_modules/core-js-pure/es/array/virtual/values.js deleted file mode 100644 index cd9f502f..00000000 --- a/node_modules/core-js-pure/es/array/virtual/values.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.array.iterator'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Array').values; diff --git a/node_modules/core-js-pure/es/data-view/index.js b/node_modules/core-js-pure/es/data-view/index.js deleted file mode 100644 index da3582d7..00000000 --- a/node_modules/core-js-pure/es/data-view/index.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.data-view'); -require('../../modules/es.object.to-string'); -var path = require('../../internals/path'); - -module.exports = path.DataView; diff --git a/node_modules/core-js-pure/es/date/index.js b/node_modules/core-js-pure/es/date/index.js deleted file mode 100644 index 88e7a583..00000000 --- a/node_modules/core-js-pure/es/date/index.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.date.now'); -require('../../modules/es.date.to-json'); -require('../../modules/es.date.to-iso-string'); -require('../../modules/es.date.to-string'); -require('../../modules/es.date.to-primitive'); -var path = require('../../internals/path'); - -module.exports = path.Date; diff --git a/node_modules/core-js-pure/es/date/now.js b/node_modules/core-js-pure/es/date/now.js deleted file mode 100644 index ed6843e3..00000000 --- a/node_modules/core-js-pure/es/date/now.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.date.now'); -var path = require('../../internals/path'); - -module.exports = path.Date.now; diff --git a/node_modules/core-js-pure/es/date/to-iso-string.js b/node_modules/core-js-pure/es/date/to-iso-string.js deleted file mode 100644 index ee06767c..00000000 --- a/node_modules/core-js-pure/es/date/to-iso-string.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.date.to-iso-string'); -require('../../modules/es.date.to-json'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Date', 'toISOString'); diff --git a/node_modules/core-js-pure/es/date/to-json.js b/node_modules/core-js-pure/es/date/to-json.js deleted file mode 100644 index 1fa104a2..00000000 --- a/node_modules/core-js-pure/es/date/to-json.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.date.to-json'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Date', 'toJSON'); diff --git a/node_modules/core-js-pure/es/date/to-primitive.js b/node_modules/core-js-pure/es/date/to-primitive.js deleted file mode 100644 index 07bdd336..00000000 --- a/node_modules/core-js-pure/es/date/to-primitive.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.date.to-primitive'); -var toPrimitive = require('../../internals/date-to-primitive'); - -module.exports = function (it, hint) { - return toPrimitive.call(it, hint); -}; diff --git a/node_modules/core-js-pure/es/date/to-string.js b/node_modules/core-js-pure/es/date/to-string.js deleted file mode 100644 index 18b71359..00000000 --- a/node_modules/core-js-pure/es/date/to-string.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.date.to-string'); -var dateToString = Date.prototype.toString; - -module.exports = function toString(it) { - return dateToString.call(it); -}; diff --git a/node_modules/core-js-pure/es/function/bind.js b/node_modules/core-js-pure/es/function/bind.js deleted file mode 100644 index a3e35750..00000000 --- a/node_modules/core-js-pure/es/function/bind.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.function.bind'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Function', 'bind'); diff --git a/node_modules/core-js-pure/es/function/has-instance.js b/node_modules/core-js-pure/es/function/has-instance.js deleted file mode 100644 index 33722b08..00000000 --- a/node_modules/core-js-pure/es/function/has-instance.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.function.has-instance'); -var wellKnownSymbol = require('../../internals/well-known-symbol'); - -module.exports = Function[wellKnownSymbol('hasInstance')]; diff --git a/node_modules/core-js-pure/es/function/index.js b/node_modules/core-js-pure/es/function/index.js deleted file mode 100644 index 9caa29d0..00000000 --- a/node_modules/core-js-pure/es/function/index.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.function.bind'); -require('../../modules/es.function.name'); -require('../../modules/es.function.has-instance'); -var path = require('../../internals/path'); - -module.exports = path.Function; diff --git a/node_modules/core-js-pure/es/function/name.js b/node_modules/core-js-pure/es/function/name.js deleted file mode 100644 index 43344dbd..00000000 --- a/node_modules/core-js-pure/es/function/name.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.function.name'); diff --git a/node_modules/core-js-pure/es/function/virtual/bind.js b/node_modules/core-js-pure/es/function/virtual/bind.js deleted file mode 100644 index 7ec110d6..00000000 --- a/node_modules/core-js-pure/es/function/virtual/bind.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.function.bind'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Function').bind; diff --git a/node_modules/core-js-pure/es/function/virtual/index.js b/node_modules/core-js-pure/es/function/virtual/index.js deleted file mode 100644 index 0a011355..00000000 --- a/node_modules/core-js-pure/es/function/virtual/index.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.function.bind'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Function'); diff --git a/node_modules/core-js-pure/es/global-this.js b/node_modules/core-js-pure/es/global-this.js deleted file mode 100644 index 5ffa1dd1..00000000 --- a/node_modules/core-js-pure/es/global-this.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../modules/es.global-this'); - -module.exports = require('../internals/global'); diff --git a/node_modules/core-js-pure/es/index.js b/node_modules/core-js-pure/es/index.js deleted file mode 100644 index 9436a378..00000000 --- a/node_modules/core-js-pure/es/index.js +++ /dev/null @@ -1,210 +0,0 @@ -require('../modules/es.symbol'); -require('../modules/es.symbol.async-iterator'); -require('../modules/es.symbol.description'); -require('../modules/es.symbol.has-instance'); -require('../modules/es.symbol.is-concat-spreadable'); -require('../modules/es.symbol.iterator'); -require('../modules/es.symbol.match'); -require('../modules/es.symbol.match-all'); -require('../modules/es.symbol.replace'); -require('../modules/es.symbol.search'); -require('../modules/es.symbol.species'); -require('../modules/es.symbol.split'); -require('../modules/es.symbol.to-primitive'); -require('../modules/es.symbol.to-string-tag'); -require('../modules/es.symbol.unscopables'); -require('../modules/es.object.assign'); -require('../modules/es.object.create'); -require('../modules/es.object.define-property'); -require('../modules/es.object.define-properties'); -require('../modules/es.object.entries'); -require('../modules/es.object.freeze'); -require('../modules/es.object.from-entries'); -require('../modules/es.object.get-own-property-descriptor'); -require('../modules/es.object.get-own-property-descriptors'); -require('../modules/es.object.get-own-property-names'); -require('../modules/es.object.get-prototype-of'); -require('../modules/es.object.is'); -require('../modules/es.object.is-extensible'); -require('../modules/es.object.is-frozen'); -require('../modules/es.object.is-sealed'); -require('../modules/es.object.keys'); -require('../modules/es.object.prevent-extensions'); -require('../modules/es.object.seal'); -require('../modules/es.object.set-prototype-of'); -require('../modules/es.object.values'); -require('../modules/es.object.to-string'); -require('../modules/es.object.define-getter'); -require('../modules/es.object.define-setter'); -require('../modules/es.object.lookup-getter'); -require('../modules/es.object.lookup-setter'); -require('../modules/es.function.bind'); -require('../modules/es.function.name'); -require('../modules/es.function.has-instance'); -require('../modules/es.global-this'); -require('../modules/es.array.from'); -require('../modules/es.array.is-array'); -require('../modules/es.array.of'); -require('../modules/es.array.concat'); -require('../modules/es.array.copy-within'); -require('../modules/es.array.every'); -require('../modules/es.array.fill'); -require('../modules/es.array.filter'); -require('../modules/es.array.find'); -require('../modules/es.array.find-index'); -require('../modules/es.array.flat'); -require('../modules/es.array.flat-map'); -require('../modules/es.array.for-each'); -require('../modules/es.array.includes'); -require('../modules/es.array.index-of'); -require('../modules/es.array.join'); -require('../modules/es.array.last-index-of'); -require('../modules/es.array.map'); -require('../modules/es.array.reduce'); -require('../modules/es.array.reduce-right'); -require('../modules/es.array.reverse'); -require('../modules/es.array.slice'); -require('../modules/es.array.some'); -require('../modules/es.array.sort'); -require('../modules/es.array.splice'); -require('../modules/es.array.species'); -require('../modules/es.array.unscopables.flat'); -require('../modules/es.array.unscopables.flat-map'); -require('../modules/es.array.iterator'); -require('../modules/es.string.from-code-point'); -require('../modules/es.string.raw'); -require('../modules/es.string.code-point-at'); -require('../modules/es.string.ends-with'); -require('../modules/es.string.includes'); -require('../modules/es.string.match'); -require('../modules/es.string.match-all'); -require('../modules/es.string.pad-end'); -require('../modules/es.string.pad-start'); -require('../modules/es.string.repeat'); -require('../modules/es.string.replace'); -require('../modules/es.string.search'); -require('../modules/es.string.split'); -require('../modules/es.string.starts-with'); -require('../modules/es.string.trim'); -require('../modules/es.string.trim-start'); -require('../modules/es.string.trim-end'); -require('../modules/es.string.iterator'); -require('../modules/es.string.anchor'); -require('../modules/es.string.big'); -require('../modules/es.string.blink'); -require('../modules/es.string.bold'); -require('../modules/es.string.fixed'); -require('../modules/es.string.fontcolor'); -require('../modules/es.string.fontsize'); -require('../modules/es.string.italics'); -require('../modules/es.string.link'); -require('../modules/es.string.small'); -require('../modules/es.string.strike'); -require('../modules/es.string.sub'); -require('../modules/es.string.sup'); -require('../modules/es.regexp.constructor'); -require('../modules/es.regexp.exec'); -require('../modules/es.regexp.flags'); -require('../modules/es.regexp.sticky'); -require('../modules/es.regexp.test'); -require('../modules/es.regexp.to-string'); -require('../modules/es.parse-int'); -require('../modules/es.parse-float'); -require('../modules/es.number.constructor'); -require('../modules/es.number.epsilon'); -require('../modules/es.number.is-finite'); -require('../modules/es.number.is-integer'); -require('../modules/es.number.is-nan'); -require('../modules/es.number.is-safe-integer'); -require('../modules/es.number.max-safe-integer'); -require('../modules/es.number.min-safe-integer'); -require('../modules/es.number.parse-float'); -require('../modules/es.number.parse-int'); -require('../modules/es.number.to-fixed'); -require('../modules/es.number.to-precision'); -require('../modules/es.math.acosh'); -require('../modules/es.math.asinh'); -require('../modules/es.math.atanh'); -require('../modules/es.math.cbrt'); -require('../modules/es.math.clz32'); -require('../modules/es.math.cosh'); -require('../modules/es.math.expm1'); -require('../modules/es.math.fround'); -require('../modules/es.math.hypot'); -require('../modules/es.math.imul'); -require('../modules/es.math.log10'); -require('../modules/es.math.log1p'); -require('../modules/es.math.log2'); -require('../modules/es.math.sign'); -require('../modules/es.math.sinh'); -require('../modules/es.math.tanh'); -require('../modules/es.math.to-string-tag'); -require('../modules/es.math.trunc'); -require('../modules/es.date.now'); -require('../modules/es.date.to-json'); -require('../modules/es.date.to-iso-string'); -require('../modules/es.date.to-string'); -require('../modules/es.date.to-primitive'); -require('../modules/es.json.stringify'); -require('../modules/es.json.to-string-tag'); -require('../modules/es.promise'); -require('../modules/es.promise.all-settled'); -require('../modules/es.promise.finally'); -require('../modules/es.map'); -require('../modules/es.set'); -require('../modules/es.weak-map'); -require('../modules/es.weak-set'); -require('../modules/es.array-buffer.constructor'); -require('../modules/es.array-buffer.is-view'); -require('../modules/es.array-buffer.slice'); -require('../modules/es.data-view'); -require('../modules/es.typed-array.int8-array'); -require('../modules/es.typed-array.uint8-array'); -require('../modules/es.typed-array.uint8-clamped-array'); -require('../modules/es.typed-array.int16-array'); -require('../modules/es.typed-array.uint16-array'); -require('../modules/es.typed-array.int32-array'); -require('../modules/es.typed-array.uint32-array'); -require('../modules/es.typed-array.float32-array'); -require('../modules/es.typed-array.float64-array'); -require('../modules/es.typed-array.from'); -require('../modules/es.typed-array.of'); -require('../modules/es.typed-array.copy-within'); -require('../modules/es.typed-array.every'); -require('../modules/es.typed-array.fill'); -require('../modules/es.typed-array.filter'); -require('../modules/es.typed-array.find'); -require('../modules/es.typed-array.find-index'); -require('../modules/es.typed-array.for-each'); -require('../modules/es.typed-array.includes'); -require('../modules/es.typed-array.index-of'); -require('../modules/es.typed-array.iterator'); -require('../modules/es.typed-array.join'); -require('../modules/es.typed-array.last-index-of'); -require('../modules/es.typed-array.map'); -require('../modules/es.typed-array.reduce'); -require('../modules/es.typed-array.reduce-right'); -require('../modules/es.typed-array.reverse'); -require('../modules/es.typed-array.set'); -require('../modules/es.typed-array.slice'); -require('../modules/es.typed-array.some'); -require('../modules/es.typed-array.sort'); -require('../modules/es.typed-array.subarray'); -require('../modules/es.typed-array.to-locale-string'); -require('../modules/es.typed-array.to-string'); -require('../modules/es.reflect.apply'); -require('../modules/es.reflect.construct'); -require('../modules/es.reflect.define-property'); -require('../modules/es.reflect.delete-property'); -require('../modules/es.reflect.get'); -require('../modules/es.reflect.get-own-property-descriptor'); -require('../modules/es.reflect.get-prototype-of'); -require('../modules/es.reflect.has'); -require('../modules/es.reflect.is-extensible'); -require('../modules/es.reflect.own-keys'); -require('../modules/es.reflect.prevent-extensions'); -require('../modules/es.reflect.set'); -require('../modules/es.reflect.set-prototype-of'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/es/instance/bind.js b/node_modules/core-js-pure/es/instance/bind.js deleted file mode 100644 index 11f932a2..00000000 --- a/node_modules/core-js-pure/es/instance/bind.js +++ /dev/null @@ -1,8 +0,0 @@ -var bind = require('../function/virtual/bind'); - -var FunctionPrototype = Function.prototype; - -module.exports = function (it) { - var own = it.bind; - return it === FunctionPrototype || (it instanceof Function && own === FunctionPrototype.bind) ? bind : own; -}; diff --git a/node_modules/core-js-pure/es/instance/code-point-at.js b/node_modules/core-js-pure/es/instance/code-point-at.js deleted file mode 100644 index c4eaa422..00000000 --- a/node_modules/core-js-pure/es/instance/code-point-at.js +++ /dev/null @@ -1,9 +0,0 @@ -var codePointAt = require('../string/virtual/code-point-at'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.codePointAt; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.codePointAt) ? codePointAt : own; -}; diff --git a/node_modules/core-js-pure/es/instance/concat.js b/node_modules/core-js-pure/es/instance/concat.js deleted file mode 100644 index 87b74138..00000000 --- a/node_modules/core-js-pure/es/instance/concat.js +++ /dev/null @@ -1,8 +0,0 @@ -var concat = require('../array/virtual/concat'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.concat; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.concat) ? concat : own; -}; diff --git a/node_modules/core-js-pure/es/instance/copy-within.js b/node_modules/core-js-pure/es/instance/copy-within.js deleted file mode 100644 index c59f52d3..00000000 --- a/node_modules/core-js-pure/es/instance/copy-within.js +++ /dev/null @@ -1,8 +0,0 @@ -var copyWithin = require('../array/virtual/copy-within'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.copyWithin; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.copyWithin) ? copyWithin : own; -}; diff --git a/node_modules/core-js-pure/es/instance/ends-with.js b/node_modules/core-js-pure/es/instance/ends-with.js deleted file mode 100644 index 532d6f7e..00000000 --- a/node_modules/core-js-pure/es/instance/ends-with.js +++ /dev/null @@ -1,9 +0,0 @@ -var endsWith = require('../string/virtual/ends-with'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.endsWith; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.endsWith) ? endsWith : own; -}; diff --git a/node_modules/core-js-pure/es/instance/entries.js b/node_modules/core-js-pure/es/instance/entries.js deleted file mode 100644 index 8aedc418..00000000 --- a/node_modules/core-js-pure/es/instance/entries.js +++ /dev/null @@ -1,8 +0,0 @@ -var entries = require('../array/virtual/entries'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.entries; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.entries) ? entries : own; -}; diff --git a/node_modules/core-js-pure/es/instance/every.js b/node_modules/core-js-pure/es/instance/every.js deleted file mode 100644 index 1faaccbb..00000000 --- a/node_modules/core-js-pure/es/instance/every.js +++ /dev/null @@ -1,8 +0,0 @@ -var every = require('../array/virtual/every'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.every; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.every) ? every : own; -}; diff --git a/node_modules/core-js-pure/es/instance/fill.js b/node_modules/core-js-pure/es/instance/fill.js deleted file mode 100644 index 5d0f22be..00000000 --- a/node_modules/core-js-pure/es/instance/fill.js +++ /dev/null @@ -1,8 +0,0 @@ -var fill = require('../array/virtual/fill'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.fill; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.fill) ? fill : own; -}; diff --git a/node_modules/core-js-pure/es/instance/filter.js b/node_modules/core-js-pure/es/instance/filter.js deleted file mode 100644 index 8ba32b66..00000000 --- a/node_modules/core-js-pure/es/instance/filter.js +++ /dev/null @@ -1,8 +0,0 @@ -var filter = require('../array/virtual/filter'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.filter; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.filter) ? filter : own; -}; diff --git a/node_modules/core-js-pure/es/instance/find-index.js b/node_modules/core-js-pure/es/instance/find-index.js deleted file mode 100644 index 27a05837..00000000 --- a/node_modules/core-js-pure/es/instance/find-index.js +++ /dev/null @@ -1,8 +0,0 @@ -var findIndex = require('../array/virtual/find-index'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.findIndex; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.findIndex) ? findIndex : own; -}; diff --git a/node_modules/core-js-pure/es/instance/find.js b/node_modules/core-js-pure/es/instance/find.js deleted file mode 100644 index 70443c76..00000000 --- a/node_modules/core-js-pure/es/instance/find.js +++ /dev/null @@ -1,8 +0,0 @@ -var find = require('../array/virtual/find'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.find; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.find) ? find : own; -}; diff --git a/node_modules/core-js-pure/es/instance/flags.js b/node_modules/core-js-pure/es/instance/flags.js deleted file mode 100644 index f0b91148..00000000 --- a/node_modules/core-js-pure/es/instance/flags.js +++ /dev/null @@ -1,7 +0,0 @@ -var flags = require('../regexp/flags'); - -var RegExpPrototype = RegExp.prototype; - -module.exports = function (it) { - return (it === RegExpPrototype || it instanceof RegExp) && !('flags' in it) ? flags(it) : it.flags; -}; diff --git a/node_modules/core-js-pure/es/instance/flat-map.js b/node_modules/core-js-pure/es/instance/flat-map.js deleted file mode 100644 index eca5a41d..00000000 --- a/node_modules/core-js-pure/es/instance/flat-map.js +++ /dev/null @@ -1,8 +0,0 @@ -var flatMap = require('../array/virtual/flat-map'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.flatMap; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.flatMap) ? flatMap : own; -}; diff --git a/node_modules/core-js-pure/es/instance/flat.js b/node_modules/core-js-pure/es/instance/flat.js deleted file mode 100644 index 186a7293..00000000 --- a/node_modules/core-js-pure/es/instance/flat.js +++ /dev/null @@ -1,8 +0,0 @@ -var flat = require('../array/virtual/flat'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.flat; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.flat) ? flat : own; -}; diff --git a/node_modules/core-js-pure/es/instance/for-each.js b/node_modules/core-js-pure/es/instance/for-each.js deleted file mode 100644 index 3a2e6a91..00000000 --- a/node_modules/core-js-pure/es/instance/for-each.js +++ /dev/null @@ -1,8 +0,0 @@ -var forEach = require('../array/virtual/for-each'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.forEach; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.forEach) ? forEach : own; -}; diff --git a/node_modules/core-js-pure/es/instance/includes.js b/node_modules/core-js-pure/es/instance/includes.js deleted file mode 100644 index d2823737..00000000 --- a/node_modules/core-js-pure/es/instance/includes.js +++ /dev/null @@ -1,13 +0,0 @@ -var arrayIncludes = require('../array/virtual/includes'); -var stringIncludes = require('../string/virtual/includes'); - -var ArrayPrototype = Array.prototype; -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.includes; - if (it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.includes)) return arrayIncludes; - if (typeof it === 'string' || it === StringPrototype || (it instanceof String && own === StringPrototype.includes)) { - return stringIncludes; - } return own; -}; diff --git a/node_modules/core-js-pure/es/instance/index-of.js b/node_modules/core-js-pure/es/instance/index-of.js deleted file mode 100644 index a5fa42a8..00000000 --- a/node_modules/core-js-pure/es/instance/index-of.js +++ /dev/null @@ -1,8 +0,0 @@ -var indexOf = require('../array/virtual/index-of'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.indexOf; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.indexOf) ? indexOf : own; -}; diff --git a/node_modules/core-js-pure/es/instance/keys.js b/node_modules/core-js-pure/es/instance/keys.js deleted file mode 100644 index 0e2dca2a..00000000 --- a/node_modules/core-js-pure/es/instance/keys.js +++ /dev/null @@ -1,8 +0,0 @@ -var keys = require('../array/virtual/keys'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.keys; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.keys) ? keys : own; -}; diff --git a/node_modules/core-js-pure/es/instance/last-index-of.js b/node_modules/core-js-pure/es/instance/last-index-of.js deleted file mode 100644 index 729bc658..00000000 --- a/node_modules/core-js-pure/es/instance/last-index-of.js +++ /dev/null @@ -1,8 +0,0 @@ -var lastIndexOf = require('../array/virtual/last-index-of'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.lastIndexOf; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.lastIndexOf) ? lastIndexOf : own; -}; diff --git a/node_modules/core-js-pure/es/instance/map.js b/node_modules/core-js-pure/es/instance/map.js deleted file mode 100644 index 4d2d17f5..00000000 --- a/node_modules/core-js-pure/es/instance/map.js +++ /dev/null @@ -1,8 +0,0 @@ -var map = require('../array/virtual/map'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.map; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.map) ? map : own; -}; diff --git a/node_modules/core-js-pure/es/instance/match-all.js b/node_modules/core-js-pure/es/instance/match-all.js deleted file mode 100644 index 2ab56b11..00000000 --- a/node_modules/core-js-pure/es/instance/match-all.js +++ /dev/null @@ -1,9 +0,0 @@ -var matchAll = require('../string/virtual/match-all'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.matchAll; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.matchAll) ? matchAll : own; -}; diff --git a/node_modules/core-js-pure/es/instance/pad-end.js b/node_modules/core-js-pure/es/instance/pad-end.js deleted file mode 100644 index 40ea6030..00000000 --- a/node_modules/core-js-pure/es/instance/pad-end.js +++ /dev/null @@ -1,9 +0,0 @@ -var padEnd = require('../string/virtual/pad-end'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.padEnd; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.padEnd) ? padEnd : own; -}; diff --git a/node_modules/core-js-pure/es/instance/pad-start.js b/node_modules/core-js-pure/es/instance/pad-start.js deleted file mode 100644 index 1e3220cd..00000000 --- a/node_modules/core-js-pure/es/instance/pad-start.js +++ /dev/null @@ -1,9 +0,0 @@ -var padStart = require('../string/virtual/pad-start'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.padStart; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.padStart) ? padStart : own; -}; diff --git a/node_modules/core-js-pure/es/instance/reduce-right.js b/node_modules/core-js-pure/es/instance/reduce-right.js deleted file mode 100644 index 6a8802f2..00000000 --- a/node_modules/core-js-pure/es/instance/reduce-right.js +++ /dev/null @@ -1,8 +0,0 @@ -var reduceRight = require('../array/virtual/reduce-right'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.reduceRight; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.reduceRight) ? reduceRight : own; -}; diff --git a/node_modules/core-js-pure/es/instance/reduce.js b/node_modules/core-js-pure/es/instance/reduce.js deleted file mode 100644 index efa46a93..00000000 --- a/node_modules/core-js-pure/es/instance/reduce.js +++ /dev/null @@ -1,8 +0,0 @@ -var reduce = require('../array/virtual/reduce'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.reduce; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.reduce) ? reduce : own; -}; diff --git a/node_modules/core-js-pure/es/instance/repeat.js b/node_modules/core-js-pure/es/instance/repeat.js deleted file mode 100644 index d4c05ad3..00000000 --- a/node_modules/core-js-pure/es/instance/repeat.js +++ /dev/null @@ -1,9 +0,0 @@ -var repeat = require('../string/virtual/repeat'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.repeat; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.repeat) ? repeat : own; -}; diff --git a/node_modules/core-js-pure/es/instance/reverse.js b/node_modules/core-js-pure/es/instance/reverse.js deleted file mode 100644 index ca4bfeaf..00000000 --- a/node_modules/core-js-pure/es/instance/reverse.js +++ /dev/null @@ -1,8 +0,0 @@ -var reverse = require('../array/virtual/reverse'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.reverse; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.reverse) ? reverse : own; -}; diff --git a/node_modules/core-js-pure/es/instance/slice.js b/node_modules/core-js-pure/es/instance/slice.js deleted file mode 100644 index 03ef7a7d..00000000 --- a/node_modules/core-js-pure/es/instance/slice.js +++ /dev/null @@ -1,8 +0,0 @@ -var slice = require('../array/virtual/slice'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.slice; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.slice) ? slice : own; -}; diff --git a/node_modules/core-js-pure/es/instance/some.js b/node_modules/core-js-pure/es/instance/some.js deleted file mode 100644 index 562c11ea..00000000 --- a/node_modules/core-js-pure/es/instance/some.js +++ /dev/null @@ -1,8 +0,0 @@ -var some = require('../array/virtual/some'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.some; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.some) ? some : own; -}; diff --git a/node_modules/core-js-pure/es/instance/sort.js b/node_modules/core-js-pure/es/instance/sort.js deleted file mode 100644 index 96edb803..00000000 --- a/node_modules/core-js-pure/es/instance/sort.js +++ /dev/null @@ -1,8 +0,0 @@ -var sort = require('../array/virtual/sort'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.sort; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.sort) ? sort : own; -}; diff --git a/node_modules/core-js-pure/es/instance/splice.js b/node_modules/core-js-pure/es/instance/splice.js deleted file mode 100644 index 5b907f4b..00000000 --- a/node_modules/core-js-pure/es/instance/splice.js +++ /dev/null @@ -1,8 +0,0 @@ -var splice = require('../array/virtual/splice'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.splice; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.splice) ? splice : own; -}; diff --git a/node_modules/core-js-pure/es/instance/starts-with.js b/node_modules/core-js-pure/es/instance/starts-with.js deleted file mode 100644 index 99a01a7f..00000000 --- a/node_modules/core-js-pure/es/instance/starts-with.js +++ /dev/null @@ -1,9 +0,0 @@ -var startsWith = require('../string/virtual/starts-with'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.startsWith; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.startsWith) ? startsWith : own; -}; diff --git a/node_modules/core-js-pure/es/instance/trim-end.js b/node_modules/core-js-pure/es/instance/trim-end.js deleted file mode 100644 index c004cbaf..00000000 --- a/node_modules/core-js-pure/es/instance/trim-end.js +++ /dev/null @@ -1,9 +0,0 @@ -var trimEnd = require('../string/virtual/trim-end'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.trimEnd; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.trimEnd) ? trimEnd : own; -}; diff --git a/node_modules/core-js-pure/es/instance/trim-left.js b/node_modules/core-js-pure/es/instance/trim-left.js deleted file mode 100644 index fc5c3091..00000000 --- a/node_modules/core-js-pure/es/instance/trim-left.js +++ /dev/null @@ -1,9 +0,0 @@ -var trimLeft = require('../string/virtual/trim-left'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.trimLeft; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.trimLeft) ? trimLeft : own; -}; diff --git a/node_modules/core-js-pure/es/instance/trim-right.js b/node_modules/core-js-pure/es/instance/trim-right.js deleted file mode 100644 index ef38effc..00000000 --- a/node_modules/core-js-pure/es/instance/trim-right.js +++ /dev/null @@ -1,9 +0,0 @@ -var trimRight = require('../string/virtual/trim-right'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.trimRight; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.trimRight) ? trimRight : own; -}; diff --git a/node_modules/core-js-pure/es/instance/trim-start.js b/node_modules/core-js-pure/es/instance/trim-start.js deleted file mode 100644 index 74a89bd9..00000000 --- a/node_modules/core-js-pure/es/instance/trim-start.js +++ /dev/null @@ -1,9 +0,0 @@ -var trimStart = require('../string/virtual/trim-start'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.trimStart; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.trimStart) ? trimStart : own; -}; diff --git a/node_modules/core-js-pure/es/instance/trim.js b/node_modules/core-js-pure/es/instance/trim.js deleted file mode 100644 index cdd3ed9d..00000000 --- a/node_modules/core-js-pure/es/instance/trim.js +++ /dev/null @@ -1,9 +0,0 @@ -var trim = require('../string/virtual/trim'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.trim; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.trim) ? trim : own; -}; diff --git a/node_modules/core-js-pure/es/instance/values.js b/node_modules/core-js-pure/es/instance/values.js deleted file mode 100644 index 52c76df2..00000000 --- a/node_modules/core-js-pure/es/instance/values.js +++ /dev/null @@ -1,8 +0,0 @@ -var values = require('../array/virtual/values'); - -var ArrayPrototype = Array.prototype; - -module.exports = function (it) { - var own = it.values; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.values) ? values : own; -}; diff --git a/node_modules/core-js-pure/es/json/index.js b/node_modules/core-js-pure/es/json/index.js deleted file mode 100644 index c16528ad..00000000 --- a/node_modules/core-js-pure/es/json/index.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.json.stringify'); -require('../../modules/es.json.to-string-tag'); -var path = require('../../internals/path'); - -module.exports = path.JSON || (path.JSON = { stringify: JSON.stringify }); diff --git a/node_modules/core-js-pure/es/json/stringify.js b/node_modules/core-js-pure/es/json/stringify.js deleted file mode 100644 index 5bbebc9a..00000000 --- a/node_modules/core-js-pure/es/json/stringify.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.json.stringify'); -var core = require('../../internals/path'); - -if (!core.JSON) core.JSON = { stringify: JSON.stringify }; - -// eslint-disable-next-line no-unused-vars -module.exports = function stringify(it, replacer, space) { - return core.JSON.stringify.apply(null, arguments); -}; diff --git a/node_modules/core-js-pure/es/json/to-string-tag.js b/node_modules/core-js-pure/es/json/to-string-tag.js deleted file mode 100644 index 7ed4618c..00000000 --- a/node_modules/core-js-pure/es/json/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.json.to-string-tag'); - -module.exports = 'JSON'; diff --git a/node_modules/core-js-pure/es/map/index.js b/node_modules/core-js-pure/es/map/index.js deleted file mode 100644 index ab554cfa..00000000 --- a/node_modules/core-js-pure/es/map/index.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -module.exports = path.Map; diff --git a/node_modules/core-js-pure/es/math/acosh.js b/node_modules/core-js-pure/es/math/acosh.js deleted file mode 100644 index 0ef459bd..00000000 --- a/node_modules/core-js-pure/es/math/acosh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.acosh'); -var path = require('../../internals/path'); - -module.exports = path.Math.acosh; diff --git a/node_modules/core-js-pure/es/math/asinh.js b/node_modules/core-js-pure/es/math/asinh.js deleted file mode 100644 index f300ec4d..00000000 --- a/node_modules/core-js-pure/es/math/asinh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.asinh'); -var path = require('../../internals/path'); - -module.exports = path.Math.asinh; diff --git a/node_modules/core-js-pure/es/math/atanh.js b/node_modules/core-js-pure/es/math/atanh.js deleted file mode 100644 index 6ca61119..00000000 --- a/node_modules/core-js-pure/es/math/atanh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.atanh'); -var path = require('../../internals/path'); - -module.exports = path.Math.atanh; diff --git a/node_modules/core-js-pure/es/math/cbrt.js b/node_modules/core-js-pure/es/math/cbrt.js deleted file mode 100644 index c8297a7d..00000000 --- a/node_modules/core-js-pure/es/math/cbrt.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.cbrt'); -var path = require('../../internals/path'); - -module.exports = path.Math.cbrt; diff --git a/node_modules/core-js-pure/es/math/clz32.js b/node_modules/core-js-pure/es/math/clz32.js deleted file mode 100644 index a2ea307d..00000000 --- a/node_modules/core-js-pure/es/math/clz32.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.clz32'); -var path = require('../../internals/path'); - -module.exports = path.Math.clz32; diff --git a/node_modules/core-js-pure/es/math/cosh.js b/node_modules/core-js-pure/es/math/cosh.js deleted file mode 100644 index 09dc191c..00000000 --- a/node_modules/core-js-pure/es/math/cosh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.cosh'); -var path = require('../../internals/path'); - -module.exports = path.Math.cosh; diff --git a/node_modules/core-js-pure/es/math/expm1.js b/node_modules/core-js-pure/es/math/expm1.js deleted file mode 100644 index 96573768..00000000 --- a/node_modules/core-js-pure/es/math/expm1.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.expm1'); -var path = require('../../internals/path'); - -module.exports = path.Math.expm1; diff --git a/node_modules/core-js-pure/es/math/fround.js b/node_modules/core-js-pure/es/math/fround.js deleted file mode 100644 index 41c7292a..00000000 --- a/node_modules/core-js-pure/es/math/fround.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.fround'); -var path = require('../../internals/path'); - -module.exports = path.Math.fround; diff --git a/node_modules/core-js-pure/es/math/hypot.js b/node_modules/core-js-pure/es/math/hypot.js deleted file mode 100644 index 34d5175e..00000000 --- a/node_modules/core-js-pure/es/math/hypot.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.hypot'); -var path = require('../../internals/path'); - -module.exports = path.Math.hypot; diff --git a/node_modules/core-js-pure/es/math/imul.js b/node_modules/core-js-pure/es/math/imul.js deleted file mode 100644 index 2f17f932..00000000 --- a/node_modules/core-js-pure/es/math/imul.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.imul'); -var path = require('../../internals/path'); - -module.exports = path.Math.imul; diff --git a/node_modules/core-js-pure/es/math/index.js b/node_modules/core-js-pure/es/math/index.js deleted file mode 100644 index 89862270..00000000 --- a/node_modules/core-js-pure/es/math/index.js +++ /dev/null @@ -1,21 +0,0 @@ -require('../../modules/es.math.acosh'); -require('../../modules/es.math.asinh'); -require('../../modules/es.math.atanh'); -require('../../modules/es.math.cbrt'); -require('../../modules/es.math.clz32'); -require('../../modules/es.math.cosh'); -require('../../modules/es.math.expm1'); -require('../../modules/es.math.fround'); -require('../../modules/es.math.hypot'); -require('../../modules/es.math.imul'); -require('../../modules/es.math.log10'); -require('../../modules/es.math.log1p'); -require('../../modules/es.math.log2'); -require('../../modules/es.math.sign'); -require('../../modules/es.math.sinh'); -require('../../modules/es.math.tanh'); -require('../../modules/es.math.to-string-tag'); -require('../../modules/es.math.trunc'); -var path = require('../../internals/path'); - -module.exports = path.Math; diff --git a/node_modules/core-js-pure/es/math/log10.js b/node_modules/core-js-pure/es/math/log10.js deleted file mode 100644 index b91166f3..00000000 --- a/node_modules/core-js-pure/es/math/log10.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.log10'); -var path = require('../../internals/path'); - -module.exports = path.Math.log10; diff --git a/node_modules/core-js-pure/es/math/log1p.js b/node_modules/core-js-pure/es/math/log1p.js deleted file mode 100644 index a1d4db1e..00000000 --- a/node_modules/core-js-pure/es/math/log1p.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.log1p'); -var path = require('../../internals/path'); - -module.exports = path.Math.log1p; diff --git a/node_modules/core-js-pure/es/math/log2.js b/node_modules/core-js-pure/es/math/log2.js deleted file mode 100644 index 99c05949..00000000 --- a/node_modules/core-js-pure/es/math/log2.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.log2'); -var path = require('../../internals/path'); - -module.exports = path.Math.log2; diff --git a/node_modules/core-js-pure/es/math/sign.js b/node_modules/core-js-pure/es/math/sign.js deleted file mode 100644 index 9f6eb951..00000000 --- a/node_modules/core-js-pure/es/math/sign.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.sign'); -var path = require('../../internals/path'); - -module.exports = path.Math.sign; diff --git a/node_modules/core-js-pure/es/math/sinh.js b/node_modules/core-js-pure/es/math/sinh.js deleted file mode 100644 index cf8d51a0..00000000 --- a/node_modules/core-js-pure/es/math/sinh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.sinh'); -var path = require('../../internals/path'); - -module.exports = path.Math.sinh; diff --git a/node_modules/core-js-pure/es/math/tanh.js b/node_modules/core-js-pure/es/math/tanh.js deleted file mode 100644 index 030c175d..00000000 --- a/node_modules/core-js-pure/es/math/tanh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.tanh'); -var path = require('../../internals/path'); - -module.exports = path.Math.tanh; diff --git a/node_modules/core-js-pure/es/math/to-string-tag.js b/node_modules/core-js-pure/es/math/to-string-tag.js deleted file mode 100644 index c8714c24..00000000 --- a/node_modules/core-js-pure/es/math/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.math.to-string-tag'); - -module.exports = 'Math'; diff --git a/node_modules/core-js-pure/es/math/trunc.js b/node_modules/core-js-pure/es/math/trunc.js deleted file mode 100644 index 510337ba..00000000 --- a/node_modules/core-js-pure/es/math/trunc.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.math.trunc'); -var path = require('../../internals/path'); - -module.exports = path.Math.trunc; diff --git a/node_modules/core-js-pure/es/number/constructor.js b/node_modules/core-js-pure/es/number/constructor.js deleted file mode 100644 index a77a1aa8..00000000 --- a/node_modules/core-js-pure/es/number/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.number.constructor'); - -module.exports = Number; diff --git a/node_modules/core-js-pure/es/number/epsilon.js b/node_modules/core-js-pure/es/number/epsilon.js deleted file mode 100644 index 627b0777..00000000 --- a/node_modules/core-js-pure/es/number/epsilon.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.number.epsilon'); - -module.exports = Math.pow(2, -52); diff --git a/node_modules/core-js-pure/es/number/index.js b/node_modules/core-js-pure/es/number/index.js deleted file mode 100644 index 1341b56b..00000000 --- a/node_modules/core-js-pure/es/number/index.js +++ /dev/null @@ -1,15 +0,0 @@ -require('../../modules/es.number.constructor'); -require('../../modules/es.number.epsilon'); -require('../../modules/es.number.is-finite'); -require('../../modules/es.number.is-integer'); -require('../../modules/es.number.is-nan'); -require('../../modules/es.number.is-safe-integer'); -require('../../modules/es.number.max-safe-integer'); -require('../../modules/es.number.min-safe-integer'); -require('../../modules/es.number.parse-float'); -require('../../modules/es.number.parse-int'); -require('../../modules/es.number.to-fixed'); -require('../../modules/es.number.to-precision'); -var path = require('../../internals/path'); - -module.exports = path.Number; diff --git a/node_modules/core-js-pure/es/number/is-finite.js b/node_modules/core-js-pure/es/number/is-finite.js deleted file mode 100644 index dd16f9d0..00000000 --- a/node_modules/core-js-pure/es/number/is-finite.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.is-finite'); -var path = require('../../internals/path'); - -module.exports = path.Number.isFinite; diff --git a/node_modules/core-js-pure/es/number/is-integer.js b/node_modules/core-js-pure/es/number/is-integer.js deleted file mode 100644 index c6734a95..00000000 --- a/node_modules/core-js-pure/es/number/is-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.is-integer'); -var path = require('../../internals/path'); - -module.exports = path.Number.isInteger; diff --git a/node_modules/core-js-pure/es/number/is-nan.js b/node_modules/core-js-pure/es/number/is-nan.js deleted file mode 100644 index 9af93bb6..00000000 --- a/node_modules/core-js-pure/es/number/is-nan.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.is-nan'); -var path = require('../../internals/path'); - -module.exports = path.Number.isNaN; diff --git a/node_modules/core-js-pure/es/number/is-safe-integer.js b/node_modules/core-js-pure/es/number/is-safe-integer.js deleted file mode 100644 index ec34c629..00000000 --- a/node_modules/core-js-pure/es/number/is-safe-integer.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.is-safe-integer'); -var path = require('../../internals/path'); - -module.exports = path.Number.isSafeInteger; diff --git a/node_modules/core-js-pure/es/number/max-safe-integer.js b/node_modules/core-js-pure/es/number/max-safe-integer.js deleted file mode 100644 index b901200c..00000000 --- a/node_modules/core-js-pure/es/number/max-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.number.max-safe-integer'); - -module.exports = 0x1FFFFFFFFFFFFF; diff --git a/node_modules/core-js-pure/es/number/min-safe-integer.js b/node_modules/core-js-pure/es/number/min-safe-integer.js deleted file mode 100644 index 3678895a..00000000 --- a/node_modules/core-js-pure/es/number/min-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.number.min-safe-integer'); - -module.exports = -0x1FFFFFFFFFFFFF; diff --git a/node_modules/core-js-pure/es/number/parse-float.js b/node_modules/core-js-pure/es/number/parse-float.js deleted file mode 100644 index 5d71e393..00000000 --- a/node_modules/core-js-pure/es/number/parse-float.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.parse-float'); -var path = require('../../internals/path'); - -module.exports = path.Number.parseFloat; diff --git a/node_modules/core-js-pure/es/number/parse-int.js b/node_modules/core-js-pure/es/number/parse-int.js deleted file mode 100644 index c833b0a1..00000000 --- a/node_modules/core-js-pure/es/number/parse-int.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.parse-int'); -var path = require('../../internals/path'); - -module.exports = path.Number.parseInt; diff --git a/node_modules/core-js-pure/es/number/to-fixed.js b/node_modules/core-js-pure/es/number/to-fixed.js deleted file mode 100644 index e1271248..00000000 --- a/node_modules/core-js-pure/es/number/to-fixed.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.to-fixed'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Number', 'toFixed'); diff --git a/node_modules/core-js-pure/es/number/to-precision.js b/node_modules/core-js-pure/es/number/to-precision.js deleted file mode 100644 index fd5b83b2..00000000 --- a/node_modules/core-js-pure/es/number/to-precision.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.number.to-precision'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Number', 'toPrecision'); diff --git a/node_modules/core-js-pure/es/number/virtual/index.js b/node_modules/core-js-pure/es/number/virtual/index.js deleted file mode 100644 index 693aca9c..00000000 --- a/node_modules/core-js-pure/es/number/virtual/index.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../../modules/es.number.to-fixed'); -require('../../../modules/es.number.to-precision'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Number'); diff --git a/node_modules/core-js-pure/es/number/virtual/to-fixed.js b/node_modules/core-js-pure/es/number/virtual/to-fixed.js deleted file mode 100644 index be7265d9..00000000 --- a/node_modules/core-js-pure/es/number/virtual/to-fixed.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.number.to-fixed'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Number').toFixed; diff --git a/node_modules/core-js-pure/es/number/virtual/to-precision.js b/node_modules/core-js-pure/es/number/virtual/to-precision.js deleted file mode 100644 index 701c5aae..00000000 --- a/node_modules/core-js-pure/es/number/virtual/to-precision.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.number.to-precision'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('Number').toPrecision; diff --git a/node_modules/core-js-pure/es/object/assign.js b/node_modules/core-js-pure/es/object/assign.js deleted file mode 100644 index b747e5bb..00000000 --- a/node_modules/core-js-pure/es/object/assign.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.assign'); -var path = require('../../internals/path'); - -module.exports = path.Object.assign; diff --git a/node_modules/core-js-pure/es/object/create.js b/node_modules/core-js-pure/es/object/create.js deleted file mode 100644 index 6f060c92..00000000 --- a/node_modules/core-js-pure/es/object/create.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.object.create'); -var path = require('../../internals/path'); - -var Object = path.Object; - -module.exports = function create(P, D) { - return Object.create(P, D); -}; diff --git a/node_modules/core-js-pure/es/object/define-getter.js b/node_modules/core-js-pure/es/object/define-getter.js deleted file mode 100644 index 98b77a0f..00000000 --- a/node_modules/core-js-pure/es/object/define-getter.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.define-getter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Object', '__defineGetter__'); diff --git a/node_modules/core-js-pure/es/object/define-properties.js b/node_modules/core-js-pure/es/object/define-properties.js deleted file mode 100644 index 30c21aa0..00000000 --- a/node_modules/core-js-pure/es/object/define-properties.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.define-properties'); -var path = require('../../internals/path'); - -var Object = path.Object; - -var defineProperties = module.exports = function defineProperties(T, D) { - return Object.defineProperties(T, D); -}; - -if (Object.defineProperties.sham) defineProperties.sham = true; diff --git a/node_modules/core-js-pure/es/object/define-property.js b/node_modules/core-js-pure/es/object/define-property.js deleted file mode 100644 index eb51b5fa..00000000 --- a/node_modules/core-js-pure/es/object/define-property.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.define-property'); -var path = require('../../internals/path'); - -var Object = path.Object; - -var defineProperty = module.exports = function defineProperty(it, key, desc) { - return Object.defineProperty(it, key, desc); -}; - -if (Object.defineProperty.sham) defineProperty.sham = true; diff --git a/node_modules/core-js-pure/es/object/define-setter.js b/node_modules/core-js-pure/es/object/define-setter.js deleted file mode 100644 index ccae06a9..00000000 --- a/node_modules/core-js-pure/es/object/define-setter.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.define-setter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Object', '__defineSetter__'); diff --git a/node_modules/core-js-pure/es/object/entries.js b/node_modules/core-js-pure/es/object/entries.js deleted file mode 100644 index 4715ad11..00000000 --- a/node_modules/core-js-pure/es/object/entries.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.entries'); -var path = require('../../internals/path'); - -module.exports = path.Object.entries; diff --git a/node_modules/core-js-pure/es/object/freeze.js b/node_modules/core-js-pure/es/object/freeze.js deleted file mode 100644 index e50b82b5..00000000 --- a/node_modules/core-js-pure/es/object/freeze.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.freeze'); -var path = require('../../internals/path'); - -module.exports = path.Object.freeze; diff --git a/node_modules/core-js-pure/es/object/from-entries.js b/node_modules/core-js-pure/es/object/from-entries.js deleted file mode 100644 index 530f16da..00000000 --- a/node_modules/core-js-pure/es/object/from-entries.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.array.iterator'); -require('../../modules/es.object.from-entries'); -var path = require('../../internals/path'); - -module.exports = path.Object.fromEntries; diff --git a/node_modules/core-js-pure/es/object/get-own-property-descriptor.js b/node_modules/core-js-pure/es/object/get-own-property-descriptor.js deleted file mode 100644 index 002c7ed0..00000000 --- a/node_modules/core-js-pure/es/object/get-own-property-descriptor.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.get-own-property-descriptor'); -var path = require('../../internals/path'); - -var Object = path.Object; - -var getOwnPropertyDescriptor = module.exports = function getOwnPropertyDescriptor(it, key) { - return Object.getOwnPropertyDescriptor(it, key); -}; - -if (Object.getOwnPropertyDescriptor.sham) getOwnPropertyDescriptor.sham = true; diff --git a/node_modules/core-js-pure/es/object/get-own-property-descriptors.js b/node_modules/core-js-pure/es/object/get-own-property-descriptors.js deleted file mode 100644 index e94ed62b..00000000 --- a/node_modules/core-js-pure/es/object/get-own-property-descriptors.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.get-own-property-descriptors'); -var path = require('../../internals/path'); - -module.exports = path.Object.getOwnPropertyDescriptors; diff --git a/node_modules/core-js-pure/es/object/get-own-property-names.js b/node_modules/core-js-pure/es/object/get-own-property-names.js deleted file mode 100644 index 4b353d33..00000000 --- a/node_modules/core-js-pure/es/object/get-own-property-names.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.object.get-own-property-names'); -var path = require('../../internals/path'); - -var Object = path.Object; - -module.exports = function getOwnPropertyNames(it) { - return Object.getOwnPropertyNames(it); -}; diff --git a/node_modules/core-js-pure/es/object/get-own-property-symbols.js b/node_modules/core-js-pure/es/object/get-own-property-symbols.js deleted file mode 100644 index b5c4b5b8..00000000 --- a/node_modules/core-js-pure/es/object/get-own-property-symbols.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol'); -var path = require('../../internals/path'); - -module.exports = path.Object.getOwnPropertySymbols; diff --git a/node_modules/core-js-pure/es/object/get-prototype-of.js b/node_modules/core-js-pure/es/object/get-prototype-of.js deleted file mode 100644 index 6c7c96d8..00000000 --- a/node_modules/core-js-pure/es/object/get-prototype-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.get-prototype-of'); -var path = require('../../internals/path'); - -module.exports = path.Object.getPrototypeOf; diff --git a/node_modules/core-js-pure/es/object/index.js b/node_modules/core-js-pure/es/object/index.js deleted file mode 100644 index 0664dfc2..00000000 --- a/node_modules/core-js-pure/es/object/index.js +++ /dev/null @@ -1,31 +0,0 @@ -require('../../modules/es.symbol'); -require('../../modules/es.object.assign'); -require('../../modules/es.object.create'); -require('../../modules/es.object.define-property'); -require('../../modules/es.object.define-properties'); -require('../../modules/es.object.entries'); -require('../../modules/es.object.freeze'); -require('../../modules/es.object.from-entries'); -require('../../modules/es.object.get-own-property-descriptor'); -require('../../modules/es.object.get-own-property-descriptors'); -require('../../modules/es.object.get-own-property-names'); -require('../../modules/es.object.get-prototype-of'); -require('../../modules/es.object.is'); -require('../../modules/es.object.is-extensible'); -require('../../modules/es.object.is-frozen'); -require('../../modules/es.object.is-sealed'); -require('../../modules/es.object.keys'); -require('../../modules/es.object.prevent-extensions'); -require('../../modules/es.object.seal'); -require('../../modules/es.object.set-prototype-of'); -require('../../modules/es.object.values'); -require('../../modules/es.object.to-string'); -require('../../modules/es.object.define-getter'); -require('../../modules/es.object.define-setter'); -require('../../modules/es.object.lookup-getter'); -require('../../modules/es.object.lookup-setter'); -require('../../modules/es.math.to-string-tag'); -require('../../modules/es.json.to-string-tag'); -var path = require('../../internals/path'); - -module.exports = path.Object; diff --git a/node_modules/core-js-pure/es/object/is-extensible.js b/node_modules/core-js-pure/es/object/is-extensible.js deleted file mode 100644 index c38f2912..00000000 --- a/node_modules/core-js-pure/es/object/is-extensible.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.is-extensible'); -var path = require('../../internals/path'); - -module.exports = path.Object.isExtensible; diff --git a/node_modules/core-js-pure/es/object/is-frozen.js b/node_modules/core-js-pure/es/object/is-frozen.js deleted file mode 100644 index 39ee8d2e..00000000 --- a/node_modules/core-js-pure/es/object/is-frozen.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.is-frozen'); -var path = require('../../internals/path'); - -module.exports = path.Object.isFrozen; diff --git a/node_modules/core-js-pure/es/object/is-sealed.js b/node_modules/core-js-pure/es/object/is-sealed.js deleted file mode 100644 index 113a488f..00000000 --- a/node_modules/core-js-pure/es/object/is-sealed.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.is-sealed'); -var path = require('../../internals/path'); - -module.exports = path.Object.isSealed; diff --git a/node_modules/core-js-pure/es/object/is.js b/node_modules/core-js-pure/es/object/is.js deleted file mode 100644 index 5691bf93..00000000 --- a/node_modules/core-js-pure/es/object/is.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.is'); -var path = require('../../internals/path'); - -module.exports = path.Object.is; diff --git a/node_modules/core-js-pure/es/object/keys.js b/node_modules/core-js-pure/es/object/keys.js deleted file mode 100644 index c42f42ec..00000000 --- a/node_modules/core-js-pure/es/object/keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.keys'); -var path = require('../../internals/path'); - -module.exports = path.Object.keys; diff --git a/node_modules/core-js-pure/es/object/lookup-getter.js b/node_modules/core-js-pure/es/object/lookup-getter.js deleted file mode 100644 index db2d70a6..00000000 --- a/node_modules/core-js-pure/es/object/lookup-getter.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.lookup-setter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Object', '__lookupGetter__'); diff --git a/node_modules/core-js-pure/es/object/lookup-setter.js b/node_modules/core-js-pure/es/object/lookup-setter.js deleted file mode 100644 index fb48fbf4..00000000 --- a/node_modules/core-js-pure/es/object/lookup-setter.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.lookup-setter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Object', '__lookupSetter__'); diff --git a/node_modules/core-js-pure/es/object/prevent-extensions.js b/node_modules/core-js-pure/es/object/prevent-extensions.js deleted file mode 100644 index 5a4a5f61..00000000 --- a/node_modules/core-js-pure/es/object/prevent-extensions.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.prevent-extensions'); -var path = require('../../internals/path'); - -module.exports = path.Object.preventExtensions; diff --git a/node_modules/core-js-pure/es/object/seal.js b/node_modules/core-js-pure/es/object/seal.js deleted file mode 100644 index 0db0262c..00000000 --- a/node_modules/core-js-pure/es/object/seal.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.seal'); -var path = require('../../internals/path'); - -module.exports = path.Object.seal; diff --git a/node_modules/core-js-pure/es/object/set-prototype-of.js b/node_modules/core-js-pure/es/object/set-prototype-of.js deleted file mode 100644 index bab296ac..00000000 --- a/node_modules/core-js-pure/es/object/set-prototype-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.set-prototype-of'); -var path = require('../../internals/path'); - -module.exports = path.Object.setPrototypeOf; diff --git a/node_modules/core-js-pure/es/object/to-string.js b/node_modules/core-js-pure/es/object/to-string.js deleted file mode 100644 index 491a4ef0..00000000 --- a/node_modules/core-js-pure/es/object/to-string.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.math.to-string-tag'); -require('../../modules/es.json.to-string-tag'); -var classof = require('../../internals/classof'); - -module.exports = function (it) { - return '[object ' + classof(it) + ']'; -}; diff --git a/node_modules/core-js-pure/es/object/values.js b/node_modules/core-js-pure/es/object/values.js deleted file mode 100644 index 84539f4a..00000000 --- a/node_modules/core-js-pure/es/object/values.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.object.values'); -var path = require('../../internals/path'); - -module.exports = path.Object.values; diff --git a/node_modules/core-js-pure/es/parse-float.js b/node_modules/core-js-pure/es/parse-float.js deleted file mode 100644 index 3528d633..00000000 --- a/node_modules/core-js-pure/es/parse-float.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/es.parse-float'); -var path = require('../internals/path'); - -module.exports = path.parseFloat; diff --git a/node_modules/core-js-pure/es/parse-int.js b/node_modules/core-js-pure/es/parse-int.js deleted file mode 100644 index 75cf1271..00000000 --- a/node_modules/core-js-pure/es/parse-int.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/es.parse-int'); -var path = require('../internals/path'); - -module.exports = path.parseInt; diff --git a/node_modules/core-js-pure/es/promise/all-settled.js b/node_modules/core-js-pure/es/promise/all-settled.js deleted file mode 100644 index b05ac7eb..00000000 --- a/node_modules/core-js-pure/es/promise/all-settled.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -require('../../modules/es.promise'); -require('../../modules/es.promise.all-settled'); -var path = require('../../internals/path'); - -var Promise = path.Promise; -var $allSettled = Promise.allSettled; - -module.exports = function allSettled(iterable) { - return $allSettled.call(typeof this === 'function' ? this : Promise, iterable); -}; diff --git a/node_modules/core-js-pure/es/promise/finally.js b/node_modules/core-js-pure/es/promise/finally.js deleted file mode 100644 index 01d4282f..00000000 --- a/node_modules/core-js-pure/es/promise/finally.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.promise'); -require('../../modules/es.promise.finally'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Promise', 'finally'); diff --git a/node_modules/core-js-pure/es/promise/index.js b/node_modules/core-js-pure/es/promise/index.js deleted file mode 100644 index 2b41b45c..00000000 --- a/node_modules/core-js-pure/es/promise/index.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/web.dom-collections.iterator'); -require('../../modules/es.promise'); -require('../../modules/es.promise.all-settled'); -require('../../modules/es.promise.finally'); -var path = require('../../internals/path'); - -module.exports = path.Promise; diff --git a/node_modules/core-js-pure/es/reflect/apply.js b/node_modules/core-js-pure/es/reflect/apply.js deleted file mode 100644 index 0dbe1286..00000000 --- a/node_modules/core-js-pure/es/reflect/apply.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.apply'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.apply; diff --git a/node_modules/core-js-pure/es/reflect/construct.js b/node_modules/core-js-pure/es/reflect/construct.js deleted file mode 100644 index df900269..00000000 --- a/node_modules/core-js-pure/es/reflect/construct.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.construct'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.construct; diff --git a/node_modules/core-js-pure/es/reflect/define-property.js b/node_modules/core-js-pure/es/reflect/define-property.js deleted file mode 100644 index 7b33dcaf..00000000 --- a/node_modules/core-js-pure/es/reflect/define-property.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.define-property'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.defineProperty; diff --git a/node_modules/core-js-pure/es/reflect/delete-property.js b/node_modules/core-js-pure/es/reflect/delete-property.js deleted file mode 100644 index 0e023dfb..00000000 --- a/node_modules/core-js-pure/es/reflect/delete-property.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.delete-property'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.deleteProperty; diff --git a/node_modules/core-js-pure/es/reflect/get-own-property-descriptor.js b/node_modules/core-js-pure/es/reflect/get-own-property-descriptor.js deleted file mode 100644 index 8c135a3e..00000000 --- a/node_modules/core-js-pure/es/reflect/get-own-property-descriptor.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.get-own-property-descriptor'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.getOwnPropertyDescriptor; diff --git a/node_modules/core-js-pure/es/reflect/get-prototype-of.js b/node_modules/core-js-pure/es/reflect/get-prototype-of.js deleted file mode 100644 index aca74f81..00000000 --- a/node_modules/core-js-pure/es/reflect/get-prototype-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.get-prototype-of'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.getPrototypeOf; diff --git a/node_modules/core-js-pure/es/reflect/get.js b/node_modules/core-js-pure/es/reflect/get.js deleted file mode 100644 index 239e9318..00000000 --- a/node_modules/core-js-pure/es/reflect/get.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.get'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.get; diff --git a/node_modules/core-js-pure/es/reflect/has.js b/node_modules/core-js-pure/es/reflect/has.js deleted file mode 100644 index 0dbf29fa..00000000 --- a/node_modules/core-js-pure/es/reflect/has.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.has'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.has; diff --git a/node_modules/core-js-pure/es/reflect/index.js b/node_modules/core-js-pure/es/reflect/index.js deleted file mode 100644 index 6a82213c..00000000 --- a/node_modules/core-js-pure/es/reflect/index.js +++ /dev/null @@ -1,16 +0,0 @@ -require('../../modules/es.reflect.apply'); -require('../../modules/es.reflect.construct'); -require('../../modules/es.reflect.define-property'); -require('../../modules/es.reflect.delete-property'); -require('../../modules/es.reflect.get'); -require('../../modules/es.reflect.get-own-property-descriptor'); -require('../../modules/es.reflect.get-prototype-of'); -require('../../modules/es.reflect.has'); -require('../../modules/es.reflect.is-extensible'); -require('../../modules/es.reflect.own-keys'); -require('../../modules/es.reflect.prevent-extensions'); -require('../../modules/es.reflect.set'); -require('../../modules/es.reflect.set-prototype-of'); -var path = require('../../internals/path'); - -module.exports = path.Reflect; diff --git a/node_modules/core-js-pure/es/reflect/is-extensible.js b/node_modules/core-js-pure/es/reflect/is-extensible.js deleted file mode 100644 index c0943d24..00000000 --- a/node_modules/core-js-pure/es/reflect/is-extensible.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.is-extensible'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.isExtensible; diff --git a/node_modules/core-js-pure/es/reflect/own-keys.js b/node_modules/core-js-pure/es/reflect/own-keys.js deleted file mode 100644 index 364fc818..00000000 --- a/node_modules/core-js-pure/es/reflect/own-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.own-keys'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.ownKeys; diff --git a/node_modules/core-js-pure/es/reflect/prevent-extensions.js b/node_modules/core-js-pure/es/reflect/prevent-extensions.js deleted file mode 100644 index 8687c1b9..00000000 --- a/node_modules/core-js-pure/es/reflect/prevent-extensions.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.prevent-extensions'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.preventExtensions; diff --git a/node_modules/core-js-pure/es/reflect/set-prototype-of.js b/node_modules/core-js-pure/es/reflect/set-prototype-of.js deleted file mode 100644 index 819148a5..00000000 --- a/node_modules/core-js-pure/es/reflect/set-prototype-of.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.set-prototype-of'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.setPrototypeOf; diff --git a/node_modules/core-js-pure/es/reflect/set.js b/node_modules/core-js-pure/es/reflect/set.js deleted file mode 100644 index 25ed86c3..00000000 --- a/node_modules/core-js-pure/es/reflect/set.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.reflect.set'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.set; diff --git a/node_modules/core-js-pure/es/regexp/constructor.js b/node_modules/core-js-pure/es/regexp/constructor.js deleted file mode 100644 index 195da54d..00000000 --- a/node_modules/core-js-pure/es/regexp/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/es.regexp.constructor'); - -module.exports = RegExp; diff --git a/node_modules/core-js-pure/es/regexp/flags.js b/node_modules/core-js-pure/es/regexp/flags.js deleted file mode 100644 index d3eed6d2..00000000 --- a/node_modules/core-js-pure/es/regexp/flags.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.regexp.flags'); -var flags = require('../../internals/regexp-flags'); - -module.exports = function (it) { - return flags.call(it); -}; diff --git a/node_modules/core-js-pure/es/regexp/index.js b/node_modules/core-js-pure/es/regexp/index.js deleted file mode 100644 index 92c170a0..00000000 --- a/node_modules/core-js-pure/es/regexp/index.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.regexp.constructor'); -require('../../modules/es.regexp.to-string'); -require('../../modules/es.regexp.exec'); -require('../../modules/es.regexp.flags'); -require('../../modules/es.regexp.sticky'); -require('../../modules/es.regexp.test'); -require('../../modules/es.string.match'); -require('../../modules/es.string.replace'); -require('../../modules/es.string.search'); -require('../../modules/es.string.split'); diff --git a/node_modules/core-js-pure/es/regexp/match.js b/node_modules/core-js-pure/es/regexp/match.js deleted file mode 100644 index af0e2fa6..00000000 --- a/node_modules/core-js-pure/es/regexp/match.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.string.match'); -var wellKnownSymbol = require('../../internals/well-known-symbol'); - -var MATCH = wellKnownSymbol('match'); - -module.exports = function (it, str) { - return RegExp.prototype[MATCH].call(it, str); -}; diff --git a/node_modules/core-js-pure/es/regexp/replace.js b/node_modules/core-js-pure/es/regexp/replace.js deleted file mode 100644 index 1311b2a1..00000000 --- a/node_modules/core-js-pure/es/regexp/replace.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.string.replace'); -var wellKnownSymbol = require('../../internals/well-known-symbol'); - -var REPLACE = wellKnownSymbol('replace'); - -module.exports = function (it, str, replacer) { - return RegExp.prototype[REPLACE].call(it, str, replacer); -}; diff --git a/node_modules/core-js-pure/es/regexp/search.js b/node_modules/core-js-pure/es/regexp/search.js deleted file mode 100644 index 4adc913e..00000000 --- a/node_modules/core-js-pure/es/regexp/search.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.string.search'); -var wellKnownSymbol = require('../../internals/well-known-symbol'); - -var SEARCH = wellKnownSymbol('search'); - -module.exports = function (it, str) { - return RegExp.prototype[SEARCH].call(it, str); -}; diff --git a/node_modules/core-js-pure/es/regexp/split.js b/node_modules/core-js-pure/es/regexp/split.js deleted file mode 100644 index 49ae5f2b..00000000 --- a/node_modules/core-js-pure/es/regexp/split.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.string.split'); -var wellKnownSymbol = require('../../internals/well-known-symbol'); - -var SPLIT = wellKnownSymbol('split'); - -module.exports = function (it, str, limit) { - return RegExp.prototype[SPLIT].call(it, str, limit); -}; diff --git a/node_modules/core-js-pure/es/regexp/sticky.js b/node_modules/core-js-pure/es/regexp/sticky.js deleted file mode 100644 index eb33fb10..00000000 --- a/node_modules/core-js-pure/es/regexp/sticky.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.regexp.sticky'); - -module.exports = function (it) { - return it.sticky; -}; diff --git a/node_modules/core-js-pure/es/regexp/test.js b/node_modules/core-js-pure/es/regexp/test.js deleted file mode 100644 index b71d4a0f..00000000 --- a/node_modules/core-js-pure/es/regexp/test.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.regexp.exec'); -require('../../modules/es.regexp.test'); - -module.exports = function (re, string) { - return RegExp.prototype.test.call(re, string); -}; diff --git a/node_modules/core-js-pure/es/regexp/to-string.js b/node_modules/core-js-pure/es/regexp/to-string.js deleted file mode 100644 index 3072e63e..00000000 --- a/node_modules/core-js-pure/es/regexp/to-string.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.regexp.to-string'); - -module.exports = function toString(it) { - return RegExp.prototype.toString.call(it); -}; diff --git a/node_modules/core-js-pure/es/set/index.js b/node_modules/core-js-pure/es/set/index.js deleted file mode 100644 index 52322b69..00000000 --- a/node_modules/core-js-pure/es/set/index.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -module.exports = path.Set; diff --git a/node_modules/core-js-pure/es/string/anchor.js b/node_modules/core-js-pure/es/string/anchor.js deleted file mode 100644 index 254317e1..00000000 --- a/node_modules/core-js-pure/es/string/anchor.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.anchor'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'anchor'); diff --git a/node_modules/core-js-pure/es/string/big.js b/node_modules/core-js-pure/es/string/big.js deleted file mode 100644 index d0878eb6..00000000 --- a/node_modules/core-js-pure/es/string/big.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.big'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'big'); diff --git a/node_modules/core-js-pure/es/string/blink.js b/node_modules/core-js-pure/es/string/blink.js deleted file mode 100644 index fc96d57f..00000000 --- a/node_modules/core-js-pure/es/string/blink.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.blink'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'blink'); diff --git a/node_modules/core-js-pure/es/string/bold.js b/node_modules/core-js-pure/es/string/bold.js deleted file mode 100644 index f098a7ad..00000000 --- a/node_modules/core-js-pure/es/string/bold.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.bold'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'bold'); diff --git a/node_modules/core-js-pure/es/string/code-point-at.js b/node_modules/core-js-pure/es/string/code-point-at.js deleted file mode 100644 index cbaaae36..00000000 --- a/node_modules/core-js-pure/es/string/code-point-at.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.code-point-at'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'codePointAt'); diff --git a/node_modules/core-js-pure/es/string/ends-with.js b/node_modules/core-js-pure/es/string/ends-with.js deleted file mode 100644 index 26d7ffe5..00000000 --- a/node_modules/core-js-pure/es/string/ends-with.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.ends-with'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'endsWith'); diff --git a/node_modules/core-js-pure/es/string/fixed.js b/node_modules/core-js-pure/es/string/fixed.js deleted file mode 100644 index 099ada47..00000000 --- a/node_modules/core-js-pure/es/string/fixed.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.fixed'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'fixed'); diff --git a/node_modules/core-js-pure/es/string/fontcolor.js b/node_modules/core-js-pure/es/string/fontcolor.js deleted file mode 100644 index f3606f60..00000000 --- a/node_modules/core-js-pure/es/string/fontcolor.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.fontcolor'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'fontcolor'); diff --git a/node_modules/core-js-pure/es/string/fontsize.js b/node_modules/core-js-pure/es/string/fontsize.js deleted file mode 100644 index 499bfa55..00000000 --- a/node_modules/core-js-pure/es/string/fontsize.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.fontsize'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'fontsize'); diff --git a/node_modules/core-js-pure/es/string/from-code-point.js b/node_modules/core-js-pure/es/string/from-code-point.js deleted file mode 100644 index 1eff7642..00000000 --- a/node_modules/core-js-pure/es/string/from-code-point.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.from-code-point'); -var path = require('../../internals/path'); - -module.exports = path.String.fromCodePoint; diff --git a/node_modules/core-js-pure/es/string/includes.js b/node_modules/core-js-pure/es/string/includes.js deleted file mode 100644 index 26d2ad9d..00000000 --- a/node_modules/core-js-pure/es/string/includes.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.includes'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'includes'); diff --git a/node_modules/core-js-pure/es/string/index.js b/node_modules/core-js-pure/es/string/index.js deleted file mode 100644 index f036fe40..00000000 --- a/node_modules/core-js-pure/es/string/index.js +++ /dev/null @@ -1,35 +0,0 @@ -require('../../modules/es.regexp.exec'); -require('../../modules/es.string.from-code-point'); -require('../../modules/es.string.raw'); -require('../../modules/es.string.code-point-at'); -require('../../modules/es.string.ends-with'); -require('../../modules/es.string.includes'); -require('../../modules/es.string.match'); -require('../../modules/es.string.match-all'); -require('../../modules/es.string.pad-end'); -require('../../modules/es.string.pad-start'); -require('../../modules/es.string.repeat'); -require('../../modules/es.string.replace'); -require('../../modules/es.string.search'); -require('../../modules/es.string.split'); -require('../../modules/es.string.starts-with'); -require('../../modules/es.string.trim'); -require('../../modules/es.string.trim-start'); -require('../../modules/es.string.trim-end'); -require('../../modules/es.string.iterator'); -require('../../modules/es.string.anchor'); -require('../../modules/es.string.big'); -require('../../modules/es.string.blink'); -require('../../modules/es.string.bold'); -require('../../modules/es.string.fixed'); -require('../../modules/es.string.fontcolor'); -require('../../modules/es.string.fontsize'); -require('../../modules/es.string.italics'); -require('../../modules/es.string.link'); -require('../../modules/es.string.small'); -require('../../modules/es.string.strike'); -require('../../modules/es.string.sub'); -require('../../modules/es.string.sup'); -var path = require('../../internals/path'); - -module.exports = path.String; diff --git a/node_modules/core-js-pure/es/string/italics.js b/node_modules/core-js-pure/es/string/italics.js deleted file mode 100644 index 6057f4fd..00000000 --- a/node_modules/core-js-pure/es/string/italics.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.italics'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'italics'); diff --git a/node_modules/core-js-pure/es/string/iterator.js b/node_modules/core-js-pure/es/string/iterator.js deleted file mode 100644 index b6d9a1a6..00000000 --- a/node_modules/core-js-pure/es/string/iterator.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/es.string.iterator'); -var Iterators = require('../../internals/iterators'); - -var getStringIterator = Iterators.String; - -module.exports = function (it) { - return getStringIterator.call(it); -}; diff --git a/node_modules/core-js-pure/es/string/link.js b/node_modules/core-js-pure/es/string/link.js deleted file mode 100644 index c195d612..00000000 --- a/node_modules/core-js-pure/es/string/link.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.link'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'link'); diff --git a/node_modules/core-js-pure/es/string/match-all.js b/node_modules/core-js-pure/es/string/match-all.js deleted file mode 100644 index e951f4e4..00000000 --- a/node_modules/core-js-pure/es/string/match-all.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.match-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'matchAll'); diff --git a/node_modules/core-js-pure/es/string/match.js b/node_modules/core-js-pure/es/string/match.js deleted file mode 100644 index b484de08..00000000 --- a/node_modules/core-js-pure/es/string/match.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.regexp.exec'); -require('../../modules/es.string.match'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'match'); diff --git a/node_modules/core-js-pure/es/string/pad-end.js b/node_modules/core-js-pure/es/string/pad-end.js deleted file mode 100644 index 237b96d1..00000000 --- a/node_modules/core-js-pure/es/string/pad-end.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.pad-end'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'padEnd'); diff --git a/node_modules/core-js-pure/es/string/pad-start.js b/node_modules/core-js-pure/es/string/pad-start.js deleted file mode 100644 index 250496f1..00000000 --- a/node_modules/core-js-pure/es/string/pad-start.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.pad-start'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'padStart'); diff --git a/node_modules/core-js-pure/es/string/raw.js b/node_modules/core-js-pure/es/string/raw.js deleted file mode 100644 index e75c54c0..00000000 --- a/node_modules/core-js-pure/es/string/raw.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.raw'); -var path = require('../../internals/path'); - -module.exports = path.String.raw; diff --git a/node_modules/core-js-pure/es/string/repeat.js b/node_modules/core-js-pure/es/string/repeat.js deleted file mode 100644 index bd6992bd..00000000 --- a/node_modules/core-js-pure/es/string/repeat.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.repeat'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'repeat'); diff --git a/node_modules/core-js-pure/es/string/replace.js b/node_modules/core-js-pure/es/string/replace.js deleted file mode 100644 index 28b62e3d..00000000 --- a/node_modules/core-js-pure/es/string/replace.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.regexp.exec'); -require('../../modules/es.string.replace'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'replace'); diff --git a/node_modules/core-js-pure/es/string/search.js b/node_modules/core-js-pure/es/string/search.js deleted file mode 100644 index bfb5ab02..00000000 --- a/node_modules/core-js-pure/es/string/search.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.regexp.exec'); -require('../../modules/es.string.search'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'search'); diff --git a/node_modules/core-js-pure/es/string/small.js b/node_modules/core-js-pure/es/string/small.js deleted file mode 100644 index 4e8780f6..00000000 --- a/node_modules/core-js-pure/es/string/small.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.small'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'small'); diff --git a/node_modules/core-js-pure/es/string/split.js b/node_modules/core-js-pure/es/string/split.js deleted file mode 100644 index a890153e..00000000 --- a/node_modules/core-js-pure/es/string/split.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.regexp.exec'); -require('../../modules/es.string.split'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'split'); diff --git a/node_modules/core-js-pure/es/string/starts-with.js b/node_modules/core-js-pure/es/string/starts-with.js deleted file mode 100644 index 2b22eba1..00000000 --- a/node_modules/core-js-pure/es/string/starts-with.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.starts-with'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'startsWith'); diff --git a/node_modules/core-js-pure/es/string/strike.js b/node_modules/core-js-pure/es/string/strike.js deleted file mode 100644 index f986f9e4..00000000 --- a/node_modules/core-js-pure/es/string/strike.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.strike'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'strike'); diff --git a/node_modules/core-js-pure/es/string/sub.js b/node_modules/core-js-pure/es/string/sub.js deleted file mode 100644 index 19c6c384..00000000 --- a/node_modules/core-js-pure/es/string/sub.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.sub'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'sub'); diff --git a/node_modules/core-js-pure/es/string/sup.js b/node_modules/core-js-pure/es/string/sup.js deleted file mode 100644 index 419785d9..00000000 --- a/node_modules/core-js-pure/es/string/sup.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.sup'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'sup'); diff --git a/node_modules/core-js-pure/es/string/trim-end.js b/node_modules/core-js-pure/es/string/trim-end.js deleted file mode 100644 index 43042987..00000000 --- a/node_modules/core-js-pure/es/string/trim-end.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.trim-end'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'trimRight'); diff --git a/node_modules/core-js-pure/es/string/trim-left.js b/node_modules/core-js-pure/es/string/trim-left.js deleted file mode 100644 index a24dcdec..00000000 --- a/node_modules/core-js-pure/es/string/trim-left.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.trim-start'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'trimLeft'); diff --git a/node_modules/core-js-pure/es/string/trim-right.js b/node_modules/core-js-pure/es/string/trim-right.js deleted file mode 100644 index 43042987..00000000 --- a/node_modules/core-js-pure/es/string/trim-right.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.trim-end'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'trimRight'); diff --git a/node_modules/core-js-pure/es/string/trim-start.js b/node_modules/core-js-pure/es/string/trim-start.js deleted file mode 100644 index a24dcdec..00000000 --- a/node_modules/core-js-pure/es/string/trim-start.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.trim-start'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'trimLeft'); diff --git a/node_modules/core-js-pure/es/string/trim.js b/node_modules/core-js-pure/es/string/trim.js deleted file mode 100644 index 0fca9331..00000000 --- a/node_modules/core-js-pure/es/string/trim.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.string.trim'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'trim'); diff --git a/node_modules/core-js-pure/es/string/virtual/anchor.js b/node_modules/core-js-pure/es/string/virtual/anchor.js deleted file mode 100644 index 3b5cf6b6..00000000 --- a/node_modules/core-js-pure/es/string/virtual/anchor.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.anchor'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').anchor; diff --git a/node_modules/core-js-pure/es/string/virtual/big.js b/node_modules/core-js-pure/es/string/virtual/big.js deleted file mode 100644 index a63bd0fb..00000000 --- a/node_modules/core-js-pure/es/string/virtual/big.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.big'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').big; diff --git a/node_modules/core-js-pure/es/string/virtual/blink.js b/node_modules/core-js-pure/es/string/virtual/blink.js deleted file mode 100644 index 8619c25b..00000000 --- a/node_modules/core-js-pure/es/string/virtual/blink.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.blink'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').blink; diff --git a/node_modules/core-js-pure/es/string/virtual/bold.js b/node_modules/core-js-pure/es/string/virtual/bold.js deleted file mode 100644 index 1f5419a4..00000000 --- a/node_modules/core-js-pure/es/string/virtual/bold.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.bold'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').bold; diff --git a/node_modules/core-js-pure/es/string/virtual/code-point-at.js b/node_modules/core-js-pure/es/string/virtual/code-point-at.js deleted file mode 100644 index c12691d9..00000000 --- a/node_modules/core-js-pure/es/string/virtual/code-point-at.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.code-point-at'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').codePointAt; diff --git a/node_modules/core-js-pure/es/string/virtual/ends-with.js b/node_modules/core-js-pure/es/string/virtual/ends-with.js deleted file mode 100644 index 81a13221..00000000 --- a/node_modules/core-js-pure/es/string/virtual/ends-with.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.ends-with'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').endsWith; diff --git a/node_modules/core-js-pure/es/string/virtual/fixed.js b/node_modules/core-js-pure/es/string/virtual/fixed.js deleted file mode 100644 index b3b775f0..00000000 --- a/node_modules/core-js-pure/es/string/virtual/fixed.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.fixed'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').fixed; diff --git a/node_modules/core-js-pure/es/string/virtual/fontcolor.js b/node_modules/core-js-pure/es/string/virtual/fontcolor.js deleted file mode 100644 index 5b89a227..00000000 --- a/node_modules/core-js-pure/es/string/virtual/fontcolor.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.fontcolor'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').fontcolor; diff --git a/node_modules/core-js-pure/es/string/virtual/fontsize.js b/node_modules/core-js-pure/es/string/virtual/fontsize.js deleted file mode 100644 index 28491b0d..00000000 --- a/node_modules/core-js-pure/es/string/virtual/fontsize.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.fontsize'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').fontsize; diff --git a/node_modules/core-js-pure/es/string/virtual/includes.js b/node_modules/core-js-pure/es/string/virtual/includes.js deleted file mode 100644 index e6d9fabb..00000000 --- a/node_modules/core-js-pure/es/string/virtual/includes.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.includes'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').includes; diff --git a/node_modules/core-js-pure/es/string/virtual/index.js b/node_modules/core-js-pure/es/string/virtual/index.js deleted file mode 100644 index 1151b798..00000000 --- a/node_modules/core-js-pure/es/string/virtual/index.js +++ /dev/null @@ -1,32 +0,0 @@ -require('../../../modules/es.string.code-point-at'); -require('../../../modules/es.string.ends-with'); -require('../../../modules/es.string.includes'); -require('../../../modules/es.string.match'); -require('../../../modules/es.string.match-all'); -require('../../../modules/es.string.pad-end'); -require('../../../modules/es.string.pad-start'); -require('../../../modules/es.string.repeat'); -require('../../../modules/es.string.replace'); -require('../../../modules/es.string.search'); -require('../../../modules/es.string.split'); -require('../../../modules/es.string.starts-with'); -require('../../../modules/es.string.trim'); -require('../../../modules/es.string.trim-start'); -require('../../../modules/es.string.trim-end'); -require('../../../modules/es.string.iterator'); -require('../../../modules/es.string.anchor'); -require('../../../modules/es.string.big'); -require('../../../modules/es.string.blink'); -require('../../../modules/es.string.bold'); -require('../../../modules/es.string.fixed'); -require('../../../modules/es.string.fontcolor'); -require('../../../modules/es.string.fontsize'); -require('../../../modules/es.string.italics'); -require('../../../modules/es.string.link'); -require('../../../modules/es.string.small'); -require('../../../modules/es.string.strike'); -require('../../../modules/es.string.sub'); -require('../../../modules/es.string.sup'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String'); diff --git a/node_modules/core-js-pure/es/string/virtual/italics.js b/node_modules/core-js-pure/es/string/virtual/italics.js deleted file mode 100644 index c6cf80b8..00000000 --- a/node_modules/core-js-pure/es/string/virtual/italics.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.italics'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').italics; diff --git a/node_modules/core-js-pure/es/string/virtual/iterator.js b/node_modules/core-js-pure/es/string/virtual/iterator.js deleted file mode 100644 index df1e2aaa..00000000 --- a/node_modules/core-js-pure/es/string/virtual/iterator.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.iterator'); -var Iterators = require('../../../internals/iterators'); - -module.exports = Iterators.String; diff --git a/node_modules/core-js-pure/es/string/virtual/link.js b/node_modules/core-js-pure/es/string/virtual/link.js deleted file mode 100644 index d387e168..00000000 --- a/node_modules/core-js-pure/es/string/virtual/link.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.link'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').link; diff --git a/node_modules/core-js-pure/es/string/virtual/match-all.js b/node_modules/core-js-pure/es/string/virtual/match-all.js deleted file mode 100644 index 6bad2f8f..00000000 --- a/node_modules/core-js-pure/es/string/virtual/match-all.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.match-all'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').matchAll; diff --git a/node_modules/core-js-pure/es/string/virtual/pad-end.js b/node_modules/core-js-pure/es/string/virtual/pad-end.js deleted file mode 100644 index a7d54de4..00000000 --- a/node_modules/core-js-pure/es/string/virtual/pad-end.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.pad-end'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').padEnd; diff --git a/node_modules/core-js-pure/es/string/virtual/pad-start.js b/node_modules/core-js-pure/es/string/virtual/pad-start.js deleted file mode 100644 index 7695cb2f..00000000 --- a/node_modules/core-js-pure/es/string/virtual/pad-start.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.pad-start'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').padStart; diff --git a/node_modules/core-js-pure/es/string/virtual/repeat.js b/node_modules/core-js-pure/es/string/virtual/repeat.js deleted file mode 100644 index dab88b57..00000000 --- a/node_modules/core-js-pure/es/string/virtual/repeat.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.repeat'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').repeat; diff --git a/node_modules/core-js-pure/es/string/virtual/small.js b/node_modules/core-js-pure/es/string/virtual/small.js deleted file mode 100644 index e9352a8d..00000000 --- a/node_modules/core-js-pure/es/string/virtual/small.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.small'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').small; diff --git a/node_modules/core-js-pure/es/string/virtual/starts-with.js b/node_modules/core-js-pure/es/string/virtual/starts-with.js deleted file mode 100644 index 917071b9..00000000 --- a/node_modules/core-js-pure/es/string/virtual/starts-with.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.starts-with'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').startsWith; diff --git a/node_modules/core-js-pure/es/string/virtual/strike.js b/node_modules/core-js-pure/es/string/virtual/strike.js deleted file mode 100644 index 971a1293..00000000 --- a/node_modules/core-js-pure/es/string/virtual/strike.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.strike'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').strike; diff --git a/node_modules/core-js-pure/es/string/virtual/sub.js b/node_modules/core-js-pure/es/string/virtual/sub.js deleted file mode 100644 index 0514fb8b..00000000 --- a/node_modules/core-js-pure/es/string/virtual/sub.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.sub'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').sub; diff --git a/node_modules/core-js-pure/es/string/virtual/sup.js b/node_modules/core-js-pure/es/string/virtual/sup.js deleted file mode 100644 index 61debf30..00000000 --- a/node_modules/core-js-pure/es/string/virtual/sup.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.sup'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').sup; diff --git a/node_modules/core-js-pure/es/string/virtual/trim-end.js b/node_modules/core-js-pure/es/string/virtual/trim-end.js deleted file mode 100644 index 9c1d0c03..00000000 --- a/node_modules/core-js-pure/es/string/virtual/trim-end.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.trim-end'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').trimRight; diff --git a/node_modules/core-js-pure/es/string/virtual/trim-left.js b/node_modules/core-js-pure/es/string/virtual/trim-left.js deleted file mode 100644 index 17cfc12d..00000000 --- a/node_modules/core-js-pure/es/string/virtual/trim-left.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.trim-start'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').trimLeft; diff --git a/node_modules/core-js-pure/es/string/virtual/trim-right.js b/node_modules/core-js-pure/es/string/virtual/trim-right.js deleted file mode 100644 index 9c1d0c03..00000000 --- a/node_modules/core-js-pure/es/string/virtual/trim-right.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.trim-end'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').trimRight; diff --git a/node_modules/core-js-pure/es/string/virtual/trim-start.js b/node_modules/core-js-pure/es/string/virtual/trim-start.js deleted file mode 100644 index 17cfc12d..00000000 --- a/node_modules/core-js-pure/es/string/virtual/trim-start.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.trim-start'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').trimLeft; diff --git a/node_modules/core-js-pure/es/string/virtual/trim.js b/node_modules/core-js-pure/es/string/virtual/trim.js deleted file mode 100644 index 6d7b41d6..00000000 --- a/node_modules/core-js-pure/es/string/virtual/trim.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/es.string.trim'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').trim; diff --git a/node_modules/core-js-pure/es/symbol/async-iterator.js b/node_modules/core-js-pure/es/symbol/async-iterator.js deleted file mode 100644 index 672167ff..00000000 --- a/node_modules/core-js-pure/es/symbol/async-iterator.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol.async-iterator'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('asyncIterator'); diff --git a/node_modules/core-js-pure/es/symbol/description.js b/node_modules/core-js-pure/es/symbol/description.js deleted file mode 100644 index 7bb4b2bc..00000000 --- a/node_modules/core-js-pure/es/symbol/description.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.symbol.description'); diff --git a/node_modules/core-js-pure/es/symbol/for.js b/node_modules/core-js-pure/es/symbol/for.js deleted file mode 100644 index 9406c70e..00000000 --- a/node_modules/core-js-pure/es/symbol/for.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol'); -var path = require('../../internals/path'); - -module.exports = path.Symbol['for']; diff --git a/node_modules/core-js-pure/es/symbol/has-instance.js b/node_modules/core-js-pure/es/symbol/has-instance.js deleted file mode 100644 index 80cfe23b..00000000 --- a/node_modules/core-js-pure/es/symbol/has-instance.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.has-instance'); -require('../../modules/es.function.has-instance'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('hasInstance'); diff --git a/node_modules/core-js-pure/es/symbol/index.js b/node_modules/core-js-pure/es/symbol/index.js deleted file mode 100644 index 4d6acf41..00000000 --- a/node_modules/core-js-pure/es/symbol/index.js +++ /dev/null @@ -1,22 +0,0 @@ -require('../../modules/es.array.concat'); -require('../../modules/es.object.to-string'); -require('../../modules/es.symbol'); -require('../../modules/es.symbol.async-iterator'); -require('../../modules/es.symbol.description'); -require('../../modules/es.symbol.has-instance'); -require('../../modules/es.symbol.is-concat-spreadable'); -require('../../modules/es.symbol.iterator'); -require('../../modules/es.symbol.match'); -require('../../modules/es.symbol.match-all'); -require('../../modules/es.symbol.replace'); -require('../../modules/es.symbol.search'); -require('../../modules/es.symbol.species'); -require('../../modules/es.symbol.split'); -require('../../modules/es.symbol.to-primitive'); -require('../../modules/es.symbol.to-string-tag'); -require('../../modules/es.symbol.unscopables'); -require('../../modules/es.math.to-string-tag'); -require('../../modules/es.json.to-string-tag'); -var path = require('../../internals/path'); - -module.exports = path.Symbol; diff --git a/node_modules/core-js-pure/es/symbol/is-concat-spreadable.js b/node_modules/core-js-pure/es/symbol/is-concat-spreadable.js deleted file mode 100644 index 26711710..00000000 --- a/node_modules/core-js-pure/es/symbol/is-concat-spreadable.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.is-concat-spreadable'); -require('../../modules/es.array.concat'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('isConcatSpreadable'); diff --git a/node_modules/core-js-pure/es/symbol/iterator.js b/node_modules/core-js-pure/es/symbol/iterator.js deleted file mode 100644 index 73fa41d3..00000000 --- a/node_modules/core-js-pure/es/symbol/iterator.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.symbol.iterator'); -require('../../modules/es.string.iterator'); -require('../../modules/web.dom-collections.iterator'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('iterator'); diff --git a/node_modules/core-js-pure/es/symbol/key-for.js b/node_modules/core-js-pure/es/symbol/key-for.js deleted file mode 100644 index 6c832b92..00000000 --- a/node_modules/core-js-pure/es/symbol/key-for.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol'); -var path = require('../../internals/path'); - -module.exports = path.Symbol.keyFor; diff --git a/node_modules/core-js-pure/es/symbol/match-all.js b/node_modules/core-js-pure/es/symbol/match-all.js deleted file mode 100644 index b0b2f23e..00000000 --- a/node_modules/core-js-pure/es/symbol/match-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.match-all'); -require('../../modules/es.string.match-all'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('matchAll'); diff --git a/node_modules/core-js-pure/es/symbol/match.js b/node_modules/core-js-pure/es/symbol/match.js deleted file mode 100644 index df77b4f5..00000000 --- a/node_modules/core-js-pure/es/symbol/match.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.match'); -require('../../modules/es.string.match'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('match'); diff --git a/node_modules/core-js-pure/es/symbol/replace.js b/node_modules/core-js-pure/es/symbol/replace.js deleted file mode 100644 index 02b0f997..00000000 --- a/node_modules/core-js-pure/es/symbol/replace.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.replace'); -require('../../modules/es.string.replace'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('replace'); diff --git a/node_modules/core-js-pure/es/symbol/search.js b/node_modules/core-js-pure/es/symbol/search.js deleted file mode 100644 index 5122ca1d..00000000 --- a/node_modules/core-js-pure/es/symbol/search.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.search'); -require('../../modules/es.string.search'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('search'); diff --git a/node_modules/core-js-pure/es/symbol/species.js b/node_modules/core-js-pure/es/symbol/species.js deleted file mode 100644 index 28d38951..00000000 --- a/node_modules/core-js-pure/es/symbol/species.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol.species'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('species'); diff --git a/node_modules/core-js-pure/es/symbol/split.js b/node_modules/core-js-pure/es/symbol/split.js deleted file mode 100644 index 25757943..00000000 --- a/node_modules/core-js-pure/es/symbol/split.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.symbol.split'); -require('../../modules/es.string.split'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('split'); diff --git a/node_modules/core-js-pure/es/symbol/to-primitive.js b/node_modules/core-js-pure/es/symbol/to-primitive.js deleted file mode 100644 index 390c1ee9..00000000 --- a/node_modules/core-js-pure/es/symbol/to-primitive.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol.to-primitive'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('toPrimitive'); diff --git a/node_modules/core-js-pure/es/symbol/to-string-tag.js b/node_modules/core-js-pure/es/symbol/to-string-tag.js deleted file mode 100644 index 6af15512..00000000 --- a/node_modules/core-js-pure/es/symbol/to-string-tag.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.symbol.to-string-tag'); -require('../../modules/es.object.to-string'); -require('../../modules/es.math.to-string-tag'); -require('../../modules/es.json.to-string-tag'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('toStringTag'); diff --git a/node_modules/core-js-pure/es/symbol/unscopables.js b/node_modules/core-js-pure/es/symbol/unscopables.js deleted file mode 100644 index 6a2d972d..00000000 --- a/node_modules/core-js-pure/es/symbol/unscopables.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/es.symbol.unscopables'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('unscopables'); diff --git a/node_modules/core-js-pure/es/typed-array/copy-within.js b/node_modules/core-js-pure/es/typed-array/copy-within.js deleted file mode 100644 index 1352cec7..00000000 --- a/node_modules/core-js-pure/es/typed-array/copy-within.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.copy-within'); diff --git a/node_modules/core-js-pure/es/typed-array/entries.js b/node_modules/core-js-pure/es/typed-array/entries.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/es/typed-array/entries.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/es/typed-array/every.js b/node_modules/core-js-pure/es/typed-array/every.js deleted file mode 100644 index 681164be..00000000 --- a/node_modules/core-js-pure/es/typed-array/every.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.every'); diff --git a/node_modules/core-js-pure/es/typed-array/fill.js b/node_modules/core-js-pure/es/typed-array/fill.js deleted file mode 100644 index 4d92ac66..00000000 --- a/node_modules/core-js-pure/es/typed-array/fill.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.fill'); diff --git a/node_modules/core-js-pure/es/typed-array/filter.js b/node_modules/core-js-pure/es/typed-array/filter.js deleted file mode 100644 index 7d0a630f..00000000 --- a/node_modules/core-js-pure/es/typed-array/filter.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.filter'); diff --git a/node_modules/core-js-pure/es/typed-array/find-index.js b/node_modules/core-js-pure/es/typed-array/find-index.js deleted file mode 100644 index 039cd5ed..00000000 --- a/node_modules/core-js-pure/es/typed-array/find-index.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.find-index'); diff --git a/node_modules/core-js-pure/es/typed-array/find.js b/node_modules/core-js-pure/es/typed-array/find.js deleted file mode 100644 index b3251b9a..00000000 --- a/node_modules/core-js-pure/es/typed-array/find.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.find'); diff --git a/node_modules/core-js-pure/es/typed-array/float32-array.js b/node_modules/core-js-pure/es/typed-array/float32-array.js deleted file mode 100644 index 70d1f810..00000000 --- a/node_modules/core-js-pure/es/typed-array/float32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.float32-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Float32Array; diff --git a/node_modules/core-js-pure/es/typed-array/float64-array.js b/node_modules/core-js-pure/es/typed-array/float64-array.js deleted file mode 100644 index b84eae0a..00000000 --- a/node_modules/core-js-pure/es/typed-array/float64-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.float64-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Float64Array; diff --git a/node_modules/core-js-pure/es/typed-array/for-each.js b/node_modules/core-js-pure/es/typed-array/for-each.js deleted file mode 100644 index defe03a8..00000000 --- a/node_modules/core-js-pure/es/typed-array/for-each.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.for-each'); diff --git a/node_modules/core-js-pure/es/typed-array/from.js b/node_modules/core-js-pure/es/typed-array/from.js deleted file mode 100644 index e0f34441..00000000 --- a/node_modules/core-js-pure/es/typed-array/from.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.from'); diff --git a/node_modules/core-js-pure/es/typed-array/includes.js b/node_modules/core-js-pure/es/typed-array/includes.js deleted file mode 100644 index 5ff65f96..00000000 --- a/node_modules/core-js-pure/es/typed-array/includes.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.includes'); diff --git a/node_modules/core-js-pure/es/typed-array/index-of.js b/node_modules/core-js-pure/es/typed-array/index-of.js deleted file mode 100644 index 87081c0f..00000000 --- a/node_modules/core-js-pure/es/typed-array/index-of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.index-of'); diff --git a/node_modules/core-js-pure/es/typed-array/index.js b/node_modules/core-js-pure/es/typed-array/index.js deleted file mode 100644 index 4605b35b..00000000 --- a/node_modules/core-js-pure/es/typed-array/index.js +++ /dev/null @@ -1,12 +0,0 @@ -require('../../modules/es.typed-array.int8-array'); -require('../../modules/es.typed-array.uint8-array'); -require('../../modules/es.typed-array.uint8-clamped-array'); -require('../../modules/es.typed-array.int16-array'); -require('../../modules/es.typed-array.uint16-array'); -require('../../modules/es.typed-array.int32-array'); -require('../../modules/es.typed-array.uint32-array'); -require('../../modules/es.typed-array.float32-array'); -require('../../modules/es.typed-array.float64-array'); -require('./methods'); - -module.exports = require('../../internals/global'); diff --git a/node_modules/core-js-pure/es/typed-array/int16-array.js b/node_modules/core-js-pure/es/typed-array/int16-array.js deleted file mode 100644 index 81f5a8e5..00000000 --- a/node_modules/core-js-pure/es/typed-array/int16-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.int16-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Int16Array; diff --git a/node_modules/core-js-pure/es/typed-array/int32-array.js b/node_modules/core-js-pure/es/typed-array/int32-array.js deleted file mode 100644 index 48176bf5..00000000 --- a/node_modules/core-js-pure/es/typed-array/int32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.int32-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Int32Array; diff --git a/node_modules/core-js-pure/es/typed-array/int8-array.js b/node_modules/core-js-pure/es/typed-array/int8-array.js deleted file mode 100644 index 7d53845a..00000000 --- a/node_modules/core-js-pure/es/typed-array/int8-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.int8-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Int8Array; diff --git a/node_modules/core-js-pure/es/typed-array/iterator.js b/node_modules/core-js-pure/es/typed-array/iterator.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/es/typed-array/iterator.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/es/typed-array/join.js b/node_modules/core-js-pure/es/typed-array/join.js deleted file mode 100644 index 431129c9..00000000 --- a/node_modules/core-js-pure/es/typed-array/join.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.join'); diff --git a/node_modules/core-js-pure/es/typed-array/keys.js b/node_modules/core-js-pure/es/typed-array/keys.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/es/typed-array/keys.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/es/typed-array/last-index-of.js b/node_modules/core-js-pure/es/typed-array/last-index-of.js deleted file mode 100644 index 5682bf44..00000000 --- a/node_modules/core-js-pure/es/typed-array/last-index-of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.last-index-of'); diff --git a/node_modules/core-js-pure/es/typed-array/map.js b/node_modules/core-js-pure/es/typed-array/map.js deleted file mode 100644 index db08fed3..00000000 --- a/node_modules/core-js-pure/es/typed-array/map.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.map'); diff --git a/node_modules/core-js-pure/es/typed-array/methods.js b/node_modules/core-js-pure/es/typed-array/methods.js deleted file mode 100644 index 4c6ee887..00000000 --- a/node_modules/core-js-pure/es/typed-array/methods.js +++ /dev/null @@ -1,26 +0,0 @@ -require('../../modules/es.typed-array.from'); -require('../../modules/es.typed-array.of'); -require('../../modules/es.typed-array.copy-within'); -require('../../modules/es.typed-array.every'); -require('../../modules/es.typed-array.fill'); -require('../../modules/es.typed-array.filter'); -require('../../modules/es.typed-array.find'); -require('../../modules/es.typed-array.find-index'); -require('../../modules/es.typed-array.for-each'); -require('../../modules/es.typed-array.includes'); -require('../../modules/es.typed-array.index-of'); -require('../../modules/es.typed-array.join'); -require('../../modules/es.typed-array.last-index-of'); -require('../../modules/es.typed-array.map'); -require('../../modules/es.typed-array.reduce'); -require('../../modules/es.typed-array.reduce-right'); -require('../../modules/es.typed-array.reverse'); -require('../../modules/es.typed-array.set'); -require('../../modules/es.typed-array.slice'); -require('../../modules/es.typed-array.some'); -require('../../modules/es.typed-array.sort'); -require('../../modules/es.typed-array.subarray'); -require('../../modules/es.typed-array.to-locale-string'); -require('../../modules/es.typed-array.to-string'); -require('../../modules/es.typed-array.iterator'); -require('../../modules/es.object.to-string'); diff --git a/node_modules/core-js-pure/es/typed-array/of.js b/node_modules/core-js-pure/es/typed-array/of.js deleted file mode 100644 index 121bf5e2..00000000 --- a/node_modules/core-js-pure/es/typed-array/of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.of'); diff --git a/node_modules/core-js-pure/es/typed-array/reduce-right.js b/node_modules/core-js-pure/es/typed-array/reduce-right.js deleted file mode 100644 index cbd321fc..00000000 --- a/node_modules/core-js-pure/es/typed-array/reduce-right.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reduce-right'); diff --git a/node_modules/core-js-pure/es/typed-array/reduce.js b/node_modules/core-js-pure/es/typed-array/reduce.js deleted file mode 100644 index e2a6f282..00000000 --- a/node_modules/core-js-pure/es/typed-array/reduce.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reduce'); diff --git a/node_modules/core-js-pure/es/typed-array/reverse.js b/node_modules/core-js-pure/es/typed-array/reverse.js deleted file mode 100644 index 14995f49..00000000 --- a/node_modules/core-js-pure/es/typed-array/reverse.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reverse'); diff --git a/node_modules/core-js-pure/es/typed-array/set.js b/node_modules/core-js-pure/es/typed-array/set.js deleted file mode 100644 index 5330e229..00000000 --- a/node_modules/core-js-pure/es/typed-array/set.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.set'); diff --git a/node_modules/core-js-pure/es/typed-array/slice.js b/node_modules/core-js-pure/es/typed-array/slice.js deleted file mode 100644 index 37fb8c14..00000000 --- a/node_modules/core-js-pure/es/typed-array/slice.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.slice'); diff --git a/node_modules/core-js-pure/es/typed-array/some.js b/node_modules/core-js-pure/es/typed-array/some.js deleted file mode 100644 index 495c322f..00000000 --- a/node_modules/core-js-pure/es/typed-array/some.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.some'); diff --git a/node_modules/core-js-pure/es/typed-array/sort.js b/node_modules/core-js-pure/es/typed-array/sort.js deleted file mode 100644 index d6c7e30b..00000000 --- a/node_modules/core-js-pure/es/typed-array/sort.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.sort'); diff --git a/node_modules/core-js-pure/es/typed-array/subarray.js b/node_modules/core-js-pure/es/typed-array/subarray.js deleted file mode 100644 index dbad4ca2..00000000 --- a/node_modules/core-js-pure/es/typed-array/subarray.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.subarray'); diff --git a/node_modules/core-js-pure/es/typed-array/to-locale-string.js b/node_modules/core-js-pure/es/typed-array/to-locale-string.js deleted file mode 100644 index 12c809e2..00000000 --- a/node_modules/core-js-pure/es/typed-array/to-locale-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.to-locale-string'); diff --git a/node_modules/core-js-pure/es/typed-array/to-string.js b/node_modules/core-js-pure/es/typed-array/to-string.js deleted file mode 100644 index bf941607..00000000 --- a/node_modules/core-js-pure/es/typed-array/to-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.to-string'); diff --git a/node_modules/core-js-pure/es/typed-array/uint16-array.js b/node_modules/core-js-pure/es/typed-array/uint16-array.js deleted file mode 100644 index 9fe6065e..00000000 --- a/node_modules/core-js-pure/es/typed-array/uint16-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.uint16-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Uint16Array; diff --git a/node_modules/core-js-pure/es/typed-array/uint32-array.js b/node_modules/core-js-pure/es/typed-array/uint32-array.js deleted file mode 100644 index 26bdb10c..00000000 --- a/node_modules/core-js-pure/es/typed-array/uint32-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.uint32-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Uint32Array; diff --git a/node_modules/core-js-pure/es/typed-array/uint8-array.js b/node_modules/core-js-pure/es/typed-array/uint8-array.js deleted file mode 100644 index 96a5bf12..00000000 --- a/node_modules/core-js-pure/es/typed-array/uint8-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.uint8-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Uint8Array; diff --git a/node_modules/core-js-pure/es/typed-array/uint8-clamped-array.js b/node_modules/core-js-pure/es/typed-array/uint8-clamped-array.js deleted file mode 100644 index 7e2d3ce7..00000000 --- a/node_modules/core-js-pure/es/typed-array/uint8-clamped-array.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.typed-array.uint8-clamped-array'); -require('./methods'); -var global = require('../../internals/global'); - -module.exports = global.Uint8ClampedArray; diff --git a/node_modules/core-js-pure/es/typed-array/values.js b/node_modules/core-js-pure/es/typed-array/values.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/es/typed-array/values.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/es/weak-map/index.js b/node_modules/core-js-pure/es/weak-map/index.js deleted file mode 100644 index 11c79a7b..00000000 --- a/node_modules/core-js-pure/es/weak-map/index.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.weak-map'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -module.exports = path.WeakMap; diff --git a/node_modules/core-js-pure/es/weak-set/index.js b/node_modules/core-js-pure/es/weak-set/index.js deleted file mode 100644 index ca5f257d..00000000 --- a/node_modules/core-js-pure/es/weak-set/index.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.weak-set'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -module.exports = path.WeakSet; diff --git a/node_modules/core-js-pure/features/README.md b/node_modules/core-js-pure/features/README.md deleted file mode 100644 index 62c88a0d..00000000 --- a/node_modules/core-js-pure/features/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains entry points for all `core-js` features with dependencies. It's the recommended way for usage only required features. diff --git a/node_modules/core-js-pure/features/aggregate-error.js b/node_modules/core-js-pure/features/aggregate-error.js deleted file mode 100644 index 65d8afd3..00000000 --- a/node_modules/core-js-pure/features/aggregate-error.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../modules/web.dom-collections.iterator'); -require('../modules/es.string.iterator'); -require('../modules/esnext.aggregate-error'); -var path = require('../internals/path'); - -module.exports = path.AggregateError; diff --git a/node_modules/core-js-pure/features/array-buffer/constructor.js b/node_modules/core-js-pure/features/array-buffer/constructor.js deleted file mode 100644 index 14f239df..00000000 --- a/node_modules/core-js-pure/features/array-buffer/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer/constructor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array-buffer/index.js b/node_modules/core-js-pure/features/array-buffer/index.js deleted file mode 100644 index cb81bbc6..00000000 --- a/node_modules/core-js-pure/features/array-buffer/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array-buffer/is-view.js b/node_modules/core-js-pure/features/array-buffer/is-view.js deleted file mode 100644 index 02091ec1..00000000 --- a/node_modules/core-js-pure/features/array-buffer/is-view.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer/is-view'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array-buffer/slice.js b/node_modules/core-js-pure/features/array-buffer/slice.js deleted file mode 100644 index 1259ebfc..00000000 --- a/node_modules/core-js-pure/features/array-buffer/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/concat.js b/node_modules/core-js-pure/features/array/concat.js deleted file mode 100644 index 56c0625c..00000000 --- a/node_modules/core-js-pure/features/array/concat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/concat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/copy-within.js b/node_modules/core-js-pure/features/array/copy-within.js deleted file mode 100644 index 3db53613..00000000 --- a/node_modules/core-js-pure/features/array/copy-within.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/copy-within'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/entries.js b/node_modules/core-js-pure/features/array/entries.js deleted file mode 100644 index 735b6071..00000000 --- a/node_modules/core-js-pure/features/array/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/every.js b/node_modules/core-js-pure/features/array/every.js deleted file mode 100644 index 8831dbce..00000000 --- a/node_modules/core-js-pure/features/array/every.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/every'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/fill.js b/node_modules/core-js-pure/features/array/fill.js deleted file mode 100644 index b640ccd4..00000000 --- a/node_modules/core-js-pure/features/array/fill.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/fill'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/filter.js b/node_modules/core-js-pure/features/array/filter.js deleted file mode 100644 index c6fe56a4..00000000 --- a/node_modules/core-js-pure/features/array/filter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/filter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/find-index.js b/node_modules/core-js-pure/features/array/find-index.js deleted file mode 100644 index 312a7df8..00000000 --- a/node_modules/core-js-pure/features/array/find-index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/find-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/find.js b/node_modules/core-js-pure/features/array/find.js deleted file mode 100644 index 2fc46a5b..00000000 --- a/node_modules/core-js-pure/features/array/find.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/find'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/flat-map.js b/node_modules/core-js-pure/features/array/flat-map.js deleted file mode 100644 index 8e3e81a8..00000000 --- a/node_modules/core-js-pure/features/array/flat-map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/flat-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/flat.js b/node_modules/core-js-pure/features/array/flat.js deleted file mode 100644 index f74816e9..00000000 --- a/node_modules/core-js-pure/features/array/flat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/flat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/for-each.js b/node_modules/core-js-pure/features/array/for-each.js deleted file mode 100644 index a99f12c3..00000000 --- a/node_modules/core-js-pure/features/array/for-each.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/from.js b/node_modules/core-js-pure/features/array/from.js deleted file mode 100644 index 9142d6ec..00000000 --- a/node_modules/core-js-pure/features/array/from.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/from'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/includes.js b/node_modules/core-js-pure/features/array/includes.js deleted file mode 100644 index 52f040d8..00000000 --- a/node_modules/core-js-pure/features/array/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/index-of.js b/node_modules/core-js-pure/features/array/index-of.js deleted file mode 100644 index 13b63f1f..00000000 --- a/node_modules/core-js-pure/features/array/index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/index.js b/node_modules/core-js-pure/features/array/index.js deleted file mode 100644 index 213822e9..00000000 --- a/node_modules/core-js-pure/features/array/index.js +++ /dev/null @@ -1,6 +0,0 @@ -var parent = require('../../es/array'); -require('../../modules/esnext.array.is-template-object'); -require('../../modules/esnext.array.last-item'); -require('../../modules/esnext.array.last-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/is-array.js b/node_modules/core-js-pure/features/array/is-array.js deleted file mode 100644 index 89080ec8..00000000 --- a/node_modules/core-js-pure/features/array/is-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/is-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/is-template-object.js b/node_modules/core-js-pure/features/array/is-template-object.js deleted file mode 100644 index f5eaf818..00000000 --- a/node_modules/core-js-pure/features/array/is-template-object.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.array.is-template-object'); -var path = require('../../internals/path'); - -module.exports = path.Array.isTemplateObject; diff --git a/node_modules/core-js-pure/features/array/iterator.js b/node_modules/core-js-pure/features/array/iterator.js deleted file mode 100644 index bfa833f7..00000000 --- a/node_modules/core-js-pure/features/array/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/join.js b/node_modules/core-js-pure/features/array/join.js deleted file mode 100644 index 74fbfc64..00000000 --- a/node_modules/core-js-pure/features/array/join.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/join'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/keys.js b/node_modules/core-js-pure/features/array/keys.js deleted file mode 100644 index 40b2e759..00000000 --- a/node_modules/core-js-pure/features/array/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/last-index-of.js b/node_modules/core-js-pure/features/array/last-index-of.js deleted file mode 100644 index bdcd762b..00000000 --- a/node_modules/core-js-pure/features/array/last-index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/last-index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/last-index.js b/node_modules/core-js-pure/features/array/last-index.js deleted file mode 100644 index 230cea05..00000000 --- a/node_modules/core-js-pure/features/array/last-index.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/esnext.array.last-index'); diff --git a/node_modules/core-js-pure/features/array/last-item.js b/node_modules/core-js-pure/features/array/last-item.js deleted file mode 100644 index 5a4b25b6..00000000 --- a/node_modules/core-js-pure/features/array/last-item.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/esnext.array.last-item'); diff --git a/node_modules/core-js-pure/features/array/map.js b/node_modules/core-js-pure/features/array/map.js deleted file mode 100644 index 3768704f..00000000 --- a/node_modules/core-js-pure/features/array/map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/of.js b/node_modules/core-js-pure/features/array/of.js deleted file mode 100644 index d5b74f13..00000000 --- a/node_modules/core-js-pure/features/array/of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/reduce-right.js b/node_modules/core-js-pure/features/array/reduce-right.js deleted file mode 100644 index f93b6ded..00000000 --- a/node_modules/core-js-pure/features/array/reduce-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/reduce-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/reduce.js b/node_modules/core-js-pure/features/array/reduce.js deleted file mode 100644 index a3ae7b1c..00000000 --- a/node_modules/core-js-pure/features/array/reduce.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/reduce'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/reverse.js b/node_modules/core-js-pure/features/array/reverse.js deleted file mode 100644 index fc9faf10..00000000 --- a/node_modules/core-js-pure/features/array/reverse.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/reverse'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/slice.js b/node_modules/core-js-pure/features/array/slice.js deleted file mode 100644 index 2c098bd7..00000000 --- a/node_modules/core-js-pure/features/array/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/some.js b/node_modules/core-js-pure/features/array/some.js deleted file mode 100644 index a198c0e0..00000000 --- a/node_modules/core-js-pure/features/array/some.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/some'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/sort.js b/node_modules/core-js-pure/features/array/sort.js deleted file mode 100644 index 5741a92b..00000000 --- a/node_modules/core-js-pure/features/array/sort.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/sort'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/splice.js b/node_modules/core-js-pure/features/array/splice.js deleted file mode 100644 index e5aeb464..00000000 --- a/node_modules/core-js-pure/features/array/splice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/splice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/values.js b/node_modules/core-js-pure/features/array/values.js deleted file mode 100644 index 146bce32..00000000 --- a/node_modules/core-js-pure/features/array/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/concat.js b/node_modules/core-js-pure/features/array/virtual/concat.js deleted file mode 100644 index 9c9481bc..00000000 --- a/node_modules/core-js-pure/features/array/virtual/concat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/concat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/copy-within.js b/node_modules/core-js-pure/features/array/virtual/copy-within.js deleted file mode 100644 index 7d43d5cd..00000000 --- a/node_modules/core-js-pure/features/array/virtual/copy-within.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/copy-within'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/entries.js b/node_modules/core-js-pure/features/array/virtual/entries.js deleted file mode 100644 index 008e164d..00000000 --- a/node_modules/core-js-pure/features/array/virtual/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/every.js b/node_modules/core-js-pure/features/array/virtual/every.js deleted file mode 100644 index 3c661eb2..00000000 --- a/node_modules/core-js-pure/features/array/virtual/every.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/every'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/fill.js b/node_modules/core-js-pure/features/array/virtual/fill.js deleted file mode 100644 index b0a3b0e1..00000000 --- a/node_modules/core-js-pure/features/array/virtual/fill.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/fill'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/filter.js b/node_modules/core-js-pure/features/array/virtual/filter.js deleted file mode 100644 index b78f806c..00000000 --- a/node_modules/core-js-pure/features/array/virtual/filter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/filter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/find-index.js b/node_modules/core-js-pure/features/array/virtual/find-index.js deleted file mode 100644 index 0be7653b..00000000 --- a/node_modules/core-js-pure/features/array/virtual/find-index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/find-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/find.js b/node_modules/core-js-pure/features/array/virtual/find.js deleted file mode 100644 index 0f28d7c0..00000000 --- a/node_modules/core-js-pure/features/array/virtual/find.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/find'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/flat-map.js b/node_modules/core-js-pure/features/array/virtual/flat-map.js deleted file mode 100644 index 5adc39bf..00000000 --- a/node_modules/core-js-pure/features/array/virtual/flat-map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/flat-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/flat.js b/node_modules/core-js-pure/features/array/virtual/flat.js deleted file mode 100644 index cfafee66..00000000 --- a/node_modules/core-js-pure/features/array/virtual/flat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/flat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/for-each.js b/node_modules/core-js-pure/features/array/virtual/for-each.js deleted file mode 100644 index ca081fbc..00000000 --- a/node_modules/core-js-pure/features/array/virtual/for-each.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/includes.js b/node_modules/core-js-pure/features/array/virtual/includes.js deleted file mode 100644 index fc9bb008..00000000 --- a/node_modules/core-js-pure/features/array/virtual/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/index-of.js b/node_modules/core-js-pure/features/array/virtual/index-of.js deleted file mode 100644 index aedd505a..00000000 --- a/node_modules/core-js-pure/features/array/virtual/index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/index.js b/node_modules/core-js-pure/features/array/virtual/index.js deleted file mode 100644 index 98d47187..00000000 --- a/node_modules/core-js-pure/features/array/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/iterator.js b/node_modules/core-js-pure/features/array/virtual/iterator.js deleted file mode 100644 index 81ca2a20..00000000 --- a/node_modules/core-js-pure/features/array/virtual/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/join.js b/node_modules/core-js-pure/features/array/virtual/join.js deleted file mode 100644 index fe784ef9..00000000 --- a/node_modules/core-js-pure/features/array/virtual/join.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/join'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/keys.js b/node_modules/core-js-pure/features/array/virtual/keys.js deleted file mode 100644 index 6ed98ec4..00000000 --- a/node_modules/core-js-pure/features/array/virtual/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/last-index-of.js b/node_modules/core-js-pure/features/array/virtual/last-index-of.js deleted file mode 100644 index 697d588f..00000000 --- a/node_modules/core-js-pure/features/array/virtual/last-index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/last-index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/map.js b/node_modules/core-js-pure/features/array/virtual/map.js deleted file mode 100644 index 94759764..00000000 --- a/node_modules/core-js-pure/features/array/virtual/map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/reduce-right.js b/node_modules/core-js-pure/features/array/virtual/reduce-right.js deleted file mode 100644 index cf39fcad..00000000 --- a/node_modules/core-js-pure/features/array/virtual/reduce-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/reduce-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/reduce.js b/node_modules/core-js-pure/features/array/virtual/reduce.js deleted file mode 100644 index 5a08269a..00000000 --- a/node_modules/core-js-pure/features/array/virtual/reduce.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/reduce'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/reverse.js b/node_modules/core-js-pure/features/array/virtual/reverse.js deleted file mode 100644 index 099d13ea..00000000 --- a/node_modules/core-js-pure/features/array/virtual/reverse.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/reverse'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/slice.js b/node_modules/core-js-pure/features/array/virtual/slice.js deleted file mode 100644 index f308e007..00000000 --- a/node_modules/core-js-pure/features/array/virtual/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/some.js b/node_modules/core-js-pure/features/array/virtual/some.js deleted file mode 100644 index d41a8e7e..00000000 --- a/node_modules/core-js-pure/features/array/virtual/some.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/some'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/sort.js b/node_modules/core-js-pure/features/array/virtual/sort.js deleted file mode 100644 index 5da0daa8..00000000 --- a/node_modules/core-js-pure/features/array/virtual/sort.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/sort'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/splice.js b/node_modules/core-js-pure/features/array/virtual/splice.js deleted file mode 100644 index 4cbb4941..00000000 --- a/node_modules/core-js-pure/features/array/virtual/splice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/splice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/array/virtual/values.js b/node_modules/core-js-pure/features/array/virtual/values.js deleted file mode 100644 index ebb63759..00000000 --- a/node_modules/core-js-pure/features/array/virtual/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/async-iterator/as-indexed-pairs.js b/node_modules/core-js-pure/features/async-iterator/as-indexed-pairs.js deleted file mode 100644 index 8fd352b6..00000000 --- a/node_modules/core-js-pure/features/async-iterator/as-indexed-pairs.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.as-indexed-pairs'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'asIndexedPairs'); diff --git a/node_modules/core-js-pure/features/async-iterator/drop.js b/node_modules/core-js-pure/features/async-iterator/drop.js deleted file mode 100644 index ca33f5b7..00000000 --- a/node_modules/core-js-pure/features/async-iterator/drop.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.drop'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'drop'); diff --git a/node_modules/core-js-pure/features/async-iterator/every.js b/node_modules/core-js-pure/features/async-iterator/every.js deleted file mode 100644 index b090f1d2..00000000 --- a/node_modules/core-js-pure/features/async-iterator/every.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.every'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'every'); diff --git a/node_modules/core-js-pure/features/async-iterator/filter.js b/node_modules/core-js-pure/features/async-iterator/filter.js deleted file mode 100644 index 4a37bd0e..00000000 --- a/node_modules/core-js-pure/features/async-iterator/filter.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.filter'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'filter'); diff --git a/node_modules/core-js-pure/features/async-iterator/find.js b/node_modules/core-js-pure/features/async-iterator/find.js deleted file mode 100644 index 6824ee9f..00000000 --- a/node_modules/core-js-pure/features/async-iterator/find.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.find'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'find'); diff --git a/node_modules/core-js-pure/features/async-iterator/flat-map.js b/node_modules/core-js-pure/features/async-iterator/flat-map.js deleted file mode 100644 index ef26e56e..00000000 --- a/node_modules/core-js-pure/features/async-iterator/flat-map.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.flat-map'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'flatMap'); diff --git a/node_modules/core-js-pure/features/async-iterator/for-each.js b/node_modules/core-js-pure/features/async-iterator/for-each.js deleted file mode 100644 index ff0a34a3..00000000 --- a/node_modules/core-js-pure/features/async-iterator/for-each.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.for-each'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'forEach'); diff --git a/node_modules/core-js-pure/features/async-iterator/from.js b/node_modules/core-js-pure/features/async-iterator/from.js deleted file mode 100644 index 97275d91..00000000 --- a/node_modules/core-js-pure/features/async-iterator/from.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.from'); -require('../../modules/web.dom-collections.iterator'); - -var path = require('../../internals/path'); - -module.exports = path.AsyncIterator.from; diff --git a/node_modules/core-js-pure/features/async-iterator/index.js b/node_modules/core-js-pure/features/async-iterator/index.js deleted file mode 100644 index 2f188c63..00000000 --- a/node_modules/core-js-pure/features/async-iterator/index.js +++ /dev/null @@ -1,22 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.as-indexed-pairs'); -require('../../modules/esnext.async-iterator.drop'); -require('../../modules/esnext.async-iterator.every'); -require('../../modules/esnext.async-iterator.filter'); -require('../../modules/esnext.async-iterator.find'); -require('../../modules/esnext.async-iterator.flat-map'); -require('../../modules/esnext.async-iterator.for-each'); -require('../../modules/esnext.async-iterator.from'); -require('../../modules/esnext.async-iterator.map'); -require('../../modules/esnext.async-iterator.reduce'); -require('../../modules/esnext.async-iterator.some'); -require('../../modules/esnext.async-iterator.take'); -require('../../modules/esnext.async-iterator.to-array'); -require('../../modules/web.dom-collections.iterator'); - -var path = require('../../internals/path'); - -module.exports = path.AsyncIterator; diff --git a/node_modules/core-js-pure/features/async-iterator/map.js b/node_modules/core-js-pure/features/async-iterator/map.js deleted file mode 100644 index a07254f6..00000000 --- a/node_modules/core-js-pure/features/async-iterator/map.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.map'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'map'); diff --git a/node_modules/core-js-pure/features/async-iterator/reduce.js b/node_modules/core-js-pure/features/async-iterator/reduce.js deleted file mode 100644 index b05022d1..00000000 --- a/node_modules/core-js-pure/features/async-iterator/reduce.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.reduce'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'reduce'); diff --git a/node_modules/core-js-pure/features/async-iterator/some.js b/node_modules/core-js-pure/features/async-iterator/some.js deleted file mode 100644 index 1d08566f..00000000 --- a/node_modules/core-js-pure/features/async-iterator/some.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.some'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'some'); diff --git a/node_modules/core-js-pure/features/async-iterator/take.js b/node_modules/core-js-pure/features/async-iterator/take.js deleted file mode 100644 index c67587af..00000000 --- a/node_modules/core-js-pure/features/async-iterator/take.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.take'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'take'); diff --git a/node_modules/core-js-pure/features/async-iterator/to-array.js b/node_modules/core-js-pure/features/async-iterator/to-array.js deleted file mode 100644 index 30f80b8d..00000000 --- a/node_modules/core-js-pure/features/async-iterator/to-array.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.promise'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.async-iterator.constructor'); -require('../../modules/esnext.async-iterator.to-array'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('AsyncIterator', 'toArray'); diff --git a/node_modules/core-js-pure/features/clear-immediate.js b/node_modules/core-js-pure/features/clear-immediate.js deleted file mode 100644 index 15aa13bf..00000000 --- a/node_modules/core-js-pure/features/clear-immediate.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../stable/clear-immediate'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/composite-key.js b/node_modules/core-js-pure/features/composite-key.js deleted file mode 100644 index 9fd507b1..00000000 --- a/node_modules/core-js-pure/features/composite-key.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/esnext.composite-key'); -var path = require('../internals/path'); - -module.exports = path.compositeKey; diff --git a/node_modules/core-js-pure/features/composite-symbol.js b/node_modules/core-js-pure/features/composite-symbol.js deleted file mode 100644 index fce96002..00000000 --- a/node_modules/core-js-pure/features/composite-symbol.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../modules/es.symbol'); -require('../modules/esnext.composite-symbol'); -var path = require('../internals/path'); - -module.exports = path.compositeSymbol; diff --git a/node_modules/core-js-pure/features/data-view/index.js b/node_modules/core-js-pure/features/data-view/index.js deleted file mode 100644 index 03872951..00000000 --- a/node_modules/core-js-pure/features/data-view/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/data-view'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/date/index.js b/node_modules/core-js-pure/features/date/index.js deleted file mode 100644 index e9bde083..00000000 --- a/node_modules/core-js-pure/features/date/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/date/now.js b/node_modules/core-js-pure/features/date/now.js deleted file mode 100644 index a4d84857..00000000 --- a/node_modules/core-js-pure/features/date/now.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/now'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/date/to-iso-string.js b/node_modules/core-js-pure/features/date/to-iso-string.js deleted file mode 100644 index a6e6a7fa..00000000 --- a/node_modules/core-js-pure/features/date/to-iso-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-iso-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/date/to-json.js b/node_modules/core-js-pure/features/date/to-json.js deleted file mode 100644 index 23e8b0c2..00000000 --- a/node_modules/core-js-pure/features/date/to-json.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-json'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/date/to-primitive.js b/node_modules/core-js-pure/features/date/to-primitive.js deleted file mode 100644 index 193421dc..00000000 --- a/node_modules/core-js-pure/features/date/to-primitive.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-primitive'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/date/to-string.js b/node_modules/core-js-pure/features/date/to-string.js deleted file mode 100644 index f5c95920..00000000 --- a/node_modules/core-js-pure/features/date/to-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/dom-collections/for-each.js b/node_modules/core-js-pure/features/dom-collections/for-each.js deleted file mode 100644 index dd2ac64b..00000000 --- a/node_modules/core-js-pure/features/dom-collections/for-each.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/dom-collections/for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/dom-collections/index.js b/node_modules/core-js-pure/features/dom-collections/index.js deleted file mode 100644 index 1ae0660b..00000000 --- a/node_modules/core-js-pure/features/dom-collections/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/dom-collections'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/dom-collections/iterator.js b/node_modules/core-js-pure/features/dom-collections/iterator.js deleted file mode 100644 index d63ca430..00000000 --- a/node_modules/core-js-pure/features/dom-collections/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/dom-collections/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/function/bind.js b/node_modules/core-js-pure/features/function/bind.js deleted file mode 100644 index b916d678..00000000 --- a/node_modules/core-js-pure/features/function/bind.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function/bind'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/function/has-instance.js b/node_modules/core-js-pure/features/function/has-instance.js deleted file mode 100644 index 9538a80f..00000000 --- a/node_modules/core-js-pure/features/function/has-instance.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function/has-instance'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/function/index.js b/node_modules/core-js-pure/features/function/index.js deleted file mode 100644 index f906e2e7..00000000 --- a/node_modules/core-js-pure/features/function/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/function/name.js b/node_modules/core-js-pure/features/function/name.js deleted file mode 100644 index a7729f51..00000000 --- a/node_modules/core-js-pure/features/function/name.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function/name'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/function/virtual/bind.js b/node_modules/core-js-pure/features/function/virtual/bind.js deleted file mode 100644 index e7b9a3b9..00000000 --- a/node_modules/core-js-pure/features/function/virtual/bind.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/function/virtual/bind'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/function/virtual/index.js b/node_modules/core-js-pure/features/function/virtual/index.js deleted file mode 100644 index 2282ff4b..00000000 --- a/node_modules/core-js-pure/features/function/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/function/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/get-iterator-method.js b/node_modules/core-js-pure/features/get-iterator-method.js deleted file mode 100644 index 6dd77cb5..00000000 --- a/node_modules/core-js-pure/features/get-iterator-method.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../modules/web.dom-collections.iterator'); -require('../modules/es.string.iterator'); -var getIteratorMethod = require('../internals/get-iterator-method'); - -module.exports = getIteratorMethod; diff --git a/node_modules/core-js-pure/features/get-iterator.js b/node_modules/core-js-pure/features/get-iterator.js deleted file mode 100644 index 3e52b2c1..00000000 --- a/node_modules/core-js-pure/features/get-iterator.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../modules/web.dom-collections.iterator'); -require('../modules/es.string.iterator'); -var getIterator = require('../internals/get-iterator'); - -module.exports = getIterator; diff --git a/node_modules/core-js-pure/features/global-this.js b/node_modules/core-js-pure/features/global-this.js deleted file mode 100644 index 81d74552..00000000 --- a/node_modules/core-js-pure/features/global-this.js +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: remove from `core-js@4` -require('../modules/esnext.global-this'); - -var parent = require('../es/global-this'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/index.js b/node_modules/core-js-pure/features/index.js deleted file mode 100644 index 9a8b0cb0..00000000 --- a/node_modules/core-js-pure/features/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('..'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/at.js b/node_modules/core-js-pure/features/instance/at.js deleted file mode 100644 index f9b4f798..00000000 --- a/node_modules/core-js-pure/features/instance/at.js +++ /dev/null @@ -1,9 +0,0 @@ -var at = require('../string/virtual/at'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.at; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.at) ? at : own; -}; diff --git a/node_modules/core-js-pure/features/instance/bind.js b/node_modules/core-js-pure/features/instance/bind.js deleted file mode 100644 index acb6bbec..00000000 --- a/node_modules/core-js-pure/features/instance/bind.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/bind'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/code-point-at.js b/node_modules/core-js-pure/features/instance/code-point-at.js deleted file mode 100644 index 1d4435e9..00000000 --- a/node_modules/core-js-pure/features/instance/code-point-at.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/code-point-at'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/code-points.js b/node_modules/core-js-pure/features/instance/code-points.js deleted file mode 100644 index 64372992..00000000 --- a/node_modules/core-js-pure/features/instance/code-points.js +++ /dev/null @@ -1,9 +0,0 @@ -var codePoints = require('../string/virtual/code-points'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.codePoints; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.codePoints) ? codePoints : own; -}; diff --git a/node_modules/core-js-pure/features/instance/concat.js b/node_modules/core-js-pure/features/instance/concat.js deleted file mode 100644 index 874d87de..00000000 --- a/node_modules/core-js-pure/features/instance/concat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/concat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/copy-within.js b/node_modules/core-js-pure/features/instance/copy-within.js deleted file mode 100644 index 9d472b0f..00000000 --- a/node_modules/core-js-pure/features/instance/copy-within.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/copy-within'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/ends-with.js b/node_modules/core-js-pure/features/instance/ends-with.js deleted file mode 100644 index aaf2c16e..00000000 --- a/node_modules/core-js-pure/features/instance/ends-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/ends-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/entries.js b/node_modules/core-js-pure/features/instance/entries.js deleted file mode 100644 index ef42a0e3..00000000 --- a/node_modules/core-js-pure/features/instance/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/instance/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/every.js b/node_modules/core-js-pure/features/instance/every.js deleted file mode 100644 index 3dc42963..00000000 --- a/node_modules/core-js-pure/features/instance/every.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/every'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/fill.js b/node_modules/core-js-pure/features/instance/fill.js deleted file mode 100644 index 4e38c42e..00000000 --- a/node_modules/core-js-pure/features/instance/fill.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/fill'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/filter.js b/node_modules/core-js-pure/features/instance/filter.js deleted file mode 100644 index 5219c648..00000000 --- a/node_modules/core-js-pure/features/instance/filter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/filter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/find-index.js b/node_modules/core-js-pure/features/instance/find-index.js deleted file mode 100644 index b2073640..00000000 --- a/node_modules/core-js-pure/features/instance/find-index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/find-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/find.js b/node_modules/core-js-pure/features/instance/find.js deleted file mode 100644 index 024fc815..00000000 --- a/node_modules/core-js-pure/features/instance/find.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/find'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/flags.js b/node_modules/core-js-pure/features/instance/flags.js deleted file mode 100644 index 064c9ec3..00000000 --- a/node_modules/core-js-pure/features/instance/flags.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/flags'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/flat-map.js b/node_modules/core-js-pure/features/instance/flat-map.js deleted file mode 100644 index bea3d82e..00000000 --- a/node_modules/core-js-pure/features/instance/flat-map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/flat-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/flat.js b/node_modules/core-js-pure/features/instance/flat.js deleted file mode 100644 index d61b6ab2..00000000 --- a/node_modules/core-js-pure/features/instance/flat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/flat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/for-each.js b/node_modules/core-js-pure/features/instance/for-each.js deleted file mode 100644 index 59d1d80d..00000000 --- a/node_modules/core-js-pure/features/instance/for-each.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/instance/for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/includes.js b/node_modules/core-js-pure/features/instance/includes.js deleted file mode 100644 index 1bccfac3..00000000 --- a/node_modules/core-js-pure/features/instance/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/index-of.js b/node_modules/core-js-pure/features/instance/index-of.js deleted file mode 100644 index 8ddbaba1..00000000 --- a/node_modules/core-js-pure/features/instance/index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/keys.js b/node_modules/core-js-pure/features/instance/keys.js deleted file mode 100644 index 63208469..00000000 --- a/node_modules/core-js-pure/features/instance/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/instance/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/last-index-of.js b/node_modules/core-js-pure/features/instance/last-index-of.js deleted file mode 100644 index c8601881..00000000 --- a/node_modules/core-js-pure/features/instance/last-index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/last-index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/map.js b/node_modules/core-js-pure/features/instance/map.js deleted file mode 100644 index 1f18a092..00000000 --- a/node_modules/core-js-pure/features/instance/map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/match-all.js b/node_modules/core-js-pure/features/instance/match-all.js deleted file mode 100644 index f0ed1738..00000000 --- a/node_modules/core-js-pure/features/instance/match-all.js +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: remove from `core-js@4` -require('../../modules/esnext.string.match-all'); - -var parent = require('../../es/instance/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/pad-end.js b/node_modules/core-js-pure/features/instance/pad-end.js deleted file mode 100644 index afe92b03..00000000 --- a/node_modules/core-js-pure/features/instance/pad-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/pad-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/pad-start.js b/node_modules/core-js-pure/features/instance/pad-start.js deleted file mode 100644 index 6a7db7d8..00000000 --- a/node_modules/core-js-pure/features/instance/pad-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/pad-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/reduce-right.js b/node_modules/core-js-pure/features/instance/reduce-right.js deleted file mode 100644 index 6a1bb34a..00000000 --- a/node_modules/core-js-pure/features/instance/reduce-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/reduce-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/reduce.js b/node_modules/core-js-pure/features/instance/reduce.js deleted file mode 100644 index 908e12ea..00000000 --- a/node_modules/core-js-pure/features/instance/reduce.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/reduce'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/repeat.js b/node_modules/core-js-pure/features/instance/repeat.js deleted file mode 100644 index 76f2f4c3..00000000 --- a/node_modules/core-js-pure/features/instance/repeat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/repeat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/replace-all.js b/node_modules/core-js-pure/features/instance/replace-all.js deleted file mode 100644 index d920a601..00000000 --- a/node_modules/core-js-pure/features/instance/replace-all.js +++ /dev/null @@ -1,9 +0,0 @@ -var replaceAll = require('../string/virtual/replace-all'); - -var StringPrototype = String.prototype; - -module.exports = function (it) { - var own = it.replaceAll; - return typeof it === 'string' || it === StringPrototype - || (it instanceof String && own === StringPrototype.replaceAll) ? replaceAll : own; -}; diff --git a/node_modules/core-js-pure/features/instance/reverse.js b/node_modules/core-js-pure/features/instance/reverse.js deleted file mode 100644 index ca634dcc..00000000 --- a/node_modules/core-js-pure/features/instance/reverse.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/reverse'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/slice.js b/node_modules/core-js-pure/features/instance/slice.js deleted file mode 100644 index 27226051..00000000 --- a/node_modules/core-js-pure/features/instance/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/some.js b/node_modules/core-js-pure/features/instance/some.js deleted file mode 100644 index 3cd6a8b6..00000000 --- a/node_modules/core-js-pure/features/instance/some.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/some'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/sort.js b/node_modules/core-js-pure/features/instance/sort.js deleted file mode 100644 index d06c4bb0..00000000 --- a/node_modules/core-js-pure/features/instance/sort.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/sort'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/splice.js b/node_modules/core-js-pure/features/instance/splice.js deleted file mode 100644 index 46da42c8..00000000 --- a/node_modules/core-js-pure/features/instance/splice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/splice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/starts-with.js b/node_modules/core-js-pure/features/instance/starts-with.js deleted file mode 100644 index f2e3a087..00000000 --- a/node_modules/core-js-pure/features/instance/starts-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/starts-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/trim-end.js b/node_modules/core-js-pure/features/instance/trim-end.js deleted file mode 100644 index 787e52ed..00000000 --- a/node_modules/core-js-pure/features/instance/trim-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/trim-left.js b/node_modules/core-js-pure/features/instance/trim-left.js deleted file mode 100644 index 7127d67a..00000000 --- a/node_modules/core-js-pure/features/instance/trim-left.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-left'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/trim-right.js b/node_modules/core-js-pure/features/instance/trim-right.js deleted file mode 100644 index 760567ed..00000000 --- a/node_modules/core-js-pure/features/instance/trim-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/trim-start.js b/node_modules/core-js-pure/features/instance/trim-start.js deleted file mode 100644 index 3c59472b..00000000 --- a/node_modules/core-js-pure/features/instance/trim-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/trim.js b/node_modules/core-js-pure/features/instance/trim.js deleted file mode 100644 index 4d994998..00000000 --- a/node_modules/core-js-pure/features/instance/trim.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/instance/values.js b/node_modules/core-js-pure/features/instance/values.js deleted file mode 100644 index 71d17335..00000000 --- a/node_modules/core-js-pure/features/instance/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/instance/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/is-iterable.js b/node_modules/core-js-pure/features/is-iterable.js deleted file mode 100644 index 308da783..00000000 --- a/node_modules/core-js-pure/features/is-iterable.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../modules/web.dom-collections.iterator'); -require('../modules/es.string.iterator'); -var isIterable = require('../internals/is-iterable'); - -module.exports = isIterable; diff --git a/node_modules/core-js-pure/features/iterator/as-indexed-pairs.js b/node_modules/core-js-pure/features/iterator/as-indexed-pairs.js deleted file mode 100644 index fdf2d31d..00000000 --- a/node_modules/core-js-pure/features/iterator/as-indexed-pairs.js +++ /dev/null @@ -1,10 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.as-indexed-pairs'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'asIndexedPairs'); - diff --git a/node_modules/core-js-pure/features/iterator/drop.js b/node_modules/core-js-pure/features/iterator/drop.js deleted file mode 100644 index 52b42456..00000000 --- a/node_modules/core-js-pure/features/iterator/drop.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.drop'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'drop'); diff --git a/node_modules/core-js-pure/features/iterator/every.js b/node_modules/core-js-pure/features/iterator/every.js deleted file mode 100644 index cc3fbedc..00000000 --- a/node_modules/core-js-pure/features/iterator/every.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.every'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'every'); diff --git a/node_modules/core-js-pure/features/iterator/filter.js b/node_modules/core-js-pure/features/iterator/filter.js deleted file mode 100644 index f744150c..00000000 --- a/node_modules/core-js-pure/features/iterator/filter.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.filter'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'filter'); diff --git a/node_modules/core-js-pure/features/iterator/find.js b/node_modules/core-js-pure/features/iterator/find.js deleted file mode 100644 index dfed16c5..00000000 --- a/node_modules/core-js-pure/features/iterator/find.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.find'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'find'); diff --git a/node_modules/core-js-pure/features/iterator/flat-map.js b/node_modules/core-js-pure/features/iterator/flat-map.js deleted file mode 100644 index 81e30984..00000000 --- a/node_modules/core-js-pure/features/iterator/flat-map.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.flat-map'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'flatMap'); diff --git a/node_modules/core-js-pure/features/iterator/for-each.js b/node_modules/core-js-pure/features/iterator/for-each.js deleted file mode 100644 index e7110344..00000000 --- a/node_modules/core-js-pure/features/iterator/for-each.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.for-each'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'forEach'); diff --git a/node_modules/core-js-pure/features/iterator/from.js b/node_modules/core-js-pure/features/iterator/from.js deleted file mode 100644 index e79d1a10..00000000 --- a/node_modules/core-js-pure/features/iterator/from.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.from'); -require('../../modules/web.dom-collections.iterator'); - -var path = require('../../internals/path'); - -module.exports = path.Iterator.from; diff --git a/node_modules/core-js-pure/features/iterator/index.js b/node_modules/core-js-pure/features/iterator/index.js deleted file mode 100644 index 6e86af76..00000000 --- a/node_modules/core-js-pure/features/iterator/index.js +++ /dev/null @@ -1,21 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.as-indexed-pairs'); -require('../../modules/esnext.iterator.drop'); -require('../../modules/esnext.iterator.every'); -require('../../modules/esnext.iterator.filter'); -require('../../modules/esnext.iterator.find'); -require('../../modules/esnext.iterator.flat-map'); -require('../../modules/esnext.iterator.for-each'); -require('../../modules/esnext.iterator.from'); -require('../../modules/esnext.iterator.map'); -require('../../modules/esnext.iterator.reduce'); -require('../../modules/esnext.iterator.some'); -require('../../modules/esnext.iterator.take'); -require('../../modules/esnext.iterator.to-array'); -require('../../modules/web.dom-collections.iterator'); - -var path = require('../../internals/path'); - -module.exports = path.Iterator; diff --git a/node_modules/core-js-pure/features/iterator/map.js b/node_modules/core-js-pure/features/iterator/map.js deleted file mode 100644 index 060d0f5d..00000000 --- a/node_modules/core-js-pure/features/iterator/map.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.map'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'map'); diff --git a/node_modules/core-js-pure/features/iterator/reduce.js b/node_modules/core-js-pure/features/iterator/reduce.js deleted file mode 100644 index 7049b475..00000000 --- a/node_modules/core-js-pure/features/iterator/reduce.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.reduce'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'reduce'); diff --git a/node_modules/core-js-pure/features/iterator/some.js b/node_modules/core-js-pure/features/iterator/some.js deleted file mode 100644 index 0a0a20c7..00000000 --- a/node_modules/core-js-pure/features/iterator/some.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.some'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'some'); diff --git a/node_modules/core-js-pure/features/iterator/take.js b/node_modules/core-js-pure/features/iterator/take.js deleted file mode 100644 index 962c4ad9..00000000 --- a/node_modules/core-js-pure/features/iterator/take.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.take'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'take'); diff --git a/node_modules/core-js-pure/features/iterator/to-array.js b/node_modules/core-js-pure/features/iterator/to-array.js deleted file mode 100644 index 42f490ba..00000000 --- a/node_modules/core-js-pure/features/iterator/to-array.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.iterator.constructor'); -require('../../modules/esnext.iterator.to-array'); -require('../../modules/web.dom-collections.iterator'); - -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Iterator', 'toArray'); diff --git a/node_modules/core-js-pure/features/json/index.js b/node_modules/core-js-pure/features/json/index.js deleted file mode 100644 index c53da9f8..00000000 --- a/node_modules/core-js-pure/features/json/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/json'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/json/stringify.js b/node_modules/core-js-pure/features/json/stringify.js deleted file mode 100644 index d6d8c52c..00000000 --- a/node_modules/core-js-pure/features/json/stringify.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/json/stringify'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/json/to-string-tag.js b/node_modules/core-js-pure/features/json/to-string-tag.js deleted file mode 100644 index 53559566..00000000 --- a/node_modules/core-js-pure/features/json/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/json/to-string-tag'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/map/delete-all.js b/node_modules/core-js-pure/features/map/delete-all.js deleted file mode 100644 index ecb21135..00000000 --- a/node_modules/core-js-pure/features/map/delete-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.delete-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'deleteAll'); diff --git a/node_modules/core-js-pure/features/map/every.js b/node_modules/core-js-pure/features/map/every.js deleted file mode 100644 index a86e3930..00000000 --- a/node_modules/core-js-pure/features/map/every.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.every'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'every'); diff --git a/node_modules/core-js-pure/features/map/filter.js b/node_modules/core-js-pure/features/map/filter.js deleted file mode 100644 index 23265265..00000000 --- a/node_modules/core-js-pure/features/map/filter.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.filter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'filter'); diff --git a/node_modules/core-js-pure/features/map/find-key.js b/node_modules/core-js-pure/features/map/find-key.js deleted file mode 100644 index 662c4236..00000000 --- a/node_modules/core-js-pure/features/map/find-key.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.find-key'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'findKey'); diff --git a/node_modules/core-js-pure/features/map/find.js b/node_modules/core-js-pure/features/map/find.js deleted file mode 100644 index 993b2268..00000000 --- a/node_modules/core-js-pure/features/map/find.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.find'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'find'); diff --git a/node_modules/core-js-pure/features/map/from.js b/node_modules/core-js-pure/features/map/from.js deleted file mode 100644 index b7d75f90..00000000 --- a/node_modules/core-js-pure/features/map/from.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.map'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.map.from'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var Map = path.Map; -var mapFrom = Map.from; - -module.exports = function from(source, mapFn, thisArg) { - return mapFrom.call(typeof this === 'function' ? this : Map, source, mapFn, thisArg); -}; diff --git a/node_modules/core-js-pure/features/map/group-by.js b/node_modules/core-js-pure/features/map/group-by.js deleted file mode 100644 index c4dfdca5..00000000 --- a/node_modules/core-js-pure/features/map/group-by.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -require('../../modules/es.map'); -require('../../modules/esnext.map.group-by'); -var path = require('../../internals/path'); - -var Map = path.Map; -var mapGroupBy = Map.groupBy; - -module.exports = function groupBy(source, iterable, keyDerivative) { - return mapGroupBy.call(typeof this === 'function' ? this : Map, source, iterable, keyDerivative); -}; diff --git a/node_modules/core-js-pure/features/map/includes.js b/node_modules/core-js-pure/features/map/includes.js deleted file mode 100644 index 3ba5acd1..00000000 --- a/node_modules/core-js-pure/features/map/includes.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.includes'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'includes'); diff --git a/node_modules/core-js-pure/features/map/index.js b/node_modules/core-js-pure/features/map/index.js deleted file mode 100644 index 73ae0cf3..00000000 --- a/node_modules/core-js-pure/features/map/index.js +++ /dev/null @@ -1,23 +0,0 @@ -var parent = require('../../es/map'); -require('../../modules/esnext.map.from'); -require('../../modules/esnext.map.of'); -require('../../modules/esnext.map.delete-all'); -require('../../modules/esnext.map.every'); -require('../../modules/esnext.map.filter'); -require('../../modules/esnext.map.find'); -require('../../modules/esnext.map.find-key'); -require('../../modules/esnext.map.group-by'); -require('../../modules/esnext.map.includes'); -require('../../modules/esnext.map.key-by'); -require('../../modules/esnext.map.key-of'); -require('../../modules/esnext.map.map-keys'); -require('../../modules/esnext.map.map-values'); -require('../../modules/esnext.map.merge'); -require('../../modules/esnext.map.reduce'); -require('../../modules/esnext.map.some'); -require('../../modules/esnext.map.update'); -require('../../modules/esnext.map.upsert'); -// TODO: remove from `core-js@4` -require('../../modules/esnext.map.update-or-insert'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/map/key-by.js b/node_modules/core-js-pure/features/map/key-by.js deleted file mode 100644 index b156f020..00000000 --- a/node_modules/core-js-pure/features/map/key-by.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -require('../../modules/es.map'); -require('../../modules/esnext.map.key-by'); -var path = require('../../internals/path'); - -var Map = path.Map; -var mapKeyBy = Map.keyBy; - -module.exports = function keyBy(source, iterable, keyDerivative) { - return mapKeyBy.call(typeof this === 'function' ? this : Map, source, iterable, keyDerivative); -}; diff --git a/node_modules/core-js-pure/features/map/key-of.js b/node_modules/core-js-pure/features/map/key-of.js deleted file mode 100644 index 0d0789a4..00000000 --- a/node_modules/core-js-pure/features/map/key-of.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.key-of'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'keyOf'); diff --git a/node_modules/core-js-pure/features/map/map-keys.js b/node_modules/core-js-pure/features/map/map-keys.js deleted file mode 100644 index 07a49a32..00000000 --- a/node_modules/core-js-pure/features/map/map-keys.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.map-keys'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'mapKeys'); diff --git a/node_modules/core-js-pure/features/map/map-values.js b/node_modules/core-js-pure/features/map/map-values.js deleted file mode 100644 index 40bf6ca2..00000000 --- a/node_modules/core-js-pure/features/map/map-values.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.map-values'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'mapValues'); diff --git a/node_modules/core-js-pure/features/map/merge.js b/node_modules/core-js-pure/features/map/merge.js deleted file mode 100644 index 839620d6..00000000 --- a/node_modules/core-js-pure/features/map/merge.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.merge'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'merge'); diff --git a/node_modules/core-js-pure/features/map/of.js b/node_modules/core-js-pure/features/map/of.js deleted file mode 100644 index 57f2a762..00000000 --- a/node_modules/core-js-pure/features/map/of.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.map'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.map.of'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var Map = path.Map; -var mapOf = Map.of; - -module.exports = function of() { - return mapOf.apply(typeof this === 'function' ? this : Map, arguments); -}; diff --git a/node_modules/core-js-pure/features/map/reduce.js b/node_modules/core-js-pure/features/map/reduce.js deleted file mode 100644 index 272b6f84..00000000 --- a/node_modules/core-js-pure/features/map/reduce.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.reduce'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'reduce'); diff --git a/node_modules/core-js-pure/features/map/some.js b/node_modules/core-js-pure/features/map/some.js deleted file mode 100644 index 48192fe2..00000000 --- a/node_modules/core-js-pure/features/map/some.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.some'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'some'); diff --git a/node_modules/core-js-pure/features/map/update-or-insert.js b/node_modules/core-js-pure/features/map/update-or-insert.js deleted file mode 100644 index f195f576..00000000 --- a/node_modules/core-js-pure/features/map/update-or-insert.js +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: remove from `core-js@4` -require('../../modules/es.map'); -require('../../modules/esnext.map.update-or-insert'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'updateOrInsert'); diff --git a/node_modules/core-js-pure/features/map/update.js b/node_modules/core-js-pure/features/map/update.js deleted file mode 100644 index 33526900..00000000 --- a/node_modules/core-js-pure/features/map/update.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.update'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'update'); diff --git a/node_modules/core-js-pure/features/map/upsert.js b/node_modules/core-js-pure/features/map/upsert.js deleted file mode 100644 index e658a40d..00000000 --- a/node_modules/core-js-pure/features/map/upsert.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.map'); -require('../../modules/esnext.map.upsert'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Map', 'upsert'); diff --git a/node_modules/core-js-pure/features/math/acosh.js b/node_modules/core-js-pure/features/math/acosh.js deleted file mode 100644 index f039937d..00000000 --- a/node_modules/core-js-pure/features/math/acosh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/acosh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/asinh.js b/node_modules/core-js-pure/features/math/asinh.js deleted file mode 100644 index 95a302a4..00000000 --- a/node_modules/core-js-pure/features/math/asinh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/asinh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/atanh.js b/node_modules/core-js-pure/features/math/atanh.js deleted file mode 100644 index f1ebad75..00000000 --- a/node_modules/core-js-pure/features/math/atanh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/atanh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/cbrt.js b/node_modules/core-js-pure/features/math/cbrt.js deleted file mode 100644 index 2c1f8251..00000000 --- a/node_modules/core-js-pure/features/math/cbrt.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/cbrt'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/clamp.js b/node_modules/core-js-pure/features/math/clamp.js deleted file mode 100644 index 7b816117..00000000 --- a/node_modules/core-js-pure/features/math/clamp.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.clamp'); -var path = require('../../internals/path'); - -module.exports = path.Math.clamp; diff --git a/node_modules/core-js-pure/features/math/clz32.js b/node_modules/core-js-pure/features/math/clz32.js deleted file mode 100644 index a0ecd150..00000000 --- a/node_modules/core-js-pure/features/math/clz32.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/clz32'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/cosh.js b/node_modules/core-js-pure/features/math/cosh.js deleted file mode 100644 index bc8a11f7..00000000 --- a/node_modules/core-js-pure/features/math/cosh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/cosh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/deg-per-rad.js b/node_modules/core-js-pure/features/math/deg-per-rad.js deleted file mode 100644 index c9451124..00000000 --- a/node_modules/core-js-pure/features/math/deg-per-rad.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/esnext.math.deg-per-rad'); - -module.exports = Math.PI / 180; diff --git a/node_modules/core-js-pure/features/math/degrees.js b/node_modules/core-js-pure/features/math/degrees.js deleted file mode 100644 index 119c3270..00000000 --- a/node_modules/core-js-pure/features/math/degrees.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.degrees'); -var path = require('../../internals/path'); - -module.exports = path.Math.degrees; diff --git a/node_modules/core-js-pure/features/math/expm1.js b/node_modules/core-js-pure/features/math/expm1.js deleted file mode 100644 index 0527f819..00000000 --- a/node_modules/core-js-pure/features/math/expm1.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/expm1'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/fround.js b/node_modules/core-js-pure/features/math/fround.js deleted file mode 100644 index 5caff7d5..00000000 --- a/node_modules/core-js-pure/features/math/fround.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/fround'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/fscale.js b/node_modules/core-js-pure/features/math/fscale.js deleted file mode 100644 index 2a3cdd89..00000000 --- a/node_modules/core-js-pure/features/math/fscale.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.fscale'); -var path = require('../../internals/path'); - -module.exports = path.Math.fscale; diff --git a/node_modules/core-js-pure/features/math/hypot.js b/node_modules/core-js-pure/features/math/hypot.js deleted file mode 100644 index 3db8d789..00000000 --- a/node_modules/core-js-pure/features/math/hypot.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/hypot'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/iaddh.js b/node_modules/core-js-pure/features/math/iaddh.js deleted file mode 100644 index abfcd8a5..00000000 --- a/node_modules/core-js-pure/features/math/iaddh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.iaddh'); -var path = require('../../internals/path'); - -module.exports = path.Math.iaddh; diff --git a/node_modules/core-js-pure/features/math/imul.js b/node_modules/core-js-pure/features/math/imul.js deleted file mode 100644 index 4d31d248..00000000 --- a/node_modules/core-js-pure/features/math/imul.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/imul'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/imulh.js b/node_modules/core-js-pure/features/math/imulh.js deleted file mode 100644 index b81cf345..00000000 --- a/node_modules/core-js-pure/features/math/imulh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.imulh'); -var path = require('../../internals/path'); - -module.exports = path.Math.imulh; diff --git a/node_modules/core-js-pure/features/math/index.js b/node_modules/core-js-pure/features/math/index.js deleted file mode 100644 index 5207e076..00000000 --- a/node_modules/core-js-pure/features/math/index.js +++ /dev/null @@ -1,17 +0,0 @@ -var parent = require('../../es/math'); -require('../../modules/esnext.math.clamp'); -require('../../modules/esnext.math.deg-per-rad'); -require('../../modules/esnext.math.degrees'); -require('../../modules/esnext.math.fscale'); -require('../../modules/esnext.math.rad-per-deg'); -require('../../modules/esnext.math.radians'); -require('../../modules/esnext.math.scale'); -require('../../modules/esnext.math.seeded-prng'); -require('../../modules/esnext.math.signbit'); -// TODO: Remove from `core-js@4` -require('../../modules/esnext.math.iaddh'); -require('../../modules/esnext.math.isubh'); -require('../../modules/esnext.math.imulh'); -require('../../modules/esnext.math.umulh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/isubh.js b/node_modules/core-js-pure/features/math/isubh.js deleted file mode 100644 index a14e1022..00000000 --- a/node_modules/core-js-pure/features/math/isubh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.isubh'); -var path = require('../../internals/path'); - -module.exports = path.Math.isubh; diff --git a/node_modules/core-js-pure/features/math/log10.js b/node_modules/core-js-pure/features/math/log10.js deleted file mode 100644 index 07b9704e..00000000 --- a/node_modules/core-js-pure/features/math/log10.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/log10'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/log1p.js b/node_modules/core-js-pure/features/math/log1p.js deleted file mode 100644 index b31d7308..00000000 --- a/node_modules/core-js-pure/features/math/log1p.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/log1p'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/log2.js b/node_modules/core-js-pure/features/math/log2.js deleted file mode 100644 index 00db8a5b..00000000 --- a/node_modules/core-js-pure/features/math/log2.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/log2'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/rad-per-deg.js b/node_modules/core-js-pure/features/math/rad-per-deg.js deleted file mode 100644 index 3eee6749..00000000 --- a/node_modules/core-js-pure/features/math/rad-per-deg.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/esnext.math.rad-per-deg'); - -module.exports = 180 / Math.PI; diff --git a/node_modules/core-js-pure/features/math/radians.js b/node_modules/core-js-pure/features/math/radians.js deleted file mode 100644 index 1f026079..00000000 --- a/node_modules/core-js-pure/features/math/radians.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.radians'); -var path = require('../../internals/path'); - -module.exports = path.Math.radians; diff --git a/node_modules/core-js-pure/features/math/scale.js b/node_modules/core-js-pure/features/math/scale.js deleted file mode 100644 index c44428d9..00000000 --- a/node_modules/core-js-pure/features/math/scale.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.scale'); -var path = require('../../internals/path'); - -module.exports = path.Math.scale; diff --git a/node_modules/core-js-pure/features/math/seeded-prng.js b/node_modules/core-js-pure/features/math/seeded-prng.js deleted file mode 100644 index 80491b90..00000000 --- a/node_modules/core-js-pure/features/math/seeded-prng.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.seeded-prng'); -var path = require('../../internals/path'); - -module.exports = path.Math.seededPRNG; diff --git a/node_modules/core-js-pure/features/math/sign.js b/node_modules/core-js-pure/features/math/sign.js deleted file mode 100644 index c7bef22f..00000000 --- a/node_modules/core-js-pure/features/math/sign.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/sign'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/signbit.js b/node_modules/core-js-pure/features/math/signbit.js deleted file mode 100644 index ac2862a5..00000000 --- a/node_modules/core-js-pure/features/math/signbit.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.signbit'); -var path = require('../../internals/path'); - -module.exports = path.Math.signbit; diff --git a/node_modules/core-js-pure/features/math/sinh.js b/node_modules/core-js-pure/features/math/sinh.js deleted file mode 100644 index 96f8f8e1..00000000 --- a/node_modules/core-js-pure/features/math/sinh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/sinh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/tanh.js b/node_modules/core-js-pure/features/math/tanh.js deleted file mode 100644 index c9e8bb81..00000000 --- a/node_modules/core-js-pure/features/math/tanh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/tanh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/to-string-tag.js b/node_modules/core-js-pure/features/math/to-string-tag.js deleted file mode 100644 index 02faadf1..00000000 --- a/node_modules/core-js-pure/features/math/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/to-string-tag'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/trunc.js b/node_modules/core-js-pure/features/math/trunc.js deleted file mode 100644 index 7635c175..00000000 --- a/node_modules/core-js-pure/features/math/trunc.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/trunc'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/math/umulh.js b/node_modules/core-js-pure/features/math/umulh.js deleted file mode 100644 index 447bf712..00000000 --- a/node_modules/core-js-pure/features/math/umulh.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.math.umulh'); -var path = require('../../internals/path'); - -module.exports = path.Math.umulh; diff --git a/node_modules/core-js-pure/features/number/constructor.js b/node_modules/core-js-pure/features/number/constructor.js deleted file mode 100644 index 6b5836e5..00000000 --- a/node_modules/core-js-pure/features/number/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/constructor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/epsilon.js b/node_modules/core-js-pure/features/number/epsilon.js deleted file mode 100644 index fe2ccd78..00000000 --- a/node_modules/core-js-pure/features/number/epsilon.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/epsilon'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/from-string.js b/node_modules/core-js-pure/features/number/from-string.js deleted file mode 100644 index 65654be1..00000000 --- a/node_modules/core-js-pure/features/number/from-string.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.number.from-string'); -var path = require('../../internals/path'); - -module.exports = path.Number.fromString; diff --git a/node_modules/core-js-pure/features/number/index.js b/node_modules/core-js-pure/features/number/index.js deleted file mode 100644 index e26bfecd..00000000 --- a/node_modules/core-js-pure/features/number/index.js +++ /dev/null @@ -1,5 +0,0 @@ -var parent = require('../../es/number'); - -module.exports = parent; - -require('../../modules/esnext.number.from-string'); diff --git a/node_modules/core-js-pure/features/number/is-finite.js b/node_modules/core-js-pure/features/number/is-finite.js deleted file mode 100644 index 24b9773d..00000000 --- a/node_modules/core-js-pure/features/number/is-finite.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-finite'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/is-integer.js b/node_modules/core-js-pure/features/number/is-integer.js deleted file mode 100644 index b1592d06..00000000 --- a/node_modules/core-js-pure/features/number/is-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/is-nan.js b/node_modules/core-js-pure/features/number/is-nan.js deleted file mode 100644 index fcbec503..00000000 --- a/node_modules/core-js-pure/features/number/is-nan.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-nan'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/is-safe-integer.js b/node_modules/core-js-pure/features/number/is-safe-integer.js deleted file mode 100644 index b25eb1c6..00000000 --- a/node_modules/core-js-pure/features/number/is-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-safe-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/max-safe-integer.js b/node_modules/core-js-pure/features/number/max-safe-integer.js deleted file mode 100644 index e6689b06..00000000 --- a/node_modules/core-js-pure/features/number/max-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/max-safe-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/min-safe-integer.js b/node_modules/core-js-pure/features/number/min-safe-integer.js deleted file mode 100644 index 1159a47e..00000000 --- a/node_modules/core-js-pure/features/number/min-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/min-safe-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/parse-float.js b/node_modules/core-js-pure/features/number/parse-float.js deleted file mode 100644 index 3b49c6a9..00000000 --- a/node_modules/core-js-pure/features/number/parse-float.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/parse-float'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/parse-int.js b/node_modules/core-js-pure/features/number/parse-int.js deleted file mode 100644 index 9e446513..00000000 --- a/node_modules/core-js-pure/features/number/parse-int.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/parse-int'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/to-fixed.js b/node_modules/core-js-pure/features/number/to-fixed.js deleted file mode 100644 index b103de9e..00000000 --- a/node_modules/core-js-pure/features/number/to-fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/to-fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/to-precision.js b/node_modules/core-js-pure/features/number/to-precision.js deleted file mode 100644 index 5183347a..00000000 --- a/node_modules/core-js-pure/features/number/to-precision.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/to-precision'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/virtual/index.js b/node_modules/core-js-pure/features/number/virtual/index.js deleted file mode 100644 index 88eef4bd..00000000 --- a/node_modules/core-js-pure/features/number/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/number/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/virtual/to-fixed.js b/node_modules/core-js-pure/features/number/virtual/to-fixed.js deleted file mode 100644 index a9f83cca..00000000 --- a/node_modules/core-js-pure/features/number/virtual/to-fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/number/virtual/to-fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/number/virtual/to-precision.js b/node_modules/core-js-pure/features/number/virtual/to-precision.js deleted file mode 100644 index adffb861..00000000 --- a/node_modules/core-js-pure/features/number/virtual/to-precision.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/number/virtual/to-precision'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/assign.js b/node_modules/core-js-pure/features/object/assign.js deleted file mode 100644 index ed6863e3..00000000 --- a/node_modules/core-js-pure/features/object/assign.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/assign'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/create.js b/node_modules/core-js-pure/features/object/create.js deleted file mode 100644 index 1e4d3532..00000000 --- a/node_modules/core-js-pure/features/object/create.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/create'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/define-getter.js b/node_modules/core-js-pure/features/object/define-getter.js deleted file mode 100644 index 9b734ab3..00000000 --- a/node_modules/core-js-pure/features/object/define-getter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-getter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/define-properties.js b/node_modules/core-js-pure/features/object/define-properties.js deleted file mode 100644 index e0d074c4..00000000 --- a/node_modules/core-js-pure/features/object/define-properties.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-properties'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/define-property.js b/node_modules/core-js-pure/features/object/define-property.js deleted file mode 100644 index 67a978cc..00000000 --- a/node_modules/core-js-pure/features/object/define-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-property'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/define-setter.js b/node_modules/core-js-pure/features/object/define-setter.js deleted file mode 100644 index 9076fd59..00000000 --- a/node_modules/core-js-pure/features/object/define-setter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-setter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/entries.js b/node_modules/core-js-pure/features/object/entries.js deleted file mode 100644 index c7a831a5..00000000 --- a/node_modules/core-js-pure/features/object/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/freeze.js b/node_modules/core-js-pure/features/object/freeze.js deleted file mode 100644 index 0ee74591..00000000 --- a/node_modules/core-js-pure/features/object/freeze.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/freeze'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/from-entries.js b/node_modules/core-js-pure/features/object/from-entries.js deleted file mode 100644 index aec2c7a5..00000000 --- a/node_modules/core-js-pure/features/object/from-entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/from-entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/get-own-property-descriptor.js b/node_modules/core-js-pure/features/object/get-own-property-descriptor.js deleted file mode 100644 index 9b69cddd..00000000 --- a/node_modules/core-js-pure/features/object/get-own-property-descriptor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-descriptor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/get-own-property-descriptors.js b/node_modules/core-js-pure/features/object/get-own-property-descriptors.js deleted file mode 100644 index 43a193ed..00000000 --- a/node_modules/core-js-pure/features/object/get-own-property-descriptors.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-descriptors'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/get-own-property-names.js b/node_modules/core-js-pure/features/object/get-own-property-names.js deleted file mode 100644 index 42c21d7b..00000000 --- a/node_modules/core-js-pure/features/object/get-own-property-names.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-names'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/get-own-property-symbols.js b/node_modules/core-js-pure/features/object/get-own-property-symbols.js deleted file mode 100644 index 0bc8c261..00000000 --- a/node_modules/core-js-pure/features/object/get-own-property-symbols.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-symbols'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/get-prototype-of.js b/node_modules/core-js-pure/features/object/get-prototype-of.js deleted file mode 100644 index b7cf5885..00000000 --- a/node_modules/core-js-pure/features/object/get-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/index.js b/node_modules/core-js-pure/features/object/index.js deleted file mode 100644 index e7ea4bf7..00000000 --- a/node_modules/core-js-pure/features/object/index.js +++ /dev/null @@ -1,6 +0,0 @@ -var parent = require('../../es/object'); -require('../../modules/esnext.object.iterate-entries'); -require('../../modules/esnext.object.iterate-keys'); -require('../../modules/esnext.object.iterate-values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/is-extensible.js b/node_modules/core-js-pure/features/object/is-extensible.js deleted file mode 100644 index 694b9a47..00000000 --- a/node_modules/core-js-pure/features/object/is-extensible.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is-extensible'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/is-frozen.js b/node_modules/core-js-pure/features/object/is-frozen.js deleted file mode 100644 index 68fe107e..00000000 --- a/node_modules/core-js-pure/features/object/is-frozen.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is-frozen'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/is-sealed.js b/node_modules/core-js-pure/features/object/is-sealed.js deleted file mode 100644 index bbf64722..00000000 --- a/node_modules/core-js-pure/features/object/is-sealed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is-sealed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/is.js b/node_modules/core-js-pure/features/object/is.js deleted file mode 100644 index 3ddd76fd..00000000 --- a/node_modules/core-js-pure/features/object/is.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/iterate-entries.js b/node_modules/core-js-pure/features/object/iterate-entries.js deleted file mode 100644 index ca9cd281..00000000 --- a/node_modules/core-js-pure/features/object/iterate-entries.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.object.iterate-entries'); -var path = require('../../internals/path'); - -module.exports = path.Object.iterateEntries; diff --git a/node_modules/core-js-pure/features/object/iterate-keys.js b/node_modules/core-js-pure/features/object/iterate-keys.js deleted file mode 100644 index 8e8fad4b..00000000 --- a/node_modules/core-js-pure/features/object/iterate-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.object.iterate-keys'); -var path = require('../../internals/path'); - -module.exports = path.Object.iterateKeys; diff --git a/node_modules/core-js-pure/features/object/iterate-values.js b/node_modules/core-js-pure/features/object/iterate-values.js deleted file mode 100644 index a77108fc..00000000 --- a/node_modules/core-js-pure/features/object/iterate-values.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.object.iterate-values'); -var path = require('../../internals/path'); - -module.exports = path.Object.iterateValues; diff --git a/node_modules/core-js-pure/features/object/keys.js b/node_modules/core-js-pure/features/object/keys.js deleted file mode 100644 index 2cff0abf..00000000 --- a/node_modules/core-js-pure/features/object/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/lookup-getter.js b/node_modules/core-js-pure/features/object/lookup-getter.js deleted file mode 100644 index 9f10f6b8..00000000 --- a/node_modules/core-js-pure/features/object/lookup-getter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/lookup-getter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/lookup-setter.js b/node_modules/core-js-pure/features/object/lookup-setter.js deleted file mode 100644 index 97389bf1..00000000 --- a/node_modules/core-js-pure/features/object/lookup-setter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/lookup-setter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/prevent-extensions.js b/node_modules/core-js-pure/features/object/prevent-extensions.js deleted file mode 100644 index 7171f2aa..00000000 --- a/node_modules/core-js-pure/features/object/prevent-extensions.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/prevent-extensions'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/seal.js b/node_modules/core-js-pure/features/object/seal.js deleted file mode 100644 index fa50038b..00000000 --- a/node_modules/core-js-pure/features/object/seal.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/seal'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/set-prototype-of.js b/node_modules/core-js-pure/features/object/set-prototype-of.js deleted file mode 100644 index 4885ad35..00000000 --- a/node_modules/core-js-pure/features/object/set-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/set-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/to-string.js b/node_modules/core-js-pure/features/object/to-string.js deleted file mode 100644 index 589ffcbb..00000000 --- a/node_modules/core-js-pure/features/object/to-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/to-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/object/values.js b/node_modules/core-js-pure/features/object/values.js deleted file mode 100644 index 9e457fcf..00000000 --- a/node_modules/core-js-pure/features/object/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/observable/index.js b/node_modules/core-js-pure/features/observable/index.js deleted file mode 100644 index 9f694bc9..00000000 --- a/node_modules/core-js-pure/features/observable/index.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../../modules/esnext.observable'); -require('../../modules/esnext.symbol.observable'); -require('../../modules/es.object.to-string'); -require('../../modules/es.string.iterator'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -module.exports = path.Observable; diff --git a/node_modules/core-js-pure/features/parse-float.js b/node_modules/core-js-pure/features/parse-float.js deleted file mode 100644 index 1bc853cb..00000000 --- a/node_modules/core-js-pure/features/parse-float.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../es/parse-float'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/parse-int.js b/node_modules/core-js-pure/features/parse-int.js deleted file mode 100644 index af7cffd5..00000000 --- a/node_modules/core-js-pure/features/parse-int.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../es/parse-int'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/promise/all-settled.js b/node_modules/core-js-pure/features/promise/all-settled.js deleted file mode 100644 index c5e88920..00000000 --- a/node_modules/core-js-pure/features/promise/all-settled.js +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: Remove from `core-js@4` -require('../../modules/esnext.promise.all-settled'); - -var parent = require('../../es/promise/all-settled'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/promise/any.js b/node_modules/core-js-pure/features/promise/any.js deleted file mode 100644 index 72464035..00000000 --- a/node_modules/core-js-pure/features/promise/any.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -require('../../modules/es.promise'); -require('../../modules/esnext.aggregate-error'); -require('../../modules/esnext.promise.any'); -var path = require('../../internals/path'); - -var Promise = path.Promise; -var $any = Promise.any; - -module.exports = function any(iterable) { - return $any.call(typeof this === 'function' ? this : Promise, iterable); -}; diff --git a/node_modules/core-js-pure/features/promise/finally.js b/node_modules/core-js-pure/features/promise/finally.js deleted file mode 100644 index 835c6c94..00000000 --- a/node_modules/core-js-pure/features/promise/finally.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/promise/finally'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/promise/index.js b/node_modules/core-js-pure/features/promise/index.js deleted file mode 100644 index 13393b54..00000000 --- a/node_modules/core-js-pure/features/promise/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var parent = require('../../es/promise'); -require('../../modules/esnext.aggregate-error'); -// TODO: Remove from `core-js@4` -require('../../modules/esnext.promise.all-settled'); -require('../../modules/esnext.promise.try'); -require('../../modules/esnext.promise.any'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/promise/try.js b/node_modules/core-js-pure/features/promise/try.js deleted file mode 100644 index b7a6e3b4..00000000 --- a/node_modules/core-js-pure/features/promise/try.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -require('../../modules/es.promise'); -require('../../modules/esnext.promise.try'); -var path = require('../../internals/path'); - -var Promise = path.Promise; -var promiseTry = Promise['try']; - -module.exports = { 'try': function (callbackfn) { - return promiseTry.call(typeof this === 'function' ? this : Promise, callbackfn); -} }['try']; diff --git a/node_modules/core-js-pure/features/queue-microtask.js b/node_modules/core-js-pure/features/queue-microtask.js deleted file mode 100644 index 66c39d67..00000000 --- a/node_modules/core-js-pure/features/queue-microtask.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../stable/queue-microtask'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/apply.js b/node_modules/core-js-pure/features/reflect/apply.js deleted file mode 100644 index 75bf21e7..00000000 --- a/node_modules/core-js-pure/features/reflect/apply.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/apply'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/construct.js b/node_modules/core-js-pure/features/reflect/construct.js deleted file mode 100644 index 86ba56e8..00000000 --- a/node_modules/core-js-pure/features/reflect/construct.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/construct'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/define-metadata.js b/node_modules/core-js-pure/features/reflect/define-metadata.js deleted file mode 100644 index 156cc957..00000000 --- a/node_modules/core-js-pure/features/reflect/define-metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.define-metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.defineMetadata; diff --git a/node_modules/core-js-pure/features/reflect/define-property.js b/node_modules/core-js-pure/features/reflect/define-property.js deleted file mode 100644 index 5b66a143..00000000 --- a/node_modules/core-js-pure/features/reflect/define-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/define-property'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/delete-metadata.js b/node_modules/core-js-pure/features/reflect/delete-metadata.js deleted file mode 100644 index bbb8c481..00000000 --- a/node_modules/core-js-pure/features/reflect/delete-metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.delete-metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.deleteMetadata; diff --git a/node_modules/core-js-pure/features/reflect/delete-property.js b/node_modules/core-js-pure/features/reflect/delete-property.js deleted file mode 100644 index 381d7a72..00000000 --- a/node_modules/core-js-pure/features/reflect/delete-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/delete-property'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/get-metadata-keys.js b/node_modules/core-js-pure/features/reflect/get-metadata-keys.js deleted file mode 100644 index 8137178a..00000000 --- a/node_modules/core-js-pure/features/reflect/get-metadata-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.get-metadata-keys'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.getMetadataKeys; diff --git a/node_modules/core-js-pure/features/reflect/get-metadata.js b/node_modules/core-js-pure/features/reflect/get-metadata.js deleted file mode 100644 index 3d00b4e4..00000000 --- a/node_modules/core-js-pure/features/reflect/get-metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.get-metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.getMetadata; diff --git a/node_modules/core-js-pure/features/reflect/get-own-metadata-keys.js b/node_modules/core-js-pure/features/reflect/get-own-metadata-keys.js deleted file mode 100644 index 020828fd..00000000 --- a/node_modules/core-js-pure/features/reflect/get-own-metadata-keys.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.get-own-metadata-keys'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.getOwnMetadataKeys; diff --git a/node_modules/core-js-pure/features/reflect/get-own-metadata.js b/node_modules/core-js-pure/features/reflect/get-own-metadata.js deleted file mode 100644 index 90f626c8..00000000 --- a/node_modules/core-js-pure/features/reflect/get-own-metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.get-own-metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.getOwnMetadata; diff --git a/node_modules/core-js-pure/features/reflect/get-own-property-descriptor.js b/node_modules/core-js-pure/features/reflect/get-own-property-descriptor.js deleted file mode 100644 index 0f9c1326..00000000 --- a/node_modules/core-js-pure/features/reflect/get-own-property-descriptor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/get-own-property-descriptor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/get-prototype-of.js b/node_modules/core-js-pure/features/reflect/get-prototype-of.js deleted file mode 100644 index fdc1ccb1..00000000 --- a/node_modules/core-js-pure/features/reflect/get-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/get-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/get.js b/node_modules/core-js-pure/features/reflect/get.js deleted file mode 100644 index 2914c123..00000000 --- a/node_modules/core-js-pure/features/reflect/get.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/get'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/has-metadata.js b/node_modules/core-js-pure/features/reflect/has-metadata.js deleted file mode 100644 index 3072c51e..00000000 --- a/node_modules/core-js-pure/features/reflect/has-metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.has-metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.hasMetadata; diff --git a/node_modules/core-js-pure/features/reflect/has-own-metadata.js b/node_modules/core-js-pure/features/reflect/has-own-metadata.js deleted file mode 100644 index 09eb7654..00000000 --- a/node_modules/core-js-pure/features/reflect/has-own-metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.has-own-metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.hasOwnMetadata; diff --git a/node_modules/core-js-pure/features/reflect/has.js b/node_modules/core-js-pure/features/reflect/has.js deleted file mode 100644 index 26b5f7cd..00000000 --- a/node_modules/core-js-pure/features/reflect/has.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/has'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/index.js b/node_modules/core-js-pure/features/reflect/index.js deleted file mode 100644 index 6460a70d..00000000 --- a/node_modules/core-js-pure/features/reflect/index.js +++ /dev/null @@ -1,12 +0,0 @@ -var parent = require('../../es/reflect'); -require('../../modules/esnext.reflect.define-metadata'); -require('../../modules/esnext.reflect.delete-metadata'); -require('../../modules/esnext.reflect.get-metadata'); -require('../../modules/esnext.reflect.get-metadata-keys'); -require('../../modules/esnext.reflect.get-own-metadata'); -require('../../modules/esnext.reflect.get-own-metadata-keys'); -require('../../modules/esnext.reflect.has-metadata'); -require('../../modules/esnext.reflect.has-own-metadata'); -require('../../modules/esnext.reflect.metadata'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/is-extensible.js b/node_modules/core-js-pure/features/reflect/is-extensible.js deleted file mode 100644 index b04239e7..00000000 --- a/node_modules/core-js-pure/features/reflect/is-extensible.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/is-extensible'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/metadata.js b/node_modules/core-js-pure/features/reflect/metadata.js deleted file mode 100644 index d1faf13a..00000000 --- a/node_modules/core-js-pure/features/reflect/metadata.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.reflect.metadata'); -var path = require('../../internals/path'); - -module.exports = path.Reflect.metadata; diff --git a/node_modules/core-js-pure/features/reflect/own-keys.js b/node_modules/core-js-pure/features/reflect/own-keys.js deleted file mode 100644 index 6d56289c..00000000 --- a/node_modules/core-js-pure/features/reflect/own-keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/own-keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/prevent-extensions.js b/node_modules/core-js-pure/features/reflect/prevent-extensions.js deleted file mode 100644 index 40a8bbc7..00000000 --- a/node_modules/core-js-pure/features/reflect/prevent-extensions.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/prevent-extensions'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/set-prototype-of.js b/node_modules/core-js-pure/features/reflect/set-prototype-of.js deleted file mode 100644 index 20fd6f32..00000000 --- a/node_modules/core-js-pure/features/reflect/set-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/set-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/reflect/set.js b/node_modules/core-js-pure/features/reflect/set.js deleted file mode 100644 index a4cf5f02..00000000 --- a/node_modules/core-js-pure/features/reflect/set.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/set'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/constructor.js b/node_modules/core-js-pure/features/regexp/constructor.js deleted file mode 100644 index 2cd0149e..00000000 --- a/node_modules/core-js-pure/features/regexp/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/constructor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/flags.js b/node_modules/core-js-pure/features/regexp/flags.js deleted file mode 100644 index bdf1c8a9..00000000 --- a/node_modules/core-js-pure/features/regexp/flags.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/flags'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/index.js b/node_modules/core-js-pure/features/regexp/index.js deleted file mode 100644 index df41f176..00000000 --- a/node_modules/core-js-pure/features/regexp/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/match.js b/node_modules/core-js-pure/features/regexp/match.js deleted file mode 100644 index c995bbb3..00000000 --- a/node_modules/core-js-pure/features/regexp/match.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/match'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/replace.js b/node_modules/core-js-pure/features/regexp/replace.js deleted file mode 100644 index b1a9e652..00000000 --- a/node_modules/core-js-pure/features/regexp/replace.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/replace'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/search.js b/node_modules/core-js-pure/features/regexp/search.js deleted file mode 100644 index af170623..00000000 --- a/node_modules/core-js-pure/features/regexp/search.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/search'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/split.js b/node_modules/core-js-pure/features/regexp/split.js deleted file mode 100644 index fb0471a8..00000000 --- a/node_modules/core-js-pure/features/regexp/split.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/split'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/sticky.js b/node_modules/core-js-pure/features/regexp/sticky.js deleted file mode 100644 index c1307adf..00000000 --- a/node_modules/core-js-pure/features/regexp/sticky.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/sticky'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/test.js b/node_modules/core-js-pure/features/regexp/test.js deleted file mode 100644 index 53f91668..00000000 --- a/node_modules/core-js-pure/features/regexp/test.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/test'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/regexp/to-string.js b/node_modules/core-js-pure/features/regexp/to-string.js deleted file mode 100644 index e2a44424..00000000 --- a/node_modules/core-js-pure/features/regexp/to-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/to-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/set-immediate.js b/node_modules/core-js-pure/features/set-immediate.js deleted file mode 100644 index 01530a28..00000000 --- a/node_modules/core-js-pure/features/set-immediate.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../stable/set-immediate'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/set-interval.js b/node_modules/core-js-pure/features/set-interval.js deleted file mode 100644 index 122b8ba3..00000000 --- a/node_modules/core-js-pure/features/set-interval.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../stable/set-interval'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/set-timeout.js b/node_modules/core-js-pure/features/set-timeout.js deleted file mode 100644 index 310fcd37..00000000 --- a/node_modules/core-js-pure/features/set-timeout.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../stable/set-timeout'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/set/add-all.js b/node_modules/core-js-pure/features/set/add-all.js deleted file mode 100644 index d045d5ee..00000000 --- a/node_modules/core-js-pure/features/set/add-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.add-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'addAll'); diff --git a/node_modules/core-js-pure/features/set/delete-all.js b/node_modules/core-js-pure/features/set/delete-all.js deleted file mode 100644 index aa759745..00000000 --- a/node_modules/core-js-pure/features/set/delete-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.delete-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'deleteAll'); diff --git a/node_modules/core-js-pure/features/set/difference.js b/node_modules/core-js-pure/features/set/difference.js deleted file mode 100644 index 24a71948..00000000 --- a/node_modules/core-js-pure/features/set/difference.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.set.difference'); -require('../../modules/web.dom-collections.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'difference'); diff --git a/node_modules/core-js-pure/features/set/every.js b/node_modules/core-js-pure/features/set/every.js deleted file mode 100644 index f22294ad..00000000 --- a/node_modules/core-js-pure/features/set/every.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.every'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'every'); diff --git a/node_modules/core-js-pure/features/set/filter.js b/node_modules/core-js-pure/features/set/filter.js deleted file mode 100644 index ffb4a027..00000000 --- a/node_modules/core-js-pure/features/set/filter.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.filter'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'filter'); diff --git a/node_modules/core-js-pure/features/set/find.js b/node_modules/core-js-pure/features/set/find.js deleted file mode 100644 index 8627805d..00000000 --- a/node_modules/core-js-pure/features/set/find.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.find'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'find'); diff --git a/node_modules/core-js-pure/features/set/from.js b/node_modules/core-js-pure/features/set/from.js deleted file mode 100644 index f18623b3..00000000 --- a/node_modules/core-js-pure/features/set/from.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.set'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.set.from'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var Set = path.Set; -var setFrom = Set.from; - -module.exports = function from(source, mapFn, thisArg) { - return setFrom.call(typeof this === 'function' ? this : Set, source, mapFn, thisArg); -}; diff --git a/node_modules/core-js-pure/features/set/index.js b/node_modules/core-js-pure/features/set/index.js deleted file mode 100644 index 66896f4f..00000000 --- a/node_modules/core-js-pure/features/set/index.js +++ /dev/null @@ -1,21 +0,0 @@ -var parent = require('../../es/set'); -require('../../modules/esnext.set.from'); -require('../../modules/esnext.set.of'); -require('../../modules/esnext.set.add-all'); -require('../../modules/esnext.set.delete-all'); -require('../../modules/esnext.set.every'); -require('../../modules/esnext.set.difference'); -require('../../modules/esnext.set.filter'); -require('../../modules/esnext.set.find'); -require('../../modules/esnext.set.intersection'); -require('../../modules/esnext.set.is-disjoint-from'); -require('../../modules/esnext.set.is-subset-of'); -require('../../modules/esnext.set.is-superset-of'); -require('../../modules/esnext.set.join'); -require('../../modules/esnext.set.map'); -require('../../modules/esnext.set.reduce'); -require('../../modules/esnext.set.some'); -require('../../modules/esnext.set.symmetric-difference'); -require('../../modules/esnext.set.union'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/set/intersection.js b/node_modules/core-js-pure/features/set/intersection.js deleted file mode 100644 index 203edfe9..00000000 --- a/node_modules/core-js-pure/features/set/intersection.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.intersection'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'intersection'); diff --git a/node_modules/core-js-pure/features/set/is-disjoint-from.js b/node_modules/core-js-pure/features/set/is-disjoint-from.js deleted file mode 100644 index 88ca08be..00000000 --- a/node_modules/core-js-pure/features/set/is-disjoint-from.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.is-disjoint-from'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'isDisjointFrom'); diff --git a/node_modules/core-js-pure/features/set/is-subset-of.js b/node_modules/core-js-pure/features/set/is-subset-of.js deleted file mode 100644 index 21ab3d49..00000000 --- a/node_modules/core-js-pure/features/set/is-subset-of.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.set.is-subset-of'); -require('../../modules/web.dom-collections.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'isSubsetOf'); diff --git a/node_modules/core-js-pure/features/set/is-superset-of.js b/node_modules/core-js-pure/features/set/is-superset-of.js deleted file mode 100644 index 4da6ba12..00000000 --- a/node_modules/core-js-pure/features/set/is-superset-of.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.is-superset-of'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'isSupersetOf'); diff --git a/node_modules/core-js-pure/features/set/join.js b/node_modules/core-js-pure/features/set/join.js deleted file mode 100644 index b3ae27da..00000000 --- a/node_modules/core-js-pure/features/set/join.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.join'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'join'); diff --git a/node_modules/core-js-pure/features/set/map.js b/node_modules/core-js-pure/features/set/map.js deleted file mode 100644 index 3957002a..00000000 --- a/node_modules/core-js-pure/features/set/map.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.map'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'map'); diff --git a/node_modules/core-js-pure/features/set/of.js b/node_modules/core-js-pure/features/set/of.js deleted file mode 100644 index 114558a2..00000000 --- a/node_modules/core-js-pure/features/set/of.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.set'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.set.of'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var Set = path.Set; -var setOf = Set.of; - -module.exports = function of() { - return setOf.apply(typeof this === 'function' ? this : Set, arguments); -}; diff --git a/node_modules/core-js-pure/features/set/reduce.js b/node_modules/core-js-pure/features/set/reduce.js deleted file mode 100644 index 11ab6a4f..00000000 --- a/node_modules/core-js-pure/features/set/reduce.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.reduce'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'reduce'); diff --git a/node_modules/core-js-pure/features/set/some.js b/node_modules/core-js-pure/features/set/some.js deleted file mode 100644 index 0b4227a9..00000000 --- a/node_modules/core-js-pure/features/set/some.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/esnext.set.some'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'some'); diff --git a/node_modules/core-js-pure/features/set/symmetric-difference.js b/node_modules/core-js-pure/features/set/symmetric-difference.js deleted file mode 100644 index fb04d637..00000000 --- a/node_modules/core-js-pure/features/set/symmetric-difference.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.set.symmetric-difference'); -require('../../modules/web.dom-collections.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'symmetricDifference'); diff --git a/node_modules/core-js-pure/features/set/union.js b/node_modules/core-js-pure/features/set/union.js deleted file mode 100644 index d180f8b8..00000000 --- a/node_modules/core-js-pure/features/set/union.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../../modules/es.set'); -require('../../modules/es.string.iterator'); -require('../../modules/esnext.set.union'); -require('../../modules/web.dom-collections.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Set', 'union'); diff --git a/node_modules/core-js-pure/features/string/anchor.js b/node_modules/core-js-pure/features/string/anchor.js deleted file mode 100644 index b9b79050..00000000 --- a/node_modules/core-js-pure/features/string/anchor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/anchor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/at.js b/node_modules/core-js-pure/features/string/at.js deleted file mode 100644 index d8bcca8f..00000000 --- a/node_modules/core-js-pure/features/string/at.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.string.at'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'at'); diff --git a/node_modules/core-js-pure/features/string/big.js b/node_modules/core-js-pure/features/string/big.js deleted file mode 100644 index 9c118e55..00000000 --- a/node_modules/core-js-pure/features/string/big.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/big'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/blink.js b/node_modules/core-js-pure/features/string/blink.js deleted file mode 100644 index 23ca24fc..00000000 --- a/node_modules/core-js-pure/features/string/blink.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/blink'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/bold.js b/node_modules/core-js-pure/features/string/bold.js deleted file mode 100644 index 322db3e4..00000000 --- a/node_modules/core-js-pure/features/string/bold.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/bold'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/code-point-at.js b/node_modules/core-js-pure/features/string/code-point-at.js deleted file mode 100644 index 033b94c3..00000000 --- a/node_modules/core-js-pure/features/string/code-point-at.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/code-point-at'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/code-points.js b/node_modules/core-js-pure/features/string/code-points.js deleted file mode 100644 index 8a783f31..00000000 --- a/node_modules/core-js-pure/features/string/code-points.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../modules/esnext.string.code-points'); - -module.exports = require('../../internals/entry-unbind')('String', 'codePoints'); diff --git a/node_modules/core-js-pure/features/string/ends-with.js b/node_modules/core-js-pure/features/string/ends-with.js deleted file mode 100644 index 2ea55947..00000000 --- a/node_modules/core-js-pure/features/string/ends-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/ends-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/fixed.js b/node_modules/core-js-pure/features/string/fixed.js deleted file mode 100644 index c18b823c..00000000 --- a/node_modules/core-js-pure/features/string/fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/fontcolor.js b/node_modules/core-js-pure/features/string/fontcolor.js deleted file mode 100644 index bb30ae6b..00000000 --- a/node_modules/core-js-pure/features/string/fontcolor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/fontcolor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/fontsize.js b/node_modules/core-js-pure/features/string/fontsize.js deleted file mode 100644 index 49060de1..00000000 --- a/node_modules/core-js-pure/features/string/fontsize.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/fontsize'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/from-code-point.js b/node_modules/core-js-pure/features/string/from-code-point.js deleted file mode 100644 index c56ee7c5..00000000 --- a/node_modules/core-js-pure/features/string/from-code-point.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/from-code-point'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/includes.js b/node_modules/core-js-pure/features/string/includes.js deleted file mode 100644 index cf7eea49..00000000 --- a/node_modules/core-js-pure/features/string/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/index.js b/node_modules/core-js-pure/features/string/index.js deleted file mode 100644 index 7c7f167c..00000000 --- a/node_modules/core-js-pure/features/string/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var parent = require('../../es/string'); -require('../../modules/esnext.string.at'); -require('../../modules/esnext.string.code-points'); -// TODO: remove from `core-js@4` -require('../../modules/esnext.string.match-all'); -require('../../modules/esnext.string.replace-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/italics.js b/node_modules/core-js-pure/features/string/italics.js deleted file mode 100644 index 8bee4396..00000000 --- a/node_modules/core-js-pure/features/string/italics.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/italics'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/iterator.js b/node_modules/core-js-pure/features/string/iterator.js deleted file mode 100644 index 64110cc8..00000000 --- a/node_modules/core-js-pure/features/string/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/link.js b/node_modules/core-js-pure/features/string/link.js deleted file mode 100644 index d5077268..00000000 --- a/node_modules/core-js-pure/features/string/link.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/link'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/match-all.js b/node_modules/core-js-pure/features/string/match-all.js deleted file mode 100644 index 5188e295..00000000 --- a/node_modules/core-js-pure/features/string/match-all.js +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: remove from `core-js@4` -require('../../modules/esnext.string.match-all'); - -var parent = require('../../es/string/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/match.js b/node_modules/core-js-pure/features/string/match.js deleted file mode 100644 index 5b728dae..00000000 --- a/node_modules/core-js-pure/features/string/match.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/match'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/pad-end.js b/node_modules/core-js-pure/features/string/pad-end.js deleted file mode 100644 index 032903c6..00000000 --- a/node_modules/core-js-pure/features/string/pad-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/pad-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/pad-start.js b/node_modules/core-js-pure/features/string/pad-start.js deleted file mode 100644 index 440785b6..00000000 --- a/node_modules/core-js-pure/features/string/pad-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/pad-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/raw.js b/node_modules/core-js-pure/features/string/raw.js deleted file mode 100644 index 2ac2b747..00000000 --- a/node_modules/core-js-pure/features/string/raw.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/raw'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/repeat.js b/node_modules/core-js-pure/features/string/repeat.js deleted file mode 100644 index 6d6848b2..00000000 --- a/node_modules/core-js-pure/features/string/repeat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/repeat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/replace-all.js b/node_modules/core-js-pure/features/string/replace-all.js deleted file mode 100644 index 6de7f519..00000000 --- a/node_modules/core-js-pure/features/string/replace-all.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.string.replace-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('String', 'replaceAll'); diff --git a/node_modules/core-js-pure/features/string/replace.js b/node_modules/core-js-pure/features/string/replace.js deleted file mode 100644 index 48389e68..00000000 --- a/node_modules/core-js-pure/features/string/replace.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/replace'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/search.js b/node_modules/core-js-pure/features/string/search.js deleted file mode 100644 index aaf356f9..00000000 --- a/node_modules/core-js-pure/features/string/search.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/search'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/small.js b/node_modules/core-js-pure/features/string/small.js deleted file mode 100644 index 47b79e06..00000000 --- a/node_modules/core-js-pure/features/string/small.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/small'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/split.js b/node_modules/core-js-pure/features/string/split.js deleted file mode 100644 index 5ffbab76..00000000 --- a/node_modules/core-js-pure/features/string/split.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/split'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/starts-with.js b/node_modules/core-js-pure/features/string/starts-with.js deleted file mode 100644 index f718778c..00000000 --- a/node_modules/core-js-pure/features/string/starts-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/starts-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/strike.js b/node_modules/core-js-pure/features/string/strike.js deleted file mode 100644 index 6c625c8e..00000000 --- a/node_modules/core-js-pure/features/string/strike.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/strike'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/sub.js b/node_modules/core-js-pure/features/string/sub.js deleted file mode 100644 index a4a66a05..00000000 --- a/node_modules/core-js-pure/features/string/sub.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/sub'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/sup.js b/node_modules/core-js-pure/features/string/sup.js deleted file mode 100644 index abb1f6a5..00000000 --- a/node_modules/core-js-pure/features/string/sup.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/sup'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/trim-end.js b/node_modules/core-js-pure/features/string/trim-end.js deleted file mode 100644 index 37e8d3f2..00000000 --- a/node_modules/core-js-pure/features/string/trim-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/trim-left.js b/node_modules/core-js-pure/features/string/trim-left.js deleted file mode 100644 index e11e7b71..00000000 --- a/node_modules/core-js-pure/features/string/trim-left.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-left'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/trim-right.js b/node_modules/core-js-pure/features/string/trim-right.js deleted file mode 100644 index 290f4fd6..00000000 --- a/node_modules/core-js-pure/features/string/trim-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/trim-start.js b/node_modules/core-js-pure/features/string/trim-start.js deleted file mode 100644 index 96988529..00000000 --- a/node_modules/core-js-pure/features/string/trim-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/trim.js b/node_modules/core-js-pure/features/string/trim.js deleted file mode 100644 index 7a3a3b2f..00000000 --- a/node_modules/core-js-pure/features/string/trim.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/anchor.js b/node_modules/core-js-pure/features/string/virtual/anchor.js deleted file mode 100644 index 52f270c0..00000000 --- a/node_modules/core-js-pure/features/string/virtual/anchor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/anchor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/at.js b/node_modules/core-js-pure/features/string/virtual/at.js deleted file mode 100644 index c78ec2c2..00000000 --- a/node_modules/core-js-pure/features/string/virtual/at.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/esnext.string.at'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').at; diff --git a/node_modules/core-js-pure/features/string/virtual/big.js b/node_modules/core-js-pure/features/string/virtual/big.js deleted file mode 100644 index e2c481b5..00000000 --- a/node_modules/core-js-pure/features/string/virtual/big.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/big'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/blink.js b/node_modules/core-js-pure/features/string/virtual/blink.js deleted file mode 100644 index b804fd6f..00000000 --- a/node_modules/core-js-pure/features/string/virtual/blink.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/blink'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/bold.js b/node_modules/core-js-pure/features/string/virtual/bold.js deleted file mode 100644 index fbe2f420..00000000 --- a/node_modules/core-js-pure/features/string/virtual/bold.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/bold'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/code-point-at.js b/node_modules/core-js-pure/features/string/virtual/code-point-at.js deleted file mode 100644 index 1a7e0f60..00000000 --- a/node_modules/core-js-pure/features/string/virtual/code-point-at.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/code-point-at'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/code-points.js b/node_modules/core-js-pure/features/string/virtual/code-points.js deleted file mode 100644 index e9905165..00000000 --- a/node_modules/core-js-pure/features/string/virtual/code-points.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../../../modules/esnext.string.code-points'); - -module.exports = require('../../../internals/entry-virtual')('String').codePoints; diff --git a/node_modules/core-js-pure/features/string/virtual/ends-with.js b/node_modules/core-js-pure/features/string/virtual/ends-with.js deleted file mode 100644 index e35b5d0d..00000000 --- a/node_modules/core-js-pure/features/string/virtual/ends-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/ends-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/fixed.js b/node_modules/core-js-pure/features/string/virtual/fixed.js deleted file mode 100644 index 8c16126b..00000000 --- a/node_modules/core-js-pure/features/string/virtual/fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/fontcolor.js b/node_modules/core-js-pure/features/string/virtual/fontcolor.js deleted file mode 100644 index 5434150e..00000000 --- a/node_modules/core-js-pure/features/string/virtual/fontcolor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/fontcolor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/fontsize.js b/node_modules/core-js-pure/features/string/virtual/fontsize.js deleted file mode 100644 index f4b71442..00000000 --- a/node_modules/core-js-pure/features/string/virtual/fontsize.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/fontsize'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/includes.js b/node_modules/core-js-pure/features/string/virtual/includes.js deleted file mode 100644 index a6aee447..00000000 --- a/node_modules/core-js-pure/features/string/virtual/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/index.js b/node_modules/core-js-pure/features/string/virtual/index.js deleted file mode 100644 index 50044779..00000000 --- a/node_modules/core-js-pure/features/string/virtual/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var parent = require('../../../es/string/virtual'); -require('../../../modules/esnext.string.at'); -require('../../../modules/esnext.string.code-points'); -// TODO: remove from `core-js@4` -require('../../../modules/esnext.string.match-all'); -require('../../../modules/esnext.string.replace-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/italics.js b/node_modules/core-js-pure/features/string/virtual/italics.js deleted file mode 100644 index d35da33b..00000000 --- a/node_modules/core-js-pure/features/string/virtual/italics.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/italics'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/iterator.js b/node_modules/core-js-pure/features/string/virtual/iterator.js deleted file mode 100644 index ffdb591e..00000000 --- a/node_modules/core-js-pure/features/string/virtual/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/link.js b/node_modules/core-js-pure/features/string/virtual/link.js deleted file mode 100644 index 4c0c0cf4..00000000 --- a/node_modules/core-js-pure/features/string/virtual/link.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/link'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/match-all.js b/node_modules/core-js-pure/features/string/virtual/match-all.js deleted file mode 100644 index fb390800..00000000 --- a/node_modules/core-js-pure/features/string/virtual/match-all.js +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: remove from `core-js@4` -require('../../../modules/esnext.string.match-all'); - -var parent = require('../../../es/string/virtual/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/pad-end.js b/node_modules/core-js-pure/features/string/virtual/pad-end.js deleted file mode 100644 index f1dcdf3c..00000000 --- a/node_modules/core-js-pure/features/string/virtual/pad-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/pad-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/pad-start.js b/node_modules/core-js-pure/features/string/virtual/pad-start.js deleted file mode 100644 index 1e2afbc3..00000000 --- a/node_modules/core-js-pure/features/string/virtual/pad-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/pad-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/repeat.js b/node_modules/core-js-pure/features/string/virtual/repeat.js deleted file mode 100644 index b8db5fc5..00000000 --- a/node_modules/core-js-pure/features/string/virtual/repeat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/repeat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/replace-all.js b/node_modules/core-js-pure/features/string/virtual/replace-all.js deleted file mode 100644 index 781f261d..00000000 --- a/node_modules/core-js-pure/features/string/virtual/replace-all.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../../modules/esnext.string.replace-all'); -var entryVirtual = require('../../../internals/entry-virtual'); - -module.exports = entryVirtual('String').replaceAll; diff --git a/node_modules/core-js-pure/features/string/virtual/small.js b/node_modules/core-js-pure/features/string/virtual/small.js deleted file mode 100644 index 1dd357be..00000000 --- a/node_modules/core-js-pure/features/string/virtual/small.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/small'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/starts-with.js b/node_modules/core-js-pure/features/string/virtual/starts-with.js deleted file mode 100644 index 9a9145db..00000000 --- a/node_modules/core-js-pure/features/string/virtual/starts-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/starts-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/strike.js b/node_modules/core-js-pure/features/string/virtual/strike.js deleted file mode 100644 index 4aa28cc7..00000000 --- a/node_modules/core-js-pure/features/string/virtual/strike.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/strike'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/sub.js b/node_modules/core-js-pure/features/string/virtual/sub.js deleted file mode 100644 index a1b2c3a8..00000000 --- a/node_modules/core-js-pure/features/string/virtual/sub.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/sub'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/sup.js b/node_modules/core-js-pure/features/string/virtual/sup.js deleted file mode 100644 index dc604fe7..00000000 --- a/node_modules/core-js-pure/features/string/virtual/sup.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/sup'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/trim-end.js b/node_modules/core-js-pure/features/string/virtual/trim-end.js deleted file mode 100644 index 04e5ad90..00000000 --- a/node_modules/core-js-pure/features/string/virtual/trim-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/trim-left.js b/node_modules/core-js-pure/features/string/virtual/trim-left.js deleted file mode 100644 index 571fb017..00000000 --- a/node_modules/core-js-pure/features/string/virtual/trim-left.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-left'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/trim-right.js b/node_modules/core-js-pure/features/string/virtual/trim-right.js deleted file mode 100644 index aab8b09d..00000000 --- a/node_modules/core-js-pure/features/string/virtual/trim-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/trim-start.js b/node_modules/core-js-pure/features/string/virtual/trim-start.js deleted file mode 100644 index c7fd1b27..00000000 --- a/node_modules/core-js-pure/features/string/virtual/trim-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/string/virtual/trim.js b/node_modules/core-js-pure/features/string/virtual/trim.js deleted file mode 100644 index d95c2e1e..00000000 --- a/node_modules/core-js-pure/features/string/virtual/trim.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/async-dispose.js b/node_modules/core-js-pure/features/symbol/async-dispose.js deleted file mode 100644 index 195abe1d..00000000 --- a/node_modules/core-js-pure/features/symbol/async-dispose.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.symbol.async-dispose'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('asyncDispose'); diff --git a/node_modules/core-js-pure/features/symbol/async-iterator.js b/node_modules/core-js-pure/features/symbol/async-iterator.js deleted file mode 100644 index a6243292..00000000 --- a/node_modules/core-js-pure/features/symbol/async-iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/async-iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/description.js b/node_modules/core-js-pure/features/symbol/description.js deleted file mode 100644 index 7bb4b2bc..00000000 --- a/node_modules/core-js-pure/features/symbol/description.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.symbol.description'); diff --git a/node_modules/core-js-pure/features/symbol/dispose.js b/node_modules/core-js-pure/features/symbol/dispose.js deleted file mode 100644 index 71a4d504..00000000 --- a/node_modules/core-js-pure/features/symbol/dispose.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.symbol.dispose'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('dispose'); diff --git a/node_modules/core-js-pure/features/symbol/for.js b/node_modules/core-js-pure/features/symbol/for.js deleted file mode 100644 index 28b29ae7..00000000 --- a/node_modules/core-js-pure/features/symbol/for.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/for'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/has-instance.js b/node_modules/core-js-pure/features/symbol/has-instance.js deleted file mode 100644 index 0334558b..00000000 --- a/node_modules/core-js-pure/features/symbol/has-instance.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/has-instance'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/index.js b/node_modules/core-js-pure/features/symbol/index.js deleted file mode 100644 index 36b052ae..00000000 --- a/node_modules/core-js-pure/features/symbol/index.js +++ /dev/null @@ -1,9 +0,0 @@ -var parent = require('../../es/symbol'); -require('../../modules/esnext.symbol.async-dispose'); -require('../../modules/esnext.symbol.dispose'); -require('../../modules/esnext.symbol.observable'); -require('../../modules/esnext.symbol.pattern-match'); -// TODO: Remove from `core-js@4` -require('../../modules/esnext.symbol.replace-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/is-concat-spreadable.js b/node_modules/core-js-pure/features/symbol/is-concat-spreadable.js deleted file mode 100644 index 7dc1d261..00000000 --- a/node_modules/core-js-pure/features/symbol/is-concat-spreadable.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/is-concat-spreadable'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/iterator.js b/node_modules/core-js-pure/features/symbol/iterator.js deleted file mode 100644 index 78f0139f..00000000 --- a/node_modules/core-js-pure/features/symbol/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/key-for.js b/node_modules/core-js-pure/features/symbol/key-for.js deleted file mode 100644 index 4f76f821..00000000 --- a/node_modules/core-js-pure/features/symbol/key-for.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/key-for'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/match-all.js b/node_modules/core-js-pure/features/symbol/match-all.js deleted file mode 100644 index 6be44446..00000000 --- a/node_modules/core-js-pure/features/symbol/match-all.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/match.js b/node_modules/core-js-pure/features/symbol/match.js deleted file mode 100644 index 2a502e4a..00000000 --- a/node_modules/core-js-pure/features/symbol/match.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/match'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/observable.js b/node_modules/core-js-pure/features/symbol/observable.js deleted file mode 100644 index f1fa6cb1..00000000 --- a/node_modules/core-js-pure/features/symbol/observable.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.symbol.observable'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('observable'); diff --git a/node_modules/core-js-pure/features/symbol/pattern-match.js b/node_modules/core-js-pure/features/symbol/pattern-match.js deleted file mode 100644 index 98ffbb0f..00000000 --- a/node_modules/core-js-pure/features/symbol/pattern-match.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/esnext.symbol.pattern-match'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('patternMatch'); diff --git a/node_modules/core-js-pure/features/symbol/replace-all.js b/node_modules/core-js-pure/features/symbol/replace-all.js deleted file mode 100644 index 011b117b..00000000 --- a/node_modules/core-js-pure/features/symbol/replace-all.js +++ /dev/null @@ -1,5 +0,0 @@ -// TODO: Remove from `core-js@4` -require('../../modules/esnext.symbol.replace-all'); -var WrappedWellKnownSymbolModule = require('../../internals/well-known-symbol-wrapped'); - -module.exports = WrappedWellKnownSymbolModule.f('replaceAll'); diff --git a/node_modules/core-js-pure/features/symbol/replace.js b/node_modules/core-js-pure/features/symbol/replace.js deleted file mode 100644 index 225f7feb..00000000 --- a/node_modules/core-js-pure/features/symbol/replace.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/replace'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/search.js b/node_modules/core-js-pure/features/symbol/search.js deleted file mode 100644 index dd25b55d..00000000 --- a/node_modules/core-js-pure/features/symbol/search.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/search'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/species.js b/node_modules/core-js-pure/features/symbol/species.js deleted file mode 100644 index 6d3c4183..00000000 --- a/node_modules/core-js-pure/features/symbol/species.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/species'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/split.js b/node_modules/core-js-pure/features/symbol/split.js deleted file mode 100644 index 209b2121..00000000 --- a/node_modules/core-js-pure/features/symbol/split.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/split'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/to-primitive.js b/node_modules/core-js-pure/features/symbol/to-primitive.js deleted file mode 100644 index cd15ff51..00000000 --- a/node_modules/core-js-pure/features/symbol/to-primitive.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/to-primitive'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/to-string-tag.js b/node_modules/core-js-pure/features/symbol/to-string-tag.js deleted file mode 100644 index 69483507..00000000 --- a/node_modules/core-js-pure/features/symbol/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/to-string-tag'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/symbol/unscopables.js b/node_modules/core-js-pure/features/symbol/unscopables.js deleted file mode 100644 index a9d78201..00000000 --- a/node_modules/core-js-pure/features/symbol/unscopables.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/unscopables'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/copy-within.js b/node_modules/core-js-pure/features/typed-array/copy-within.js deleted file mode 100644 index 1352cec7..00000000 --- a/node_modules/core-js-pure/features/typed-array/copy-within.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.copy-within'); diff --git a/node_modules/core-js-pure/features/typed-array/entries.js b/node_modules/core-js-pure/features/typed-array/entries.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/features/typed-array/entries.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/features/typed-array/every.js b/node_modules/core-js-pure/features/typed-array/every.js deleted file mode 100644 index 681164be..00000000 --- a/node_modules/core-js-pure/features/typed-array/every.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.every'); diff --git a/node_modules/core-js-pure/features/typed-array/fill.js b/node_modules/core-js-pure/features/typed-array/fill.js deleted file mode 100644 index 4d92ac66..00000000 --- a/node_modules/core-js-pure/features/typed-array/fill.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.fill'); diff --git a/node_modules/core-js-pure/features/typed-array/filter.js b/node_modules/core-js-pure/features/typed-array/filter.js deleted file mode 100644 index 7d0a630f..00000000 --- a/node_modules/core-js-pure/features/typed-array/filter.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.filter'); diff --git a/node_modules/core-js-pure/features/typed-array/find-index.js b/node_modules/core-js-pure/features/typed-array/find-index.js deleted file mode 100644 index 039cd5ed..00000000 --- a/node_modules/core-js-pure/features/typed-array/find-index.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.find-index'); diff --git a/node_modules/core-js-pure/features/typed-array/find.js b/node_modules/core-js-pure/features/typed-array/find.js deleted file mode 100644 index b3251b9a..00000000 --- a/node_modules/core-js-pure/features/typed-array/find.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.find'); diff --git a/node_modules/core-js-pure/features/typed-array/float32-array.js b/node_modules/core-js-pure/features/typed-array/float32-array.js deleted file mode 100644 index c16ee63d..00000000 --- a/node_modules/core-js-pure/features/typed-array/float32-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/float32-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/float64-array.js b/node_modules/core-js-pure/features/typed-array/float64-array.js deleted file mode 100644 index 445dc3de..00000000 --- a/node_modules/core-js-pure/features/typed-array/float64-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/float64-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/for-each.js b/node_modules/core-js-pure/features/typed-array/for-each.js deleted file mode 100644 index defe03a8..00000000 --- a/node_modules/core-js-pure/features/typed-array/for-each.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.for-each'); diff --git a/node_modules/core-js-pure/features/typed-array/from.js b/node_modules/core-js-pure/features/typed-array/from.js deleted file mode 100644 index e0f34441..00000000 --- a/node_modules/core-js-pure/features/typed-array/from.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.from'); diff --git a/node_modules/core-js-pure/features/typed-array/includes.js b/node_modules/core-js-pure/features/typed-array/includes.js deleted file mode 100644 index 5ff65f96..00000000 --- a/node_modules/core-js-pure/features/typed-array/includes.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.includes'); diff --git a/node_modules/core-js-pure/features/typed-array/index-of.js b/node_modules/core-js-pure/features/typed-array/index-of.js deleted file mode 100644 index 87081c0f..00000000 --- a/node_modules/core-js-pure/features/typed-array/index-of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.index-of'); diff --git a/node_modules/core-js-pure/features/typed-array/index.js b/node_modules/core-js-pure/features/typed-array/index.js deleted file mode 100644 index 20a271d8..00000000 --- a/node_modules/core-js-pure/features/typed-array/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/int16-array.js b/node_modules/core-js-pure/features/typed-array/int16-array.js deleted file mode 100644 index 7ffdbae5..00000000 --- a/node_modules/core-js-pure/features/typed-array/int16-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/int16-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/int32-array.js b/node_modules/core-js-pure/features/typed-array/int32-array.js deleted file mode 100644 index bd2e75a8..00000000 --- a/node_modules/core-js-pure/features/typed-array/int32-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/int32-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/int8-array.js b/node_modules/core-js-pure/features/typed-array/int8-array.js deleted file mode 100644 index 8f1a54b7..00000000 --- a/node_modules/core-js-pure/features/typed-array/int8-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/int8-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/iterator.js b/node_modules/core-js-pure/features/typed-array/iterator.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/features/typed-array/iterator.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/features/typed-array/join.js b/node_modules/core-js-pure/features/typed-array/join.js deleted file mode 100644 index 431129c9..00000000 --- a/node_modules/core-js-pure/features/typed-array/join.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.join'); diff --git a/node_modules/core-js-pure/features/typed-array/keys.js b/node_modules/core-js-pure/features/typed-array/keys.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/features/typed-array/keys.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/features/typed-array/last-index-of.js b/node_modules/core-js-pure/features/typed-array/last-index-of.js deleted file mode 100644 index 5682bf44..00000000 --- a/node_modules/core-js-pure/features/typed-array/last-index-of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.last-index-of'); diff --git a/node_modules/core-js-pure/features/typed-array/map.js b/node_modules/core-js-pure/features/typed-array/map.js deleted file mode 100644 index db08fed3..00000000 --- a/node_modules/core-js-pure/features/typed-array/map.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.map'); diff --git a/node_modules/core-js-pure/features/typed-array/of.js b/node_modules/core-js-pure/features/typed-array/of.js deleted file mode 100644 index 121bf5e2..00000000 --- a/node_modules/core-js-pure/features/typed-array/of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.of'); diff --git a/node_modules/core-js-pure/features/typed-array/reduce-right.js b/node_modules/core-js-pure/features/typed-array/reduce-right.js deleted file mode 100644 index cbd321fc..00000000 --- a/node_modules/core-js-pure/features/typed-array/reduce-right.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reduce-right'); diff --git a/node_modules/core-js-pure/features/typed-array/reduce.js b/node_modules/core-js-pure/features/typed-array/reduce.js deleted file mode 100644 index e2a6f282..00000000 --- a/node_modules/core-js-pure/features/typed-array/reduce.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reduce'); diff --git a/node_modules/core-js-pure/features/typed-array/reverse.js b/node_modules/core-js-pure/features/typed-array/reverse.js deleted file mode 100644 index 14995f49..00000000 --- a/node_modules/core-js-pure/features/typed-array/reverse.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reverse'); diff --git a/node_modules/core-js-pure/features/typed-array/set.js b/node_modules/core-js-pure/features/typed-array/set.js deleted file mode 100644 index 5330e229..00000000 --- a/node_modules/core-js-pure/features/typed-array/set.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.set'); diff --git a/node_modules/core-js-pure/features/typed-array/slice.js b/node_modules/core-js-pure/features/typed-array/slice.js deleted file mode 100644 index 37fb8c14..00000000 --- a/node_modules/core-js-pure/features/typed-array/slice.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.slice'); diff --git a/node_modules/core-js-pure/features/typed-array/some.js b/node_modules/core-js-pure/features/typed-array/some.js deleted file mode 100644 index 495c322f..00000000 --- a/node_modules/core-js-pure/features/typed-array/some.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.some'); diff --git a/node_modules/core-js-pure/features/typed-array/sort.js b/node_modules/core-js-pure/features/typed-array/sort.js deleted file mode 100644 index d6c7e30b..00000000 --- a/node_modules/core-js-pure/features/typed-array/sort.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.sort'); diff --git a/node_modules/core-js-pure/features/typed-array/subarray.js b/node_modules/core-js-pure/features/typed-array/subarray.js deleted file mode 100644 index dbad4ca2..00000000 --- a/node_modules/core-js-pure/features/typed-array/subarray.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.subarray'); diff --git a/node_modules/core-js-pure/features/typed-array/to-locale-string.js b/node_modules/core-js-pure/features/typed-array/to-locale-string.js deleted file mode 100644 index 12c809e2..00000000 --- a/node_modules/core-js-pure/features/typed-array/to-locale-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.to-locale-string'); diff --git a/node_modules/core-js-pure/features/typed-array/to-string.js b/node_modules/core-js-pure/features/typed-array/to-string.js deleted file mode 100644 index bf941607..00000000 --- a/node_modules/core-js-pure/features/typed-array/to-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.to-string'); diff --git a/node_modules/core-js-pure/features/typed-array/uint16-array.js b/node_modules/core-js-pure/features/typed-array/uint16-array.js deleted file mode 100644 index f35dc05e..00000000 --- a/node_modules/core-js-pure/features/typed-array/uint16-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint16-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/uint32-array.js b/node_modules/core-js-pure/features/typed-array/uint32-array.js deleted file mode 100644 index 197c8de9..00000000 --- a/node_modules/core-js-pure/features/typed-array/uint32-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint32-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/uint8-array.js b/node_modules/core-js-pure/features/typed-array/uint8-array.js deleted file mode 100644 index 7d853e48..00000000 --- a/node_modules/core-js-pure/features/typed-array/uint8-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint8-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/uint8-clamped-array.js b/node_modules/core-js-pure/features/typed-array/uint8-clamped-array.js deleted file mode 100644 index a1e131c2..00000000 --- a/node_modules/core-js-pure/features/typed-array/uint8-clamped-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint8-clamped-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/typed-array/values.js b/node_modules/core-js-pure/features/typed-array/values.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/features/typed-array/values.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/features/url-search-params/index.js b/node_modules/core-js-pure/features/url-search-params/index.js deleted file mode 100644 index 46c415b8..00000000 --- a/node_modules/core-js-pure/features/url-search-params/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/url-search-params'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/url/index.js b/node_modules/core-js-pure/features/url/index.js deleted file mode 100644 index fa902afd..00000000 --- a/node_modules/core-js-pure/features/url/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/url'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/url/to-json.js b/node_modules/core-js-pure/features/url/to-json.js deleted file mode 100644 index e7cafe81..00000000 --- a/node_modules/core-js-pure/features/url/to-json.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../stable/url/to-json'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/weak-map/delete-all.js b/node_modules/core-js-pure/features/weak-map/delete-all.js deleted file mode 100644 index 00163f2d..00000000 --- a/node_modules/core-js-pure/features/weak-map/delete-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.weak-map'); -require('../../modules/esnext.weak-map.delete-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('WeakMap', 'deleteAll'); diff --git a/node_modules/core-js-pure/features/weak-map/from.js b/node_modules/core-js-pure/features/weak-map/from.js deleted file mode 100644 index 159aecd7..00000000 --- a/node_modules/core-js-pure/features/weak-map/from.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.string.iterator'); -require('../../modules/es.weak-map'); -require('../../modules/esnext.weak-map.from'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var WeakMap = path.WeakMap; -var weakMapFrom = WeakMap.from; - -module.exports = function from(source, mapFn, thisArg) { - return weakMapFrom.call(typeof this === 'function' ? this : WeakMap, source, mapFn, thisArg); -}; diff --git a/node_modules/core-js-pure/features/weak-map/index.js b/node_modules/core-js-pure/features/weak-map/index.js deleted file mode 100644 index ce5f384d..00000000 --- a/node_modules/core-js-pure/features/weak-map/index.js +++ /dev/null @@ -1,7 +0,0 @@ -var parent = require('../../es/weak-map'); -require('../../modules/esnext.weak-map.from'); -require('../../modules/esnext.weak-map.of'); -require('../../modules/esnext.weak-map.delete-all'); -require('../../modules/esnext.weak-map.upsert'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/weak-map/of.js b/node_modules/core-js-pure/features/weak-map/of.js deleted file mode 100644 index 5bdf627e..00000000 --- a/node_modules/core-js-pure/features/weak-map/of.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.string.iterator'); -require('../../modules/es.weak-map'); -require('../../modules/esnext.weak-map.of'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var WeakMap = path.WeakMap; -var weakMapOf = WeakMap.of; - -module.exports = function of() { - return weakMapOf.apply(typeof this === 'function' ? this : WeakMap, arguments); -}; diff --git a/node_modules/core-js-pure/features/weak-map/upsert.js b/node_modules/core-js-pure/features/weak-map/upsert.js deleted file mode 100644 index 509f9edc..00000000 --- a/node_modules/core-js-pure/features/weak-map/upsert.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.weak-map'); -require('../../modules/esnext.weak-map.upsert'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('WeakMap', 'upsert'); diff --git a/node_modules/core-js-pure/features/weak-set/add-all.js b/node_modules/core-js-pure/features/weak-set/add-all.js deleted file mode 100644 index cf762429..00000000 --- a/node_modules/core-js-pure/features/weak-set/add-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.weak-set'); -require('../../modules/esnext.weak-set.add-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('WeakSet', 'addAll'); diff --git a/node_modules/core-js-pure/features/weak-set/delete-all.js b/node_modules/core-js-pure/features/weak-set/delete-all.js deleted file mode 100644 index 21e7b438..00000000 --- a/node_modules/core-js-pure/features/weak-set/delete-all.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/es.weak-set'); -require('../../modules/esnext.weak-set.delete-all'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('WeakSet', 'deleteAll'); diff --git a/node_modules/core-js-pure/features/weak-set/from.js b/node_modules/core-js-pure/features/weak-set/from.js deleted file mode 100644 index cd8716af..00000000 --- a/node_modules/core-js-pure/features/weak-set/from.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.string.iterator'); -require('../../modules/es.weak-set'); -require('../../modules/esnext.weak-set.from'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var WeakSet = path.WeakSet; -var weakSetfrom = WeakSet.from; - -module.exports = function from(source, mapFn, thisArg) { - return weakSetfrom.call(typeof this === 'function' ? this : WeakSet, source, mapFn, thisArg); -}; diff --git a/node_modules/core-js-pure/features/weak-set/index.js b/node_modules/core-js-pure/features/weak-set/index.js deleted file mode 100644 index 00ab5e0c..00000000 --- a/node_modules/core-js-pure/features/weak-set/index.js +++ /dev/null @@ -1,7 +0,0 @@ -var parent = require('../../es/weak-set'); -require('../../modules/esnext.weak-set.add-all'); -require('../../modules/esnext.weak-set.delete-all'); -require('../../modules/esnext.weak-set.from'); -require('../../modules/esnext.weak-set.of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/features/weak-set/of.js b/node_modules/core-js-pure/features/weak-set/of.js deleted file mode 100644 index 4937c39b..00000000 --- a/node_modules/core-js-pure/features/weak-set/of.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -require('../../modules/es.string.iterator'); -require('../../modules/es.weak-set'); -require('../../modules/esnext.weak-set.of'); -require('../../modules/web.dom-collections.iterator'); -var path = require('../../internals/path'); - -var WeakSet = path.WeakSet; -var weakSetOf = WeakSet.of; - -module.exports = function of() { - return weakSetOf.apply(typeof this === 'function' ? this : WeakSet, arguments); -}; diff --git a/node_modules/core-js-pure/index.js b/node_modules/core-js-pure/index.js deleted file mode 100644 index 10f0e3fe..00000000 --- a/node_modules/core-js-pure/index.js +++ /dev/null @@ -1,6 +0,0 @@ -require('./es'); -require('./proposals'); -require('./web'); -var path = require('./internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/internals/README.md b/node_modules/core-js-pure/internals/README.md deleted file mode 100644 index f5cca304..00000000 --- a/node_modules/core-js-pure/internals/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains internal parts of `core-js` like helpers. diff --git a/node_modules/core-js-pure/internals/a-function.js b/node_modules/core-js-pure/internals/a-function.js deleted file mode 100644 index b597471f..00000000 --- a/node_modules/core-js-pure/internals/a-function.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = function (it) { - if (typeof it != 'function') { - throw TypeError(String(it) + ' is not a function'); - } return it; -}; diff --git a/node_modules/core-js-pure/internals/a-possible-prototype.js b/node_modules/core-js-pure/internals/a-possible-prototype.js deleted file mode 100644 index 7736376e..00000000 --- a/node_modules/core-js-pure/internals/a-possible-prototype.js +++ /dev/null @@ -1,7 +0,0 @@ -var isObject = require('../internals/is-object'); - -module.exports = function (it) { - if (!isObject(it) && it !== null) { - throw TypeError("Can't set " + String(it) + ' as a prototype'); - } return it; -}; diff --git a/node_modules/core-js-pure/internals/add-to-unscopables.js b/node_modules/core-js-pure/internals/add-to-unscopables.js deleted file mode 100644 index 02ef44ba..00000000 --- a/node_modules/core-js-pure/internals/add-to-unscopables.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = function () { /* empty */ }; diff --git a/node_modules/core-js-pure/internals/advance-string-index.js b/node_modules/core-js-pure/internals/advance-string-index.js deleted file mode 100644 index 700fbf01..00000000 --- a/node_modules/core-js-pure/internals/advance-string-index.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; -var charAt = require('../internals/string-multibyte').charAt; - -// `AdvanceStringIndex` abstract operation -// https://tc39.github.io/ecma262/#sec-advancestringindex -module.exports = function (S, index, unicode) { - return index + (unicode ? charAt(S, index).length : 1); -}; diff --git a/node_modules/core-js-pure/internals/an-instance.js b/node_modules/core-js-pure/internals/an-instance.js deleted file mode 100644 index 6f471ccf..00000000 --- a/node_modules/core-js-pure/internals/an-instance.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = function (it, Constructor, name) { - if (!(it instanceof Constructor)) { - throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation'); - } return it; -}; diff --git a/node_modules/core-js-pure/internals/an-object.js b/node_modules/core-js-pure/internals/an-object.js deleted file mode 100644 index 40557966..00000000 --- a/node_modules/core-js-pure/internals/an-object.js +++ /dev/null @@ -1,7 +0,0 @@ -var isObject = require('../internals/is-object'); - -module.exports = function (it) { - if (!isObject(it)) { - throw TypeError(String(it) + ' is not an object'); - } return it; -}; diff --git a/node_modules/core-js-pure/internals/array-buffer-native.js b/node_modules/core-js-pure/internals/array-buffer-native.js deleted file mode 100644 index 36da2d74..00000000 --- a/node_modules/core-js-pure/internals/array-buffer-native.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = typeof ArrayBuffer !== 'undefined' && typeof DataView !== 'undefined'; diff --git a/node_modules/core-js-pure/internals/array-buffer-view-core.js b/node_modules/core-js-pure/internals/array-buffer-view-core.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/array-buffer-view-core.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/array-buffer.js b/node_modules/core-js-pure/internals/array-buffer.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/array-buffer.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/array-copy-within.js b/node_modules/core-js-pure/internals/array-copy-within.js deleted file mode 100644 index 70c8edbf..00000000 --- a/node_modules/core-js-pure/internals/array-copy-within.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; -var toObject = require('../internals/to-object'); -var toAbsoluteIndex = require('../internals/to-absolute-index'); -var toLength = require('../internals/to-length'); - -var min = Math.min; - -// `Array.prototype.copyWithin` method implementation -// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin -module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { - var O = toObject(this); - var len = toLength(O.length); - var to = toAbsoluteIndex(target, len); - var from = toAbsoluteIndex(start, len); - var end = arguments.length > 2 ? arguments[2] : undefined; - var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); - var inc = 1; - if (from < to && to < from + count) { - inc = -1; - from += count - 1; - to += count - 1; - } - while (count-- > 0) { - if (from in O) O[to] = O[from]; - else delete O[to]; - to += inc; - from += inc; - } return O; -}; diff --git a/node_modules/core-js-pure/internals/array-fill.js b/node_modules/core-js-pure/internals/array-fill.js deleted file mode 100644 index 7c15a04f..00000000 --- a/node_modules/core-js-pure/internals/array-fill.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var toObject = require('../internals/to-object'); -var toAbsoluteIndex = require('../internals/to-absolute-index'); -var toLength = require('../internals/to-length'); - -// `Array.prototype.fill` method implementation -// https://tc39.github.io/ecma262/#sec-array.prototype.fill -module.exports = function fill(value /* , start = 0, end = @length */) { - var O = toObject(this); - var length = toLength(O.length); - var argumentsLength = arguments.length; - var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length); - var end = argumentsLength > 2 ? arguments[2] : undefined; - var endPos = end === undefined ? length : toAbsoluteIndex(end, length); - while (endPos > index) O[index++] = value; - return O; -}; diff --git a/node_modules/core-js-pure/internals/array-for-each.js b/node_modules/core-js-pure/internals/array-for-each.js deleted file mode 100644 index d8872dbd..00000000 --- a/node_modules/core-js-pure/internals/array-for-each.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var $forEach = require('../internals/array-iteration').forEach; -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var STRICT_METHOD = arrayMethodIsStrict('forEach'); -var USES_TO_LENGTH = arrayMethodUsesToLength('forEach'); - -// `Array.prototype.forEach` method implementation -// https://tc39.github.io/ecma262/#sec-array.prototype.foreach -module.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) { - return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); -} : [].forEach; diff --git a/node_modules/core-js-pure/internals/array-from.js b/node_modules/core-js-pure/internals/array-from.js deleted file mode 100644 index 490a3c29..00000000 --- a/node_modules/core-js-pure/internals/array-from.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; -var bind = require('../internals/function-bind-context'); -var toObject = require('../internals/to-object'); -var callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing'); -var isArrayIteratorMethod = require('../internals/is-array-iterator-method'); -var toLength = require('../internals/to-length'); -var createProperty = require('../internals/create-property'); -var getIteratorMethod = require('../internals/get-iterator-method'); - -// `Array.from` method implementation -// https://tc39.github.io/ecma262/#sec-array.from -module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { - var O = toObject(arrayLike); - var C = typeof this == 'function' ? this : Array; - var argumentsLength = arguments.length; - var mapfn = argumentsLength > 1 ? arguments[1] : undefined; - var mapping = mapfn !== undefined; - var iteratorMethod = getIteratorMethod(O); - var index = 0; - var length, result, step, iterator, next, value; - if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2); - // if the target is not iterable or it's an array with the default iterator - use a simple case - if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) { - iterator = iteratorMethod.call(O); - next = iterator.next; - result = new C(); - for (;!(step = next.call(iterator)).done; index++) { - value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value; - createProperty(result, index, value); - } - } else { - length = toLength(O.length); - result = new C(length); - for (;length > index; index++) { - value = mapping ? mapfn(O[index], index) : O[index]; - createProperty(result, index, value); - } - } - result.length = index; - return result; -}; diff --git a/node_modules/core-js-pure/internals/array-includes.js b/node_modules/core-js-pure/internals/array-includes.js deleted file mode 100644 index a4161204..00000000 --- a/node_modules/core-js-pure/internals/array-includes.js +++ /dev/null @@ -1,32 +0,0 @@ -var toIndexedObject = require('../internals/to-indexed-object'); -var toLength = require('../internals/to-length'); -var toAbsoluteIndex = require('../internals/to-absolute-index'); - -// `Array.prototype.{ indexOf, includes }` methods implementation -var createMethod = function (IS_INCLUDES) { - return function ($this, el, fromIndex) { - var O = toIndexedObject($this); - var length = toLength(O.length); - var index = toAbsoluteIndex(fromIndex, length); - var value; - // Array#includes uses SameValueZero equality algorithm - // eslint-disable-next-line no-self-compare - if (IS_INCLUDES && el != el) while (length > index) { - value = O[index++]; - // eslint-disable-next-line no-self-compare - if (value != value) return true; - // Array#indexOf ignores holes, Array#includes - not - } else for (;length > index; index++) { - if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0; - } return !IS_INCLUDES && -1; - }; -}; - -module.exports = { - // `Array.prototype.includes` method - // https://tc39.github.io/ecma262/#sec-array.prototype.includes - includes: createMethod(true), - // `Array.prototype.indexOf` method - // https://tc39.github.io/ecma262/#sec-array.prototype.indexof - indexOf: createMethod(false) -}; diff --git a/node_modules/core-js-pure/internals/array-iteration.js b/node_modules/core-js-pure/internals/array-iteration.js deleted file mode 100644 index 8014dace..00000000 --- a/node_modules/core-js-pure/internals/array-iteration.js +++ /dev/null @@ -1,65 +0,0 @@ -var bind = require('../internals/function-bind-context'); -var IndexedObject = require('../internals/indexed-object'); -var toObject = require('../internals/to-object'); -var toLength = require('../internals/to-length'); -var arraySpeciesCreate = require('../internals/array-species-create'); - -var push = [].push; - -// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation -var createMethod = function (TYPE) { - var IS_MAP = TYPE == 1; - var IS_FILTER = TYPE == 2; - var IS_SOME = TYPE == 3; - var IS_EVERY = TYPE == 4; - var IS_FIND_INDEX = TYPE == 6; - var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; - return function ($this, callbackfn, that, specificCreate) { - var O = toObject($this); - var self = IndexedObject(O); - var boundFunction = bind(callbackfn, that, 3); - var length = toLength(self.length); - var index = 0; - var create = specificCreate || arraySpeciesCreate; - var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; - var value, result; - for (;length > index; index++) if (NO_HOLES || index in self) { - value = self[index]; - result = boundFunction(value, index, O); - if (TYPE) { - if (IS_MAP) target[index] = result; // map - else if (result) switch (TYPE) { - case 3: return true; // some - case 5: return value; // find - case 6: return index; // findIndex - case 2: push.call(target, value); // filter - } else if (IS_EVERY) return false; // every - } - } - return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; - }; -}; - -module.exports = { - // `Array.prototype.forEach` method - // https://tc39.github.io/ecma262/#sec-array.prototype.foreach - forEach: createMethod(0), - // `Array.prototype.map` method - // https://tc39.github.io/ecma262/#sec-array.prototype.map - map: createMethod(1), - // `Array.prototype.filter` method - // https://tc39.github.io/ecma262/#sec-array.prototype.filter - filter: createMethod(2), - // `Array.prototype.some` method - // https://tc39.github.io/ecma262/#sec-array.prototype.some - some: createMethod(3), - // `Array.prototype.every` method - // https://tc39.github.io/ecma262/#sec-array.prototype.every - every: createMethod(4), - // `Array.prototype.find` method - // https://tc39.github.io/ecma262/#sec-array.prototype.find - find: createMethod(5), - // `Array.prototype.findIndex` method - // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex - findIndex: createMethod(6) -}; diff --git a/node_modules/core-js-pure/internals/array-last-index-of.js b/node_modules/core-js-pure/internals/array-last-index-of.js deleted file mode 100644 index 8d1c93c4..00000000 --- a/node_modules/core-js-pure/internals/array-last-index-of.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; -var toIndexedObject = require('../internals/to-indexed-object'); -var toInteger = require('../internals/to-integer'); -var toLength = require('../internals/to-length'); -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var min = Math.min; -var nativeLastIndexOf = [].lastIndexOf; -var NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0; -var STRICT_METHOD = arrayMethodIsStrict('lastIndexOf'); -// For preventing possible almost infinite loop in non-standard implementations, test the forward version of the method -var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 }); -var FORCED = NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH; - -// `Array.prototype.lastIndexOf` method implementation -// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof -module.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { - // convert -0 to +0 - if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0; - var O = toIndexedObject(this); - var length = toLength(O.length); - var index = length - 1; - if (arguments.length > 1) index = min(index, toInteger(arguments[1])); - if (index < 0) index = length + index; - for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0; - return -1; -} : nativeLastIndexOf; diff --git a/node_modules/core-js-pure/internals/array-method-has-species-support.js b/node_modules/core-js-pure/internals/array-method-has-species-support.js deleted file mode 100644 index 0d5d380c..00000000 --- a/node_modules/core-js-pure/internals/array-method-has-species-support.js +++ /dev/null @@ -1,19 +0,0 @@ -var fails = require('../internals/fails'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var V8_VERSION = require('../internals/engine-v8-version'); - -var SPECIES = wellKnownSymbol('species'); - -module.exports = function (METHOD_NAME) { - // We can't use this feature detection in V8 since it causes - // deoptimization and serious performance degradation - // https://github.com/zloirock/core-js/issues/677 - return V8_VERSION >= 51 || !fails(function () { - var array = []; - var constructor = array.constructor = {}; - constructor[SPECIES] = function () { - return { foo: 1 }; - }; - return array[METHOD_NAME](Boolean).foo !== 1; - }); -}; diff --git a/node_modules/core-js-pure/internals/array-method-is-strict.js b/node_modules/core-js-pure/internals/array-method-is-strict.js deleted file mode 100644 index 8ea8df07..00000000 --- a/node_modules/core-js-pure/internals/array-method-is-strict.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var fails = require('../internals/fails'); - -module.exports = function (METHOD_NAME, argument) { - var method = [][METHOD_NAME]; - return !!method && fails(function () { - // eslint-disable-next-line no-useless-call,no-throw-literal - method.call(null, argument || function () { throw 1; }, 1); - }); -}; diff --git a/node_modules/core-js-pure/internals/array-method-uses-to-length.js b/node_modules/core-js-pure/internals/array-method-uses-to-length.js deleted file mode 100644 index 9863b6f4..00000000 --- a/node_modules/core-js-pure/internals/array-method-uses-to-length.js +++ /dev/null @@ -1,27 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var fails = require('../internals/fails'); -var has = require('../internals/has'); - -var defineProperty = Object.defineProperty; -var cache = {}; - -var thrower = function (it) { throw it; }; - -module.exports = function (METHOD_NAME, options) { - if (has(cache, METHOD_NAME)) return cache[METHOD_NAME]; - if (!options) options = {}; - var method = [][METHOD_NAME]; - var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false; - var argument0 = has(options, 0) ? options[0] : thrower; - var argument1 = has(options, 1) ? options[1] : undefined; - - return cache[METHOD_NAME] = !!method && !fails(function () { - if (ACCESSORS && !DESCRIPTORS) return true; - var O = { length: -1 }; - - if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower }); - else O[1] = 1; - - method.call(O, argument0, argument1); - }); -}; diff --git a/node_modules/core-js-pure/internals/array-reduce.js b/node_modules/core-js-pure/internals/array-reduce.js deleted file mode 100644 index 3f170377..00000000 --- a/node_modules/core-js-pure/internals/array-reduce.js +++ /dev/null @@ -1,40 +0,0 @@ -var aFunction = require('../internals/a-function'); -var toObject = require('../internals/to-object'); -var IndexedObject = require('../internals/indexed-object'); -var toLength = require('../internals/to-length'); - -// `Array.prototype.{ reduce, reduceRight }` methods implementation -var createMethod = function (IS_RIGHT) { - return function (that, callbackfn, argumentsLength, memo) { - aFunction(callbackfn); - var O = toObject(that); - var self = IndexedObject(O); - var length = toLength(O.length); - var index = IS_RIGHT ? length - 1 : 0; - var i = IS_RIGHT ? -1 : 1; - if (argumentsLength < 2) while (true) { - if (index in self) { - memo = self[index]; - index += i; - break; - } - index += i; - if (IS_RIGHT ? index < 0 : length <= index) { - throw TypeError('Reduce of empty array with no initial value'); - } - } - for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) { - memo = callbackfn(memo, self[index], index, O); - } - return memo; - }; -}; - -module.exports = { - // `Array.prototype.reduce` method - // https://tc39.github.io/ecma262/#sec-array.prototype.reduce - left: createMethod(false), - // `Array.prototype.reduceRight` method - // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright - right: createMethod(true) -}; diff --git a/node_modules/core-js-pure/internals/array-species-create.js b/node_modules/core-js-pure/internals/array-species-create.js deleted file mode 100644 index 5c6eaabe..00000000 --- a/node_modules/core-js-pure/internals/array-species-create.js +++ /dev/null @@ -1,20 +0,0 @@ -var isObject = require('../internals/is-object'); -var isArray = require('../internals/is-array'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var SPECIES = wellKnownSymbol('species'); - -// `ArraySpeciesCreate` abstract operation -// https://tc39.github.io/ecma262/#sec-arrayspeciescreate -module.exports = function (originalArray, length) { - var C; - if (isArray(originalArray)) { - C = originalArray.constructor; - // cross-realm fallback - if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; - else if (isObject(C)) { - C = C[SPECIES]; - if (C === null) C = undefined; - } - } return new (C === undefined ? Array : C)(length === 0 ? 0 : length); -}; diff --git a/node_modules/core-js-pure/internals/async-iterator-create-proxy.js b/node_modules/core-js-pure/internals/async-iterator-create-proxy.js deleted file mode 100644 index 9e8c5dfe..00000000 --- a/node_modules/core-js-pure/internals/async-iterator-create-proxy.js +++ /dev/null @@ -1,61 +0,0 @@ -'use strict'; -var path = require('../internals/path'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var create = require('../internals/object-create'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var redefineAll = require('../internals/redefine-all'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var InternalStateModule = require('../internals/internal-state'); -var getBuiltIn = require('../internals/get-built-in'); - -var Promise = getBuiltIn('Promise'); - -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.get; - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -var $return = function (value) { - var iterator = getInternalState(this).iterator; - var $$return = iterator['return']; - return $$return === undefined - ? Promise.resolve({ done: true, value: value }) - : anObject($$return.call(iterator, value)); -}; - -var $throw = function (value) { - var iterator = getInternalState(this).iterator; - var $$throw = iterator['throw']; - return $$throw === undefined - ? Promise.reject(value) - : $$throw.call(iterator, value); -}; - -module.exports = function (nextHandler, IS_ITERATOR) { - var AsyncIteratorProxy = function AsyncIterator(state) { - state.next = aFunction(state.iterator.next); - state.done = false; - setInternalState(this, state); - }; - - AsyncIteratorProxy.prototype = redefineAll(create(path.AsyncIterator.prototype), { - next: function next(arg) { - var state = getInternalState(this); - if (state.done) return Promise.resolve({ done: true, value: undefined }); - try { - return Promise.resolve(anObject(nextHandler.call(state, arg, Promise))); - } catch (error) { - return Promise.reject(error); - } - }, - 'return': $return, - 'throw': $throw - }); - - if (!IS_ITERATOR) { - createNonEnumerableProperty(AsyncIteratorProxy.prototype, TO_STRING_TAG, 'Generator'); - } - - return AsyncIteratorProxy; -}; diff --git a/node_modules/core-js-pure/internals/async-iterator-iteration.js b/node_modules/core-js-pure/internals/async-iterator-iteration.js deleted file mode 100644 index 94d25608..00000000 --- a/node_modules/core-js-pure/internals/async-iterator-iteration.js +++ /dev/null @@ -1,61 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var getBuiltIn = require('../internals/get-built-in'); - -var Promise = getBuiltIn('Promise'); -var push = [].push; - -var createMethod = function (TYPE) { - var IS_TO_ARRAY = TYPE == 0; - var IS_FOR_EACH = TYPE == 1; - var IS_EVERY = TYPE == 2; - var IS_SOME = TYPE == 3; - return function (iterator, fn) { - anObject(iterator); - var next = aFunction(iterator.next); - var array = IS_TO_ARRAY ? [] : undefined; - if (!IS_TO_ARRAY) aFunction(fn); - - return new Promise(function (resolve, reject) { - var loop = function () { - try { - Promise.resolve(anObject(next.call(iterator))).then(function (step) { - try { - if (anObject(step).done) { - resolve(IS_TO_ARRAY ? array : IS_SOME ? false : IS_EVERY || undefined); - } else { - var value = step.value; - if (IS_TO_ARRAY) { - push.call(array, value); - loop(); - } else { - Promise.resolve(fn(value)).then(function (result) { - if (IS_FOR_EACH) { - loop(); - } else if (IS_EVERY) { - result ? loop() : resolve(false); - } else { - result ? resolve(IS_SOME || value) : loop(); - } - }, reject); - } - } - } catch (err) { reject(err); } - }, reject); - } catch (error) { reject(error); } - }; - - loop(); - }); - }; -}; - -module.exports = { - toArray: createMethod(0), - forEach: createMethod(1), - every: createMethod(2), - some: createMethod(3), - find: createMethod(4) -}; diff --git a/node_modules/core-js-pure/internals/async-iterator-prototype.js b/node_modules/core-js-pure/internals/async-iterator-prototype.js deleted file mode 100644 index cb509f02..00000000 --- a/node_modules/core-js-pure/internals/async-iterator-prototype.js +++ /dev/null @@ -1,37 +0,0 @@ -var global = require('../internals/global'); -var shared = require('../internals/shared-store'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var has = require('../internals/has'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var IS_PURE = require('../internals/is-pure'); - -var USE_FUNCTION_CONSTRUCTOR = 'USE_FUNCTION_CONSTRUCTOR'; -var ASYNC_ITERATOR = wellKnownSymbol('asyncIterator'); -var AsyncIterator = global.AsyncIterator; -var PassedAsyncIteratorPrototype = shared.AsyncIteratorPrototype; -var AsyncIteratorPrototype, prototype; - -if (!IS_PURE) { - if (PassedAsyncIteratorPrototype) { - AsyncIteratorPrototype = PassedAsyncIteratorPrototype; - } else if (typeof AsyncIterator == 'function') { - AsyncIteratorPrototype = AsyncIterator.prototype; - } else if (shared[USE_FUNCTION_CONSTRUCTOR] || global[USE_FUNCTION_CONSTRUCTOR]) { - try { - // eslint-disable-next-line no-new-func - prototype = getPrototypeOf(getPrototypeOf(getPrototypeOf(Function('return async function*(){}()')()))); - if (getPrototypeOf(prototype) === Object.prototype) AsyncIteratorPrototype = prototype; - } catch (error) { /* empty */ } - } -} - -if (!AsyncIteratorPrototype) AsyncIteratorPrototype = {}; - -if (!has(AsyncIteratorPrototype, ASYNC_ITERATOR)) { - createNonEnumerableProperty(AsyncIteratorPrototype, ASYNC_ITERATOR, function () { - return this; - }); -} - -module.exports = AsyncIteratorPrototype; diff --git a/node_modules/core-js-pure/internals/call-with-safe-iteration-closing.js b/node_modules/core-js-pure/internals/call-with-safe-iteration-closing.js deleted file mode 100644 index 75036565..00000000 --- a/node_modules/core-js-pure/internals/call-with-safe-iteration-closing.js +++ /dev/null @@ -1,13 +0,0 @@ -var anObject = require('../internals/an-object'); - -// call something on iterator step with safe closing on error -module.exports = function (iterator, fn, value, ENTRIES) { - try { - return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); - // 7.4.6 IteratorClose(iterator, completion) - } catch (error) { - var returnMethod = iterator['return']; - if (returnMethod !== undefined) anObject(returnMethod.call(iterator)); - throw error; - } -}; diff --git a/node_modules/core-js-pure/internals/check-correctness-of-iteration.js b/node_modules/core-js-pure/internals/check-correctness-of-iteration.js deleted file mode 100644 index b33ec63e..00000000 --- a/node_modules/core-js-pure/internals/check-correctness-of-iteration.js +++ /dev/null @@ -1,38 +0,0 @@ -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var ITERATOR = wellKnownSymbol('iterator'); -var SAFE_CLOSING = false; - -try { - var called = 0; - var iteratorWithReturn = { - next: function () { - return { done: !!called++ }; - }, - 'return': function () { - SAFE_CLOSING = true; - } - }; - iteratorWithReturn[ITERATOR] = function () { - return this; - }; - // eslint-disable-next-line no-throw-literal - Array.from(iteratorWithReturn, function () { throw 2; }); -} catch (error) { /* empty */ } - -module.exports = function (exec, SKIP_CLOSING) { - if (!SKIP_CLOSING && !SAFE_CLOSING) return false; - var ITERATION_SUPPORT = false; - try { - var object = {}; - object[ITERATOR] = function () { - return { - next: function () { - return { done: ITERATION_SUPPORT = true }; - } - }; - }; - exec(object); - } catch (error) { /* empty */ } - return ITERATION_SUPPORT; -}; diff --git a/node_modules/core-js-pure/internals/classof-raw.js b/node_modules/core-js-pure/internals/classof-raw.js deleted file mode 100644 index 332c0bc0..00000000 --- a/node_modules/core-js-pure/internals/classof-raw.js +++ /dev/null @@ -1,5 +0,0 @@ -var toString = {}.toString; - -module.exports = function (it) { - return toString.call(it).slice(8, -1); -}; diff --git a/node_modules/core-js-pure/internals/classof.js b/node_modules/core-js-pure/internals/classof.js deleted file mode 100644 index 0fd0844b..00000000 --- a/node_modules/core-js-pure/internals/classof.js +++ /dev/null @@ -1,26 +0,0 @@ -var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support'); -var classofRaw = require('../internals/classof-raw'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); -// ES3 wrong here -var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; - -// fallback for IE11 Script Access Denied error -var tryGet = function (it, key) { - try { - return it[key]; - } catch (error) { /* empty */ } -}; - -// getting tag from ES6+ `Object.prototype.toString` -module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { - var O, tag, result; - return it === undefined ? 'Undefined' : it === null ? 'Null' - // @@toStringTag case - : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag - // builtinTag case - : CORRECT_ARGUMENTS ? classofRaw(O) - // ES3 arguments fallback - : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result; -}; diff --git a/node_modules/core-js-pure/internals/collection-add-all.js b/node_modules/core-js-pure/internals/collection-add-all.js deleted file mode 100644 index 86d1a78a..00000000 --- a/node_modules/core-js-pure/internals/collection-add-all.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); - -// https://github.com/tc39/collection-methods -module.exports = function (/* ...elements */) { - var set = anObject(this); - var adder = aFunction(set.add); - for (var k = 0, len = arguments.length; k < len; k++) { - adder.call(set, arguments[k]); - } - return set; -}; diff --git a/node_modules/core-js-pure/internals/collection-delete-all.js b/node_modules/core-js-pure/internals/collection-delete-all.js deleted file mode 100644 index 37b4d483..00000000 --- a/node_modules/core-js-pure/internals/collection-delete-all.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); - -// https://github.com/tc39/collection-methods -module.exports = function (/* ...elements */) { - var collection = anObject(this); - var remover = aFunction(collection['delete']); - var allDeleted = true; - var wasDeleted; - for (var k = 0, len = arguments.length; k < len; k++) { - wasDeleted = remover.call(collection, arguments[k]); - allDeleted = allDeleted && wasDeleted; - } - return !!allDeleted; -}; diff --git a/node_modules/core-js-pure/internals/collection-from.js b/node_modules/core-js-pure/internals/collection-from.js deleted file mode 100644 index 7a4136de..00000000 --- a/node_modules/core-js-pure/internals/collection-from.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-setmap-offrom/ -var aFunction = require('../internals/a-function'); -var bind = require('../internals/function-bind-context'); -var iterate = require('../internals/iterate'); - -module.exports = function from(source /* , mapFn, thisArg */) { - var length = arguments.length; - var mapFn = length > 1 ? arguments[1] : undefined; - var mapping, A, n, boundFunction; - aFunction(this); - mapping = mapFn !== undefined; - if (mapping) aFunction(mapFn); - if (source == undefined) return new this(); - A = []; - if (mapping) { - n = 0; - boundFunction = bind(mapFn, length > 2 ? arguments[2] : undefined, 2); - iterate(source, function (nextItem) { - A.push(boundFunction(nextItem, n++)); - }); - } else { - iterate(source, A.push, A); - } - return new this(A); -}; diff --git a/node_modules/core-js-pure/internals/collection-of.js b/node_modules/core-js-pure/internals/collection-of.js deleted file mode 100644 index e68a1074..00000000 --- a/node_modules/core-js-pure/internals/collection-of.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; -// https://tc39.github.io/proposal-setmap-offrom/ -module.exports = function of() { - var length = arguments.length; - var A = new Array(length); - while (length--) A[length] = arguments[length]; - return new this(A); -}; diff --git a/node_modules/core-js-pure/internals/collection-strong.js b/node_modules/core-js-pure/internals/collection-strong.js deleted file mode 100644 index 2a677987..00000000 --- a/node_modules/core-js-pure/internals/collection-strong.js +++ /dev/null @@ -1,186 +0,0 @@ -'use strict'; -var defineProperty = require('../internals/object-define-property').f; -var create = require('../internals/object-create'); -var redefineAll = require('../internals/redefine-all'); -var bind = require('../internals/function-bind-context'); -var anInstance = require('../internals/an-instance'); -var iterate = require('../internals/iterate'); -var defineIterator = require('../internals/define-iterator'); -var setSpecies = require('../internals/set-species'); -var DESCRIPTORS = require('../internals/descriptors'); -var fastKey = require('../internals/internal-metadata').fastKey; -var InternalStateModule = require('../internals/internal-state'); - -var setInternalState = InternalStateModule.set; -var internalStateGetterFor = InternalStateModule.getterFor; - -module.exports = { - getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, CONSTRUCTOR_NAME); - setInternalState(that, { - type: CONSTRUCTOR_NAME, - index: create(null), - first: undefined, - last: undefined, - size: 0 - }); - if (!DESCRIPTORS) that.size = 0; - if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP); - }); - - var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME); - - var define = function (that, key, value) { - var state = getInternalState(that); - var entry = getEntry(that, key); - var previous, index; - // change existing entry - if (entry) { - entry.value = value; - // create new entry - } else { - state.last = entry = { - index: index = fastKey(key, true), - key: key, - value: value, - previous: previous = state.last, - next: undefined, - removed: false - }; - if (!state.first) state.first = entry; - if (previous) previous.next = entry; - if (DESCRIPTORS) state.size++; - else that.size++; - // add to index - if (index !== 'F') state.index[index] = entry; - } return that; - }; - - var getEntry = function (that, key) { - var state = getInternalState(that); - // fast case - var index = fastKey(key); - var entry; - if (index !== 'F') return state.index[index]; - // frozen object case - for (entry = state.first; entry; entry = entry.next) { - if (entry.key == key) return entry; - } - }; - - redefineAll(C.prototype, { - // 23.1.3.1 Map.prototype.clear() - // 23.2.3.2 Set.prototype.clear() - clear: function clear() { - var that = this; - var state = getInternalState(that); - var data = state.index; - var entry = state.first; - while (entry) { - entry.removed = true; - if (entry.previous) entry.previous = entry.previous.next = undefined; - delete data[entry.index]; - entry = entry.next; - } - state.first = state.last = undefined; - if (DESCRIPTORS) state.size = 0; - else that.size = 0; - }, - // 23.1.3.3 Map.prototype.delete(key) - // 23.2.3.4 Set.prototype.delete(value) - 'delete': function (key) { - var that = this; - var state = getInternalState(that); - var entry = getEntry(that, key); - if (entry) { - var next = entry.next; - var prev = entry.previous; - delete state.index[entry.index]; - entry.removed = true; - if (prev) prev.next = next; - if (next) next.previous = prev; - if (state.first == entry) state.first = next; - if (state.last == entry) state.last = prev; - if (DESCRIPTORS) state.size--; - else that.size--; - } return !!entry; - }, - // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) - // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) - forEach: function forEach(callbackfn /* , that = undefined */) { - var state = getInternalState(this); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var entry; - while (entry = entry ? entry.next : state.first) { - boundFunction(entry.value, entry.key, this); - // revert to the last existing entry - while (entry && entry.removed) entry = entry.previous; - } - }, - // 23.1.3.7 Map.prototype.has(key) - // 23.2.3.7 Set.prototype.has(value) - has: function has(key) { - return !!getEntry(this, key); - } - }); - - redefineAll(C.prototype, IS_MAP ? { - // 23.1.3.6 Map.prototype.get(key) - get: function get(key) { - var entry = getEntry(this, key); - return entry && entry.value; - }, - // 23.1.3.9 Map.prototype.set(key, value) - set: function set(key, value) { - return define(this, key === 0 ? 0 : key, value); - } - } : { - // 23.2.3.1 Set.prototype.add(value) - add: function add(value) { - return define(this, value = value === 0 ? 0 : value, value); - } - }); - if (DESCRIPTORS) defineProperty(C.prototype, 'size', { - get: function () { - return getInternalState(this).size; - } - }); - return C; - }, - setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) { - var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator'; - var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME); - var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME); - // add .keys, .values, .entries, [@@iterator] - // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11 - defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) { - setInternalState(this, { - type: ITERATOR_NAME, - target: iterated, - state: getInternalCollectionState(iterated), - kind: kind, - last: undefined - }); - }, function () { - var state = getInternalIteratorState(this); - var kind = state.kind; - var entry = state.last; - // revert to the last existing entry - while (entry && entry.removed) entry = entry.previous; - // get next entry - if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) { - // or finish the iteration - state.target = undefined; - return { value: undefined, done: true }; - } - // return step by kind - if (kind == 'keys') return { value: entry.key, done: false }; - if (kind == 'values') return { value: entry.value, done: false }; - return { value: [entry.key, entry.value], done: false }; - }, IS_MAP ? 'entries' : 'values', !IS_MAP, true); - - // add [@@species], 23.1.2.2, 23.2.2.2 - setSpecies(CONSTRUCTOR_NAME); - } -}; diff --git a/node_modules/core-js-pure/internals/collection-weak.js b/node_modules/core-js-pure/internals/collection-weak.js deleted file mode 100644 index ac8a413a..00000000 --- a/node_modules/core-js-pure/internals/collection-weak.js +++ /dev/null @@ -1,121 +0,0 @@ -'use strict'; -var redefineAll = require('../internals/redefine-all'); -var getWeakData = require('../internals/internal-metadata').getWeakData; -var anObject = require('../internals/an-object'); -var isObject = require('../internals/is-object'); -var anInstance = require('../internals/an-instance'); -var iterate = require('../internals/iterate'); -var ArrayIterationModule = require('../internals/array-iteration'); -var $has = require('../internals/has'); -var InternalStateModule = require('../internals/internal-state'); - -var setInternalState = InternalStateModule.set; -var internalStateGetterFor = InternalStateModule.getterFor; -var find = ArrayIterationModule.find; -var findIndex = ArrayIterationModule.findIndex; -var id = 0; - -// fallback for uncaught frozen keys -var uncaughtFrozenStore = function (store) { - return store.frozen || (store.frozen = new UncaughtFrozenStore()); -}; - -var UncaughtFrozenStore = function () { - this.entries = []; -}; - -var findUncaughtFrozen = function (store, key) { - return find(store.entries, function (it) { - return it[0] === key; - }); -}; - -UncaughtFrozenStore.prototype = { - get: function (key) { - var entry = findUncaughtFrozen(this, key); - if (entry) return entry[1]; - }, - has: function (key) { - return !!findUncaughtFrozen(this, key); - }, - set: function (key, value) { - var entry = findUncaughtFrozen(this, key); - if (entry) entry[1] = value; - else this.entries.push([key, value]); - }, - 'delete': function (key) { - var index = findIndex(this.entries, function (it) { - return it[0] === key; - }); - if (~index) this.entries.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) { - var C = wrapper(function (that, iterable) { - anInstance(that, C, CONSTRUCTOR_NAME); - setInternalState(that, { - type: CONSTRUCTOR_NAME, - id: id++, - frozen: undefined - }); - if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP); - }); - - var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME); - - var define = function (that, key, value) { - var state = getInternalState(that); - var data = getWeakData(anObject(key), true); - if (data === true) uncaughtFrozenStore(state).set(key, value); - else data[state.id] = value; - return that; - }; - - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function (key) { - var state = getInternalState(this); - if (!isObject(key)) return false; - var data = getWeakData(key); - if (data === true) return uncaughtFrozenStore(state)['delete'](key); - return data && $has(data, state.id) && delete data[state.id]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key) { - var state = getInternalState(this); - if (!isObject(key)) return false; - var data = getWeakData(key); - if (data === true) return uncaughtFrozenStore(state).has(key); - return data && $has(data, state.id); - } - }); - - redefineAll(C.prototype, IS_MAP ? { - // 23.3.3.3 WeakMap.prototype.get(key) - get: function get(key) { - var state = getInternalState(this); - if (isObject(key)) { - var data = getWeakData(key); - if (data === true) return uncaughtFrozenStore(state).get(key); - return data ? data[state.id] : undefined; - } - }, - // 23.3.3.5 WeakMap.prototype.set(key, value) - set: function set(key, value) { - return define(this, key, value); - } - } : { - // 23.4.3.1 WeakSet.prototype.add(value) - add: function add(value) { - return define(this, value, true); - } - }); - - return C; - } -}; diff --git a/node_modules/core-js-pure/internals/collection.js b/node_modules/core-js-pure/internals/collection.js deleted file mode 100644 index a50e8923..00000000 --- a/node_modules/core-js-pure/internals/collection.js +++ /dev/null @@ -1,73 +0,0 @@ -'use strict'; -var $ = require('./export'); -var global = require('../internals/global'); -var InternalMetadataModule = require('../internals/internal-metadata'); -var fails = require('../internals/fails'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var iterate = require('../internals/iterate'); -var anInstance = require('../internals/an-instance'); -var isObject = require('../internals/is-object'); -var setToStringTag = require('../internals/set-to-string-tag'); -var defineProperty = require('../internals/object-define-property').f; -var forEach = require('../internals/array-iteration').forEach; -var DESCRIPTORS = require('../internals/descriptors'); -var InternalStateModule = require('../internals/internal-state'); - -var setInternalState = InternalStateModule.set; -var internalStateGetterFor = InternalStateModule.getterFor; - -module.exports = function (CONSTRUCTOR_NAME, wrapper, common) { - var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1; - var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1; - var ADDER = IS_MAP ? 'set' : 'add'; - var NativeConstructor = global[CONSTRUCTOR_NAME]; - var NativePrototype = NativeConstructor && NativeConstructor.prototype; - var exported = {}; - var Constructor; - - if (!DESCRIPTORS || typeof NativeConstructor != 'function' - || !(IS_WEAK || NativePrototype.forEach && !fails(function () { new NativeConstructor().entries().next(); })) - ) { - // create collection constructor - Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER); - InternalMetadataModule.REQUIRED = true; - } else { - Constructor = wrapper(function (target, iterable) { - setInternalState(anInstance(target, Constructor, CONSTRUCTOR_NAME), { - type: CONSTRUCTOR_NAME, - collection: new NativeConstructor() - }); - if (iterable != undefined) iterate(iterable, target[ADDER], target, IS_MAP); - }); - - var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME); - - forEach(['add', 'clear', 'delete', 'forEach', 'get', 'has', 'set', 'keys', 'values', 'entries'], function (KEY) { - var IS_ADDER = KEY == 'add' || KEY == 'set'; - if (KEY in NativePrototype && !(IS_WEAK && KEY == 'clear')) { - createNonEnumerableProperty(Constructor.prototype, KEY, function (a, b) { - var collection = getInternalState(this).collection; - if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false; - var result = collection[KEY](a === 0 ? 0 : a, b); - return IS_ADDER ? this : result; - }); - } - }); - - IS_WEAK || defineProperty(Constructor.prototype, 'size', { - configurable: true, - get: function () { - return getInternalState(this).collection.size; - } - }); - } - - setToStringTag(Constructor, CONSTRUCTOR_NAME, false, true); - - exported[CONSTRUCTOR_NAME] = Constructor; - $({ global: true, forced: true }, exported); - - if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP); - - return Constructor; -}; diff --git a/node_modules/core-js-pure/internals/composite-key.js b/node_modules/core-js-pure/internals/composite-key.js deleted file mode 100644 index 68a38c96..00000000 --- a/node_modules/core-js-pure/internals/composite-key.js +++ /dev/null @@ -1,43 +0,0 @@ -// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` -var Map = require('../modules/es.map'); -var WeakMap = require('../modules/es.weak-map'); -var create = require('../internals/object-create'); -var isObject = require('../internals/is-object'); - -var Node = function () { - // keys - this.object = null; - this.symbol = null; - // child nodes - this.primitives = null; - this.objectsByIndex = create(null); -}; - -Node.prototype.get = function (key, initializer) { - return this[key] || (this[key] = initializer()); -}; - -Node.prototype.next = function (i, it, IS_OBJECT) { - var store = IS_OBJECT - ? this.objectsByIndex[i] || (this.objectsByIndex[i] = new WeakMap()) - : this.primitives || (this.primitives = new Map()); - var entry = store.get(it); - if (!entry) store.set(it, entry = new Node()); - return entry; -}; - -var root = new Node(); - -module.exports = function () { - var active = root; - var length = arguments.length; - var i, it; - // for prevent leaking, start from objects - for (i = 0; i < length; i++) { - if (isObject(it = arguments[i])) active = active.next(i, it, true); - } - if (this === Object && active === root) throw TypeError('Composite keys must contain a non-primitive component'); - for (i = 0; i < length; i++) { - if (!isObject(it = arguments[i])) active = active.next(i, it, false); - } return active; -}; diff --git a/node_modules/core-js-pure/internals/copy-constructor-properties.js b/node_modules/core-js-pure/internals/copy-constructor-properties.js deleted file mode 100644 index 214a819d..00000000 --- a/node_modules/core-js-pure/internals/copy-constructor-properties.js +++ /dev/null @@ -1,14 +0,0 @@ -var has = require('../internals/has'); -var ownKeys = require('../internals/own-keys'); -var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor'); -var definePropertyModule = require('../internals/object-define-property'); - -module.exports = function (target, source) { - var keys = ownKeys(source); - var defineProperty = definePropertyModule.f; - var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key)); - } -}; diff --git a/node_modules/core-js-pure/internals/correct-is-regexp-logic.js b/node_modules/core-js-pure/internals/correct-is-regexp-logic.js deleted file mode 100644 index f0d753fd..00000000 --- a/node_modules/core-js-pure/internals/correct-is-regexp-logic.js +++ /dev/null @@ -1,15 +0,0 @@ -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var MATCH = wellKnownSymbol('match'); - -module.exports = function (METHOD_NAME) { - var regexp = /./; - try { - '/./'[METHOD_NAME](regexp); - } catch (e) { - try { - regexp[MATCH] = false; - return '/./'[METHOD_NAME](regexp); - } catch (f) { /* empty */ } - } return false; -}; diff --git a/node_modules/core-js-pure/internals/correct-prototype-getter.js b/node_modules/core-js-pure/internals/correct-prototype-getter.js deleted file mode 100644 index 6cd8f404..00000000 --- a/node_modules/core-js-pure/internals/correct-prototype-getter.js +++ /dev/null @@ -1,7 +0,0 @@ -var fails = require('../internals/fails'); - -module.exports = !fails(function () { - function F() { /* empty */ } - F.prototype.constructor = null; - return Object.getPrototypeOf(new F()) !== F.prototype; -}); diff --git a/node_modules/core-js-pure/internals/create-html.js b/node_modules/core-js-pure/internals/create-html.js deleted file mode 100644 index 57e560c3..00000000 --- a/node_modules/core-js-pure/internals/create-html.js +++ /dev/null @@ -1,12 +0,0 @@ -var requireObjectCoercible = require('../internals/require-object-coercible'); - -var quot = /"/g; - -// B.2.3.2.1 CreateHTML(string, tag, attribute, value) -// https://tc39.github.io/ecma262/#sec-createhtml -module.exports = function (string, tag, attribute, value) { - var S = String(requireObjectCoercible(string)); - var p1 = '<' + tag; - if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"'; - return p1 + '>' + S + ''; -}; diff --git a/node_modules/core-js-pure/internals/create-iterator-constructor.js b/node_modules/core-js-pure/internals/create-iterator-constructor.js deleted file mode 100644 index f9dbdb78..00000000 --- a/node_modules/core-js-pure/internals/create-iterator-constructor.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var IteratorPrototype = require('../internals/iterators-core').IteratorPrototype; -var create = require('../internals/object-create'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); -var setToStringTag = require('../internals/set-to-string-tag'); -var Iterators = require('../internals/iterators'); - -var returnThis = function () { return this; }; - -module.exports = function (IteratorConstructor, NAME, next) { - var TO_STRING_TAG = NAME + ' Iterator'; - IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) }); - setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true); - Iterators[TO_STRING_TAG] = returnThis; - return IteratorConstructor; -}; diff --git a/node_modules/core-js-pure/internals/create-non-enumerable-property.js b/node_modules/core-js-pure/internals/create-non-enumerable-property.js deleted file mode 100644 index bdaad250..00000000 --- a/node_modules/core-js-pure/internals/create-non-enumerable-property.js +++ /dev/null @@ -1,10 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var definePropertyModule = require('../internals/object-define-property'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); - -module.exports = DESCRIPTORS ? function (object, key, value) { - return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); -} : function (object, key, value) { - object[key] = value; - return object; -}; diff --git a/node_modules/core-js-pure/internals/create-property-descriptor.js b/node_modules/core-js-pure/internals/create-property-descriptor.js deleted file mode 100644 index 09059340..00000000 --- a/node_modules/core-js-pure/internals/create-property-descriptor.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = function (bitmap, value) { - return { - enumerable: !(bitmap & 1), - configurable: !(bitmap & 2), - writable: !(bitmap & 4), - value: value - }; -}; diff --git a/node_modules/core-js-pure/internals/create-property.js b/node_modules/core-js-pure/internals/create-property.js deleted file mode 100644 index c27151a9..00000000 --- a/node_modules/core-js-pure/internals/create-property.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var toPrimitive = require('../internals/to-primitive'); -var definePropertyModule = require('../internals/object-define-property'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); - -module.exports = function (object, key, value) { - var propertyKey = toPrimitive(key); - if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value)); - else object[propertyKey] = value; -}; diff --git a/node_modules/core-js-pure/internals/date-to-iso-string.js b/node_modules/core-js-pure/internals/date-to-iso-string.js deleted file mode 100644 index f22503a3..00000000 --- a/node_modules/core-js-pure/internals/date-to-iso-string.js +++ /dev/null @@ -1,31 +0,0 @@ -'use strict'; -var fails = require('../internals/fails'); -var padStart = require('../internals/string-pad').start; - -var abs = Math.abs; -var DatePrototype = Date.prototype; -var getTime = DatePrototype.getTime; -var nativeDateToISOString = DatePrototype.toISOString; - -// `Date.prototype.toISOString` method implementation -// https://tc39.github.io/ecma262/#sec-date.prototype.toisostring -// PhantomJS / old WebKit fails here: -module.exports = (fails(function () { - return nativeDateToISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z'; -}) || !fails(function () { - nativeDateToISOString.call(new Date(NaN)); -})) ? function toISOString() { - if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value'); - var date = this; - var year = date.getUTCFullYear(); - var milliseconds = date.getUTCMilliseconds(); - var sign = year < 0 ? '-' : year > 9999 ? '+' : ''; - return sign + padStart(abs(year), sign ? 6 : 4, 0) + - '-' + padStart(date.getUTCMonth() + 1, 2, 0) + - '-' + padStart(date.getUTCDate(), 2, 0) + - 'T' + padStart(date.getUTCHours(), 2, 0) + - ':' + padStart(date.getUTCMinutes(), 2, 0) + - ':' + padStart(date.getUTCSeconds(), 2, 0) + - '.' + padStart(milliseconds, 3, 0) + - 'Z'; -} : nativeDateToISOString; diff --git a/node_modules/core-js-pure/internals/date-to-primitive.js b/node_modules/core-js-pure/internals/date-to-primitive.js deleted file mode 100644 index fc334f13..00000000 --- a/node_modules/core-js-pure/internals/date-to-primitive.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var anObject = require('../internals/an-object'); -var toPrimitive = require('../internals/to-primitive'); - -module.exports = function (hint) { - if (hint !== 'string' && hint !== 'number' && hint !== 'default') { - throw TypeError('Incorrect hint'); - } return toPrimitive(anObject(this), hint !== 'number'); -}; diff --git a/node_modules/core-js-pure/internals/define-iterator.js b/node_modules/core-js-pure/internals/define-iterator.js deleted file mode 100644 index 7f829bf9..00000000 --- a/node_modules/core-js-pure/internals/define-iterator.js +++ /dev/null @@ -1,90 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createIteratorConstructor = require('../internals/create-iterator-constructor'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var setPrototypeOf = require('../internals/object-set-prototype-of'); -var setToStringTag = require('../internals/set-to-string-tag'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var redefine = require('../internals/redefine'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var IS_PURE = require('../internals/is-pure'); -var Iterators = require('../internals/iterators'); -var IteratorsCore = require('../internals/iterators-core'); - -var IteratorPrototype = IteratorsCore.IteratorPrototype; -var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS; -var ITERATOR = wellKnownSymbol('iterator'); -var KEYS = 'keys'; -var VALUES = 'values'; -var ENTRIES = 'entries'; - -var returnThis = function () { return this; }; - -module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { - createIteratorConstructor(IteratorConstructor, NAME, next); - - var getIterationMethod = function (KIND) { - if (KIND === DEFAULT && defaultIterator) return defaultIterator; - if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND]; - switch (KIND) { - case KEYS: return function keys() { return new IteratorConstructor(this, KIND); }; - case VALUES: return function values() { return new IteratorConstructor(this, KIND); }; - case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); }; - } return function () { return new IteratorConstructor(this); }; - }; - - var TO_STRING_TAG = NAME + ' Iterator'; - var INCORRECT_VALUES_NAME = false; - var IterablePrototype = Iterable.prototype; - var nativeIterator = IterablePrototype[ITERATOR] - || IterablePrototype['@@iterator'] - || DEFAULT && IterablePrototype[DEFAULT]; - var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT); - var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; - var CurrentIteratorPrototype, methods, KEY; - - // fix native - if (anyNativeIterator) { - CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable())); - if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) { - if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) { - if (setPrototypeOf) { - setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype); - } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') { - createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis); - } - } - // Set @@toStringTag to native iterators - setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true); - if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis; - } - } - - // fix Array#{values, @@iterator}.name in V8 / FF - if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { - INCORRECT_VALUES_NAME = true; - defaultIterator = function values() { return nativeIterator.call(this); }; - } - - // define iterator - if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) { - createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator); - } - Iterators[NAME] = defaultIterator; - - // export additional methods - if (DEFAULT) { - methods = { - values: getIterationMethod(VALUES), - keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), - entries: getIterationMethod(ENTRIES) - }; - if (FORCED) for (KEY in methods) { - if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { - redefine(IterablePrototype, KEY, methods[KEY]); - } - } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods); - } - - return methods; -}; diff --git a/node_modules/core-js-pure/internals/define-well-known-symbol.js b/node_modules/core-js-pure/internals/define-well-known-symbol.js deleted file mode 100644 index e5479451..00000000 --- a/node_modules/core-js-pure/internals/define-well-known-symbol.js +++ /dev/null @@ -1,11 +0,0 @@ -var path = require('../internals/path'); -var has = require('../internals/has'); -var wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped'); -var defineProperty = require('../internals/object-define-property').f; - -module.exports = function (NAME) { - var Symbol = path.Symbol || (path.Symbol = {}); - if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, { - value: wrappedWellKnownSymbolModule.f(NAME) - }); -}; diff --git a/node_modules/core-js-pure/internals/descriptors.js b/node_modules/core-js-pure/internals/descriptors.js deleted file mode 100644 index 2673a799..00000000 --- a/node_modules/core-js-pure/internals/descriptors.js +++ /dev/null @@ -1,6 +0,0 @@ -var fails = require('../internals/fails'); - -// Thank's IE8 for his funny defineProperty -module.exports = !fails(function () { - return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7; -}); diff --git a/node_modules/core-js-pure/internals/document-create-element.js b/node_modules/core-js-pure/internals/document-create-element.js deleted file mode 100644 index cc6abae0..00000000 --- a/node_modules/core-js-pure/internals/document-create-element.js +++ /dev/null @@ -1,10 +0,0 @@ -var global = require('../internals/global'); -var isObject = require('../internals/is-object'); - -var document = global.document; -// typeof document.createElement is 'object' in old IE -var EXISTS = isObject(document) && isObject(document.createElement); - -module.exports = function (it) { - return EXISTS ? document.createElement(it) : {}; -}; diff --git a/node_modules/core-js-pure/internals/dom-iterables.js b/node_modules/core-js-pure/internals/dom-iterables.js deleted file mode 100644 index b04e8729..00000000 --- a/node_modules/core-js-pure/internals/dom-iterables.js +++ /dev/null @@ -1,35 +0,0 @@ -// iterable DOM collections -// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods -module.exports = { - CSSRuleList: 0, - CSSStyleDeclaration: 0, - CSSValueList: 0, - ClientRectList: 0, - DOMRectList: 0, - DOMStringList: 0, - DOMTokenList: 1, - DataTransferItemList: 0, - FileList: 0, - HTMLAllCollection: 0, - HTMLCollection: 0, - HTMLFormElement: 0, - HTMLSelectElement: 0, - MediaList: 0, - MimeTypeArray: 0, - NamedNodeMap: 0, - NodeList: 1, - PaintRequestList: 0, - Plugin: 0, - PluginArray: 0, - SVGLengthList: 0, - SVGNumberList: 0, - SVGPathSegList: 0, - SVGPointList: 0, - SVGStringList: 0, - SVGTransformList: 0, - SourceBufferList: 0, - StyleSheetList: 0, - TextTrackCueList: 0, - TextTrackList: 0, - TouchList: 0 -}; diff --git a/node_modules/core-js-pure/internals/engine-is-ios.js b/node_modules/core-js-pure/internals/engine-is-ios.js deleted file mode 100644 index 6d68296b..00000000 --- a/node_modules/core-js-pure/internals/engine-is-ios.js +++ /dev/null @@ -1,3 +0,0 @@ -var userAgent = require('../internals/engine-user-agent'); - -module.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent); diff --git a/node_modules/core-js-pure/internals/engine-user-agent.js b/node_modules/core-js-pure/internals/engine-user-agent.js deleted file mode 100644 index 30dfa9d7..00000000 --- a/node_modules/core-js-pure/internals/engine-user-agent.js +++ /dev/null @@ -1,3 +0,0 @@ -var getBuiltIn = require('../internals/get-built-in'); - -module.exports = getBuiltIn('navigator', 'userAgent') || ''; diff --git a/node_modules/core-js-pure/internals/engine-v8-version.js b/node_modules/core-js-pure/internals/engine-v8-version.js deleted file mode 100644 index 1ff22c30..00000000 --- a/node_modules/core-js-pure/internals/engine-v8-version.js +++ /dev/null @@ -1,20 +0,0 @@ -var global = require('../internals/global'); -var userAgent = require('../internals/engine-user-agent'); - -var process = global.process; -var versions = process && process.versions; -var v8 = versions && versions.v8; -var match, version; - -if (v8) { - match = v8.split('.'); - version = match[0] + match[1]; -} else if (userAgent) { - match = userAgent.match(/Edge\/(\d+)/); - if (!match || match[1] >= 74) { - match = userAgent.match(/Chrome\/(\d+)/); - if (match) version = match[1]; - } -} - -module.exports = version && +version; diff --git a/node_modules/core-js-pure/internals/entry-unbind.js b/node_modules/core-js-pure/internals/entry-unbind.js deleted file mode 100644 index f59163a3..00000000 --- a/node_modules/core-js-pure/internals/entry-unbind.js +++ /dev/null @@ -1,3 +0,0 @@ -var getBuiltIn = require('../internals/get-built-in'); - -module.exports = getBuiltIn; diff --git a/node_modules/core-js-pure/internals/entry-virtual.js b/node_modules/core-js-pure/internals/entry-virtual.js deleted file mode 100644 index 3ef2ebf6..00000000 --- a/node_modules/core-js-pure/internals/entry-virtual.js +++ /dev/null @@ -1,5 +0,0 @@ -var path = require('../internals/path'); - -module.exports = function (CONSTRUCTOR) { - return path[CONSTRUCTOR + 'Prototype']; -}; diff --git a/node_modules/core-js-pure/internals/enum-bug-keys.js b/node_modules/core-js-pure/internals/enum-bug-keys.js deleted file mode 100644 index 2ca413b1..00000000 --- a/node_modules/core-js-pure/internals/enum-bug-keys.js +++ /dev/null @@ -1,10 +0,0 @@ -// IE8- don't enum bug keys -module.exports = [ - 'constructor', - 'hasOwnProperty', - 'isPrototypeOf', - 'propertyIsEnumerable', - 'toLocaleString', - 'toString', - 'valueOf' -]; diff --git a/node_modules/core-js-pure/internals/export.js b/node_modules/core-js-pure/internals/export.js deleted file mode 100644 index 3369fea4..00000000 --- a/node_modules/core-js-pure/internals/export.js +++ /dev/null @@ -1,98 +0,0 @@ -'use strict'; -var global = require('../internals/global'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; -var isForced = require('../internals/is-forced'); -var path = require('../internals/path'); -var bind = require('../internals/function-bind-context'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var has = require('../internals/has'); - -var wrapConstructor = function (NativeConstructor) { - var Wrapper = function (a, b, c) { - if (this instanceof NativeConstructor) { - switch (arguments.length) { - case 0: return new NativeConstructor(); - case 1: return new NativeConstructor(a); - case 2: return new NativeConstructor(a, b); - } return new NativeConstructor(a, b, c); - } return NativeConstructor.apply(this, arguments); - }; - Wrapper.prototype = NativeConstructor.prototype; - return Wrapper; -}; - -/* - options.target - name of the target object - options.global - target is the global object - options.stat - export as static methods of target - options.proto - export as prototype methods of target - options.real - real prototype method for the `pure` version - options.forced - export even if the native feature is available - options.bind - bind methods to the target, required for the `pure` version - options.wrap - wrap constructors to preventing global pollution, required for the `pure` version - options.unsafe - use the simple assignment of property instead of delete + defineProperty - options.sham - add a flag to not completely full polyfills - options.enumerable - export as enumerable property - options.noTargetGet - prevent calling a getter on target -*/ -module.exports = function (options, source) { - var TARGET = options.target; - var GLOBAL = options.global; - var STATIC = options.stat; - var PROTO = options.proto; - - var nativeSource = GLOBAL ? global : STATIC ? global[TARGET] : (global[TARGET] || {}).prototype; - - var target = GLOBAL ? path : path[TARGET] || (path[TARGET] = {}); - var targetPrototype = target.prototype; - - var FORCED, USE_NATIVE, VIRTUAL_PROTOTYPE; - var key, sourceProperty, targetProperty, nativeProperty, resultProperty, descriptor; - - for (key in source) { - FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); - // contains in native - USE_NATIVE = !FORCED && nativeSource && has(nativeSource, key); - - targetProperty = target[key]; - - if (USE_NATIVE) if (options.noTargetGet) { - descriptor = getOwnPropertyDescriptor(nativeSource, key); - nativeProperty = descriptor && descriptor.value; - } else nativeProperty = nativeSource[key]; - - // export native or implementation - sourceProperty = (USE_NATIVE && nativeProperty) ? nativeProperty : source[key]; - - if (USE_NATIVE && typeof targetProperty === typeof sourceProperty) continue; - - // bind timers to global for call from export context - if (options.bind && USE_NATIVE) resultProperty = bind(sourceProperty, global); - // wrap global constructors for prevent changs in this version - else if (options.wrap && USE_NATIVE) resultProperty = wrapConstructor(sourceProperty); - // make static versions for prototype methods - else if (PROTO && typeof sourceProperty == 'function') resultProperty = bind(Function.call, sourceProperty); - // default case - else resultProperty = sourceProperty; - - // add a flag to not completely full polyfills - if (options.sham || (sourceProperty && sourceProperty.sham) || (targetProperty && targetProperty.sham)) { - createNonEnumerableProperty(resultProperty, 'sham', true); - } - - target[key] = resultProperty; - - if (PROTO) { - VIRTUAL_PROTOTYPE = TARGET + 'Prototype'; - if (!has(path, VIRTUAL_PROTOTYPE)) { - createNonEnumerableProperty(path, VIRTUAL_PROTOTYPE, {}); - } - // export virtual prototype methods - path[VIRTUAL_PROTOTYPE][key] = sourceProperty; - // export real prototype methods - if (options.real && targetPrototype && !targetPrototype[key]) { - createNonEnumerableProperty(targetPrototype, key, sourceProperty); - } - } - } -}; diff --git a/node_modules/core-js-pure/internals/fails.js b/node_modules/core-js-pure/internals/fails.js deleted file mode 100644 index f398e2da..00000000 --- a/node_modules/core-js-pure/internals/fails.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = function (exec) { - try { - return !!exec(); - } catch (error) { - return true; - } -}; diff --git a/node_modules/core-js-pure/internals/fix-regexp-well-known-symbol-logic.js b/node_modules/core-js-pure/internals/fix-regexp-well-known-symbol-logic.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/fix-regexp-well-known-symbol-logic.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/flatten-into-array.js b/node_modules/core-js-pure/internals/flatten-into-array.js deleted file mode 100644 index df299165..00000000 --- a/node_modules/core-js-pure/internals/flatten-into-array.js +++ /dev/null @@ -1,32 +0,0 @@ -'use strict'; -var isArray = require('../internals/is-array'); -var toLength = require('../internals/to-length'); -var bind = require('../internals/function-bind-context'); - -// `FlattenIntoArray` abstract operation -// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray -var flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) { - var targetIndex = start; - var sourceIndex = 0; - var mapFn = mapper ? bind(mapper, thisArg, 3) : false; - var element; - - while (sourceIndex < sourceLen) { - if (sourceIndex in source) { - element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; - - if (depth > 0 && isArray(element)) { - targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1; - } else { - if (targetIndex >= 0x1FFFFFFFFFFFFF) throw TypeError('Exceed the acceptable array length'); - target[targetIndex] = element; - } - - targetIndex++; - } - sourceIndex++; - } - return targetIndex; -}; - -module.exports = flattenIntoArray; diff --git a/node_modules/core-js-pure/internals/freezing.js b/node_modules/core-js-pure/internals/freezing.js deleted file mode 100644 index 0ac9fbfb..00000000 --- a/node_modules/core-js-pure/internals/freezing.js +++ /dev/null @@ -1,5 +0,0 @@ -var fails = require('../internals/fails'); - -module.exports = !fails(function () { - return Object.isExtensible(Object.preventExtensions({})); -}); diff --git a/node_modules/core-js-pure/internals/function-bind-context.js b/node_modules/core-js-pure/internals/function-bind-context.js deleted file mode 100644 index 96a7f49c..00000000 --- a/node_modules/core-js-pure/internals/function-bind-context.js +++ /dev/null @@ -1,24 +0,0 @@ -var aFunction = require('../internals/a-function'); - -// optional / simple context binding -module.exports = function (fn, that, length) { - aFunction(fn); - if (that === undefined) return fn; - switch (length) { - case 0: return function () { - return fn.call(that); - }; - case 1: return function (a) { - return fn.call(that, a); - }; - case 2: return function (a, b) { - return fn.call(that, a, b); - }; - case 3: return function (a, b, c) { - return fn.call(that, a, b, c); - }; - } - return function (/* ...args */) { - return fn.apply(that, arguments); - }; -}; diff --git a/node_modules/core-js-pure/internals/function-bind.js b/node_modules/core-js-pure/internals/function-bind.js deleted file mode 100644 index 6e1e81dd..00000000 --- a/node_modules/core-js-pure/internals/function-bind.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; -var aFunction = require('../internals/a-function'); -var isObject = require('../internals/is-object'); - -var slice = [].slice; -var factories = {}; - -var construct = function (C, argsLength, args) { - if (!(argsLength in factories)) { - for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']'; - // eslint-disable-next-line no-new-func - factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')'); - } return factories[argsLength](C, args); -}; - -// `Function.prototype.bind` method implementation -// https://tc39.github.io/ecma262/#sec-function.prototype.bind -module.exports = Function.bind || function bind(that /* , ...args */) { - var fn = aFunction(this); - var partArgs = slice.call(arguments, 1); - var boundFunction = function bound(/* args... */) { - var args = partArgs.concat(slice.call(arguments)); - return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args); - }; - if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype; - return boundFunction; -}; diff --git a/node_modules/core-js-pure/internals/get-async-iterator-method.js b/node_modules/core-js-pure/internals/get-async-iterator-method.js deleted file mode 100644 index 0821b084..00000000 --- a/node_modules/core-js-pure/internals/get-async-iterator-method.js +++ /dev/null @@ -1,9 +0,0 @@ -var getIteratorMethod = require('../internals/get-iterator-method'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var ASYNC_ITERATOR = wellKnownSymbol('asyncIterator'); - -module.exports = function (it) { - var method = it[ASYNC_ITERATOR]; - return method === undefined ? getIteratorMethod(it) : method; -}; diff --git a/node_modules/core-js-pure/internals/get-built-in.js b/node_modules/core-js-pure/internals/get-built-in.js deleted file mode 100644 index 8fcff267..00000000 --- a/node_modules/core-js-pure/internals/get-built-in.js +++ /dev/null @@ -1,11 +0,0 @@ -var path = require('../internals/path'); -var global = require('../internals/global'); - -var aFunction = function (variable) { - return typeof variable == 'function' ? variable : undefined; -}; - -module.exports = function (namespace, method) { - return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace]) - : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method]; -}; diff --git a/node_modules/core-js-pure/internals/get-iterator-method.js b/node_modules/core-js-pure/internals/get-iterator-method.js deleted file mode 100644 index cfac3101..00000000 --- a/node_modules/core-js-pure/internals/get-iterator-method.js +++ /dev/null @@ -1,11 +0,0 @@ -var classof = require('../internals/classof'); -var Iterators = require('../internals/iterators'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var ITERATOR = wellKnownSymbol('iterator'); - -module.exports = function (it) { - if (it != undefined) return it[ITERATOR] - || it['@@iterator'] - || Iterators[classof(it)]; -}; diff --git a/node_modules/core-js-pure/internals/get-iterator.js b/node_modules/core-js-pure/internals/get-iterator.js deleted file mode 100644 index f7f7f8ef..00000000 --- a/node_modules/core-js-pure/internals/get-iterator.js +++ /dev/null @@ -1,9 +0,0 @@ -var anObject = require('../internals/an-object'); -var getIteratorMethod = require('../internals/get-iterator-method'); - -module.exports = function (it) { - var iteratorMethod = getIteratorMethod(it); - if (typeof iteratorMethod != 'function') { - throw TypeError(String(it) + ' is not iterable'); - } return anObject(iteratorMethod.call(it)); -}; diff --git a/node_modules/core-js-pure/internals/get-map-iterator.js b/node_modules/core-js-pure/internals/get-map-iterator.js deleted file mode 100644 index 1c608f37..00000000 --- a/node_modules/core-js-pure/internals/get-map-iterator.js +++ /dev/null @@ -1,7 +0,0 @@ -var IS_PURE = require('../internals/is-pure'); -var getIterator = require('../internals/get-iterator'); - -module.exports = IS_PURE ? getIterator : function (it) { - // eslint-disable-next-line no-undef - return Map.prototype.entries.call(it); -}; diff --git a/node_modules/core-js-pure/internals/get-set-iterator.js b/node_modules/core-js-pure/internals/get-set-iterator.js deleted file mode 100644 index 4560c2e8..00000000 --- a/node_modules/core-js-pure/internals/get-set-iterator.js +++ /dev/null @@ -1,7 +0,0 @@ -var IS_PURE = require('../internals/is-pure'); -var getIterator = require('../internals/get-iterator'); - -module.exports = IS_PURE ? getIterator : function (it) { - // eslint-disable-next-line no-undef - return Set.prototype.values.call(it); -}; diff --git a/node_modules/core-js-pure/internals/global.js b/node_modules/core-js-pure/internals/global.js deleted file mode 100644 index cf00638f..00000000 --- a/node_modules/core-js-pure/internals/global.js +++ /dev/null @@ -1,13 +0,0 @@ -var check = function (it) { - return it && it.Math == Math && it; -}; - -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -module.exports = - // eslint-disable-next-line no-undef - check(typeof globalThis == 'object' && globalThis) || - check(typeof window == 'object' && window) || - check(typeof self == 'object' && self) || - check(typeof global == 'object' && global) || - // eslint-disable-next-line no-new-func - Function('return this')(); diff --git a/node_modules/core-js-pure/internals/has.js b/node_modules/core-js-pure/internals/has.js deleted file mode 100644 index 0925c41e..00000000 --- a/node_modules/core-js-pure/internals/has.js +++ /dev/null @@ -1,5 +0,0 @@ -var hasOwnProperty = {}.hasOwnProperty; - -module.exports = function (it, key) { - return hasOwnProperty.call(it, key); -}; diff --git a/node_modules/core-js-pure/internals/hidden-keys.js b/node_modules/core-js-pure/internals/hidden-keys.js deleted file mode 100644 index f053ebf7..00000000 --- a/node_modules/core-js-pure/internals/hidden-keys.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/node_modules/core-js-pure/internals/host-report-errors.js b/node_modules/core-js-pure/internals/host-report-errors.js deleted file mode 100644 index dc84a6c2..00000000 --- a/node_modules/core-js-pure/internals/host-report-errors.js +++ /dev/null @@ -1,8 +0,0 @@ -var global = require('../internals/global'); - -module.exports = function (a, b) { - var console = global.console; - if (console && console.error) { - arguments.length === 1 ? console.error(a) : console.error(a, b); - } -}; diff --git a/node_modules/core-js-pure/internals/html.js b/node_modules/core-js-pure/internals/html.js deleted file mode 100644 index 23defa66..00000000 --- a/node_modules/core-js-pure/internals/html.js +++ /dev/null @@ -1,3 +0,0 @@ -var getBuiltIn = require('../internals/get-built-in'); - -module.exports = getBuiltIn('document', 'documentElement'); diff --git a/node_modules/core-js-pure/internals/ie8-dom-define.js b/node_modules/core-js-pure/internals/ie8-dom-define.js deleted file mode 100644 index 6696ff9d..00000000 --- a/node_modules/core-js-pure/internals/ie8-dom-define.js +++ /dev/null @@ -1,10 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var fails = require('../internals/fails'); -var createElement = require('../internals/document-create-element'); - -// Thank's IE8 for his funny defineProperty -module.exports = !DESCRIPTORS && !fails(function () { - return Object.defineProperty(createElement('div'), 'a', { - get: function () { return 7; } - }).a != 7; -}); diff --git a/node_modules/core-js-pure/internals/ieee754.js b/node_modules/core-js-pure/internals/ieee754.js deleted file mode 100644 index 3470d579..00000000 --- a/node_modules/core-js-pure/internals/ieee754.js +++ /dev/null @@ -1,88 +0,0 @@ -// IEEE754 conversions based on https://github.com/feross/ieee754 -// eslint-disable-next-line no-shadow-restricted-names -var Infinity = 1 / 0; -var abs = Math.abs; -var pow = Math.pow; -var floor = Math.floor; -var log = Math.log; -var LN2 = Math.LN2; - -var pack = function (number, mantissaLength, bytes) { - var buffer = new Array(bytes); - var exponentLength = bytes * 8 - mantissaLength - 1; - var eMax = (1 << exponentLength) - 1; - var eBias = eMax >> 1; - var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0; - var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0; - var index = 0; - var exponent, mantissa, c; - number = abs(number); - // eslint-disable-next-line no-self-compare - if (number != number || number === Infinity) { - // eslint-disable-next-line no-self-compare - mantissa = number != number ? 1 : 0; - exponent = eMax; - } else { - exponent = floor(log(number) / LN2); - if (number * (c = pow(2, -exponent)) < 1) { - exponent--; - c *= 2; - } - if (exponent + eBias >= 1) { - number += rt / c; - } else { - number += rt * pow(2, 1 - eBias); - } - if (number * c >= 2) { - exponent++; - c /= 2; - } - if (exponent + eBias >= eMax) { - mantissa = 0; - exponent = eMax; - } else if (exponent + eBias >= 1) { - mantissa = (number * c - 1) * pow(2, mantissaLength); - exponent = exponent + eBias; - } else { - mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength); - exponent = 0; - } - } - for (; mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8); - exponent = exponent << mantissaLength | mantissa; - exponentLength += mantissaLength; - for (; exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8); - buffer[--index] |= sign * 128; - return buffer; -}; - -var unpack = function (buffer, mantissaLength) { - var bytes = buffer.length; - var exponentLength = bytes * 8 - mantissaLength - 1; - var eMax = (1 << exponentLength) - 1; - var eBias = eMax >> 1; - var nBits = exponentLength - 7; - var index = bytes - 1; - var sign = buffer[index--]; - var exponent = sign & 127; - var mantissa; - sign >>= 7; - for (; nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8); - mantissa = exponent & (1 << -nBits) - 1; - exponent >>= -nBits; - nBits += mantissaLength; - for (; nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8); - if (exponent === 0) { - exponent = 1 - eBias; - } else if (exponent === eMax) { - return mantissa ? NaN : sign ? -Infinity : Infinity; - } else { - mantissa = mantissa + pow(2, mantissaLength); - exponent = exponent - eBias; - } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength); -}; - -module.exports = { - pack: pack, - unpack: unpack -}; diff --git a/node_modules/core-js-pure/internals/indexed-object.js b/node_modules/core-js-pure/internals/indexed-object.js deleted file mode 100644 index 2aa25b5e..00000000 --- a/node_modules/core-js-pure/internals/indexed-object.js +++ /dev/null @@ -1,13 +0,0 @@ -var fails = require('../internals/fails'); -var classof = require('../internals/classof-raw'); - -var split = ''.split; - -// fallback for non-array-like ES3 and non-enumerable old V8 strings -module.exports = fails(function () { - // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 - // eslint-disable-next-line no-prototype-builtins - return !Object('z').propertyIsEnumerable(0); -}) ? function (it) { - return classof(it) == 'String' ? split.call(it, '') : Object(it); -} : Object; diff --git a/node_modules/core-js-pure/internals/inherit-if-required.js b/node_modules/core-js-pure/internals/inherit-if-required.js deleted file mode 100644 index a033b0c6..00000000 --- a/node_modules/core-js-pure/internals/inherit-if-required.js +++ /dev/null @@ -1,17 +0,0 @@ -var isObject = require('../internals/is-object'); -var setPrototypeOf = require('../internals/object-set-prototype-of'); - -// makes subclassing work correct for wrapped built-ins -module.exports = function ($this, dummy, Wrapper) { - var NewTarget, NewTargetPrototype; - if ( - // it can work only with native `setPrototypeOf` - setPrototypeOf && - // we haven't completely correct pre-ES6 way for getting `new.target`, so use this - typeof (NewTarget = dummy.constructor) == 'function' && - NewTarget !== Wrapper && - isObject(NewTargetPrototype = NewTarget.prototype) && - NewTargetPrototype !== Wrapper.prototype - ) setPrototypeOf($this, NewTargetPrototype); - return $this; -}; diff --git a/node_modules/core-js-pure/internals/inspect-source.js b/node_modules/core-js-pure/internals/inspect-source.js deleted file mode 100644 index 95778093..00000000 --- a/node_modules/core-js-pure/internals/inspect-source.js +++ /dev/null @@ -1,12 +0,0 @@ -var store = require('../internals/shared-store'); - -var functionToString = Function.toString; - -// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper -if (typeof store.inspectSource != 'function') { - store.inspectSource = function (it) { - return functionToString.call(it); - }; -} - -module.exports = store.inspectSource; diff --git a/node_modules/core-js-pure/internals/internal-metadata.js b/node_modules/core-js-pure/internals/internal-metadata.js deleted file mode 100644 index d70c48c3..00000000 --- a/node_modules/core-js-pure/internals/internal-metadata.js +++ /dev/null @@ -1,61 +0,0 @@ -var hiddenKeys = require('../internals/hidden-keys'); -var isObject = require('../internals/is-object'); -var has = require('../internals/has'); -var defineProperty = require('../internals/object-define-property').f; -var uid = require('../internals/uid'); -var FREEZING = require('../internals/freezing'); - -var METADATA = uid('meta'); -var id = 0; - -var isExtensible = Object.isExtensible || function () { - return true; -}; - -var setMetadata = function (it) { - defineProperty(it, METADATA, { value: { - objectID: 'O' + ++id, // object ID - weakData: {} // weak collections IDs - } }); -}; - -var fastKey = function (it, create) { - // return a primitive with prefix - if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it; - if (!has(it, METADATA)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return 'F'; - // not necessary to add metadata - if (!create) return 'E'; - // add missing metadata - setMetadata(it); - // return object ID - } return it[METADATA].objectID; -}; - -var getWeakData = function (it, create) { - if (!has(it, METADATA)) { - // can't set metadata to uncaught frozen object - if (!isExtensible(it)) return true; - // not necessary to add metadata - if (!create) return false; - // add missing metadata - setMetadata(it); - // return the store of weak collections IDs - } return it[METADATA].weakData; -}; - -// add metadata on freeze-family methods calling -var onFreeze = function (it) { - if (FREEZING && meta.REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it); - return it; -}; - -var meta = module.exports = { - REQUIRED: false, - fastKey: fastKey, - getWeakData: getWeakData, - onFreeze: onFreeze -}; - -hiddenKeys[METADATA] = true; diff --git a/node_modules/core-js-pure/internals/internal-state.js b/node_modules/core-js-pure/internals/internal-state.js deleted file mode 100644 index 18c402d5..00000000 --- a/node_modules/core-js-pure/internals/internal-state.js +++ /dev/null @@ -1,61 +0,0 @@ -var NATIVE_WEAK_MAP = require('../internals/native-weak-map'); -var global = require('../internals/global'); -var isObject = require('../internals/is-object'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var objectHas = require('../internals/has'); -var sharedKey = require('../internals/shared-key'); -var hiddenKeys = require('../internals/hidden-keys'); - -var WeakMap = global.WeakMap; -var set, get, has; - -var enforce = function (it) { - return has(it) ? get(it) : set(it, {}); -}; - -var getterFor = function (TYPE) { - return function (it) { - var state; - if (!isObject(it) || (state = get(it)).type !== TYPE) { - throw TypeError('Incompatible receiver, ' + TYPE + ' required'); - } return state; - }; -}; - -if (NATIVE_WEAK_MAP) { - var store = new WeakMap(); - var wmget = store.get; - var wmhas = store.has; - var wmset = store.set; - set = function (it, metadata) { - wmset.call(store, it, metadata); - return metadata; - }; - get = function (it) { - return wmget.call(store, it) || {}; - }; - has = function (it) { - return wmhas.call(store, it); - }; -} else { - var STATE = sharedKey('state'); - hiddenKeys[STATE] = true; - set = function (it, metadata) { - createNonEnumerableProperty(it, STATE, metadata); - return metadata; - }; - get = function (it) { - return objectHas(it, STATE) ? it[STATE] : {}; - }; - has = function (it) { - return objectHas(it, STATE); - }; -} - -module.exports = { - set: set, - get: get, - has: has, - enforce: enforce, - getterFor: getterFor -}; diff --git a/node_modules/core-js-pure/internals/is-array-iterator-method.js b/node_modules/core-js-pure/internals/is-array-iterator-method.js deleted file mode 100644 index ab0ebe1e..00000000 --- a/node_modules/core-js-pure/internals/is-array-iterator-method.js +++ /dev/null @@ -1,10 +0,0 @@ -var wellKnownSymbol = require('../internals/well-known-symbol'); -var Iterators = require('../internals/iterators'); - -var ITERATOR = wellKnownSymbol('iterator'); -var ArrayPrototype = Array.prototype; - -// check on default Array iterator -module.exports = function (it) { - return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); -}; diff --git a/node_modules/core-js-pure/internals/is-array.js b/node_modules/core-js-pure/internals/is-array.js deleted file mode 100644 index 757515da..00000000 --- a/node_modules/core-js-pure/internals/is-array.js +++ /dev/null @@ -1,7 +0,0 @@ -var classof = require('../internals/classof-raw'); - -// `IsArray` abstract operation -// https://tc39.github.io/ecma262/#sec-isarray -module.exports = Array.isArray || function isArray(arg) { - return classof(arg) == 'Array'; -}; diff --git a/node_modules/core-js-pure/internals/is-forced.js b/node_modules/core-js-pure/internals/is-forced.js deleted file mode 100644 index cae014fe..00000000 --- a/node_modules/core-js-pure/internals/is-forced.js +++ /dev/null @@ -1,21 +0,0 @@ -var fails = require('../internals/fails'); - -var replacement = /#|\.prototype\./; - -var isForced = function (feature, detection) { - var value = data[normalize(feature)]; - return value == POLYFILL ? true - : value == NATIVE ? false - : typeof detection == 'function' ? fails(detection) - : !!detection; -}; - -var normalize = isForced.normalize = function (string) { - return String(string).replace(replacement, '.').toLowerCase(); -}; - -var data = isForced.data = {}; -var NATIVE = isForced.NATIVE = 'N'; -var POLYFILL = isForced.POLYFILL = 'P'; - -module.exports = isForced; diff --git a/node_modules/core-js-pure/internals/is-integer.js b/node_modules/core-js-pure/internals/is-integer.js deleted file mode 100644 index df160864..00000000 --- a/node_modules/core-js-pure/internals/is-integer.js +++ /dev/null @@ -1,9 +0,0 @@ -var isObject = require('../internals/is-object'); - -var floor = Math.floor; - -// `Number.isInteger` method implementation -// https://tc39.github.io/ecma262/#sec-number.isinteger -module.exports = function isInteger(it) { - return !isObject(it) && isFinite(it) && floor(it) === it; -}; diff --git a/node_modules/core-js-pure/internals/is-iterable.js b/node_modules/core-js-pure/internals/is-iterable.js deleted file mode 100644 index f33bb2df..00000000 --- a/node_modules/core-js-pure/internals/is-iterable.js +++ /dev/null @@ -1,13 +0,0 @@ -var classof = require('../internals/classof'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var Iterators = require('../internals/iterators'); - -var ITERATOR = wellKnownSymbol('iterator'); - -module.exports = function (it) { - var O = Object(it); - return O[ITERATOR] !== undefined - || '@@iterator' in O - // eslint-disable-next-line no-prototype-builtins - || Iterators.hasOwnProperty(classof(O)); -}; diff --git a/node_modules/core-js-pure/internals/is-object.js b/node_modules/core-js-pure/internals/is-object.js deleted file mode 100644 index dda6e04d..00000000 --- a/node_modules/core-js-pure/internals/is-object.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = function (it) { - return typeof it === 'object' ? it !== null : typeof it === 'function'; -}; diff --git a/node_modules/core-js-pure/internals/is-pure.js b/node_modules/core-js-pure/internals/is-pure.js deleted file mode 100644 index ec01c2c1..00000000 --- a/node_modules/core-js-pure/internals/is-pure.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = true; diff --git a/node_modules/core-js-pure/internals/is-regexp.js b/node_modules/core-js-pure/internals/is-regexp.js deleted file mode 100644 index e2c7247e..00000000 --- a/node_modules/core-js-pure/internals/is-regexp.js +++ /dev/null @@ -1,12 +0,0 @@ -var isObject = require('../internals/is-object'); -var classof = require('../internals/classof-raw'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var MATCH = wellKnownSymbol('match'); - -// `IsRegExp` abstract operation -// https://tc39.github.io/ecma262/#sec-isregexp -module.exports = function (it) { - var isRegExp; - return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp'); -}; diff --git a/node_modules/core-js-pure/internals/iterate.js b/node_modules/core-js-pure/internals/iterate.js deleted file mode 100644 index a68c4161..00000000 --- a/node_modules/core-js-pure/internals/iterate.js +++ /dev/null @@ -1,43 +0,0 @@ -var anObject = require('../internals/an-object'); -var isArrayIteratorMethod = require('../internals/is-array-iterator-method'); -var toLength = require('../internals/to-length'); -var bind = require('../internals/function-bind-context'); -var getIteratorMethod = require('../internals/get-iterator-method'); -var callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing'); - -var Result = function (stopped, result) { - this.stopped = stopped; - this.result = result; -}; - -var iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) { - var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1); - var iterator, iterFn, index, length, result, next, step; - - if (IS_ITERATOR) { - iterator = iterable; - } else { - iterFn = getIteratorMethod(iterable); - if (typeof iterFn != 'function') throw TypeError('Target is not iterable'); - // optimisation for array iterators - if (isArrayIteratorMethod(iterFn)) { - for (index = 0, length = toLength(iterable.length); length > index; index++) { - result = AS_ENTRIES - ? boundFunction(anObject(step = iterable[index])[0], step[1]) - : boundFunction(iterable[index]); - if (result && result instanceof Result) return result; - } return new Result(false); - } - iterator = iterFn.call(iterable); - } - - next = iterator.next; - while (!(step = next.call(iterator)).done) { - result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES); - if (typeof result == 'object' && result && result instanceof Result) return result; - } return new Result(false); -}; - -iterate.stop = function (result) { - return new Result(true, result); -}; diff --git a/node_modules/core-js-pure/internals/iterator-create-proxy.js b/node_modules/core-js-pure/internals/iterator-create-proxy.js deleted file mode 100644 index 951db732..00000000 --- a/node_modules/core-js-pure/internals/iterator-create-proxy.js +++ /dev/null @@ -1,51 +0,0 @@ -'use strict'; -var path = require('../internals/path'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var create = require('../internals/object-create'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var redefineAll = require('../internals/redefine-all'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var InternalStateModule = require('../internals/internal-state'); - -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.get; - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -var $return = function (value) { - var iterator = getInternalState(this).iterator; - var $$return = iterator['return']; - return $$return === undefined ? { done: true, value: value } : anObject($$return.call(iterator, value)); -}; - -var $throw = function (value) { - var iterator = getInternalState(this).iterator; - var $$throw = iterator['throw']; - if ($$throw === undefined) throw value; - return $$throw.call(iterator, value); -}; - -module.exports = function (nextHandler, IS_ITERATOR) { - var IteratorProxy = function Iterator(state) { - state.next = aFunction(state.iterator.next); - state.done = false; - setInternalState(this, state); - }; - - IteratorProxy.prototype = redefineAll(create(path.Iterator.prototype), { - next: function next() { - var state = getInternalState(this); - var result = state.done ? undefined : nextHandler.apply(state, arguments); - return { done: state.done, value: result }; - }, - 'return': $return, - 'throw': $throw - }); - - if (!IS_ITERATOR) { - createNonEnumerableProperty(IteratorProxy.prototype, TO_STRING_TAG, 'Generator'); - } - - return IteratorProxy; -}; diff --git a/node_modules/core-js-pure/internals/iterators-core.js b/node_modules/core-js-pure/internals/iterators-core.js deleted file mode 100644 index fccca93e..00000000 --- a/node_modules/core-js-pure/internals/iterators-core.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var has = require('../internals/has'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var IS_PURE = require('../internals/is-pure'); - -var ITERATOR = wellKnownSymbol('iterator'); -var BUGGY_SAFARI_ITERATORS = false; - -var returnThis = function () { return this; }; - -// `%IteratorPrototype%` object -// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object -var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; - -if ([].keys) { - arrayIterator = [].keys(); - // Safari 8 has buggy iterators w/o `next` - if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; - else { - PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); - if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; - } -} - -if (IteratorPrototype == undefined) IteratorPrototype = {}; - -// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() -if (!IS_PURE && !has(IteratorPrototype, ITERATOR)) { - createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis); -} - -module.exports = { - IteratorPrototype: IteratorPrototype, - BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS -}; diff --git a/node_modules/core-js-pure/internals/iterators.js b/node_modules/core-js-pure/internals/iterators.js deleted file mode 100644 index f053ebf7..00000000 --- a/node_modules/core-js-pure/internals/iterators.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/node_modules/core-js-pure/internals/map-upsert.js b/node_modules/core-js-pure/internals/map-upsert.js deleted file mode 100644 index 2c51e78b..00000000 --- a/node_modules/core-js-pure/internals/map-upsert.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var anObject = require('../internals/an-object'); - -// `Map.prototype.upsert` method -// https://github.com/thumbsupep/proposal-upsert -module.exports = function upsert(key, updateFn /* , insertFn */) { - var map = anObject(this); - var insertFn = arguments.length > 2 ? arguments[2] : undefined; - var value; - if (typeof updateFn != 'function' && typeof insertFn != 'function') { - throw TypeError('At least one callback required'); - } - if (map.has(key)) { - value = map.get(key); - if (typeof updateFn == 'function') { - value = updateFn(value); - map.set(key, value); - } - } else if (typeof insertFn == 'function') { - value = insertFn(); - map.set(key, value); - } return value; -}; diff --git a/node_modules/core-js-pure/internals/math-expm1.js b/node_modules/core-js-pure/internals/math-expm1.js deleted file mode 100644 index 3a14c073..00000000 --- a/node_modules/core-js-pure/internals/math-expm1.js +++ /dev/null @@ -1,13 +0,0 @@ -var nativeExpm1 = Math.expm1; -var exp = Math.exp; - -// `Math.expm1` method implementation -// https://tc39.github.io/ecma262/#sec-math.expm1 -module.exports = (!nativeExpm1 - // Old FF bug - || nativeExpm1(10) > 22025.465794806719 || nativeExpm1(10) < 22025.4657948067165168 - // Tor Browser bug - || nativeExpm1(-2e-17) != -2e-17 -) ? function expm1(x) { - return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : exp(x) - 1; -} : nativeExpm1; diff --git a/node_modules/core-js-pure/internals/math-fround.js b/node_modules/core-js-pure/internals/math-fround.js deleted file mode 100644 index 0642e312..00000000 --- a/node_modules/core-js-pure/internals/math-fround.js +++ /dev/null @@ -1,26 +0,0 @@ -var sign = require('../internals/math-sign'); - -var abs = Math.abs; -var pow = Math.pow; -var EPSILON = pow(2, -52); -var EPSILON32 = pow(2, -23); -var MAX32 = pow(2, 127) * (2 - EPSILON32); -var MIN32 = pow(2, -126); - -var roundTiesToEven = function (n) { - return n + 1 / EPSILON - 1 / EPSILON; -}; - -// `Math.fround` method implementation -// https://tc39.github.io/ecma262/#sec-math.fround -module.exports = Math.fround || function fround(x) { - var $abs = abs(x); - var $sign = sign(x); - var a, result; - if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32; - a = (1 + EPSILON32 / EPSILON) * $abs; - result = a - (a - $abs); - // eslint-disable-next-line no-self-compare - if (result > MAX32 || result != result) return $sign * Infinity; - return $sign * result; -}; diff --git a/node_modules/core-js-pure/internals/math-log1p.js b/node_modules/core-js-pure/internals/math-log1p.js deleted file mode 100644 index 3d2545c6..00000000 --- a/node_modules/core-js-pure/internals/math-log1p.js +++ /dev/null @@ -1,7 +0,0 @@ -var log = Math.log; - -// `Math.log1p` method implementation -// https://tc39.github.io/ecma262/#sec-math.log1p -module.exports = Math.log1p || function log1p(x) { - return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : log(1 + x); -}; diff --git a/node_modules/core-js-pure/internals/math-scale.js b/node_modules/core-js-pure/internals/math-scale.js deleted file mode 100644 index 59288629..00000000 --- a/node_modules/core-js-pure/internals/math-scale.js +++ /dev/null @@ -1,16 +0,0 @@ -// `Math.scale` method implementation -// https://rwaldron.github.io/proposal-math-extensions/ -module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) { - if ( - arguments.length === 0 - /* eslint-disable no-self-compare */ - || x != x - || inLow != inLow - || inHigh != inHigh - || outLow != outLow - || outHigh != outHigh - /* eslint-enable no-self-compare */ - ) return NaN; - if (x === Infinity || x === -Infinity) return x; - return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow; -}; diff --git a/node_modules/core-js-pure/internals/math-sign.js b/node_modules/core-js-pure/internals/math-sign.js deleted file mode 100644 index 92606963..00000000 --- a/node_modules/core-js-pure/internals/math-sign.js +++ /dev/null @@ -1,6 +0,0 @@ -// `Math.sign` method implementation -// https://tc39.github.io/ecma262/#sec-math.sign -module.exports = Math.sign || function sign(x) { - // eslint-disable-next-line no-self-compare - return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1; -}; diff --git a/node_modules/core-js-pure/internals/microtask.js b/node_modules/core-js-pure/internals/microtask.js deleted file mode 100644 index 6df180c6..00000000 --- a/node_modules/core-js-pure/internals/microtask.js +++ /dev/null @@ -1,78 +0,0 @@ -var global = require('../internals/global'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; -var classof = require('../internals/classof-raw'); -var macrotask = require('../internals/task').set; -var IS_IOS = require('../internals/engine-is-ios'); - -var MutationObserver = global.MutationObserver || global.WebKitMutationObserver; -var process = global.process; -var Promise = global.Promise; -var IS_NODE = classof(process) == 'process'; -// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask` -var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask'); -var queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value; - -var flush, head, last, notify, toggle, node, promise, then; - -// modern engines have queueMicrotask method -if (!queueMicrotask) { - flush = function () { - var parent, fn; - if (IS_NODE && (parent = process.domain)) parent.exit(); - while (head) { - fn = head.fn; - head = head.next; - try { - fn(); - } catch (error) { - if (head) notify(); - else last = undefined; - throw error; - } - } last = undefined; - if (parent) parent.enter(); - }; - - // Node.js - if (IS_NODE) { - notify = function () { - process.nextTick(flush); - }; - // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339 - } else if (MutationObserver && !IS_IOS) { - toggle = true; - node = document.createTextNode(''); - new MutationObserver(flush).observe(node, { characterData: true }); - notify = function () { - node.data = toggle = !toggle; - }; - // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { - // Promise.resolve without an argument throws an error in LG WebOS 2 - promise = Promise.resolve(undefined); - then = promise.then; - notify = function () { - then.call(promise, flush); - }; - // for other environments - macrotask based on: - // - setImmediate - // - MessageChannel - // - window.postMessag - // - onreadystatechange - // - setTimeout - } else { - notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); - }; - } -} - -module.exports = queueMicrotask || function (fn) { - var task = { fn: fn, next: undefined }; - if (last) last.next = task; - if (!head) { - head = task; - notify(); - } last = task; -}; diff --git a/node_modules/core-js-pure/internals/native-promise-constructor.js b/node_modules/core-js-pure/internals/native-promise-constructor.js deleted file mode 100644 index dae38224..00000000 --- a/node_modules/core-js-pure/internals/native-promise-constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var global = require('../internals/global'); - -module.exports = global.Promise; diff --git a/node_modules/core-js-pure/internals/native-symbol.js b/node_modules/core-js-pure/internals/native-symbol.js deleted file mode 100644 index bb22d6cf..00000000 --- a/node_modules/core-js-pure/internals/native-symbol.js +++ /dev/null @@ -1,7 +0,0 @@ -var fails = require('../internals/fails'); - -module.exports = !!Object.getOwnPropertySymbols && !fails(function () { - // Chrome 38 Symbol has incorrect toString conversion - // eslint-disable-next-line no-undef - return !String(Symbol()); -}); diff --git a/node_modules/core-js-pure/internals/native-url.js b/node_modules/core-js-pure/internals/native-url.js deleted file mode 100644 index b9ac5878..00000000 --- a/node_modules/core-js-pure/internals/native-url.js +++ /dev/null @@ -1,33 +0,0 @@ -var fails = require('../internals/fails'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var IS_PURE = require('../internals/is-pure'); - -var ITERATOR = wellKnownSymbol('iterator'); - -module.exports = !fails(function () { - var url = new URL('b?a=1&b=2&c=3', 'http://a'); - var searchParams = url.searchParams; - var result = ''; - url.pathname = 'c%20d'; - searchParams.forEach(function (value, key) { - searchParams['delete']('b'); - result += key + value; - }); - return (IS_PURE && !url.toJSON) - || !searchParams.sort - || url.href !== 'http://a/c%20d?a=1&c=3' - || searchParams.get('c') !== '3' - || String(new URLSearchParams('?a=1')) !== 'a=1' - || !searchParams[ITERATOR] - // throws in Edge - || new URL('https://a@b').username !== 'a' - || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b' - // not punycoded in Edge - || new URL('http://тест').host !== 'xn--e1aybc' - // not escaped in Chrome 62- - || new URL('http://a#б').hash !== '#%D0%B1' - // fails in Chrome 66- - || result !== 'a1c3' - // throws in Safari - || new URL('http://x', undefined).host !== 'x'; -}); diff --git a/node_modules/core-js-pure/internals/native-weak-map.js b/node_modules/core-js-pure/internals/native-weak-map.js deleted file mode 100644 index e2418213..00000000 --- a/node_modules/core-js-pure/internals/native-weak-map.js +++ /dev/null @@ -1,6 +0,0 @@ -var global = require('../internals/global'); -var inspectSource = require('../internals/inspect-source'); - -var WeakMap = global.WeakMap; - -module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap)); diff --git a/node_modules/core-js-pure/internals/new-promise-capability.js b/node_modules/core-js-pure/internals/new-promise-capability.js deleted file mode 100644 index 394edc97..00000000 --- a/node_modules/core-js-pure/internals/new-promise-capability.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var aFunction = require('../internals/a-function'); - -var PromiseCapability = function (C) { - var resolve, reject; - this.promise = new C(function ($$resolve, $$reject) { - if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); - resolve = $$resolve; - reject = $$reject; - }); - this.resolve = aFunction(resolve); - this.reject = aFunction(reject); -}; - -// 25.4.1.5 NewPromiseCapability(C) -module.exports.f = function (C) { - return new PromiseCapability(C); -}; diff --git a/node_modules/core-js-pure/internals/not-a-regexp.js b/node_modules/core-js-pure/internals/not-a-regexp.js deleted file mode 100644 index 7bb4e9c7..00000000 --- a/node_modules/core-js-pure/internals/not-a-regexp.js +++ /dev/null @@ -1,7 +0,0 @@ -var isRegExp = require('../internals/is-regexp'); - -module.exports = function (it) { - if (isRegExp(it)) { - throw TypeError("The method doesn't accept regular expressions"); - } return it; -}; diff --git a/node_modules/core-js-pure/internals/number-is-finite.js b/node_modules/core-js-pure/internals/number-is-finite.js deleted file mode 100644 index 4b26c4a8..00000000 --- a/node_modules/core-js-pure/internals/number-is-finite.js +++ /dev/null @@ -1,9 +0,0 @@ -var global = require('../internals/global'); - -var globalIsFinite = global.isFinite; - -// `Number.isFinite` method -// https://tc39.github.io/ecma262/#sec-number.isfinite -module.exports = Number.isFinite || function isFinite(it) { - return typeof it == 'number' && globalIsFinite(it); -}; diff --git a/node_modules/core-js-pure/internals/number-parse-float.js b/node_modules/core-js-pure/internals/number-parse-float.js deleted file mode 100644 index 0ff341d3..00000000 --- a/node_modules/core-js-pure/internals/number-parse-float.js +++ /dev/null @@ -1,14 +0,0 @@ -var global = require('../internals/global'); -var trim = require('../internals/string-trim').trim; -var whitespaces = require('../internals/whitespaces'); - -var $parseFloat = global.parseFloat; -var FORCED = 1 / $parseFloat(whitespaces + '-0') !== -Infinity; - -// `parseFloat` method -// https://tc39.github.io/ecma262/#sec-parsefloat-string -module.exports = FORCED ? function parseFloat(string) { - var trimmedString = trim(String(string)); - var result = $parseFloat(trimmedString); - return result === 0 && trimmedString.charAt(0) == '-' ? -0 : result; -} : $parseFloat; diff --git a/node_modules/core-js-pure/internals/number-parse-int.js b/node_modules/core-js-pure/internals/number-parse-int.js deleted file mode 100644 index 11b8232f..00000000 --- a/node_modules/core-js-pure/internals/number-parse-int.js +++ /dev/null @@ -1,14 +0,0 @@ -var global = require('../internals/global'); -var trim = require('../internals/string-trim').trim; -var whitespaces = require('../internals/whitespaces'); - -var $parseInt = global.parseInt; -var hex = /^[+-]?0[Xx]/; -var FORCED = $parseInt(whitespaces + '08') !== 8 || $parseInt(whitespaces + '0x16') !== 22; - -// `parseInt` method -// https://tc39.github.io/ecma262/#sec-parseint-string-radix -module.exports = FORCED ? function parseInt(string, radix) { - var S = trim(String(string)); - return $parseInt(S, (radix >>> 0) || (hex.test(S) ? 16 : 10)); -} : $parseInt; diff --git a/node_modules/core-js-pure/internals/object-assign.js b/node_modules/core-js-pure/internals/object-assign.js deleted file mode 100644 index f15d0005..00000000 --- a/node_modules/core-js-pure/internals/object-assign.js +++ /dev/null @@ -1,52 +0,0 @@ -'use strict'; -var DESCRIPTORS = require('../internals/descriptors'); -var fails = require('../internals/fails'); -var objectKeys = require('../internals/object-keys'); -var getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols'); -var propertyIsEnumerableModule = require('../internals/object-property-is-enumerable'); -var toObject = require('../internals/to-object'); -var IndexedObject = require('../internals/indexed-object'); - -var nativeAssign = Object.assign; -var defineProperty = Object.defineProperty; - -// `Object.assign` method -// https://tc39.github.io/ecma262/#sec-object.assign -module.exports = !nativeAssign || fails(function () { - // should have correct order of operations (Edge bug) - if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', { - enumerable: true, - get: function () { - defineProperty(this, 'b', { - value: 3, - enumerable: false - }); - } - }), { b: 2 })).b !== 1) return true; - // should work with symbols and should have deterministic property order (V8 bug) - var A = {}; - var B = {}; - // eslint-disable-next-line no-undef - var symbol = Symbol(); - var alphabet = 'abcdefghijklmnopqrst'; - A[symbol] = 7; - alphabet.split('').forEach(function (chr) { B[chr] = chr; }); - return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet; -}) ? function assign(target, source) { // eslint-disable-line no-unused-vars - var T = toObject(target); - var argumentsLength = arguments.length; - var index = 1; - var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; - var propertyIsEnumerable = propertyIsEnumerableModule.f; - while (argumentsLength > index) { - var S = IndexedObject(arguments[index++]); - var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S); - var length = keys.length; - var j = 0; - var key; - while (length > j) { - key = keys[j++]; - if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key]; - } - } return T; -} : nativeAssign; diff --git a/node_modules/core-js-pure/internals/object-create.js b/node_modules/core-js-pure/internals/object-create.js deleted file mode 100644 index 346d1086..00000000 --- a/node_modules/core-js-pure/internals/object-create.js +++ /dev/null @@ -1,78 +0,0 @@ -var anObject = require('../internals/an-object'); -var defineProperties = require('../internals/object-define-properties'); -var enumBugKeys = require('../internals/enum-bug-keys'); -var hiddenKeys = require('../internals/hidden-keys'); -var html = require('../internals/html'); -var documentCreateElement = require('../internals/document-create-element'); -var sharedKey = require('../internals/shared-key'); - -var GT = '>'; -var LT = '<'; -var PROTOTYPE = 'prototype'; -var SCRIPT = 'script'; -var IE_PROTO = sharedKey('IE_PROTO'); - -var EmptyConstructor = function () { /* empty */ }; - -var scriptTag = function (content) { - return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT; -}; - -// Create object with fake `null` prototype: use ActiveX Object with cleared prototype -var NullProtoObjectViaActiveX = function (activeXDocument) { - activeXDocument.write(scriptTag('')); - activeXDocument.close(); - var temp = activeXDocument.parentWindow.Object; - activeXDocument = null; // avoid memory leak - return temp; -}; - -// Create object with fake `null` prototype: use iframe Object with cleared prototype -var NullProtoObjectViaIFrame = function () { - // Thrash, waste and sodomy: IE GC bug - var iframe = documentCreateElement('iframe'); - var JS = 'java' + SCRIPT + ':'; - var iframeDocument; - iframe.style.display = 'none'; - html.appendChild(iframe); - // https://github.com/zloirock/core-js/issues/475 - iframe.src = String(JS); - iframeDocument = iframe.contentWindow.document; - iframeDocument.open(); - iframeDocument.write(scriptTag('document.F=Object')); - iframeDocument.close(); - return iframeDocument.F; -}; - -// Check for document.domain and active x support -// No need to use active x approach when document.domain is not set -// see https://github.com/es-shims/es5-shim/issues/150 -// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346 -// avoid IE GC bug -var activeXDocument; -var NullProtoObject = function () { - try { - /* global ActiveXObject */ - activeXDocument = document.domain && new ActiveXObject('htmlfile'); - } catch (error) { /* ignore */ } - NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame(); - var length = enumBugKeys.length; - while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]]; - return NullProtoObject(); -}; - -hiddenKeys[IE_PROTO] = true; - -// `Object.create` method -// https://tc39.github.io/ecma262/#sec-object.create -module.exports = Object.create || function create(O, Properties) { - var result; - if (O !== null) { - EmptyConstructor[PROTOTYPE] = anObject(O); - result = new EmptyConstructor(); - EmptyConstructor[PROTOTYPE] = null; - // add "__proto__" for Object.getPrototypeOf polyfill - result[IE_PROTO] = O; - } else result = NullProtoObject(); - return Properties === undefined ? result : defineProperties(result, Properties); -}; diff --git a/node_modules/core-js-pure/internals/object-define-properties.js b/node_modules/core-js-pure/internals/object-define-properties.js deleted file mode 100644 index c2b53399..00000000 --- a/node_modules/core-js-pure/internals/object-define-properties.js +++ /dev/null @@ -1,16 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var definePropertyModule = require('../internals/object-define-property'); -var anObject = require('../internals/an-object'); -var objectKeys = require('../internals/object-keys'); - -// `Object.defineProperties` method -// https://tc39.github.io/ecma262/#sec-object.defineproperties -module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) { - anObject(O); - var keys = objectKeys(Properties); - var length = keys.length; - var index = 0; - var key; - while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]); - return O; -}; diff --git a/node_modules/core-js-pure/internals/object-define-property.js b/node_modules/core-js-pure/internals/object-define-property.js deleted file mode 100644 index 375f20fb..00000000 --- a/node_modules/core-js-pure/internals/object-define-property.js +++ /dev/null @@ -1,20 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var IE8_DOM_DEFINE = require('../internals/ie8-dom-define'); -var anObject = require('../internals/an-object'); -var toPrimitive = require('../internals/to-primitive'); - -var nativeDefineProperty = Object.defineProperty; - -// `Object.defineProperty` method -// https://tc39.github.io/ecma262/#sec-object.defineproperty -exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) { - anObject(O); - P = toPrimitive(P, true); - anObject(Attributes); - if (IE8_DOM_DEFINE) try { - return nativeDefineProperty(O, P, Attributes); - } catch (error) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported'); - if ('value' in Attributes) O[P] = Attributes.value; - return O; -}; diff --git a/node_modules/core-js-pure/internals/object-get-own-property-descriptor.js b/node_modules/core-js-pure/internals/object-get-own-property-descriptor.js deleted file mode 100644 index acdae017..00000000 --- a/node_modules/core-js-pure/internals/object-get-own-property-descriptor.js +++ /dev/null @@ -1,20 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var propertyIsEnumerableModule = require('../internals/object-property-is-enumerable'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); -var toIndexedObject = require('../internals/to-indexed-object'); -var toPrimitive = require('../internals/to-primitive'); -var has = require('../internals/has'); -var IE8_DOM_DEFINE = require('../internals/ie8-dom-define'); - -var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; - -// `Object.getOwnPropertyDescriptor` method -// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor -exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { - O = toIndexedObject(O); - P = toPrimitive(P, true); - if (IE8_DOM_DEFINE) try { - return nativeGetOwnPropertyDescriptor(O, P); - } catch (error) { /* empty */ } - if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]); -}; diff --git a/node_modules/core-js-pure/internals/object-get-own-property-names-external.js b/node_modules/core-js-pure/internals/object-get-own-property-names-external.js deleted file mode 100644 index dfd94f1b..00000000 --- a/node_modules/core-js-pure/internals/object-get-own-property-names-external.js +++ /dev/null @@ -1,22 +0,0 @@ -var toIndexedObject = require('../internals/to-indexed-object'); -var nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f; - -var toString = {}.toString; - -var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames - ? Object.getOwnPropertyNames(window) : []; - -var getWindowNames = function (it) { - try { - return nativeGetOwnPropertyNames(it); - } catch (error) { - return windowNames.slice(); - } -}; - -// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window -module.exports.f = function getOwnPropertyNames(it) { - return windowNames && toString.call(it) == '[object Window]' - ? getWindowNames(it) - : nativeGetOwnPropertyNames(toIndexedObject(it)); -}; diff --git a/node_modules/core-js-pure/internals/object-get-own-property-names.js b/node_modules/core-js-pure/internals/object-get-own-property-names.js deleted file mode 100644 index f1b1be6c..00000000 --- a/node_modules/core-js-pure/internals/object-get-own-property-names.js +++ /dev/null @@ -1,10 +0,0 @@ -var internalObjectKeys = require('../internals/object-keys-internal'); -var enumBugKeys = require('../internals/enum-bug-keys'); - -var hiddenKeys = enumBugKeys.concat('length', 'prototype'); - -// `Object.getOwnPropertyNames` method -// https://tc39.github.io/ecma262/#sec-object.getownpropertynames -exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { - return internalObjectKeys(O, hiddenKeys); -}; diff --git a/node_modules/core-js-pure/internals/object-get-own-property-symbols.js b/node_modules/core-js-pure/internals/object-get-own-property-symbols.js deleted file mode 100644 index bc067290..00000000 --- a/node_modules/core-js-pure/internals/object-get-own-property-symbols.js +++ /dev/null @@ -1 +0,0 @@ -exports.f = Object.getOwnPropertySymbols; diff --git a/node_modules/core-js-pure/internals/object-get-prototype-of.js b/node_modules/core-js-pure/internals/object-get-prototype-of.js deleted file mode 100644 index c0bb726b..00000000 --- a/node_modules/core-js-pure/internals/object-get-prototype-of.js +++ /dev/null @@ -1,17 +0,0 @@ -var has = require('../internals/has'); -var toObject = require('../internals/to-object'); -var sharedKey = require('../internals/shared-key'); -var CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter'); - -var IE_PROTO = sharedKey('IE_PROTO'); -var ObjectPrototype = Object.prototype; - -// `Object.getPrototypeOf` method -// https://tc39.github.io/ecma262/#sec-object.getprototypeof -module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) { - O = toObject(O); - if (has(O, IE_PROTO)) return O[IE_PROTO]; - if (typeof O.constructor == 'function' && O instanceof O.constructor) { - return O.constructor.prototype; - } return O instanceof Object ? ObjectPrototype : null; -}; diff --git a/node_modules/core-js-pure/internals/object-iterator.js b/node_modules/core-js-pure/internals/object-iterator.js deleted file mode 100644 index 415824f8..00000000 --- a/node_modules/core-js-pure/internals/object-iterator.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; -var InternalStateModule = require('../internals/internal-state'); -var createIteratorConstructor = require('../internals/create-iterator-constructor'); -var has = require('../internals/has'); -var objectKeys = require('../internals/object-keys'); -var toObject = require('../internals/to-object'); - -var OBJECT_ITERATOR = 'Object Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(OBJECT_ITERATOR); - -module.exports = createIteratorConstructor(function ObjectIterator(source, mode) { - var object = toObject(source); - setInternalState(this, { - type: OBJECT_ITERATOR, - mode: mode, - object: object, - keys: objectKeys(object), - index: 0 - }); -}, 'Object', function next() { - var state = getInternalState(this); - var keys = state.keys; - while (true) { - if (keys === null || state.index >= keys.length) { - state.object = state.keys = null; - return { value: undefined, done: true }; - } - var key = keys[state.index++]; - var object = state.object; - if (!has(object, key)) continue; - switch (state.mode) { - case 'keys': return { value: key, done: false }; - case 'values': return { value: object[key], done: false }; - } /* entries */ return { value: [key, object[key]], done: false }; - } -}); diff --git a/node_modules/core-js-pure/internals/object-keys-internal.js b/node_modules/core-js-pure/internals/object-keys-internal.js deleted file mode 100644 index 40b4c987..00000000 --- a/node_modules/core-js-pure/internals/object-keys-internal.js +++ /dev/null @@ -1,17 +0,0 @@ -var has = require('../internals/has'); -var toIndexedObject = require('../internals/to-indexed-object'); -var indexOf = require('../internals/array-includes').indexOf; -var hiddenKeys = require('../internals/hidden-keys'); - -module.exports = function (object, names) { - var O = toIndexedObject(object); - var i = 0; - var result = []; - var key; - for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key); - // Don't enum bug & hidden keys - while (names.length > i) if (has(O, key = names[i++])) { - ~indexOf(result, key) || result.push(key); - } - return result; -}; diff --git a/node_modules/core-js-pure/internals/object-keys.js b/node_modules/core-js-pure/internals/object-keys.js deleted file mode 100644 index 7188505d..00000000 --- a/node_modules/core-js-pure/internals/object-keys.js +++ /dev/null @@ -1,8 +0,0 @@ -var internalObjectKeys = require('../internals/object-keys-internal'); -var enumBugKeys = require('../internals/enum-bug-keys'); - -// `Object.keys` method -// https://tc39.github.io/ecma262/#sec-object.keys -module.exports = Object.keys || function keys(O) { - return internalObjectKeys(O, enumBugKeys); -}; diff --git a/node_modules/core-js-pure/internals/object-property-is-enumerable.js b/node_modules/core-js-pure/internals/object-property-is-enumerable.js deleted file mode 100644 index 9ff22096..00000000 --- a/node_modules/core-js-pure/internals/object-property-is-enumerable.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var nativePropertyIsEnumerable = {}.propertyIsEnumerable; -var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; - -// Nashorn ~ JDK8 bug -var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1); - -// `Object.prototype.propertyIsEnumerable` method implementation -// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable -exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) { - var descriptor = getOwnPropertyDescriptor(this, V); - return !!descriptor && descriptor.enumerable; -} : nativePropertyIsEnumerable; diff --git a/node_modules/core-js-pure/internals/object-prototype-accessors-forced.js b/node_modules/core-js-pure/internals/object-prototype-accessors-forced.js deleted file mode 100644 index 98cb8ba0..00000000 --- a/node_modules/core-js-pure/internals/object-prototype-accessors-forced.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -var IS_PURE = require('../internals/is-pure'); -var global = require('../internals/global'); -var fails = require('../internals/fails'); - -// Forced replacement object prototype accessors methods -module.exports = IS_PURE || !fails(function () { - var key = Math.random(); - // In FF throws only define methods - // eslint-disable-next-line no-undef, no-useless-call - __defineSetter__.call(null, key, function () { /* empty */ }); - delete global[key]; -}); diff --git a/node_modules/core-js-pure/internals/object-set-prototype-of.js b/node_modules/core-js-pure/internals/object-set-prototype-of.js deleted file mode 100644 index ce7e97cc..00000000 --- a/node_modules/core-js-pure/internals/object-set-prototype-of.js +++ /dev/null @@ -1,24 +0,0 @@ -var anObject = require('../internals/an-object'); -var aPossiblePrototype = require('../internals/a-possible-prototype'); - -// `Object.setPrototypeOf` method -// https://tc39.github.io/ecma262/#sec-object.setprototypeof -// Works with __proto__ only. Old v8 can't work with null proto objects. -/* eslint-disable no-proto */ -module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { - var CORRECT_SETTER = false; - var test = {}; - var setter; - try { - setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; - setter.call(test, []); - CORRECT_SETTER = test instanceof Array; - } catch (error) { /* empty */ } - return function setPrototypeOf(O, proto) { - anObject(O); - aPossiblePrototype(proto); - if (CORRECT_SETTER) setter.call(O, proto); - else O.__proto__ = proto; - return O; - }; -}() : undefined); diff --git a/node_modules/core-js-pure/internals/object-to-array.js b/node_modules/core-js-pure/internals/object-to-array.js deleted file mode 100644 index 8e2409df..00000000 --- a/node_modules/core-js-pure/internals/object-to-array.js +++ /dev/null @@ -1,32 +0,0 @@ -var DESCRIPTORS = require('../internals/descriptors'); -var objectKeys = require('../internals/object-keys'); -var toIndexedObject = require('../internals/to-indexed-object'); -var propertyIsEnumerable = require('../internals/object-property-is-enumerable').f; - -// `Object.{ entries, values }` methods implementation -var createMethod = function (TO_ENTRIES) { - return function (it) { - var O = toIndexedObject(it); - var keys = objectKeys(O); - var length = keys.length; - var i = 0; - var result = []; - var key; - while (length > i) { - key = keys[i++]; - if (!DESCRIPTORS || propertyIsEnumerable.call(O, key)) { - result.push(TO_ENTRIES ? [key, O[key]] : O[key]); - } - } - return result; - }; -}; - -module.exports = { - // `Object.entries` method - // https://tc39.github.io/ecma262/#sec-object.entries - entries: createMethod(true), - // `Object.values` method - // https://tc39.github.io/ecma262/#sec-object.values - values: createMethod(false) -}; diff --git a/node_modules/core-js-pure/internals/object-to-string.js b/node_modules/core-js-pure/internals/object-to-string.js deleted file mode 100644 index 68fbea7c..00000000 --- a/node_modules/core-js-pure/internals/object-to-string.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support'); -var classof = require('../internals/classof'); - -// `Object.prototype.toString` method implementation -// https://tc39.github.io/ecma262/#sec-object.prototype.tostring -module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() { - return '[object ' + classof(this) + ']'; -}; diff --git a/node_modules/core-js-pure/internals/own-keys.js b/node_modules/core-js-pure/internals/own-keys.js deleted file mode 100644 index 4c3d8b5f..00000000 --- a/node_modules/core-js-pure/internals/own-keys.js +++ /dev/null @@ -1,11 +0,0 @@ -var getBuiltIn = require('../internals/get-built-in'); -var getOwnPropertyNamesModule = require('../internals/object-get-own-property-names'); -var getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols'); -var anObject = require('../internals/an-object'); - -// all object keys, includes non-enumerable and symbols -module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) { - var keys = getOwnPropertyNamesModule.f(anObject(it)); - var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; - return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys; -}; diff --git a/node_modules/core-js-pure/internals/path.js b/node_modules/core-js-pure/internals/path.js deleted file mode 100644 index f053ebf7..00000000 --- a/node_modules/core-js-pure/internals/path.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/node_modules/core-js-pure/internals/perform.js b/node_modules/core-js-pure/internals/perform.js deleted file mode 100644 index 3cd8eef9..00000000 --- a/node_modules/core-js-pure/internals/perform.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = function (exec) { - try { - return { error: false, value: exec() }; - } catch (error) { - return { error: true, value: error }; - } -}; diff --git a/node_modules/core-js-pure/internals/promise-resolve.js b/node_modules/core-js-pure/internals/promise-resolve.js deleted file mode 100644 index 18e73e1c..00000000 --- a/node_modules/core-js-pure/internals/promise-resolve.js +++ /dev/null @@ -1,12 +0,0 @@ -var anObject = require('../internals/an-object'); -var isObject = require('../internals/is-object'); -var newPromiseCapability = require('../internals/new-promise-capability'); - -module.exports = function (C, x) { - anObject(C); - if (isObject(x) && x.constructor === C) return x; - var promiseCapability = newPromiseCapability.f(C); - var resolve = promiseCapability.resolve; - resolve(x); - return promiseCapability.promise; -}; diff --git a/node_modules/core-js-pure/internals/redefine-all.js b/node_modules/core-js-pure/internals/redefine-all.js deleted file mode 100644 index b6f71ef3..00000000 --- a/node_modules/core-js-pure/internals/redefine-all.js +++ /dev/null @@ -1,8 +0,0 @@ -var redefine = require('../internals/redefine'); - -module.exports = function (target, src, options) { - for (var key in src) { - if (options && options.unsafe && target[key]) target[key] = src[key]; - else redefine(target, key, src[key], options); - } return target; -}; diff --git a/node_modules/core-js-pure/internals/redefine.js b/node_modules/core-js-pure/internals/redefine.js deleted file mode 100644 index 016ddf70..00000000 --- a/node_modules/core-js-pure/internals/redefine.js +++ /dev/null @@ -1,6 +0,0 @@ -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); - -module.exports = function (target, key, value, options) { - if (options && options.enumerable) target[key] = value; - else createNonEnumerableProperty(target, key, value); -}; diff --git a/node_modules/core-js-pure/internals/reflect-metadata.js b/node_modules/core-js-pure/internals/reflect-metadata.js deleted file mode 100644 index a8cd82f3..00000000 --- a/node_modules/core-js-pure/internals/reflect-metadata.js +++ /dev/null @@ -1,55 +0,0 @@ -// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` -var Map = require('../modules/es.map'); -var WeakMap = require('../modules/es.weak-map'); -var shared = require('../internals/shared'); - -var metadata = shared('metadata'); -var store = metadata.store || (metadata.store = new WeakMap()); - -var getOrCreateMetadataMap = function (target, targetKey, create) { - var targetMetadata = store.get(target); - if (!targetMetadata) { - if (!create) return; - store.set(target, targetMetadata = new Map()); - } - var keyMetadata = targetMetadata.get(targetKey); - if (!keyMetadata) { - if (!create) return; - targetMetadata.set(targetKey, keyMetadata = new Map()); - } return keyMetadata; -}; - -var ordinaryHasOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? false : metadataMap.has(MetadataKey); -}; - -var ordinaryGetOwnMetadata = function (MetadataKey, O, P) { - var metadataMap = getOrCreateMetadataMap(O, P, false); - return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey); -}; - -var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) { - getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue); -}; - -var ordinaryOwnMetadataKeys = function (target, targetKey) { - var metadataMap = getOrCreateMetadataMap(target, targetKey, false); - var keys = []; - if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); }); - return keys; -}; - -var toMetadataKey = function (it) { - return it === undefined || typeof it == 'symbol' ? it : String(it); -}; - -module.exports = { - store: store, - getMap: getOrCreateMetadataMap, - has: ordinaryHasOwnMetadata, - get: ordinaryGetOwnMetadata, - set: ordinaryDefineOwnMetadata, - keys: ordinaryOwnMetadataKeys, - toKey: toMetadataKey -}; diff --git a/node_modules/core-js-pure/internals/regexp-exec-abstract.js b/node_modules/core-js-pure/internals/regexp-exec-abstract.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/regexp-exec-abstract.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/regexp-exec.js b/node_modules/core-js-pure/internals/regexp-exec.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/regexp-exec.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/regexp-flags.js b/node_modules/core-js-pure/internals/regexp-flags.js deleted file mode 100644 index c77927b0..00000000 --- a/node_modules/core-js-pure/internals/regexp-flags.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var anObject = require('../internals/an-object'); - -// `RegExp.prototype.flags` getter implementation -// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags -module.exports = function () { - var that = anObject(this); - var result = ''; - if (that.global) result += 'g'; - if (that.ignoreCase) result += 'i'; - if (that.multiline) result += 'm'; - if (that.dotAll) result += 's'; - if (that.unicode) result += 'u'; - if (that.sticky) result += 'y'; - return result; -}; diff --git a/node_modules/core-js-pure/internals/regexp-sticky-helpers.js b/node_modules/core-js-pure/internals/regexp-sticky-helpers.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/regexp-sticky-helpers.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/require-object-coercible.js b/node_modules/core-js-pure/internals/require-object-coercible.js deleted file mode 100644 index f7b26627..00000000 --- a/node_modules/core-js-pure/internals/require-object-coercible.js +++ /dev/null @@ -1,6 +0,0 @@ -// `RequireObjectCoercible` abstract operation -// https://tc39.github.io/ecma262/#sec-requireobjectcoercible -module.exports = function (it) { - if (it == undefined) throw TypeError("Can't call method on " + it); - return it; -}; diff --git a/node_modules/core-js-pure/internals/same-value-zero.js b/node_modules/core-js-pure/internals/same-value-zero.js deleted file mode 100644 index 452f2308..00000000 --- a/node_modules/core-js-pure/internals/same-value-zero.js +++ /dev/null @@ -1,6 +0,0 @@ -// `SameValueZero` abstract operation -// https://tc39.github.io/ecma262/#sec-samevaluezero -module.exports = function (x, y) { - // eslint-disable-next-line no-self-compare - return x === y || x != x && y != y; -}; diff --git a/node_modules/core-js-pure/internals/same-value.js b/node_modules/core-js-pure/internals/same-value.js deleted file mode 100644 index 4661f85a..00000000 --- a/node_modules/core-js-pure/internals/same-value.js +++ /dev/null @@ -1,6 +0,0 @@ -// `SameValue` abstract operation -// https://tc39.github.io/ecma262/#sec-samevalue -module.exports = Object.is || function is(x, y) { - // eslint-disable-next-line no-self-compare - return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; -}; diff --git a/node_modules/core-js-pure/internals/set-global.js b/node_modules/core-js-pure/internals/set-global.js deleted file mode 100644 index 8ac96010..00000000 --- a/node_modules/core-js-pure/internals/set-global.js +++ /dev/null @@ -1,10 +0,0 @@ -var global = require('../internals/global'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); - -module.exports = function (key, value) { - try { - createNonEnumerableProperty(global, key, value); - } catch (error) { - global[key] = value; - } return value; -}; diff --git a/node_modules/core-js-pure/internals/set-species.js b/node_modules/core-js-pure/internals/set-species.js deleted file mode 100644 index 6be87f72..00000000 --- a/node_modules/core-js-pure/internals/set-species.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var getBuiltIn = require('../internals/get-built-in'); -var definePropertyModule = require('../internals/object-define-property'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var DESCRIPTORS = require('../internals/descriptors'); - -var SPECIES = wellKnownSymbol('species'); - -module.exports = function (CONSTRUCTOR_NAME) { - var Constructor = getBuiltIn(CONSTRUCTOR_NAME); - var defineProperty = definePropertyModule.f; - - if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) { - defineProperty(Constructor, SPECIES, { - configurable: true, - get: function () { return this; } - }); - } -}; diff --git a/node_modules/core-js-pure/internals/set-to-string-tag.js b/node_modules/core-js-pure/internals/set-to-string-tag.js deleted file mode 100644 index 7043d714..00000000 --- a/node_modules/core-js-pure/internals/set-to-string-tag.js +++ /dev/null @@ -1,20 +0,0 @@ -var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support'); -var defineProperty = require('../internals/object-define-property').f; -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var has = require('../internals/has'); -var toString = require('../internals/object-to-string'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -module.exports = function (it, TAG, STATIC, SET_METHOD) { - if (it) { - var target = STATIC ? it : it.prototype; - if (!has(target, TO_STRING_TAG)) { - defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG }); - } - if (SET_METHOD && !TO_STRING_TAG_SUPPORT) { - createNonEnumerableProperty(target, 'toString', toString); - } - } -}; diff --git a/node_modules/core-js-pure/internals/shared-key.js b/node_modules/core-js-pure/internals/shared-key.js deleted file mode 100644 index 35bc403d..00000000 --- a/node_modules/core-js-pure/internals/shared-key.js +++ /dev/null @@ -1,8 +0,0 @@ -var shared = require('../internals/shared'); -var uid = require('../internals/uid'); - -var keys = shared('keys'); - -module.exports = function (key) { - return keys[key] || (keys[key] = uid(key)); -}; diff --git a/node_modules/core-js-pure/internals/shared-store.js b/node_modules/core-js-pure/internals/shared-store.js deleted file mode 100644 index c54550a8..00000000 --- a/node_modules/core-js-pure/internals/shared-store.js +++ /dev/null @@ -1,7 +0,0 @@ -var global = require('../internals/global'); -var setGlobal = require('../internals/set-global'); - -var SHARED = '__core-js_shared__'; -var store = global[SHARED] || setGlobal(SHARED, {}); - -module.exports = store; diff --git a/node_modules/core-js-pure/internals/shared.js b/node_modules/core-js-pure/internals/shared.js deleted file mode 100644 index 0688ce16..00000000 --- a/node_modules/core-js-pure/internals/shared.js +++ /dev/null @@ -1,10 +0,0 @@ -var IS_PURE = require('../internals/is-pure'); -var store = require('../internals/shared-store'); - -(module.exports = function (key, value) { - return store[key] || (store[key] = value !== undefined ? value : {}); -})('versions', []).push({ - version: '3.6.4', - mode: IS_PURE ? 'pure' : 'global', - copyright: '© 2020 Denis Pushkarev (zloirock.ru)' -}); diff --git a/node_modules/core-js-pure/internals/species-constructor.js b/node_modules/core-js-pure/internals/species-constructor.js deleted file mode 100644 index 4d8f5657..00000000 --- a/node_modules/core-js-pure/internals/species-constructor.js +++ /dev/null @@ -1,13 +0,0 @@ -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var SPECIES = wellKnownSymbol('species'); - -// `SpeciesConstructor` abstract operation -// https://tc39.github.io/ecma262/#sec-speciesconstructor -module.exports = function (O, defaultConstructor) { - var C = anObject(O).constructor; - var S; - return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S); -}; diff --git a/node_modules/core-js-pure/internals/string-html-forced.js b/node_modules/core-js-pure/internals/string-html-forced.js deleted file mode 100644 index d3c884f5..00000000 --- a/node_modules/core-js-pure/internals/string-html-forced.js +++ /dev/null @@ -1,10 +0,0 @@ -var fails = require('../internals/fails'); - -// check the existence of a method, lowercase -// of a tag and escaping quotes in arguments -module.exports = function (METHOD_NAME) { - return fails(function () { - var test = ''[METHOD_NAME]('"'); - return test !== test.toLowerCase() || test.split('"').length > 3; - }); -}; diff --git a/node_modules/core-js-pure/internals/string-multibyte.js b/node_modules/core-js-pure/internals/string-multibyte.js deleted file mode 100644 index c0cf0862..00000000 --- a/node_modules/core-js-pure/internals/string-multibyte.js +++ /dev/null @@ -1,27 +0,0 @@ -var toInteger = require('../internals/to-integer'); -var requireObjectCoercible = require('../internals/require-object-coercible'); - -// `String.prototype.{ codePointAt, at }` methods implementation -var createMethod = function (CONVERT_TO_STRING) { - return function ($this, pos) { - var S = String(requireObjectCoercible($this)); - var position = toInteger(pos); - var size = S.length; - var first, second; - if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined; - first = S.charCodeAt(position); - return first < 0xD800 || first > 0xDBFF || position + 1 === size - || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF - ? CONVERT_TO_STRING ? S.charAt(position) : first - : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000; - }; -}; - -module.exports = { - // `String.prototype.codePointAt` method - // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat - codeAt: createMethod(false), - // `String.prototype.at` method - // https://github.com/mathiasbynens/String.prototype.at - charAt: createMethod(true) -}; diff --git a/node_modules/core-js-pure/internals/string-pad-webkit-bug.js b/node_modules/core-js-pure/internals/string-pad-webkit-bug.js deleted file mode 100644 index 9f94d3a1..00000000 --- a/node_modules/core-js-pure/internals/string-pad-webkit-bug.js +++ /dev/null @@ -1,5 +0,0 @@ -// https://github.com/zloirock/core-js/issues/280 -var userAgent = require('../internals/engine-user-agent'); - -// eslint-disable-next-line unicorn/no-unsafe-regex -module.exports = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); diff --git a/node_modules/core-js-pure/internals/string-pad.js b/node_modules/core-js-pure/internals/string-pad.js deleted file mode 100644 index c03090e0..00000000 --- a/node_modules/core-js-pure/internals/string-pad.js +++ /dev/null @@ -1,31 +0,0 @@ -// https://github.com/tc39/proposal-string-pad-start-end -var toLength = require('../internals/to-length'); -var repeat = require('../internals/string-repeat'); -var requireObjectCoercible = require('../internals/require-object-coercible'); - -var ceil = Math.ceil; - -// `String.prototype.{ padStart, padEnd }` methods implementation -var createMethod = function (IS_END) { - return function ($this, maxLength, fillString) { - var S = String(requireObjectCoercible($this)); - var stringLength = S.length; - var fillStr = fillString === undefined ? ' ' : String(fillString); - var intMaxLength = toLength(maxLength); - var fillLen, stringFiller; - if (intMaxLength <= stringLength || fillStr == '') return S; - fillLen = intMaxLength - stringLength; - stringFiller = repeat.call(fillStr, ceil(fillLen / fillStr.length)); - if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen); - return IS_END ? S + stringFiller : stringFiller + S; - }; -}; - -module.exports = { - // `String.prototype.padStart` method - // https://tc39.github.io/ecma262/#sec-string.prototype.padstart - start: createMethod(false), - // `String.prototype.padEnd` method - // https://tc39.github.io/ecma262/#sec-string.prototype.padend - end: createMethod(true) -}; diff --git a/node_modules/core-js-pure/internals/string-punycode-to-ascii.js b/node_modules/core-js-pure/internals/string-punycode-to-ascii.js deleted file mode 100644 index 436d39fe..00000000 --- a/node_modules/core-js-pure/internals/string-punycode-to-ascii.js +++ /dev/null @@ -1,168 +0,0 @@ -'use strict'; -// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js -var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 -var base = 36; -var tMin = 1; -var tMax = 26; -var skew = 38; -var damp = 700; -var initialBias = 72; -var initialN = 128; // 0x80 -var delimiter = '-'; // '\x2D' -var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars -var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators -var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process'; -var baseMinusTMin = base - tMin; -var floor = Math.floor; -var stringFromCharCode = String.fromCharCode; - -/** - * Creates an array containing the numeric code points of each Unicode - * character in the string. While JavaScript uses UCS-2 internally, - * this function will convert a pair of surrogate halves (each of which - * UCS-2 exposes as separate characters) into a single code point, - * matching UTF-16. - */ -var ucs2decode = function (string) { - var output = []; - var counter = 0; - var length = string.length; - while (counter < length) { - var value = string.charCodeAt(counter++); - if (value >= 0xD800 && value <= 0xDBFF && counter < length) { - // It's a high surrogate, and there is a next character. - var extra = string.charCodeAt(counter++); - if ((extra & 0xFC00) == 0xDC00) { // Low surrogate. - output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); - } else { - // It's an unmatched surrogate; only append this code unit, in case the - // next code unit is the high surrogate of a surrogate pair. - output.push(value); - counter--; - } - } else { - output.push(value); - } - } - return output; -}; - -/** - * Converts a digit/integer into a basic code point. - */ -var digitToBasic = function (digit) { - // 0..25 map to ASCII a..z or A..Z - // 26..35 map to ASCII 0..9 - return digit + 22 + 75 * (digit < 26); -}; - -/** - * Bias adaptation function as per section 3.4 of RFC 3492. - * https://tools.ietf.org/html/rfc3492#section-3.4 - */ -var adapt = function (delta, numPoints, firstTime) { - var k = 0; - delta = firstTime ? floor(delta / damp) : delta >> 1; - delta += floor(delta / numPoints); - for (; delta > baseMinusTMin * tMax >> 1; k += base) { - delta = floor(delta / baseMinusTMin); - } - return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); -}; - -/** - * Converts a string of Unicode symbols (e.g. a domain name label) to a - * Punycode string of ASCII-only symbols. - */ -// eslint-disable-next-line max-statements -var encode = function (input) { - var output = []; - - // Convert the input in UCS-2 to an array of Unicode code points. - input = ucs2decode(input); - - // Cache the length. - var inputLength = input.length; - - // Initialize the state. - var n = initialN; - var delta = 0; - var bias = initialBias; - var i, currentValue; - - // Handle the basic code points. - for (i = 0; i < input.length; i++) { - currentValue = input[i]; - if (currentValue < 0x80) { - output.push(stringFromCharCode(currentValue)); - } - } - - var basicLength = output.length; // number of basic code points. - var handledCPCount = basicLength; // number of code points that have been handled; - - // Finish the basic string with a delimiter unless it's empty. - if (basicLength) { - output.push(delimiter); - } - - // Main encoding loop: - while (handledCPCount < inputLength) { - // All non-basic code points < n have been handled already. Find the next larger one: - var m = maxInt; - for (i = 0; i < input.length; i++) { - currentValue = input[i]; - if (currentValue >= n && currentValue < m) { - m = currentValue; - } - } - - // Increase `delta` enough to advance the decoder's state to , but guard against overflow. - var handledCPCountPlusOne = handledCPCount + 1; - if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { - throw RangeError(OVERFLOW_ERROR); - } - - delta += (m - n) * handledCPCountPlusOne; - n = m; - - for (i = 0; i < input.length; i++) { - currentValue = input[i]; - if (currentValue < n && ++delta > maxInt) { - throw RangeError(OVERFLOW_ERROR); - } - if (currentValue == n) { - // Represent delta as a generalized variable-length integer. - var q = delta; - for (var k = base; /* no condition */; k += base) { - var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); - if (q < t) break; - var qMinusT = q - t; - var baseMinusT = base - t; - output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT))); - q = floor(qMinusT / baseMinusT); - } - - output.push(stringFromCharCode(digitToBasic(q))); - bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); - delta = 0; - ++handledCPCount; - } - } - - ++delta; - ++n; - } - return output.join(''); -}; - -module.exports = function (input) { - var encoded = []; - var labels = input.toLowerCase().replace(regexSeparators, '\u002E').split('.'); - var i, label; - for (i = 0; i < labels.length; i++) { - label = labels[i]; - encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label); - } - return encoded.join('.'); -}; diff --git a/node_modules/core-js-pure/internals/string-repeat.js b/node_modules/core-js-pure/internals/string-repeat.js deleted file mode 100644 index ab872b2f..00000000 --- a/node_modules/core-js-pure/internals/string-repeat.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var toInteger = require('../internals/to-integer'); -var requireObjectCoercible = require('../internals/require-object-coercible'); - -// `String.prototype.repeat` method implementation -// https://tc39.github.io/ecma262/#sec-string.prototype.repeat -module.exports = ''.repeat || function repeat(count) { - var str = String(requireObjectCoercible(this)); - var result = ''; - var n = toInteger(count); - if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions'); - for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str; - return result; -}; diff --git a/node_modules/core-js-pure/internals/string-trim-forced.js b/node_modules/core-js-pure/internals/string-trim-forced.js deleted file mode 100644 index 1b169ad9..00000000 --- a/node_modules/core-js-pure/internals/string-trim-forced.js +++ /dev/null @@ -1,12 +0,0 @@ -var fails = require('../internals/fails'); -var whitespaces = require('../internals/whitespaces'); - -var non = '\u200B\u0085\u180E'; - -// check that a method works with the correct list -// of whitespaces and has a correct name -module.exports = function (METHOD_NAME) { - return fails(function () { - return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME; - }); -}; diff --git a/node_modules/core-js-pure/internals/string-trim.js b/node_modules/core-js-pure/internals/string-trim.js deleted file mode 100644 index 294a32c8..00000000 --- a/node_modules/core-js-pure/internals/string-trim.js +++ /dev/null @@ -1,28 +0,0 @@ -var requireObjectCoercible = require('../internals/require-object-coercible'); -var whitespaces = require('../internals/whitespaces'); - -var whitespace = '[' + whitespaces + ']'; -var ltrim = RegExp('^' + whitespace + whitespace + '*'); -var rtrim = RegExp(whitespace + whitespace + '*$'); - -// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation -var createMethod = function (TYPE) { - return function ($this) { - var string = String(requireObjectCoercible($this)); - if (TYPE & 1) string = string.replace(ltrim, ''); - if (TYPE & 2) string = string.replace(rtrim, ''); - return string; - }; -}; - -module.exports = { - // `String.prototype.{ trimLeft, trimStart }` methods - // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart - start: createMethod(1), - // `String.prototype.{ trimRight, trimEnd }` methods - // https://tc39.github.io/ecma262/#sec-string.prototype.trimend - end: createMethod(2), - // `String.prototype.trim` method - // https://tc39.github.io/ecma262/#sec-string.prototype.trim - trim: createMethod(3) -}; diff --git a/node_modules/core-js-pure/internals/task.js b/node_modules/core-js-pure/internals/task.js deleted file mode 100644 index 834585fe..00000000 --- a/node_modules/core-js-pure/internals/task.js +++ /dev/null @@ -1,101 +0,0 @@ -var global = require('../internals/global'); -var fails = require('../internals/fails'); -var classof = require('../internals/classof-raw'); -var bind = require('../internals/function-bind-context'); -var html = require('../internals/html'); -var createElement = require('../internals/document-create-element'); -var IS_IOS = require('../internals/engine-is-ios'); - -var location = global.location; -var set = global.setImmediate; -var clear = global.clearImmediate; -var process = global.process; -var MessageChannel = global.MessageChannel; -var Dispatch = global.Dispatch; -var counter = 0; -var queue = {}; -var ONREADYSTATECHANGE = 'onreadystatechange'; -var defer, channel, port; - -var run = function (id) { - // eslint-disable-next-line no-prototype-builtins - if (queue.hasOwnProperty(id)) { - var fn = queue[id]; - delete queue[id]; - fn(); - } -}; - -var runner = function (id) { - return function () { - run(id); - }; -}; - -var listener = function (event) { - run(event.data); -}; - -var post = function (id) { - // old engines have not location.origin - global.postMessage(id + '', location.protocol + '//' + location.host); -}; - -// Node.js 0.9+ & IE10+ has setImmediate, otherwise: -if (!set || !clear) { - set = function setImmediate(fn) { - var args = []; - var i = 1; - while (arguments.length > i) args.push(arguments[i++]); - queue[++counter] = function () { - // eslint-disable-next-line no-new-func - (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args); - }; - defer(counter); - return counter; - }; - clear = function clearImmediate(id) { - delete queue[id]; - }; - // Node.js 0.8- - if (classof(process) == 'process') { - defer = function (id) { - process.nextTick(runner(id)); - }; - // Sphere (JS game engine) Dispatch API - } else if (Dispatch && Dispatch.now) { - defer = function (id) { - Dispatch.now(runner(id)); - }; - // Browsers with MessageChannel, includes WebWorkers - // except iOS - https://github.com/zloirock/core-js/issues/624 - } else if (MessageChannel && !IS_IOS) { - channel = new MessageChannel(); - port = channel.port2; - channel.port1.onmessage = listener; - defer = bind(port.postMessage, port, 1); - // Browsers with postMessage, skip WebWorkers - // IE8 has postMessage, but it's sync & typeof its postMessage is 'object' - } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts && !fails(post)) { - defer = post; - global.addEventListener('message', listener, false); - // IE8- - } else if (ONREADYSTATECHANGE in createElement('script')) { - defer = function (id) { - html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () { - html.removeChild(this); - run(id); - }; - }; - // Rest old browsers - } else { - defer = function (id) { - setTimeout(runner(id), 0); - }; - } -} - -module.exports = { - set: set, - clear: clear -}; diff --git a/node_modules/core-js-pure/internals/this-number-value.js b/node_modules/core-js-pure/internals/this-number-value.js deleted file mode 100644 index 7734b329..00000000 --- a/node_modules/core-js-pure/internals/this-number-value.js +++ /dev/null @@ -1,10 +0,0 @@ -var classof = require('../internals/classof-raw'); - -// `thisNumberValue` abstract operation -// https://tc39.github.io/ecma262/#sec-thisnumbervalue -module.exports = function (value) { - if (typeof value != 'number' && classof(value) != 'Number') { - throw TypeError('Incorrect invocation'); - } - return +value; -}; diff --git a/node_modules/core-js-pure/internals/to-absolute-index.js b/node_modules/core-js-pure/internals/to-absolute-index.js deleted file mode 100644 index 35cfd590..00000000 --- a/node_modules/core-js-pure/internals/to-absolute-index.js +++ /dev/null @@ -1,12 +0,0 @@ -var toInteger = require('../internals/to-integer'); - -var max = Math.max; -var min = Math.min; - -// Helper for a popular repeating case of the spec: -// Let integer be ? ToInteger(index). -// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length). -module.exports = function (index, length) { - var integer = toInteger(index); - return integer < 0 ? max(integer + length, 0) : min(integer, length); -}; diff --git a/node_modules/core-js-pure/internals/to-index.js b/node_modules/core-js-pure/internals/to-index.js deleted file mode 100644 index 004a3a22..00000000 --- a/node_modules/core-js-pure/internals/to-index.js +++ /dev/null @@ -1,12 +0,0 @@ -var toInteger = require('../internals/to-integer'); -var toLength = require('../internals/to-length'); - -// `ToIndex` abstract operation -// https://tc39.github.io/ecma262/#sec-toindex -module.exports = function (it) { - if (it === undefined) return 0; - var number = toInteger(it); - var length = toLength(number); - if (number !== length) throw RangeError('Wrong length or index'); - return length; -}; diff --git a/node_modules/core-js-pure/internals/to-indexed-object.js b/node_modules/core-js-pure/internals/to-indexed-object.js deleted file mode 100644 index 98f07992..00000000 --- a/node_modules/core-js-pure/internals/to-indexed-object.js +++ /dev/null @@ -1,7 +0,0 @@ -// toObject with fallback for non-array-like ES3 strings -var IndexedObject = require('../internals/indexed-object'); -var requireObjectCoercible = require('../internals/require-object-coercible'); - -module.exports = function (it) { - return IndexedObject(requireObjectCoercible(it)); -}; diff --git a/node_modules/core-js-pure/internals/to-integer.js b/node_modules/core-js-pure/internals/to-integer.js deleted file mode 100644 index f7c63906..00000000 --- a/node_modules/core-js-pure/internals/to-integer.js +++ /dev/null @@ -1,8 +0,0 @@ -var ceil = Math.ceil; -var floor = Math.floor; - -// `ToInteger` abstract operation -// https://tc39.github.io/ecma262/#sec-tointeger -module.exports = function (argument) { - return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument); -}; diff --git a/node_modules/core-js-pure/internals/to-length.js b/node_modules/core-js-pure/internals/to-length.js deleted file mode 100644 index fbc2a49e..00000000 --- a/node_modules/core-js-pure/internals/to-length.js +++ /dev/null @@ -1,9 +0,0 @@ -var toInteger = require('../internals/to-integer'); - -var min = Math.min; - -// `ToLength` abstract operation -// https://tc39.github.io/ecma262/#sec-tolength -module.exports = function (argument) { - return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 -}; diff --git a/node_modules/core-js-pure/internals/to-object.js b/node_modules/core-js-pure/internals/to-object.js deleted file mode 100644 index fd635e25..00000000 --- a/node_modules/core-js-pure/internals/to-object.js +++ /dev/null @@ -1,7 +0,0 @@ -var requireObjectCoercible = require('../internals/require-object-coercible'); - -// `ToObject` abstract operation -// https://tc39.github.io/ecma262/#sec-toobject -module.exports = function (argument) { - return Object(requireObjectCoercible(argument)); -}; diff --git a/node_modules/core-js-pure/internals/to-offset.js b/node_modules/core-js-pure/internals/to-offset.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/to-offset.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/to-positive-integer.js b/node_modules/core-js-pure/internals/to-positive-integer.js deleted file mode 100644 index c92aca5e..00000000 --- a/node_modules/core-js-pure/internals/to-positive-integer.js +++ /dev/null @@ -1,7 +0,0 @@ -var toInteger = require('../internals/to-integer'); - -module.exports = function (it) { - var result = toInteger(it); - if (result < 0) throw RangeError("The argument can't be less than 0"); - return result; -}; diff --git a/node_modules/core-js-pure/internals/to-primitive.js b/node_modules/core-js-pure/internals/to-primitive.js deleted file mode 100644 index 00a40314..00000000 --- a/node_modules/core-js-pure/internals/to-primitive.js +++ /dev/null @@ -1,14 +0,0 @@ -var isObject = require('../internals/is-object'); - -// `ToPrimitive` abstract operation -// https://tc39.github.io/ecma262/#sec-toprimitive -// instead of the ES6 spec version, we didn't implement @@toPrimitive case -// and the second argument - flag - preferred type is a string -module.exports = function (input, PREFERRED_STRING) { - if (!isObject(input)) return input; - var fn, val; - if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; - if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val; - if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; - throw TypeError("Can't convert object to primitive value"); -}; diff --git a/node_modules/core-js-pure/internals/to-string-tag-support.js b/node_modules/core-js-pure/internals/to-string-tag-support.js deleted file mode 100644 index 9e3ebfbe..00000000 --- a/node_modules/core-js-pure/internals/to-string-tag-support.js +++ /dev/null @@ -1,8 +0,0 @@ -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); -var test = {}; - -test[TO_STRING_TAG] = 'z'; - -module.exports = String(test) === '[object z]'; diff --git a/node_modules/core-js-pure/internals/typed-array-constructor.js b/node_modules/core-js-pure/internals/typed-array-constructor.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/typed-array-constructor.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/typed-array-constructors-require-wrappers.js b/node_modules/core-js-pure/internals/typed-array-constructors-require-wrappers.js deleted file mode 100644 index 952f30a4..00000000 --- a/node_modules/core-js-pure/internals/typed-array-constructors-require-wrappers.js +++ /dev/null @@ -1,22 +0,0 @@ -/* eslint-disable no-new */ -var global = require('../internals/global'); -var fails = require('../internals/fails'); -var checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration'); -var NATIVE_ARRAY_BUFFER_VIEWS = require('../internals/array-buffer-view-core').NATIVE_ARRAY_BUFFER_VIEWS; - -var ArrayBuffer = global.ArrayBuffer; -var Int8Array = global.Int8Array; - -module.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () { - Int8Array(1); -}) || !fails(function () { - new Int8Array(-1); -}) || !checkCorrectnessOfIteration(function (iterable) { - new Int8Array(); - new Int8Array(null); - new Int8Array(1.5); - new Int8Array(iterable); -}, true) || fails(function () { - // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill - return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1; -}); diff --git a/node_modules/core-js-pure/internals/typed-array-from.js b/node_modules/core-js-pure/internals/typed-array-from.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/internals/typed-array-from.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/internals/uid.js b/node_modules/core-js-pure/internals/uid.js deleted file mode 100644 index 384c124e..00000000 --- a/node_modules/core-js-pure/internals/uid.js +++ /dev/null @@ -1,6 +0,0 @@ -var id = 0; -var postfix = Math.random(); - -module.exports = function (key) { - return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36); -}; diff --git a/node_modules/core-js-pure/internals/use-symbol-as-uid.js b/node_modules/core-js-pure/internals/use-symbol-as-uid.js deleted file mode 100644 index 5654bf67..00000000 --- a/node_modules/core-js-pure/internals/use-symbol-as-uid.js +++ /dev/null @@ -1,7 +0,0 @@ -var NATIVE_SYMBOL = require('../internals/native-symbol'); - -module.exports = NATIVE_SYMBOL - // eslint-disable-next-line no-undef - && !Symbol.sham - // eslint-disable-next-line no-undef - && typeof Symbol.iterator == 'symbol'; diff --git a/node_modules/core-js-pure/internals/well-known-symbol-wrapped.js b/node_modules/core-js-pure/internals/well-known-symbol-wrapped.js deleted file mode 100644 index 714b3290..00000000 --- a/node_modules/core-js-pure/internals/well-known-symbol-wrapped.js +++ /dev/null @@ -1,3 +0,0 @@ -var wellKnownSymbol = require('../internals/well-known-symbol'); - -exports.f = wellKnownSymbol; diff --git a/node_modules/core-js-pure/internals/well-known-symbol.js b/node_modules/core-js-pure/internals/well-known-symbol.js deleted file mode 100644 index 3fcc8c3a..00000000 --- a/node_modules/core-js-pure/internals/well-known-symbol.js +++ /dev/null @@ -1,17 +0,0 @@ -var global = require('../internals/global'); -var shared = require('../internals/shared'); -var has = require('../internals/has'); -var uid = require('../internals/uid'); -var NATIVE_SYMBOL = require('../internals/native-symbol'); -var USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid'); - -var WellKnownSymbolsStore = shared('wks'); -var Symbol = global.Symbol; -var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid; - -module.exports = function (name) { - if (!has(WellKnownSymbolsStore, name)) { - if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name]; - else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name); - } return WellKnownSymbolsStore[name]; -}; diff --git a/node_modules/core-js-pure/internals/whitespaces.js b/node_modules/core-js-pure/internals/whitespaces.js deleted file mode 100644 index 0924bab1..00000000 --- a/node_modules/core-js-pure/internals/whitespaces.js +++ /dev/null @@ -1,3 +0,0 @@ -// a string of all valid unicode whitespaces -// eslint-disable-next-line max-len -module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; diff --git a/node_modules/core-js-pure/modules/README.md b/node_modules/core-js-pure/modules/README.md deleted file mode 100644 index 0d6b3cb0..00000000 --- a/node_modules/core-js-pure/modules/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains implementations of polyfills. It's not recommended to include in your projects directly if you don't completely understand what are you doing. diff --git a/node_modules/core-js-pure/modules/es.array-buffer.constructor.js b/node_modules/core-js-pure/modules/es.array-buffer.constructor.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.array-buffer.constructor.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.array-buffer.is-view.js b/node_modules/core-js-pure/modules/es.array-buffer.is-view.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.array-buffer.is-view.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.array-buffer.slice.js b/node_modules/core-js-pure/modules/es.array-buffer.slice.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.array-buffer.slice.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.array.concat.js b/node_modules/core-js-pure/modules/es.array.concat.js deleted file mode 100644 index 1c224990..00000000 --- a/node_modules/core-js-pure/modules/es.array.concat.js +++ /dev/null @@ -1,60 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var isArray = require('../internals/is-array'); -var isObject = require('../internals/is-object'); -var toObject = require('../internals/to-object'); -var toLength = require('../internals/to-length'); -var createProperty = require('../internals/create-property'); -var arraySpeciesCreate = require('../internals/array-species-create'); -var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var V8_VERSION = require('../internals/engine-v8-version'); - -var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable'); -var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; -var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded'; - -// We can't use this feature detection in V8 since it causes -// deoptimization and serious performance degradation -// https://github.com/zloirock/core-js/issues/679 -var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () { - var array = []; - array[IS_CONCAT_SPREADABLE] = false; - return array.concat()[0] !== array; -}); - -var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat'); - -var isConcatSpreadable = function (O) { - if (!isObject(O)) return false; - var spreadable = O[IS_CONCAT_SPREADABLE]; - return spreadable !== undefined ? !!spreadable : isArray(O); -}; - -var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT; - -// `Array.prototype.concat` method -// https://tc39.github.io/ecma262/#sec-array.prototype.concat -// with adding support of @@isConcatSpreadable and @@species -$({ target: 'Array', proto: true, forced: FORCED }, { - concat: function concat(arg) { // eslint-disable-line no-unused-vars - var O = toObject(this); - var A = arraySpeciesCreate(O, 0); - var n = 0; - var i, k, length, len, E; - for (i = -1, length = arguments.length; i < length; i++) { - E = i === -1 ? O : arguments[i]; - if (isConcatSpreadable(E)) { - len = toLength(E.length); - if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED); - for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]); - } else { - if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED); - createProperty(A, n++, E); - } - } - A.length = n; - return A; - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.copy-within.js b/node_modules/core-js-pure/modules/es.array.copy-within.js deleted file mode 100644 index 1fb0dda4..00000000 --- a/node_modules/core-js-pure/modules/es.array.copy-within.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); -var copyWithin = require('../internals/array-copy-within'); -var addToUnscopables = require('../internals/add-to-unscopables'); - -// `Array.prototype.copyWithin` method -// https://tc39.github.io/ecma262/#sec-array.prototype.copywithin -$({ target: 'Array', proto: true }, { - copyWithin: copyWithin -}); - -// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables('copyWithin'); diff --git a/node_modules/core-js-pure/modules/es.array.every.js b/node_modules/core-js-pure/modules/es.array.every.js deleted file mode 100644 index 231c5c24..00000000 --- a/node_modules/core-js-pure/modules/es.array.every.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $every = require('../internals/array-iteration').every; -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var STRICT_METHOD = arrayMethodIsStrict('every'); -var USES_TO_LENGTH = arrayMethodUsesToLength('every'); - -// `Array.prototype.every` method -// https://tc39.github.io/ecma262/#sec-array.prototype.every -$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, { - every: function every(callbackfn /* , thisArg */) { - return $every(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.fill.js b/node_modules/core-js-pure/modules/es.array.fill.js deleted file mode 100644 index ba9f4b46..00000000 --- a/node_modules/core-js-pure/modules/es.array.fill.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); -var fill = require('../internals/array-fill'); -var addToUnscopables = require('../internals/add-to-unscopables'); - -// `Array.prototype.fill` method -// https://tc39.github.io/ecma262/#sec-array.prototype.fill -$({ target: 'Array', proto: true }, { - fill: fill -}); - -// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables('fill'); diff --git a/node_modules/core-js-pure/modules/es.array.filter.js b/node_modules/core-js-pure/modules/es.array.filter.js deleted file mode 100644 index df2509bc..00000000 --- a/node_modules/core-js-pure/modules/es.array.filter.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $filter = require('../internals/array-iteration').filter; -var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter'); -// Edge 14- issue -var USES_TO_LENGTH = arrayMethodUsesToLength('filter'); - -// `Array.prototype.filter` method -// https://tc39.github.io/ecma262/#sec-array.prototype.filter -// with adding support of @@species -$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, { - filter: function filter(callbackfn /* , thisArg */) { - return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.find-index.js b/node_modules/core-js-pure/modules/es.array.find-index.js deleted file mode 100644 index 56c0b68f..00000000 --- a/node_modules/core-js-pure/modules/es.array.find-index.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $findIndex = require('../internals/array-iteration').findIndex; -var addToUnscopables = require('../internals/add-to-unscopables'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var FIND_INDEX = 'findIndex'; -var SKIPS_HOLES = true; - -var USES_TO_LENGTH = arrayMethodUsesToLength(FIND_INDEX); - -// Shouldn't skip holes -if (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; }); - -// `Array.prototype.findIndex` method -// https://tc39.github.io/ecma262/#sec-array.prototype.findindex -$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, { - findIndex: function findIndex(callbackfn /* , that = undefined */) { - return $findIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables(FIND_INDEX); diff --git a/node_modules/core-js-pure/modules/es.array.find.js b/node_modules/core-js-pure/modules/es.array.find.js deleted file mode 100644 index ad37cc79..00000000 --- a/node_modules/core-js-pure/modules/es.array.find.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $find = require('../internals/array-iteration').find; -var addToUnscopables = require('../internals/add-to-unscopables'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var FIND = 'find'; -var SKIPS_HOLES = true; - -var USES_TO_LENGTH = arrayMethodUsesToLength(FIND); - -// Shouldn't skip holes -if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; }); - -// `Array.prototype.find` method -// https://tc39.github.io/ecma262/#sec-array.prototype.find -$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, { - find: function find(callbackfn /* , that = undefined */) { - return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables(FIND); diff --git a/node_modules/core-js-pure/modules/es.array.flat-map.js b/node_modules/core-js-pure/modules/es.array.flat-map.js deleted file mode 100644 index 5469beef..00000000 --- a/node_modules/core-js-pure/modules/es.array.flat-map.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var flattenIntoArray = require('../internals/flatten-into-array'); -var toObject = require('../internals/to-object'); -var toLength = require('../internals/to-length'); -var aFunction = require('../internals/a-function'); -var arraySpeciesCreate = require('../internals/array-species-create'); - -// `Array.prototype.flatMap` method -// https://github.com/tc39/proposal-flatMap -$({ target: 'Array', proto: true }, { - flatMap: function flatMap(callbackfn /* , thisArg */) { - var O = toObject(this); - var sourceLen = toLength(O.length); - var A; - aFunction(callbackfn); - A = arraySpeciesCreate(O, 0); - A.length = flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - return A; - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.flat.js b/node_modules/core-js-pure/modules/es.array.flat.js deleted file mode 100644 index cb2c9d75..00000000 --- a/node_modules/core-js-pure/modules/es.array.flat.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var flattenIntoArray = require('../internals/flatten-into-array'); -var toObject = require('../internals/to-object'); -var toLength = require('../internals/to-length'); -var toInteger = require('../internals/to-integer'); -var arraySpeciesCreate = require('../internals/array-species-create'); - -// `Array.prototype.flat` method -// https://github.com/tc39/proposal-flatMap -$({ target: 'Array', proto: true }, { - flat: function flat(/* depthArg = 1 */) { - var depthArg = arguments.length ? arguments[0] : undefined; - var O = toObject(this); - var sourceLen = toLength(O.length); - var A = arraySpeciesCreate(O, 0); - A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg)); - return A; - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.for-each.js b/node_modules/core-js-pure/modules/es.array.for-each.js deleted file mode 100644 index 4fb29d07..00000000 --- a/node_modules/core-js-pure/modules/es.array.for-each.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var forEach = require('../internals/array-for-each'); - -// `Array.prototype.forEach` method -// https://tc39.github.io/ecma262/#sec-array.prototype.foreach -$({ target: 'Array', proto: true, forced: [].forEach != forEach }, { - forEach: forEach -}); diff --git a/node_modules/core-js-pure/modules/es.array.from.js b/node_modules/core-js-pure/modules/es.array.from.js deleted file mode 100644 index 5c21cbca..00000000 --- a/node_modules/core-js-pure/modules/es.array.from.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); -var from = require('../internals/array-from'); -var checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration'); - -var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) { - Array.from(iterable); -}); - -// `Array.from` method -// https://tc39.github.io/ecma262/#sec-array.from -$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, { - from: from -}); diff --git a/node_modules/core-js-pure/modules/es.array.includes.js b/node_modules/core-js-pure/modules/es.array.includes.js deleted file mode 100644 index 00365569..00000000 --- a/node_modules/core-js-pure/modules/es.array.includes.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $includes = require('../internals/array-includes').includes; -var addToUnscopables = require('../internals/add-to-unscopables'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 }); - -// `Array.prototype.includes` method -// https://tc39.github.io/ecma262/#sec-array.prototype.includes -$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, { - includes: function includes(el /* , fromIndex = 0 */) { - return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined); - } -}); - -// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables('includes'); diff --git a/node_modules/core-js-pure/modules/es.array.index-of.js b/node_modules/core-js-pure/modules/es.array.index-of.js deleted file mode 100644 index 5a1442b3..00000000 --- a/node_modules/core-js-pure/modules/es.array.index-of.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $indexOf = require('../internals/array-includes').indexOf; -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var nativeIndexOf = [].indexOf; - -var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0; -var STRICT_METHOD = arrayMethodIsStrict('indexOf'); -var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 }); - -// `Array.prototype.indexOf` method -// https://tc39.github.io/ecma262/#sec-array.prototype.indexof -$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, { - indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { - return NEGATIVE_ZERO - // convert -0 to +0 - ? nativeIndexOf.apply(this, arguments) || 0 - : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.is-array.js b/node_modules/core-js-pure/modules/es.array.is-array.js deleted file mode 100644 index b77fad6a..00000000 --- a/node_modules/core-js-pure/modules/es.array.is-array.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var isArray = require('../internals/is-array'); - -// `Array.isArray` method -// https://tc39.github.io/ecma262/#sec-array.isarray -$({ target: 'Array', stat: true }, { - isArray: isArray -}); diff --git a/node_modules/core-js-pure/modules/es.array.iterator.js b/node_modules/core-js-pure/modules/es.array.iterator.js deleted file mode 100644 index 5e644226..00000000 --- a/node_modules/core-js-pure/modules/es.array.iterator.js +++ /dev/null @@ -1,53 +0,0 @@ -'use strict'; -var toIndexedObject = require('../internals/to-indexed-object'); -var addToUnscopables = require('../internals/add-to-unscopables'); -var Iterators = require('../internals/iterators'); -var InternalStateModule = require('../internals/internal-state'); -var defineIterator = require('../internals/define-iterator'); - -var ARRAY_ITERATOR = 'Array Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR); - -// `Array.prototype.entries` method -// https://tc39.github.io/ecma262/#sec-array.prototype.entries -// `Array.prototype.keys` method -// https://tc39.github.io/ecma262/#sec-array.prototype.keys -// `Array.prototype.values` method -// https://tc39.github.io/ecma262/#sec-array.prototype.values -// `Array.prototype[@@iterator]` method -// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator -// `CreateArrayIterator` internal method -// https://tc39.github.io/ecma262/#sec-createarrayiterator -module.exports = defineIterator(Array, 'Array', function (iterated, kind) { - setInternalState(this, { - type: ARRAY_ITERATOR, - target: toIndexedObject(iterated), // target - index: 0, // next index - kind: kind // kind - }); -// `%ArrayIteratorPrototype%.next` method -// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next -}, function () { - var state = getInternalState(this); - var target = state.target; - var kind = state.kind; - var index = state.index++; - if (!target || index >= target.length) { - state.target = undefined; - return { value: undefined, done: true }; - } - if (kind == 'keys') return { value: index, done: false }; - if (kind == 'values') return { value: target[index], done: false }; - return { value: [index, target[index]], done: false }; -}, 'values'); - -// argumentsList[@@iterator] is %ArrayProto_values% -// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject -// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject -Iterators.Arguments = Iterators.Array; - -// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables -addToUnscopables('keys'); -addToUnscopables('values'); -addToUnscopables('entries'); diff --git a/node_modules/core-js-pure/modules/es.array.join.js b/node_modules/core-js-pure/modules/es.array.join.js deleted file mode 100644 index 79ad8d26..00000000 --- a/node_modules/core-js-pure/modules/es.array.join.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IndexedObject = require('../internals/indexed-object'); -var toIndexedObject = require('../internals/to-indexed-object'); -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); - -var nativeJoin = [].join; - -var ES3_STRINGS = IndexedObject != Object; -var STRICT_METHOD = arrayMethodIsStrict('join', ','); - -// `Array.prototype.join` method -// https://tc39.github.io/ecma262/#sec-array.prototype.join -$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, { - join: function join(separator) { - return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.last-index-of.js b/node_modules/core-js-pure/modules/es.array.last-index-of.js deleted file mode 100644 index d2090551..00000000 --- a/node_modules/core-js-pure/modules/es.array.last-index-of.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var lastIndexOf = require('../internals/array-last-index-of'); - -// `Array.prototype.lastIndexOf` method -// https://tc39.github.io/ecma262/#sec-array.prototype.lastindexof -$({ target: 'Array', proto: true, forced: lastIndexOf !== [].lastIndexOf }, { - lastIndexOf: lastIndexOf -}); diff --git a/node_modules/core-js-pure/modules/es.array.map.js b/node_modules/core-js-pure/modules/es.array.map.js deleted file mode 100644 index f9a8cdfe..00000000 --- a/node_modules/core-js-pure/modules/es.array.map.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $map = require('../internals/array-iteration').map; -var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map'); -// FF49- issue -var USES_TO_LENGTH = arrayMethodUsesToLength('map'); - -// `Array.prototype.map` method -// https://tc39.github.io/ecma262/#sec-array.prototype.map -// with adding support of @@species -$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, { - map: function map(callbackfn /* , thisArg */) { - return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.of.js b/node_modules/core-js-pure/modules/es.array.of.js deleted file mode 100644 index 2788091b..00000000 --- a/node_modules/core-js-pure/modules/es.array.of.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var createProperty = require('../internals/create-property'); - -var ISNT_GENERIC = fails(function () { - function F() { /* empty */ } - return !(Array.of.call(F) instanceof F); -}); - -// `Array.of` method -// https://tc39.github.io/ecma262/#sec-array.of -// WebKit Array.of isn't generic -$({ target: 'Array', stat: true, forced: ISNT_GENERIC }, { - of: function of(/* ...args */) { - var index = 0; - var argumentsLength = arguments.length; - var result = new (typeof this == 'function' ? this : Array)(argumentsLength); - while (argumentsLength > index) createProperty(result, index, arguments[index++]); - result.length = argumentsLength; - return result; - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.reduce-right.js b/node_modules/core-js-pure/modules/es.array.reduce-right.js deleted file mode 100644 index 37aeb2d3..00000000 --- a/node_modules/core-js-pure/modules/es.array.reduce-right.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $reduceRight = require('../internals/array-reduce').right; -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var STRICT_METHOD = arrayMethodIsStrict('reduceRight'); -// For preventing possible almost infinite loop in non-standard implementations, test the forward version of the method -var USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 }); - -// `Array.prototype.reduceRight` method -// https://tc39.github.io/ecma262/#sec-array.prototype.reduceright -$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, { - reduceRight: function reduceRight(callbackfn /* , initialValue */) { - return $reduceRight(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.reduce.js b/node_modules/core-js-pure/modules/es.array.reduce.js deleted file mode 100644 index 40e04587..00000000 --- a/node_modules/core-js-pure/modules/es.array.reduce.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $reduce = require('../internals/array-reduce').left; -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var STRICT_METHOD = arrayMethodIsStrict('reduce'); -var USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 }); - -// `Array.prototype.reduce` method -// https://tc39.github.io/ecma262/#sec-array.prototype.reduce -$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, { - reduce: function reduce(callbackfn /* , initialValue */) { - return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.reverse.js b/node_modules/core-js-pure/modules/es.array.reverse.js deleted file mode 100644 index bfe96d55..00000000 --- a/node_modules/core-js-pure/modules/es.array.reverse.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var isArray = require('../internals/is-array'); - -var nativeReverse = [].reverse; -var test = [1, 2]; - -// `Array.prototype.reverse` method -// https://tc39.github.io/ecma262/#sec-array.prototype.reverse -// fix for Safari 12.0 bug -// https://bugs.webkit.org/show_bug.cgi?id=188794 -$({ target: 'Array', proto: true, forced: String(test) === String(test.reverse()) }, { - reverse: function reverse() { - // eslint-disable-next-line no-self-assign - if (isArray(this)) this.length = this.length; - return nativeReverse.call(this); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.slice.js b/node_modules/core-js-pure/modules/es.array.slice.js deleted file mode 100644 index 27609f53..00000000 --- a/node_modules/core-js-pure/modules/es.array.slice.js +++ /dev/null @@ -1,49 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var isObject = require('../internals/is-object'); -var isArray = require('../internals/is-array'); -var toAbsoluteIndex = require('../internals/to-absolute-index'); -var toLength = require('../internals/to-length'); -var toIndexedObject = require('../internals/to-indexed-object'); -var createProperty = require('../internals/create-property'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice'); -var USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 }); - -var SPECIES = wellKnownSymbol('species'); -var nativeSlice = [].slice; -var max = Math.max; - -// `Array.prototype.slice` method -// https://tc39.github.io/ecma262/#sec-array.prototype.slice -// fallback for not array-like ES3 strings and DOM objects -$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, { - slice: function slice(start, end) { - var O = toIndexedObject(this); - var length = toLength(O.length); - var k = toAbsoluteIndex(start, length); - var fin = toAbsoluteIndex(end === undefined ? length : end, length); - // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible - var Constructor, result, n; - if (isArray(O)) { - Constructor = O.constructor; - // cross-realm fallback - if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) { - Constructor = undefined; - } else if (isObject(Constructor)) { - Constructor = Constructor[SPECIES]; - if (Constructor === null) Constructor = undefined; - } - if (Constructor === Array || Constructor === undefined) { - return nativeSlice.call(O, k, fin); - } - } - result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0)); - for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]); - result.length = n; - return result; - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.some.js b/node_modules/core-js-pure/modules/es.array.some.js deleted file mode 100644 index e143d07e..00000000 --- a/node_modules/core-js-pure/modules/es.array.some.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $some = require('../internals/array-iteration').some; -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var STRICT_METHOD = arrayMethodIsStrict('some'); -var USES_TO_LENGTH = arrayMethodUsesToLength('some'); - -// `Array.prototype.some` method -// https://tc39.github.io/ecma262/#sec-array.prototype.some -$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, { - some: function some(callbackfn /* , thisArg */) { - return $some(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.sort.js b/node_modules/core-js-pure/modules/es.array.sort.js deleted file mode 100644 index 1b46f515..00000000 --- a/node_modules/core-js-pure/modules/es.array.sort.js +++ /dev/null @@ -1,32 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var toObject = require('../internals/to-object'); -var fails = require('../internals/fails'); -var arrayMethodIsStrict = require('../internals/array-method-is-strict'); - -var test = []; -var nativeSort = test.sort; - -// IE8- -var FAILS_ON_UNDEFINED = fails(function () { - test.sort(undefined); -}); -// V8 bug -var FAILS_ON_NULL = fails(function () { - test.sort(null); -}); -// Old WebKit -var STRICT_METHOD = arrayMethodIsStrict('sort'); - -var FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD; - -// `Array.prototype.sort` method -// https://tc39.github.io/ecma262/#sec-array.prototype.sort -$({ target: 'Array', proto: true, forced: FORCED }, { - sort: function sort(comparefn) { - return comparefn === undefined - ? nativeSort.call(toObject(this)) - : nativeSort.call(toObject(this), aFunction(comparefn)); - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.species.js b/node_modules/core-js-pure/modules/es.array.species.js deleted file mode 100644 index a0e78299..00000000 --- a/node_modules/core-js-pure/modules/es.array.species.js +++ /dev/null @@ -1,5 +0,0 @@ -var setSpecies = require('../internals/set-species'); - -// `Array[@@species]` getter -// https://tc39.github.io/ecma262/#sec-get-array-@@species -setSpecies('Array'); diff --git a/node_modules/core-js-pure/modules/es.array.splice.js b/node_modules/core-js-pure/modules/es.array.splice.js deleted file mode 100644 index 31debcac..00000000 --- a/node_modules/core-js-pure/modules/es.array.splice.js +++ /dev/null @@ -1,70 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var toAbsoluteIndex = require('../internals/to-absolute-index'); -var toInteger = require('../internals/to-integer'); -var toLength = require('../internals/to-length'); -var toObject = require('../internals/to-object'); -var arraySpeciesCreate = require('../internals/array-species-create'); -var createProperty = require('../internals/create-property'); -var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support'); -var arrayMethodUsesToLength = require('../internals/array-method-uses-to-length'); - -var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice'); -var USES_TO_LENGTH = arrayMethodUsesToLength('splice', { ACCESSORS: true, 0: 0, 1: 2 }); - -var max = Math.max; -var min = Math.min; -var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; -var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded'; - -// `Array.prototype.splice` method -// https://tc39.github.io/ecma262/#sec-array.prototype.splice -// with adding support of @@species -$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, { - splice: function splice(start, deleteCount /* , ...items */) { - var O = toObject(this); - var len = toLength(O.length); - var actualStart = toAbsoluteIndex(start, len); - var argumentsLength = arguments.length; - var insertCount, actualDeleteCount, A, k, from, to; - if (argumentsLength === 0) { - insertCount = actualDeleteCount = 0; - } else if (argumentsLength === 1) { - insertCount = 0; - actualDeleteCount = len - actualStart; - } else { - insertCount = argumentsLength - 2; - actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart); - } - if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) { - throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED); - } - A = arraySpeciesCreate(O, actualDeleteCount); - for (k = 0; k < actualDeleteCount; k++) { - from = actualStart + k; - if (from in O) createProperty(A, k, O[from]); - } - A.length = actualDeleteCount; - if (insertCount < actualDeleteCount) { - for (k = actualStart; k < len - actualDeleteCount; k++) { - from = k + actualDeleteCount; - to = k + insertCount; - if (from in O) O[to] = O[from]; - else delete O[to]; - } - for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1]; - } else if (insertCount > actualDeleteCount) { - for (k = len - actualDeleteCount; k > actualStart; k--) { - from = k + actualDeleteCount - 1; - to = k + insertCount - 1; - if (from in O) O[to] = O[from]; - else delete O[to]; - } - } - for (k = 0; k < insertCount; k++) { - O[k + actualStart] = arguments[k + 2]; - } - O.length = len - actualDeleteCount + insertCount; - return A; - } -}); diff --git a/node_modules/core-js-pure/modules/es.array.unscopables.flat-map.js b/node_modules/core-js-pure/modules/es.array.unscopables.flat-map.js deleted file mode 100644 index 593cf055..00000000 --- a/node_modules/core-js-pure/modules/es.array.unscopables.flat-map.js +++ /dev/null @@ -1,5 +0,0 @@ -// this method was added to unscopables after implementation -// in popular engines, so it's moved to a separate module -var addToUnscopables = require('../internals/add-to-unscopables'); - -addToUnscopables('flatMap'); diff --git a/node_modules/core-js-pure/modules/es.array.unscopables.flat.js b/node_modules/core-js-pure/modules/es.array.unscopables.flat.js deleted file mode 100644 index ce6656c3..00000000 --- a/node_modules/core-js-pure/modules/es.array.unscopables.flat.js +++ /dev/null @@ -1,5 +0,0 @@ -// this method was added to unscopables after implementation -// in popular engines, so it's moved to a separate module -var addToUnscopables = require('../internals/add-to-unscopables'); - -addToUnscopables('flat'); diff --git a/node_modules/core-js-pure/modules/es.data-view.js b/node_modules/core-js-pure/modules/es.data-view.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.data-view.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.date.now.js b/node_modules/core-js-pure/modules/es.date.now.js deleted file mode 100644 index c4dc75b0..00000000 --- a/node_modules/core-js-pure/modules/es.date.now.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); - -// `Date.now` method -// https://tc39.github.io/ecma262/#sec-date.now -$({ target: 'Date', stat: true }, { - now: function now() { - return new Date().getTime(); - } -}); diff --git a/node_modules/core-js-pure/modules/es.date.to-iso-string.js b/node_modules/core-js-pure/modules/es.date.to-iso-string.js deleted file mode 100644 index 14f8ae0b..00000000 --- a/node_modules/core-js-pure/modules/es.date.to-iso-string.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); -var toISOString = require('../internals/date-to-iso-string'); - -// `Date.prototype.toISOString` method -// https://tc39.github.io/ecma262/#sec-date.prototype.toisostring -// PhantomJS / old WebKit has a broken implementations -$({ target: 'Date', proto: true, forced: Date.prototype.toISOString !== toISOString }, { - toISOString: toISOString -}); diff --git a/node_modules/core-js-pure/modules/es.date.to-json.js b/node_modules/core-js-pure/modules/es.date.to-json.js deleted file mode 100644 index 592f9e82..00000000 --- a/node_modules/core-js-pure/modules/es.date.to-json.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var toObject = require('../internals/to-object'); -var toPrimitive = require('../internals/to-primitive'); -var toISOString = require('../internals/date-to-iso-string'); -var classof = require('../internals/classof-raw'); -var fails = require('../internals/fails'); - -var FORCED = fails(function () { - return new Date(NaN).toJSON() !== null - || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1; -}); - -$({ target: 'Date', proto: true, forced: FORCED }, { - // eslint-disable-next-line no-unused-vars - toJSON: function toJSON(key) { - var O = toObject(this); - var pv = toPrimitive(O); - return typeof pv == 'number' && !isFinite(pv) ? null : - (!('toISOString' in O) && classof(O) == 'Date') ? toISOString.call(O) : O.toISOString(); - } -}); diff --git a/node_modules/core-js-pure/modules/es.date.to-primitive.js b/node_modules/core-js-pure/modules/es.date.to-primitive.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.date.to-primitive.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.date.to-string.js b/node_modules/core-js-pure/modules/es.date.to-string.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.date.to-string.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.function.bind.js b/node_modules/core-js-pure/modules/es.function.bind.js deleted file mode 100644 index fb33e969..00000000 --- a/node_modules/core-js-pure/modules/es.function.bind.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var bind = require('../internals/function-bind'); - -// `Function.prototype.bind` method -// https://tc39.github.io/ecma262/#sec-function.prototype.bind -$({ target: 'Function', proto: true }, { - bind: bind -}); diff --git a/node_modules/core-js-pure/modules/es.function.has-instance.js b/node_modules/core-js-pure/modules/es.function.has-instance.js deleted file mode 100644 index 01383bd9..00000000 --- a/node_modules/core-js-pure/modules/es.function.has-instance.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var isObject = require('../internals/is-object'); -var definePropertyModule = require('../internals/object-define-property'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var HAS_INSTANCE = wellKnownSymbol('hasInstance'); -var FunctionPrototype = Function.prototype; - -// `Function.prototype[@@hasInstance]` method -// https://tc39.github.io/ecma262/#sec-function.prototype-@@hasinstance -if (!(HAS_INSTANCE in FunctionPrototype)) { - definePropertyModule.f(FunctionPrototype, HAS_INSTANCE, { value: function (O) { - if (typeof this != 'function' || !isObject(O)) return false; - if (!isObject(this.prototype)) return O instanceof this; - // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this: - while (O = getPrototypeOf(O)) if (this.prototype === O) return true; - return false; - } }); -} diff --git a/node_modules/core-js-pure/modules/es.function.name.js b/node_modules/core-js-pure/modules/es.function.name.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.function.name.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.global-this.js b/node_modules/core-js-pure/modules/es.global-this.js deleted file mode 100644 index 7e925c87..00000000 --- a/node_modules/core-js-pure/modules/es.global-this.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var global = require('../internals/global'); - -// `globalThis` object -// https://github.com/tc39/proposal-global -$({ global: true }, { - globalThis: global -}); diff --git a/node_modules/core-js-pure/modules/es.json.stringify.js b/node_modules/core-js-pure/modules/es.json.stringify.js deleted file mode 100644 index 56ba89ff..00000000 --- a/node_modules/core-js-pure/modules/es.json.stringify.js +++ /dev/null @@ -1,32 +0,0 @@ -var $ = require('../internals/export'); -var getBuiltIn = require('../internals/get-built-in'); -var fails = require('../internals/fails'); - -var $stringify = getBuiltIn('JSON', 'stringify'); -var re = /[\uD800-\uDFFF]/g; -var low = /^[\uD800-\uDBFF]$/; -var hi = /^[\uDC00-\uDFFF]$/; - -var fix = function (match, offset, string) { - var prev = string.charAt(offset - 1); - var next = string.charAt(offset + 1); - if ((low.test(match) && !hi.test(next)) || (hi.test(match) && !low.test(prev))) { - return '\\u' + match.charCodeAt(0).toString(16); - } return match; -}; - -var FORCED = fails(function () { - return $stringify('\uDF06\uD834') !== '"\\udf06\\ud834"' - || $stringify('\uDEAD') !== '"\\udead"'; -}); - -if ($stringify) { - // https://github.com/tc39/proposal-well-formed-stringify - $({ target: 'JSON', stat: true, forced: FORCED }, { - // eslint-disable-next-line no-unused-vars - stringify: function stringify(it, replacer, space) { - var result = $stringify.apply(null, arguments); - return typeof result == 'string' ? result.replace(re, fix) : result; - } - }); -} diff --git a/node_modules/core-js-pure/modules/es.json.to-string-tag.js b/node_modules/core-js-pure/modules/es.json.to-string-tag.js deleted file mode 100644 index bdfa0cd8..00000000 --- a/node_modules/core-js-pure/modules/es.json.to-string-tag.js +++ /dev/null @@ -1,6 +0,0 @@ -var global = require('../internals/global'); -var setToStringTag = require('../internals/set-to-string-tag'); - -// JSON[@@toStringTag] property -// https://tc39.github.io/ecma262/#sec-json-@@tostringtag -setToStringTag(global.JSON, 'JSON', true); diff --git a/node_modules/core-js-pure/modules/es.map.js b/node_modules/core-js-pure/modules/es.map.js deleted file mode 100644 index fa8ecce4..00000000 --- a/node_modules/core-js-pure/modules/es.map.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var collection = require('../internals/collection'); -var collectionStrong = require('../internals/collection-strong'); - -// `Map` constructor -// https://tc39.github.io/ecma262/#sec-map-objects -module.exports = collection('Map', function (init) { - return function Map() { return init(this, arguments.length ? arguments[0] : undefined); }; -}, collectionStrong); diff --git a/node_modules/core-js-pure/modules/es.math.acosh.js b/node_modules/core-js-pure/modules/es.math.acosh.js deleted file mode 100644 index 62c85a4c..00000000 --- a/node_modules/core-js-pure/modules/es.math.acosh.js +++ /dev/null @@ -1,23 +0,0 @@ -var $ = require('../internals/export'); -var log1p = require('../internals/math-log1p'); - -var nativeAcosh = Math.acosh; -var log = Math.log; -var sqrt = Math.sqrt; -var LN2 = Math.LN2; - -var FORCED = !nativeAcosh - // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 - || Math.floor(nativeAcosh(Number.MAX_VALUE)) != 710 - // Tor Browser bug: Math.acosh(Infinity) -> NaN - || nativeAcosh(Infinity) != Infinity; - -// `Math.acosh` method -// https://tc39.github.io/ecma262/#sec-math.acosh -$({ target: 'Math', stat: true, forced: FORCED }, { - acosh: function acosh(x) { - return (x = +x) < 1 ? NaN : x > 94906265.62425156 - ? log(x) + LN2 - : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1)); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.asinh.js b/node_modules/core-js-pure/modules/es.math.asinh.js deleted file mode 100644 index 9308e218..00000000 --- a/node_modules/core-js-pure/modules/es.math.asinh.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); - -var nativeAsinh = Math.asinh; -var log = Math.log; -var sqrt = Math.sqrt; - -function asinh(x) { - return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : log(x + sqrt(x * x + 1)); -} - -// `Math.asinh` method -// https://tc39.github.io/ecma262/#sec-math.asinh -// Tor Browser bug: Math.asinh(0) -> -0 -$({ target: 'Math', stat: true, forced: !(nativeAsinh && 1 / nativeAsinh(0) > 0) }, { - asinh: asinh -}); diff --git a/node_modules/core-js-pure/modules/es.math.atanh.js b/node_modules/core-js-pure/modules/es.math.atanh.js deleted file mode 100644 index 9116f8e4..00000000 --- a/node_modules/core-js-pure/modules/es.math.atanh.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); - -var nativeAtanh = Math.atanh; -var log = Math.log; - -// `Math.atanh` method -// https://tc39.github.io/ecma262/#sec-math.atanh -// Tor Browser bug: Math.atanh(-0) -> 0 -$({ target: 'Math', stat: true, forced: !(nativeAtanh && 1 / nativeAtanh(-0) < 0) }, { - atanh: function atanh(x) { - return (x = +x) == 0 ? x : log((1 + x) / (1 - x)) / 2; - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.cbrt.js b/node_modules/core-js-pure/modules/es.math.cbrt.js deleted file mode 100644 index b93416f9..00000000 --- a/node_modules/core-js-pure/modules/es.math.cbrt.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); -var sign = require('../internals/math-sign'); - -var abs = Math.abs; -var pow = Math.pow; - -// `Math.cbrt` method -// https://tc39.github.io/ecma262/#sec-math.cbrt -$({ target: 'Math', stat: true }, { - cbrt: function cbrt(x) { - return sign(x = +x) * pow(abs(x), 1 / 3); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.clz32.js b/node_modules/core-js-pure/modules/es.math.clz32.js deleted file mode 100644 index 7a18e64a..00000000 --- a/node_modules/core-js-pure/modules/es.math.clz32.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); - -var floor = Math.floor; -var log = Math.log; -var LOG2E = Math.LOG2E; - -// `Math.clz32` method -// https://tc39.github.io/ecma262/#sec-math.clz32 -$({ target: 'Math', stat: true }, { - clz32: function clz32(x) { - return (x >>>= 0) ? 31 - floor(log(x + 0.5) * LOG2E) : 32; - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.cosh.js b/node_modules/core-js-pure/modules/es.math.cosh.js deleted file mode 100644 index 0c7322a2..00000000 --- a/node_modules/core-js-pure/modules/es.math.cosh.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var expm1 = require('../internals/math-expm1'); - -var nativeCosh = Math.cosh; -var abs = Math.abs; -var E = Math.E; - -// `Math.cosh` method -// https://tc39.github.io/ecma262/#sec-math.cosh -$({ target: 'Math', stat: true, forced: !nativeCosh || nativeCosh(710) === Infinity }, { - cosh: function cosh(x) { - var t = expm1(abs(x) - 1) + 1; - return (t + 1 / (t * E * E)) * (E / 2); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.expm1.js b/node_modules/core-js-pure/modules/es.math.expm1.js deleted file mode 100644 index 956eb6f1..00000000 --- a/node_modules/core-js-pure/modules/es.math.expm1.js +++ /dev/null @@ -1,6 +0,0 @@ -var $ = require('../internals/export'); -var expm1 = require('../internals/math-expm1'); - -// `Math.expm1` method -// https://tc39.github.io/ecma262/#sec-math.expm1 -$({ target: 'Math', stat: true, forced: expm1 != Math.expm1 }, { expm1: expm1 }); diff --git a/node_modules/core-js-pure/modules/es.math.fround.js b/node_modules/core-js-pure/modules/es.math.fround.js deleted file mode 100644 index 5df62db8..00000000 --- a/node_modules/core-js-pure/modules/es.math.fround.js +++ /dev/null @@ -1,6 +0,0 @@ -var $ = require('../internals/export'); -var fround = require('../internals/math-fround'); - -// `Math.fround` method -// https://tc39.github.io/ecma262/#sec-math.fround -$({ target: 'Math', stat: true }, { fround: fround }); diff --git a/node_modules/core-js-pure/modules/es.math.hypot.js b/node_modules/core-js-pure/modules/es.math.hypot.js deleted file mode 100644 index 0e8d17b4..00000000 --- a/node_modules/core-js-pure/modules/es.math.hypot.js +++ /dev/null @@ -1,33 +0,0 @@ -var $ = require('../internals/export'); - -var $hypot = Math.hypot; -var abs = Math.abs; -var sqrt = Math.sqrt; - -// Chrome 77 bug -// https://bugs.chromium.org/p/v8/issues/detail?id=9546 -var BUGGY = !!$hypot && $hypot(Infinity, NaN) !== Infinity; - -// `Math.hypot` method -// https://tc39.github.io/ecma262/#sec-math.hypot -$({ target: 'Math', stat: true, forced: BUGGY }, { - hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars - var sum = 0; - var i = 0; - var aLen = arguments.length; - var larg = 0; - var arg, div; - while (i < aLen) { - arg = abs(arguments[i++]); - if (larg < arg) { - div = larg / arg; - sum = sum * div * div + 1; - larg = arg; - } else if (arg > 0) { - div = arg / larg; - sum += div * div; - } else sum += arg; - } - return larg === Infinity ? Infinity : larg * sqrt(sum); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.imul.js b/node_modules/core-js-pure/modules/es.math.imul.js deleted file mode 100644 index 3882a3e3..00000000 --- a/node_modules/core-js-pure/modules/es.math.imul.js +++ /dev/null @@ -1,22 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); - -var nativeImul = Math.imul; - -var FORCED = fails(function () { - return nativeImul(0xFFFFFFFF, 5) != -5 || nativeImul.length != 2; -}); - -// `Math.imul` method -// https://tc39.github.io/ecma262/#sec-math.imul -// some WebKit versions fails with big numbers, some has wrong arity -$({ target: 'Math', stat: true, forced: FORCED }, { - imul: function imul(x, y) { - var UINT16 = 0xFFFF; - var xn = +x; - var yn = +y; - var xl = UINT16 & xn; - var yl = UINT16 & yn; - return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.log10.js b/node_modules/core-js-pure/modules/es.math.log10.js deleted file mode 100644 index 86ba3db4..00000000 --- a/node_modules/core-js-pure/modules/es.math.log10.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); - -var log = Math.log; -var LOG10E = Math.LOG10E; - -// `Math.log10` method -// https://tc39.github.io/ecma262/#sec-math.log10 -$({ target: 'Math', stat: true }, { - log10: function log10(x) { - return log(x) * LOG10E; - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.log1p.js b/node_modules/core-js-pure/modules/es.math.log1p.js deleted file mode 100644 index 03276618..00000000 --- a/node_modules/core-js-pure/modules/es.math.log1p.js +++ /dev/null @@ -1,6 +0,0 @@ -var $ = require('../internals/export'); -var log1p = require('../internals/math-log1p'); - -// `Math.log1p` method -// https://tc39.github.io/ecma262/#sec-math.log1p -$({ target: 'Math', stat: true }, { log1p: log1p }); diff --git a/node_modules/core-js-pure/modules/es.math.log2.js b/node_modules/core-js-pure/modules/es.math.log2.js deleted file mode 100644 index 22fcedf4..00000000 --- a/node_modules/core-js-pure/modules/es.math.log2.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); - -var log = Math.log; -var LN2 = Math.LN2; - -// `Math.log2` method -// https://tc39.github.io/ecma262/#sec-math.log2 -$({ target: 'Math', stat: true }, { - log2: function log2(x) { - return log(x) / LN2; - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.sign.js b/node_modules/core-js-pure/modules/es.math.sign.js deleted file mode 100644 index 19e3a782..00000000 --- a/node_modules/core-js-pure/modules/es.math.sign.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var sign = require('../internals/math-sign'); - -// `Math.sign` method -// https://tc39.github.io/ecma262/#sec-math.sign -$({ target: 'Math', stat: true }, { - sign: sign -}); diff --git a/node_modules/core-js-pure/modules/es.math.sinh.js b/node_modules/core-js-pure/modules/es.math.sinh.js deleted file mode 100644 index 11ba6106..00000000 --- a/node_modules/core-js-pure/modules/es.math.sinh.js +++ /dev/null @@ -1,20 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var expm1 = require('../internals/math-expm1'); - -var abs = Math.abs; -var exp = Math.exp; -var E = Math.E; - -var FORCED = fails(function () { - return Math.sinh(-2e-17) != -2e-17; -}); - -// `Math.sinh` method -// https://tc39.github.io/ecma262/#sec-math.sinh -// V8 near Chromium 38 has a problem with very small numbers -$({ target: 'Math', stat: true, forced: FORCED }, { - sinh: function sinh(x) { - return abs(x = +x) < 1 ? (expm1(x) - expm1(-x)) / 2 : (exp(x - 1) - exp(-x - 1)) * (E / 2); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.tanh.js b/node_modules/core-js-pure/modules/es.math.tanh.js deleted file mode 100644 index 3b574020..00000000 --- a/node_modules/core-js-pure/modules/es.math.tanh.js +++ /dev/null @@ -1,14 +0,0 @@ -var $ = require('../internals/export'); -var expm1 = require('../internals/math-expm1'); - -var exp = Math.exp; - -// `Math.tanh` method -// https://tc39.github.io/ecma262/#sec-math.tanh -$({ target: 'Math', stat: true }, { - tanh: function tanh(x) { - var a = expm1(x = +x); - var b = expm1(-x); - return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x)); - } -}); diff --git a/node_modules/core-js-pure/modules/es.math.to-string-tag.js b/node_modules/core-js-pure/modules/es.math.to-string-tag.js deleted file mode 100644 index 4ab08116..00000000 --- a/node_modules/core-js-pure/modules/es.math.to-string-tag.js +++ /dev/null @@ -1,5 +0,0 @@ -var setToStringTag = require('../internals/set-to-string-tag'); - -// Math[@@toStringTag] property -// https://tc39.github.io/ecma262/#sec-math-@@tostringtag -setToStringTag(Math, 'Math', true); diff --git a/node_modules/core-js-pure/modules/es.math.trunc.js b/node_modules/core-js-pure/modules/es.math.trunc.js deleted file mode 100644 index 0e8351d9..00000000 --- a/node_modules/core-js-pure/modules/es.math.trunc.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); - -var ceil = Math.ceil; -var floor = Math.floor; - -// `Math.trunc` method -// https://tc39.github.io/ecma262/#sec-math.trunc -$({ target: 'Math', stat: true }, { - trunc: function trunc(it) { - return (it > 0 ? floor : ceil)(it); - } -}); diff --git a/node_modules/core-js-pure/modules/es.number.constructor.js b/node_modules/core-js-pure/modules/es.number.constructor.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.number.constructor.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.number.epsilon.js b/node_modules/core-js-pure/modules/es.number.epsilon.js deleted file mode 100644 index b6027249..00000000 --- a/node_modules/core-js-pure/modules/es.number.epsilon.js +++ /dev/null @@ -1,7 +0,0 @@ -var $ = require('../internals/export'); - -// `Number.EPSILON` constant -// https://tc39.github.io/ecma262/#sec-number.epsilon -$({ target: 'Number', stat: true }, { - EPSILON: Math.pow(2, -52) -}); diff --git a/node_modules/core-js-pure/modules/es.number.is-finite.js b/node_modules/core-js-pure/modules/es.number.is-finite.js deleted file mode 100644 index 6308eb4d..00000000 --- a/node_modules/core-js-pure/modules/es.number.is-finite.js +++ /dev/null @@ -1,6 +0,0 @@ -var $ = require('../internals/export'); -var numberIsFinite = require('../internals/number-is-finite'); - -// `Number.isFinite` method -// https://tc39.github.io/ecma262/#sec-number.isfinite -$({ target: 'Number', stat: true }, { isFinite: numberIsFinite }); diff --git a/node_modules/core-js-pure/modules/es.number.is-integer.js b/node_modules/core-js-pure/modules/es.number.is-integer.js deleted file mode 100644 index b15b7393..00000000 --- a/node_modules/core-js-pure/modules/es.number.is-integer.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var isInteger = require('../internals/is-integer'); - -// `Number.isInteger` method -// https://tc39.github.io/ecma262/#sec-number.isinteger -$({ target: 'Number', stat: true }, { - isInteger: isInteger -}); diff --git a/node_modules/core-js-pure/modules/es.number.is-nan.js b/node_modules/core-js-pure/modules/es.number.is-nan.js deleted file mode 100644 index f384acc6..00000000 --- a/node_modules/core-js-pure/modules/es.number.is-nan.js +++ /dev/null @@ -1,10 +0,0 @@ -var $ = require('../internals/export'); - -// `Number.isNaN` method -// https://tc39.github.io/ecma262/#sec-number.isnan -$({ target: 'Number', stat: true }, { - isNaN: function isNaN(number) { - // eslint-disable-next-line no-self-compare - return number != number; - } -}); diff --git a/node_modules/core-js-pure/modules/es.number.is-safe-integer.js b/node_modules/core-js-pure/modules/es.number.is-safe-integer.js deleted file mode 100644 index cea6704a..00000000 --- a/node_modules/core-js-pure/modules/es.number.is-safe-integer.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); -var isInteger = require('../internals/is-integer'); - -var abs = Math.abs; - -// `Number.isSafeInteger` method -// https://tc39.github.io/ecma262/#sec-number.issafeinteger -$({ target: 'Number', stat: true }, { - isSafeInteger: function isSafeInteger(number) { - return isInteger(number) && abs(number) <= 0x1FFFFFFFFFFFFF; - } -}); diff --git a/node_modules/core-js-pure/modules/es.number.max-safe-integer.js b/node_modules/core-js-pure/modules/es.number.max-safe-integer.js deleted file mode 100644 index 7fc58902..00000000 --- a/node_modules/core-js-pure/modules/es.number.max-safe-integer.js +++ /dev/null @@ -1,7 +0,0 @@ -var $ = require('../internals/export'); - -// `Number.MAX_SAFE_INTEGER` constant -// https://tc39.github.io/ecma262/#sec-number.max_safe_integer -$({ target: 'Number', stat: true }, { - MAX_SAFE_INTEGER: 0x1FFFFFFFFFFFFF -}); diff --git a/node_modules/core-js-pure/modules/es.number.min-safe-integer.js b/node_modules/core-js-pure/modules/es.number.min-safe-integer.js deleted file mode 100644 index 500a8f67..00000000 --- a/node_modules/core-js-pure/modules/es.number.min-safe-integer.js +++ /dev/null @@ -1,7 +0,0 @@ -var $ = require('../internals/export'); - -// `Number.MIN_SAFE_INTEGER` constant -// https://tc39.github.io/ecma262/#sec-number.min_safe_integer -$({ target: 'Number', stat: true }, { - MIN_SAFE_INTEGER: -0x1FFFFFFFFFFFFF -}); diff --git a/node_modules/core-js-pure/modules/es.number.parse-float.js b/node_modules/core-js-pure/modules/es.number.parse-float.js deleted file mode 100644 index 5310ec1e..00000000 --- a/node_modules/core-js-pure/modules/es.number.parse-float.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var parseFloat = require('../internals/number-parse-float'); - -// `Number.parseFloat` method -// https://tc39.github.io/ecma262/#sec-number.parseFloat -$({ target: 'Number', stat: true, forced: Number.parseFloat != parseFloat }, { - parseFloat: parseFloat -}); diff --git a/node_modules/core-js-pure/modules/es.number.parse-int.js b/node_modules/core-js-pure/modules/es.number.parse-int.js deleted file mode 100644 index 7f31df1c..00000000 --- a/node_modules/core-js-pure/modules/es.number.parse-int.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var parseInt = require('../internals/number-parse-int'); - -// `Number.parseInt` method -// https://tc39.github.io/ecma262/#sec-number.parseint -$({ target: 'Number', stat: true, forced: Number.parseInt != parseInt }, { - parseInt: parseInt -}); diff --git a/node_modules/core-js-pure/modules/es.number.to-fixed.js b/node_modules/core-js-pure/modules/es.number.to-fixed.js deleted file mode 100644 index fa4d3e27..00000000 --- a/node_modules/core-js-pure/modules/es.number.to-fixed.js +++ /dev/null @@ -1,126 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var toInteger = require('../internals/to-integer'); -var thisNumberValue = require('../internals/this-number-value'); -var repeat = require('../internals/string-repeat'); -var fails = require('../internals/fails'); - -var nativeToFixed = 1.0.toFixed; -var floor = Math.floor; - -var pow = function (x, n, acc) { - return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc); -}; - -var log = function (x) { - var n = 0; - var x2 = x; - while (x2 >= 4096) { - n += 12; - x2 /= 4096; - } - while (x2 >= 2) { - n += 1; - x2 /= 2; - } return n; -}; - -var FORCED = nativeToFixed && ( - 0.00008.toFixed(3) !== '0.000' || - 0.9.toFixed(0) !== '1' || - 1.255.toFixed(2) !== '1.25' || - 1000000000000000128.0.toFixed(0) !== '1000000000000000128' -) || !fails(function () { - // V8 ~ Android 4.3- - nativeToFixed.call({}); -}); - -// `Number.prototype.toFixed` method -// https://tc39.github.io/ecma262/#sec-number.prototype.tofixed -$({ target: 'Number', proto: true, forced: FORCED }, { - // eslint-disable-next-line max-statements - toFixed: function toFixed(fractionDigits) { - var number = thisNumberValue(this); - var fractDigits = toInteger(fractionDigits); - var data = [0, 0, 0, 0, 0, 0]; - var sign = ''; - var result = '0'; - var e, z, j, k; - - var multiply = function (n, c) { - var index = -1; - var c2 = c; - while (++index < 6) { - c2 += n * data[index]; - data[index] = c2 % 1e7; - c2 = floor(c2 / 1e7); - } - }; - - var divide = function (n) { - var index = 6; - var c = 0; - while (--index >= 0) { - c += data[index]; - data[index] = floor(c / n); - c = (c % n) * 1e7; - } - }; - - var dataToString = function () { - var index = 6; - var s = ''; - while (--index >= 0) { - if (s !== '' || index === 0 || data[index] !== 0) { - var t = String(data[index]); - s = s === '' ? t : s + repeat.call('0', 7 - t.length) + t; - } - } return s; - }; - - if (fractDigits < 0 || fractDigits > 20) throw RangeError('Incorrect fraction digits'); - // eslint-disable-next-line no-self-compare - if (number != number) return 'NaN'; - if (number <= -1e21 || number >= 1e21) return String(number); - if (number < 0) { - sign = '-'; - number = -number; - } - if (number > 1e-21) { - e = log(number * pow(2, 69, 1)) - 69; - z = e < 0 ? number * pow(2, -e, 1) : number / pow(2, e, 1); - z *= 0x10000000000000; - e = 52 - e; - if (e > 0) { - multiply(0, z); - j = fractDigits; - while (j >= 7) { - multiply(1e7, 0); - j -= 7; - } - multiply(pow(10, j, 1), 0); - j = e - 1; - while (j >= 23) { - divide(1 << 23); - j -= 23; - } - divide(1 << j); - multiply(1, 1); - divide(2); - result = dataToString(); - } else { - multiply(0, z); - multiply(1 << -e, 0); - result = dataToString() + repeat.call('0', fractDigits); - } - } - if (fractDigits > 0) { - k = result.length; - result = sign + (k <= fractDigits - ? '0.' + repeat.call('0', fractDigits - k) + result - : result.slice(0, k - fractDigits) + '.' + result.slice(k - fractDigits)); - } else { - result = sign + result; - } return result; - } -}); diff --git a/node_modules/core-js-pure/modules/es.number.to-precision.js b/node_modules/core-js-pure/modules/es.number.to-precision.js deleted file mode 100644 index 71082968..00000000 --- a/node_modules/core-js-pure/modules/es.number.to-precision.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var thisNumberValue = require('../internals/this-number-value'); - -var nativeToPrecision = 1.0.toPrecision; - -var FORCED = fails(function () { - // IE7- - return nativeToPrecision.call(1, undefined) !== '1'; -}) || !fails(function () { - // V8 ~ Android 4.3- - nativeToPrecision.call({}); -}); - -// `Number.prototype.toPrecision` method -// https://tc39.github.io/ecma262/#sec-number.prototype.toprecision -$({ target: 'Number', proto: true, forced: FORCED }, { - toPrecision: function toPrecision(precision) { - return precision === undefined - ? nativeToPrecision.call(thisNumberValue(this)) - : nativeToPrecision.call(thisNumberValue(this), precision); - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.assign.js b/node_modules/core-js-pure/modules/es.object.assign.js deleted file mode 100644 index 5b00e6ae..00000000 --- a/node_modules/core-js-pure/modules/es.object.assign.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var assign = require('../internals/object-assign'); - -// `Object.assign` method -// https://tc39.github.io/ecma262/#sec-object.assign -$({ target: 'Object', stat: true, forced: Object.assign !== assign }, { - assign: assign -}); diff --git a/node_modules/core-js-pure/modules/es.object.create.js b/node_modules/core-js-pure/modules/es.object.create.js deleted file mode 100644 index 3c278691..00000000 --- a/node_modules/core-js-pure/modules/es.object.create.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var create = require('../internals/object-create'); - -// `Object.create` method -// https://tc39.github.io/ecma262/#sec-object.create -$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, { - create: create -}); diff --git a/node_modules/core-js-pure/modules/es.object.define-getter.js b/node_modules/core-js-pure/modules/es.object.define-getter.js deleted file mode 100644 index 0a44e454..00000000 --- a/node_modules/core-js-pure/modules/es.object.define-getter.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var FORCED = require('../internals/object-prototype-accessors-forced'); -var toObject = require('../internals/to-object'); -var aFunction = require('../internals/a-function'); -var definePropertyModule = require('../internals/object-define-property'); - -// `Object.prototype.__defineGetter__` method -// https://tc39.github.io/ecma262/#sec-object.prototype.__defineGetter__ -if (DESCRIPTORS) { - $({ target: 'Object', proto: true, forced: FORCED }, { - __defineGetter__: function __defineGetter__(P, getter) { - definePropertyModule.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true }); - } - }); -} diff --git a/node_modules/core-js-pure/modules/es.object.define-properties.js b/node_modules/core-js-pure/modules/es.object.define-properties.js deleted file mode 100644 index 9400799f..00000000 --- a/node_modules/core-js-pure/modules/es.object.define-properties.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var defineProperties = require('../internals/object-define-properties'); - -// `Object.defineProperties` method -// https://tc39.github.io/ecma262/#sec-object.defineproperties -$({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, { - defineProperties: defineProperties -}); diff --git a/node_modules/core-js-pure/modules/es.object.define-property.js b/node_modules/core-js-pure/modules/es.object.define-property.js deleted file mode 100644 index 19fcf5b3..00000000 --- a/node_modules/core-js-pure/modules/es.object.define-property.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var objectDefinePropertyModile = require('../internals/object-define-property'); - -// `Object.defineProperty` method -// https://tc39.github.io/ecma262/#sec-object.defineproperty -$({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, { - defineProperty: objectDefinePropertyModile.f -}); diff --git a/node_modules/core-js-pure/modules/es.object.define-setter.js b/node_modules/core-js-pure/modules/es.object.define-setter.js deleted file mode 100644 index 4250177e..00000000 --- a/node_modules/core-js-pure/modules/es.object.define-setter.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var FORCED = require('../internals/object-prototype-accessors-forced'); -var toObject = require('../internals/to-object'); -var aFunction = require('../internals/a-function'); -var definePropertyModule = require('../internals/object-define-property'); - -// `Object.prototype.__defineSetter__` method -// https://tc39.github.io/ecma262/#sec-object.prototype.__defineSetter__ -if (DESCRIPTORS) { - $({ target: 'Object', proto: true, forced: FORCED }, { - __defineSetter__: function __defineSetter__(P, setter) { - definePropertyModule.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true }); - } - }); -} diff --git a/node_modules/core-js-pure/modules/es.object.entries.js b/node_modules/core-js-pure/modules/es.object.entries.js deleted file mode 100644 index a22e693b..00000000 --- a/node_modules/core-js-pure/modules/es.object.entries.js +++ /dev/null @@ -1,10 +0,0 @@ -var $ = require('../internals/export'); -var $entries = require('../internals/object-to-array').entries; - -// `Object.entries` method -// https://tc39.github.io/ecma262/#sec-object.entries -$({ target: 'Object', stat: true }, { - entries: function entries(O) { - return $entries(O); - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.freeze.js b/node_modules/core-js-pure/modules/es.object.freeze.js deleted file mode 100644 index 0a623bdc..00000000 --- a/node_modules/core-js-pure/modules/es.object.freeze.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var FREEZING = require('../internals/freezing'); -var fails = require('../internals/fails'); -var isObject = require('../internals/is-object'); -var onFreeze = require('../internals/internal-metadata').onFreeze; - -var nativeFreeze = Object.freeze; -var FAILS_ON_PRIMITIVES = fails(function () { nativeFreeze(1); }); - -// `Object.freeze` method -// https://tc39.github.io/ecma262/#sec-object.freeze -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { - freeze: function freeze(it) { - return nativeFreeze && isObject(it) ? nativeFreeze(onFreeze(it)) : it; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.from-entries.js b/node_modules/core-js-pure/modules/es.object.from-entries.js deleted file mode 100644 index 2886e81f..00000000 --- a/node_modules/core-js-pure/modules/es.object.from-entries.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var createProperty = require('../internals/create-property'); - -// `Object.fromEntries` method -// https://github.com/tc39/proposal-object-from-entries -$({ target: 'Object', stat: true }, { - fromEntries: function fromEntries(iterable) { - var obj = {}; - iterate(iterable, function (k, v) { - createProperty(obj, k, v); - }, undefined, true); - return obj; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.get-own-property-descriptor.js b/node_modules/core-js-pure/modules/es.object.get-own-property-descriptor.js deleted file mode 100644 index bfeeb888..00000000 --- a/node_modules/core-js-pure/modules/es.object.get-own-property-descriptor.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var toIndexedObject = require('../internals/to-indexed-object'); -var nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; -var DESCRIPTORS = require('../internals/descriptors'); - -var FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); }); -var FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES; - -// `Object.getOwnPropertyDescriptor` method -// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor -$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) { - return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key); - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.get-own-property-descriptors.js b/node_modules/core-js-pure/modules/es.object.get-own-property-descriptors.js deleted file mode 100644 index e29c917b..00000000 --- a/node_modules/core-js-pure/modules/es.object.get-own-property-descriptors.js +++ /dev/null @@ -1,24 +0,0 @@ -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var ownKeys = require('../internals/own-keys'); -var toIndexedObject = require('../internals/to-indexed-object'); -var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor'); -var createProperty = require('../internals/create-property'); - -// `Object.getOwnPropertyDescriptors` method -// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors -$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, { - getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) { - var O = toIndexedObject(object); - var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; - var keys = ownKeys(O); - var result = {}; - var index = 0; - var key, descriptor; - while (keys.length > index) { - descriptor = getOwnPropertyDescriptor(O, key = keys[index++]); - if (descriptor !== undefined) createProperty(result, key, descriptor); - } - return result; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.get-own-property-names.js b/node_modules/core-js-pure/modules/es.object.get-own-property-names.js deleted file mode 100644 index 6a52f459..00000000 --- a/node_modules/core-js-pure/modules/es.object.get-own-property-names.js +++ /dev/null @@ -1,11 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names-external').f; - -var FAILS_ON_PRIMITIVES = fails(function () { return !Object.getOwnPropertyNames(1); }); - -// `Object.getOwnPropertyNames` method -// https://tc39.github.io/ecma262/#sec-object.getownpropertynames -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { - getOwnPropertyNames: nativeGetOwnPropertyNames -}); diff --git a/node_modules/core-js-pure/modules/es.object.get-prototype-of.js b/node_modules/core-js-pure/modules/es.object.get-prototype-of.js deleted file mode 100644 index 7cbb548e..00000000 --- a/node_modules/core-js-pure/modules/es.object.get-prototype-of.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var toObject = require('../internals/to-object'); -var nativeGetPrototypeOf = require('../internals/object-get-prototype-of'); -var CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter'); - -var FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); }); - -// `Object.getPrototypeOf` method -// https://tc39.github.io/ecma262/#sec-object.getprototypeof -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, { - getPrototypeOf: function getPrototypeOf(it) { - return nativeGetPrototypeOf(toObject(it)); - } -}); - diff --git a/node_modules/core-js-pure/modules/es.object.is-extensible.js b/node_modules/core-js-pure/modules/es.object.is-extensible.js deleted file mode 100644 index 556405b1..00000000 --- a/node_modules/core-js-pure/modules/es.object.is-extensible.js +++ /dev/null @@ -1,14 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var isObject = require('../internals/is-object'); - -var nativeIsExtensible = Object.isExtensible; -var FAILS_ON_PRIMITIVES = fails(function () { nativeIsExtensible(1); }); - -// `Object.isExtensible` method -// https://tc39.github.io/ecma262/#sec-object.isextensible -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { - isExtensible: function isExtensible(it) { - return isObject(it) ? nativeIsExtensible ? nativeIsExtensible(it) : true : false; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.is-frozen.js b/node_modules/core-js-pure/modules/es.object.is-frozen.js deleted file mode 100644 index 060314de..00000000 --- a/node_modules/core-js-pure/modules/es.object.is-frozen.js +++ /dev/null @@ -1,14 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var isObject = require('../internals/is-object'); - -var nativeIsFrozen = Object.isFrozen; -var FAILS_ON_PRIMITIVES = fails(function () { nativeIsFrozen(1); }); - -// `Object.isFrozen` method -// https://tc39.github.io/ecma262/#sec-object.isfrozen -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { - isFrozen: function isFrozen(it) { - return isObject(it) ? nativeIsFrozen ? nativeIsFrozen(it) : false : true; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.is-sealed.js b/node_modules/core-js-pure/modules/es.object.is-sealed.js deleted file mode 100644 index 0f8b95f4..00000000 --- a/node_modules/core-js-pure/modules/es.object.is-sealed.js +++ /dev/null @@ -1,14 +0,0 @@ -var $ = require('../internals/export'); -var fails = require('../internals/fails'); -var isObject = require('../internals/is-object'); - -var nativeIsSealed = Object.isSealed; -var FAILS_ON_PRIMITIVES = fails(function () { nativeIsSealed(1); }); - -// `Object.isSealed` method -// https://tc39.github.io/ecma262/#sec-object.issealed -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { - isSealed: function isSealed(it) { - return isObject(it) ? nativeIsSealed ? nativeIsSealed(it) : false : true; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.is.js b/node_modules/core-js-pure/modules/es.object.is.js deleted file mode 100644 index 9ef6f0af..00000000 --- a/node_modules/core-js-pure/modules/es.object.is.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var is = require('../internals/same-value'); - -// `Object.is` method -// https://tc39.github.io/ecma262/#sec-object.is -$({ target: 'Object', stat: true }, { - is: is -}); diff --git a/node_modules/core-js-pure/modules/es.object.keys.js b/node_modules/core-js-pure/modules/es.object.keys.js deleted file mode 100644 index dc248840..00000000 --- a/node_modules/core-js-pure/modules/es.object.keys.js +++ /dev/null @@ -1,14 +0,0 @@ -var $ = require('../internals/export'); -var toObject = require('../internals/to-object'); -var nativeKeys = require('../internals/object-keys'); -var fails = require('../internals/fails'); - -var FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); }); - -// `Object.keys` method -// https://tc39.github.io/ecma262/#sec-object.keys -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, { - keys: function keys(it) { - return nativeKeys(toObject(it)); - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.lookup-getter.js b/node_modules/core-js-pure/modules/es.object.lookup-getter.js deleted file mode 100644 index 46e3fd00..00000000 --- a/node_modules/core-js-pure/modules/es.object.lookup-getter.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var FORCED = require('../internals/object-prototype-accessors-forced'); -var toObject = require('../internals/to-object'); -var toPrimitive = require('../internals/to-primitive'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; - -// `Object.prototype.__lookupGetter__` method -// https://tc39.github.io/ecma262/#sec-object.prototype.__lookupGetter__ -if (DESCRIPTORS) { - $({ target: 'Object', proto: true, forced: FORCED }, { - __lookupGetter__: function __lookupGetter__(P) { - var O = toObject(this); - var key = toPrimitive(P, true); - var desc; - do { - if (desc = getOwnPropertyDescriptor(O, key)) return desc.get; - } while (O = getPrototypeOf(O)); - } - }); -} diff --git a/node_modules/core-js-pure/modules/es.object.lookup-setter.js b/node_modules/core-js-pure/modules/es.object.lookup-setter.js deleted file mode 100644 index 57d49fad..00000000 --- a/node_modules/core-js-pure/modules/es.object.lookup-setter.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var FORCED = require('../internals/object-prototype-accessors-forced'); -var toObject = require('../internals/to-object'); -var toPrimitive = require('../internals/to-primitive'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; - -// `Object.prototype.__lookupSetter__` method -// https://tc39.github.io/ecma262/#sec-object.prototype.__lookupSetter__ -if (DESCRIPTORS) { - $({ target: 'Object', proto: true, forced: FORCED }, { - __lookupSetter__: function __lookupSetter__(P) { - var O = toObject(this); - var key = toPrimitive(P, true); - var desc; - do { - if (desc = getOwnPropertyDescriptor(O, key)) return desc.set; - } while (O = getPrototypeOf(O)); - } - }); -} diff --git a/node_modules/core-js-pure/modules/es.object.prevent-extensions.js b/node_modules/core-js-pure/modules/es.object.prevent-extensions.js deleted file mode 100644 index bb7b2686..00000000 --- a/node_modules/core-js-pure/modules/es.object.prevent-extensions.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var isObject = require('../internals/is-object'); -var onFreeze = require('../internals/internal-metadata').onFreeze; -var FREEZING = require('../internals/freezing'); -var fails = require('../internals/fails'); - -var nativePreventExtensions = Object.preventExtensions; -var FAILS_ON_PRIMITIVES = fails(function () { nativePreventExtensions(1); }); - -// `Object.preventExtensions` method -// https://tc39.github.io/ecma262/#sec-object.preventextensions -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { - preventExtensions: function preventExtensions(it) { - return nativePreventExtensions && isObject(it) ? nativePreventExtensions(onFreeze(it)) : it; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.seal.js b/node_modules/core-js-pure/modules/es.object.seal.js deleted file mode 100644 index 35fae0c5..00000000 --- a/node_modules/core-js-pure/modules/es.object.seal.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var isObject = require('../internals/is-object'); -var onFreeze = require('../internals/internal-metadata').onFreeze; -var FREEZING = require('../internals/freezing'); -var fails = require('../internals/fails'); - -var nativeSeal = Object.seal; -var FAILS_ON_PRIMITIVES = fails(function () { nativeSeal(1); }); - -// `Object.seal` method -// https://tc39.github.io/ecma262/#sec-object.seal -$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, { - seal: function seal(it) { - return nativeSeal && isObject(it) ? nativeSeal(onFreeze(it)) : it; - } -}); diff --git a/node_modules/core-js-pure/modules/es.object.set-prototype-of.js b/node_modules/core-js-pure/modules/es.object.set-prototype-of.js deleted file mode 100644 index cbe0578d..00000000 --- a/node_modules/core-js-pure/modules/es.object.set-prototype-of.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var setPrototypeOf = require('../internals/object-set-prototype-of'); - -// `Object.setPrototypeOf` method -// https://tc39.github.io/ecma262/#sec-object.setprototypeof -$({ target: 'Object', stat: true }, { - setPrototypeOf: setPrototypeOf -}); diff --git a/node_modules/core-js-pure/modules/es.object.to-string.js b/node_modules/core-js-pure/modules/es.object.to-string.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.object.to-string.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.object.values.js b/node_modules/core-js-pure/modules/es.object.values.js deleted file mode 100644 index a3074cf7..00000000 --- a/node_modules/core-js-pure/modules/es.object.values.js +++ /dev/null @@ -1,10 +0,0 @@ -var $ = require('../internals/export'); -var $values = require('../internals/object-to-array').values; - -// `Object.values` method -// https://tc39.github.io/ecma262/#sec-object.values -$({ target: 'Object', stat: true }, { - values: function values(O) { - return $values(O); - } -}); diff --git a/node_modules/core-js-pure/modules/es.parse-float.js b/node_modules/core-js-pure/modules/es.parse-float.js deleted file mode 100644 index 1245deb5..00000000 --- a/node_modules/core-js-pure/modules/es.parse-float.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var parseFloatImplementation = require('../internals/number-parse-float'); - -// `parseFloat` method -// https://tc39.github.io/ecma262/#sec-parsefloat-string -$({ global: true, forced: parseFloat != parseFloatImplementation }, { - parseFloat: parseFloatImplementation -}); diff --git a/node_modules/core-js-pure/modules/es.parse-int.js b/node_modules/core-js-pure/modules/es.parse-int.js deleted file mode 100644 index b462541a..00000000 --- a/node_modules/core-js-pure/modules/es.parse-int.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var parseIntImplementation = require('../internals/number-parse-int'); - -// `parseInt` method -// https://tc39.github.io/ecma262/#sec-parseint-string-radix -$({ global: true, forced: parseInt != parseIntImplementation }, { - parseInt: parseIntImplementation -}); diff --git a/node_modules/core-js-pure/modules/es.promise.all-settled.js b/node_modules/core-js-pure/modules/es.promise.all-settled.js deleted file mode 100644 index 887f3a65..00000000 --- a/node_modules/core-js-pure/modules/es.promise.all-settled.js +++ /dev/null @@ -1,43 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var newPromiseCapabilityModule = require('../internals/new-promise-capability'); -var perform = require('../internals/perform'); -var iterate = require('../internals/iterate'); - -// `Promise.allSettled` method -// https://github.com/tc39/proposal-promise-allSettled -$({ target: 'Promise', stat: true }, { - allSettled: function allSettled(iterable) { - var C = this; - var capability = newPromiseCapabilityModule.f(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var promiseResolve = aFunction(C.resolve); - var values = []; - var counter = 0; - var remaining = 1; - iterate(iterable, function (promise) { - var index = counter++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - promiseResolve.call(C, promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[index] = { status: 'fulfilled', value: value }; - --remaining || resolve(values); - }, function (e) { - if (alreadyCalled) return; - alreadyCalled = true; - values[index] = { status: 'rejected', reason: e }; - --remaining || resolve(values); - }); - }); - --remaining || resolve(values); - }); - if (result.error) reject(result.value); - return capability.promise; - } -}); diff --git a/node_modules/core-js-pure/modules/es.promise.finally.js b/node_modules/core-js-pure/modules/es.promise.finally.js deleted file mode 100644 index 7efe3e53..00000000 --- a/node_modules/core-js-pure/modules/es.promise.finally.js +++ /dev/null @@ -1,36 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var NativePromise = require('../internals/native-promise-constructor'); -var fails = require('../internals/fails'); -var getBuiltIn = require('../internals/get-built-in'); -var speciesConstructor = require('../internals/species-constructor'); -var promiseResolve = require('../internals/promise-resolve'); -var redefine = require('../internals/redefine'); - -// Safari bug https://bugs.webkit.org/show_bug.cgi?id=200829 -var NON_GENERIC = !!NativePromise && fails(function () { - NativePromise.prototype['finally'].call({ then: function () { /* empty */ } }, function () { /* empty */ }); -}); - -// `Promise.prototype.finally` method -// https://tc39.github.io/ecma262/#sec-promise.prototype.finally -$({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, { - 'finally': function (onFinally) { - var C = speciesConstructor(this, getBuiltIn('Promise')); - var isFunction = typeof onFinally == 'function'; - return this.then( - isFunction ? function (x) { - return promiseResolve(C, onFinally()).then(function () { return x; }); - } : onFinally, - isFunction ? function (e) { - return promiseResolve(C, onFinally()).then(function () { throw e; }); - } : onFinally - ); - } -}); - -// patch native Promise.prototype for native async functions -if (!IS_PURE && typeof NativePromise == 'function' && !NativePromise.prototype['finally']) { - redefine(NativePromise.prototype, 'finally', getBuiltIn('Promise').prototype['finally']); -} diff --git a/node_modules/core-js-pure/modules/es.promise.js b/node_modules/core-js-pure/modules/es.promise.js deleted file mode 100644 index b79d2bc2..00000000 --- a/node_modules/core-js-pure/modules/es.promise.js +++ /dev/null @@ -1,379 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var global = require('../internals/global'); -var getBuiltIn = require('../internals/get-built-in'); -var NativePromise = require('../internals/native-promise-constructor'); -var redefine = require('../internals/redefine'); -var redefineAll = require('../internals/redefine-all'); -var setToStringTag = require('../internals/set-to-string-tag'); -var setSpecies = require('../internals/set-species'); -var isObject = require('../internals/is-object'); -var aFunction = require('../internals/a-function'); -var anInstance = require('../internals/an-instance'); -var classof = require('../internals/classof-raw'); -var inspectSource = require('../internals/inspect-source'); -var iterate = require('../internals/iterate'); -var checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration'); -var speciesConstructor = require('../internals/species-constructor'); -var task = require('../internals/task').set; -var microtask = require('../internals/microtask'); -var promiseResolve = require('../internals/promise-resolve'); -var hostReportErrors = require('../internals/host-report-errors'); -var newPromiseCapabilityModule = require('../internals/new-promise-capability'); -var perform = require('../internals/perform'); -var InternalStateModule = require('../internals/internal-state'); -var isForced = require('../internals/is-forced'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var V8_VERSION = require('../internals/engine-v8-version'); - -var SPECIES = wellKnownSymbol('species'); -var PROMISE = 'Promise'; -var getInternalState = InternalStateModule.get; -var setInternalState = InternalStateModule.set; -var getInternalPromiseState = InternalStateModule.getterFor(PROMISE); -var PromiseConstructor = NativePromise; -var TypeError = global.TypeError; -var document = global.document; -var process = global.process; -var $fetch = getBuiltIn('fetch'); -var newPromiseCapability = newPromiseCapabilityModule.f; -var newGenericPromiseCapability = newPromiseCapability; -var IS_NODE = classof(process) == 'process'; -var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent); -var UNHANDLED_REJECTION = 'unhandledrejection'; -var REJECTION_HANDLED = 'rejectionhandled'; -var PENDING = 0; -var FULFILLED = 1; -var REJECTED = 2; -var HANDLED = 1; -var UNHANDLED = 2; -var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen; - -var FORCED = isForced(PROMISE, function () { - var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor); - if (!GLOBAL_CORE_JS_PROMISE) { - // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables - // https://bugs.chromium.org/p/chromium/issues/detail?id=830565 - // We can't detect it synchronously, so just check versions - if (V8_VERSION === 66) return true; - // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test - if (!IS_NODE && typeof PromiseRejectionEvent != 'function') return true; - } - // We need Promise#finally in the pure version for preventing prototype pollution - if (IS_PURE && !PromiseConstructor.prototype['finally']) return true; - // We can't use @@species feature detection in V8 since it causes - // deoptimization and performance degradation - // https://github.com/zloirock/core-js/issues/679 - if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false; - // Detect correctness of subclassing with @@species support - var promise = PromiseConstructor.resolve(1); - var FakePromise = function (exec) { - exec(function () { /* empty */ }, function () { /* empty */ }); - }; - var constructor = promise.constructor = {}; - constructor[SPECIES] = FakePromise; - return !(promise.then(function () { /* empty */ }) instanceof FakePromise); -}); - -var INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) { - PromiseConstructor.all(iterable)['catch'](function () { /* empty */ }); -}); - -// helpers -var isThenable = function (it) { - var then; - return isObject(it) && typeof (then = it.then) == 'function' ? then : false; -}; - -var notify = function (promise, state, isReject) { - if (state.notified) return; - state.notified = true; - var chain = state.reactions; - microtask(function () { - var value = state.value; - var ok = state.state == FULFILLED; - var index = 0; - // variable length - can't use forEach - while (chain.length > index) { - var reaction = chain[index++]; - var handler = ok ? reaction.ok : reaction.fail; - var resolve = reaction.resolve; - var reject = reaction.reject; - var domain = reaction.domain; - var result, then, exited; - try { - if (handler) { - if (!ok) { - if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state); - state.rejection = HANDLED; - } - if (handler === true) result = value; - else { - if (domain) domain.enter(); - result = handler(value); // can throw - if (domain) { - domain.exit(); - exited = true; - } - } - if (result === reaction.promise) { - reject(TypeError('Promise-chain cycle')); - } else if (then = isThenable(result)) { - then.call(result, resolve, reject); - } else resolve(result); - } else reject(value); - } catch (error) { - if (domain && !exited) domain.exit(); - reject(error); - } - } - state.reactions = []; - state.notified = false; - if (isReject && !state.rejection) onUnhandled(promise, state); - }); -}; - -var dispatchEvent = function (name, promise, reason) { - var event, handler; - if (DISPATCH_EVENT) { - event = document.createEvent('Event'); - event.promise = promise; - event.reason = reason; - event.initEvent(name, false, true); - global.dispatchEvent(event); - } else event = { promise: promise, reason: reason }; - if (handler = global['on' + name]) handler(event); - else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason); -}; - -var onUnhandled = function (promise, state) { - task.call(global, function () { - var value = state.value; - var IS_UNHANDLED = isUnhandled(state); - var result; - if (IS_UNHANDLED) { - result = perform(function () { - if (IS_NODE) { - process.emit('unhandledRejection', value, promise); - } else dispatchEvent(UNHANDLED_REJECTION, promise, value); - }); - // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should - state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED; - if (result.error) throw result.value; - } - }); -}; - -var isUnhandled = function (state) { - return state.rejection !== HANDLED && !state.parent; -}; - -var onHandleUnhandled = function (promise, state) { - task.call(global, function () { - if (IS_NODE) { - process.emit('rejectionHandled', promise); - } else dispatchEvent(REJECTION_HANDLED, promise, state.value); - }); -}; - -var bind = function (fn, promise, state, unwrap) { - return function (value) { - fn(promise, state, value, unwrap); - }; -}; - -var internalReject = function (promise, state, value, unwrap) { - if (state.done) return; - state.done = true; - if (unwrap) state = unwrap; - state.value = value; - state.state = REJECTED; - notify(promise, state, true); -}; - -var internalResolve = function (promise, state, value, unwrap) { - if (state.done) return; - state.done = true; - if (unwrap) state = unwrap; - try { - if (promise === value) throw TypeError("Promise can't be resolved itself"); - var then = isThenable(value); - if (then) { - microtask(function () { - var wrapper = { done: false }; - try { - then.call(value, - bind(internalResolve, promise, wrapper, state), - bind(internalReject, promise, wrapper, state) - ); - } catch (error) { - internalReject(promise, wrapper, error, state); - } - }); - } else { - state.value = value; - state.state = FULFILLED; - notify(promise, state, false); - } - } catch (error) { - internalReject(promise, { done: false }, error, state); - } -}; - -// constructor polyfill -if (FORCED) { - // 25.4.3.1 Promise(executor) - PromiseConstructor = function Promise(executor) { - anInstance(this, PromiseConstructor, PROMISE); - aFunction(executor); - Internal.call(this); - var state = getInternalState(this); - try { - executor(bind(internalResolve, this, state), bind(internalReject, this, state)); - } catch (error) { - internalReject(this, state, error); - } - }; - // eslint-disable-next-line no-unused-vars - Internal = function Promise(executor) { - setInternalState(this, { - type: PROMISE, - done: false, - notified: false, - parent: false, - reactions: [], - rejection: false, - state: PENDING, - value: undefined - }); - }; - Internal.prototype = redefineAll(PromiseConstructor.prototype, { - // `Promise.prototype.then` method - // https://tc39.github.io/ecma262/#sec-promise.prototype.then - then: function then(onFulfilled, onRejected) { - var state = getInternalPromiseState(this); - var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor)); - reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true; - reaction.fail = typeof onRejected == 'function' && onRejected; - reaction.domain = IS_NODE ? process.domain : undefined; - state.parent = true; - state.reactions.push(reaction); - if (state.state != PENDING) notify(this, state, false); - return reaction.promise; - }, - // `Promise.prototype.catch` method - // https://tc39.github.io/ecma262/#sec-promise.prototype.catch - 'catch': function (onRejected) { - return this.then(undefined, onRejected); - } - }); - OwnPromiseCapability = function () { - var promise = new Internal(); - var state = getInternalState(promise); - this.promise = promise; - this.resolve = bind(internalResolve, promise, state); - this.reject = bind(internalReject, promise, state); - }; - newPromiseCapabilityModule.f = newPromiseCapability = function (C) { - return C === PromiseConstructor || C === PromiseWrapper - ? new OwnPromiseCapability(C) - : newGenericPromiseCapability(C); - }; - - if (!IS_PURE && typeof NativePromise == 'function') { - nativeThen = NativePromise.prototype.then; - - // wrap native Promise#then for native async functions - redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) { - var that = this; - return new PromiseConstructor(function (resolve, reject) { - nativeThen.call(that, resolve, reject); - }).then(onFulfilled, onRejected); - // https://github.com/zloirock/core-js/issues/640 - }, { unsafe: true }); - - // wrap fetch result - if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, { - // eslint-disable-next-line no-unused-vars - fetch: function fetch(input /* , init */) { - return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments)); - } - }); - } -} - -$({ global: true, wrap: true, forced: FORCED }, { - Promise: PromiseConstructor -}); - -setToStringTag(PromiseConstructor, PROMISE, false, true); -setSpecies(PROMISE); - -PromiseWrapper = getBuiltIn(PROMISE); - -// statics -$({ target: PROMISE, stat: true, forced: FORCED }, { - // `Promise.reject` method - // https://tc39.github.io/ecma262/#sec-promise.reject - reject: function reject(r) { - var capability = newPromiseCapability(this); - capability.reject.call(undefined, r); - return capability.promise; - } -}); - -$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, { - // `Promise.resolve` method - // https://tc39.github.io/ecma262/#sec-promise.resolve - resolve: function resolve(x) { - return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x); - } -}); - -$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, { - // `Promise.all` method - // https://tc39.github.io/ecma262/#sec-promise.all - all: function all(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var $promiseResolve = aFunction(C.resolve); - var values = []; - var counter = 0; - var remaining = 1; - iterate(iterable, function (promise) { - var index = counter++; - var alreadyCalled = false; - values.push(undefined); - remaining++; - $promiseResolve.call(C, promise).then(function (value) { - if (alreadyCalled) return; - alreadyCalled = true; - values[index] = value; - --remaining || resolve(values); - }, reject); - }); - --remaining || resolve(values); - }); - if (result.error) reject(result.value); - return capability.promise; - }, - // `Promise.race` method - // https://tc39.github.io/ecma262/#sec-promise.race - race: function race(iterable) { - var C = this; - var capability = newPromiseCapability(C); - var reject = capability.reject; - var result = perform(function () { - var $promiseResolve = aFunction(C.resolve); - iterate(iterable, function (promise) { - $promiseResolve.call(C, promise).then(capability.resolve, reject); - }); - }); - if (result.error) reject(result.value); - return capability.promise; - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.apply.js b/node_modules/core-js-pure/modules/es.reflect.apply.js deleted file mode 100644 index 634222bb..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.apply.js +++ /dev/null @@ -1,25 +0,0 @@ -var $ = require('../internals/export'); -var getBuiltIn = require('../internals/get-built-in'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var fails = require('../internals/fails'); - -var nativeApply = getBuiltIn('Reflect', 'apply'); -var functionApply = Function.apply; - -// MS Edge argumentsList argument is optional -var OPTIONAL_ARGUMENTS_LIST = !fails(function () { - nativeApply(function () { /* empty */ }); -}); - -// `Reflect.apply` method -// https://tc39.github.io/ecma262/#sec-reflect.apply -$({ target: 'Reflect', stat: true, forced: OPTIONAL_ARGUMENTS_LIST }, { - apply: function apply(target, thisArgument, argumentsList) { - aFunction(target); - anObject(argumentsList); - return nativeApply - ? nativeApply(target, thisArgument, argumentsList) - : functionApply.call(target, thisArgument, argumentsList); - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.construct.js b/node_modules/core-js-pure/modules/es.reflect.construct.js deleted file mode 100644 index 9e678ddb..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.construct.js +++ /dev/null @@ -1,51 +0,0 @@ -var $ = require('../internals/export'); -var getBuiltIn = require('../internals/get-built-in'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var isObject = require('../internals/is-object'); -var create = require('../internals/object-create'); -var bind = require('../internals/function-bind'); -var fails = require('../internals/fails'); - -var nativeConstruct = getBuiltIn('Reflect', 'construct'); - -// `Reflect.construct` method -// https://tc39.github.io/ecma262/#sec-reflect.construct -// MS Edge supports only 2 arguments and argumentsList argument is optional -// FF Nightly sets third argument as `new.target`, but does not create `this` from it -var NEW_TARGET_BUG = fails(function () { - function F() { /* empty */ } - return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F); -}); -var ARGS_BUG = !fails(function () { - nativeConstruct(function () { /* empty */ }); -}); -var FORCED = NEW_TARGET_BUG || ARGS_BUG; - -$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, { - construct: function construct(Target, args /* , newTarget */) { - aFunction(Target); - anObject(args); - var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]); - if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget); - if (Target == newTarget) { - // w/o altered newTarget, optimization for 0-4 arguments - switch (args.length) { - case 0: return new Target(); - case 1: return new Target(args[0]); - case 2: return new Target(args[0], args[1]); - case 3: return new Target(args[0], args[1], args[2]); - case 4: return new Target(args[0], args[1], args[2], args[3]); - } - // w/o altered newTarget, lot of arguments case - var $args = [null]; - $args.push.apply($args, args); - return new (bind.apply(Target, $args))(); - } - // with altered newTarget, not support built-in constructors - var proto = newTarget.prototype; - var instance = create(isObject(proto) ? proto : Object.prototype); - var result = Function.apply.call(Target, instance, args); - return isObject(result) ? result : instance; - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.define-property.js b/node_modules/core-js-pure/modules/es.reflect.define-property.js deleted file mode 100644 index 44343f79..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.define-property.js +++ /dev/null @@ -1,28 +0,0 @@ -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var anObject = require('../internals/an-object'); -var toPrimitive = require('../internals/to-primitive'); -var definePropertyModule = require('../internals/object-define-property'); -var fails = require('../internals/fails'); - -// MS Edge has broken Reflect.defineProperty - throwing instead of returning false -var ERROR_INSTEAD_OF_FALSE = fails(function () { - // eslint-disable-next-line no-undef - Reflect.defineProperty(definePropertyModule.f({}, 1, { value: 1 }), 1, { value: 2 }); -}); - -// `Reflect.defineProperty` method -// https://tc39.github.io/ecma262/#sec-reflect.defineproperty -$({ target: 'Reflect', stat: true, forced: ERROR_INSTEAD_OF_FALSE, sham: !DESCRIPTORS }, { - defineProperty: function defineProperty(target, propertyKey, attributes) { - anObject(target); - var key = toPrimitive(propertyKey, true); - anObject(attributes); - try { - definePropertyModule.f(target, key, attributes); - return true; - } catch (error) { - return false; - } - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.delete-property.js b/node_modules/core-js-pure/modules/es.reflect.delete-property.js deleted file mode 100644 index 8cfb32d1..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.delete-property.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; - -// `Reflect.deleteProperty` method -// https://tc39.github.io/ecma262/#sec-reflect.deleteproperty -$({ target: 'Reflect', stat: true }, { - deleteProperty: function deleteProperty(target, propertyKey) { - var descriptor = getOwnPropertyDescriptor(anObject(target), propertyKey); - return descriptor && !descriptor.configurable ? false : delete target[propertyKey]; - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.get-own-property-descriptor.js b/node_modules/core-js-pure/modules/es.reflect.get-own-property-descriptor.js deleted file mode 100644 index 335aac42..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.get-own-property-descriptor.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var anObject = require('../internals/an-object'); -var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor'); - -// `Reflect.getOwnPropertyDescriptor` method -// https://tc39.github.io/ecma262/#sec-reflect.getownpropertydescriptor -$({ target: 'Reflect', stat: true, sham: !DESCRIPTORS }, { - getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) { - return getOwnPropertyDescriptorModule.f(anObject(target), propertyKey); - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.get-prototype-of.js b/node_modules/core-js-pure/modules/es.reflect.get-prototype-of.js deleted file mode 100644 index 97859492..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.get-prototype-of.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var objectGetPrototypeOf = require('../internals/object-get-prototype-of'); -var CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter'); - -// `Reflect.getPrototypeOf` method -// https://tc39.github.io/ecma262/#sec-reflect.getprototypeof -$({ target: 'Reflect', stat: true, sham: !CORRECT_PROTOTYPE_GETTER }, { - getPrototypeOf: function getPrototypeOf(target) { - return objectGetPrototypeOf(anObject(target)); - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.get.js b/node_modules/core-js-pure/modules/es.reflect.get.js deleted file mode 100644 index 10e79628..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.get.js +++ /dev/null @@ -1,24 +0,0 @@ -var $ = require('../internals/export'); -var isObject = require('../internals/is-object'); -var anObject = require('../internals/an-object'); -var has = require('../internals/has'); -var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); - -// `Reflect.get` method -// https://tc39.github.io/ecma262/#sec-reflect.get -function get(target, propertyKey /* , receiver */) { - var receiver = arguments.length < 3 ? target : arguments[2]; - var descriptor, prototype; - if (anObject(target) === receiver) return target[propertyKey]; - if (descriptor = getOwnPropertyDescriptorModule.f(target, propertyKey)) return has(descriptor, 'value') - ? descriptor.value - : descriptor.get === undefined - ? undefined - : descriptor.get.call(receiver); - if (isObject(prototype = getPrototypeOf(target))) return get(prototype, propertyKey, receiver); -} - -$({ target: 'Reflect', stat: true }, { - get: get -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.has.js b/node_modules/core-js-pure/modules/es.reflect.has.js deleted file mode 100644 index c6a8ced4..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.has.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); - -// `Reflect.has` method -// https://tc39.github.io/ecma262/#sec-reflect.has -$({ target: 'Reflect', stat: true }, { - has: function has(target, propertyKey) { - return propertyKey in target; - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.is-extensible.js b/node_modules/core-js-pure/modules/es.reflect.is-extensible.js deleted file mode 100644 index 876eae36..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.is-extensible.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); - -var objectIsExtensible = Object.isExtensible; - -// `Reflect.isExtensible` method -// https://tc39.github.io/ecma262/#sec-reflect.isextensible -$({ target: 'Reflect', stat: true }, { - isExtensible: function isExtensible(target) { - anObject(target); - return objectIsExtensible ? objectIsExtensible(target) : true; - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.own-keys.js b/node_modules/core-js-pure/modules/es.reflect.own-keys.js deleted file mode 100644 index 7a8f3f0e..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.own-keys.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var ownKeys = require('../internals/own-keys'); - -// `Reflect.ownKeys` method -// https://tc39.github.io/ecma262/#sec-reflect.ownkeys -$({ target: 'Reflect', stat: true }, { - ownKeys: ownKeys -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.prevent-extensions.js b/node_modules/core-js-pure/modules/es.reflect.prevent-extensions.js deleted file mode 100644 index 92d04753..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.prevent-extensions.js +++ /dev/null @@ -1,19 +0,0 @@ -var $ = require('../internals/export'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var FREEZING = require('../internals/freezing'); - -// `Reflect.preventExtensions` method -// https://tc39.github.io/ecma262/#sec-reflect.preventextensions -$({ target: 'Reflect', stat: true, sham: !FREEZING }, { - preventExtensions: function preventExtensions(target) { - anObject(target); - try { - var objectPreventExtensions = getBuiltIn('Object', 'preventExtensions'); - if (objectPreventExtensions) objectPreventExtensions(target); - return true; - } catch (error) { - return false; - } - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.set-prototype-of.js b/node_modules/core-js-pure/modules/es.reflect.set-prototype-of.js deleted file mode 100644 index 7900440c..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.set-prototype-of.js +++ /dev/null @@ -1,19 +0,0 @@ -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var aPossiblePrototype = require('../internals/a-possible-prototype'); -var objectSetPrototypeOf = require('../internals/object-set-prototype-of'); - -// `Reflect.setPrototypeOf` method -// https://tc39.github.io/ecma262/#sec-reflect.setprototypeof -if (objectSetPrototypeOf) $({ target: 'Reflect', stat: true }, { - setPrototypeOf: function setPrototypeOf(target, proto) { - anObject(target); - aPossiblePrototype(proto); - try { - objectSetPrototypeOf(target, proto); - return true; - } catch (error) { - return false; - } - } -}); diff --git a/node_modules/core-js-pure/modules/es.reflect.set.js b/node_modules/core-js-pure/modules/es.reflect.set.js deleted file mode 100644 index a16b762e..00000000 --- a/node_modules/core-js-pure/modules/es.reflect.set.js +++ /dev/null @@ -1,45 +0,0 @@ -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var isObject = require('../internals/is-object'); -var has = require('../internals/has'); -var fails = require('../internals/fails'); -var definePropertyModule = require('../internals/object-define-property'); -var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); - -// `Reflect.set` method -// https://tc39.github.io/ecma262/#sec-reflect.set -function set(target, propertyKey, V /* , receiver */) { - var receiver = arguments.length < 4 ? target : arguments[3]; - var ownDescriptor = getOwnPropertyDescriptorModule.f(anObject(target), propertyKey); - var existingDescriptor, prototype; - if (!ownDescriptor) { - if (isObject(prototype = getPrototypeOf(target))) { - return set(prototype, propertyKey, V, receiver); - } - ownDescriptor = createPropertyDescriptor(0); - } - if (has(ownDescriptor, 'value')) { - if (ownDescriptor.writable === false || !isObject(receiver)) return false; - if (existingDescriptor = getOwnPropertyDescriptorModule.f(receiver, propertyKey)) { - if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false; - existingDescriptor.value = V; - definePropertyModule.f(receiver, propertyKey, existingDescriptor); - } else definePropertyModule.f(receiver, propertyKey, createPropertyDescriptor(0, V)); - return true; - } - return ownDescriptor.set === undefined ? false : (ownDescriptor.set.call(receiver, V), true); -} - -// MS Edge 17-18 Reflect.set allows setting the property to object -// with non-writable property on the prototype -var MS_EDGE_BUG = fails(function () { - var object = definePropertyModule.f({}, 'a', { configurable: true }); - // eslint-disable-next-line no-undef - return Reflect.set(getPrototypeOf(object), 'a', 1, object) !== false; -}); - -$({ target: 'Reflect', stat: true, forced: MS_EDGE_BUG }, { - set: set -}); diff --git a/node_modules/core-js-pure/modules/es.regexp.constructor.js b/node_modules/core-js-pure/modules/es.regexp.constructor.js deleted file mode 100644 index 3f99a693..00000000 --- a/node_modules/core-js-pure/modules/es.regexp.constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var setSpecies = require('../internals/set-species'); - -setSpecies('RegExp'); diff --git a/node_modules/core-js-pure/modules/es.regexp.exec.js b/node_modules/core-js-pure/modules/es.regexp.exec.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.regexp.exec.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.regexp.flags.js b/node_modules/core-js-pure/modules/es.regexp.flags.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.regexp.flags.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.regexp.sticky.js b/node_modules/core-js-pure/modules/es.regexp.sticky.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.regexp.sticky.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.regexp.test.js b/node_modules/core-js-pure/modules/es.regexp.test.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.regexp.test.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.regexp.to-string.js b/node_modules/core-js-pure/modules/es.regexp.to-string.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.regexp.to-string.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.set.js b/node_modules/core-js-pure/modules/es.set.js deleted file mode 100644 index ac900413..00000000 --- a/node_modules/core-js-pure/modules/es.set.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var collection = require('../internals/collection'); -var collectionStrong = require('../internals/collection-strong'); - -// `Set` constructor -// https://tc39.github.io/ecma262/#sec-set-objects -module.exports = collection('Set', function (init) { - return function Set() { return init(this, arguments.length ? arguments[0] : undefined); }; -}, collectionStrong); diff --git a/node_modules/core-js-pure/modules/es.string.anchor.js b/node_modules/core-js-pure/modules/es.string.anchor.js deleted file mode 100644 index 004cc0a5..00000000 --- a/node_modules/core-js-pure/modules/es.string.anchor.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.anchor` method -// https://tc39.github.io/ecma262/#sec-string.prototype.anchor -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('anchor') }, { - anchor: function anchor(name) { - return createHTML(this, 'a', 'name', name); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.big.js b/node_modules/core-js-pure/modules/es.string.big.js deleted file mode 100644 index 3273d00c..00000000 --- a/node_modules/core-js-pure/modules/es.string.big.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.big` method -// https://tc39.github.io/ecma262/#sec-string.prototype.big -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('big') }, { - big: function big() { - return createHTML(this, 'big', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.blink.js b/node_modules/core-js-pure/modules/es.string.blink.js deleted file mode 100644 index 9373820d..00000000 --- a/node_modules/core-js-pure/modules/es.string.blink.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.blink` method -// https://tc39.github.io/ecma262/#sec-string.prototype.blink -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('blink') }, { - blink: function blink() { - return createHTML(this, 'blink', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.bold.js b/node_modules/core-js-pure/modules/es.string.bold.js deleted file mode 100644 index ea8c48c9..00000000 --- a/node_modules/core-js-pure/modules/es.string.bold.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.bold` method -// https://tc39.github.io/ecma262/#sec-string.prototype.bold -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('bold') }, { - bold: function bold() { - return createHTML(this, 'b', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.code-point-at.js b/node_modules/core-js-pure/modules/es.string.code-point-at.js deleted file mode 100644 index 26a2da2e..00000000 --- a/node_modules/core-js-pure/modules/es.string.code-point-at.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var codeAt = require('../internals/string-multibyte').codeAt; - -// `String.prototype.codePointAt` method -// https://tc39.github.io/ecma262/#sec-string.prototype.codepointat -$({ target: 'String', proto: true }, { - codePointAt: function codePointAt(pos) { - return codeAt(this, pos); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.ends-with.js b/node_modules/core-js-pure/modules/es.string.ends-with.js deleted file mode 100644 index e19b0f63..00000000 --- a/node_modules/core-js-pure/modules/es.string.ends-with.js +++ /dev/null @@ -1,34 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; -var toLength = require('../internals/to-length'); -var notARegExp = require('../internals/not-a-regexp'); -var requireObjectCoercible = require('../internals/require-object-coercible'); -var correctIsRegExpLogic = require('../internals/correct-is-regexp-logic'); -var IS_PURE = require('../internals/is-pure'); - -var nativeEndsWith = ''.endsWith; -var min = Math.min; - -var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith'); -// https://github.com/zloirock/core-js/pull/702 -var MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () { - var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith'); - return descriptor && !descriptor.writable; -}(); - -// `String.prototype.endsWith` method -// https://tc39.github.io/ecma262/#sec-string.prototype.endswith -$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, { - endsWith: function endsWith(searchString /* , endPosition = @length */) { - var that = String(requireObjectCoercible(this)); - notARegExp(searchString); - var endPosition = arguments.length > 1 ? arguments[1] : undefined; - var len = toLength(that.length); - var end = endPosition === undefined ? len : min(toLength(endPosition), len); - var search = String(searchString); - return nativeEndsWith - ? nativeEndsWith.call(that, search, end) - : that.slice(end - search.length, end) === search; - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.fixed.js b/node_modules/core-js-pure/modules/es.string.fixed.js deleted file mode 100644 index 13f8a043..00000000 --- a/node_modules/core-js-pure/modules/es.string.fixed.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.fixed` method -// https://tc39.github.io/ecma262/#sec-string.prototype.fixed -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('fixed') }, { - fixed: function fixed() { - return createHTML(this, 'tt', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.fontcolor.js b/node_modules/core-js-pure/modules/es.string.fontcolor.js deleted file mode 100644 index 88636c20..00000000 --- a/node_modules/core-js-pure/modules/es.string.fontcolor.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.fontcolor` method -// https://tc39.github.io/ecma262/#sec-string.prototype.fontcolor -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('fontcolor') }, { - fontcolor: function fontcolor(color) { - return createHTML(this, 'font', 'color', color); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.fontsize.js b/node_modules/core-js-pure/modules/es.string.fontsize.js deleted file mode 100644 index 09c07150..00000000 --- a/node_modules/core-js-pure/modules/es.string.fontsize.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.fontsize` method -// https://tc39.github.io/ecma262/#sec-string.prototype.fontsize -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('fontsize') }, { - fontsize: function fontsize(size) { - return createHTML(this, 'font', 'size', size); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.from-code-point.js b/node_modules/core-js-pure/modules/es.string.from-code-point.js deleted file mode 100644 index 139ed891..00000000 --- a/node_modules/core-js-pure/modules/es.string.from-code-point.js +++ /dev/null @@ -1,27 +0,0 @@ -var $ = require('../internals/export'); -var toAbsoluteIndex = require('../internals/to-absolute-index'); - -var fromCharCode = String.fromCharCode; -var nativeFromCodePoint = String.fromCodePoint; - -// length should be 1, old FF problem -var INCORRECT_LENGTH = !!nativeFromCodePoint && nativeFromCodePoint.length != 1; - -// `String.fromCodePoint` method -// https://tc39.github.io/ecma262/#sec-string.fromcodepoint -$({ target: 'String', stat: true, forced: INCORRECT_LENGTH }, { - fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars - var elements = []; - var length = arguments.length; - var i = 0; - var code; - while (length > i) { - code = +arguments[i++]; - if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw RangeError(code + ' is not a valid code point'); - elements.push(code < 0x10000 - ? fromCharCode(code) - : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00) - ); - } return elements.join(''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.includes.js b/node_modules/core-js-pure/modules/es.string.includes.js deleted file mode 100644 index 25dbcd8d..00000000 --- a/node_modules/core-js-pure/modules/es.string.includes.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var notARegExp = require('../internals/not-a-regexp'); -var requireObjectCoercible = require('../internals/require-object-coercible'); -var correctIsRegExpLogic = require('../internals/correct-is-regexp-logic'); - -// `String.prototype.includes` method -// https://tc39.github.io/ecma262/#sec-string.prototype.includes -$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, { - includes: function includes(searchString /* , position = 0 */) { - return !!~String(requireObjectCoercible(this)) - .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.italics.js b/node_modules/core-js-pure/modules/es.string.italics.js deleted file mode 100644 index 76bf3e49..00000000 --- a/node_modules/core-js-pure/modules/es.string.italics.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.italics` method -// https://tc39.github.io/ecma262/#sec-string.prototype.italics -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('italics') }, { - italics: function italics() { - return createHTML(this, 'i', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.iterator.js b/node_modules/core-js-pure/modules/es.string.iterator.js deleted file mode 100644 index 8a268e0e..00000000 --- a/node_modules/core-js-pure/modules/es.string.iterator.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; -var charAt = require('../internals/string-multibyte').charAt; -var InternalStateModule = require('../internals/internal-state'); -var defineIterator = require('../internals/define-iterator'); - -var STRING_ITERATOR = 'String Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); - -// `String.prototype[@@iterator]` method -// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator -defineIterator(String, 'String', function (iterated) { - setInternalState(this, { - type: STRING_ITERATOR, - string: String(iterated), - index: 0 - }); -// `%StringIteratorPrototype%.next` method -// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next -}, function next() { - var state = getInternalState(this); - var string = state.string; - var index = state.index; - var point; - if (index >= string.length) return { value: undefined, done: true }; - point = charAt(string, index); - state.index += point.length; - return { value: point, done: false }; -}); diff --git a/node_modules/core-js-pure/modules/es.string.link.js b/node_modules/core-js-pure/modules/es.string.link.js deleted file mode 100644 index 65f82328..00000000 --- a/node_modules/core-js-pure/modules/es.string.link.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.link` method -// https://tc39.github.io/ecma262/#sec-string.prototype.link -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('link') }, { - link: function link(url) { - return createHTML(this, 'a', 'href', url); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.match-all.js b/node_modules/core-js-pure/modules/es.string.match-all.js deleted file mode 100644 index 3fc36eb8..00000000 --- a/node_modules/core-js-pure/modules/es.string.match-all.js +++ /dev/null @@ -1,109 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createIteratorConstructor = require('../internals/create-iterator-constructor'); -var requireObjectCoercible = require('../internals/require-object-coercible'); -var toLength = require('../internals/to-length'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var classof = require('../internals/classof-raw'); -var isRegExp = require('../internals/is-regexp'); -var getRegExpFlags = require('../internals/regexp-flags'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var fails = require('../internals/fails'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var speciesConstructor = require('../internals/species-constructor'); -var advanceStringIndex = require('../internals/advance-string-index'); -var InternalStateModule = require('../internals/internal-state'); -var IS_PURE = require('../internals/is-pure'); - -var MATCH_ALL = wellKnownSymbol('matchAll'); -var REGEXP_STRING = 'RegExp String'; -var REGEXP_STRING_ITERATOR = REGEXP_STRING + ' Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(REGEXP_STRING_ITERATOR); -var RegExpPrototype = RegExp.prototype; -var regExpBuiltinExec = RegExpPrototype.exec; -var nativeMatchAll = ''.matchAll; - -var WORKS_WITH_NON_GLOBAL_REGEX = !!nativeMatchAll && !fails(function () { - 'a'.matchAll(/./); -}); - -var regExpExec = function (R, S) { - var exec = R.exec; - var result; - if (typeof exec == 'function') { - result = exec.call(R, S); - if (typeof result != 'object') throw TypeError('Incorrect exec result'); - return result; - } return regExpBuiltinExec.call(R, S); -}; - -// eslint-disable-next-line max-len -var $RegExpStringIterator = createIteratorConstructor(function RegExpStringIterator(regexp, string, global, fullUnicode) { - setInternalState(this, { - type: REGEXP_STRING_ITERATOR, - regexp: regexp, - string: string, - global: global, - unicode: fullUnicode, - done: false - }); -}, REGEXP_STRING, function next() { - var state = getInternalState(this); - if (state.done) return { value: undefined, done: true }; - var R = state.regexp; - var S = state.string; - var match = regExpExec(R, S); - if (match === null) return { value: undefined, done: state.done = true }; - if (state.global) { - if (String(match[0]) == '') R.lastIndex = advanceStringIndex(S, toLength(R.lastIndex), state.unicode); - return { value: match, done: false }; - } - state.done = true; - return { value: match, done: false }; -}); - -var $matchAll = function (string) { - var R = anObject(this); - var S = String(string); - var C, flagsValue, flags, matcher, global, fullUnicode; - C = speciesConstructor(R, RegExp); - flagsValue = R.flags; - if (flagsValue === undefined && R instanceof RegExp && !('flags' in RegExpPrototype)) { - flagsValue = getRegExpFlags.call(R); - } - flags = flagsValue === undefined ? '' : String(flagsValue); - matcher = new C(C === RegExp ? R.source : R, flags); - global = !!~flags.indexOf('g'); - fullUnicode = !!~flags.indexOf('u'); - matcher.lastIndex = toLength(R.lastIndex); - return new $RegExpStringIterator(matcher, S, global, fullUnicode); -}; - -// `String.prototype.matchAll` method -// https://github.com/tc39/proposal-string-matchall -$({ target: 'String', proto: true, forced: WORKS_WITH_NON_GLOBAL_REGEX }, { - matchAll: function matchAll(regexp) { - var O = requireObjectCoercible(this); - var flags, S, matcher, rx; - if (regexp != null) { - if (isRegExp(regexp)) { - flags = String(requireObjectCoercible('flags' in RegExpPrototype - ? regexp.flags - : getRegExpFlags.call(regexp) - )); - if (!~flags.indexOf('g')) throw TypeError('`.matchAll` does not allow non-global regexes'); - } - if (WORKS_WITH_NON_GLOBAL_REGEX) return nativeMatchAll.apply(O, arguments); - matcher = regexp[MATCH_ALL]; - if (matcher === undefined && IS_PURE && classof(regexp) == 'RegExp') matcher = $matchAll; - if (matcher != null) return aFunction(matcher).call(regexp, O); - } else if (WORKS_WITH_NON_GLOBAL_REGEX) return nativeMatchAll.apply(O, arguments); - S = String(O); - rx = new RegExp(regexp, 'g'); - return IS_PURE ? $matchAll.call(rx, S) : rx[MATCH_ALL](S); - } -}); - -IS_PURE || MATCH_ALL in RegExpPrototype || createNonEnumerableProperty(RegExpPrototype, MATCH_ALL, $matchAll); diff --git a/node_modules/core-js-pure/modules/es.string.match.js b/node_modules/core-js-pure/modules/es.string.match.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.string.match.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.string.pad-end.js b/node_modules/core-js-pure/modules/es.string.pad-end.js deleted file mode 100644 index 9108024c..00000000 --- a/node_modules/core-js-pure/modules/es.string.pad-end.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $padEnd = require('../internals/string-pad').end; -var WEBKIT_BUG = require('../internals/string-pad-webkit-bug'); - -// `String.prototype.padEnd` method -// https://tc39.github.io/ecma262/#sec-string.prototype.padend -$({ target: 'String', proto: true, forced: WEBKIT_BUG }, { - padEnd: function padEnd(maxLength /* , fillString = ' ' */) { - return $padEnd(this, maxLength, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.pad-start.js b/node_modules/core-js-pure/modules/es.string.pad-start.js deleted file mode 100644 index 69b788fa..00000000 --- a/node_modules/core-js-pure/modules/es.string.pad-start.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $padStart = require('../internals/string-pad').start; -var WEBKIT_BUG = require('../internals/string-pad-webkit-bug'); - -// `String.prototype.padStart` method -// https://tc39.github.io/ecma262/#sec-string.prototype.padstart -$({ target: 'String', proto: true, forced: WEBKIT_BUG }, { - padStart: function padStart(maxLength /* , fillString = ' ' */) { - return $padStart(this, maxLength, arguments.length > 1 ? arguments[1] : undefined); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.raw.js b/node_modules/core-js-pure/modules/es.string.raw.js deleted file mode 100644 index beb07839..00000000 --- a/node_modules/core-js-pure/modules/es.string.raw.js +++ /dev/null @@ -1,19 +0,0 @@ -var $ = require('../internals/export'); -var toIndexedObject = require('../internals/to-indexed-object'); -var toLength = require('../internals/to-length'); - -// `String.raw` method -// https://tc39.github.io/ecma262/#sec-string.raw -$({ target: 'String', stat: true }, { - raw: function raw(template) { - var rawTemplate = toIndexedObject(template.raw); - var literalSegments = toLength(rawTemplate.length); - var argumentsLength = arguments.length; - var elements = []; - var i = 0; - while (literalSegments > i) { - elements.push(String(rawTemplate[i++])); - if (i < argumentsLength) elements.push(String(arguments[i])); - } return elements.join(''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.repeat.js b/node_modules/core-js-pure/modules/es.string.repeat.js deleted file mode 100644 index 43890aa5..00000000 --- a/node_modules/core-js-pure/modules/es.string.repeat.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var repeat = require('../internals/string-repeat'); - -// `String.prototype.repeat` method -// https://tc39.github.io/ecma262/#sec-string.prototype.repeat -$({ target: 'String', proto: true }, { - repeat: repeat -}); diff --git a/node_modules/core-js-pure/modules/es.string.replace.js b/node_modules/core-js-pure/modules/es.string.replace.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.string.replace.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.string.search.js b/node_modules/core-js-pure/modules/es.string.search.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.string.search.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.string.small.js b/node_modules/core-js-pure/modules/es.string.small.js deleted file mode 100644 index c8587d65..00000000 --- a/node_modules/core-js-pure/modules/es.string.small.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.small` method -// https://tc39.github.io/ecma262/#sec-string.prototype.small -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('small') }, { - small: function small() { - return createHTML(this, 'small', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.split.js b/node_modules/core-js-pure/modules/es.string.split.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.string.split.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.string.starts-with.js b/node_modules/core-js-pure/modules/es.string.starts-with.js deleted file mode 100644 index e4fe655c..00000000 --- a/node_modules/core-js-pure/modules/es.string.starts-with.js +++ /dev/null @@ -1,32 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; -var toLength = require('../internals/to-length'); -var notARegExp = require('../internals/not-a-regexp'); -var requireObjectCoercible = require('../internals/require-object-coercible'); -var correctIsRegExpLogic = require('../internals/correct-is-regexp-logic'); -var IS_PURE = require('../internals/is-pure'); - -var nativeStartsWith = ''.startsWith; -var min = Math.min; - -var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith'); -// https://github.com/zloirock/core-js/pull/702 -var MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () { - var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith'); - return descriptor && !descriptor.writable; -}(); - -// `String.prototype.startsWith` method -// https://tc39.github.io/ecma262/#sec-string.prototype.startswith -$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, { - startsWith: function startsWith(searchString /* , position = 0 */) { - var that = String(requireObjectCoercible(this)); - notARegExp(searchString); - var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length)); - var search = String(searchString); - return nativeStartsWith - ? nativeStartsWith.call(that, search, index) - : that.slice(index, index + search.length) === search; - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.strike.js b/node_modules/core-js-pure/modules/es.string.strike.js deleted file mode 100644 index 4f0fa2ef..00000000 --- a/node_modules/core-js-pure/modules/es.string.strike.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.strike` method -// https://tc39.github.io/ecma262/#sec-string.prototype.strike -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('strike') }, { - strike: function strike() { - return createHTML(this, 'strike', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.sub.js b/node_modules/core-js-pure/modules/es.string.sub.js deleted file mode 100644 index 4b901d2d..00000000 --- a/node_modules/core-js-pure/modules/es.string.sub.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.sub` method -// https://tc39.github.io/ecma262/#sec-string.prototype.sub -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('sub') }, { - sub: function sub() { - return createHTML(this, 'sub', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.sup.js b/node_modules/core-js-pure/modules/es.string.sup.js deleted file mode 100644 index 3fc0b181..00000000 --- a/node_modules/core-js-pure/modules/es.string.sup.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createHTML = require('../internals/create-html'); -var forcedStringHTMLMethod = require('../internals/string-html-forced'); - -// `String.prototype.sup` method -// https://tc39.github.io/ecma262/#sec-string.prototype.sup -$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('sup') }, { - sup: function sup() { - return createHTML(this, 'sup', '', ''); - } -}); diff --git a/node_modules/core-js-pure/modules/es.string.trim-end.js b/node_modules/core-js-pure/modules/es.string.trim-end.js deleted file mode 100644 index 4db829a9..00000000 --- a/node_modules/core-js-pure/modules/es.string.trim-end.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $trimEnd = require('../internals/string-trim').end; -var forcedStringTrimMethod = require('../internals/string-trim-forced'); - -var FORCED = forcedStringTrimMethod('trimEnd'); - -var trimEnd = FORCED ? function trimEnd() { - return $trimEnd(this); -} : ''.trimEnd; - -// `String.prototype.{ trimEnd, trimRight }` methods -// https://github.com/tc39/ecmascript-string-left-right-trim -$({ target: 'String', proto: true, forced: FORCED }, { - trimEnd: trimEnd, - trimRight: trimEnd -}); diff --git a/node_modules/core-js-pure/modules/es.string.trim-start.js b/node_modules/core-js-pure/modules/es.string.trim-start.js deleted file mode 100644 index b4f6e43d..00000000 --- a/node_modules/core-js-pure/modules/es.string.trim-start.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $trimStart = require('../internals/string-trim').start; -var forcedStringTrimMethod = require('../internals/string-trim-forced'); - -var FORCED = forcedStringTrimMethod('trimStart'); - -var trimStart = FORCED ? function trimStart() { - return $trimStart(this); -} : ''.trimStart; - -// `String.prototype.{ trimStart, trimLeft }` methods -// https://github.com/tc39/ecmascript-string-left-right-trim -$({ target: 'String', proto: true, forced: FORCED }, { - trimStart: trimStart, - trimLeft: trimStart -}); diff --git a/node_modules/core-js-pure/modules/es.string.trim.js b/node_modules/core-js-pure/modules/es.string.trim.js deleted file mode 100644 index 124768f2..00000000 --- a/node_modules/core-js-pure/modules/es.string.trim.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var $trim = require('../internals/string-trim').trim; -var forcedStringTrimMethod = require('../internals/string-trim-forced'); - -// `String.prototype.trim` method -// https://tc39.github.io/ecma262/#sec-string.prototype.trim -$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, { - trim: function trim() { - return $trim(this); - } -}); diff --git a/node_modules/core-js-pure/modules/es.symbol.async-iterator.js b/node_modules/core-js-pure/modules/es.symbol.async-iterator.js deleted file mode 100644 index ecf7281d..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.async-iterator.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.asyncIterator` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.asynciterator -defineWellKnownSymbol('asyncIterator'); diff --git a/node_modules/core-js-pure/modules/es.symbol.description.js b/node_modules/core-js-pure/modules/es.symbol.description.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.description.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.symbol.has-instance.js b/node_modules/core-js-pure/modules/es.symbol.has-instance.js deleted file mode 100644 index 2226ddb2..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.has-instance.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.hasInstance` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.hasinstance -defineWellKnownSymbol('hasInstance'); diff --git a/node_modules/core-js-pure/modules/es.symbol.is-concat-spreadable.js b/node_modules/core-js-pure/modules/es.symbol.is-concat-spreadable.js deleted file mode 100644 index d53771ba..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.is-concat-spreadable.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.isConcatSpreadable` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.isconcatspreadable -defineWellKnownSymbol('isConcatSpreadable'); diff --git a/node_modules/core-js-pure/modules/es.symbol.iterator.js b/node_modules/core-js-pure/modules/es.symbol.iterator.js deleted file mode 100644 index e43878df..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.iterator.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.iterator` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.iterator -defineWellKnownSymbol('iterator'); diff --git a/node_modules/core-js-pure/modules/es.symbol.js b/node_modules/core-js-pure/modules/es.symbol.js deleted file mode 100644 index 07f1ee94..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.js +++ /dev/null @@ -1,311 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var global = require('../internals/global'); -var getBuiltIn = require('../internals/get-built-in'); -var IS_PURE = require('../internals/is-pure'); -var DESCRIPTORS = require('../internals/descriptors'); -var NATIVE_SYMBOL = require('../internals/native-symbol'); -var USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid'); -var fails = require('../internals/fails'); -var has = require('../internals/has'); -var isArray = require('../internals/is-array'); -var isObject = require('../internals/is-object'); -var anObject = require('../internals/an-object'); -var toObject = require('../internals/to-object'); -var toIndexedObject = require('../internals/to-indexed-object'); -var toPrimitive = require('../internals/to-primitive'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); -var nativeObjectCreate = require('../internals/object-create'); -var objectKeys = require('../internals/object-keys'); -var getOwnPropertyNamesModule = require('../internals/object-get-own-property-names'); -var getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external'); -var getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols'); -var getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor'); -var definePropertyModule = require('../internals/object-define-property'); -var propertyIsEnumerableModule = require('../internals/object-property-is-enumerable'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var redefine = require('../internals/redefine'); -var shared = require('../internals/shared'); -var sharedKey = require('../internals/shared-key'); -var hiddenKeys = require('../internals/hidden-keys'); -var uid = require('../internals/uid'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped'); -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); -var setToStringTag = require('../internals/set-to-string-tag'); -var InternalStateModule = require('../internals/internal-state'); -var $forEach = require('../internals/array-iteration').forEach; - -var HIDDEN = sharedKey('hidden'); -var SYMBOL = 'Symbol'; -var PROTOTYPE = 'prototype'; -var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(SYMBOL); -var ObjectPrototype = Object[PROTOTYPE]; -var $Symbol = global.Symbol; -var $stringify = getBuiltIn('JSON', 'stringify'); -var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; -var nativeDefineProperty = definePropertyModule.f; -var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f; -var nativePropertyIsEnumerable = propertyIsEnumerableModule.f; -var AllSymbols = shared('symbols'); -var ObjectPrototypeSymbols = shared('op-symbols'); -var StringToSymbolRegistry = shared('string-to-symbol-registry'); -var SymbolToStringRegistry = shared('symbol-to-string-registry'); -var WellKnownSymbolsStore = shared('wks'); -var QObject = global.QObject; -// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 -var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild; - -// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 -var setSymbolDescriptor = DESCRIPTORS && fails(function () { - return nativeObjectCreate(nativeDefineProperty({}, 'a', { - get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; } - })).a != 7; -}) ? function (O, P, Attributes) { - var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P); - if (ObjectPrototypeDescriptor) delete ObjectPrototype[P]; - nativeDefineProperty(O, P, Attributes); - if (ObjectPrototypeDescriptor && O !== ObjectPrototype) { - nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor); - } -} : nativeDefineProperty; - -var wrap = function (tag, description) { - var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]); - setInternalState(symbol, { - type: SYMBOL, - tag: tag, - description: description - }); - if (!DESCRIPTORS) symbol.description = description; - return symbol; -}; - -var isSymbol = USE_SYMBOL_AS_UID ? function (it) { - return typeof it == 'symbol'; -} : function (it) { - return Object(it) instanceof $Symbol; -}; - -var $defineProperty = function defineProperty(O, P, Attributes) { - if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes); - anObject(O); - var key = toPrimitive(P, true); - anObject(Attributes); - if (has(AllSymbols, key)) { - if (!Attributes.enumerable) { - if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {})); - O[HIDDEN][key] = true; - } else { - if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false; - Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) }); - } return setSymbolDescriptor(O, key, Attributes); - } return nativeDefineProperty(O, key, Attributes); -}; - -var $defineProperties = function defineProperties(O, Properties) { - anObject(O); - var properties = toIndexedObject(Properties); - var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties)); - $forEach(keys, function (key) { - if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]); - }); - return O; -}; - -var $create = function create(O, Properties) { - return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties); -}; - -var $propertyIsEnumerable = function propertyIsEnumerable(V) { - var P = toPrimitive(V, true); - var enumerable = nativePropertyIsEnumerable.call(this, P); - if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false; - return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true; -}; - -var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) { - var it = toIndexedObject(O); - var key = toPrimitive(P, true); - if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return; - var descriptor = nativeGetOwnPropertyDescriptor(it, key); - if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) { - descriptor.enumerable = true; - } - return descriptor; -}; - -var $getOwnPropertyNames = function getOwnPropertyNames(O) { - var names = nativeGetOwnPropertyNames(toIndexedObject(O)); - var result = []; - $forEach(names, function (key) { - if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key); - }); - return result; -}; - -var $getOwnPropertySymbols = function getOwnPropertySymbols(O) { - var IS_OBJECT_PROTOTYPE = O === ObjectPrototype; - var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O)); - var result = []; - $forEach(names, function (key) { - if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) { - result.push(AllSymbols[key]); - } - }); - return result; -}; - -// `Symbol` constructor -// https://tc39.github.io/ecma262/#sec-symbol-constructor -if (!NATIVE_SYMBOL) { - $Symbol = function Symbol() { - if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor'); - var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]); - var tag = uid(description); - var setter = function (value) { - if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value); - if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; - setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value)); - }; - if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter }); - return wrap(tag, description); - }; - - redefine($Symbol[PROTOTYPE], 'toString', function toString() { - return getInternalState(this).tag; - }); - - redefine($Symbol, 'withoutSetter', function (description) { - return wrap(uid(description), description); - }); - - propertyIsEnumerableModule.f = $propertyIsEnumerable; - definePropertyModule.f = $defineProperty; - getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor; - getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames; - getOwnPropertySymbolsModule.f = $getOwnPropertySymbols; - - wrappedWellKnownSymbolModule.f = function (name) { - return wrap(wellKnownSymbol(name), name); - }; - - if (DESCRIPTORS) { - // https://github.com/tc39/proposal-Symbol-description - nativeDefineProperty($Symbol[PROTOTYPE], 'description', { - configurable: true, - get: function description() { - return getInternalState(this).description; - } - }); - if (!IS_PURE) { - redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true }); - } - } -} - -$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, { - Symbol: $Symbol -}); - -$forEach(objectKeys(WellKnownSymbolsStore), function (name) { - defineWellKnownSymbol(name); -}); - -$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, { - // `Symbol.for` method - // https://tc39.github.io/ecma262/#sec-symbol.for - 'for': function (key) { - var string = String(key); - if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string]; - var symbol = $Symbol(string); - StringToSymbolRegistry[string] = symbol; - SymbolToStringRegistry[symbol] = string; - return symbol; - }, - // `Symbol.keyFor` method - // https://tc39.github.io/ecma262/#sec-symbol.keyfor - keyFor: function keyFor(sym) { - if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol'); - if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym]; - }, - useSetter: function () { USE_SETTER = true; }, - useSimple: function () { USE_SETTER = false; } -}); - -$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, { - // `Object.create` method - // https://tc39.github.io/ecma262/#sec-object.create - create: $create, - // `Object.defineProperty` method - // https://tc39.github.io/ecma262/#sec-object.defineproperty - defineProperty: $defineProperty, - // `Object.defineProperties` method - // https://tc39.github.io/ecma262/#sec-object.defineproperties - defineProperties: $defineProperties, - // `Object.getOwnPropertyDescriptor` method - // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors - getOwnPropertyDescriptor: $getOwnPropertyDescriptor -}); - -$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, { - // `Object.getOwnPropertyNames` method - // https://tc39.github.io/ecma262/#sec-object.getownpropertynames - getOwnPropertyNames: $getOwnPropertyNames, - // `Object.getOwnPropertySymbols` method - // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols - getOwnPropertySymbols: $getOwnPropertySymbols -}); - -// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives -// https://bugs.chromium.org/p/v8/issues/detail?id=3443 -$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, { - getOwnPropertySymbols: function getOwnPropertySymbols(it) { - return getOwnPropertySymbolsModule.f(toObject(it)); - } -}); - -// `JSON.stringify` method behavior with symbols -// https://tc39.github.io/ecma262/#sec-json.stringify -if ($stringify) { - var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () { - var symbol = $Symbol(); - // MS Edge converts symbol values to JSON as {} - return $stringify([symbol]) != '[null]' - // WebKit converts symbol values to JSON as null - || $stringify({ a: symbol }) != '{}' - // V8 throws on boxed symbols - || $stringify(Object(symbol)) != '{}'; - }); - - $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, { - // eslint-disable-next-line no-unused-vars - stringify: function stringify(it, replacer, space) { - var args = [it]; - var index = 1; - var $replacer; - while (arguments.length > index) args.push(arguments[index++]); - $replacer = replacer; - if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined - if (!isArray(replacer)) replacer = function (key, value) { - if (typeof $replacer == 'function') value = $replacer.call(this, key, value); - if (!isSymbol(value)) return value; - }; - args[1] = replacer; - return $stringify.apply(null, args); - } - }); -} - -// `Symbol.prototype[@@toPrimitive]` method -// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive -if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) { - createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf); -} -// `Symbol.prototype[@@toStringTag]` property -// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag -setToStringTag($Symbol, SYMBOL); - -hiddenKeys[HIDDEN] = true; diff --git a/node_modules/core-js-pure/modules/es.symbol.match-all.js b/node_modules/core-js-pure/modules/es.symbol.match-all.js deleted file mode 100644 index b16c8bea..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.match-all.js +++ /dev/null @@ -1,4 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.matchAll` well-known symbol -defineWellKnownSymbol('matchAll'); diff --git a/node_modules/core-js-pure/modules/es.symbol.match.js b/node_modules/core-js-pure/modules/es.symbol.match.js deleted file mode 100644 index ec2fbdbe..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.match.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.match` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.match -defineWellKnownSymbol('match'); diff --git a/node_modules/core-js-pure/modules/es.symbol.replace.js b/node_modules/core-js-pure/modules/es.symbol.replace.js deleted file mode 100644 index d252d8d4..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.replace.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.replace` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.replace -defineWellKnownSymbol('replace'); diff --git a/node_modules/core-js-pure/modules/es.symbol.search.js b/node_modules/core-js-pure/modules/es.symbol.search.js deleted file mode 100644 index 0c28e62c..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.search.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.search` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.search -defineWellKnownSymbol('search'); diff --git a/node_modules/core-js-pure/modules/es.symbol.species.js b/node_modules/core-js-pure/modules/es.symbol.species.js deleted file mode 100644 index 8391f22d..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.species.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.species` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.species -defineWellKnownSymbol('species'); diff --git a/node_modules/core-js-pure/modules/es.symbol.split.js b/node_modules/core-js-pure/modules/es.symbol.split.js deleted file mode 100644 index 5f76df44..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.split.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.split` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.split -defineWellKnownSymbol('split'); diff --git a/node_modules/core-js-pure/modules/es.symbol.to-primitive.js b/node_modules/core-js-pure/modules/es.symbol.to-primitive.js deleted file mode 100644 index c2978265..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.to-primitive.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.toPrimitive` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.toprimitive -defineWellKnownSymbol('toPrimitive'); diff --git a/node_modules/core-js-pure/modules/es.symbol.to-string-tag.js b/node_modules/core-js-pure/modules/es.symbol.to-string-tag.js deleted file mode 100644 index 8ddbfad1..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.to-string-tag.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.toStringTag` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.tostringtag -defineWellKnownSymbol('toStringTag'); diff --git a/node_modules/core-js-pure/modules/es.symbol.unscopables.js b/node_modules/core-js-pure/modules/es.symbol.unscopables.js deleted file mode 100644 index a9daa606..00000000 --- a/node_modules/core-js-pure/modules/es.symbol.unscopables.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.unscopables` well-known symbol -// https://tc39.github.io/ecma262/#sec-symbol.unscopables -defineWellKnownSymbol('unscopables'); diff --git a/node_modules/core-js-pure/modules/es.typed-array.copy-within.js b/node_modules/core-js-pure/modules/es.typed-array.copy-within.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.copy-within.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.every.js b/node_modules/core-js-pure/modules/es.typed-array.every.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.every.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.fill.js b/node_modules/core-js-pure/modules/es.typed-array.fill.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.fill.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.filter.js b/node_modules/core-js-pure/modules/es.typed-array.filter.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.filter.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.find-index.js b/node_modules/core-js-pure/modules/es.typed-array.find-index.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.find-index.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.find.js b/node_modules/core-js-pure/modules/es.typed-array.find.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.find.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.float32-array.js b/node_modules/core-js-pure/modules/es.typed-array.float32-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.float32-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.float64-array.js b/node_modules/core-js-pure/modules/es.typed-array.float64-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.float64-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.for-each.js b/node_modules/core-js-pure/modules/es.typed-array.for-each.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.for-each.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.from.js b/node_modules/core-js-pure/modules/es.typed-array.from.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.from.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.includes.js b/node_modules/core-js-pure/modules/es.typed-array.includes.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.includes.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.index-of.js b/node_modules/core-js-pure/modules/es.typed-array.index-of.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.index-of.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.int16-array.js b/node_modules/core-js-pure/modules/es.typed-array.int16-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.int16-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.int32-array.js b/node_modules/core-js-pure/modules/es.typed-array.int32-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.int32-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.int8-array.js b/node_modules/core-js-pure/modules/es.typed-array.int8-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.int8-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.iterator.js b/node_modules/core-js-pure/modules/es.typed-array.iterator.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.iterator.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.join.js b/node_modules/core-js-pure/modules/es.typed-array.join.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.join.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.last-index-of.js b/node_modules/core-js-pure/modules/es.typed-array.last-index-of.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.last-index-of.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.map.js b/node_modules/core-js-pure/modules/es.typed-array.map.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.map.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.of.js b/node_modules/core-js-pure/modules/es.typed-array.of.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.of.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.reduce-right.js b/node_modules/core-js-pure/modules/es.typed-array.reduce-right.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.reduce-right.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.reduce.js b/node_modules/core-js-pure/modules/es.typed-array.reduce.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.reduce.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.reverse.js b/node_modules/core-js-pure/modules/es.typed-array.reverse.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.reverse.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.set.js b/node_modules/core-js-pure/modules/es.typed-array.set.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.set.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.slice.js b/node_modules/core-js-pure/modules/es.typed-array.slice.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.slice.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.some.js b/node_modules/core-js-pure/modules/es.typed-array.some.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.some.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.sort.js b/node_modules/core-js-pure/modules/es.typed-array.sort.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.sort.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.subarray.js b/node_modules/core-js-pure/modules/es.typed-array.subarray.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.subarray.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.to-locale-string.js b/node_modules/core-js-pure/modules/es.typed-array.to-locale-string.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.to-locale-string.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.to-string.js b/node_modules/core-js-pure/modules/es.typed-array.to-string.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.to-string.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.uint16-array.js b/node_modules/core-js-pure/modules/es.typed-array.uint16-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.uint16-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.uint32-array.js b/node_modules/core-js-pure/modules/es.typed-array.uint32-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.uint32-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.uint8-array.js b/node_modules/core-js-pure/modules/es.typed-array.uint8-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.uint8-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.typed-array.uint8-clamped-array.js b/node_modules/core-js-pure/modules/es.typed-array.uint8-clamped-array.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/es.typed-array.uint8-clamped-array.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/es.weak-map.js b/node_modules/core-js-pure/modules/es.weak-map.js deleted file mode 100644 index 38f2f72f..00000000 --- a/node_modules/core-js-pure/modules/es.weak-map.js +++ /dev/null @@ -1,67 +0,0 @@ -'use strict'; -var global = require('../internals/global'); -var redefineAll = require('../internals/redefine-all'); -var InternalMetadataModule = require('../internals/internal-metadata'); -var collection = require('../internals/collection'); -var collectionWeak = require('../internals/collection-weak'); -var isObject = require('../internals/is-object'); -var enforceIternalState = require('../internals/internal-state').enforce; -var NATIVE_WEAK_MAP = require('../internals/native-weak-map'); - -var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global; -var isExtensible = Object.isExtensible; -var InternalWeakMap; - -var wrapper = function (init) { - return function WeakMap() { - return init(this, arguments.length ? arguments[0] : undefined); - }; -}; - -// `WeakMap` constructor -// https://tc39.github.io/ecma262/#sec-weakmap-constructor -var $WeakMap = module.exports = collection('WeakMap', wrapper, collectionWeak); - -// IE11 WeakMap frozen keys fix -// We can't use feature detection because it crash some old IE builds -// https://github.com/zloirock/core-js/issues/485 -if (NATIVE_WEAK_MAP && IS_IE11) { - InternalWeakMap = collectionWeak.getConstructor(wrapper, 'WeakMap', true); - InternalMetadataModule.REQUIRED = true; - var WeakMapPrototype = $WeakMap.prototype; - var nativeDelete = WeakMapPrototype['delete']; - var nativeHas = WeakMapPrototype.has; - var nativeGet = WeakMapPrototype.get; - var nativeSet = WeakMapPrototype.set; - redefineAll(WeakMapPrototype, { - 'delete': function (key) { - if (isObject(key) && !isExtensible(key)) { - var state = enforceIternalState(this); - if (!state.frozen) state.frozen = new InternalWeakMap(); - return nativeDelete.call(this, key) || state.frozen['delete'](key); - } return nativeDelete.call(this, key); - }, - has: function has(key) { - if (isObject(key) && !isExtensible(key)) { - var state = enforceIternalState(this); - if (!state.frozen) state.frozen = new InternalWeakMap(); - return nativeHas.call(this, key) || state.frozen.has(key); - } return nativeHas.call(this, key); - }, - get: function get(key) { - if (isObject(key) && !isExtensible(key)) { - var state = enforceIternalState(this); - if (!state.frozen) state.frozen = new InternalWeakMap(); - return nativeHas.call(this, key) ? nativeGet.call(this, key) : state.frozen.get(key); - } return nativeGet.call(this, key); - }, - set: function set(key, value) { - if (isObject(key) && !isExtensible(key)) { - var state = enforceIternalState(this); - if (!state.frozen) state.frozen = new InternalWeakMap(); - nativeHas.call(this, key) ? nativeSet.call(this, key, value) : state.frozen.set(key, value); - } else nativeSet.call(this, key, value); - return this; - } - }); -} diff --git a/node_modules/core-js-pure/modules/es.weak-set.js b/node_modules/core-js-pure/modules/es.weak-set.js deleted file mode 100644 index ef6b1bc4..00000000 --- a/node_modules/core-js-pure/modules/es.weak-set.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; -var collection = require('../internals/collection'); -var collectionWeak = require('../internals/collection-weak'); - -// `WeakSet` constructor -// https://tc39.github.io/ecma262/#sec-weakset-constructor -collection('WeakSet', function (init) { - return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); }; -}, collectionWeak); diff --git a/node_modules/core-js-pure/modules/esnext.aggregate-error.js b/node_modules/core-js-pure/modules/esnext.aggregate-error.js deleted file mode 100644 index 20578b6c..00000000 --- a/node_modules/core-js-pure/modules/esnext.aggregate-error.js +++ /dev/null @@ -1,45 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var setPrototypeOf = require('../internals/object-set-prototype-of'); -var create = require('../internals/object-create'); -var defineProperty = require('../internals/object-define-property'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); -var iterate = require('../internals/iterate'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var InternalStateModule = require('../internals/internal-state'); - -var setInternalState = InternalStateModule.set; -var getInternalAggregateErrorState = InternalStateModule.getterFor('AggregateError'); - -var $AggregateError = function AggregateError(errors, message) { - var that = this; - if (!(that instanceof $AggregateError)) return new $AggregateError(errors, message); - if (setPrototypeOf) { - that = setPrototypeOf(new Error(message), getPrototypeOf(that)); - } - var errorsArray = []; - iterate(errors, errorsArray.push, errorsArray); - if (DESCRIPTORS) setInternalState(that, { errors: errorsArray, type: 'AggregateError' }); - else that.errors = errorsArray; - if (message !== undefined) createNonEnumerableProperty(that, 'message', String(message)); - return that; -}; - -$AggregateError.prototype = create(Error.prototype, { - constructor: createPropertyDescriptor(5, $AggregateError), - message: createPropertyDescriptor(5, ''), - name: createPropertyDescriptor(5, 'AggregateError') -}); - -if (DESCRIPTORS) defineProperty.f($AggregateError.prototype, 'errors', { - get: function () { - return getInternalAggregateErrorState(this).errors; - }, - configurable: true -}); - -$({ global: true }, { - AggregateError: $AggregateError -}); diff --git a/node_modules/core-js-pure/modules/esnext.array.is-template-object.js b/node_modules/core-js-pure/modules/esnext.array.is-template-object.js deleted file mode 100644 index a1d84288..00000000 --- a/node_modules/core-js-pure/modules/esnext.array.is-template-object.js +++ /dev/null @@ -1,28 +0,0 @@ -var $ = require('../internals/export'); -var isArray = require('../internals/is-array'); - -var isFrozen = Object.isFrozen; - -var isFrozenStringArray = function (array, allowUndefined) { - if (!isFrozen || !isArray(array) || !isFrozen(array)) return false; - var index = 0; - var length = array.length; - var element; - while (index < length) { - element = array[index++]; - if (!(typeof element === 'string' || (allowUndefined && typeof element === 'undefined'))) { - return false; - } - } return length !== 0; -}; - -// `Array.isTemplateObject` method -// https://github.com/tc39/proposal-array-is-template-object -$({ target: 'Array', stat: true }, { - isTemplateObject: function isTemplateObject(value) { - if (!isFrozenStringArray(value, true)) return false; - var raw = value.raw; - if (raw.length !== value.length || !isFrozenStringArray(raw, false)) return false; - return true; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.array.last-index.js b/node_modules/core-js-pure/modules/esnext.array.last-index.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/esnext.array.last-index.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/esnext.array.last-item.js b/node_modules/core-js-pure/modules/esnext.array.last-item.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/esnext.array.last-item.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.as-indexed-pairs.js b/node_modules/core-js-pure/modules/esnext.async-iterator.as-indexed-pairs.js deleted file mode 100644 index 446deee0..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.as-indexed-pairs.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg, Promise) { - var state = this; - var iterator = state.iterator; - - return Promise.resolve(anObject(state.next.call(iterator, arg))).then(function (step) { - if (anObject(step).done) { - state.done = true; - return { done: true, value: undefined }; - } - return { done: false, value: [state.index++, step.value] }; - }); -}); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - asIndexedPairs: function asIndexedPairs() { - return new AsyncIteratorProxy({ - iterator: anObject(this), - index: 0 - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.constructor.js b/node_modules/core-js-pure/modules/esnext.async-iterator.constructor.js deleted file mode 100644 index 5a1d4ad2..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.constructor.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anInstance = require('../internals/an-instance'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var has = require('../internals/has'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var AsyncIteratorPrototype = require('../internals/async-iterator-prototype'); -var IS_PURE = require('../internals/is-pure'); - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -var AsyncIteratorConstructor = function AsyncIterator() { - anInstance(this, AsyncIteratorConstructor); -}; - -AsyncIteratorConstructor.prototype = AsyncIteratorPrototype; - -if (!has(AsyncIteratorPrototype, TO_STRING_TAG)) { - createNonEnumerableProperty(AsyncIteratorPrototype, TO_STRING_TAG, 'AsyncIterator'); -} - -if (!has(AsyncIteratorPrototype, 'constructor') || AsyncIteratorPrototype.constructor === Object) { - createNonEnumerableProperty(AsyncIteratorPrototype, 'constructor', AsyncIteratorConstructor); -} - -$({ global: true, forced: IS_PURE }, { - AsyncIterator: AsyncIteratorConstructor -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.drop.js b/node_modules/core-js-pure/modules/esnext.async-iterator.drop.js deleted file mode 100644 index fd2878bc..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.drop.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var toPositiveInteger = require('../internals/to-positive-integer'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg, Promise) { - var state = this; - - return new Promise(function (resolve, reject) { - var loop = function () { - try { - Promise.resolve( - anObject(state.next.call(state.iterator, state.remaining ? undefined : arg)) - ).then(function (step) { - try { - if (anObject(step).done) { - state.done = true; - resolve({ done: true, value: undefined }); - } else if (state.remaining) { - state.remaining--; - loop(); - } else resolve({ done: false, value: step.value }); - } catch (err) { reject(err); } - }, reject); - } catch (error) { reject(error); } - }; - - loop(); - }); -}); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - drop: function drop(limit) { - return new AsyncIteratorProxy({ - iterator: anObject(this), - remaining: toPositiveInteger(limit) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.every.js b/node_modules/core-js-pure/modules/esnext.async-iterator.every.js deleted file mode 100644 index 70c945dc..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.every.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var $every = require('../internals/async-iterator-iteration').every; - -$({ target: 'AsyncIterator', proto: true, real: true }, { - every: function every(fn) { - return $every(this, fn); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.filter.js b/node_modules/core-js-pure/modules/esnext.async-iterator.filter.js deleted file mode 100644 index 2ddbabac..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.filter.js +++ /dev/null @@ -1,42 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg, Promise) { - var state = this; - var filterer = state.filterer; - - return new Promise(function (resolve, reject) { - var loop = function () { - try { - Promise.resolve(anObject(state.next.call(state.iterator, arg))).then(function (step) { - try { - if (anObject(step).done) { - state.done = true; - resolve({ done: true, value: undefined }); - } else { - var value = step.value; - Promise.resolve(filterer(value)).then(function (selected) { - selected ? resolve({ done: false, value: value }) : loop(); - }, reject); - } - } catch (err) { reject(err); } - }, reject); - } catch (error) { reject(error); } - }; - - loop(); - }); -}); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - filter: function filter(filterer) { - return new AsyncIteratorProxy({ - iterator: anObject(this), - filterer: aFunction(filterer) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.find.js b/node_modules/core-js-pure/modules/esnext.async-iterator.find.js deleted file mode 100644 index 0211e51f..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.find.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var $find = require('../internals/async-iterator-iteration').find; - -$({ target: 'AsyncIterator', proto: true, real: true }, { - find: function find(fn) { - return $find(this, fn); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.flat-map.js b/node_modules/core-js-pure/modules/esnext.async-iterator.flat-map.js deleted file mode 100644 index 0613368c..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.flat-map.js +++ /dev/null @@ -1,67 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); -var getAsyncIteratorMethod = require('../internals/get-async-iterator-method'); - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg, Promise) { - var state = this; - var mapper = state.mapper; - var innerIterator, iteratorMethod; - - return new Promise(function (resolve, reject) { - var outerLoop = function () { - try { - Promise.resolve(anObject(state.next.call(state.iterator, arg))).then(function (step) { - try { - if (anObject(step).done) { - state.done = true; - resolve({ done: true, value: undefined }); - } else { - Promise.resolve(mapper(step.value)).then(function (mapped) { - try { - iteratorMethod = getAsyncIteratorMethod(mapped); - if (iteratorMethod !== undefined) { - state.innerIterator = innerIterator = anObject(iteratorMethod.call(mapped)); - state.innerNext = aFunction(innerIterator.next); - return innerLoop(); - } reject(TypeError('.flatMap callback should return an iterable object')); - } catch (error2) { reject(error2); } - }, reject); - } - } catch (error1) { reject(error1); } - }, reject); - } catch (error) { reject(error); } - }; - - var innerLoop = function () { - if (innerIterator = state.innerIterator) { - try { - Promise.resolve(anObject(state.innerNext.call(innerIterator))).then(function (result) { - try { - if (anObject(result).done) { - state.innerIterator = state.innerNext = null; - outerLoop(); - } else resolve({ done: false, value: result.value }); - } catch (error1) { reject(error1); } - }, reject); - } catch (error) { reject(error); } - } else outerLoop(); - }; - - innerLoop(); - }); -}); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - flatMap: function flatMap(mapper) { - return new AsyncIteratorProxy({ - iterator: anObject(this), - mapper: aFunction(mapper), - innerIterator: null, - innerNext: null - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.for-each.js b/node_modules/core-js-pure/modules/esnext.async-iterator.for-each.js deleted file mode 100644 index 8dfbcedc..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.for-each.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var $forEach = require('../internals/async-iterator-iteration').forEach; - -$({ target: 'AsyncIterator', proto: true, real: true }, { - forEach: function forEach(fn) { - return $forEach(this, fn); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.from.js b/node_modules/core-js-pure/modules/esnext.async-iterator.from.js deleted file mode 100644 index e986a73b..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.from.js +++ /dev/null @@ -1,30 +0,0 @@ -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var path = require('../internals/path'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var toObject = require('../internals/to-object'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); -var getAsyncIteratorMethod = require('../internals/get-async-iterator-method'); - -var AsyncIterator = path.AsyncIterator; - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg) { - return anObject(this.next.call(this.iterator, arg)); -}, true); - -$({ target: 'AsyncIterator', stat: true }, { - from: function from(O) { - var object = toObject(O); - var usingIterator = getAsyncIteratorMethod(object); - var iterator; - if (usingIterator != null) { - iterator = aFunction(usingIterator).call(object); - if (iterator instanceof AsyncIterator) return iterator; - } else { - iterator = object; - } return new AsyncIteratorProxy({ - iterator: iterator - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.map.js b/node_modules/core-js-pure/modules/esnext.async-iterator.map.js deleted file mode 100644 index a5c2a8ac..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.map.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg, Promise) { - var state = this; - var mapper = state.mapper; - - return Promise.resolve(anObject(state.next.call(state.iterator, arg))).then(function (step) { - if (anObject(step).done) { - state.done = true; - return { done: true, value: undefined }; - } - return Promise.resolve(mapper(step.value)).then(function (value) { - return { done: false, value: value }; - }); - }); -}); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - map: function map(mapper) { - return new AsyncIteratorProxy({ - iterator: anObject(this), - mapper: aFunction(mapper) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.reduce.js b/node_modules/core-js-pure/modules/esnext.async-iterator.reduce.js deleted file mode 100644 index e5f7f9a3..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.reduce.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var getBuiltIn = require('../internals/get-built-in'); - -var Promise = getBuiltIn('Promise'); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - reduce: function reduce(reducer /* , initialValue */) { - var iterator = anObject(this); - var next = aFunction(iterator.next); - var noInitial = arguments.length < 2; - var accumulator = noInitial ? undefined : arguments[1]; - aFunction(reducer); - - return new Promise(function (resolve, reject) { - var loop = function () { - try { - Promise.resolve(anObject(next.call(iterator))).then(function (step) { - try { - if (anObject(step).done) { - noInitial ? reject(TypeError('Reduce of empty iterator with no initial value')) : resolve(accumulator); - } else { - var value = step.value; - if (noInitial) { - noInitial = false; - accumulator = value; - loop(); - } else { - Promise.resolve(reducer(accumulator, value)).then(function (result) { - accumulator = result; - loop(); - }, reject); - } - } - } catch (err) { reject(err); } - }, reject); - } catch (error) { reject(error); } - }; - - loop(); - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.some.js b/node_modules/core-js-pure/modules/esnext.async-iterator.some.js deleted file mode 100644 index 13fc1ee5..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.some.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var $some = require('../internals/async-iterator-iteration').some; - -$({ target: 'AsyncIterator', proto: true, real: true }, { - some: function some(fn) { - return $some(this, fn); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.take.js b/node_modules/core-js-pure/modules/esnext.async-iterator.take.js deleted file mode 100644 index fc59d883..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.take.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var toPositiveInteger = require('../internals/to-positive-integer'); -var createAsyncIteratorProxy = require('../internals/async-iterator-create-proxy'); - -var AsyncIteratorProxy = createAsyncIteratorProxy(function (arg) { - if (!this.remaining--) { - this.done = true; - return { done: true, value: undefined }; - } return this.next.call(this.iterator, arg); -}); - -$({ target: 'AsyncIterator', proto: true, real: true }, { - take: function take(limit) { - return new AsyncIteratorProxy({ - iterator: anObject(this), - remaining: toPositiveInteger(limit) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.async-iterator.to-array.js b/node_modules/core-js-pure/modules/esnext.async-iterator.to-array.js deleted file mode 100644 index 04e3e7f8..00000000 --- a/node_modules/core-js-pure/modules/esnext.async-iterator.to-array.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var $toArray = require('../internals/async-iterator-iteration').toArray; - -$({ target: 'AsyncIterator', proto: true, real: true }, { - toArray: function toArray() { - return $toArray(this); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.composite-key.js b/node_modules/core-js-pure/modules/esnext.composite-key.js deleted file mode 100644 index 43bedaea..00000000 --- a/node_modules/core-js-pure/modules/esnext.composite-key.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var getCompositeKeyNode = require('../internals/composite-key'); -var getBuiltIn = require('../internals/get-built-in'); -var create = require('../internals/object-create'); - -var initializer = function () { - var freeze = getBuiltIn('Object', 'freeze'); - return freeze ? freeze(create(null)) : create(null); -}; - -// https://github.com/tc39/proposal-richer-keys/tree/master/compositeKey -$({ global: true }, { - compositeKey: function compositeKey() { - return getCompositeKeyNode.apply(Object, arguments).get('object', initializer); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.composite-symbol.js b/node_modules/core-js-pure/modules/esnext.composite-symbol.js deleted file mode 100644 index 06d1b229..00000000 --- a/node_modules/core-js-pure/modules/esnext.composite-symbol.js +++ /dev/null @@ -1,11 +0,0 @@ -var $ = require('../internals/export'); -var getCompositeKeyNode = require('../internals/composite-key'); -var getBuiltIn = require('../internals/get-built-in'); - -// https://github.com/tc39/proposal-richer-keys/tree/master/compositeKey -$({ global: true }, { - compositeSymbol: function compositeSymbol() { - if (arguments.length === 1 && typeof arguments[0] === 'string') return getBuiltIn('Symbol')['for'](arguments[0]); - return getCompositeKeyNode.apply(null, arguments).get('symbol', getBuiltIn('Symbol')); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.global-this.js b/node_modules/core-js-pure/modules/esnext.global-this.js deleted file mode 100644 index c62786d4..00000000 --- a/node_modules/core-js-pure/modules/esnext.global-this.js +++ /dev/null @@ -1,2 +0,0 @@ -// TODO: Remove from `core-js@4` -require('./es.global-this'); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.as-indexed-pairs.js b/node_modules/core-js-pure/modules/esnext.iterator.as-indexed-pairs.js deleted file mode 100644 index fb3bf857..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.as-indexed-pairs.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); - -var IteratorProxy = createIteratorProxy(function (arg) { - var result = anObject(this.next.call(this.iterator, arg)); - var done = this.done = !!result.done; - if (!done) return [this.index++, result.value]; -}); - -$({ target: 'Iterator', proto: true, real: true }, { - asIndexedPairs: function asIndexedPairs() { - return new IteratorProxy({ - iterator: anObject(this), - index: 0 - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.constructor.js b/node_modules/core-js-pure/modules/esnext.iterator.constructor.js deleted file mode 100644 index a481dff4..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.constructor.js +++ /dev/null @@ -1,48 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var global = require('../internals/global'); -var anInstance = require('../internals/an-instance'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var fails = require('../internals/fails'); -var has = require('../internals/has'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var IteratorPrototype = require('../internals/iterators-core').IteratorPrototype; -var IS_PURE = require('../internals/is-pure'); - -var ITERATOR = wellKnownSymbol('iterator'); -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -var NativeIterator = global.Iterator; - -// FF56- have non-standard global helper `Iterator` -var FORCED = IS_PURE - || typeof NativeIterator != 'function' - || NativeIterator.prototype !== IteratorPrototype - // FF44- non-standard `Iterator` passes previous tests - || !fails(function () { NativeIterator({}); }); - -var IteratorConstructor = function Iterator() { - anInstance(this, IteratorConstructor); -}; - -if (IS_PURE) { - IteratorPrototype = {}; - createNonEnumerableProperty(IteratorPrototype, ITERATOR, function () { - return this; - }); -} - -if (!has(IteratorPrototype, TO_STRING_TAG)) { - createNonEnumerableProperty(IteratorPrototype, TO_STRING_TAG, 'Iterator'); -} - -if (FORCED || !has(IteratorPrototype, 'constructor') || IteratorPrototype.constructor === Object) { - createNonEnumerableProperty(IteratorPrototype, 'constructor', IteratorConstructor); -} - -IteratorConstructor.prototype = IteratorPrototype; - -$({ global: true, forced: FORCED }, { - Iterator: IteratorConstructor -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.drop.js b/node_modules/core-js-pure/modules/esnext.iterator.drop.js deleted file mode 100644 index 62cc89d0..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.drop.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var toPositiveInteger = require('../internals/to-positive-integer'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); - -var IteratorProxy = createIteratorProxy(function (arg) { - var iterator = this.iterator; - var next = this.next; - var result, done; - while (this.remaining) { - this.remaining--; - result = anObject(next.call(iterator)); - done = this.done = !!result.done; - if (done) return; - } - result = anObject(next.call(iterator, arg)); - done = this.done = !!result.done; - if (!done) return result.value; -}); - -$({ target: 'Iterator', proto: true, real: true }, { - drop: function drop(limit) { - return new IteratorProxy({ - iterator: anObject(this), - remaining: toPositiveInteger(limit) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.every.js b/node_modules/core-js-pure/modules/esnext.iterator.every.js deleted file mode 100644 index faa04fe9..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.every.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); - -$({ target: 'Iterator', proto: true, real: true }, { - every: function every(fn) { - anObject(this); - aFunction(fn); - return !iterate(this, function (value) { - if (!fn(value)) return iterate.stop(); - }, undefined, false, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.filter.js b/node_modules/core-js-pure/modules/esnext.iterator.filter.js deleted file mode 100644 index db45c9be..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.filter.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); -var callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing'); - -var IteratorProxy = createIteratorProxy(function (arg) { - var iterator = this.iterator; - var filterer = this.filterer; - var next = this.next; - var result, done, value; - while (true) { - result = anObject(next.call(iterator, arg)); - done = this.done = !!result.done; - if (done) return; - value = result.value; - if (callWithSafeIterationClosing(iterator, filterer, value)) return value; - } -}); - -$({ target: 'Iterator', proto: true, real: true }, { - filter: function filter(filterer) { - return new IteratorProxy({ - iterator: anObject(this), - filterer: aFunction(filterer) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.find.js b/node_modules/core-js-pure/modules/esnext.iterator.find.js deleted file mode 100644 index 42db9eac..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.find.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); - -$({ target: 'Iterator', proto: true, real: true }, { - find: function find(fn) { - anObject(this); - aFunction(fn); - return iterate(this, function (value) { - if (fn(value)) return iterate.stop(value); - }, undefined, false, true).result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.flat-map.js b/node_modules/core-js-pure/modules/esnext.iterator.flat-map.js deleted file mode 100644 index 0841996b..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.flat-map.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var getIteratorMethod = require('../internals/get-iterator-method'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); -var callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing'); - -var IteratorProxy = createIteratorProxy(function (arg) { - var iterator = this.iterator; - var result, mapped, iteratorMethod, innerIterator; - - while (true) { - if (innerIterator = this.innerIterator) { - result = anObject(this.innerNext.call(innerIterator)); - if (!result.done) return result.value; - this.innerIterator = this.innerNext = null; - } - - result = anObject(this.next.call(iterator, arg)); - - if (this.done = !!result.done) return; - - mapped = callWithSafeIterationClosing(iterator, this.mapper, result.value); - iteratorMethod = getIteratorMethod(mapped); - - if (iteratorMethod === undefined) { - throw TypeError('.flatMap callback should return an iterable object'); - } - - this.innerIterator = innerIterator = anObject(iteratorMethod.call(mapped)); - this.innerNext = aFunction(innerIterator.next); - } -}); - -$({ target: 'Iterator', proto: true, real: true }, { - flatMap: function flatMap(mapper) { - return new IteratorProxy({ - iterator: anObject(this), - mapper: aFunction(mapper), - innerIterator: null, - innerNext: null - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.for-each.js b/node_modules/core-js-pure/modules/esnext.iterator.for-each.js deleted file mode 100644 index c2427703..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.for-each.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var anObject = require('../internals/an-object'); - -$({ target: 'Iterator', proto: true, real: true }, { - forEach: function forEach(fn) { - iterate(anObject(this), fn, undefined, false, true); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.from.js b/node_modules/core-js-pure/modules/esnext.iterator.from.js deleted file mode 100644 index 10fa7f29..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.from.js +++ /dev/null @@ -1,32 +0,0 @@ -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var path = require('../internals/path'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var toObject = require('../internals/to-object'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); -var getIteratorMethod = require('../internals/get-iterator-method'); - -var Iterator = path.Iterator; - -var IteratorProxy = createIteratorProxy(function (arg) { - var result = anObject(this.next.call(this.iterator, arg)); - var done = this.done = !!result.done; - if (!done) return result.value; -}, true); - -$({ target: 'Iterator', stat: true }, { - from: function from(O) { - var object = toObject(O); - var usingIterator = getIteratorMethod(object); - var iterator; - if (usingIterator != null) { - iterator = aFunction(usingIterator).call(object); - if (iterator instanceof Iterator) return iterator; - } else { - iterator = object; - } return new IteratorProxy({ - iterator: iterator - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.map.js b/node_modules/core-js-pure/modules/esnext.iterator.map.js deleted file mode 100644 index 054a7d1c..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.map.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); -var callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing'); - -var IteratorProxy = createIteratorProxy(function (arg) { - var iterator = this.iterator; - var result = anObject(this.next.call(iterator, arg)); - var done = this.done = !!result.done; - if (!done) return callWithSafeIterationClosing(iterator, this.mapper, result.value); -}); - -$({ target: 'Iterator', proto: true, real: true }, { - map: function map(mapper) { - return new IteratorProxy({ - iterator: anObject(this), - mapper: aFunction(mapper) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.reduce.js b/node_modules/core-js-pure/modules/esnext.iterator.reduce.js deleted file mode 100644 index 029269d5..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.reduce.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); - -$({ target: 'Iterator', proto: true, real: true }, { - reduce: function reduce(reducer /* , initialValue */) { - anObject(this); - aFunction(reducer); - var noInitial = arguments.length < 2; - var accumulator = noInitial ? undefined : arguments[1]; - iterate(this, function (value) { - if (noInitial) { - noInitial = false; - accumulator = value; - } else { - accumulator = reducer(accumulator, value); - } - }, undefined, false, true); - if (noInitial) throw TypeError('Reduce of empty iterator with no initial value'); - return accumulator; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.some.js b/node_modules/core-js-pure/modules/esnext.iterator.some.js deleted file mode 100644 index e32ce13d..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.some.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); - -$({ target: 'Iterator', proto: true, real: true }, { - some: function some(fn) { - anObject(this); - aFunction(fn); - return iterate(this, function (value) { - if (fn(value)) return iterate.stop(); - }, undefined, false, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.take.js b/node_modules/core-js-pure/modules/esnext.iterator.take.js deleted file mode 100644 index 5ed1cd36..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.take.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var toPositiveInteger = require('../internals/to-positive-integer'); -var createIteratorProxy = require('../internals/iterator-create-proxy'); - -var IteratorProxy = createIteratorProxy(function (arg) { - if (!this.remaining--) { - this.done = true; - return; - } - var result = anObject(this.next.call(this.iterator, arg)); - var done = this.done = !!result.done; - if (!done) return result.value; -}); - -$({ target: 'Iterator', proto: true, real: true }, { - take: function take(limit) { - return new IteratorProxy({ - iterator: anObject(this), - remaining: toPositiveInteger(limit) - }); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.iterator.to-array.js b/node_modules/core-js-pure/modules/esnext.iterator.to-array.js deleted file mode 100644 index 90d32b8f..00000000 --- a/node_modules/core-js-pure/modules/esnext.iterator.to-array.js +++ /dev/null @@ -1,15 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-iterator-helpers -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var anObject = require('../internals/an-object'); - -var push = [].push; - -$({ target: 'Iterator', proto: true, real: true }, { - toArray: function toArray() { - var result = []; - iterate(anObject(this), push, result, false, true); - return result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.delete-all.js b/node_modules/core-js-pure/modules/esnext.map.delete-all.js deleted file mode 100644 index 4554b47d..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.delete-all.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var collectionDeleteAll = require('../internals/collection-delete-all'); - -// `Map.prototype.deleteAll` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - deleteAll: function deleteAll(/* ...elements */) { - return collectionDeleteAll.apply(this, arguments); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.every.js b/node_modules/core-js-pure/modules/esnext.map.every.js deleted file mode 100644 index 6272c71f..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.every.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.every` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - every: function every(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return !iterate(iterator, function (key, value) { - if (!boundFunction(value, key, map)) return iterate.stop(); - }, undefined, true, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.filter.js b/node_modules/core-js-pure/modules/esnext.map.filter.js deleted file mode 100644 index a140cc00..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.filter.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var bind = require('../internals/function-bind-context'); -var speciesConstructor = require('../internals/species-constructor'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.filter` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - filter: function filter(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var newMap = new (speciesConstructor(map, getBuiltIn('Map')))(); - var setter = aFunction(newMap.set); - iterate(iterator, function (key, value) { - if (boundFunction(value, key, map)) setter.call(newMap, key, value); - }, undefined, true, true); - return newMap; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.find-key.js b/node_modules/core-js-pure/modules/esnext.map.find-key.js deleted file mode 100644 index 67489ec6..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.find-key.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.findKey` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - findKey: function findKey(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return iterate(iterator, function (key, value) { - if (boundFunction(value, key, map)) return iterate.stop(key); - }, undefined, true, true).result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.find.js b/node_modules/core-js-pure/modules/esnext.map.find.js deleted file mode 100644 index c0a9fed9..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.find.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.find` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - find: function find(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return iterate(iterator, function (key, value) { - if (boundFunction(value, key, map)) return iterate.stop(value); - }, undefined, true, true).result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.from.js b/node_modules/core-js-pure/modules/esnext.map.from.js deleted file mode 100644 index 9aa6aac7..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.from.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var from = require('../internals/collection-from'); - -// `Map.from` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from -$({ target: 'Map', stat: true }, { - from: from -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.group-by.js b/node_modules/core-js-pure/modules/esnext.map.group-by.js deleted file mode 100644 index a34c6a01..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.group-by.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var aFunction = require('../internals/a-function'); - -// `Map.groupBy` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', stat: true }, { - groupBy: function groupBy(iterable, keyDerivative) { - var newMap = new this(); - aFunction(keyDerivative); - var has = aFunction(newMap.has); - var get = aFunction(newMap.get); - var set = aFunction(newMap.set); - iterate(iterable, function (element) { - var derivedKey = keyDerivative(element); - if (!has.call(newMap, derivedKey)) set.call(newMap, derivedKey, [element]); - else get.call(newMap, derivedKey).push(element); - }); - return newMap; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.includes.js b/node_modules/core-js-pure/modules/esnext.map.includes.js deleted file mode 100644 index 5f9aff00..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.includes.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var getMapIterator = require('../internals/get-map-iterator'); -var sameValueZero = require('../internals/same-value-zero'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.includes` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - includes: function includes(searchElement) { - return iterate(getMapIterator(anObject(this)), function (key, value) { - if (sameValueZero(value, searchElement)) return iterate.stop(); - }, undefined, true, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.key-by.js b/node_modules/core-js-pure/modules/esnext.map.key-by.js deleted file mode 100644 index 0204bf2c..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.key-by.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var iterate = require('../internals/iterate'); -var aFunction = require('../internals/a-function'); - -// `Map.keyBy` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', stat: true }, { - keyBy: function keyBy(iterable, keyDerivative) { - var newMap = new this(); - aFunction(keyDerivative); - var setter = aFunction(newMap.set); - iterate(iterable, function (element) { - setter.call(newMap, keyDerivative(element), element); - }); - return newMap; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.key-of.js b/node_modules/core-js-pure/modules/esnext.map.key-of.js deleted file mode 100644 index 1d100dee..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.key-of.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.includes` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - keyOf: function keyOf(searchElement) { - return iterate(getMapIterator(anObject(this)), function (key, value) { - if (value === searchElement) return iterate.stop(key); - }, undefined, true, true).result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.map-keys.js b/node_modules/core-js-pure/modules/esnext.map.map-keys.js deleted file mode 100644 index 0d9fdcb4..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.map-keys.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var bind = require('../internals/function-bind-context'); -var speciesConstructor = require('../internals/species-constructor'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.mapKeys` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - mapKeys: function mapKeys(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var newMap = new (speciesConstructor(map, getBuiltIn('Map')))(); - var setter = aFunction(newMap.set); - iterate(iterator, function (key, value) { - setter.call(newMap, boundFunction(value, key, map), value); - }, undefined, true, true); - return newMap; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.map-values.js b/node_modules/core-js-pure/modules/esnext.map.map-values.js deleted file mode 100644 index 8bd5076c..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.map-values.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var bind = require('../internals/function-bind-context'); -var speciesConstructor = require('../internals/species-constructor'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.mapValues` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - mapValues: function mapValues(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var newMap = new (speciesConstructor(map, getBuiltIn('Map')))(); - var setter = aFunction(newMap.set); - iterate(iterator, function (key, value) { - setter.call(newMap, key, boundFunction(value, key, map)); - }, undefined, true, true); - return newMap; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.merge.js b/node_modules/core-js-pure/modules/esnext.map.merge.js deleted file mode 100644 index fd2c79cc..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.merge.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.merge` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - // eslint-disable-next-line no-unused-vars - merge: function merge(iterable /* ...iterbles */) { - var map = anObject(this); - var setter = aFunction(map.set); - var i = 0; - while (i < arguments.length) { - iterate(arguments[i++], setter, map, true); - } - return map; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.of.js b/node_modules/core-js-pure/modules/esnext.map.of.js deleted file mode 100644 index 4f84d89d..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.of.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var of = require('../internals/collection-of'); - -// `Map.of` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of -$({ target: 'Map', stat: true }, { - of: of -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.reduce.js b/node_modules/core-js-pure/modules/esnext.map.reduce.js deleted file mode 100644 index 43153f8e..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.reduce.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Map.prototype.reduce` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - reduce: function reduce(callbackfn /* , initialValue */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var noInitial = arguments.length < 2; - var accumulator = noInitial ? undefined : arguments[1]; - aFunction(callbackfn); - iterate(iterator, function (key, value) { - if (noInitial) { - noInitial = false; - accumulator = value; - } else { - accumulator = callbackfn(accumulator, value, key, map); - } - }, undefined, true, true); - if (noInitial) throw TypeError('Reduce of empty map with no initial value'); - return accumulator; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.some.js b/node_modules/core-js-pure/modules/esnext.map.some.js deleted file mode 100644 index 56cc03a7..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.some.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getMapIterator = require('../internals/get-map-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.some` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - some: function some(callbackfn /* , thisArg */) { - var map = anObject(this); - var iterator = getMapIterator(map); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return iterate(iterator, function (key, value) { - if (boundFunction(value, key, map)) return iterate.stop(); - }, undefined, true, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.update-or-insert.js b/node_modules/core-js-pure/modules/esnext.map.update-or-insert.js deleted file mode 100644 index f429b213..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.update-or-insert.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -// TODO: remove from `core-js@4` -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var $upsert = require('../internals/map-upsert'); - -// `Map.prototype.updateOrInsert` method (replaced by `Map.prototype.upsert`) -// https://github.com/thumbsupep/proposal-upsert -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - updateOrInsert: $upsert -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.update.js b/node_modules/core-js-pure/modules/esnext.map.update.js deleted file mode 100644 index 97358e81..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.update.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); - -// `Set.prototype.update` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - update: function update(key, callback /* , thunk */) { - var map = anObject(this); - var length = arguments.length; - aFunction(callback); - var isPresentInMap = map.has(key); - if (!isPresentInMap && length < 3) { - throw TypeError('Updating absent value'); - } - var value = isPresentInMap ? map.get(key) : aFunction(length > 2 ? arguments[2] : undefined)(key, map); - map.set(key, callback(value, key, map)); - return map; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.map.upsert.js b/node_modules/core-js-pure/modules/esnext.map.upsert.js deleted file mode 100644 index a30e8351..00000000 --- a/node_modules/core-js-pure/modules/esnext.map.upsert.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var $upsert = require('../internals/map-upsert'); - -// `Map.prototype.upsert` method -// https://github.com/thumbsupep/proposal-upsert -$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, { - upsert: $upsert -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.clamp.js b/node_modules/core-js-pure/modules/esnext.math.clamp.js deleted file mode 100644 index c69b1227..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.clamp.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); - -var min = Math.min; -var max = Math.max; - -// `Math.clamp` method -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - clamp: function clamp(x, lower, upper) { - return min(upper, max(lower, x)); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.deg-per-rad.js b/node_modules/core-js-pure/modules/esnext.math.deg-per-rad.js deleted file mode 100644 index b1c09b8e..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.deg-per-rad.js +++ /dev/null @@ -1,7 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.DEG_PER_RAD` constant -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - DEG_PER_RAD: Math.PI / 180 -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.degrees.js b/node_modules/core-js-pure/modules/esnext.math.degrees.js deleted file mode 100644 index e91de91c..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.degrees.js +++ /dev/null @@ -1,11 +0,0 @@ -var $ = require('../internals/export'); - -var RAD_PER_DEG = 180 / Math.PI; - -// `Math.degrees` method -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - degrees: function degrees(radians) { - return radians * RAD_PER_DEG; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.fscale.js b/node_modules/core-js-pure/modules/esnext.math.fscale.js deleted file mode 100644 index 3db68ef1..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.fscale.js +++ /dev/null @@ -1,12 +0,0 @@ -var $ = require('../internals/export'); - -var scale = require('../internals/math-scale'); -var fround = require('../internals/math-fround'); - -// `Math.fscale` method -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - fscale: function fscale(x, inLow, inHigh, outLow, outHigh) { - return fround(scale(x, inLow, inHigh, outLow, outHigh)); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.iaddh.js b/node_modules/core-js-pure/modules/esnext.math.iaddh.js deleted file mode 100644 index 23230317..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.iaddh.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.iaddh` method -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -// TODO: Remove from `core-js@4` -$({ target: 'Math', stat: true }, { - iaddh: function iaddh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.imulh.js b/node_modules/core-js-pure/modules/esnext.math.imulh.js deleted file mode 100644 index f7a558e3..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.imulh.js +++ /dev/null @@ -1,18 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.imulh` method -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -// TODO: Remove from `core-js@4` -$({ target: 'Math', stat: true }, { - imulh: function imulh(u, v) { - var UINT16 = 0xFFFF; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >> 16; - var v1 = $v >> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.isubh.js b/node_modules/core-js-pure/modules/esnext.math.isubh.js deleted file mode 100644 index cbe0b4e2..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.isubh.js +++ /dev/null @@ -1,13 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.isubh` method -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -// TODO: Remove from `core-js@4` -$({ target: 'Math', stat: true }, { - isubh: function isubh(x0, x1, y0, y1) { - var $x0 = x0 >>> 0; - var $x1 = x1 >>> 0; - var $y0 = y0 >>> 0; - return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.rad-per-deg.js b/node_modules/core-js-pure/modules/esnext.math.rad-per-deg.js deleted file mode 100644 index 6515cbe5..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.rad-per-deg.js +++ /dev/null @@ -1,7 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.RAD_PER_DEG` constant -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - RAD_PER_DEG: 180 / Math.PI -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.radians.js b/node_modules/core-js-pure/modules/esnext.math.radians.js deleted file mode 100644 index 0b25512e..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.radians.js +++ /dev/null @@ -1,11 +0,0 @@ -var $ = require('../internals/export'); - -var DEG_PER_RAD = Math.PI / 180; - -// `Math.radians` method -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - radians: function radians(degrees) { - return degrees * DEG_PER_RAD; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.scale.js b/node_modules/core-js-pure/modules/esnext.math.scale.js deleted file mode 100644 index 400a9ed5..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.scale.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var scale = require('../internals/math-scale'); - -// `Math.scale` method -// https://rwaldron.github.io/proposal-math-extensions/ -$({ target: 'Math', stat: true }, { - scale: scale -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.seeded-prng.js b/node_modules/core-js-pure/modules/esnext.math.seeded-prng.js deleted file mode 100644 index 6e396888..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.seeded-prng.js +++ /dev/null @@ -1,33 +0,0 @@ -var $ = require('../internals/export'); -var anObject = require('../internals/an-object'); -var numberIsFinite = require('../internals/number-is-finite'); -var createIteratorConstructor = require('../internals/create-iterator-constructor'); -var InternalStateModule = require('../internals/internal-state'); - -var SEEDED_RANDOM = 'Seeded Random'; -var SEEDED_RANDOM_GENERATOR = SEEDED_RANDOM + ' Generator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(SEEDED_RANDOM_GENERATOR); -var SEED_TYPE_ERROR = 'Math.seededPRNG() argument should have a "seed" field with a finite value.'; - -var $SeededRandomGenerator = createIteratorConstructor(function SeededRandomGenerator(seed) { - setInternalState(this, { - type: SEEDED_RANDOM_GENERATOR, - seed: seed % 2147483647 - }); -}, SEEDED_RANDOM, function next() { - var state = getInternalState(this); - var seed = state.seed = (state.seed * 1103515245 + 12345) % 2147483647; - return { value: (seed & 1073741823) / 1073741823, done: false }; -}); - -// `Math.seededPRNG` method -// https://github.com/tc39/proposal-seeded-random -// based on https://github.com/tc39/proposal-seeded-random/blob/78b8258835b57fc2100d076151ab506bc3202ae6/demo.html -$({ target: 'Math', stat: true, forced: true }, { - seededPRNG: function seededPRNG(it) { - var seed = anObject(it).seed; - if (!numberIsFinite(seed)) throw TypeError(SEED_TYPE_ERROR); - return new $SeededRandomGenerator(seed); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.signbit.js b/node_modules/core-js-pure/modules/esnext.math.signbit.js deleted file mode 100644 index 3ece8eae..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.signbit.js +++ /dev/null @@ -1,9 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.signbit` method -// https://github.com/tc39/proposal-Math.signbit -$({ target: 'Math', stat: true }, { - signbit: function signbit(x) { - return (x = +x) == x && x == 0 ? 1 / x == -Infinity : x < 0; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.math.umulh.js b/node_modules/core-js-pure/modules/esnext.math.umulh.js deleted file mode 100644 index 5f0e70f6..00000000 --- a/node_modules/core-js-pure/modules/esnext.math.umulh.js +++ /dev/null @@ -1,18 +0,0 @@ -var $ = require('../internals/export'); - -// `Math.umulh` method -// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 -// TODO: Remove from `core-js@4` -$({ target: 'Math', stat: true }, { - umulh: function umulh(u, v) { - var UINT16 = 0xFFFF; - var $u = +u; - var $v = +v; - var u0 = $u & UINT16; - var v0 = $v & UINT16; - var u1 = $u >>> 16; - var v1 = $v >>> 16; - var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); - return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.number.from-string.js b/node_modules/core-js-pure/modules/esnext.number.from-string.js deleted file mode 100644 index 85f14984..00000000 --- a/node_modules/core-js-pure/modules/esnext.number.from-string.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var toInteger = require('../internals/to-integer'); -var parseInt = require('../internals/number-parse-int'); - -var INVALID_NUMBER_REPRESENTATION = 'Invalid number representation'; -var INVALID_RADIX = 'Invalid radix'; -var valid = /^[\da-z]+$/; - -// `Number.fromString` method -// https://github.com/tc39/proposal-number-fromstring -$({ target: 'Number', stat: true }, { - fromString: function fromString(string, radix) { - var sign = 1; - var R, mathNum; - if (typeof string != 'string') throw TypeError(INVALID_NUMBER_REPRESENTATION); - if (!string.length) throw SyntaxError(INVALID_NUMBER_REPRESENTATION); - if (string.charAt(0) == '-') { - sign = -1; - string = string.slice(1); - if (!string.length) throw SyntaxError(INVALID_NUMBER_REPRESENTATION); - } - R = radix === undefined ? 10 : toInteger(radix); - if (R < 2 || R > 36) throw RangeError(INVALID_RADIX); - if (!valid.test(string) || (mathNum = parseInt(string, R)).toString(R) !== string) { - throw SyntaxError(INVALID_NUMBER_REPRESENTATION); - } - return sign * mathNum; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.object.iterate-entries.js b/node_modules/core-js-pure/modules/esnext.object.iterate-entries.js deleted file mode 100644 index b882ca30..00000000 --- a/node_modules/core-js-pure/modules/esnext.object.iterate-entries.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var ObjectIterator = require('../internals/object-iterator'); - -// `Object.iterateEntries` method -// https://github.com/tc39/proposal-object-iteration -$({ target: 'Object', stat: true }, { - iterateEntries: function iterateEntries(object) { - return new ObjectIterator(object, 'entries'); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.object.iterate-keys.js b/node_modules/core-js-pure/modules/esnext.object.iterate-keys.js deleted file mode 100644 index e74dc372..00000000 --- a/node_modules/core-js-pure/modules/esnext.object.iterate-keys.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var ObjectIterator = require('../internals/object-iterator'); - -// `Object.iterateKeys` method -// https://github.com/tc39/proposal-object-iteration -$({ target: 'Object', stat: true }, { - iterateKeys: function iterateKeys(object) { - return new ObjectIterator(object, 'keys'); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.object.iterate-values.js b/node_modules/core-js-pure/modules/esnext.object.iterate-values.js deleted file mode 100644 index 1d18fe00..00000000 --- a/node_modules/core-js-pure/modules/esnext.object.iterate-values.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var ObjectIterator = require('../internals/object-iterator'); - -// `Object.iterateValues` method -// https://github.com/tc39/proposal-object-iteration -$({ target: 'Object', stat: true }, { - iterateValues: function iterateValues(object) { - return new ObjectIterator(object, 'values'); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.observable.js b/node_modules/core-js-pure/modules/esnext.observable.js deleted file mode 100644 index 4eaab232..00000000 --- a/node_modules/core-js-pure/modules/esnext.observable.js +++ /dev/null @@ -1,207 +0,0 @@ -'use strict'; -// https://github.com/tc39/proposal-observable -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var setSpecies = require('../internals/set-species'); -var aFunction = require('../internals/a-function'); -var anObject = require('../internals/an-object'); -var isObject = require('../internals/is-object'); -var anInstance = require('../internals/an-instance'); -var defineProperty = require('../internals/object-define-property').f; -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var redefineAll = require('../internals/redefine-all'); -var getIterator = require('../internals/get-iterator'); -var iterate = require('../internals/iterate'); -var hostReportErrors = require('../internals/host-report-errors'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var InternalStateModule = require('../internals/internal-state'); - -var OBSERVABLE = wellKnownSymbol('observable'); -var getInternalState = InternalStateModule.get; -var setInternalState = InternalStateModule.set; - -var getMethod = function (fn) { - return fn == null ? undefined : aFunction(fn); -}; - -var cleanupSubscription = function (subscriptionState) { - var cleanup = subscriptionState.cleanup; - if (cleanup) { - subscriptionState.cleanup = undefined; - try { - cleanup(); - } catch (error) { - hostReportErrors(error); - } - } -}; - -var subscriptionClosed = function (subscriptionState) { - return subscriptionState.observer === undefined; -}; - -var close = function (subscription, subscriptionState) { - if (!DESCRIPTORS) { - subscription.closed = true; - var subscriptionObserver = subscriptionState.subscriptionObserver; - if (subscriptionObserver) subscriptionObserver.closed = true; - } subscriptionState.observer = undefined; -}; - -var Subscription = function (observer, subscriber) { - var subscriptionState = setInternalState(this, { - cleanup: undefined, - observer: anObject(observer), - subscriptionObserver: undefined - }); - var start; - if (!DESCRIPTORS) this.closed = false; - try { - if (start = getMethod(observer.start)) start.call(observer, this); - } catch (error) { - hostReportErrors(error); - } - if (subscriptionClosed(subscriptionState)) return; - var subscriptionObserver = subscriptionState.subscriptionObserver = new SubscriptionObserver(this); - try { - var cleanup = subscriber(subscriptionObserver); - var subscription = cleanup; - if (cleanup != null) subscriptionState.cleanup = typeof cleanup.unsubscribe === 'function' - ? function () { subscription.unsubscribe(); } - : aFunction(cleanup); - } catch (error) { - subscriptionObserver.error(error); - return; - } if (subscriptionClosed(subscriptionState)) cleanupSubscription(subscriptionState); -}; - -Subscription.prototype = redefineAll({}, { - unsubscribe: function unsubscribe() { - var subscriptionState = getInternalState(this); - if (!subscriptionClosed(subscriptionState)) { - close(this, subscriptionState); - cleanupSubscription(subscriptionState); - } - } -}); - -if (DESCRIPTORS) defineProperty(Subscription.prototype, 'closed', { - configurable: true, - get: function () { - return subscriptionClosed(getInternalState(this)); - } -}); - -var SubscriptionObserver = function (subscription) { - setInternalState(this, { subscription: subscription }); - if (!DESCRIPTORS) this.closed = false; -}; - -SubscriptionObserver.prototype = redefineAll({}, { - next: function next(value) { - var subscriptionState = getInternalState(getInternalState(this).subscription); - if (!subscriptionClosed(subscriptionState)) { - var observer = subscriptionState.observer; - try { - var nextMethod = getMethod(observer.next); - if (nextMethod) nextMethod.call(observer, value); - } catch (error) { - hostReportErrors(error); - } - } - }, - error: function error(value) { - var subscription = getInternalState(this).subscription; - var subscriptionState = getInternalState(subscription); - if (!subscriptionClosed(subscriptionState)) { - var observer = subscriptionState.observer; - close(subscription, subscriptionState); - try { - var errorMethod = getMethod(observer.error); - if (errorMethod) errorMethod.call(observer, value); - else hostReportErrors(value); - } catch (err) { - hostReportErrors(err); - } cleanupSubscription(subscriptionState); - } - }, - complete: function complete() { - var subscription = getInternalState(this).subscription; - var subscriptionState = getInternalState(subscription); - if (!subscriptionClosed(subscriptionState)) { - var observer = subscriptionState.observer; - close(subscription, subscriptionState); - try { - var completeMethod = getMethod(observer.complete); - if (completeMethod) completeMethod.call(observer); - } catch (error) { - hostReportErrors(error); - } cleanupSubscription(subscriptionState); - } - } -}); - -if (DESCRIPTORS) defineProperty(SubscriptionObserver.prototype, 'closed', { - configurable: true, - get: function () { - return subscriptionClosed(getInternalState(getInternalState(this).subscription)); - } -}); - -var $Observable = function Observable(subscriber) { - anInstance(this, $Observable, 'Observable'); - setInternalState(this, { subscriber: aFunction(subscriber) }); -}; - -redefineAll($Observable.prototype, { - subscribe: function subscribe(observer) { - var length = arguments.length; - return new Subscription(typeof observer === 'function' ? { - next: observer, - error: length > 1 ? arguments[1] : undefined, - complete: length > 2 ? arguments[2] : undefined - } : isObject(observer) ? observer : {}, getInternalState(this).subscriber); - } -}); - -redefineAll($Observable, { - from: function from(x) { - var C = typeof this === 'function' ? this : $Observable; - var observableMethod = getMethod(anObject(x)[OBSERVABLE]); - if (observableMethod) { - var observable = anObject(observableMethod.call(x)); - return observable.constructor === C ? observable : new C(function (observer) { - return observable.subscribe(observer); - }); - } - var iterator = getIterator(x); - return new C(function (observer) { - iterate(iterator, function (it) { - observer.next(it); - if (observer.closed) return iterate.stop(); - }, undefined, false, true); - observer.complete(); - }); - }, - of: function of() { - var C = typeof this === 'function' ? this : $Observable; - var length = arguments.length; - var items = new Array(length); - var index = 0; - while (index < length) items[index] = arguments[index++]; - return new C(function (observer) { - for (var i = 0; i < length; i++) { - observer.next(items[i]); - if (observer.closed) return; - } observer.complete(); - }); - } -}); - -createNonEnumerableProperty($Observable.prototype, OBSERVABLE, function () { return this; }); - -$({ global: true }, { - Observable: $Observable -}); - -setSpecies('Observable'); diff --git a/node_modules/core-js-pure/modules/esnext.promise.all-settled.js b/node_modules/core-js-pure/modules/esnext.promise.all-settled.js deleted file mode 100644 index 0b9d7eee..00000000 --- a/node_modules/core-js-pure/modules/esnext.promise.all-settled.js +++ /dev/null @@ -1,2 +0,0 @@ -// TODO: Remove from `core-js@4` -require('./es.promise.all-settled.js'); diff --git a/node_modules/core-js-pure/modules/esnext.promise.any.js b/node_modules/core-js-pure/modules/esnext.promise.any.js deleted file mode 100644 index e26d1b33..00000000 --- a/node_modules/core-js-pure/modules/esnext.promise.any.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var aFunction = require('../internals/a-function'); -var getBuiltIn = require('../internals/get-built-in'); -var newPromiseCapabilityModule = require('../internals/new-promise-capability'); -var perform = require('../internals/perform'); -var iterate = require('../internals/iterate'); - -var PROMISE_ANY_ERROR = 'No one promise resolved'; - -// `Promise.any` method -// https://github.com/tc39/proposal-promise-any -$({ target: 'Promise', stat: true }, { - any: function any(iterable) { - var C = this; - var capability = newPromiseCapabilityModule.f(C); - var resolve = capability.resolve; - var reject = capability.reject; - var result = perform(function () { - var promiseResolve = aFunction(C.resolve); - var errors = []; - var counter = 0; - var remaining = 1; - var alreadyResolved = false; - iterate(iterable, function (promise) { - var index = counter++; - var alreadyRejected = false; - errors.push(undefined); - remaining++; - promiseResolve.call(C, promise).then(function (value) { - if (alreadyRejected || alreadyResolved) return; - alreadyResolved = true; - resolve(value); - }, function (e) { - if (alreadyRejected || alreadyResolved) return; - alreadyRejected = true; - errors[index] = e; - --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR)); - }); - }); - --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR)); - }); - if (result.error) reject(result.value); - return capability.promise; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.promise.try.js b/node_modules/core-js-pure/modules/esnext.promise.try.js deleted file mode 100644 index 7a7b93b6..00000000 --- a/node_modules/core-js-pure/modules/esnext.promise.try.js +++ /dev/null @@ -1,15 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var newPromiseCapabilityModule = require('../internals/new-promise-capability'); -var perform = require('../internals/perform'); - -// `Promise.try` method -// https://github.com/tc39/proposal-promise-try -$({ target: 'Promise', stat: true }, { - 'try': function (callbackfn) { - var promiseCapability = newPromiseCapabilityModule.f(this); - var result = perform(callbackfn); - (result.error ? promiseCapability.reject : promiseCapability.resolve)(result.value); - return promiseCapability.promise; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.define-metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.define-metadata.js deleted file mode 100644 index 25964392..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.define-metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); - -var toMetadataKey = ReflectMetadataModule.toKey; -var ordinaryDefineOwnMetadata = ReflectMetadataModule.set; - -// `Reflect.defineMetadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - defineMetadata: function defineMetadata(metadataKey, metadataValue, target /* , targetKey */) { - var targetKey = arguments.length < 4 ? undefined : toMetadataKey(arguments[3]); - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.delete-metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.delete-metadata.js deleted file mode 100644 index ec510d38..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.delete-metadata.js +++ /dev/null @@ -1,21 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); - -var toMetadataKey = ReflectMetadataModule.toKey; -var getOrCreateMetadataMap = ReflectMetadataModule.getMap; -var store = ReflectMetadataModule.store; - -// `Reflect.deleteMetadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]); - var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false); - if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false; - if (metadataMap.size) return true; - var targetMetadata = store.get(target); - targetMetadata['delete'](targetKey); - return !!targetMetadata.size || store['delete'](target); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.get-metadata-keys.js b/node_modules/core-js-pure/modules/esnext.reflect.get-metadata-keys.js deleted file mode 100644 index 795f63d6..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.get-metadata-keys.js +++ /dev/null @@ -1,33 +0,0 @@ -var $ = require('../internals/export'); -// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` -var Set = require('../modules/es.set'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); -var iterate = require('../internals/iterate'); - -var ordinaryOwnMetadataKeys = ReflectMetadataModule.keys; -var toMetadataKey = ReflectMetadataModule.toKey; - -var from = function (iter) { - var result = []; - iterate(iter, result.push, result); - return result; -}; - -var ordinaryMetadataKeys = function (O, P) { - var oKeys = ordinaryOwnMetadataKeys(O, P); - var parent = getPrototypeOf(O); - if (parent === null) return oKeys; - var pKeys = ordinaryMetadataKeys(parent, P); - return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; -}; - -// `Reflect.getMetadataKeys` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { - var targetKey = arguments.length < 2 ? undefined : toMetadataKey(arguments[1]); - return ordinaryMetadataKeys(anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.get-metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.get-metadata.js deleted file mode 100644 index fd344e84..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.get-metadata.js +++ /dev/null @@ -1,24 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); - -var ordinaryHasOwnMetadata = ReflectMetadataModule.has; -var ordinaryGetOwnMetadata = ReflectMetadataModule.get; -var toMetadataKey = ReflectMetadataModule.toKey; - -var ordinaryGetMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P); - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined; -}; - -// `Reflect.getMetadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - getMetadata: function getMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]); - return ordinaryGetMetadata(metadataKey, anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.get-own-metadata-keys.js b/node_modules/core-js-pure/modules/esnext.reflect.get-own-metadata-keys.js deleted file mode 100644 index 090bb8dd..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.get-own-metadata-keys.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); - -var ordinaryOwnMetadataKeys = ReflectMetadataModule.keys; -var toMetadataKey = ReflectMetadataModule.toKey; - -// `Reflect.getOwnMetadataKeys` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) { - var targetKey = arguments.length < 2 ? undefined : toMetadataKey(arguments[1]); - return ordinaryOwnMetadataKeys(anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.get-own-metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.get-own-metadata.js deleted file mode 100644 index 81c40d06..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.get-own-metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); - -var ordinaryGetOwnMetadata = ReflectMetadataModule.get; -var toMetadataKey = ReflectMetadataModule.toKey; - -// `Reflect.getOwnMetadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]); - return ordinaryGetOwnMetadata(metadataKey, anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.has-metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.has-metadata.js deleted file mode 100644 index 4b817718..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.has-metadata.js +++ /dev/null @@ -1,23 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); -var getPrototypeOf = require('../internals/object-get-prototype-of'); - -var ordinaryHasOwnMetadata = ReflectMetadataModule.has; -var toMetadataKey = ReflectMetadataModule.toKey; - -var ordinaryHasMetadata = function (MetadataKey, O, P) { - var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P); - if (hasOwn) return true; - var parent = getPrototypeOf(O); - return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false; -}; - -// `Reflect.hasMetadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]); - return ordinaryHasMetadata(metadataKey, anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.has-own-metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.has-own-metadata.js deleted file mode 100644 index 87774b19..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.has-own-metadata.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); - -var ordinaryHasOwnMetadata = ReflectMetadataModule.has; -var toMetadataKey = ReflectMetadataModule.toKey; - -// `Reflect.hasOwnMetadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) { - var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]); - return ordinaryHasOwnMetadata(metadataKey, anObject(target), targetKey); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.reflect.metadata.js b/node_modules/core-js-pure/modules/esnext.reflect.metadata.js deleted file mode 100644 index 7e1caa68..00000000 --- a/node_modules/core-js-pure/modules/esnext.reflect.metadata.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var ReflectMetadataModule = require('../internals/reflect-metadata'); -var anObject = require('../internals/an-object'); - -var toMetadataKey = ReflectMetadataModule.toKey; -var ordinaryDefineOwnMetadata = ReflectMetadataModule.set; - -// `Reflect.metadata` method -// https://github.com/rbuckton/reflect-metadata -$({ target: 'Reflect', stat: true }, { - metadata: function metadata(metadataKey, metadataValue) { - return function decorator(target, key) { - ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetadataKey(key)); - }; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.add-all.js b/node_modules/core-js-pure/modules/esnext.set.add-all.js deleted file mode 100644 index 5de50895..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.add-all.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var collectionAddAll = require('../internals/collection-add-all'); - -// `Set.prototype.addAll` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - addAll: function addAll(/* ...elements */) { - return collectionAddAll.apply(this, arguments); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.delete-all.js b/node_modules/core-js-pure/modules/esnext.set.delete-all.js deleted file mode 100644 index 43e41954..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.delete-all.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var collectionDeleteAll = require('../internals/collection-delete-all'); - -// `Set.prototype.deleteAll` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - deleteAll: function deleteAll(/* ...elements */) { - return collectionDeleteAll.apply(this, arguments); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.difference.js b/node_modules/core-js-pure/modules/esnext.set.difference.js deleted file mode 100644 index 0bb65626..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.difference.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var speciesConstructor = require('../internals/species-constructor'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.difference` method -// https://github.com/tc39/proposal-set-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - difference: function difference(iterable) { - var set = anObject(this); - var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(set); - var remover = aFunction(newSet['delete']); - iterate(iterable, function (value) { - remover.call(newSet, value); - }); - return newSet; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.every.js b/node_modules/core-js-pure/modules/esnext.set.every.js deleted file mode 100644 index 03813f99..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.every.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.every` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - every: function every(callbackfn /* , thisArg */) { - var set = anObject(this); - var iterator = getSetIterator(set); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return !iterate(iterator, function (value) { - if (!boundFunction(value, value, set)) return iterate.stop(); - }, undefined, false, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.filter.js b/node_modules/core-js-pure/modules/esnext.set.filter.js deleted file mode 100644 index a4082732..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.filter.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var bind = require('../internals/function-bind-context'); -var speciesConstructor = require('../internals/species-constructor'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.filter` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - filter: function filter(callbackfn /* , thisArg */) { - var set = anObject(this); - var iterator = getSetIterator(set); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(); - var adder = aFunction(newSet.add); - iterate(iterator, function (value) { - if (boundFunction(value, value, set)) adder.call(newSet, value); - }, undefined, false, true); - return newSet; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.find.js b/node_modules/core-js-pure/modules/esnext.set.find.js deleted file mode 100644 index fcfef511..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.find.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.find` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - find: function find(callbackfn /* , thisArg */) { - var set = anObject(this); - var iterator = getSetIterator(set); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return iterate(iterator, function (value) { - if (boundFunction(value, value, set)) return iterate.stop(value); - }, undefined, false, true).result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.from.js b/node_modules/core-js-pure/modules/esnext.set.from.js deleted file mode 100644 index 3ca34f45..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.from.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var from = require('../internals/collection-from'); - -// `Set.from` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from -$({ target: 'Set', stat: true }, { - from: from -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.intersection.js b/node_modules/core-js-pure/modules/esnext.set.intersection.js deleted file mode 100644 index 2d59f0d9..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.intersection.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var speciesConstructor = require('../internals/species-constructor'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.intersection` method -// https://github.com/tc39/proposal-set-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - intersection: function intersection(iterable) { - var set = anObject(this); - var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(); - var hasCheck = aFunction(set.has); - var adder = aFunction(newSet.add); - iterate(iterable, function (value) { - if (hasCheck.call(set, value)) adder.call(newSet, value); - }); - return newSet; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.is-disjoint-from.js b/node_modules/core-js-pure/modules/esnext.set.is-disjoint-from.js deleted file mode 100644 index 3166ed9f..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.is-disjoint-from.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.isDisjointFrom` method -// https://tc39.github.io/proposal-set-methods/#Set.prototype.isDisjointFrom -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - isDisjointFrom: function isDisjointFrom(iterable) { - var set = anObject(this); - var hasCheck = aFunction(set.has); - return !iterate(iterable, function (value) { - if (hasCheck.call(set, value) === true) return iterate.stop(); - }).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.is-subset-of.js b/node_modules/core-js-pure/modules/esnext.set.is-subset-of.js deleted file mode 100644 index b3dde5e7..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.is-subset-of.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var getIterator = require('../internals/get-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.isSubsetOf` method -// https://tc39.github.io/proposal-set-methods/#Set.prototype.isSubsetOf -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - isSubsetOf: function isSubsetOf(iterable) { - var iterator = getIterator(this); - var otherSet = anObject(iterable); - var hasCheck = otherSet.has; - if (typeof hasCheck != 'function') { - otherSet = new (getBuiltIn('Set'))(iterable); - hasCheck = aFunction(otherSet.has); - } - return !iterate(iterator, function (value) { - if (hasCheck.call(otherSet, value) === false) return iterate.stop(); - }, undefined, false, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.is-superset-of.js b/node_modules/core-js-pure/modules/esnext.set.is-superset-of.js deleted file mode 100644 index 303667a6..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.is-superset-of.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.isSupersetOf` method -// https://tc39.github.io/proposal-set-methods/#Set.prototype.isSupersetOf -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - isSupersetOf: function isSupersetOf(iterable) { - var set = anObject(this); - var hasCheck = aFunction(set.has); - return !iterate(iterable, function (value) { - if (hasCheck.call(set, value) === false) return iterate.stop(); - }).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.join.js b/node_modules/core-js-pure/modules/esnext.set.join.js deleted file mode 100644 index 4b784727..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.join.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.join` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - join: function join(separator) { - var set = anObject(this); - var iterator = getSetIterator(set); - var sep = separator === undefined ? ',' : String(separator); - var result = []; - iterate(iterator, result.push, result, false, true); - return result.join(sep); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.map.js b/node_modules/core-js-pure/modules/esnext.set.map.js deleted file mode 100644 index e9c6c141..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.map.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var bind = require('../internals/function-bind-context'); -var speciesConstructor = require('../internals/species-constructor'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.map` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - map: function map(callbackfn /* , thisArg */) { - var set = anObject(this); - var iterator = getSetIterator(set); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(); - var adder = aFunction(newSet.add); - iterate(iterator, function (value) { - adder.call(newSet, boundFunction(value, value, set)); - }, undefined, false, true); - return newSet; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.of.js b/node_modules/core-js-pure/modules/esnext.set.of.js deleted file mode 100644 index 744698eb..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.of.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var of = require('../internals/collection-of'); - -// `Set.of` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of -$({ target: 'Set', stat: true }, { - of: of -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.reduce.js b/node_modules/core-js-pure/modules/esnext.set.reduce.js deleted file mode 100644 index 00e30de2..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.reduce.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.reduce` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - reduce: function reduce(callbackfn /* , initialValue */) { - var set = anObject(this); - var iterator = getSetIterator(set); - var noInitial = arguments.length < 2; - var accumulator = noInitial ? undefined : arguments[1]; - aFunction(callbackfn); - iterate(iterator, function (value) { - if (noInitial) { - noInitial = false; - accumulator = value; - } else { - accumulator = callbackfn(accumulator, value, value, set); - } - }, undefined, false, true); - if (noInitial) throw TypeError('Reduce of empty set with no initial value'); - return accumulator; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.some.js b/node_modules/core-js-pure/modules/esnext.set.some.js deleted file mode 100644 index df8dda8e..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.some.js +++ /dev/null @@ -1,20 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var anObject = require('../internals/an-object'); -var bind = require('../internals/function-bind-context'); -var getSetIterator = require('../internals/get-set-iterator'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.some` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - some: function some(callbackfn /* , thisArg */) { - var set = anObject(this); - var iterator = getSetIterator(set); - var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3); - return iterate(iterator, function (value) { - if (boundFunction(value, value, set)) return iterate.stop(); - }, undefined, false, true).stopped; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.symmetric-difference.js b/node_modules/core-js-pure/modules/esnext.set.symmetric-difference.js deleted file mode 100644 index ccd326fd..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.symmetric-difference.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var speciesConstructor = require('../internals/species-constructor'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.symmetricDifference` method -// https://github.com/tc39/proposal-set-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - symmetricDifference: function symmetricDifference(iterable) { - var set = anObject(this); - var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(set); - var remover = aFunction(newSet['delete']); - var adder = aFunction(newSet.add); - iterate(iterable, function (value) { - remover.call(newSet, value) || adder.call(newSet, value); - }); - return newSet; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.set.union.js b/node_modules/core-js-pure/modules/esnext.set.union.js deleted file mode 100644 index fc153d40..00000000 --- a/node_modules/core-js-pure/modules/esnext.set.union.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var getBuiltIn = require('../internals/get-built-in'); -var anObject = require('../internals/an-object'); -var aFunction = require('../internals/a-function'); -var speciesConstructor = require('../internals/species-constructor'); -var iterate = require('../internals/iterate'); - -// `Set.prototype.union` method -// https://github.com/tc39/proposal-set-methods -$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { - union: function union(iterable) { - var set = anObject(this); - var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(set); - iterate(iterable, aFunction(newSet.add), newSet); - return newSet; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.string.at.js b/node_modules/core-js-pure/modules/esnext.string.at.js deleted file mode 100644 index fc3c44a7..00000000 --- a/node_modules/core-js-pure/modules/esnext.string.at.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var charAt = require('../internals/string-multibyte').charAt; - -// `String.prototype.at` method -// https://github.com/mathiasbynens/String.prototype.at -$({ target: 'String', proto: true }, { - at: function at(pos) { - return charAt(this, pos); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.string.code-points.js b/node_modules/core-js-pure/modules/esnext.string.code-points.js deleted file mode 100644 index fcf15d66..00000000 --- a/node_modules/core-js-pure/modules/esnext.string.code-points.js +++ /dev/null @@ -1,38 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var createIteratorConstructor = require('../internals/create-iterator-constructor'); -var requireObjectCoercible = require('../internals/require-object-coercible'); -var InternalStateModule = require('../internals/internal-state'); -var StringMultibyteModule = require('../internals/string-multibyte'); - -var codeAt = StringMultibyteModule.codeAt; -var charAt = StringMultibyteModule.charAt; -var STRING_ITERATOR = 'String Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); - -// TODO: unify with String#@@iterator -var $StringIterator = createIteratorConstructor(function StringIterator(string) { - setInternalState(this, { - type: STRING_ITERATOR, - string: string, - index: 0 - }); -}, 'String', function next() { - var state = getInternalState(this); - var string = state.string; - var index = state.index; - var point; - if (index >= string.length) return { value: undefined, done: true }; - point = charAt(string, index); - state.index += point.length; - return { value: { codePoint: codeAt(point, 0), position: index }, done: false }; -}); - -// `String.prototype.codePoints` method -// https://github.com/tc39/proposal-string-prototype-codepoints -$({ target: 'String', proto: true }, { - codePoints: function codePoints() { - return new $StringIterator(String(requireObjectCoercible(this))); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.string.match-all.js b/node_modules/core-js-pure/modules/esnext.string.match-all.js deleted file mode 100644 index b01996dc..00000000 --- a/node_modules/core-js-pure/modules/esnext.string.match-all.js +++ /dev/null @@ -1,2 +0,0 @@ -// TODO: Remove from `core-js@4` -require('./es.string.match-all'); diff --git a/node_modules/core-js-pure/modules/esnext.string.replace-all.js b/node_modules/core-js-pure/modules/esnext.string.replace-all.js deleted file mode 100644 index 22220eee..00000000 --- a/node_modules/core-js-pure/modules/esnext.string.replace-all.js +++ /dev/null @@ -1,50 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var requireObjectCoercible = require('../internals/require-object-coercible'); -var isRegExp = require('../internals/is-regexp'); -var getRegExpFlags = require('../internals/regexp-flags'); -var wellKnownSymbol = require('../internals/well-known-symbol'); -var IS_PURE = require('../internals/is-pure'); - -var REPLACE = wellKnownSymbol('replace'); -var RegExpPrototype = RegExp.prototype; - -// `String.prototype.replaceAll` method -// https://github.com/tc39/proposal-string-replace-all -$({ target: 'String', proto: true }, { - replaceAll: function replaceAll(searchValue, replaceValue) { - var O = requireObjectCoercible(this); - var IS_REG_EXP, flags, replacer, string, searchString, template, result, position, index; - if (searchValue != null) { - IS_REG_EXP = isRegExp(searchValue); - if (IS_REG_EXP) { - flags = String(requireObjectCoercible('flags' in RegExpPrototype - ? searchValue.flags - : getRegExpFlags.call(searchValue) - )); - if (!~flags.indexOf('g')) throw TypeError('`.replaceAll` does not allow non-global regexes'); - } - replacer = searchValue[REPLACE]; - if (replacer !== undefined) { - return replacer.call(searchValue, O, replaceValue); - } else if (IS_PURE && IS_REG_EXP) { - return String(O).replace(searchValue, replaceValue); - } - } - string = String(O); - searchString = String(searchValue); - if (searchString === '') return replaceAll.call(string, /(?:)/g, replaceValue); - template = string.split(searchString); - if (typeof replaceValue !== 'function') { - return template.join(String(replaceValue)); - } - result = template[0]; - position = result.length; - for (index = 1; index < template.length; index++) { - result += String(replaceValue(searchString, position, string)); - position += searchString.length + template[index].length; - result += template[index]; - } - return result; - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.symbol.async-dispose.js b/node_modules/core-js-pure/modules/esnext.symbol.async-dispose.js deleted file mode 100644 index 776608e9..00000000 --- a/node_modules/core-js-pure/modules/esnext.symbol.async-dispose.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.asyncDispose` well-known symbol -// https://github.com/tc39/proposal-using-statement -defineWellKnownSymbol('asyncDispose'); diff --git a/node_modules/core-js-pure/modules/esnext.symbol.dispose.js b/node_modules/core-js-pure/modules/esnext.symbol.dispose.js deleted file mode 100644 index ac7691dd..00000000 --- a/node_modules/core-js-pure/modules/esnext.symbol.dispose.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.dispose` well-known symbol -// https://github.com/tc39/proposal-using-statement -defineWellKnownSymbol('dispose'); diff --git a/node_modules/core-js-pure/modules/esnext.symbol.observable.js b/node_modules/core-js-pure/modules/esnext.symbol.observable.js deleted file mode 100644 index dc4a4f55..00000000 --- a/node_modules/core-js-pure/modules/esnext.symbol.observable.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.observable` well-known symbol -// https://github.com/tc39/proposal-observable -defineWellKnownSymbol('observable'); diff --git a/node_modules/core-js-pure/modules/esnext.symbol.pattern-match.js b/node_modules/core-js-pure/modules/esnext.symbol.pattern-match.js deleted file mode 100644 index 01200639..00000000 --- a/node_modules/core-js-pure/modules/esnext.symbol.pattern-match.js +++ /dev/null @@ -1,5 +0,0 @@ -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -// `Symbol.patternMatch` well-known symbol -// https://github.com/tc39/proposal-pattern-matching -defineWellKnownSymbol('patternMatch'); diff --git a/node_modules/core-js-pure/modules/esnext.symbol.replace-all.js b/node_modules/core-js-pure/modules/esnext.symbol.replace-all.js deleted file mode 100644 index 82cbd293..00000000 --- a/node_modules/core-js-pure/modules/esnext.symbol.replace-all.js +++ /dev/null @@ -1,4 +0,0 @@ -// TODO: remove from `core-js@4` -var defineWellKnownSymbol = require('../internals/define-well-known-symbol'); - -defineWellKnownSymbol('replaceAll'); diff --git a/node_modules/core-js-pure/modules/esnext.weak-map.delete-all.js b/node_modules/core-js-pure/modules/esnext.weak-map.delete-all.js deleted file mode 100644 index ef56f99c..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-map.delete-all.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var collectionDeleteAll = require('../internals/collection-delete-all'); - -// `WeakMap.prototype.deleteAll` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'WeakMap', proto: true, real: true, forced: IS_PURE }, { - deleteAll: function deleteAll(/* ...elements */) { - return collectionDeleteAll.apply(this, arguments); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-map.from.js b/node_modules/core-js-pure/modules/esnext.weak-map.from.js deleted file mode 100644 index 8dc7b01a..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-map.from.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var from = require('../internals/collection-from'); - -// `WeakMap.from` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from -$({ target: 'WeakMap', stat: true }, { - from: from -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-map.of.js b/node_modules/core-js-pure/modules/esnext.weak-map.of.js deleted file mode 100644 index efea5139..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-map.of.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var of = require('../internals/collection-of'); - -// `WeakMap.of` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of -$({ target: 'WeakMap', stat: true }, { - of: of -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-map.upsert.js b/node_modules/core-js-pure/modules/esnext.weak-map.upsert.js deleted file mode 100644 index 1e0d60c9..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-map.upsert.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var $upsert = require('../internals/map-upsert'); - -// `WeakMap.prototype.upsert` method -// https://github.com/thumbsupep/proposal-upsert -$({ target: 'WeakMap', proto: true, real: true, forced: IS_PURE }, { - upsert: $upsert -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-set.add-all.js b/node_modules/core-js-pure/modules/esnext.weak-set.add-all.js deleted file mode 100644 index e8bb4c96..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-set.add-all.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var collectionAddAll = require('../internals/collection-add-all'); - -// `WeakSet.prototype.addAll` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'WeakSet', proto: true, real: true, forced: IS_PURE }, { - addAll: function addAll(/* ...elements */) { - return collectionAddAll.apply(this, arguments); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-set.delete-all.js b/node_modules/core-js-pure/modules/esnext.weak-set.delete-all.js deleted file mode 100644 index b2628213..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-set.delete-all.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; -var $ = require('../internals/export'); -var IS_PURE = require('../internals/is-pure'); -var collectionDeleteAll = require('../internals/collection-delete-all'); - -// `WeakSet.prototype.deleteAll` method -// https://github.com/tc39/proposal-collection-methods -$({ target: 'WeakSet', proto: true, real: true, forced: IS_PURE }, { - deleteAll: function deleteAll(/* ...elements */) { - return collectionDeleteAll.apply(this, arguments); - } -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-set.from.js b/node_modules/core-js-pure/modules/esnext.weak-set.from.js deleted file mode 100644 index e13acec6..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-set.from.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var from = require('../internals/collection-from'); - -// `WeakSet.from` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from -$({ target: 'WeakSet', stat: true }, { - from: from -}); diff --git a/node_modules/core-js-pure/modules/esnext.weak-set.of.js b/node_modules/core-js-pure/modules/esnext.weak-set.of.js deleted file mode 100644 index aee9920f..00000000 --- a/node_modules/core-js-pure/modules/esnext.weak-set.of.js +++ /dev/null @@ -1,8 +0,0 @@ -var $ = require('../internals/export'); -var of = require('../internals/collection-of'); - -// `WeakSet.of` method -// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of -$({ target: 'WeakSet', stat: true }, { - of: of -}); diff --git a/node_modules/core-js-pure/modules/web.dom-collections.for-each.js b/node_modules/core-js-pure/modules/web.dom-collections.for-each.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/web.dom-collections.for-each.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/modules/web.dom-collections.iterator.js b/node_modules/core-js-pure/modules/web.dom-collections.iterator.js deleted file mode 100644 index 0bba3b8c..00000000 --- a/node_modules/core-js-pure/modules/web.dom-collections.iterator.js +++ /dev/null @@ -1,18 +0,0 @@ -require('./es.array.iterator'); -var DOMIterables = require('../internals/dom-iterables'); -var global = require('../internals/global'); -var classof = require('../internals/classof'); -var createNonEnumerableProperty = require('../internals/create-non-enumerable-property'); -var Iterators = require('../internals/iterators'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var TO_STRING_TAG = wellKnownSymbol('toStringTag'); - -for (var COLLECTION_NAME in DOMIterables) { - var Collection = global[COLLECTION_NAME]; - var CollectionPrototype = Collection && Collection.prototype; - if (CollectionPrototype && classof(CollectionPrototype) !== TO_STRING_TAG) { - createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); - } - Iterators[COLLECTION_NAME] = Iterators.Array; -} diff --git a/node_modules/core-js-pure/modules/web.immediate.js b/node_modules/core-js-pure/modules/web.immediate.js deleted file mode 100644 index 0a0f1ef8..00000000 --- a/node_modules/core-js-pure/modules/web.immediate.js +++ /dev/null @@ -1,15 +0,0 @@ -var $ = require('../internals/export'); -var global = require('../internals/global'); -var task = require('../internals/task'); - -var FORCED = !global.setImmediate || !global.clearImmediate; - -// http://w3c.github.io/setImmediate/ -$({ global: true, bind: true, enumerable: true, forced: FORCED }, { - // `setImmediate` method - // http://w3c.github.io/setImmediate/#si-setImmediate - setImmediate: task.set, - // `clearImmediate` method - // http://w3c.github.io/setImmediate/#si-clearImmediate - clearImmediate: task.clear -}); diff --git a/node_modules/core-js-pure/modules/web.queue-microtask.js b/node_modules/core-js-pure/modules/web.queue-microtask.js deleted file mode 100644 index ac5530c1..00000000 --- a/node_modules/core-js-pure/modules/web.queue-microtask.js +++ /dev/null @@ -1,16 +0,0 @@ -var $ = require('../internals/export'); -var global = require('../internals/global'); -var microtask = require('../internals/microtask'); -var classof = require('../internals/classof-raw'); - -var process = global.process; -var isNode = classof(process) == 'process'; - -// `queueMicrotask` method -// https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-queuemicrotask -$({ global: true, enumerable: true, noTargetGet: true }, { - queueMicrotask: function queueMicrotask(fn) { - var domain = isNode && process.domain; - microtask(domain ? domain.bind(fn) : fn); - } -}); diff --git a/node_modules/core-js-pure/modules/web.timers.js b/node_modules/core-js-pure/modules/web.timers.js deleted file mode 100644 index 0a4a7fc4..00000000 --- a/node_modules/core-js-pure/modules/web.timers.js +++ /dev/null @@ -1,28 +0,0 @@ -var $ = require('../internals/export'); -var global = require('../internals/global'); -var userAgent = require('../internals/engine-user-agent'); - -var slice = [].slice; -var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check - -var wrap = function (scheduler) { - return function (handler, timeout /* , ...arguments */) { - var boundArgs = arguments.length > 2; - var args = boundArgs ? slice.call(arguments, 2) : undefined; - return scheduler(boundArgs ? function () { - // eslint-disable-next-line no-new-func - (typeof handler == 'function' ? handler : Function(handler)).apply(this, args); - } : handler, timeout); - }; -}; - -// ie9- setTimeout & setInterval additional parameters fix -// https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#timers -$({ global: true, bind: true, forced: MSIE }, { - // `setTimeout` method - // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-settimeout - setTimeout: wrap(global.setTimeout), - // `setInterval` method - // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-setinterval - setInterval: wrap(global.setInterval) -}); diff --git a/node_modules/core-js-pure/modules/web.url-search-params.js b/node_modules/core-js-pure/modules/web.url-search-params.js deleted file mode 100644 index e2b54c7d..00000000 --- a/node_modules/core-js-pure/modules/web.url-search-params.js +++ /dev/null @@ -1,347 +0,0 @@ -'use strict'; -// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` -require('../modules/es.array.iterator'); -var $ = require('../internals/export'); -var getBuiltIn = require('../internals/get-built-in'); -var USE_NATIVE_URL = require('../internals/native-url'); -var redefine = require('../internals/redefine'); -var redefineAll = require('../internals/redefine-all'); -var setToStringTag = require('../internals/set-to-string-tag'); -var createIteratorConstructor = require('../internals/create-iterator-constructor'); -var InternalStateModule = require('../internals/internal-state'); -var anInstance = require('../internals/an-instance'); -var hasOwn = require('../internals/has'); -var bind = require('../internals/function-bind-context'); -var classof = require('../internals/classof'); -var anObject = require('../internals/an-object'); -var isObject = require('../internals/is-object'); -var create = require('../internals/object-create'); -var createPropertyDescriptor = require('../internals/create-property-descriptor'); -var getIterator = require('../internals/get-iterator'); -var getIteratorMethod = require('../internals/get-iterator-method'); -var wellKnownSymbol = require('../internals/well-known-symbol'); - -var $fetch = getBuiltIn('fetch'); -var Headers = getBuiltIn('Headers'); -var ITERATOR = wellKnownSymbol('iterator'); -var URL_SEARCH_PARAMS = 'URLSearchParams'; -var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator'; -var setInternalState = InternalStateModule.set; -var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS); -var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR); - -var plus = /\+/g; -var sequences = Array(4); - -var percentSequence = function (bytes) { - return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\da-f]{2}){' + bytes + '})', 'gi')); -}; - -var percentDecode = function (sequence) { - try { - return decodeURIComponent(sequence); - } catch (error) { - return sequence; - } -}; - -var deserialize = function (it) { - var result = it.replace(plus, ' '); - var bytes = 4; - try { - return decodeURIComponent(result); - } catch (error) { - while (bytes) { - result = result.replace(percentSequence(bytes--), percentDecode); - } - return result; - } -}; - -var find = /[!'()~]|%20/g; - -var replace = { - '!': '%21', - "'": '%27', - '(': '%28', - ')': '%29', - '~': '%7E', - '%20': '+' -}; - -var replacer = function (match) { - return replace[match]; -}; - -var serialize = function (it) { - return encodeURIComponent(it).replace(find, replacer); -}; - -var parseSearchParams = function (result, query) { - if (query) { - var attributes = query.split('&'); - var index = 0; - var attribute, entry; - while (index < attributes.length) { - attribute = attributes[index++]; - if (attribute.length) { - entry = attribute.split('='); - result.push({ - key: deserialize(entry.shift()), - value: deserialize(entry.join('=')) - }); - } - } - } -}; - -var updateSearchParams = function (query) { - this.entries.length = 0; - parseSearchParams(this.entries, query); -}; - -var validateArgumentsLength = function (passed, required) { - if (passed < required) throw TypeError('Not enough arguments'); -}; - -var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) { - setInternalState(this, { - type: URL_SEARCH_PARAMS_ITERATOR, - iterator: getIterator(getInternalParamsState(params).entries), - kind: kind - }); -}, 'Iterator', function next() { - var state = getInternalIteratorState(this); - var kind = state.kind; - var step = state.iterator.next(); - var entry = step.value; - if (!step.done) { - step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value]; - } return step; -}); - -// `URLSearchParams` constructor -// https://url.spec.whatwg.org/#interface-urlsearchparams -var URLSearchParamsConstructor = function URLSearchParams(/* init */) { - anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS); - var init = arguments.length > 0 ? arguments[0] : undefined; - var that = this; - var entries = []; - var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key; - - setInternalState(that, { - type: URL_SEARCH_PARAMS, - entries: entries, - updateURL: function () { /* empty */ }, - updateSearchParams: updateSearchParams - }); - - if (init !== undefined) { - if (isObject(init)) { - iteratorMethod = getIteratorMethod(init); - if (typeof iteratorMethod === 'function') { - iterator = iteratorMethod.call(init); - next = iterator.next; - while (!(step = next.call(iterator)).done) { - entryIterator = getIterator(anObject(step.value)); - entryNext = entryIterator.next; - if ( - (first = entryNext.call(entryIterator)).done || - (second = entryNext.call(entryIterator)).done || - !entryNext.call(entryIterator).done - ) throw TypeError('Expected sequence with length 2'); - entries.push({ key: first.value + '', value: second.value + '' }); - } - } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' }); - } else { - parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + ''); - } - } -}; - -var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype; - -redefineAll(URLSearchParamsPrototype, { - // `URLSearchParams.prototype.appent` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-append - append: function append(name, value) { - validateArgumentsLength(arguments.length, 2); - var state = getInternalParamsState(this); - state.entries.push({ key: name + '', value: value + '' }); - state.updateURL(); - }, - // `URLSearchParams.prototype.delete` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-delete - 'delete': function (name) { - validateArgumentsLength(arguments.length, 1); - var state = getInternalParamsState(this); - var entries = state.entries; - var key = name + ''; - var index = 0; - while (index < entries.length) { - if (entries[index].key === key) entries.splice(index, 1); - else index++; - } - state.updateURL(); - }, - // `URLSearchParams.prototype.get` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-get - get: function get(name) { - validateArgumentsLength(arguments.length, 1); - var entries = getInternalParamsState(this).entries; - var key = name + ''; - var index = 0; - for (; index < entries.length; index++) { - if (entries[index].key === key) return entries[index].value; - } - return null; - }, - // `URLSearchParams.prototype.getAll` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-getall - getAll: function getAll(name) { - validateArgumentsLength(arguments.length, 1); - var entries = getInternalParamsState(this).entries; - var key = name + ''; - var result = []; - var index = 0; - for (; index < entries.length; index++) { - if (entries[index].key === key) result.push(entries[index].value); - } - return result; - }, - // `URLSearchParams.prototype.has` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-has - has: function has(name) { - validateArgumentsLength(arguments.length, 1); - var entries = getInternalParamsState(this).entries; - var key = name + ''; - var index = 0; - while (index < entries.length) { - if (entries[index++].key === key) return true; - } - return false; - }, - // `URLSearchParams.prototype.set` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-set - set: function set(name, value) { - validateArgumentsLength(arguments.length, 1); - var state = getInternalParamsState(this); - var entries = state.entries; - var found = false; - var key = name + ''; - var val = value + ''; - var index = 0; - var entry; - for (; index < entries.length; index++) { - entry = entries[index]; - if (entry.key === key) { - if (found) entries.splice(index--, 1); - else { - found = true; - entry.value = val; - } - } - } - if (!found) entries.push({ key: key, value: val }); - state.updateURL(); - }, - // `URLSearchParams.prototype.sort` method - // https://url.spec.whatwg.org/#dom-urlsearchparams-sort - sort: function sort() { - var state = getInternalParamsState(this); - var entries = state.entries; - // Array#sort is not stable in some engines - var slice = entries.slice(); - var entry, entriesIndex, sliceIndex; - entries.length = 0; - for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) { - entry = slice[sliceIndex]; - for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) { - if (entries[entriesIndex].key > entry.key) { - entries.splice(entriesIndex, 0, entry); - break; - } - } - if (entriesIndex === sliceIndex) entries.push(entry); - } - state.updateURL(); - }, - // `URLSearchParams.prototype.forEach` method - forEach: function forEach(callback /* , thisArg */) { - var entries = getInternalParamsState(this).entries; - var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3); - var index = 0; - var entry; - while (index < entries.length) { - entry = entries[index++]; - boundFunction(entry.value, entry.key, this); - } - }, - // `URLSearchParams.prototype.keys` method - keys: function keys() { - return new URLSearchParamsIterator(this, 'keys'); - }, - // `URLSearchParams.prototype.values` method - values: function values() { - return new URLSearchParamsIterator(this, 'values'); - }, - // `URLSearchParams.prototype.entries` method - entries: function entries() { - return new URLSearchParamsIterator(this, 'entries'); - } -}, { enumerable: true }); - -// `URLSearchParams.prototype[@@iterator]` method -redefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries); - -// `URLSearchParams.prototype.toString` method -// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior -redefine(URLSearchParamsPrototype, 'toString', function toString() { - var entries = getInternalParamsState(this).entries; - var result = []; - var index = 0; - var entry; - while (index < entries.length) { - entry = entries[index++]; - result.push(serialize(entry.key) + '=' + serialize(entry.value)); - } return result.join('&'); -}, { enumerable: true }); - -setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS); - -$({ global: true, forced: !USE_NATIVE_URL }, { - URLSearchParams: URLSearchParamsConstructor -}); - -// Wrap `fetch` for correct work with polyfilled `URLSearchParams` -// https://github.com/zloirock/core-js/issues/674 -if (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') { - $({ global: true, enumerable: true, forced: true }, { - fetch: function fetch(input /* , init */) { - var args = [input]; - var init, body, headers; - if (arguments.length > 1) { - init = arguments[1]; - if (isObject(init)) { - body = init.body; - if (classof(body) === URL_SEARCH_PARAMS) { - headers = init.headers ? new Headers(init.headers) : new Headers(); - if (!headers.has('content-type')) { - headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); - } - init = create(init, { - body: createPropertyDescriptor(0, String(body)), - headers: createPropertyDescriptor(0, headers) - }); - } - } - args.push(init); - } return $fetch.apply(this, args); - } - }); -} - -module.exports = { - URLSearchParams: URLSearchParamsConstructor, - getState: getInternalParamsState -}; diff --git a/node_modules/core-js-pure/modules/web.url.js b/node_modules/core-js-pure/modules/web.url.js deleted file mode 100644 index 4e4df4ba..00000000 --- a/node_modules/core-js-pure/modules/web.url.js +++ /dev/null @@ -1,1007 +0,0 @@ -'use strict'; -// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` -require('../modules/es.string.iterator'); -var $ = require('../internals/export'); -var DESCRIPTORS = require('../internals/descriptors'); -var USE_NATIVE_URL = require('../internals/native-url'); -var global = require('../internals/global'); -var defineProperties = require('../internals/object-define-properties'); -var redefine = require('../internals/redefine'); -var anInstance = require('../internals/an-instance'); -var has = require('../internals/has'); -var assign = require('../internals/object-assign'); -var arrayFrom = require('../internals/array-from'); -var codeAt = require('../internals/string-multibyte').codeAt; -var toASCII = require('../internals/string-punycode-to-ascii'); -var setToStringTag = require('../internals/set-to-string-tag'); -var URLSearchParamsModule = require('../modules/web.url-search-params'); -var InternalStateModule = require('../internals/internal-state'); - -var NativeURL = global.URL; -var URLSearchParams = URLSearchParamsModule.URLSearchParams; -var getInternalSearchParamsState = URLSearchParamsModule.getState; -var setInternalState = InternalStateModule.set; -var getInternalURLState = InternalStateModule.getterFor('URL'); -var floor = Math.floor; -var pow = Math.pow; - -var INVALID_AUTHORITY = 'Invalid authority'; -var INVALID_SCHEME = 'Invalid scheme'; -var INVALID_HOST = 'Invalid host'; -var INVALID_PORT = 'Invalid port'; - -var ALPHA = /[A-Za-z]/; -var ALPHANUMERIC = /[\d+\-.A-Za-z]/; -var DIGIT = /\d/; -var HEX_START = /^(0x|0X)/; -var OCT = /^[0-7]+$/; -var DEC = /^\d+$/; -var HEX = /^[\dA-Fa-f]+$/; -// eslint-disable-next-line no-control-regex -var FORBIDDEN_HOST_CODE_POINT = /[\u0000\u0009\u000A\u000D #%/:?@[\\]]/; -// eslint-disable-next-line no-control-regex -var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\u0009\u000A\u000D #/:?@[\\]]/; -// eslint-disable-next-line no-control-regex -var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g; -// eslint-disable-next-line no-control-regex -var TAB_AND_NEW_LINE = /[\u0009\u000A\u000D]/g; -var EOF; - -var parseHost = function (url, input) { - var result, codePoints, index; - if (input.charAt(0) == '[') { - if (input.charAt(input.length - 1) != ']') return INVALID_HOST; - result = parseIPv6(input.slice(1, -1)); - if (!result) return INVALID_HOST; - url.host = result; - // opaque host - } else if (!isSpecial(url)) { - if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST; - result = ''; - codePoints = arrayFrom(input); - for (index = 0; index < codePoints.length; index++) { - result += percentEncode(codePoints[index], C0ControlPercentEncodeSet); - } - url.host = result; - } else { - input = toASCII(input); - if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST; - result = parseIPv4(input); - if (result === null) return INVALID_HOST; - url.host = result; - } -}; - -var parseIPv4 = function (input) { - var parts = input.split('.'); - var partsLength, numbers, index, part, radix, number, ipv4; - if (parts.length && parts[parts.length - 1] == '') { - parts.pop(); - } - partsLength = parts.length; - if (partsLength > 4) return input; - numbers = []; - for (index = 0; index < partsLength; index++) { - part = parts[index]; - if (part == '') return input; - radix = 10; - if (part.length > 1 && part.charAt(0) == '0') { - radix = HEX_START.test(part) ? 16 : 8; - part = part.slice(radix == 8 ? 1 : 2); - } - if (part === '') { - number = 0; - } else { - if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input; - number = parseInt(part, radix); - } - numbers.push(number); - } - for (index = 0; index < partsLength; index++) { - number = numbers[index]; - if (index == partsLength - 1) { - if (number >= pow(256, 5 - partsLength)) return null; - } else if (number > 255) return null; - } - ipv4 = numbers.pop(); - for (index = 0; index < numbers.length; index++) { - ipv4 += numbers[index] * pow(256, 3 - index); - } - return ipv4; -}; - -// eslint-disable-next-line max-statements -var parseIPv6 = function (input) { - var address = [0, 0, 0, 0, 0, 0, 0, 0]; - var pieceIndex = 0; - var compress = null; - var pointer = 0; - var value, length, numbersSeen, ipv4Piece, number, swaps, swap; - - var char = function () { - return input.charAt(pointer); - }; - - if (char() == ':') { - if (input.charAt(1) != ':') return; - pointer += 2; - pieceIndex++; - compress = pieceIndex; - } - while (char()) { - if (pieceIndex == 8) return; - if (char() == ':') { - if (compress !== null) return; - pointer++; - pieceIndex++; - compress = pieceIndex; - continue; - } - value = length = 0; - while (length < 4 && HEX.test(char())) { - value = value * 16 + parseInt(char(), 16); - pointer++; - length++; - } - if (char() == '.') { - if (length == 0) return; - pointer -= length; - if (pieceIndex > 6) return; - numbersSeen = 0; - while (char()) { - ipv4Piece = null; - if (numbersSeen > 0) { - if (char() == '.' && numbersSeen < 4) pointer++; - else return; - } - if (!DIGIT.test(char())) return; - while (DIGIT.test(char())) { - number = parseInt(char(), 10); - if (ipv4Piece === null) ipv4Piece = number; - else if (ipv4Piece == 0) return; - else ipv4Piece = ipv4Piece * 10 + number; - if (ipv4Piece > 255) return; - pointer++; - } - address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece; - numbersSeen++; - if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++; - } - if (numbersSeen != 4) return; - break; - } else if (char() == ':') { - pointer++; - if (!char()) return; - } else if (char()) return; - address[pieceIndex++] = value; - } - if (compress !== null) { - swaps = pieceIndex - compress; - pieceIndex = 7; - while (pieceIndex != 0 && swaps > 0) { - swap = address[pieceIndex]; - address[pieceIndex--] = address[compress + swaps - 1]; - address[compress + --swaps] = swap; - } - } else if (pieceIndex != 8) return; - return address; -}; - -var findLongestZeroSequence = function (ipv6) { - var maxIndex = null; - var maxLength = 1; - var currStart = null; - var currLength = 0; - var index = 0; - for (; index < 8; index++) { - if (ipv6[index] !== 0) { - if (currLength > maxLength) { - maxIndex = currStart; - maxLength = currLength; - } - currStart = null; - currLength = 0; - } else { - if (currStart === null) currStart = index; - ++currLength; - } - } - if (currLength > maxLength) { - maxIndex = currStart; - maxLength = currLength; - } - return maxIndex; -}; - -var serializeHost = function (host) { - var result, index, compress, ignore0; - // ipv4 - if (typeof host == 'number') { - result = []; - for (index = 0; index < 4; index++) { - result.unshift(host % 256); - host = floor(host / 256); - } return result.join('.'); - // ipv6 - } else if (typeof host == 'object') { - result = ''; - compress = findLongestZeroSequence(host); - for (index = 0; index < 8; index++) { - if (ignore0 && host[index] === 0) continue; - if (ignore0) ignore0 = false; - if (compress === index) { - result += index ? ':' : '::'; - ignore0 = true; - } else { - result += host[index].toString(16); - if (index < 7) result += ':'; - } - } - return '[' + result + ']'; - } return host; -}; - -var C0ControlPercentEncodeSet = {}; -var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, { - ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1 -}); -var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, { - '#': 1, '?': 1, '{': 1, '}': 1 -}); -var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, { - '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1 -}); - -var percentEncode = function (char, set) { - var code = codeAt(char, 0); - return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char); -}; - -var specialSchemes = { - ftp: 21, - file: null, - http: 80, - https: 443, - ws: 80, - wss: 443 -}; - -var isSpecial = function (url) { - return has(specialSchemes, url.scheme); -}; - -var includesCredentials = function (url) { - return url.username != '' || url.password != ''; -}; - -var cannotHaveUsernamePasswordPort = function (url) { - return !url.host || url.cannotBeABaseURL || url.scheme == 'file'; -}; - -var isWindowsDriveLetter = function (string, normalized) { - var second; - return string.length == 2 && ALPHA.test(string.charAt(0)) - && ((second = string.charAt(1)) == ':' || (!normalized && second == '|')); -}; - -var startsWithWindowsDriveLetter = function (string) { - var third; - return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && ( - string.length == 2 || - ((third = string.charAt(2)) === '/' || third === '\\' || third === '?' || third === '#') - ); -}; - -var shortenURLsPath = function (url) { - var path = url.path; - var pathSize = path.length; - if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) { - path.pop(); - } -}; - -var isSingleDot = function (segment) { - return segment === '.' || segment.toLowerCase() === '%2e'; -}; - -var isDoubleDot = function (segment) { - segment = segment.toLowerCase(); - return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e'; -}; - -// States: -var SCHEME_START = {}; -var SCHEME = {}; -var NO_SCHEME = {}; -var SPECIAL_RELATIVE_OR_AUTHORITY = {}; -var PATH_OR_AUTHORITY = {}; -var RELATIVE = {}; -var RELATIVE_SLASH = {}; -var SPECIAL_AUTHORITY_SLASHES = {}; -var SPECIAL_AUTHORITY_IGNORE_SLASHES = {}; -var AUTHORITY = {}; -var HOST = {}; -var HOSTNAME = {}; -var PORT = {}; -var FILE = {}; -var FILE_SLASH = {}; -var FILE_HOST = {}; -var PATH_START = {}; -var PATH = {}; -var CANNOT_BE_A_BASE_URL_PATH = {}; -var QUERY = {}; -var FRAGMENT = {}; - -// eslint-disable-next-line max-statements -var parseURL = function (url, input, stateOverride, base) { - var state = stateOverride || SCHEME_START; - var pointer = 0; - var buffer = ''; - var seenAt = false; - var seenBracket = false; - var seenPasswordToken = false; - var codePoints, char, bufferCodePoints, failure; - - if (!stateOverride) { - url.scheme = ''; - url.username = ''; - url.password = ''; - url.host = null; - url.port = null; - url.path = []; - url.query = null; - url.fragment = null; - url.cannotBeABaseURL = false; - input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, ''); - } - - input = input.replace(TAB_AND_NEW_LINE, ''); - - codePoints = arrayFrom(input); - - while (pointer <= codePoints.length) { - char = codePoints[pointer]; - switch (state) { - case SCHEME_START: - if (char && ALPHA.test(char)) { - buffer += char.toLowerCase(); - state = SCHEME; - } else if (!stateOverride) { - state = NO_SCHEME; - continue; - } else return INVALID_SCHEME; - break; - - case SCHEME: - if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) { - buffer += char.toLowerCase(); - } else if (char == ':') { - if (stateOverride && ( - (isSpecial(url) != has(specialSchemes, buffer)) || - (buffer == 'file' && (includesCredentials(url) || url.port !== null)) || - (url.scheme == 'file' && !url.host) - )) return; - url.scheme = buffer; - if (stateOverride) { - if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null; - return; - } - buffer = ''; - if (url.scheme == 'file') { - state = FILE; - } else if (isSpecial(url) && base && base.scheme == url.scheme) { - state = SPECIAL_RELATIVE_OR_AUTHORITY; - } else if (isSpecial(url)) { - state = SPECIAL_AUTHORITY_SLASHES; - } else if (codePoints[pointer + 1] == '/') { - state = PATH_OR_AUTHORITY; - pointer++; - } else { - url.cannotBeABaseURL = true; - url.path.push(''); - state = CANNOT_BE_A_BASE_URL_PATH; - } - } else if (!stateOverride) { - buffer = ''; - state = NO_SCHEME; - pointer = 0; - continue; - } else return INVALID_SCHEME; - break; - - case NO_SCHEME: - if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME; - if (base.cannotBeABaseURL && char == '#') { - url.scheme = base.scheme; - url.path = base.path.slice(); - url.query = base.query; - url.fragment = ''; - url.cannotBeABaseURL = true; - state = FRAGMENT; - break; - } - state = base.scheme == 'file' ? FILE : RELATIVE; - continue; - - case SPECIAL_RELATIVE_OR_AUTHORITY: - if (char == '/' && codePoints[pointer + 1] == '/') { - state = SPECIAL_AUTHORITY_IGNORE_SLASHES; - pointer++; - } else { - state = RELATIVE; - continue; - } break; - - case PATH_OR_AUTHORITY: - if (char == '/') { - state = AUTHORITY; - break; - } else { - state = PATH; - continue; - } - - case RELATIVE: - url.scheme = base.scheme; - if (char == EOF) { - url.username = base.username; - url.password = base.password; - url.host = base.host; - url.port = base.port; - url.path = base.path.slice(); - url.query = base.query; - } else if (char == '/' || (char == '\\' && isSpecial(url))) { - state = RELATIVE_SLASH; - } else if (char == '?') { - url.username = base.username; - url.password = base.password; - url.host = base.host; - url.port = base.port; - url.path = base.path.slice(); - url.query = ''; - state = QUERY; - } else if (char == '#') { - url.username = base.username; - url.password = base.password; - url.host = base.host; - url.port = base.port; - url.path = base.path.slice(); - url.query = base.query; - url.fragment = ''; - state = FRAGMENT; - } else { - url.username = base.username; - url.password = base.password; - url.host = base.host; - url.port = base.port; - url.path = base.path.slice(); - url.path.pop(); - state = PATH; - continue; - } break; - - case RELATIVE_SLASH: - if (isSpecial(url) && (char == '/' || char == '\\')) { - state = SPECIAL_AUTHORITY_IGNORE_SLASHES; - } else if (char == '/') { - state = AUTHORITY; - } else { - url.username = base.username; - url.password = base.password; - url.host = base.host; - url.port = base.port; - state = PATH; - continue; - } break; - - case SPECIAL_AUTHORITY_SLASHES: - state = SPECIAL_AUTHORITY_IGNORE_SLASHES; - if (char != '/' || buffer.charAt(pointer + 1) != '/') continue; - pointer++; - break; - - case SPECIAL_AUTHORITY_IGNORE_SLASHES: - if (char != '/' && char != '\\') { - state = AUTHORITY; - continue; - } break; - - case AUTHORITY: - if (char == '@') { - if (seenAt) buffer = '%40' + buffer; - seenAt = true; - bufferCodePoints = arrayFrom(buffer); - for (var i = 0; i < bufferCodePoints.length; i++) { - var codePoint = bufferCodePoints[i]; - if (codePoint == ':' && !seenPasswordToken) { - seenPasswordToken = true; - continue; - } - var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet); - if (seenPasswordToken) url.password += encodedCodePoints; - else url.username += encodedCodePoints; - } - buffer = ''; - } else if ( - char == EOF || char == '/' || char == '?' || char == '#' || - (char == '\\' && isSpecial(url)) - ) { - if (seenAt && buffer == '') return INVALID_AUTHORITY; - pointer -= arrayFrom(buffer).length + 1; - buffer = ''; - state = HOST; - } else buffer += char; - break; - - case HOST: - case HOSTNAME: - if (stateOverride && url.scheme == 'file') { - state = FILE_HOST; - continue; - } else if (char == ':' && !seenBracket) { - if (buffer == '') return INVALID_HOST; - failure = parseHost(url, buffer); - if (failure) return failure; - buffer = ''; - state = PORT; - if (stateOverride == HOSTNAME) return; - } else if ( - char == EOF || char == '/' || char == '?' || char == '#' || - (char == '\\' && isSpecial(url)) - ) { - if (isSpecial(url) && buffer == '') return INVALID_HOST; - if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return; - failure = parseHost(url, buffer); - if (failure) return failure; - buffer = ''; - state = PATH_START; - if (stateOverride) return; - continue; - } else { - if (char == '[') seenBracket = true; - else if (char == ']') seenBracket = false; - buffer += char; - } break; - - case PORT: - if (DIGIT.test(char)) { - buffer += char; - } else if ( - char == EOF || char == '/' || char == '?' || char == '#' || - (char == '\\' && isSpecial(url)) || - stateOverride - ) { - if (buffer != '') { - var port = parseInt(buffer, 10); - if (port > 0xFFFF) return INVALID_PORT; - url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port; - buffer = ''; - } - if (stateOverride) return; - state = PATH_START; - continue; - } else return INVALID_PORT; - break; - - case FILE: - url.scheme = 'file'; - if (char == '/' || char == '\\') state = FILE_SLASH; - else if (base && base.scheme == 'file') { - if (char == EOF) { - url.host = base.host; - url.path = base.path.slice(); - url.query = base.query; - } else if (char == '?') { - url.host = base.host; - url.path = base.path.slice(); - url.query = ''; - state = QUERY; - } else if (char == '#') { - url.host = base.host; - url.path = base.path.slice(); - url.query = base.query; - url.fragment = ''; - state = FRAGMENT; - } else { - if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { - url.host = base.host; - url.path = base.path.slice(); - shortenURLsPath(url); - } - state = PATH; - continue; - } - } else { - state = PATH; - continue; - } break; - - case FILE_SLASH: - if (char == '/' || char == '\\') { - state = FILE_HOST; - break; - } - if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { - if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]); - else url.host = base.host; - } - state = PATH; - continue; - - case FILE_HOST: - if (char == EOF || char == '/' || char == '\\' || char == '?' || char == '#') { - if (!stateOverride && isWindowsDriveLetter(buffer)) { - state = PATH; - } else if (buffer == '') { - url.host = ''; - if (stateOverride) return; - state = PATH_START; - } else { - failure = parseHost(url, buffer); - if (failure) return failure; - if (url.host == 'localhost') url.host = ''; - if (stateOverride) return; - buffer = ''; - state = PATH_START; - } continue; - } else buffer += char; - break; - - case PATH_START: - if (isSpecial(url)) { - state = PATH; - if (char != '/' && char != '\\') continue; - } else if (!stateOverride && char == '?') { - url.query = ''; - state = QUERY; - } else if (!stateOverride && char == '#') { - url.fragment = ''; - state = FRAGMENT; - } else if (char != EOF) { - state = PATH; - if (char != '/') continue; - } break; - - case PATH: - if ( - char == EOF || char == '/' || - (char == '\\' && isSpecial(url)) || - (!stateOverride && (char == '?' || char == '#')) - ) { - if (isDoubleDot(buffer)) { - shortenURLsPath(url); - if (char != '/' && !(char == '\\' && isSpecial(url))) { - url.path.push(''); - } - } else if (isSingleDot(buffer)) { - if (char != '/' && !(char == '\\' && isSpecial(url))) { - url.path.push(''); - } - } else { - if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) { - if (url.host) url.host = ''; - buffer = buffer.charAt(0) + ':'; // normalize windows drive letter - } - url.path.push(buffer); - } - buffer = ''; - if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) { - while (url.path.length > 1 && url.path[0] === '') { - url.path.shift(); - } - } - if (char == '?') { - url.query = ''; - state = QUERY; - } else if (char == '#') { - url.fragment = ''; - state = FRAGMENT; - } - } else { - buffer += percentEncode(char, pathPercentEncodeSet); - } break; - - case CANNOT_BE_A_BASE_URL_PATH: - if (char == '?') { - url.query = ''; - state = QUERY; - } else if (char == '#') { - url.fragment = ''; - state = FRAGMENT; - } else if (char != EOF) { - url.path[0] += percentEncode(char, C0ControlPercentEncodeSet); - } break; - - case QUERY: - if (!stateOverride && char == '#') { - url.fragment = ''; - state = FRAGMENT; - } else if (char != EOF) { - if (char == "'" && isSpecial(url)) url.query += '%27'; - else if (char == '#') url.query += '%23'; - else url.query += percentEncode(char, C0ControlPercentEncodeSet); - } break; - - case FRAGMENT: - if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet); - break; - } - - pointer++; - } -}; - -// `URL` constructor -// https://url.spec.whatwg.org/#url-class -var URLConstructor = function URL(url /* , base */) { - var that = anInstance(this, URLConstructor, 'URL'); - var base = arguments.length > 1 ? arguments[1] : undefined; - var urlString = String(url); - var state = setInternalState(that, { type: 'URL' }); - var baseState, failure; - if (base !== undefined) { - if (base instanceof URLConstructor) baseState = getInternalURLState(base); - else { - failure = parseURL(baseState = {}, String(base)); - if (failure) throw TypeError(failure); - } - } - failure = parseURL(state, urlString, null, baseState); - if (failure) throw TypeError(failure); - var searchParams = state.searchParams = new URLSearchParams(); - var searchParamsState = getInternalSearchParamsState(searchParams); - searchParamsState.updateSearchParams(state.query); - searchParamsState.updateURL = function () { - state.query = String(searchParams) || null; - }; - if (!DESCRIPTORS) { - that.href = serializeURL.call(that); - that.origin = getOrigin.call(that); - that.protocol = getProtocol.call(that); - that.username = getUsername.call(that); - that.password = getPassword.call(that); - that.host = getHost.call(that); - that.hostname = getHostname.call(that); - that.port = getPort.call(that); - that.pathname = getPathname.call(that); - that.search = getSearch.call(that); - that.searchParams = getSearchParams.call(that); - that.hash = getHash.call(that); - } -}; - -var URLPrototype = URLConstructor.prototype; - -var serializeURL = function () { - var url = getInternalURLState(this); - var scheme = url.scheme; - var username = url.username; - var password = url.password; - var host = url.host; - var port = url.port; - var path = url.path; - var query = url.query; - var fragment = url.fragment; - var output = scheme + ':'; - if (host !== null) { - output += '//'; - if (includesCredentials(url)) { - output += username + (password ? ':' + password : '') + '@'; - } - output += serializeHost(host); - if (port !== null) output += ':' + port; - } else if (scheme == 'file') output += '//'; - output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; - if (query !== null) output += '?' + query; - if (fragment !== null) output += '#' + fragment; - return output; -}; - -var getOrigin = function () { - var url = getInternalURLState(this); - var scheme = url.scheme; - var port = url.port; - if (scheme == 'blob') try { - return new URL(scheme.path[0]).origin; - } catch (error) { - return 'null'; - } - if (scheme == 'file' || !isSpecial(url)) return 'null'; - return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : ''); -}; - -var getProtocol = function () { - return getInternalURLState(this).scheme + ':'; -}; - -var getUsername = function () { - return getInternalURLState(this).username; -}; - -var getPassword = function () { - return getInternalURLState(this).password; -}; - -var getHost = function () { - var url = getInternalURLState(this); - var host = url.host; - var port = url.port; - return host === null ? '' - : port === null ? serializeHost(host) - : serializeHost(host) + ':' + port; -}; - -var getHostname = function () { - var host = getInternalURLState(this).host; - return host === null ? '' : serializeHost(host); -}; - -var getPort = function () { - var port = getInternalURLState(this).port; - return port === null ? '' : String(port); -}; - -var getPathname = function () { - var url = getInternalURLState(this); - var path = url.path; - return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; -}; - -var getSearch = function () { - var query = getInternalURLState(this).query; - return query ? '?' + query : ''; -}; - -var getSearchParams = function () { - return getInternalURLState(this).searchParams; -}; - -var getHash = function () { - var fragment = getInternalURLState(this).fragment; - return fragment ? '#' + fragment : ''; -}; - -var accessorDescriptor = function (getter, setter) { - return { get: getter, set: setter, configurable: true, enumerable: true }; -}; - -if (DESCRIPTORS) { - defineProperties(URLPrototype, { - // `URL.prototype.href` accessors pair - // https://url.spec.whatwg.org/#dom-url-href - href: accessorDescriptor(serializeURL, function (href) { - var url = getInternalURLState(this); - var urlString = String(href); - var failure = parseURL(url, urlString); - if (failure) throw TypeError(failure); - getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); - }), - // `URL.prototype.origin` getter - // https://url.spec.whatwg.org/#dom-url-origin - origin: accessorDescriptor(getOrigin), - // `URL.prototype.protocol` accessors pair - // https://url.spec.whatwg.org/#dom-url-protocol - protocol: accessorDescriptor(getProtocol, function (protocol) { - var url = getInternalURLState(this); - parseURL(url, String(protocol) + ':', SCHEME_START); - }), - // `URL.prototype.username` accessors pair - // https://url.spec.whatwg.org/#dom-url-username - username: accessorDescriptor(getUsername, function (username) { - var url = getInternalURLState(this); - var codePoints = arrayFrom(String(username)); - if (cannotHaveUsernamePasswordPort(url)) return; - url.username = ''; - for (var i = 0; i < codePoints.length; i++) { - url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet); - } - }), - // `URL.prototype.password` accessors pair - // https://url.spec.whatwg.org/#dom-url-password - password: accessorDescriptor(getPassword, function (password) { - var url = getInternalURLState(this); - var codePoints = arrayFrom(String(password)); - if (cannotHaveUsernamePasswordPort(url)) return; - url.password = ''; - for (var i = 0; i < codePoints.length; i++) { - url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet); - } - }), - // `URL.prototype.host` accessors pair - // https://url.spec.whatwg.org/#dom-url-host - host: accessorDescriptor(getHost, function (host) { - var url = getInternalURLState(this); - if (url.cannotBeABaseURL) return; - parseURL(url, String(host), HOST); - }), - // `URL.prototype.hostname` accessors pair - // https://url.spec.whatwg.org/#dom-url-hostname - hostname: accessorDescriptor(getHostname, function (hostname) { - var url = getInternalURLState(this); - if (url.cannotBeABaseURL) return; - parseURL(url, String(hostname), HOSTNAME); - }), - // `URL.prototype.port` accessors pair - // https://url.spec.whatwg.org/#dom-url-port - port: accessorDescriptor(getPort, function (port) { - var url = getInternalURLState(this); - if (cannotHaveUsernamePasswordPort(url)) return; - port = String(port); - if (port == '') url.port = null; - else parseURL(url, port, PORT); - }), - // `URL.prototype.pathname` accessors pair - // https://url.spec.whatwg.org/#dom-url-pathname - pathname: accessorDescriptor(getPathname, function (pathname) { - var url = getInternalURLState(this); - if (url.cannotBeABaseURL) return; - url.path = []; - parseURL(url, pathname + '', PATH_START); - }), - // `URL.prototype.search` accessors pair - // https://url.spec.whatwg.org/#dom-url-search - search: accessorDescriptor(getSearch, function (search) { - var url = getInternalURLState(this); - search = String(search); - if (search == '') { - url.query = null; - } else { - if ('?' == search.charAt(0)) search = search.slice(1); - url.query = ''; - parseURL(url, search, QUERY); - } - getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); - }), - // `URL.prototype.searchParams` getter - // https://url.spec.whatwg.org/#dom-url-searchparams - searchParams: accessorDescriptor(getSearchParams), - // `URL.prototype.hash` accessors pair - // https://url.spec.whatwg.org/#dom-url-hash - hash: accessorDescriptor(getHash, function (hash) { - var url = getInternalURLState(this); - hash = String(hash); - if (hash == '') { - url.fragment = null; - return; - } - if ('#' == hash.charAt(0)) hash = hash.slice(1); - url.fragment = ''; - parseURL(url, hash, FRAGMENT); - }) - }); -} - -// `URL.prototype.toJSON` method -// https://url.spec.whatwg.org/#dom-url-tojson -redefine(URLPrototype, 'toJSON', function toJSON() { - return serializeURL.call(this); -}, { enumerable: true }); - -// `URL.prototype.toString` method -// https://url.spec.whatwg.org/#URL-stringification-behavior -redefine(URLPrototype, 'toString', function toString() { - return serializeURL.call(this); -}, { enumerable: true }); - -if (NativeURL) { - var nativeCreateObjectURL = NativeURL.createObjectURL; - var nativeRevokeObjectURL = NativeURL.revokeObjectURL; - // `URL.createObjectURL` method - // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL - // eslint-disable-next-line no-unused-vars - if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) { - return nativeCreateObjectURL.apply(NativeURL, arguments); - }); - // `URL.revokeObjectURL` method - // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL - // eslint-disable-next-line no-unused-vars - if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) { - return nativeRevokeObjectURL.apply(NativeURL, arguments); - }); -} - -setToStringTag(URLConstructor, 'URL'); - -$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, { - URL: URLConstructor -}); diff --git a/node_modules/core-js-pure/modules/web.url.to-json.js b/node_modules/core-js-pure/modules/web.url.to-json.js deleted file mode 100644 index 8b1a3937..00000000 --- a/node_modules/core-js-pure/modules/web.url.to-json.js +++ /dev/null @@ -1 +0,0 @@ -// empty diff --git a/node_modules/core-js-pure/package.json b/node_modules/core-js-pure/package.json deleted file mode 100644 index b93d00a9..00000000 --- a/node_modules/core-js-pure/package.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "name": "core-js-pure", - "description": "Standard library", - "version": "3.6.4", - "repository": { - "type": "git", - "url": "https://github.com/zloirock/core-js.git" - }, - "main": "index.js", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - }, - "license": "MIT", - "keywords": [ - "ES3", - "ES5", - "ES6", - "ES7", - "ES2015", - "ES2016", - "ES2017", - "ES2018", - "ES2019", - "ES2020", - "ECMAScript 3", - "ECMAScript 5", - "ECMAScript 6", - "ECMAScript 7", - "ECMAScript 2015", - "ECMAScript 2016", - "ECMAScript 2017", - "ECMAScript 2018", - "ECMAScript 2019", - "ECMAScript 2020", - "Harmony", - "Strawman", - "Map", - "Set", - "WeakMap", - "WeakSet", - "Promise", - "Observable", - "Symbol", - "TypedArray", - "URL", - "URLSearchParams", - "queueMicrotask", - "setImmediate", - "polyfill", - "ponyfill", - "shim" - ], - "scripts": { - "postinstall": "node -e \"try{require('./postinstall')}catch(e){}\"" - } -} diff --git a/node_modules/core-js-pure/postinstall.js b/node_modules/core-js-pure/postinstall.js deleted file mode 100644 index fcb8d3cb..00000000 --- a/node_modules/core-js-pure/postinstall.js +++ /dev/null @@ -1,56 +0,0 @@ -/* eslint-disable max-len */ -var fs = require('fs'); -var os = require('os'); -var path = require('path'); -var env = process.env; - -var ADBLOCK = is(env.ADBLOCK); -var COLOR = is(env.npm_config_color); -var DISABLE_OPENCOLLECTIVE = is(env.DISABLE_OPENCOLLECTIVE); -var SILENT = ['silent', 'error', 'warn'].indexOf(env.npm_config_loglevel) !== -1; -var MINUTE = 60 * 1000; - -// you could add a PR with an env variable for your CI detection -var CI = [ - 'BUILD_NUMBER', - 'CI', - 'CONTINUOUS_INTEGRATION', - 'RUN_ID' -].some(function (it) { return is(env[it]); }); - -var BANNER = '\u001B[96mThank you for using core-js (\u001B[94m https://github.com/zloirock/core-js \u001B[96m) for polyfilling JavaScript standard library!\u001B[0m\n\n' + - '\u001B[96mThe project needs your help! Please consider supporting of core-js on Open Collective or Patreon: \u001B[0m\n' + - '\u001B[96m>\u001B[94m https://opencollective.com/core-js \u001B[0m\n' + - '\u001B[96m>\u001B[94m https://www.patreon.com/zloirock \u001B[0m\n\n' + - '\u001B[96mAlso, the author of core-js (\u001B[94m https://github.com/zloirock \u001B[96m) is looking for a good job -)\u001B[0m\n'; - -function is(it) { - return !!it && it !== '0' && it !== 'false'; -} - -function isBannerRequired() { - if (ADBLOCK || CI || DISABLE_OPENCOLLECTIVE || SILENT) return false; - var file = path.join(os.tmpdir(), 'core-js-banners'); - var banners = []; - try { - var DELTA = Date.now() - fs.statSync(file).mtime; - if (DELTA >= 0 && DELTA < MINUTE * 3) { - banners = JSON.parse(fs.readFileSync(file, 'utf8')); - if (banners.indexOf(BANNER) !== -1) return false; - } - } catch (error) { - banners = []; - } - try { - banners.push(BANNER); - fs.writeFileSync(file, JSON.stringify(banners), 'utf8'); - } catch (error) { /* empty */ } - return true; -} - -function showBanner() { - // eslint-disable-next-line no-console,no-control-regex - console.log(COLOR ? BANNER : BANNER.replace(/\u001B\[\d+m/g, '')); -} - -if (isBannerRequired()) showBanner(); diff --git a/node_modules/core-js-pure/proposals/array-is-template-object.js b/node_modules/core-js-pure/proposals/array-is-template-object.js deleted file mode 100644 index 37388c4d..00000000 --- a/node_modules/core-js-pure/proposals/array-is-template-object.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.array.is-template-object'); diff --git a/node_modules/core-js-pure/proposals/array-last.js b/node_modules/core-js-pure/proposals/array-last.js deleted file mode 100644 index c6710312..00000000 --- a/node_modules/core-js-pure/proposals/array-last.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/esnext.array.last-index'); -require('../modules/esnext.array.last-item'); diff --git a/node_modules/core-js-pure/proposals/collection-methods.js b/node_modules/core-js-pure/proposals/collection-methods.js deleted file mode 100644 index 3acb8c08..00000000 --- a/node_modules/core-js-pure/proposals/collection-methods.js +++ /dev/null @@ -1,27 +0,0 @@ -require('../modules/esnext.map.group-by'); -require('../modules/esnext.map.key-by'); -require('../modules/esnext.map.delete-all'); -require('../modules/esnext.map.every'); -require('../modules/esnext.map.filter'); -require('../modules/esnext.map.find'); -require('../modules/esnext.map.find-key'); -require('../modules/esnext.map.includes'); -require('../modules/esnext.map.key-of'); -require('../modules/esnext.map.map-keys'); -require('../modules/esnext.map.map-values'); -require('../modules/esnext.map.merge'); -require('../modules/esnext.map.reduce'); -require('../modules/esnext.map.some'); -require('../modules/esnext.map.update'); -require('../modules/esnext.set.add-all'); -require('../modules/esnext.set.delete-all'); -require('../modules/esnext.set.every'); -require('../modules/esnext.set.filter'); -require('../modules/esnext.set.find'); -require('../modules/esnext.set.join'); -require('../modules/esnext.set.map'); -require('../modules/esnext.set.reduce'); -require('../modules/esnext.set.some'); -require('../modules/esnext.weak-map.delete-all'); -require('../modules/esnext.weak-set.add-all'); -require('../modules/esnext.weak-set.delete-all'); diff --git a/node_modules/core-js-pure/proposals/collection-of-from.js b/node_modules/core-js-pure/proposals/collection-of-from.js deleted file mode 100644 index ade30003..00000000 --- a/node_modules/core-js-pure/proposals/collection-of-from.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../modules/esnext.map.from'); -require('../modules/esnext.map.of'); -require('../modules/esnext.set.from'); -require('../modules/esnext.set.of'); -require('../modules/esnext.weak-map.from'); -require('../modules/esnext.weak-map.of'); -require('../modules/esnext.weak-set.from'); -require('../modules/esnext.weak-set.of'); diff --git a/node_modules/core-js-pure/proposals/efficient-64-bit-arithmetic.js b/node_modules/core-js-pure/proposals/efficient-64-bit-arithmetic.js deleted file mode 100644 index 71d40dcb..00000000 --- a/node_modules/core-js-pure/proposals/efficient-64-bit-arithmetic.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/esnext.math.iaddh'); -require('../modules/esnext.math.isubh'); -require('../modules/esnext.math.imulh'); -require('../modules/esnext.math.umulh'); diff --git a/node_modules/core-js-pure/proposals/global-this.js b/node_modules/core-js-pure/proposals/global-this.js deleted file mode 100644 index 4cb0f5c5..00000000 --- a/node_modules/core-js-pure/proposals/global-this.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/esnext.global-this'); -var global = require('../internals/global'); - -module.exports = global; diff --git a/node_modules/core-js-pure/proposals/index.js b/node_modules/core-js-pure/proposals/index.js deleted file mode 100644 index b87a7490..00000000 --- a/node_modules/core-js-pure/proposals/index.js +++ /dev/null @@ -1 +0,0 @@ -require('../stage'); diff --git a/node_modules/core-js-pure/proposals/iterator-helpers.js b/node_modules/core-js-pure/proposals/iterator-helpers.js deleted file mode 100644 index 001a1696..00000000 --- a/node_modules/core-js-pure/proposals/iterator-helpers.js +++ /dev/null @@ -1,28 +0,0 @@ -require('../modules/esnext.async-iterator.constructor'); -require('../modules/esnext.async-iterator.as-indexed-pairs'); -require('../modules/esnext.async-iterator.drop'); -require('../modules/esnext.async-iterator.every'); -require('../modules/esnext.async-iterator.filter'); -require('../modules/esnext.async-iterator.find'); -require('../modules/esnext.async-iterator.flat-map'); -require('../modules/esnext.async-iterator.for-each'); -require('../modules/esnext.async-iterator.from'); -require('../modules/esnext.async-iterator.map'); -require('../modules/esnext.async-iterator.reduce'); -require('../modules/esnext.async-iterator.some'); -require('../modules/esnext.async-iterator.take'); -require('../modules/esnext.async-iterator.to-array'); -require('../modules/esnext.iterator.constructor'); -require('../modules/esnext.iterator.as-indexed-pairs'); -require('../modules/esnext.iterator.drop'); -require('../modules/esnext.iterator.every'); -require('../modules/esnext.iterator.filter'); -require('../modules/esnext.iterator.find'); -require('../modules/esnext.iterator.flat-map'); -require('../modules/esnext.iterator.for-each'); -require('../modules/esnext.iterator.from'); -require('../modules/esnext.iterator.map'); -require('../modules/esnext.iterator.reduce'); -require('../modules/esnext.iterator.some'); -require('../modules/esnext.iterator.take'); -require('../modules/esnext.iterator.to-array'); diff --git a/node_modules/core-js-pure/proposals/keys-composition.js b/node_modules/core-js-pure/proposals/keys-composition.js deleted file mode 100644 index 47f5e2ed..00000000 --- a/node_modules/core-js-pure/proposals/keys-composition.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/esnext.composite-key'); -require('../modules/esnext.composite-symbol'); diff --git a/node_modules/core-js-pure/proposals/map-update-or-insert.js b/node_modules/core-js-pure/proposals/map-update-or-insert.js deleted file mode 100644 index 28603018..00000000 --- a/node_modules/core-js-pure/proposals/map-update-or-insert.js +++ /dev/null @@ -1,2 +0,0 @@ -// TODO: remove from `core-js@4` -require('./map-upsert'); diff --git a/node_modules/core-js-pure/proposals/map-upsert.js b/node_modules/core-js-pure/proposals/map-upsert.js deleted file mode 100644 index ee94275f..00000000 --- a/node_modules/core-js-pure/proposals/map-upsert.js +++ /dev/null @@ -1,5 +0,0 @@ -// https://github.com/thumbsupep/proposal-upsert -// TODO: remove from `core-js@4` -require('../modules/esnext.map.update-or-insert'); -require('../modules/esnext.map.upsert'); -require('../modules/esnext.weak-map.upsert'); diff --git a/node_modules/core-js-pure/proposals/math-extensions.js b/node_modules/core-js-pure/proposals/math-extensions.js deleted file mode 100644 index 80d86af3..00000000 --- a/node_modules/core-js-pure/proposals/math-extensions.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../modules/esnext.math.clamp'); -require('../modules/esnext.math.deg-per-rad'); -require('../modules/esnext.math.degrees'); -require('../modules/esnext.math.fscale'); -require('../modules/esnext.math.rad-per-deg'); -require('../modules/esnext.math.radians'); -require('../modules/esnext.math.scale'); diff --git a/node_modules/core-js-pure/proposals/math-signbit.js b/node_modules/core-js-pure/proposals/math-signbit.js deleted file mode 100644 index e0a51d17..00000000 --- a/node_modules/core-js-pure/proposals/math-signbit.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.math.signbit'); diff --git a/node_modules/core-js-pure/proposals/number-from-string.js b/node_modules/core-js-pure/proposals/number-from-string.js deleted file mode 100644 index 094d0842..00000000 --- a/node_modules/core-js-pure/proposals/number-from-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.number.from-string'); diff --git a/node_modules/core-js-pure/proposals/object-iteration.js b/node_modules/core-js-pure/proposals/object-iteration.js deleted file mode 100644 index 03615154..00000000 --- a/node_modules/core-js-pure/proposals/object-iteration.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../modules/esnext.object.iterate-entries'); -require('../modules/esnext.object.iterate-keys'); -require('../modules/esnext.object.iterate-values'); diff --git a/node_modules/core-js-pure/proposals/observable.js b/node_modules/core-js-pure/proposals/observable.js deleted file mode 100644 index cf591564..00000000 --- a/node_modules/core-js-pure/proposals/observable.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/esnext.observable'); -require('../modules/esnext.symbol.observable'); diff --git a/node_modules/core-js-pure/proposals/pattern-matching.js b/node_modules/core-js-pure/proposals/pattern-matching.js deleted file mode 100644 index d5fce707..00000000 --- a/node_modules/core-js-pure/proposals/pattern-matching.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.symbol.pattern-match'); diff --git a/node_modules/core-js-pure/proposals/promise-all-settled.js b/node_modules/core-js-pure/proposals/promise-all-settled.js deleted file mode 100644 index ae35910d..00000000 --- a/node_modules/core-js-pure/proposals/promise-all-settled.js +++ /dev/null @@ -1,2 +0,0 @@ -// TODO: Remove from `core-js@4` -require('../modules/esnext.promise.all-settled'); diff --git a/node_modules/core-js-pure/proposals/promise-any.js b/node_modules/core-js-pure/proposals/promise-any.js deleted file mode 100644 index 9e147363..00000000 --- a/node_modules/core-js-pure/proposals/promise-any.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/esnext.aggregate-error'); -require('../modules/esnext.promise.any'); diff --git a/node_modules/core-js-pure/proposals/promise-try.js b/node_modules/core-js-pure/proposals/promise-try.js deleted file mode 100644 index ce5aca5f..00000000 --- a/node_modules/core-js-pure/proposals/promise-try.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.promise.try'); diff --git a/node_modules/core-js-pure/proposals/reflect-metadata.js b/node_modules/core-js-pure/proposals/reflect-metadata.js deleted file mode 100644 index 512b1f25..00000000 --- a/node_modules/core-js-pure/proposals/reflect-metadata.js +++ /dev/null @@ -1,9 +0,0 @@ -require('../modules/esnext.reflect.define-metadata'); -require('../modules/esnext.reflect.delete-metadata'); -require('../modules/esnext.reflect.get-metadata'); -require('../modules/esnext.reflect.get-metadata-keys'); -require('../modules/esnext.reflect.get-own-metadata'); -require('../modules/esnext.reflect.get-own-metadata-keys'); -require('../modules/esnext.reflect.has-metadata'); -require('../modules/esnext.reflect.has-own-metadata'); -require('../modules/esnext.reflect.metadata'); diff --git a/node_modules/core-js-pure/proposals/seeded-random.js b/node_modules/core-js-pure/proposals/seeded-random.js deleted file mode 100644 index 5bbd9049..00000000 --- a/node_modules/core-js-pure/proposals/seeded-random.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.math.seeded-prng'); diff --git a/node_modules/core-js-pure/proposals/set-methods.js b/node_modules/core-js-pure/proposals/set-methods.js deleted file mode 100644 index 81054609..00000000 --- a/node_modules/core-js-pure/proposals/set-methods.js +++ /dev/null @@ -1,7 +0,0 @@ -require('../modules/esnext.set.difference'); -require('../modules/esnext.set.intersection'); -require('../modules/esnext.set.is-disjoint-from'); -require('../modules/esnext.set.is-subset-of'); -require('../modules/esnext.set.is-superset-of'); -require('../modules/esnext.set.union'); -require('../modules/esnext.set.symmetric-difference'); diff --git a/node_modules/core-js-pure/proposals/string-at.js b/node_modules/core-js-pure/proposals/string-at.js deleted file mode 100644 index e992e58d..00000000 --- a/node_modules/core-js-pure/proposals/string-at.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.string.at'); diff --git a/node_modules/core-js-pure/proposals/string-code-points.js b/node_modules/core-js-pure/proposals/string-code-points.js deleted file mode 100644 index 3717523e..00000000 --- a/node_modules/core-js-pure/proposals/string-code-points.js +++ /dev/null @@ -1 +0,0 @@ -require('../modules/esnext.string.code-points'); diff --git a/node_modules/core-js-pure/proposals/string-match-all.js b/node_modules/core-js-pure/proposals/string-match-all.js deleted file mode 100644 index be5ba60e..00000000 --- a/node_modules/core-js-pure/proposals/string-match-all.js +++ /dev/null @@ -1,2 +0,0 @@ -// TODO: Remove from `core-js@4` -require('../modules/esnext.string.match-all'); diff --git a/node_modules/core-js-pure/proposals/string-replace-all.js b/node_modules/core-js-pure/proposals/string-replace-all.js deleted file mode 100644 index c36697d7..00000000 --- a/node_modules/core-js-pure/proposals/string-replace-all.js +++ /dev/null @@ -1,2 +0,0 @@ -require('../modules/esnext.string.replace-all'); -require('../modules/esnext.symbol.replace-all'); diff --git a/node_modules/core-js-pure/proposals/url.js b/node_modules/core-js-pure/proposals/url.js deleted file mode 100644 index 151dfab9..00000000 --- a/node_modules/core-js-pure/proposals/url.js +++ /dev/null @@ -1,3 +0,0 @@ -require('../modules/web.url'); -require('../modules/web.url.to-json'); -require('../modules/web.url-search-params'); diff --git a/node_modules/core-js-pure/proposals/using-statement.js b/node_modules/core-js-pure/proposals/using-statement.js deleted file mode 100644 index 2ac3df7f..00000000 --- a/node_modules/core-js-pure/proposals/using-statement.js +++ /dev/null @@ -1,3 +0,0 @@ -// https://github.com/tc39/proposal-using-statement -require('../modules/esnext.symbol.async-dispose'); -require('../modules/esnext.symbol.dispose'); diff --git a/node_modules/core-js-pure/stable/README.md b/node_modules/core-js-pure/stable/README.md deleted file mode 100644 index 903150c4..00000000 --- a/node_modules/core-js-pure/stable/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains entry points for all stable `core-js` features with dependencies. It's the recommended way for usage only required features. diff --git a/node_modules/core-js-pure/stable/array-buffer/constructor.js b/node_modules/core-js-pure/stable/array-buffer/constructor.js deleted file mode 100644 index 14f239df..00000000 --- a/node_modules/core-js-pure/stable/array-buffer/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer/constructor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array-buffer/index.js b/node_modules/core-js-pure/stable/array-buffer/index.js deleted file mode 100644 index cb81bbc6..00000000 --- a/node_modules/core-js-pure/stable/array-buffer/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array-buffer/is-view.js b/node_modules/core-js-pure/stable/array-buffer/is-view.js deleted file mode 100644 index 02091ec1..00000000 --- a/node_modules/core-js-pure/stable/array-buffer/is-view.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer/is-view'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array-buffer/slice.js b/node_modules/core-js-pure/stable/array-buffer/slice.js deleted file mode 100644 index 1259ebfc..00000000 --- a/node_modules/core-js-pure/stable/array-buffer/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array-buffer/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/concat.js b/node_modules/core-js-pure/stable/array/concat.js deleted file mode 100644 index 56c0625c..00000000 --- a/node_modules/core-js-pure/stable/array/concat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/concat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/copy-within.js b/node_modules/core-js-pure/stable/array/copy-within.js deleted file mode 100644 index 3db53613..00000000 --- a/node_modules/core-js-pure/stable/array/copy-within.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/copy-within'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/entries.js b/node_modules/core-js-pure/stable/array/entries.js deleted file mode 100644 index 735b6071..00000000 --- a/node_modules/core-js-pure/stable/array/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/every.js b/node_modules/core-js-pure/stable/array/every.js deleted file mode 100644 index 8831dbce..00000000 --- a/node_modules/core-js-pure/stable/array/every.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/every'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/fill.js b/node_modules/core-js-pure/stable/array/fill.js deleted file mode 100644 index b640ccd4..00000000 --- a/node_modules/core-js-pure/stable/array/fill.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/fill'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/filter.js b/node_modules/core-js-pure/stable/array/filter.js deleted file mode 100644 index c6fe56a4..00000000 --- a/node_modules/core-js-pure/stable/array/filter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/filter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/find-index.js b/node_modules/core-js-pure/stable/array/find-index.js deleted file mode 100644 index 312a7df8..00000000 --- a/node_modules/core-js-pure/stable/array/find-index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/find-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/find.js b/node_modules/core-js-pure/stable/array/find.js deleted file mode 100644 index 2fc46a5b..00000000 --- a/node_modules/core-js-pure/stable/array/find.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/find'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/flat-map.js b/node_modules/core-js-pure/stable/array/flat-map.js deleted file mode 100644 index 8e3e81a8..00000000 --- a/node_modules/core-js-pure/stable/array/flat-map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/flat-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/flat.js b/node_modules/core-js-pure/stable/array/flat.js deleted file mode 100644 index f74816e9..00000000 --- a/node_modules/core-js-pure/stable/array/flat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/flat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/for-each.js b/node_modules/core-js-pure/stable/array/for-each.js deleted file mode 100644 index a99f12c3..00000000 --- a/node_modules/core-js-pure/stable/array/for-each.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/from.js b/node_modules/core-js-pure/stable/array/from.js deleted file mode 100644 index 9142d6ec..00000000 --- a/node_modules/core-js-pure/stable/array/from.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/from'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/includes.js b/node_modules/core-js-pure/stable/array/includes.js deleted file mode 100644 index 52f040d8..00000000 --- a/node_modules/core-js-pure/stable/array/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/index-of.js b/node_modules/core-js-pure/stable/array/index-of.js deleted file mode 100644 index 13b63f1f..00000000 --- a/node_modules/core-js-pure/stable/array/index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/index.js b/node_modules/core-js-pure/stable/array/index.js deleted file mode 100644 index 570f987c..00000000 --- a/node_modules/core-js-pure/stable/array/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/is-array.js b/node_modules/core-js-pure/stable/array/is-array.js deleted file mode 100644 index 89080ec8..00000000 --- a/node_modules/core-js-pure/stable/array/is-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/is-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/iterator.js b/node_modules/core-js-pure/stable/array/iterator.js deleted file mode 100644 index bfa833f7..00000000 --- a/node_modules/core-js-pure/stable/array/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/join.js b/node_modules/core-js-pure/stable/array/join.js deleted file mode 100644 index 74fbfc64..00000000 --- a/node_modules/core-js-pure/stable/array/join.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/join'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/keys.js b/node_modules/core-js-pure/stable/array/keys.js deleted file mode 100644 index 40b2e759..00000000 --- a/node_modules/core-js-pure/stable/array/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/last-index-of.js b/node_modules/core-js-pure/stable/array/last-index-of.js deleted file mode 100644 index bdcd762b..00000000 --- a/node_modules/core-js-pure/stable/array/last-index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/last-index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/map.js b/node_modules/core-js-pure/stable/array/map.js deleted file mode 100644 index 3768704f..00000000 --- a/node_modules/core-js-pure/stable/array/map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/of.js b/node_modules/core-js-pure/stable/array/of.js deleted file mode 100644 index d5b74f13..00000000 --- a/node_modules/core-js-pure/stable/array/of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/reduce-right.js b/node_modules/core-js-pure/stable/array/reduce-right.js deleted file mode 100644 index f93b6ded..00000000 --- a/node_modules/core-js-pure/stable/array/reduce-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/reduce-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/reduce.js b/node_modules/core-js-pure/stable/array/reduce.js deleted file mode 100644 index a3ae7b1c..00000000 --- a/node_modules/core-js-pure/stable/array/reduce.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/reduce'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/reverse.js b/node_modules/core-js-pure/stable/array/reverse.js deleted file mode 100644 index fc9faf10..00000000 --- a/node_modules/core-js-pure/stable/array/reverse.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/reverse'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/slice.js b/node_modules/core-js-pure/stable/array/slice.js deleted file mode 100644 index 2c098bd7..00000000 --- a/node_modules/core-js-pure/stable/array/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/some.js b/node_modules/core-js-pure/stable/array/some.js deleted file mode 100644 index a198c0e0..00000000 --- a/node_modules/core-js-pure/stable/array/some.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/some'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/sort.js b/node_modules/core-js-pure/stable/array/sort.js deleted file mode 100644 index 5741a92b..00000000 --- a/node_modules/core-js-pure/stable/array/sort.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/sort'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/splice.js b/node_modules/core-js-pure/stable/array/splice.js deleted file mode 100644 index e5aeb464..00000000 --- a/node_modules/core-js-pure/stable/array/splice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/splice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/values.js b/node_modules/core-js-pure/stable/array/values.js deleted file mode 100644 index 146bce32..00000000 --- a/node_modules/core-js-pure/stable/array/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/array/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/concat.js b/node_modules/core-js-pure/stable/array/virtual/concat.js deleted file mode 100644 index 9c9481bc..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/concat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/concat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/copy-within.js b/node_modules/core-js-pure/stable/array/virtual/copy-within.js deleted file mode 100644 index 7d43d5cd..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/copy-within.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/copy-within'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/entries.js b/node_modules/core-js-pure/stable/array/virtual/entries.js deleted file mode 100644 index 008e164d..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/every.js b/node_modules/core-js-pure/stable/array/virtual/every.js deleted file mode 100644 index 3c661eb2..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/every.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/every'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/fill.js b/node_modules/core-js-pure/stable/array/virtual/fill.js deleted file mode 100644 index b0a3b0e1..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/fill.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/fill'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/filter.js b/node_modules/core-js-pure/stable/array/virtual/filter.js deleted file mode 100644 index b78f806c..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/filter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/filter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/find-index.js b/node_modules/core-js-pure/stable/array/virtual/find-index.js deleted file mode 100644 index 0be7653b..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/find-index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/find-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/find.js b/node_modules/core-js-pure/stable/array/virtual/find.js deleted file mode 100644 index 0f28d7c0..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/find.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/find'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/flat-map.js b/node_modules/core-js-pure/stable/array/virtual/flat-map.js deleted file mode 100644 index 5adc39bf..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/flat-map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/flat-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/flat.js b/node_modules/core-js-pure/stable/array/virtual/flat.js deleted file mode 100644 index cfafee66..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/flat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/flat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/for-each.js b/node_modules/core-js-pure/stable/array/virtual/for-each.js deleted file mode 100644 index ca081fbc..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/for-each.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/includes.js b/node_modules/core-js-pure/stable/array/virtual/includes.js deleted file mode 100644 index fc9bb008..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/index-of.js b/node_modules/core-js-pure/stable/array/virtual/index-of.js deleted file mode 100644 index aedd505a..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/index.js b/node_modules/core-js-pure/stable/array/virtual/index.js deleted file mode 100644 index 98d47187..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/iterator.js b/node_modules/core-js-pure/stable/array/virtual/iterator.js deleted file mode 100644 index 81ca2a20..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/join.js b/node_modules/core-js-pure/stable/array/virtual/join.js deleted file mode 100644 index fe784ef9..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/join.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/join'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/keys.js b/node_modules/core-js-pure/stable/array/virtual/keys.js deleted file mode 100644 index 6ed98ec4..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/last-index-of.js b/node_modules/core-js-pure/stable/array/virtual/last-index-of.js deleted file mode 100644 index 697d588f..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/last-index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/last-index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/map.js b/node_modules/core-js-pure/stable/array/virtual/map.js deleted file mode 100644 index 94759764..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/reduce-right.js b/node_modules/core-js-pure/stable/array/virtual/reduce-right.js deleted file mode 100644 index cf39fcad..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/reduce-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/reduce-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/reduce.js b/node_modules/core-js-pure/stable/array/virtual/reduce.js deleted file mode 100644 index 5a08269a..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/reduce.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/reduce'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/reverse.js b/node_modules/core-js-pure/stable/array/virtual/reverse.js deleted file mode 100644 index 099d13ea..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/reverse.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/reverse'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/slice.js b/node_modules/core-js-pure/stable/array/virtual/slice.js deleted file mode 100644 index f308e007..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/some.js b/node_modules/core-js-pure/stable/array/virtual/some.js deleted file mode 100644 index d41a8e7e..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/some.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/some'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/sort.js b/node_modules/core-js-pure/stable/array/virtual/sort.js deleted file mode 100644 index 5da0daa8..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/sort.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/sort'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/splice.js b/node_modules/core-js-pure/stable/array/virtual/splice.js deleted file mode 100644 index 4cbb4941..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/splice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/splice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/array/virtual/values.js b/node_modules/core-js-pure/stable/array/virtual/values.js deleted file mode 100644 index ebb63759..00000000 --- a/node_modules/core-js-pure/stable/array/virtual/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/array/virtual/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/clear-immediate.js b/node_modules/core-js-pure/stable/clear-immediate.js deleted file mode 100644 index 8fbfd129..00000000 --- a/node_modules/core-js-pure/stable/clear-immediate.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.immediate'); -var path = require('../internals/path'); - -module.exports = path.clearImmediate; diff --git a/node_modules/core-js-pure/stable/data-view/index.js b/node_modules/core-js-pure/stable/data-view/index.js deleted file mode 100644 index 03872951..00000000 --- a/node_modules/core-js-pure/stable/data-view/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/data-view'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/date/index.js b/node_modules/core-js-pure/stable/date/index.js deleted file mode 100644 index e9bde083..00000000 --- a/node_modules/core-js-pure/stable/date/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/date/now.js b/node_modules/core-js-pure/stable/date/now.js deleted file mode 100644 index a4d84857..00000000 --- a/node_modules/core-js-pure/stable/date/now.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/now'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/date/to-iso-string.js b/node_modules/core-js-pure/stable/date/to-iso-string.js deleted file mode 100644 index a6e6a7fa..00000000 --- a/node_modules/core-js-pure/stable/date/to-iso-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-iso-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/date/to-json.js b/node_modules/core-js-pure/stable/date/to-json.js deleted file mode 100644 index 23e8b0c2..00000000 --- a/node_modules/core-js-pure/stable/date/to-json.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-json'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/date/to-primitive.js b/node_modules/core-js-pure/stable/date/to-primitive.js deleted file mode 100644 index 193421dc..00000000 --- a/node_modules/core-js-pure/stable/date/to-primitive.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-primitive'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/date/to-string.js b/node_modules/core-js-pure/stable/date/to-string.js deleted file mode 100644 index f5c95920..00000000 --- a/node_modules/core-js-pure/stable/date/to-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/date/to-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/dom-collections/for-each.js b/node_modules/core-js-pure/stable/dom-collections/for-each.js deleted file mode 100644 index 3414fd7b..00000000 --- a/node_modules/core-js-pure/stable/dom-collections/for-each.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../../modules/web.dom-collections.for-each'); - -var parent = require('../../internals/array-for-each'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/dom-collections/index.js b/node_modules/core-js-pure/stable/dom-collections/index.js deleted file mode 100644 index 7d262cb6..00000000 --- a/node_modules/core-js-pure/stable/dom-collections/index.js +++ /dev/null @@ -1,12 +0,0 @@ -require('../../modules/web.dom-collections.for-each'); -require('../../modules/web.dom-collections.iterator'); -var ArrayIterators = require('../../modules/es.array.iterator'); -var forEach = require('../../internals/array-for-each'); - -module.exports = { - keys: ArrayIterators.keys, - values: ArrayIterators.values, - entries: ArrayIterators.entries, - iterator: ArrayIterators.values, - forEach: forEach -}; diff --git a/node_modules/core-js-pure/stable/dom-collections/iterator.js b/node_modules/core-js-pure/stable/dom-collections/iterator.js deleted file mode 100644 index 3bc1e900..00000000 --- a/node_modules/core-js-pure/stable/dom-collections/iterator.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../../modules/web.dom-collections.iterator'); -var entryUnbind = require('../../internals/entry-unbind'); - -module.exports = entryUnbind('Array', 'values'); diff --git a/node_modules/core-js-pure/stable/function/bind.js b/node_modules/core-js-pure/stable/function/bind.js deleted file mode 100644 index b916d678..00000000 --- a/node_modules/core-js-pure/stable/function/bind.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function/bind'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/function/has-instance.js b/node_modules/core-js-pure/stable/function/has-instance.js deleted file mode 100644 index 9538a80f..00000000 --- a/node_modules/core-js-pure/stable/function/has-instance.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function/has-instance'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/function/index.js b/node_modules/core-js-pure/stable/function/index.js deleted file mode 100644 index f906e2e7..00000000 --- a/node_modules/core-js-pure/stable/function/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/function/name.js b/node_modules/core-js-pure/stable/function/name.js deleted file mode 100644 index a7729f51..00000000 --- a/node_modules/core-js-pure/stable/function/name.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/function/name'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/function/virtual/bind.js b/node_modules/core-js-pure/stable/function/virtual/bind.js deleted file mode 100644 index e7b9a3b9..00000000 --- a/node_modules/core-js-pure/stable/function/virtual/bind.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/function/virtual/bind'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/function/virtual/index.js b/node_modules/core-js-pure/stable/function/virtual/index.js deleted file mode 100644 index 2282ff4b..00000000 --- a/node_modules/core-js-pure/stable/function/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/function/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/global-this.js b/node_modules/core-js-pure/stable/global-this.js deleted file mode 100644 index b225b09a..00000000 --- a/node_modules/core-js-pure/stable/global-this.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../es/global-this'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/index.js b/node_modules/core-js-pure/stable/index.js deleted file mode 100644 index f0dc4705..00000000 --- a/node_modules/core-js-pure/stable/index.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../es'); -require('../web'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/stable/instance/bind.js b/node_modules/core-js-pure/stable/instance/bind.js deleted file mode 100644 index acb6bbec..00000000 --- a/node_modules/core-js-pure/stable/instance/bind.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/bind'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/code-point-at.js b/node_modules/core-js-pure/stable/instance/code-point-at.js deleted file mode 100644 index 1d4435e9..00000000 --- a/node_modules/core-js-pure/stable/instance/code-point-at.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/code-point-at'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/concat.js b/node_modules/core-js-pure/stable/instance/concat.js deleted file mode 100644 index 874d87de..00000000 --- a/node_modules/core-js-pure/stable/instance/concat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/concat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/copy-within.js b/node_modules/core-js-pure/stable/instance/copy-within.js deleted file mode 100644 index 9d472b0f..00000000 --- a/node_modules/core-js-pure/stable/instance/copy-within.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/copy-within'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/ends-with.js b/node_modules/core-js-pure/stable/instance/ends-with.js deleted file mode 100644 index aaf2c16e..00000000 --- a/node_modules/core-js-pure/stable/instance/ends-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/ends-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/entries.js b/node_modules/core-js-pure/stable/instance/entries.js deleted file mode 100644 index 080b8143..00000000 --- a/node_modules/core-js-pure/stable/instance/entries.js +++ /dev/null @@ -1,16 +0,0 @@ -require('../../modules/web.dom-collections.iterator'); -var entries = require('../array/virtual/entries'); -var classof = require('../../internals/classof'); -var ArrayPrototype = Array.prototype; - -var DOMIterables = { - DOMTokenList: true, - NodeList: true -}; - -module.exports = function (it) { - var own = it.entries; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.entries) - // eslint-disable-next-line no-prototype-builtins - || DOMIterables.hasOwnProperty(classof(it)) ? entries : own; -}; diff --git a/node_modules/core-js-pure/stable/instance/every.js b/node_modules/core-js-pure/stable/instance/every.js deleted file mode 100644 index 3dc42963..00000000 --- a/node_modules/core-js-pure/stable/instance/every.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/every'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/fill.js b/node_modules/core-js-pure/stable/instance/fill.js deleted file mode 100644 index 4e38c42e..00000000 --- a/node_modules/core-js-pure/stable/instance/fill.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/fill'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/filter.js b/node_modules/core-js-pure/stable/instance/filter.js deleted file mode 100644 index 5219c648..00000000 --- a/node_modules/core-js-pure/stable/instance/filter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/filter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/find-index.js b/node_modules/core-js-pure/stable/instance/find-index.js deleted file mode 100644 index b2073640..00000000 --- a/node_modules/core-js-pure/stable/instance/find-index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/find-index'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/find.js b/node_modules/core-js-pure/stable/instance/find.js deleted file mode 100644 index 024fc815..00000000 --- a/node_modules/core-js-pure/stable/instance/find.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/find'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/flags.js b/node_modules/core-js-pure/stable/instance/flags.js deleted file mode 100644 index 064c9ec3..00000000 --- a/node_modules/core-js-pure/stable/instance/flags.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/flags'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/flat-map.js b/node_modules/core-js-pure/stable/instance/flat-map.js deleted file mode 100644 index bea3d82e..00000000 --- a/node_modules/core-js-pure/stable/instance/flat-map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/flat-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/flat.js b/node_modules/core-js-pure/stable/instance/flat.js deleted file mode 100644 index d61b6ab2..00000000 --- a/node_modules/core-js-pure/stable/instance/flat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/flat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/for-each.js b/node_modules/core-js-pure/stable/instance/for-each.js deleted file mode 100644 index 1254e9f0..00000000 --- a/node_modules/core-js-pure/stable/instance/for-each.js +++ /dev/null @@ -1,16 +0,0 @@ -require('../../modules/web.dom-collections.iterator'); -var forEach = require('../array/virtual/for-each'); -var classof = require('../../internals/classof'); -var ArrayPrototype = Array.prototype; - -var DOMIterables = { - DOMTokenList: true, - NodeList: true -}; - -module.exports = function (it) { - var own = it.forEach; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.forEach) - // eslint-disable-next-line no-prototype-builtins - || DOMIterables.hasOwnProperty(classof(it)) ? forEach : own; -}; diff --git a/node_modules/core-js-pure/stable/instance/includes.js b/node_modules/core-js-pure/stable/instance/includes.js deleted file mode 100644 index 1bccfac3..00000000 --- a/node_modules/core-js-pure/stable/instance/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/index-of.js b/node_modules/core-js-pure/stable/instance/index-of.js deleted file mode 100644 index 8ddbaba1..00000000 --- a/node_modules/core-js-pure/stable/instance/index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/keys.js b/node_modules/core-js-pure/stable/instance/keys.js deleted file mode 100644 index b83acb78..00000000 --- a/node_modules/core-js-pure/stable/instance/keys.js +++ /dev/null @@ -1,16 +0,0 @@ -require('../../modules/web.dom-collections.iterator'); -var keys = require('../array/virtual/keys'); -var classof = require('../../internals/classof'); -var ArrayPrototype = Array.prototype; - -var DOMIterables = { - DOMTokenList: true, - NodeList: true -}; - -module.exports = function (it) { - var own = it.keys; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.keys) - // eslint-disable-next-line no-prototype-builtins - || DOMIterables.hasOwnProperty(classof(it)) ? keys : own; -}; diff --git a/node_modules/core-js-pure/stable/instance/last-index-of.js b/node_modules/core-js-pure/stable/instance/last-index-of.js deleted file mode 100644 index c8601881..00000000 --- a/node_modules/core-js-pure/stable/instance/last-index-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/last-index-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/map.js b/node_modules/core-js-pure/stable/instance/map.js deleted file mode 100644 index 1f18a092..00000000 --- a/node_modules/core-js-pure/stable/instance/map.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/match-all.js b/node_modules/core-js-pure/stable/instance/match-all.js deleted file mode 100644 index 54cc6bb6..00000000 --- a/node_modules/core-js-pure/stable/instance/match-all.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/pad-end.js b/node_modules/core-js-pure/stable/instance/pad-end.js deleted file mode 100644 index afe92b03..00000000 --- a/node_modules/core-js-pure/stable/instance/pad-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/pad-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/pad-start.js b/node_modules/core-js-pure/stable/instance/pad-start.js deleted file mode 100644 index 6a7db7d8..00000000 --- a/node_modules/core-js-pure/stable/instance/pad-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/pad-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/reduce-right.js b/node_modules/core-js-pure/stable/instance/reduce-right.js deleted file mode 100644 index 6a1bb34a..00000000 --- a/node_modules/core-js-pure/stable/instance/reduce-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/reduce-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/reduce.js b/node_modules/core-js-pure/stable/instance/reduce.js deleted file mode 100644 index 908e12ea..00000000 --- a/node_modules/core-js-pure/stable/instance/reduce.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/reduce'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/repeat.js b/node_modules/core-js-pure/stable/instance/repeat.js deleted file mode 100644 index 76f2f4c3..00000000 --- a/node_modules/core-js-pure/stable/instance/repeat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/repeat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/reverse.js b/node_modules/core-js-pure/stable/instance/reverse.js deleted file mode 100644 index ca634dcc..00000000 --- a/node_modules/core-js-pure/stable/instance/reverse.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/reverse'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/slice.js b/node_modules/core-js-pure/stable/instance/slice.js deleted file mode 100644 index 27226051..00000000 --- a/node_modules/core-js-pure/stable/instance/slice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/slice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/some.js b/node_modules/core-js-pure/stable/instance/some.js deleted file mode 100644 index 3cd6a8b6..00000000 --- a/node_modules/core-js-pure/stable/instance/some.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/some'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/sort.js b/node_modules/core-js-pure/stable/instance/sort.js deleted file mode 100644 index d06c4bb0..00000000 --- a/node_modules/core-js-pure/stable/instance/sort.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/sort'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/splice.js b/node_modules/core-js-pure/stable/instance/splice.js deleted file mode 100644 index 46da42c8..00000000 --- a/node_modules/core-js-pure/stable/instance/splice.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/splice'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/starts-with.js b/node_modules/core-js-pure/stable/instance/starts-with.js deleted file mode 100644 index f2e3a087..00000000 --- a/node_modules/core-js-pure/stable/instance/starts-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/starts-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/trim-end.js b/node_modules/core-js-pure/stable/instance/trim-end.js deleted file mode 100644 index 787e52ed..00000000 --- a/node_modules/core-js-pure/stable/instance/trim-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/trim-left.js b/node_modules/core-js-pure/stable/instance/trim-left.js deleted file mode 100644 index 7127d67a..00000000 --- a/node_modules/core-js-pure/stable/instance/trim-left.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-left'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/trim-right.js b/node_modules/core-js-pure/stable/instance/trim-right.js deleted file mode 100644 index 760567ed..00000000 --- a/node_modules/core-js-pure/stable/instance/trim-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/trim-start.js b/node_modules/core-js-pure/stable/instance/trim-start.js deleted file mode 100644 index 3c59472b..00000000 --- a/node_modules/core-js-pure/stable/instance/trim-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/trim.js b/node_modules/core-js-pure/stable/instance/trim.js deleted file mode 100644 index 4d994998..00000000 --- a/node_modules/core-js-pure/stable/instance/trim.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/instance/trim'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/instance/values.js b/node_modules/core-js-pure/stable/instance/values.js deleted file mode 100644 index febcba33..00000000 --- a/node_modules/core-js-pure/stable/instance/values.js +++ /dev/null @@ -1,16 +0,0 @@ -require('../../modules/web.dom-collections.iterator'); -var values = require('../array/virtual/values'); -var classof = require('../../internals/classof'); -var ArrayPrototype = Array.prototype; - -var DOMIterables = { - DOMTokenList: true, - NodeList: true -}; - -module.exports = function (it) { - var own = it.values; - return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.values) - // eslint-disable-next-line no-prototype-builtins - || DOMIterables.hasOwnProperty(classof(it)) ? values : own; -}; diff --git a/node_modules/core-js-pure/stable/json/index.js b/node_modules/core-js-pure/stable/json/index.js deleted file mode 100644 index c53da9f8..00000000 --- a/node_modules/core-js-pure/stable/json/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/json'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/json/stringify.js b/node_modules/core-js-pure/stable/json/stringify.js deleted file mode 100644 index d6d8c52c..00000000 --- a/node_modules/core-js-pure/stable/json/stringify.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/json/stringify'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/json/to-string-tag.js b/node_modules/core-js-pure/stable/json/to-string-tag.js deleted file mode 100644 index 53559566..00000000 --- a/node_modules/core-js-pure/stable/json/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/json/to-string-tag'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/map/index.js b/node_modules/core-js-pure/stable/map/index.js deleted file mode 100644 index 6ec56e83..00000000 --- a/node_modules/core-js-pure/stable/map/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/acosh.js b/node_modules/core-js-pure/stable/math/acosh.js deleted file mode 100644 index f039937d..00000000 --- a/node_modules/core-js-pure/stable/math/acosh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/acosh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/asinh.js b/node_modules/core-js-pure/stable/math/asinh.js deleted file mode 100644 index 95a302a4..00000000 --- a/node_modules/core-js-pure/stable/math/asinh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/asinh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/atanh.js b/node_modules/core-js-pure/stable/math/atanh.js deleted file mode 100644 index f1ebad75..00000000 --- a/node_modules/core-js-pure/stable/math/atanh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/atanh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/cbrt.js b/node_modules/core-js-pure/stable/math/cbrt.js deleted file mode 100644 index 2c1f8251..00000000 --- a/node_modules/core-js-pure/stable/math/cbrt.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/cbrt'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/clz32.js b/node_modules/core-js-pure/stable/math/clz32.js deleted file mode 100644 index a0ecd150..00000000 --- a/node_modules/core-js-pure/stable/math/clz32.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/clz32'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/cosh.js b/node_modules/core-js-pure/stable/math/cosh.js deleted file mode 100644 index bc8a11f7..00000000 --- a/node_modules/core-js-pure/stable/math/cosh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/cosh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/expm1.js b/node_modules/core-js-pure/stable/math/expm1.js deleted file mode 100644 index 0527f819..00000000 --- a/node_modules/core-js-pure/stable/math/expm1.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/expm1'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/fround.js b/node_modules/core-js-pure/stable/math/fround.js deleted file mode 100644 index 5caff7d5..00000000 --- a/node_modules/core-js-pure/stable/math/fround.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/fround'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/hypot.js b/node_modules/core-js-pure/stable/math/hypot.js deleted file mode 100644 index 3db8d789..00000000 --- a/node_modules/core-js-pure/stable/math/hypot.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/hypot'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/imul.js b/node_modules/core-js-pure/stable/math/imul.js deleted file mode 100644 index 4d31d248..00000000 --- a/node_modules/core-js-pure/stable/math/imul.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/imul'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/index.js b/node_modules/core-js-pure/stable/math/index.js deleted file mode 100644 index f563253a..00000000 --- a/node_modules/core-js-pure/stable/math/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/log10.js b/node_modules/core-js-pure/stable/math/log10.js deleted file mode 100644 index 07b9704e..00000000 --- a/node_modules/core-js-pure/stable/math/log10.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/log10'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/log1p.js b/node_modules/core-js-pure/stable/math/log1p.js deleted file mode 100644 index b31d7308..00000000 --- a/node_modules/core-js-pure/stable/math/log1p.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/log1p'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/log2.js b/node_modules/core-js-pure/stable/math/log2.js deleted file mode 100644 index 00db8a5b..00000000 --- a/node_modules/core-js-pure/stable/math/log2.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/log2'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/sign.js b/node_modules/core-js-pure/stable/math/sign.js deleted file mode 100644 index c7bef22f..00000000 --- a/node_modules/core-js-pure/stable/math/sign.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/sign'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/sinh.js b/node_modules/core-js-pure/stable/math/sinh.js deleted file mode 100644 index 96f8f8e1..00000000 --- a/node_modules/core-js-pure/stable/math/sinh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/sinh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/tanh.js b/node_modules/core-js-pure/stable/math/tanh.js deleted file mode 100644 index c9e8bb81..00000000 --- a/node_modules/core-js-pure/stable/math/tanh.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/tanh'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/to-string-tag.js b/node_modules/core-js-pure/stable/math/to-string-tag.js deleted file mode 100644 index 02faadf1..00000000 --- a/node_modules/core-js-pure/stable/math/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/to-string-tag'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/math/trunc.js b/node_modules/core-js-pure/stable/math/trunc.js deleted file mode 100644 index 7635c175..00000000 --- a/node_modules/core-js-pure/stable/math/trunc.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/math/trunc'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/constructor.js b/node_modules/core-js-pure/stable/number/constructor.js deleted file mode 100644 index 6b5836e5..00000000 --- a/node_modules/core-js-pure/stable/number/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/constructor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/epsilon.js b/node_modules/core-js-pure/stable/number/epsilon.js deleted file mode 100644 index fe2ccd78..00000000 --- a/node_modules/core-js-pure/stable/number/epsilon.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/epsilon'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/index.js b/node_modules/core-js-pure/stable/number/index.js deleted file mode 100644 index 81181a15..00000000 --- a/node_modules/core-js-pure/stable/number/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/is-finite.js b/node_modules/core-js-pure/stable/number/is-finite.js deleted file mode 100644 index 24b9773d..00000000 --- a/node_modules/core-js-pure/stable/number/is-finite.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-finite'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/is-integer.js b/node_modules/core-js-pure/stable/number/is-integer.js deleted file mode 100644 index b1592d06..00000000 --- a/node_modules/core-js-pure/stable/number/is-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/is-nan.js b/node_modules/core-js-pure/stable/number/is-nan.js deleted file mode 100644 index fcbec503..00000000 --- a/node_modules/core-js-pure/stable/number/is-nan.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-nan'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/is-safe-integer.js b/node_modules/core-js-pure/stable/number/is-safe-integer.js deleted file mode 100644 index b25eb1c6..00000000 --- a/node_modules/core-js-pure/stable/number/is-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/is-safe-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/max-safe-integer.js b/node_modules/core-js-pure/stable/number/max-safe-integer.js deleted file mode 100644 index e6689b06..00000000 --- a/node_modules/core-js-pure/stable/number/max-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/max-safe-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/min-safe-integer.js b/node_modules/core-js-pure/stable/number/min-safe-integer.js deleted file mode 100644 index 1159a47e..00000000 --- a/node_modules/core-js-pure/stable/number/min-safe-integer.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/min-safe-integer'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/parse-float.js b/node_modules/core-js-pure/stable/number/parse-float.js deleted file mode 100644 index 3b49c6a9..00000000 --- a/node_modules/core-js-pure/stable/number/parse-float.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/parse-float'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/parse-int.js b/node_modules/core-js-pure/stable/number/parse-int.js deleted file mode 100644 index 9e446513..00000000 --- a/node_modules/core-js-pure/stable/number/parse-int.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/parse-int'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/to-fixed.js b/node_modules/core-js-pure/stable/number/to-fixed.js deleted file mode 100644 index b103de9e..00000000 --- a/node_modules/core-js-pure/stable/number/to-fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/to-fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/to-precision.js b/node_modules/core-js-pure/stable/number/to-precision.js deleted file mode 100644 index 5183347a..00000000 --- a/node_modules/core-js-pure/stable/number/to-precision.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/number/to-precision'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/virtual/index.js b/node_modules/core-js-pure/stable/number/virtual/index.js deleted file mode 100644 index 88eef4bd..00000000 --- a/node_modules/core-js-pure/stable/number/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/number/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/virtual/to-fixed.js b/node_modules/core-js-pure/stable/number/virtual/to-fixed.js deleted file mode 100644 index a9f83cca..00000000 --- a/node_modules/core-js-pure/stable/number/virtual/to-fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/number/virtual/to-fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/number/virtual/to-precision.js b/node_modules/core-js-pure/stable/number/virtual/to-precision.js deleted file mode 100644 index adffb861..00000000 --- a/node_modules/core-js-pure/stable/number/virtual/to-precision.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/number/virtual/to-precision'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/assign.js b/node_modules/core-js-pure/stable/object/assign.js deleted file mode 100644 index ed6863e3..00000000 --- a/node_modules/core-js-pure/stable/object/assign.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/assign'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/create.js b/node_modules/core-js-pure/stable/object/create.js deleted file mode 100644 index 1e4d3532..00000000 --- a/node_modules/core-js-pure/stable/object/create.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/create'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/define-getter.js b/node_modules/core-js-pure/stable/object/define-getter.js deleted file mode 100644 index 9b734ab3..00000000 --- a/node_modules/core-js-pure/stable/object/define-getter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-getter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/define-properties.js b/node_modules/core-js-pure/stable/object/define-properties.js deleted file mode 100644 index e0d074c4..00000000 --- a/node_modules/core-js-pure/stable/object/define-properties.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-properties'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/define-property.js b/node_modules/core-js-pure/stable/object/define-property.js deleted file mode 100644 index 67a978cc..00000000 --- a/node_modules/core-js-pure/stable/object/define-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-property'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/define-setter.js b/node_modules/core-js-pure/stable/object/define-setter.js deleted file mode 100644 index 9076fd59..00000000 --- a/node_modules/core-js-pure/stable/object/define-setter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/define-setter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/entries.js b/node_modules/core-js-pure/stable/object/entries.js deleted file mode 100644 index c7a831a5..00000000 --- a/node_modules/core-js-pure/stable/object/entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/freeze.js b/node_modules/core-js-pure/stable/object/freeze.js deleted file mode 100644 index 0ee74591..00000000 --- a/node_modules/core-js-pure/stable/object/freeze.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/freeze'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/from-entries.js b/node_modules/core-js-pure/stable/object/from-entries.js deleted file mode 100644 index aec2c7a5..00000000 --- a/node_modules/core-js-pure/stable/object/from-entries.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/from-entries'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/get-own-property-descriptor.js b/node_modules/core-js-pure/stable/object/get-own-property-descriptor.js deleted file mode 100644 index 9b69cddd..00000000 --- a/node_modules/core-js-pure/stable/object/get-own-property-descriptor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-descriptor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/get-own-property-descriptors.js b/node_modules/core-js-pure/stable/object/get-own-property-descriptors.js deleted file mode 100644 index 43a193ed..00000000 --- a/node_modules/core-js-pure/stable/object/get-own-property-descriptors.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-descriptors'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/get-own-property-names.js b/node_modules/core-js-pure/stable/object/get-own-property-names.js deleted file mode 100644 index 42c21d7b..00000000 --- a/node_modules/core-js-pure/stable/object/get-own-property-names.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-names'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/get-own-property-symbols.js b/node_modules/core-js-pure/stable/object/get-own-property-symbols.js deleted file mode 100644 index 0bc8c261..00000000 --- a/node_modules/core-js-pure/stable/object/get-own-property-symbols.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-own-property-symbols'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/get-prototype-of.js b/node_modules/core-js-pure/stable/object/get-prototype-of.js deleted file mode 100644 index b7cf5885..00000000 --- a/node_modules/core-js-pure/stable/object/get-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/get-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/index.js b/node_modules/core-js-pure/stable/object/index.js deleted file mode 100644 index d2d658cf..00000000 --- a/node_modules/core-js-pure/stable/object/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/is-extensible.js b/node_modules/core-js-pure/stable/object/is-extensible.js deleted file mode 100644 index 694b9a47..00000000 --- a/node_modules/core-js-pure/stable/object/is-extensible.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is-extensible'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/is-frozen.js b/node_modules/core-js-pure/stable/object/is-frozen.js deleted file mode 100644 index 68fe107e..00000000 --- a/node_modules/core-js-pure/stable/object/is-frozen.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is-frozen'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/is-sealed.js b/node_modules/core-js-pure/stable/object/is-sealed.js deleted file mode 100644 index bbf64722..00000000 --- a/node_modules/core-js-pure/stable/object/is-sealed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is-sealed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/is.js b/node_modules/core-js-pure/stable/object/is.js deleted file mode 100644 index 3ddd76fd..00000000 --- a/node_modules/core-js-pure/stable/object/is.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/is'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/keys.js b/node_modules/core-js-pure/stable/object/keys.js deleted file mode 100644 index 2cff0abf..00000000 --- a/node_modules/core-js-pure/stable/object/keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/lookup-getter.js b/node_modules/core-js-pure/stable/object/lookup-getter.js deleted file mode 100644 index 9f10f6b8..00000000 --- a/node_modules/core-js-pure/stable/object/lookup-getter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/lookup-getter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/lookup-setter.js b/node_modules/core-js-pure/stable/object/lookup-setter.js deleted file mode 100644 index 97389bf1..00000000 --- a/node_modules/core-js-pure/stable/object/lookup-setter.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/lookup-setter'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/prevent-extensions.js b/node_modules/core-js-pure/stable/object/prevent-extensions.js deleted file mode 100644 index 7171f2aa..00000000 --- a/node_modules/core-js-pure/stable/object/prevent-extensions.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/prevent-extensions'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/seal.js b/node_modules/core-js-pure/stable/object/seal.js deleted file mode 100644 index fa50038b..00000000 --- a/node_modules/core-js-pure/stable/object/seal.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/seal'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/set-prototype-of.js b/node_modules/core-js-pure/stable/object/set-prototype-of.js deleted file mode 100644 index 4885ad35..00000000 --- a/node_modules/core-js-pure/stable/object/set-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/set-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/to-string.js b/node_modules/core-js-pure/stable/object/to-string.js deleted file mode 100644 index 589ffcbb..00000000 --- a/node_modules/core-js-pure/stable/object/to-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/to-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/object/values.js b/node_modules/core-js-pure/stable/object/values.js deleted file mode 100644 index 9e457fcf..00000000 --- a/node_modules/core-js-pure/stable/object/values.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/object/values'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/parse-float.js b/node_modules/core-js-pure/stable/parse-float.js deleted file mode 100644 index 1bc853cb..00000000 --- a/node_modules/core-js-pure/stable/parse-float.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../es/parse-float'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/parse-int.js b/node_modules/core-js-pure/stable/parse-int.js deleted file mode 100644 index af7cffd5..00000000 --- a/node_modules/core-js-pure/stable/parse-int.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../es/parse-int'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/promise/all-settled.js b/node_modules/core-js-pure/stable/promise/all-settled.js deleted file mode 100644 index 5b99bedd..00000000 --- a/node_modules/core-js-pure/stable/promise/all-settled.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/promise/all-settled'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/promise/finally.js b/node_modules/core-js-pure/stable/promise/finally.js deleted file mode 100644 index 835c6c94..00000000 --- a/node_modules/core-js-pure/stable/promise/finally.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/promise/finally'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/promise/index.js b/node_modules/core-js-pure/stable/promise/index.js deleted file mode 100644 index 6f19db9f..00000000 --- a/node_modules/core-js-pure/stable/promise/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/promise'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/queue-microtask.js b/node_modules/core-js-pure/stable/queue-microtask.js deleted file mode 100644 index 8afd9c79..00000000 --- a/node_modules/core-js-pure/stable/queue-microtask.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../web/queue-microtask'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/apply.js b/node_modules/core-js-pure/stable/reflect/apply.js deleted file mode 100644 index 75bf21e7..00000000 --- a/node_modules/core-js-pure/stable/reflect/apply.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/apply'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/construct.js b/node_modules/core-js-pure/stable/reflect/construct.js deleted file mode 100644 index 86ba56e8..00000000 --- a/node_modules/core-js-pure/stable/reflect/construct.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/construct'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/define-property.js b/node_modules/core-js-pure/stable/reflect/define-property.js deleted file mode 100644 index 5b66a143..00000000 --- a/node_modules/core-js-pure/stable/reflect/define-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/define-property'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/delete-property.js b/node_modules/core-js-pure/stable/reflect/delete-property.js deleted file mode 100644 index 381d7a72..00000000 --- a/node_modules/core-js-pure/stable/reflect/delete-property.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/delete-property'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/get-own-property-descriptor.js b/node_modules/core-js-pure/stable/reflect/get-own-property-descriptor.js deleted file mode 100644 index 0f9c1326..00000000 --- a/node_modules/core-js-pure/stable/reflect/get-own-property-descriptor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/get-own-property-descriptor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/get-prototype-of.js b/node_modules/core-js-pure/stable/reflect/get-prototype-of.js deleted file mode 100644 index fdc1ccb1..00000000 --- a/node_modules/core-js-pure/stable/reflect/get-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/get-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/get.js b/node_modules/core-js-pure/stable/reflect/get.js deleted file mode 100644 index 2914c123..00000000 --- a/node_modules/core-js-pure/stable/reflect/get.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/get'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/has.js b/node_modules/core-js-pure/stable/reflect/has.js deleted file mode 100644 index 26b5f7cd..00000000 --- a/node_modules/core-js-pure/stable/reflect/has.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/has'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/index.js b/node_modules/core-js-pure/stable/reflect/index.js deleted file mode 100644 index c0a75638..00000000 --- a/node_modules/core-js-pure/stable/reflect/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/is-extensible.js b/node_modules/core-js-pure/stable/reflect/is-extensible.js deleted file mode 100644 index b04239e7..00000000 --- a/node_modules/core-js-pure/stable/reflect/is-extensible.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/is-extensible'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/own-keys.js b/node_modules/core-js-pure/stable/reflect/own-keys.js deleted file mode 100644 index 6d56289c..00000000 --- a/node_modules/core-js-pure/stable/reflect/own-keys.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/own-keys'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/prevent-extensions.js b/node_modules/core-js-pure/stable/reflect/prevent-extensions.js deleted file mode 100644 index 40a8bbc7..00000000 --- a/node_modules/core-js-pure/stable/reflect/prevent-extensions.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/prevent-extensions'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/set-prototype-of.js b/node_modules/core-js-pure/stable/reflect/set-prototype-of.js deleted file mode 100644 index 20fd6f32..00000000 --- a/node_modules/core-js-pure/stable/reflect/set-prototype-of.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/set-prototype-of'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/reflect/set.js b/node_modules/core-js-pure/stable/reflect/set.js deleted file mode 100644 index a4cf5f02..00000000 --- a/node_modules/core-js-pure/stable/reflect/set.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/reflect/set'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/constructor.js b/node_modules/core-js-pure/stable/regexp/constructor.js deleted file mode 100644 index 2cd0149e..00000000 --- a/node_modules/core-js-pure/stable/regexp/constructor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/constructor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/flags.js b/node_modules/core-js-pure/stable/regexp/flags.js deleted file mode 100644 index bdf1c8a9..00000000 --- a/node_modules/core-js-pure/stable/regexp/flags.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/flags'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/index.js b/node_modules/core-js-pure/stable/regexp/index.js deleted file mode 100644 index df41f176..00000000 --- a/node_modules/core-js-pure/stable/regexp/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/match.js b/node_modules/core-js-pure/stable/regexp/match.js deleted file mode 100644 index c995bbb3..00000000 --- a/node_modules/core-js-pure/stable/regexp/match.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/match'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/replace.js b/node_modules/core-js-pure/stable/regexp/replace.js deleted file mode 100644 index b1a9e652..00000000 --- a/node_modules/core-js-pure/stable/regexp/replace.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/replace'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/search.js b/node_modules/core-js-pure/stable/regexp/search.js deleted file mode 100644 index af170623..00000000 --- a/node_modules/core-js-pure/stable/regexp/search.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/search'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/split.js b/node_modules/core-js-pure/stable/regexp/split.js deleted file mode 100644 index fb0471a8..00000000 --- a/node_modules/core-js-pure/stable/regexp/split.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/split'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/sticky.js b/node_modules/core-js-pure/stable/regexp/sticky.js deleted file mode 100644 index c1307adf..00000000 --- a/node_modules/core-js-pure/stable/regexp/sticky.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/sticky'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/test.js b/node_modules/core-js-pure/stable/regexp/test.js deleted file mode 100644 index 53f91668..00000000 --- a/node_modules/core-js-pure/stable/regexp/test.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/test'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/regexp/to-string.js b/node_modules/core-js-pure/stable/regexp/to-string.js deleted file mode 100644 index e2a44424..00000000 --- a/node_modules/core-js-pure/stable/regexp/to-string.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/regexp/to-string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/set-immediate.js b/node_modules/core-js-pure/stable/set-immediate.js deleted file mode 100644 index 0878b64c..00000000 --- a/node_modules/core-js-pure/stable/set-immediate.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.immediate'); -var path = require('../internals/path'); - -module.exports = path.setImmediate; diff --git a/node_modules/core-js-pure/stable/set-interval.js b/node_modules/core-js-pure/stable/set-interval.js deleted file mode 100644 index cd6eddba..00000000 --- a/node_modules/core-js-pure/stable/set-interval.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.timers'); -var path = require('../internals/path'); - -module.exports = path.setInterval; diff --git a/node_modules/core-js-pure/stable/set-timeout.js b/node_modules/core-js-pure/stable/set-timeout.js deleted file mode 100644 index b497a6a9..00000000 --- a/node_modules/core-js-pure/stable/set-timeout.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.timers'); -var path = require('../internals/path'); - -module.exports = path.setTimeout; diff --git a/node_modules/core-js-pure/stable/set/index.js b/node_modules/core-js-pure/stable/set/index.js deleted file mode 100644 index fe554d67..00000000 --- a/node_modules/core-js-pure/stable/set/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/set'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/anchor.js b/node_modules/core-js-pure/stable/string/anchor.js deleted file mode 100644 index b9b79050..00000000 --- a/node_modules/core-js-pure/stable/string/anchor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/anchor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/big.js b/node_modules/core-js-pure/stable/string/big.js deleted file mode 100644 index 9c118e55..00000000 --- a/node_modules/core-js-pure/stable/string/big.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/big'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/blink.js b/node_modules/core-js-pure/stable/string/blink.js deleted file mode 100644 index 23ca24fc..00000000 --- a/node_modules/core-js-pure/stable/string/blink.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/blink'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/bold.js b/node_modules/core-js-pure/stable/string/bold.js deleted file mode 100644 index 322db3e4..00000000 --- a/node_modules/core-js-pure/stable/string/bold.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/bold'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/code-point-at.js b/node_modules/core-js-pure/stable/string/code-point-at.js deleted file mode 100644 index 033b94c3..00000000 --- a/node_modules/core-js-pure/stable/string/code-point-at.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/code-point-at'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/ends-with.js b/node_modules/core-js-pure/stable/string/ends-with.js deleted file mode 100644 index 2ea55947..00000000 --- a/node_modules/core-js-pure/stable/string/ends-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/ends-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/fixed.js b/node_modules/core-js-pure/stable/string/fixed.js deleted file mode 100644 index c18b823c..00000000 --- a/node_modules/core-js-pure/stable/string/fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/fontcolor.js b/node_modules/core-js-pure/stable/string/fontcolor.js deleted file mode 100644 index bb30ae6b..00000000 --- a/node_modules/core-js-pure/stable/string/fontcolor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/fontcolor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/fontsize.js b/node_modules/core-js-pure/stable/string/fontsize.js deleted file mode 100644 index 49060de1..00000000 --- a/node_modules/core-js-pure/stable/string/fontsize.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/fontsize'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/from-code-point.js b/node_modules/core-js-pure/stable/string/from-code-point.js deleted file mode 100644 index c56ee7c5..00000000 --- a/node_modules/core-js-pure/stable/string/from-code-point.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/from-code-point'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/includes.js b/node_modules/core-js-pure/stable/string/includes.js deleted file mode 100644 index cf7eea49..00000000 --- a/node_modules/core-js-pure/stable/string/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/index.js b/node_modules/core-js-pure/stable/string/index.js deleted file mode 100644 index 9eda7c03..00000000 --- a/node_modules/core-js-pure/stable/string/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/italics.js b/node_modules/core-js-pure/stable/string/italics.js deleted file mode 100644 index 8bee4396..00000000 --- a/node_modules/core-js-pure/stable/string/italics.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/italics'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/iterator.js b/node_modules/core-js-pure/stable/string/iterator.js deleted file mode 100644 index 64110cc8..00000000 --- a/node_modules/core-js-pure/stable/string/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/link.js b/node_modules/core-js-pure/stable/string/link.js deleted file mode 100644 index d5077268..00000000 --- a/node_modules/core-js-pure/stable/string/link.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/link'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/match-all.js b/node_modules/core-js-pure/stable/string/match-all.js deleted file mode 100644 index 09cd3619..00000000 --- a/node_modules/core-js-pure/stable/string/match-all.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/match.js b/node_modules/core-js-pure/stable/string/match.js deleted file mode 100644 index 5b728dae..00000000 --- a/node_modules/core-js-pure/stable/string/match.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/match'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/pad-end.js b/node_modules/core-js-pure/stable/string/pad-end.js deleted file mode 100644 index 032903c6..00000000 --- a/node_modules/core-js-pure/stable/string/pad-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/pad-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/pad-start.js b/node_modules/core-js-pure/stable/string/pad-start.js deleted file mode 100644 index 440785b6..00000000 --- a/node_modules/core-js-pure/stable/string/pad-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/pad-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/raw.js b/node_modules/core-js-pure/stable/string/raw.js deleted file mode 100644 index 2ac2b747..00000000 --- a/node_modules/core-js-pure/stable/string/raw.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/raw'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/repeat.js b/node_modules/core-js-pure/stable/string/repeat.js deleted file mode 100644 index 6d6848b2..00000000 --- a/node_modules/core-js-pure/stable/string/repeat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/repeat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/replace.js b/node_modules/core-js-pure/stable/string/replace.js deleted file mode 100644 index 48389e68..00000000 --- a/node_modules/core-js-pure/stable/string/replace.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/replace'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/search.js b/node_modules/core-js-pure/stable/string/search.js deleted file mode 100644 index aaf356f9..00000000 --- a/node_modules/core-js-pure/stable/string/search.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/search'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/small.js b/node_modules/core-js-pure/stable/string/small.js deleted file mode 100644 index 47b79e06..00000000 --- a/node_modules/core-js-pure/stable/string/small.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/small'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/split.js b/node_modules/core-js-pure/stable/string/split.js deleted file mode 100644 index 5ffbab76..00000000 --- a/node_modules/core-js-pure/stable/string/split.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/split'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/starts-with.js b/node_modules/core-js-pure/stable/string/starts-with.js deleted file mode 100644 index f718778c..00000000 --- a/node_modules/core-js-pure/stable/string/starts-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/starts-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/strike.js b/node_modules/core-js-pure/stable/string/strike.js deleted file mode 100644 index 6c625c8e..00000000 --- a/node_modules/core-js-pure/stable/string/strike.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/strike'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/sub.js b/node_modules/core-js-pure/stable/string/sub.js deleted file mode 100644 index a4a66a05..00000000 --- a/node_modules/core-js-pure/stable/string/sub.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/sub'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/sup.js b/node_modules/core-js-pure/stable/string/sup.js deleted file mode 100644 index abb1f6a5..00000000 --- a/node_modules/core-js-pure/stable/string/sup.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/sup'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/trim-end.js b/node_modules/core-js-pure/stable/string/trim-end.js deleted file mode 100644 index 37e8d3f2..00000000 --- a/node_modules/core-js-pure/stable/string/trim-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/trim-left.js b/node_modules/core-js-pure/stable/string/trim-left.js deleted file mode 100644 index e11e7b71..00000000 --- a/node_modules/core-js-pure/stable/string/trim-left.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-left'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/trim-right.js b/node_modules/core-js-pure/stable/string/trim-right.js deleted file mode 100644 index 290f4fd6..00000000 --- a/node_modules/core-js-pure/stable/string/trim-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/trim-start.js b/node_modules/core-js-pure/stable/string/trim-start.js deleted file mode 100644 index 96988529..00000000 --- a/node_modules/core-js-pure/stable/string/trim-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/trim.js b/node_modules/core-js-pure/stable/string/trim.js deleted file mode 100644 index 7a3a3b2f..00000000 --- a/node_modules/core-js-pure/stable/string/trim.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/string/trim'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/anchor.js b/node_modules/core-js-pure/stable/string/virtual/anchor.js deleted file mode 100644 index 52f270c0..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/anchor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/anchor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/big.js b/node_modules/core-js-pure/stable/string/virtual/big.js deleted file mode 100644 index e2c481b5..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/big.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/big'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/blink.js b/node_modules/core-js-pure/stable/string/virtual/blink.js deleted file mode 100644 index b804fd6f..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/blink.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/blink'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/bold.js b/node_modules/core-js-pure/stable/string/virtual/bold.js deleted file mode 100644 index fbe2f420..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/bold.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/bold'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/code-point-at.js b/node_modules/core-js-pure/stable/string/virtual/code-point-at.js deleted file mode 100644 index 1a7e0f60..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/code-point-at.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/code-point-at'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/ends-with.js b/node_modules/core-js-pure/stable/string/virtual/ends-with.js deleted file mode 100644 index e35b5d0d..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/ends-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/ends-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/fixed.js b/node_modules/core-js-pure/stable/string/virtual/fixed.js deleted file mode 100644 index 8c16126b..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/fixed.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/fixed'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/fontcolor.js b/node_modules/core-js-pure/stable/string/virtual/fontcolor.js deleted file mode 100644 index 5434150e..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/fontcolor.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/fontcolor'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/fontsize.js b/node_modules/core-js-pure/stable/string/virtual/fontsize.js deleted file mode 100644 index f4b71442..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/fontsize.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/fontsize'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/includes.js b/node_modules/core-js-pure/stable/string/virtual/includes.js deleted file mode 100644 index a6aee447..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/includes.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/includes'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/index.js b/node_modules/core-js-pure/stable/string/virtual/index.js deleted file mode 100644 index 48250fb4..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/italics.js b/node_modules/core-js-pure/stable/string/virtual/italics.js deleted file mode 100644 index d35da33b..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/italics.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/italics'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/iterator.js b/node_modules/core-js-pure/stable/string/virtual/iterator.js deleted file mode 100644 index ffdb591e..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/link.js b/node_modules/core-js-pure/stable/string/virtual/link.js deleted file mode 100644 index 4c0c0cf4..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/link.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/link'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/match-all.js b/node_modules/core-js-pure/stable/string/virtual/match-all.js deleted file mode 100644 index 1fbccd49..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/match-all.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/pad-end.js b/node_modules/core-js-pure/stable/string/virtual/pad-end.js deleted file mode 100644 index f1dcdf3c..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/pad-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/pad-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/pad-start.js b/node_modules/core-js-pure/stable/string/virtual/pad-start.js deleted file mode 100644 index 1e2afbc3..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/pad-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/pad-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/repeat.js b/node_modules/core-js-pure/stable/string/virtual/repeat.js deleted file mode 100644 index b8db5fc5..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/repeat.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/repeat'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/small.js b/node_modules/core-js-pure/stable/string/virtual/small.js deleted file mode 100644 index 1dd357be..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/small.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/small'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/starts-with.js b/node_modules/core-js-pure/stable/string/virtual/starts-with.js deleted file mode 100644 index 9a9145db..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/starts-with.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/starts-with'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/strike.js b/node_modules/core-js-pure/stable/string/virtual/strike.js deleted file mode 100644 index 4aa28cc7..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/strike.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/strike'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/sub.js b/node_modules/core-js-pure/stable/string/virtual/sub.js deleted file mode 100644 index a1b2c3a8..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/sub.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/sub'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/sup.js b/node_modules/core-js-pure/stable/string/virtual/sup.js deleted file mode 100644 index dc604fe7..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/sup.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/sup'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/trim-end.js b/node_modules/core-js-pure/stable/string/virtual/trim-end.js deleted file mode 100644 index 04e5ad90..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/trim-end.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-end'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/trim-left.js b/node_modules/core-js-pure/stable/string/virtual/trim-left.js deleted file mode 100644 index 571fb017..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/trim-left.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-left'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/trim-right.js b/node_modules/core-js-pure/stable/string/virtual/trim-right.js deleted file mode 100644 index aab8b09d..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/trim-right.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-right'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/trim-start.js b/node_modules/core-js-pure/stable/string/virtual/trim-start.js deleted file mode 100644 index c7fd1b27..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/trim-start.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim-start'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/string/virtual/trim.js b/node_modules/core-js-pure/stable/string/virtual/trim.js deleted file mode 100644 index d95c2e1e..00000000 --- a/node_modules/core-js-pure/stable/string/virtual/trim.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../../es/string/virtual/trim'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/async-iterator.js b/node_modules/core-js-pure/stable/symbol/async-iterator.js deleted file mode 100644 index a6243292..00000000 --- a/node_modules/core-js-pure/stable/symbol/async-iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/async-iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/description.js b/node_modules/core-js-pure/stable/symbol/description.js deleted file mode 100644 index 7bb4b2bc..00000000 --- a/node_modules/core-js-pure/stable/symbol/description.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.symbol.description'); diff --git a/node_modules/core-js-pure/stable/symbol/for.js b/node_modules/core-js-pure/stable/symbol/for.js deleted file mode 100644 index 28b29ae7..00000000 --- a/node_modules/core-js-pure/stable/symbol/for.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/for'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/has-instance.js b/node_modules/core-js-pure/stable/symbol/has-instance.js deleted file mode 100644 index 0334558b..00000000 --- a/node_modules/core-js-pure/stable/symbol/has-instance.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/has-instance'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/index.js b/node_modules/core-js-pure/stable/symbol/index.js deleted file mode 100644 index 2fb7ba5f..00000000 --- a/node_modules/core-js-pure/stable/symbol/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/is-concat-spreadable.js b/node_modules/core-js-pure/stable/symbol/is-concat-spreadable.js deleted file mode 100644 index 7dc1d261..00000000 --- a/node_modules/core-js-pure/stable/symbol/is-concat-spreadable.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/is-concat-spreadable'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/iterator.js b/node_modules/core-js-pure/stable/symbol/iterator.js deleted file mode 100644 index 78f0139f..00000000 --- a/node_modules/core-js-pure/stable/symbol/iterator.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/iterator'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/key-for.js b/node_modules/core-js-pure/stable/symbol/key-for.js deleted file mode 100644 index 4f76f821..00000000 --- a/node_modules/core-js-pure/stable/symbol/key-for.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/key-for'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/match-all.js b/node_modules/core-js-pure/stable/symbol/match-all.js deleted file mode 100644 index 6be44446..00000000 --- a/node_modules/core-js-pure/stable/symbol/match-all.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/match-all'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/match.js b/node_modules/core-js-pure/stable/symbol/match.js deleted file mode 100644 index 2a502e4a..00000000 --- a/node_modules/core-js-pure/stable/symbol/match.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/match'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/replace.js b/node_modules/core-js-pure/stable/symbol/replace.js deleted file mode 100644 index 225f7feb..00000000 --- a/node_modules/core-js-pure/stable/symbol/replace.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/replace'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/search.js b/node_modules/core-js-pure/stable/symbol/search.js deleted file mode 100644 index dd25b55d..00000000 --- a/node_modules/core-js-pure/stable/symbol/search.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/search'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/species.js b/node_modules/core-js-pure/stable/symbol/species.js deleted file mode 100644 index 6d3c4183..00000000 --- a/node_modules/core-js-pure/stable/symbol/species.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/species'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/split.js b/node_modules/core-js-pure/stable/symbol/split.js deleted file mode 100644 index 209b2121..00000000 --- a/node_modules/core-js-pure/stable/symbol/split.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/split'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/to-primitive.js b/node_modules/core-js-pure/stable/symbol/to-primitive.js deleted file mode 100644 index cd15ff51..00000000 --- a/node_modules/core-js-pure/stable/symbol/to-primitive.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/to-primitive'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/to-string-tag.js b/node_modules/core-js-pure/stable/symbol/to-string-tag.js deleted file mode 100644 index 69483507..00000000 --- a/node_modules/core-js-pure/stable/symbol/to-string-tag.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/to-string-tag'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/symbol/unscopables.js b/node_modules/core-js-pure/stable/symbol/unscopables.js deleted file mode 100644 index a9d78201..00000000 --- a/node_modules/core-js-pure/stable/symbol/unscopables.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/symbol/unscopables'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/copy-within.js b/node_modules/core-js-pure/stable/typed-array/copy-within.js deleted file mode 100644 index 1352cec7..00000000 --- a/node_modules/core-js-pure/stable/typed-array/copy-within.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.copy-within'); diff --git a/node_modules/core-js-pure/stable/typed-array/entries.js b/node_modules/core-js-pure/stable/typed-array/entries.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/stable/typed-array/entries.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/stable/typed-array/every.js b/node_modules/core-js-pure/stable/typed-array/every.js deleted file mode 100644 index 681164be..00000000 --- a/node_modules/core-js-pure/stable/typed-array/every.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.every'); diff --git a/node_modules/core-js-pure/stable/typed-array/fill.js b/node_modules/core-js-pure/stable/typed-array/fill.js deleted file mode 100644 index 4d92ac66..00000000 --- a/node_modules/core-js-pure/stable/typed-array/fill.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.fill'); diff --git a/node_modules/core-js-pure/stable/typed-array/filter.js b/node_modules/core-js-pure/stable/typed-array/filter.js deleted file mode 100644 index 7d0a630f..00000000 --- a/node_modules/core-js-pure/stable/typed-array/filter.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.filter'); diff --git a/node_modules/core-js-pure/stable/typed-array/find-index.js b/node_modules/core-js-pure/stable/typed-array/find-index.js deleted file mode 100644 index 039cd5ed..00000000 --- a/node_modules/core-js-pure/stable/typed-array/find-index.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.find-index'); diff --git a/node_modules/core-js-pure/stable/typed-array/find.js b/node_modules/core-js-pure/stable/typed-array/find.js deleted file mode 100644 index b3251b9a..00000000 --- a/node_modules/core-js-pure/stable/typed-array/find.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.find'); diff --git a/node_modules/core-js-pure/stable/typed-array/float32-array.js b/node_modules/core-js-pure/stable/typed-array/float32-array.js deleted file mode 100644 index c16ee63d..00000000 --- a/node_modules/core-js-pure/stable/typed-array/float32-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/float32-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/float64-array.js b/node_modules/core-js-pure/stable/typed-array/float64-array.js deleted file mode 100644 index 445dc3de..00000000 --- a/node_modules/core-js-pure/stable/typed-array/float64-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/float64-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/for-each.js b/node_modules/core-js-pure/stable/typed-array/for-each.js deleted file mode 100644 index defe03a8..00000000 --- a/node_modules/core-js-pure/stable/typed-array/for-each.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.for-each'); diff --git a/node_modules/core-js-pure/stable/typed-array/from.js b/node_modules/core-js-pure/stable/typed-array/from.js deleted file mode 100644 index e0f34441..00000000 --- a/node_modules/core-js-pure/stable/typed-array/from.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.from'); diff --git a/node_modules/core-js-pure/stable/typed-array/includes.js b/node_modules/core-js-pure/stable/typed-array/includes.js deleted file mode 100644 index 5ff65f96..00000000 --- a/node_modules/core-js-pure/stable/typed-array/includes.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.includes'); diff --git a/node_modules/core-js-pure/stable/typed-array/index-of.js b/node_modules/core-js-pure/stable/typed-array/index-of.js deleted file mode 100644 index 87081c0f..00000000 --- a/node_modules/core-js-pure/stable/typed-array/index-of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.index-of'); diff --git a/node_modules/core-js-pure/stable/typed-array/index.js b/node_modules/core-js-pure/stable/typed-array/index.js deleted file mode 100644 index 20a271d8..00000000 --- a/node_modules/core-js-pure/stable/typed-array/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/int16-array.js b/node_modules/core-js-pure/stable/typed-array/int16-array.js deleted file mode 100644 index 7ffdbae5..00000000 --- a/node_modules/core-js-pure/stable/typed-array/int16-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/int16-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/int32-array.js b/node_modules/core-js-pure/stable/typed-array/int32-array.js deleted file mode 100644 index bd2e75a8..00000000 --- a/node_modules/core-js-pure/stable/typed-array/int32-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/int32-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/int8-array.js b/node_modules/core-js-pure/stable/typed-array/int8-array.js deleted file mode 100644 index 8f1a54b7..00000000 --- a/node_modules/core-js-pure/stable/typed-array/int8-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/int8-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/iterator.js b/node_modules/core-js-pure/stable/typed-array/iterator.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/stable/typed-array/iterator.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/stable/typed-array/join.js b/node_modules/core-js-pure/stable/typed-array/join.js deleted file mode 100644 index 431129c9..00000000 --- a/node_modules/core-js-pure/stable/typed-array/join.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.join'); diff --git a/node_modules/core-js-pure/stable/typed-array/keys.js b/node_modules/core-js-pure/stable/typed-array/keys.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/stable/typed-array/keys.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/stable/typed-array/last-index-of.js b/node_modules/core-js-pure/stable/typed-array/last-index-of.js deleted file mode 100644 index 5682bf44..00000000 --- a/node_modules/core-js-pure/stable/typed-array/last-index-of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.last-index-of'); diff --git a/node_modules/core-js-pure/stable/typed-array/map.js b/node_modules/core-js-pure/stable/typed-array/map.js deleted file mode 100644 index db08fed3..00000000 --- a/node_modules/core-js-pure/stable/typed-array/map.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.map'); diff --git a/node_modules/core-js-pure/stable/typed-array/of.js b/node_modules/core-js-pure/stable/typed-array/of.js deleted file mode 100644 index 121bf5e2..00000000 --- a/node_modules/core-js-pure/stable/typed-array/of.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.of'); diff --git a/node_modules/core-js-pure/stable/typed-array/reduce-right.js b/node_modules/core-js-pure/stable/typed-array/reduce-right.js deleted file mode 100644 index cbd321fc..00000000 --- a/node_modules/core-js-pure/stable/typed-array/reduce-right.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reduce-right'); diff --git a/node_modules/core-js-pure/stable/typed-array/reduce.js b/node_modules/core-js-pure/stable/typed-array/reduce.js deleted file mode 100644 index e2a6f282..00000000 --- a/node_modules/core-js-pure/stable/typed-array/reduce.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reduce'); diff --git a/node_modules/core-js-pure/stable/typed-array/reverse.js b/node_modules/core-js-pure/stable/typed-array/reverse.js deleted file mode 100644 index 14995f49..00000000 --- a/node_modules/core-js-pure/stable/typed-array/reverse.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.reverse'); diff --git a/node_modules/core-js-pure/stable/typed-array/set.js b/node_modules/core-js-pure/stable/typed-array/set.js deleted file mode 100644 index 5330e229..00000000 --- a/node_modules/core-js-pure/stable/typed-array/set.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.set'); diff --git a/node_modules/core-js-pure/stable/typed-array/slice.js b/node_modules/core-js-pure/stable/typed-array/slice.js deleted file mode 100644 index 37fb8c14..00000000 --- a/node_modules/core-js-pure/stable/typed-array/slice.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.slice'); diff --git a/node_modules/core-js-pure/stable/typed-array/some.js b/node_modules/core-js-pure/stable/typed-array/some.js deleted file mode 100644 index 495c322f..00000000 --- a/node_modules/core-js-pure/stable/typed-array/some.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.some'); diff --git a/node_modules/core-js-pure/stable/typed-array/sort.js b/node_modules/core-js-pure/stable/typed-array/sort.js deleted file mode 100644 index d6c7e30b..00000000 --- a/node_modules/core-js-pure/stable/typed-array/sort.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.sort'); diff --git a/node_modules/core-js-pure/stable/typed-array/subarray.js b/node_modules/core-js-pure/stable/typed-array/subarray.js deleted file mode 100644 index dbad4ca2..00000000 --- a/node_modules/core-js-pure/stable/typed-array/subarray.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.subarray'); diff --git a/node_modules/core-js-pure/stable/typed-array/to-locale-string.js b/node_modules/core-js-pure/stable/typed-array/to-locale-string.js deleted file mode 100644 index 12c809e2..00000000 --- a/node_modules/core-js-pure/stable/typed-array/to-locale-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.to-locale-string'); diff --git a/node_modules/core-js-pure/stable/typed-array/to-string.js b/node_modules/core-js-pure/stable/typed-array/to-string.js deleted file mode 100644 index bf941607..00000000 --- a/node_modules/core-js-pure/stable/typed-array/to-string.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.to-string'); diff --git a/node_modules/core-js-pure/stable/typed-array/uint16-array.js b/node_modules/core-js-pure/stable/typed-array/uint16-array.js deleted file mode 100644 index f35dc05e..00000000 --- a/node_modules/core-js-pure/stable/typed-array/uint16-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint16-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/uint32-array.js b/node_modules/core-js-pure/stable/typed-array/uint32-array.js deleted file mode 100644 index 197c8de9..00000000 --- a/node_modules/core-js-pure/stable/typed-array/uint32-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint32-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/uint8-array.js b/node_modules/core-js-pure/stable/typed-array/uint8-array.js deleted file mode 100644 index 7d853e48..00000000 --- a/node_modules/core-js-pure/stable/typed-array/uint8-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint8-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/uint8-clamped-array.js b/node_modules/core-js-pure/stable/typed-array/uint8-clamped-array.js deleted file mode 100644 index a1e131c2..00000000 --- a/node_modules/core-js-pure/stable/typed-array/uint8-clamped-array.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/typed-array/uint8-clamped-array'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/typed-array/values.js b/node_modules/core-js-pure/stable/typed-array/values.js deleted file mode 100644 index 66cc6dca..00000000 --- a/node_modules/core-js-pure/stable/typed-array/values.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/es.typed-array.iterator'); diff --git a/node_modules/core-js-pure/stable/url-search-params/index.js b/node_modules/core-js-pure/stable/url-search-params/index.js deleted file mode 100644 index bf9b50d1..00000000 --- a/node_modules/core-js-pure/stable/url-search-params/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../web/url-search-params'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/url/index.js b/node_modules/core-js-pure/stable/url/index.js deleted file mode 100644 index 750f27f4..00000000 --- a/node_modules/core-js-pure/stable/url/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../web/url'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/url/to-json.js b/node_modules/core-js-pure/stable/url/to-json.js deleted file mode 100644 index 0d841b68..00000000 --- a/node_modules/core-js-pure/stable/url/to-json.js +++ /dev/null @@ -1 +0,0 @@ -require('../../modules/web.url.to-json'); diff --git a/node_modules/core-js-pure/stable/weak-map/index.js b/node_modules/core-js-pure/stable/weak-map/index.js deleted file mode 100644 index 0722356b..00000000 --- a/node_modules/core-js-pure/stable/weak-map/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/weak-map'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stable/weak-set/index.js b/node_modules/core-js-pure/stable/weak-set/index.js deleted file mode 100644 index 0dd555cd..00000000 --- a/node_modules/core-js-pure/stable/weak-set/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var parent = require('../../es/weak-set'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stage/0.js b/node_modules/core-js-pure/stage/0.js deleted file mode 100644 index bdcf27a7..00000000 --- a/node_modules/core-js-pure/stage/0.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../proposals/efficient-64-bit-arithmetic'); -require('../proposals/string-at'); -require('../proposals/url'); -var parent = require('./1'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stage/1.js b/node_modules/core-js-pure/stage/1.js deleted file mode 100644 index bff9b629..00000000 --- a/node_modules/core-js-pure/stage/1.js +++ /dev/null @@ -1,16 +0,0 @@ -require('../proposals/array-last'); -require('../proposals/collection-methods'); -require('../proposals/collection-of-from'); -require('../proposals/keys-composition'); -require('../proposals/math-extensions'); -require('../proposals/math-signbit'); -require('../proposals/number-from-string'); -require('../proposals/object-iteration'); -require('../proposals/observable'); -require('../proposals/pattern-matching'); -require('../proposals/promise-try'); -require('../proposals/seeded-random'); -require('../proposals/string-code-points'); -var parent = require('./2'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stage/2.js b/node_modules/core-js-pure/stage/2.js deleted file mode 100644 index ce3af1a4..00000000 --- a/node_modules/core-js-pure/stage/2.js +++ /dev/null @@ -1,8 +0,0 @@ -require('../proposals/array-is-template-object'); -require('../proposals/iterator-helpers'); -require('../proposals/map-upsert'); -require('../proposals/set-methods'); -require('../proposals/using-statement'); -var parent = require('./3'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stage/3.js b/node_modules/core-js-pure/stage/3.js deleted file mode 100644 index 4d694c96..00000000 --- a/node_modules/core-js-pure/stage/3.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../proposals/promise-any'); -require('../proposals/string-replace-all'); -var parent = require('./4'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/stage/4.js b/node_modules/core-js-pure/stage/4.js deleted file mode 100644 index b9b4497b..00000000 --- a/node_modules/core-js-pure/stage/4.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../proposals/global-this'); -require('../proposals/promise-all-settled'); -require('../proposals/string-match-all'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/stage/README.md b/node_modules/core-js-pure/stage/README.md deleted file mode 100644 index 0da7eaef..00000000 --- a/node_modules/core-js-pure/stage/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains entry points for [ECMAScript proposals](https://github.com/zloirock/core-js/tree/v3#ecmascript-proposals) with dependencies. diff --git a/node_modules/core-js-pure/stage/index.js b/node_modules/core-js-pure/stage/index.js deleted file mode 100644 index 942545cd..00000000 --- a/node_modules/core-js-pure/stage/index.js +++ /dev/null @@ -1,3 +0,0 @@ -var proposals = require('./pre'); - -module.exports = proposals; diff --git a/node_modules/core-js-pure/stage/pre.js b/node_modules/core-js-pure/stage/pre.js deleted file mode 100644 index e37249e5..00000000 --- a/node_modules/core-js-pure/stage/pre.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../proposals/reflect-metadata'); -var parent = require('./0'); - -module.exports = parent; diff --git a/node_modules/core-js-pure/web/README.md b/node_modules/core-js-pure/web/README.md deleted file mode 100644 index 40ff72ac..00000000 --- a/node_modules/core-js-pure/web/README.md +++ /dev/null @@ -1 +0,0 @@ -This folder contains entry points for features from [WHATWG / W3C](https://github.com/zloirock/core-js/tree/v3#web-standards) with dependencies. diff --git a/node_modules/core-js-pure/web/dom-collections.js b/node_modules/core-js-pure/web/dom-collections.js deleted file mode 100644 index 0a5fe032..00000000 --- a/node_modules/core-js-pure/web/dom-collections.js +++ /dev/null @@ -1,5 +0,0 @@ -require('../modules/web.dom-collections.for-each'); -require('../modules/web.dom-collections.iterator'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/web/immediate.js b/node_modules/core-js-pure/web/immediate.js deleted file mode 100644 index 2f0c025e..00000000 --- a/node_modules/core-js-pure/web/immediate.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.immediate'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/web/index.js b/node_modules/core-js-pure/web/index.js deleted file mode 100644 index 9f138323..00000000 --- a/node_modules/core-js-pure/web/index.js +++ /dev/null @@ -1,11 +0,0 @@ -require('../modules/web.dom-collections.for-each'); -require('../modules/web.dom-collections.iterator'); -require('../modules/web.immediate'); -require('../modules/web.queue-microtask'); -require('../modules/web.timers'); -require('../modules/web.url'); -require('../modules/web.url.to-json'); -require('../modules/web.url-search-params'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/web/queue-microtask.js b/node_modules/core-js-pure/web/queue-microtask.js deleted file mode 100644 index 10f9f303..00000000 --- a/node_modules/core-js-pure/web/queue-microtask.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.queue-microtask'); -var path = require('../internals/path'); - -module.exports = path.queueMicrotask; diff --git a/node_modules/core-js-pure/web/timers.js b/node_modules/core-js-pure/web/timers.js deleted file mode 100644 index 9c4106f8..00000000 --- a/node_modules/core-js-pure/web/timers.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.timers'); -var path = require('../internals/path'); - -module.exports = path; diff --git a/node_modules/core-js-pure/web/url-search-params.js b/node_modules/core-js-pure/web/url-search-params.js deleted file mode 100644 index 9434608b..00000000 --- a/node_modules/core-js-pure/web/url-search-params.js +++ /dev/null @@ -1,4 +0,0 @@ -require('../modules/web.url-search-params'); -var path = require('../internals/path'); - -module.exports = path.URLSearchParams; diff --git a/node_modules/core-js-pure/web/url.js b/node_modules/core-js-pure/web/url.js deleted file mode 100644 index 2faed2ed..00000000 --- a/node_modules/core-js-pure/web/url.js +++ /dev/null @@ -1,6 +0,0 @@ -require('../modules/web.url'); -require('../modules/web.url.to-json'); -require('../modules/web.url-search-params'); -var path = require('../internals/path'); - -module.exports = path.URL; diff --git a/node_modules/cross-fetch/LICENSE b/node_modules/cross-fetch/LICENSE deleted file mode 100644 index 9198b86f..00000000 --- a/node_modules/cross-fetch/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2017 Leonardo Quixadá - -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. diff --git a/node_modules/cross-fetch/README.md b/node_modules/cross-fetch/README.md deleted file mode 100644 index 63571e2c..00000000 --- a/node_modules/cross-fetch/README.md +++ /dev/null @@ -1,190 +0,0 @@ -cross-fetch
-[![Build Status](https://travis-ci.org/lquixada/cross-fetch.svg?branch=master)](https://travis-ci.org/lquixada/cross-fetch) -[![Build Status](https://saucelabs.com/buildstatus/cross-fetch)](https://saucelabs.com/u/cross-fetch) -[![codecov](https://codecov.io/gh/lquixada/cross-fetch/branch/master/graph/badge.svg)](https://codecov.io/gh/lquixada/cross-fetch) -[![dependencies Status](https://david-dm.org/lquixada/cross-fetch/status.svg)](https://david-dm.org/lquixada/cross-fetch) -[![NPM Version](https://img.shields.io/npm/v/cross-fetch.svg?branch=master)](https://www.npmjs.com/package/cross-fetch) -[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) -================ - -Universal WHATWG Fetch API for Node, Browsers and React Native. The scenario that cross-fetch really shines is when the same javascript codebase needs to run on different platforms. - -- **Platform agnostic**: browsers, node or react native -- **Optional polyfill**: it's up to you if something is going to be added to the global object or not -- **Simple interface**: no instantiation, no configuration and no extra dependency -- **WHATWG compliant**: it works the same way wherever your code runs -- **Updated**: lastest version of whatwg-fetch and node-fetch used - - -* * * - -## Table of Contents - -- [Install](#install) -- [Usage](#usage) -- [Demo & API](#demo--api) -- [FAQ](#faq) -- [Supported environments](#supported-environments) -- [Thanks](#thanks) -- [License](#license) -- [Author](#author) -- [Sponsors](#sponsors) - -* * * - -## Install - -```sh -npm install --save cross-fetch -``` - -As a [ponyfill](https://github.com/sindresorhus/ponyfill): - -```javascript -// Using ES6 modules with Babel or TypeScript -import fetch from 'cross-fetch'; - -// Using CommonJS modules -const fetch = require('cross-fetch'); -``` - -As a polyfill: - -```javascript -// Using ES6 modules -import 'cross-fetch/polyfill'; - -// Using CommonJS modules -require('cross-fetch/polyfill'); -``` - - -The CDN build is also available on unpkg: - -```html - -``` - -This adds the fetch function to the window object. Note that this is not UMD compatible. - - -* * * - -## Usage - -With [promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise): - -```javascript -import fetch from 'cross-fetch'; -// Or just: import 'cross-fetch/polyfill'; - -fetch('//api.github.com/users/lquixada') - .then(res => { - if (res.status >= 400) { - throw new Error("Bad response from server"); - } - return res.json(); - }) - .then(user => { - console.log(user); - }) - .catch(err => { - console.error(err); - }); -``` - -With [async/await](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function): - -```javascript -import fetch from 'cross-fetch'; -// Or just: import 'cross-fetch/polyfill'; - -(async () => { - try { - const res = await fetch('//api.github.com/users/lquixada'); - - if (res.status >= 400) { - throw new Error("Bad response from server"); - } - - const user = await res.json(); - - console.log(user); - } catch (err) { - console.error(err); - } -})(); -``` - -> ⚠️ **Warning**: If you're in an environment that doesn't support Promises such as Internet Explorer, you must install an ES6 Promise compatible polyfill. [es6-promise](https://github.com/jakearchibald/es6-promise) is suggested. - - -## Demo & API - -You can find a comprehensive doc at [Github's fetch](https://github.github.io/fetch/) page. If you want to play with cross-fetch, these resources can be useful: - -* [**JSFiddle playground**](https://jsfiddle.net/lquixada/3ypqgacp/) ➡️ -* [**Public test suite**](https://lquixada.github.io/cross-fetch/test/saucelabs/) ➡️ - -> **Tip**: Run theses resources on various browsers and with different settings (for instance: cross-domain requests, wrong urls or text requests). Don't forget to open the console in the test suite page and play around. - - -## FAQ - -#### Yet another fetch library? - -I did a lot of research in order to find a fetch library that could be simple, cross-platorm and provide polyfill as an option. There's a plethora of libs out there but none could match those requirements. - - -#### Why not isomorphic-fetch? - -My preferred library used to be [isomorphic-fetch](https://github.com/matthew-andrews/isomorphic-fetch) but it has this [bug](https://github.com/matthew-andrews/isomorphic-fetch/issues/125) that prevents it from running in a react native environment. It seems it will never be fixed since the author hasn't been commiting for more than a year. That means dependencies are outdated as well. - - -#### Why polyfill might not be a good idea? - -In a word? Risk. If the spec changes in the future, it might be problematic to debug. Read more about it on [sindresorhus's ponyfill](https://github.com/sindresorhus/ponyfill#how-are-ponyfills-better-than-polyfills) page. It's up to you if you're fine with it or not. - - -#### How does cross-fetch work? - -Just like isomorphic-fetch, it is just a proxy. If you're in node, it delivers you the [node-fetch](https://www.npmjs.com/package/node-fetch) library, if you're in a browser or React Native, it delivers you the github's [whatwg-fetch](https://github.com/github/fetch/). The same strategy applies whether you're using polyfill or ponyfill. - - -## Who's Using It? - -* [VulcanJS](http://vulcanjs.org) -* [graphql-request](https://github.com/graphcool/graphql-request) -* [Swagger](https://swagger.io/) - - -## Supported environments - -* Node 6+ -* React-Native - -[![Build Status](https://saucelabs.com/browser-matrix/cross-fetch.svg)](https://saucelabs.com/u/cross-fetch) - - -## Thanks - -Heavily inspired by the works of [matthew-andrews](https://github.com/matthew-andrews). Kudos to him! - - -## License - -cross-fetch is licensed under the [MIT license](https://github.com/lquixada/cross-fetch/blob/master/LICENSE) © [Leonardo Quixadá](https://twitter.com/lquixada/) - - -## Author - -|[![@lquixada](https://avatars0.githubusercontent.com/u/195494?v=4&s=96)](https://github.com/lquixada)| -|:---:| -|[@lquixada](http://www.github.com/lquixada)| - - -## Sponsors - -Manual cross-browser testing is provided by the following sponsor: - -[![BrowserStack](./assets/browserstack-logo.png)](https://www.browserstack.com/) diff --git a/node_modules/cross-fetch/dist/browser-polyfill.js b/node_modules/cross-fetch/dist/browser-polyfill.js deleted file mode 100644 index 202b8ba8..00000000 --- a/node_modules/cross-fetch/dist/browser-polyfill.js +++ /dev/null @@ -1,465 +0,0 @@ -(function(self) { - - if (self.fetch) { - return - } - - var support = { - searchParams: 'URLSearchParams' in self, - iterable: 'Symbol' in self && 'iterator' in Symbol, - blob: 'FileReader' in self && 'Blob' in self && (function() { - try { - new Blob(); - return true - } catch(e) { - return false - } - })(), - formData: 'FormData' in self, - arrayBuffer: 'ArrayBuffer' in self - }; - - if (support.arrayBuffer) { - var viewClasses = [ - '[object Int8Array]', - '[object Uint8Array]', - '[object Uint8ClampedArray]', - '[object Int16Array]', - '[object Uint16Array]', - '[object Int32Array]', - '[object Uint32Array]', - '[object Float32Array]', - '[object Float64Array]' - ]; - - var isDataView = function(obj) { - return obj && DataView.prototype.isPrototypeOf(obj) - }; - - var isArrayBufferView = ArrayBuffer.isView || function(obj) { - return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1 - }; - } - - function normalizeName(name) { - if (typeof name !== 'string') { - name = String(name); - } - if (/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name)) { - throw new TypeError('Invalid character in header field name') - } - return name.toLowerCase() - } - - function normalizeValue(value) { - if (typeof value !== 'string') { - value = String(value); - } - return value - } - - // Build a destructive iterator for the value list - function iteratorFor(items) { - var iterator = { - next: function() { - var value = items.shift(); - return {done: value === undefined, value: value} - } - }; - - if (support.iterable) { - iterator[Symbol.iterator] = function() { - return iterator - }; - } - - return iterator - } - - function Headers(headers) { - this.map = {}; - - if (headers instanceof Headers) { - headers.forEach(function(value, name) { - this.append(name, value); - }, this); - } else if (Array.isArray(headers)) { - headers.forEach(function(header) { - this.append(header[0], header[1]); - }, this); - } else if (headers) { - Object.getOwnPropertyNames(headers).forEach(function(name) { - this.append(name, headers[name]); - }, this); - } - } - - Headers.prototype.append = function(name, value) { - name = normalizeName(name); - value = normalizeValue(value); - var oldValue = this.map[name]; - this.map[name] = oldValue ? oldValue+','+value : value; - }; - - Headers.prototype['delete'] = function(name) { - delete this.map[normalizeName(name)]; - }; - - Headers.prototype.get = function(name) { - name = normalizeName(name); - return this.has(name) ? this.map[name] : null - }; - - Headers.prototype.has = function(name) { - return this.map.hasOwnProperty(normalizeName(name)) - }; - - Headers.prototype.set = function(name, value) { - this.map[normalizeName(name)] = normalizeValue(value); - }; - - Headers.prototype.forEach = function(callback, thisArg) { - for (var name in this.map) { - if (this.map.hasOwnProperty(name)) { - callback.call(thisArg, this.map[name], name, this); - } - } - }; - - Headers.prototype.keys = function() { - var items = []; - this.forEach(function(value, name) { items.push(name); }); - return iteratorFor(items) - }; - - Headers.prototype.values = function() { - var items = []; - this.forEach(function(value) { items.push(value); }); - return iteratorFor(items) - }; - - Headers.prototype.entries = function() { - var items = []; - this.forEach(function(value, name) { items.push([name, value]); }); - return iteratorFor(items) - }; - - if (support.iterable) { - Headers.prototype[Symbol.iterator] = Headers.prototype.entries; - } - - function consumed(body) { - if (body.bodyUsed) { - return Promise.reject(new TypeError('Already read')) - } - body.bodyUsed = true; - } - - function fileReaderReady(reader) { - return new Promise(function(resolve, reject) { - reader.onload = function() { - resolve(reader.result); - }; - reader.onerror = function() { - reject(reader.error); - }; - }) - } - - function readBlobAsArrayBuffer(blob) { - var reader = new FileReader(); - var promise = fileReaderReady(reader); - reader.readAsArrayBuffer(blob); - return promise - } - - function readBlobAsText(blob) { - var reader = new FileReader(); - var promise = fileReaderReady(reader); - reader.readAsText(blob); - return promise - } - - function readArrayBufferAsText(buf) { - var view = new Uint8Array(buf); - var chars = new Array(view.length); - - for (var i = 0; i < view.length; i++) { - chars[i] = String.fromCharCode(view[i]); - } - return chars.join('') - } - - function bufferClone(buf) { - if (buf.slice) { - return buf.slice(0) - } else { - var view = new Uint8Array(buf.byteLength); - view.set(new Uint8Array(buf)); - return view.buffer - } - } - - function Body() { - this.bodyUsed = false; - - this._initBody = function(body) { - this._bodyInit = body; - if (!body) { - this._bodyText = ''; - } else if (typeof body === 'string') { - this._bodyText = body; - } else if (support.blob && Blob.prototype.isPrototypeOf(body)) { - this._bodyBlob = body; - } else if (support.formData && FormData.prototype.isPrototypeOf(body)) { - this._bodyFormData = body; - } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) { - this._bodyText = body.toString(); - } else if (support.arrayBuffer && support.blob && isDataView(body)) { - this._bodyArrayBuffer = bufferClone(body.buffer); - // IE 10-11 can't handle a DataView body. - this._bodyInit = new Blob([this._bodyArrayBuffer]); - } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) { - this._bodyArrayBuffer = bufferClone(body); - } else { - throw new Error('unsupported BodyInit type') - } - - if (!this.headers.get('content-type')) { - if (typeof body === 'string') { - this.headers.set('content-type', 'text/plain;charset=UTF-8'); - } else if (this._bodyBlob && this._bodyBlob.type) { - this.headers.set('content-type', this._bodyBlob.type); - } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) { - this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); - } - } - }; - - if (support.blob) { - this.blob = function() { - var rejected = consumed(this); - if (rejected) { - return rejected - } - - if (this._bodyBlob) { - return Promise.resolve(this._bodyBlob) - } else if (this._bodyArrayBuffer) { - return Promise.resolve(new Blob([this._bodyArrayBuffer])) - } else if (this._bodyFormData) { - throw new Error('could not read FormData body as blob') - } else { - return Promise.resolve(new Blob([this._bodyText])) - } - }; - - this.arrayBuffer = function() { - if (this._bodyArrayBuffer) { - return consumed(this) || Promise.resolve(this._bodyArrayBuffer) - } else { - return this.blob().then(readBlobAsArrayBuffer) - } - }; - } - - this.text = function() { - var rejected = consumed(this); - if (rejected) { - return rejected - } - - if (this._bodyBlob) { - return readBlobAsText(this._bodyBlob) - } else if (this._bodyArrayBuffer) { - return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer)) - } else if (this._bodyFormData) { - throw new Error('could not read FormData body as text') - } else { - return Promise.resolve(this._bodyText) - } - }; - - if (support.formData) { - this.formData = function() { - return this.text().then(decode) - }; - } - - this.json = function() { - return this.text().then(JSON.parse) - }; - - return this - } - - // HTTP methods whose capitalization should be normalized - var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']; - - function normalizeMethod(method) { - var upcased = method.toUpperCase(); - return (methods.indexOf(upcased) > -1) ? upcased : method - } - - function Request(input, options) { - options = options || {}; - var body = options.body; - - if (input instanceof Request) { - if (input.bodyUsed) { - throw new TypeError('Already read') - } - this.url = input.url; - this.credentials = input.credentials; - if (!options.headers) { - this.headers = new Headers(input.headers); - } - this.method = input.method; - this.mode = input.mode; - if (!body && input._bodyInit != null) { - body = input._bodyInit; - input.bodyUsed = true; - } - } else { - this.url = String(input); - } - - this.credentials = options.credentials || this.credentials || 'omit'; - if (options.headers || !this.headers) { - this.headers = new Headers(options.headers); - } - this.method = normalizeMethod(options.method || this.method || 'GET'); - this.mode = options.mode || this.mode || null; - this.referrer = null; - - if ((this.method === 'GET' || this.method === 'HEAD') && body) { - throw new TypeError('Body not allowed for GET or HEAD requests') - } - this._initBody(body); - } - - Request.prototype.clone = function() { - return new Request(this, { body: this._bodyInit }) - }; - - function decode(body) { - var form = new FormData(); - body.trim().split('&').forEach(function(bytes) { - if (bytes) { - var split = bytes.split('='); - var name = split.shift().replace(/\+/g, ' '); - var value = split.join('=').replace(/\+/g, ' '); - form.append(decodeURIComponent(name), decodeURIComponent(value)); - } - }); - return form - } - - function parseHeaders(rawHeaders) { - var headers = new Headers(); - // Replace instances of \r\n and \n followed by at least one space or horizontal tab with a space - // https://tools.ietf.org/html/rfc7230#section-3.2 - var preProcessedHeaders = rawHeaders.replace(/\r?\n[\t ]+/g, ' '); - preProcessedHeaders.split(/\r?\n/).forEach(function(line) { - var parts = line.split(':'); - var key = parts.shift().trim(); - if (key) { - var value = parts.join(':').trim(); - headers.append(key, value); - } - }); - return headers - } - - Body.call(Request.prototype); - - function Response(bodyInit, options) { - if (!options) { - options = {}; - } - - this.type = 'default'; - this.status = options.status === undefined ? 200 : options.status; - this.ok = this.status >= 200 && this.status < 300; - this.statusText = 'statusText' in options ? options.statusText : 'OK'; - this.headers = new Headers(options.headers); - this.url = options.url || ''; - this._initBody(bodyInit); - } - - Body.call(Response.prototype); - - Response.prototype.clone = function() { - return new Response(this._bodyInit, { - status: this.status, - statusText: this.statusText, - headers: new Headers(this.headers), - url: this.url - }) - }; - - Response.error = function() { - var response = new Response(null, {status: 0, statusText: ''}); - response.type = 'error'; - return response - }; - - var redirectStatuses = [301, 302, 303, 307, 308]; - - Response.redirect = function(url, status) { - if (redirectStatuses.indexOf(status) === -1) { - throw new RangeError('Invalid status code') - } - - return new Response(null, {status: status, headers: {location: url}}) - }; - - self.Headers = Headers; - self.Request = Request; - self.Response = Response; - - self.fetch = function(input, init) { - return new Promise(function(resolve, reject) { - var request = new Request(input, init); - var xhr = new XMLHttpRequest(); - - xhr.onload = function() { - var options = { - status: xhr.status, - statusText: xhr.statusText, - headers: parseHeaders(xhr.getAllResponseHeaders() || '') - }; - options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL'); - var body = 'response' in xhr ? xhr.response : xhr.responseText; - resolve(new Response(body, options)); - }; - - xhr.onerror = function() { - reject(new TypeError('Network request failed')); - }; - - xhr.ontimeout = function() { - reject(new TypeError('Network request failed')); - }; - - xhr.open(request.method, request.url, true); - - if (request.credentials === 'include') { - xhr.withCredentials = true; - } else if (request.credentials === 'omit') { - xhr.withCredentials = false; - } - - if ('responseType' in xhr && support.blob) { - xhr.responseType = 'blob'; - } - - request.headers.forEach(function(value, name) { - xhr.setRequestHeader(name, value); - }); - - xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit); - }) - }; - self.fetch.polyfill = true; -})(typeof self !== 'undefined' ? self : this); diff --git a/node_modules/cross-fetch/dist/browser-ponyfill.js b/node_modules/cross-fetch/dist/browser-ponyfill.js deleted file mode 100644 index b73508f4..00000000 --- a/node_modules/cross-fetch/dist/browser-ponyfill.js +++ /dev/null @@ -1,480 +0,0 @@ -var __root__ = (function (root) { -function F() { this.fetch = false; } -F.prototype = root; -return new F(); -})(typeof self !== 'undefined' ? self : this); -(function(self) { - -(function(self) { - - if (self.fetch) { - return - } - - var support = { - searchParams: 'URLSearchParams' in self, - iterable: 'Symbol' in self && 'iterator' in Symbol, - blob: 'FileReader' in self && 'Blob' in self && (function() { - try { - new Blob(); - return true - } catch(e) { - return false - } - })(), - formData: 'FormData' in self, - arrayBuffer: 'ArrayBuffer' in self - }; - - if (support.arrayBuffer) { - var viewClasses = [ - '[object Int8Array]', - '[object Uint8Array]', - '[object Uint8ClampedArray]', - '[object Int16Array]', - '[object Uint16Array]', - '[object Int32Array]', - '[object Uint32Array]', - '[object Float32Array]', - '[object Float64Array]' - ]; - - var isDataView = function(obj) { - return obj && DataView.prototype.isPrototypeOf(obj) - }; - - var isArrayBufferView = ArrayBuffer.isView || function(obj) { - return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1 - }; - } - - function normalizeName(name) { - if (typeof name !== 'string') { - name = String(name); - } - if (/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name)) { - throw new TypeError('Invalid character in header field name') - } - return name.toLowerCase() - } - - function normalizeValue(value) { - if (typeof value !== 'string') { - value = String(value); - } - return value - } - - // Build a destructive iterator for the value list - function iteratorFor(items) { - var iterator = { - next: function() { - var value = items.shift(); - return {done: value === undefined, value: value} - } - }; - - if (support.iterable) { - iterator[Symbol.iterator] = function() { - return iterator - }; - } - - return iterator - } - - function Headers(headers) { - this.map = {}; - - if (headers instanceof Headers) { - headers.forEach(function(value, name) { - this.append(name, value); - }, this); - } else if (Array.isArray(headers)) { - headers.forEach(function(header) { - this.append(header[0], header[1]); - }, this); - } else if (headers) { - Object.getOwnPropertyNames(headers).forEach(function(name) { - this.append(name, headers[name]); - }, this); - } - } - - Headers.prototype.append = function(name, value) { - name = normalizeName(name); - value = normalizeValue(value); - var oldValue = this.map[name]; - this.map[name] = oldValue ? oldValue+','+value : value; - }; - - Headers.prototype['delete'] = function(name) { - delete this.map[normalizeName(name)]; - }; - - Headers.prototype.get = function(name) { - name = normalizeName(name); - return this.has(name) ? this.map[name] : null - }; - - Headers.prototype.has = function(name) { - return this.map.hasOwnProperty(normalizeName(name)) - }; - - Headers.prototype.set = function(name, value) { - this.map[normalizeName(name)] = normalizeValue(value); - }; - - Headers.prototype.forEach = function(callback, thisArg) { - for (var name in this.map) { - if (this.map.hasOwnProperty(name)) { - callback.call(thisArg, this.map[name], name, this); - } - } - }; - - Headers.prototype.keys = function() { - var items = []; - this.forEach(function(value, name) { items.push(name); }); - return iteratorFor(items) - }; - - Headers.prototype.values = function() { - var items = []; - this.forEach(function(value) { items.push(value); }); - return iteratorFor(items) - }; - - Headers.prototype.entries = function() { - var items = []; - this.forEach(function(value, name) { items.push([name, value]); }); - return iteratorFor(items) - }; - - if (support.iterable) { - Headers.prototype[Symbol.iterator] = Headers.prototype.entries; - } - - function consumed(body) { - if (body.bodyUsed) { - return Promise.reject(new TypeError('Already read')) - } - body.bodyUsed = true; - } - - function fileReaderReady(reader) { - return new Promise(function(resolve, reject) { - reader.onload = function() { - resolve(reader.result); - }; - reader.onerror = function() { - reject(reader.error); - }; - }) - } - - function readBlobAsArrayBuffer(blob) { - var reader = new FileReader(); - var promise = fileReaderReady(reader); - reader.readAsArrayBuffer(blob); - return promise - } - - function readBlobAsText(blob) { - var reader = new FileReader(); - var promise = fileReaderReady(reader); - reader.readAsText(blob); - return promise - } - - function readArrayBufferAsText(buf) { - var view = new Uint8Array(buf); - var chars = new Array(view.length); - - for (var i = 0; i < view.length; i++) { - chars[i] = String.fromCharCode(view[i]); - } - return chars.join('') - } - - function bufferClone(buf) { - if (buf.slice) { - return buf.slice(0) - } else { - var view = new Uint8Array(buf.byteLength); - view.set(new Uint8Array(buf)); - return view.buffer - } - } - - function Body() { - this.bodyUsed = false; - - this._initBody = function(body) { - this._bodyInit = body; - if (!body) { - this._bodyText = ''; - } else if (typeof body === 'string') { - this._bodyText = body; - } else if (support.blob && Blob.prototype.isPrototypeOf(body)) { - this._bodyBlob = body; - } else if (support.formData && FormData.prototype.isPrototypeOf(body)) { - this._bodyFormData = body; - } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) { - this._bodyText = body.toString(); - } else if (support.arrayBuffer && support.blob && isDataView(body)) { - this._bodyArrayBuffer = bufferClone(body.buffer); - // IE 10-11 can't handle a DataView body. - this._bodyInit = new Blob([this._bodyArrayBuffer]); - } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) { - this._bodyArrayBuffer = bufferClone(body); - } else { - throw new Error('unsupported BodyInit type') - } - - if (!this.headers.get('content-type')) { - if (typeof body === 'string') { - this.headers.set('content-type', 'text/plain;charset=UTF-8'); - } else if (this._bodyBlob && this._bodyBlob.type) { - this.headers.set('content-type', this._bodyBlob.type); - } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) { - this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); - } - } - }; - - if (support.blob) { - this.blob = function() { - var rejected = consumed(this); - if (rejected) { - return rejected - } - - if (this._bodyBlob) { - return Promise.resolve(this._bodyBlob) - } else if (this._bodyArrayBuffer) { - return Promise.resolve(new Blob([this._bodyArrayBuffer])) - } else if (this._bodyFormData) { - throw new Error('could not read FormData body as blob') - } else { - return Promise.resolve(new Blob([this._bodyText])) - } - }; - - this.arrayBuffer = function() { - if (this._bodyArrayBuffer) { - return consumed(this) || Promise.resolve(this._bodyArrayBuffer) - } else { - return this.blob().then(readBlobAsArrayBuffer) - } - }; - } - - this.text = function() { - var rejected = consumed(this); - if (rejected) { - return rejected - } - - if (this._bodyBlob) { - return readBlobAsText(this._bodyBlob) - } else if (this._bodyArrayBuffer) { - return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer)) - } else if (this._bodyFormData) { - throw new Error('could not read FormData body as text') - } else { - return Promise.resolve(this._bodyText) - } - }; - - if (support.formData) { - this.formData = function() { - return this.text().then(decode) - }; - } - - this.json = function() { - return this.text().then(JSON.parse) - }; - - return this - } - - // HTTP methods whose capitalization should be normalized - var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']; - - function normalizeMethod(method) { - var upcased = method.toUpperCase(); - return (methods.indexOf(upcased) > -1) ? upcased : method - } - - function Request(input, options) { - options = options || {}; - var body = options.body; - - if (input instanceof Request) { - if (input.bodyUsed) { - throw new TypeError('Already read') - } - this.url = input.url; - this.credentials = input.credentials; - if (!options.headers) { - this.headers = new Headers(input.headers); - } - this.method = input.method; - this.mode = input.mode; - if (!body && input._bodyInit != null) { - body = input._bodyInit; - input.bodyUsed = true; - } - } else { - this.url = String(input); - } - - this.credentials = options.credentials || this.credentials || 'omit'; - if (options.headers || !this.headers) { - this.headers = new Headers(options.headers); - } - this.method = normalizeMethod(options.method || this.method || 'GET'); - this.mode = options.mode || this.mode || null; - this.referrer = null; - - if ((this.method === 'GET' || this.method === 'HEAD') && body) { - throw new TypeError('Body not allowed for GET or HEAD requests') - } - this._initBody(body); - } - - Request.prototype.clone = function() { - return new Request(this, { body: this._bodyInit }) - }; - - function decode(body) { - var form = new FormData(); - body.trim().split('&').forEach(function(bytes) { - if (bytes) { - var split = bytes.split('='); - var name = split.shift().replace(/\+/g, ' '); - var value = split.join('=').replace(/\+/g, ' '); - form.append(decodeURIComponent(name), decodeURIComponent(value)); - } - }); - return form - } - - function parseHeaders(rawHeaders) { - var headers = new Headers(); - // Replace instances of \r\n and \n followed by at least one space or horizontal tab with a space - // https://tools.ietf.org/html/rfc7230#section-3.2 - var preProcessedHeaders = rawHeaders.replace(/\r?\n[\t ]+/g, ' '); - preProcessedHeaders.split(/\r?\n/).forEach(function(line) { - var parts = line.split(':'); - var key = parts.shift().trim(); - if (key) { - var value = parts.join(':').trim(); - headers.append(key, value); - } - }); - return headers - } - - Body.call(Request.prototype); - - function Response(bodyInit, options) { - if (!options) { - options = {}; - } - - this.type = 'default'; - this.status = options.status === undefined ? 200 : options.status; - this.ok = this.status >= 200 && this.status < 300; - this.statusText = 'statusText' in options ? options.statusText : 'OK'; - this.headers = new Headers(options.headers); - this.url = options.url || ''; - this._initBody(bodyInit); - } - - Body.call(Response.prototype); - - Response.prototype.clone = function() { - return new Response(this._bodyInit, { - status: this.status, - statusText: this.statusText, - headers: new Headers(this.headers), - url: this.url - }) - }; - - Response.error = function() { - var response = new Response(null, {status: 0, statusText: ''}); - response.type = 'error'; - return response - }; - - var redirectStatuses = [301, 302, 303, 307, 308]; - - Response.redirect = function(url, status) { - if (redirectStatuses.indexOf(status) === -1) { - throw new RangeError('Invalid status code') - } - - return new Response(null, {status: status, headers: {location: url}}) - }; - - self.Headers = Headers; - self.Request = Request; - self.Response = Response; - - self.fetch = function(input, init) { - return new Promise(function(resolve, reject) { - var request = new Request(input, init); - var xhr = new XMLHttpRequest(); - - xhr.onload = function() { - var options = { - status: xhr.status, - statusText: xhr.statusText, - headers: parseHeaders(xhr.getAllResponseHeaders() || '') - }; - options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL'); - var body = 'response' in xhr ? xhr.response : xhr.responseText; - resolve(new Response(body, options)); - }; - - xhr.onerror = function() { - reject(new TypeError('Network request failed')); - }; - - xhr.ontimeout = function() { - reject(new TypeError('Network request failed')); - }; - - xhr.open(request.method, request.url, true); - - if (request.credentials === 'include') { - xhr.withCredentials = true; - } else if (request.credentials === 'omit') { - xhr.withCredentials = false; - } - - if ('responseType' in xhr && support.blob) { - xhr.responseType = 'blob'; - } - - request.headers.forEach(function(value, name) { - xhr.setRequestHeader(name, value); - }); - - xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit); - }) - }; - self.fetch.polyfill = true; -})(typeof self !== 'undefined' ? self : this); -}).call(__root__, void(0)); -var fetch = __root__.fetch; -var Response = fetch.Response = __root__.Response; -var Request = fetch.Request = __root__.Request; -var Headers = fetch.Headers = __root__.Headers; -if (typeof module === 'object' && module.exports) { -module.exports = fetch; -} diff --git a/node_modules/cross-fetch/dist/cross-fetch.js b/node_modules/cross-fetch/dist/cross-fetch.js deleted file mode 100644 index 36704290..00000000 --- a/node_modules/cross-fetch/dist/cross-fetch.js +++ /dev/null @@ -1,2 +0,0 @@ -!function(t){if(!t.fetch){var e="URLSearchParams"in t,r="Symbol"in t&&"iterator"in Symbol,s="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),o="FormData"in t,n="ArrayBuffer"in t;if(n)var i=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],a=function(t){return t&&DataView.prototype.isPrototypeOf(t)},h=ArrayBuffer.isView||function(t){return t&&-1 -1\n }\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name)\n }\n if (/[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value)\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift()\n return {done: value === undefined, value: value}\n }\n }\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n }\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {}\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value)\n }, this)\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1])\n }, this)\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name])\n }, this)\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name)\n value = normalizeValue(value)\n var oldValue = this.map[name]\n this.map[name] = oldValue ? oldValue+','+value : value\n }\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)]\n }\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name)\n return this.has(name) ? this.map[name] : null\n }\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n }\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value)\n }\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this)\n }\n }\n }\n\n Headers.prototype.keys = function() {\n var items = []\n this.forEach(function(value, name) { items.push(name) })\n return iteratorFor(items)\n }\n\n Headers.prototype.values = function() {\n var items = []\n this.forEach(function(value) { items.push(value) })\n return iteratorFor(items)\n }\n\n Headers.prototype.entries = function() {\n var items = []\n this.forEach(function(value, name) { items.push([name, value]) })\n return iteratorFor(items)\n }\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result)\n }\n reader.onerror = function() {\n reject(reader.error)\n }\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf)\n var chars = new Array(view.length)\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i])\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength)\n view.set(new Uint8Array(buf))\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false\n\n this._initBody = function(body) {\n this._bodyInit = body\n if (!body) {\n this._bodyText = ''\n } else if (typeof body === 'string') {\n this._bodyText = body\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString()\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer)\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer])\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body)\n } else {\n throw new Error('unsupported BodyInit type')\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8')\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type)\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')\n }\n }\n }\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n }\n }\n\n this.text = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n }\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n }\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n }\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase()\n return (methods.indexOf(upcased) > -1) ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {}\n var body = options.body\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url\n this.credentials = input.credentials\n if (!options.headers) {\n this.headers = new Headers(input.headers)\n }\n this.method = input.method\n this.mode = input.mode\n if (!body && input._bodyInit != null) {\n body = input._bodyInit\n input.bodyUsed = true\n }\n } else {\n this.url = String(input)\n }\n\n this.credentials = options.credentials || this.credentials || 'omit'\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers)\n }\n this.method = normalizeMethod(options.method || this.method || 'GET')\n this.mode = options.mode || this.mode || null\n this.referrer = null\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body)\n }\n\n Request.prototype.clone = function() {\n return new Request(this, { body: this._bodyInit })\n }\n\n function decode(body) {\n var form = new FormData()\n body.trim().split('&').forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=')\n var name = split.shift().replace(/\\+/g, ' ')\n var value = split.join('=').replace(/\\+/g, ' ')\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers()\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ')\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':')\n var key = parts.shift().trim()\n if (key) {\n var value = parts.join(':').trim()\n headers.append(key, value)\n }\n })\n return headers\n }\n\n Body.call(Request.prototype)\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {}\n }\n\n this.type = 'default'\n this.status = options.status === undefined ? 200 : options.status\n this.ok = this.status >= 200 && this.status < 300\n this.statusText = 'statusText' in options ? options.statusText : 'OK'\n this.headers = new Headers(options.headers)\n this.url = options.url || ''\n this._initBody(bodyInit)\n }\n\n Body.call(Response.prototype)\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n }\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''})\n response.type = 'error'\n return response\n }\n\n var redirectStatuses = [301, 302, 303, 307, 308]\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n }\n\n self.Headers = Headers\n self.Request = Request\n self.Response = Response\n\n self.fetch = function(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init)\n var xhr = new XMLHttpRequest()\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL')\n var body = 'response' in xhr ? xhr.response : xhr.responseText\n resolve(new Response(body, options))\n }\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.open(request.method, request.url, true)\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob'\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value)\n })\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)\n })\n }\n self.fetch.polyfill = true\n})(typeof self !== 'undefined' ? self : this);\n"],"names":["self","fetch","support","Symbol","Blob","e","viewClasses","isDataView","obj","DataView","prototype","isPrototypeOf","isArrayBufferView","ArrayBuffer","isView","indexOf","Object","toString","call","Headers","append","name","value","normalizeName","normalizeValue","oldValue","this","map","get","has","hasOwnProperty","set","forEach","callback","thisArg","keys","items","push","iteratorFor","values","entries","iterator","methods","Request","clone","body","_bodyInit","Body","Response","status","statusText","headers","url","error","response","type","redirectStatuses","redirect","RangeError","location","input","init","Promise","resolve","reject","request","xhr","XMLHttpRequest","onload","rawHeaders","options","getAllResponseHeaders","replace","split","line","parts","key","shift","trim","join","responseURL","responseText","onerror","TypeError","ontimeout","open","method","credentials","withCredentials","responseType","setRequestHeader","send","polyfill","String","test","toLowerCase","next","done","undefined","Array","isArray","header","getOwnPropertyNames","consumed","bodyUsed","fileReaderReady","reader","result","readBlobAsArrayBuffer","blob","FileReader","promise","readAsArrayBuffer","bufferClone","buf","slice","view","Uint8Array","byteLength","buffer","_initBody","_bodyText","_bodyBlob","FormData","_bodyFormData","URLSearchParams","_bodyArrayBuffer","Error","rejected","arrayBuffer","then","text","readAsText","chars","length","i","fromCharCode","readArrayBufferAsText","formData","decode","json","JSON","parse","upcased","mode","toUpperCase","referrer","form","bytes","decodeURIComponent","bodyInit","ok"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/cross-fetch/dist/node-polyfill.js b/node_modules/cross-fetch/dist/node-polyfill.js deleted file mode 100644 index 8bf4e4ec..00000000 --- a/node_modules/cross-fetch/dist/node-polyfill.js +++ /dev/null @@ -1,12 +0,0 @@ -var fetchNode = require('./node-ponyfill'); -var fetch = fetchNode.fetch.bind({}); - -fetch.polyfill = true; - -if (!global.fetch) { - global.fetch = fetch; - global.Response = fetchNode.Response; - global.Headers = fetchNode.Headers; - global.Request = fetchNode.Request; -} - diff --git a/node_modules/cross-fetch/dist/node-ponyfill.js b/node_modules/cross-fetch/dist/node-ponyfill.js deleted file mode 100644 index 281b0bed..00000000 --- a/node_modules/cross-fetch/dist/node-ponyfill.js +++ /dev/null @@ -1,22 +0,0 @@ -var nodeFetch = require('node-fetch'); -var realFetch = nodeFetch.default || nodeFetch; - -var fetch = function (url, options) { - // Support schemaless URIs on the server for parity with the browser. - // Ex: //github.com/ -> https://github.com/ - if (/^\/\//.test(url)) { - url = 'https:' + url; - } - return realFetch.call(this, url, options); -}; - -fetch.polyfill = false; - -module.exports = exports = fetch; -exports.fetch = fetch; -exports.Headers = nodeFetch.Headers; -exports.Request = nodeFetch.Request; -exports.Response = nodeFetch.Response; - -// Needed for TypeScript. -exports.default = fetch; diff --git a/node_modules/cross-fetch/index.d.ts b/node_modules/cross-fetch/index.d.ts deleted file mode 100644 index ec1a72b2..00000000 --- a/node_modules/cross-fetch/index.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -declare const fet: typeof fetch; -declare const req: typeof Request; -declare const res: typeof Response; -declare const headers: typeof Headers; - -declare module "cross-fetch" { - export const fetch: typeof fet; - export const Request: typeof req; - export const Response: typeof res; - export const Headers: typeof headers; - export default fetch; -} diff --git a/node_modules/cross-fetch/node_modules/node-fetch/CHANGELOG.md b/node_modules/cross-fetch/node_modules/node-fetch/CHANGELOG.md deleted file mode 100644 index 6bc6196d..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/CHANGELOG.md +++ /dev/null @@ -1,219 +0,0 @@ - -Changelog -========= - - -# 2.x release - -## v2.1.2 - -- Fix: allow `Body` methods to work on ArrayBuffer`-backed `Body` objects -- Fix: reject promise returned by `Body` methods when the accumulated `Buffer` exceeds the maximum size -- Fix: support custom `Host` headers with any casing -- Fix: support importing `fetch()` from TypeScript in `browser.js` -- Fix: handle the redirect response body properly - -## v2.1.1 - -Fix packaging errors in v2.1.0. - -## v2.1.0 - -- Enhance: allow using ArrayBuffer as the `body` of a `fetch()` or `Request` -- Fix: store HTTP headers of a `Headers` object internally with the given case, for compatibility with older servers that incorrectly treated header names in a case-sensitive manner -- Fix: silently ignore invalid HTTP headers -- Fix: handle HTTP redirect responses without a `Location` header just like non-redirect responses -- Fix: include bodies when following a redirection when appropriate - -## v2.0.0 - -This is a major release. Check [our upgrade guide](https://github.com/bitinn/node-fetch/blob/master/UPGRADE-GUIDE.md) for an overview on some key differences between v1 and v2. - -### General changes - -- Major: Node.js 0.10.x and 0.12.x support is dropped -- Major: `require('node-fetch/lib/response')` etc. is now unsupported; use `require('node-fetch').Response` or ES6 module imports -- Enhance: start testing on Node.js v4.x, v6.x, v8.x LTS, as well as v9.x stable -- Enhance: use Rollup to produce a distributed bundle (less memory overhead and faster startup) -- Enhance: make `Object.prototype.toString()` on Headers, Requests, and Responses return correct class strings -- Other: rewrite in ES2015 using Babel -- Other: use Codecov for code coverage tracking -- Other: update package.json script for npm 5 -- Other: `encoding` module is now optional (alpha.7) -- Other: expose browser.js through package.json, avoid bundling mishaps (alpha.9) -- Other: allow TypeScript to `import` node-fetch by exposing default (alpha.9) - -### HTTP requests - -- Major: overwrite user's `Content-Length` if we can be sure our information is correct (per spec) -- Fix: errors in a response are caught before the body is accessed -- Fix: support WHATWG URL objects, created by `whatwg-url` package or `require('url').URL` in Node.js 7+ - -### Response and Request classes - -- Major: `response.text()` no longer attempts to detect encoding, instead always opting for UTF-8 (per spec); use `response.textConverted()` for the v1 behavior -- Major: make `response.json()` throw error instead of returning an empty object on 204 no-content respose (per spec; reverts behavior changed in v1.6.2) -- Major: internal methods are no longer exposed -- Major: throw error when a `GET` or `HEAD` Request is constructed with a non-null body (per spec) -- Enhance: add `response.arrayBuffer()` (also applies to Requests) -- Enhance: add experimental `response.blob()` (also applies to Requests) -- Enhance: `URLSearchParams` is now accepted as a body -- Enhance: wrap `response.json()` json parsing error as `FetchError` -- Fix: fix Request and Response with `null` body - -### Headers class - -- Major: remove `headers.getAll()`; make `get()` return all headers delimited by commas (per spec) -- Enhance: make Headers iterable -- Enhance: make Headers constructor accept an array of tuples -- Enhance: make sure header names and values are valid in HTTP -- Fix: coerce Headers prototype function parameters to strings, where applicable - -### Documentation - -- Enhance: more comprehensive API docs -- Enhance: add a list of default headers in README - - -# 1.x release - -## backport releases (v1.7.0 and beyond) - -See [changelog on 1.x branch](https://github.com/bitinn/node-fetch/blob/1.x/CHANGELOG.md) for details. - -## v1.6.3 - -- Enhance: error handling document to explain `FetchError` design -- Fix: support `form-data` 2.x releases (requires `form-data` >= 2.1.0) - -## v1.6.2 - -- Enhance: minor document update -- Fix: response.json() returns empty object on 204 no-content response instead of throwing a syntax error - -## v1.6.1 - -- Fix: if `res.body` is a non-stream non-formdata object, we will call `body.toString` and send it as a string -- Fix: `counter` value is incorrectly set to `follow` value when wrapping Request instance -- Fix: documentation update - -## v1.6.0 - -- Enhance: added `res.buffer()` api for convenience, it returns body as a Node.js buffer -- Enhance: better old server support by handling raw deflate response -- Enhance: skip encoding detection for non-HTML/XML response -- Enhance: minor document update -- Fix: HEAD request doesn't need decompression, as body is empty -- Fix: `req.body` now accepts a Node.js buffer - -## v1.5.3 - -- Fix: handle 204 and 304 responses when body is empty but content-encoding is gzip/deflate -- Fix: allow resolving response and cloned response in any order -- Fix: avoid setting `content-length` when `form-data` body use streams -- Fix: send DELETE request with content-length when body is present -- Fix: allow any url when calling new Request, but still reject non-http(s) url in fetch - -## v1.5.2 - -- Fix: allow node.js core to handle keep-alive connection pool when passing a custom agent - -## v1.5.1 - -- Fix: redirect mode `manual` should work even when there is no redirection or broken redirection - -## v1.5.0 - -- Enhance: rejected promise now use custom `Error` (thx to @pekeler) -- Enhance: `FetchError` contains `err.type` and `err.code`, allows for better error handling (thx to @pekeler) -- Enhance: basic support for redirect mode `manual` and `error`, allows for location header extraction (thx to @jimmywarting for the initial PR) - -## v1.4.1 - -- Fix: wrapping Request instance with FormData body again should preserve the body as-is - -## v1.4.0 - -- Enhance: Request and Response now have `clone` method (thx to @kirill-konshin for the initial PR) -- Enhance: Request and Response now have proper string and buffer body support (thx to @kirill-konshin) -- Enhance: Body constructor has been refactored out (thx to @kirill-konshin) -- Enhance: Headers now has `forEach` method (thx to @tricoder42) -- Enhance: back to 100% code coverage -- Fix: better form-data support (thx to @item4) -- Fix: better character encoding detection under chunked encoding (thx to @dsuket for the initial PR) - -## v1.3.3 - -- Fix: make sure `Content-Length` header is set when body is string for POST/PUT/PATCH requests -- Fix: handle body stream error, for cases such as incorrect `Content-Encoding` header -- Fix: when following certain redirects, use `GET` on subsequent request per Fetch Spec -- Fix: `Request` and `Response` constructors now parse headers input using `Headers` - -## v1.3.2 - -- Enhance: allow auto detect of form-data input (no `FormData` spec on node.js, this is form-data specific feature) - -## v1.3.1 - -- Enhance: allow custom host header to be set (server-side only feature, as it's a forbidden header on client-side) - -## v1.3.0 - -- Enhance: now `fetch.Request` is exposed as well - -## v1.2.1 - -- Enhance: `Headers` now normalized `Number` value to `String`, prevent common mistakes - -## v1.2.0 - -- Enhance: now fetch.Headers and fetch.Response are exposed, making testing easier - -## v1.1.2 - -- Fix: `Headers` should only support `String` and `Array` properties, and ignore others - -## v1.1.1 - -- Enhance: now req.headers accept both plain object and `Headers` instance - -## v1.1.0 - -- Enhance: timeout now also applies to response body (in case of slow response) -- Fix: timeout is now cleared properly when fetch is done/has failed - -## v1.0.6 - -- Fix: less greedy content-type charset matching - -## v1.0.5 - -- Fix: when `follow = 0`, fetch should not follow redirect -- Enhance: update tests for better coverage -- Enhance: code formatting -- Enhance: clean up doc - -## v1.0.4 - -- Enhance: test iojs support -- Enhance: timeout attached to socket event only fire once per redirect - -## v1.0.3 - -- Fix: response size limit should reject large chunk -- Enhance: added character encoding detection for xml, such as rss/atom feed (encoding in DTD) - -## v1.0.2 - -- Fix: added res.ok per spec change - -## v1.0.0 - -- Enhance: better test coverage and doc - - -# 0.x release - -## v0.1 - -- Major: initial public release diff --git a/node_modules/cross-fetch/node_modules/node-fetch/LICENSE.md b/node_modules/cross-fetch/node_modules/node-fetch/LICENSE.md deleted file mode 100644 index 660ffecb..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/LICENSE.md +++ /dev/null @@ -1,22 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2016 David Frank - -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. - diff --git a/node_modules/cross-fetch/node_modules/node-fetch/README.md b/node_modules/cross-fetch/node_modules/node-fetch/README.md deleted file mode 100644 index 5f9a091f..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/README.md +++ /dev/null @@ -1,409 +0,0 @@ - -node-fetch -========== - -[![npm stable version][npm-image]][npm-url] -[![npm next version][npm-next-image]][npm-url] -[![build status][travis-image]][travis-url] -[![coverage status][codecov-image]][codecov-url] - -A light-weight module that brings `window.fetch` to Node.js - - -## Motivation - -Instead of implementing `XMLHttpRequest` in Node.js to run browser-specific [Fetch polyfill](https://github.com/github/fetch), why not go from native `http` to `fetch` API directly? Hence `node-fetch`, minimal code for a `window.fetch` compatible API on Node.js runtime. - -See Matt Andrews' [isomorphic-fetch](https://github.com/matthew-andrews/isomorphic-fetch) or Leonardo Quixada's [cross-fetch](https://github.com/lquixada/cross-fetch) for isomorphic usage (exports `node-fetch` for server-side, `whatwg-fetch` for client-side). - - -## Features - -- Stay consistent with `window.fetch` API. -- Make conscious trade-off when following [whatwg fetch spec][whatwg-fetch] and [stream spec](https://streams.spec.whatwg.org/) implementation details, document known difference. -- Use native promise, but allow substituting it with [insert your favorite promise library]. -- Use native stream for body, on both request and response. -- Decode content encoding (gzip/deflate) properly, convert `res.text()` output to UTF-8 optionally. -- Useful extensions such as timeout, redirect limit, response size limit, [explicit errors][ERROR-HANDLING.md] for troubleshooting. - - -## Difference from client-side fetch - -- See [Known Differences][LIMITS.md] for details. -- If you happen to use a missing feature that `window.fetch` offers, feel free to open an issue. -- Pull requests are welcomed too! - - -## Install - -Stable release (`2.x`) - -```sh -$ npm install node-fetch --save -``` - -## Usage - -Note that documentation below is up-to-date with `2.x` releases, [see `1.x` readme](https://github.com/bitinn/node-fetch/blob/1.x/README.md), [changelog](https://github.com/bitinn/node-fetch/blob/1.x/CHANGELOG.md) and [2.x upgrade guide][UPGRADE-GUIDE.md] if you want to find out the difference. - -```javascript -import fetch from 'node-fetch'; -// or -// const fetch = require('node-fetch'); - -// if you are using your own Promise library, set it through fetch.Promise. Eg. - -// import Bluebird from 'bluebird'; -// fetch.Promise = Bluebird; - -// plain text or html - -fetch('https://github.com/') - .then(res => res.text()) - .then(body => console.log(body)); - -// json - -fetch('https://api.github.com/users/github') - .then(res => res.json()) - .then(json => console.log(json)); - -// catching network error -// 3xx-5xx responses are NOT network errors, and should be handled in then() -// you only need one catch() at the end of your promise chain - -fetch('http://domain.invalid/') - .catch(err => console.error(err)); - -// stream -// the node.js way is to use stream when possible - -fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png') - .then(res => { - const dest = fs.createWriteStream('./octocat.png'); - res.body.pipe(dest); - }); - -// buffer -// if you prefer to cache binary data in full, use buffer() -// note that buffer() is a node-fetch only API - -import fileType from 'file-type'; - -fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png') - .then(res => res.buffer()) - .then(buffer => fileType(buffer)) - .then(type => { /* ... */ }); - -// meta - -fetch('https://github.com/') - .then(res => { - console.log(res.ok); - console.log(res.status); - console.log(res.statusText); - console.log(res.headers.raw()); - console.log(res.headers.get('content-type')); - }); - -// post - -fetch('http://httpbin.org/post', { method: 'POST', body: 'a=1' }) - .then(res => res.json()) - .then(json => console.log(json)); - -// post with stream from file - -import { createReadStream } from 'fs'; - -const stream = createReadStream('input.txt'); -fetch('http://httpbin.org/post', { method: 'POST', body: stream }) - .then(res => res.json()) - .then(json => console.log(json)); - -// post with JSON - -var body = { a: 1 }; -fetch('http://httpbin.org/post', { - method: 'POST', - body: JSON.stringify(body), - headers: { 'Content-Type': 'application/json' }, -}) - .then(res => res.json()) - .then(json => console.log(json)); - -// post form parameters (x-www-form-urlencoded) - -import { URLSearchParams } from 'url'; - -const params = new URLSearchParams(); -params.append('a', 1); -fetch('http://httpbin.org/post', { method: 'POST', body: params }) - .then(res => res.json()) - .then(json => console.log(json)); - -// post with form-data (detect multipart) - -import FormData from 'form-data'; - -const form = new FormData(); -form.append('a', 1); -fetch('http://httpbin.org/post', { method: 'POST', body: form }) - .then(res => res.json()) - .then(json => console.log(json)); - -// post with form-data (custom headers) -// note that getHeaders() is non-standard API - -import FormData from 'form-data'; - -const form = new FormData(); -form.append('a', 1); -fetch('http://httpbin.org/post', { method: 'POST', body: form, headers: form.getHeaders() }) - .then(res => res.json()) - .then(json => console.log(json)); - -// node 7+ with async function - -(async function () { - const res = await fetch('https://api.github.com/users/github'); - const json = await res.json(); - console.log(json); -})(); -``` - -See [test cases](https://github.com/bitinn/node-fetch/blob/master/test/test.js) for more examples. - - -## API - -### fetch(url[, options]) - -- `url` A string representing the URL for fetching -- `options` [Options](#fetch-options) for the HTTP(S) request -- Returns: Promise<[Response](#class-response)> - -Perform an HTTP(S) fetch. - -`url` should be an absolute url, such as `http://example.com/`. A path-relative URL (`/file/under/root`) or protocol-relative URL (`//can-be-http-or-https.com/`) will result in a rejected promise. - - -#### Options - -The default values are shown after each option key. - -```js -{ - // These properties are part of the Fetch Standard - method: 'GET', - headers: {}, // request headers. format is the identical to that accepted by the Headers constructor (see below) - body: null, // request body. can be null, a string, a Buffer, a Blob, or a Node.js Readable stream - redirect: 'follow', // set to `manual` to extract redirect headers, `error` to reject redirect - - // The following properties are node-fetch extensions - follow: 20, // maximum redirect count. 0 to not follow redirect - timeout: 0, // req/res timeout in ms, it resets on redirect. 0 to disable (OS limit applies) - compress: true, // support gzip/deflate content encoding. false to disable - size: 0, // maximum response body size in bytes. 0 to disable - agent: null // http(s).Agent instance, allows custom proxy, certificate etc. -} -``` - -##### Default Headers - -If no values are set, the following request headers will be sent automatically: - -Header | Value ------------------ | -------------------------------------------------------- -`Accept-Encoding` | `gzip,deflate` _(when `options.compress === true`)_ -`Accept` | `*/*` -`Connection` | `close` _(when no `options.agent` is present)_ -`Content-Length` | _(automatically calculated, if possible)_ -`User-Agent` | `node-fetch/1.0 (+https://github.com/bitinn/node-fetch)` - - -### Class: Request - -An HTTP(S) request containing information about URL, method, headers, and the body. This class implements the [Body](#iface-body) interface. - -Due to the nature of Node.js, the following properties are not implemented at this moment: - -- `type` -- `destination` -- `referrer` -- `referrerPolicy` -- `mode` -- `credentials` -- `cache` -- `integrity` -- `keepalive` - -The following node-fetch extension properties are provided: - -- `follow` -- `compress` -- `counter` -- `agent` - -See [options](#fetch-options) for exact meaning of these extensions. - -#### new Request(input[, options]) - -*(spec-compliant)* - -- `input` A string representing a URL, or another `Request` (which will be cloned) -- `options` [Options][#fetch-options] for the HTTP(S) request - -Constructs a new `Request` object. The constructor is identical to that in the [browser](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request). - -In most cases, directly `fetch(url, options)` is simpler than creating a `Request` object. - - -### Class: Response - -An HTTP(S) response. This class implements the [Body](#iface-body) interface. - -The following properties are not implemented in node-fetch at this moment: - -- `Response.error()` -- `Response.redirect()` -- `type` -- `redirected` -- `trailer` - -#### new Response([body[, options]]) - -*(spec-compliant)* - -- `body` A string or [Readable stream][node-readable] -- `options` A [`ResponseInit`][response-init] options dictionary - -Constructs a new `Response` object. The constructor is identical to that in the [browser](https://developer.mozilla.org/en-US/docs/Web/API/Response/Response). - -Because Node.js does not implement service workers (for which this class was designed), one rarely has to construct a `Response` directly. - -#### response.ok - -Convenience property representing if the request ended normally. Will evaluate to true if the response status was greater than or equal to 200 but smaller than 300. - - -### Class: Headers - -This class allows manipulating and iterating over a set of HTTP headers. All methods specified in the [Fetch Standard][whatwg-fetch] are implemented. - -#### new Headers([init]) - -*(spec-compliant)* - -- `init` Optional argument to pre-fill the `Headers` object - -Construct a new `Headers` object. `init` can be either `null`, a `Headers` object, an key-value map object, or any iterable object. - -```js -// Example adapted from https://fetch.spec.whatwg.org/#example-headers-class - -const meta = { - 'Content-Type': 'text/xml', - 'Breaking-Bad': '<3' -}; -const headers = new Headers(meta); - -// The above is equivalent to -const meta = [ - [ 'Content-Type', 'text/xml' ], - [ 'Breaking-Bad', '<3' ] -]; -const headers = new Headers(meta); - -// You can in fact use any iterable objects, like a Map or even another Headers -const meta = new Map(); -meta.set('Content-Type', 'text/xml'); -meta.set('Breaking-Bad', '<3'); -const headers = new Headers(meta); -const copyOfHeaders = new Headers(headers); -``` - - -### Interface: Body - -`Body` is an abstract interface with methods that are applicable to both `Request` and `Response` classes. - -The following methods are not yet implemented in node-fetch at this moment: - -- `formData()` - -#### body.body - -*(deviation from spec)* - -* Node.js [`Readable` stream][node-readable] - -The data encapsulated in the `Body` object. Note that while the [Fetch Standard][whatwg-fetch] requires the property to always be a WHATWG `ReadableStream`, in node-fetch it is a Node.js [`Readable` stream][node-readable]. - -#### body.bodyUsed - -*(spec-compliant)* - -* `Boolean` - -A boolean property for if this body has been consumed. Per spec, a consumed body cannot be used again. - -#### body.arrayBuffer() -#### body.blob() -#### body.json() -#### body.text() - -*(spec-compliant)* - -* Returns: Promise - -Consume the body and return a promise that will resolve to one of these formats. - -#### body.buffer() - -*(node-fetch extension)* - -* Returns: Promise<Buffer> - -Consume the body and return a promise that will resolve to a Buffer. - -#### body.textConverted() - -*(node-fetch extension)* - -* Returns: Promise<String> - -Identical to `body.text()`, except instead of always converting to UTF-8, encoding sniffing will be performed and text converted to UTF-8, if possible. - - -### Class: FetchError - -*(node-fetch extension)* - -An operational error in the fetching process. See [ERROR-HANDLING.md][] for more info. - -## License - -MIT - - -## Acknowledgement - -Thanks to [github/fetch](https://github.com/github/fetch) for providing a solid implementation reference. - - -[npm-image]: https://img.shields.io/npm/v/node-fetch.svg?style=flat-square -[npm-next-image]: https://img.shields.io/npm/v/node-fetch/next.svg?style=flat-square -[npm-url]: https://www.npmjs.com/package/node-fetch -[travis-image]: https://img.shields.io/travis/bitinn/node-fetch.svg?style=flat-square -[travis-url]: https://travis-ci.org/bitinn/node-fetch -[codecov-image]: https://img.shields.io/codecov/c/github/bitinn/node-fetch.svg?style=flat-square -[codecov-url]: https://codecov.io/gh/bitinn/node-fetch - -[ERROR-HANDLING.md]: https://github.com/bitinn/node-fetch/blob/master/ERROR-HANDLING.md -[LIMITS.md]: https://github.com/bitinn/node-fetch/blob/master/LIMITS.md -[UPGRADE-GUIDE.md]: https://github.com/bitinn/node-fetch/blob/master/UPGRADE-GUIDE.md - -[whatwg-fetch]: https://fetch.spec.whatwg.org/ -[response-init]: https://fetch.spec.whatwg.org/#responseinit -[node-readable]: https://nodejs.org/api/stream.html#stream_readable_streams diff --git a/node_modules/cross-fetch/node_modules/node-fetch/browser.js b/node_modules/cross-fetch/node_modules/node-fetch/browser.js deleted file mode 100644 index ee023e0c..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/browser.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = exports = window.fetch; - -// Needed for TypeScript and Webpack. -exports.default = window.fetch.bind(window); - -exports.Headers = window.Headers; -exports.Request = window.Request; -exports.Response = window.Response; diff --git a/node_modules/cross-fetch/node_modules/node-fetch/lib/index.es.js b/node_modules/cross-fetch/node_modules/node-fetch/lib/index.es.js deleted file mode 100644 index 9caec448..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/lib/index.es.js +++ /dev/null @@ -1,1550 +0,0 @@ -// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js -// (MIT licensed) - -const BUFFER = Symbol('buffer'); -const TYPE = Symbol('type'); - -class Blob { - constructor() { - this[TYPE] = ''; - - const blobParts = arguments[0]; - const options = arguments[1]; - - const buffers = []; - - if (blobParts) { - const a = blobParts; - const length = Number(a.length); - for (let i = 0; i < length; i++) { - const element = a[i]; - let buffer; - if (element instanceof Buffer) { - buffer = element; - } else if (ArrayBuffer.isView(element)) { - buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength); - } else if (element instanceof ArrayBuffer) { - buffer = Buffer.from(element); - } else if (element instanceof Blob) { - buffer = element[BUFFER]; - } else { - buffer = Buffer.from(typeof element === 'string' ? element : String(element)); - } - buffers.push(buffer); - } - } - - this[BUFFER] = Buffer.concat(buffers); - - let type = options && options.type !== undefined && String(options.type).toLowerCase(); - if (type && !/[^\u0020-\u007E]/.test(type)) { - this[TYPE] = type; - } - } - get size() { - return this[BUFFER].length; - } - get type() { - return this[TYPE]; - } - slice() { - const size = this.size; - - const start = arguments[0]; - const end = arguments[1]; - let relativeStart, relativeEnd; - if (start === undefined) { - relativeStart = 0; - } else if (start < 0) { - relativeStart = Math.max(size + start, 0); - } else { - relativeStart = Math.min(start, size); - } - if (end === undefined) { - relativeEnd = size; - } else if (end < 0) { - relativeEnd = Math.max(size + end, 0); - } else { - relativeEnd = Math.min(end, size); - } - const span = Math.max(relativeEnd - relativeStart, 0); - - const buffer = this[BUFFER]; - const slicedBuffer = buffer.slice(relativeStart, relativeStart + span); - const blob = new Blob([], { type: arguments[2] }); - blob[BUFFER] = slicedBuffer; - return blob; - } -} - -Object.defineProperties(Blob.prototype, { - size: { enumerable: true }, - type: { enumerable: true }, - slice: { enumerable: true } -}); - -Object.defineProperty(Blob.prototype, Symbol.toStringTag, { - value: 'Blob', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * fetch-error.js - * - * FetchError interface for operational errors - */ - -/** - * Create FetchError instance - * - * @param String message Error message for human - * @param String type Error type for machine - * @param String systemError For Node.js system error - * @return FetchError - */ -function FetchError(message, type, systemError) { - Error.call(this, message); - - this.message = message; - this.type = type; - - // when err.type is `system`, err.code contains system error code - if (systemError) { - this.code = this.errno = systemError.code; - } - - // hide custom error implementation details from end-users - Error.captureStackTrace(this, this.constructor); -} - -FetchError.prototype = Object.create(Error.prototype); -FetchError.prototype.constructor = FetchError; -FetchError.prototype.name = 'FetchError'; - -/** - * body.js - * - * Body interface provides common methods for Request and Response - */ - -const Stream = require('stream'); - -var _require = require('stream'); - -const PassThrough = _require.PassThrough; - - -let convert; -try { - convert = require('encoding').convert; -} catch (e) {} - -const INTERNALS = Symbol('Body internals'); - -/** - * Body mixin - * - * Ref: https://fetch.spec.whatwg.org/#body - * - * @param Stream body Readable stream - * @param Object opts Response options - * @return Void - */ -function Body(body) { - var _this = this; - - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - _ref$size = _ref.size; - - let size = _ref$size === undefined ? 0 : _ref$size; - var _ref$timeout = _ref.timeout; - let timeout = _ref$timeout === undefined ? 0 : _ref$timeout; - - if (body == null) { - // body is undefined or null - body = null; - } else if (typeof body === 'string') { - // body is string - } else if (isURLSearchParams(body)) { - // body is a URLSearchParams - } else if (body instanceof Blob) { - // body is blob - } else if (Buffer.isBuffer(body)) { - // body is buffer - } else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') { - // body is array buffer - } else if (body instanceof Stream) { - // body is stream - } else { - // none of the above - // coerce to string - body = String(body); - } - this[INTERNALS] = { - body, - disturbed: false, - error: null - }; - this.size = size; - this.timeout = timeout; - - if (body instanceof Stream) { - body.on('error', function (err) { - _this[INTERNALS].error = new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err); - }); - } -} - -Body.prototype = { - get body() { - return this[INTERNALS].body; - }, - - get bodyUsed() { - return this[INTERNALS].disturbed; - }, - - /** - * Decode response as ArrayBuffer - * - * @return Promise - */ - arrayBuffer() { - return consumeBody.call(this).then(function (buf) { - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); - }); - }, - - /** - * Return raw response as Blob - * - * @return Promise - */ - blob() { - let ct = this.headers && this.headers.get('content-type') || ''; - return consumeBody.call(this).then(function (buf) { - return Object.assign( - // Prevent copying - new Blob([], { - type: ct.toLowerCase() - }), { - [BUFFER]: buf - }); - }); - }, - - /** - * Decode response as json - * - * @return Promise - */ - json() { - var _this2 = this; - - return consumeBody.call(this).then(function (buffer) { - try { - return JSON.parse(buffer.toString()); - } catch (err) { - return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json')); - } - }); - }, - - /** - * Decode response as text - * - * @return Promise - */ - text() { - return consumeBody.call(this).then(function (buffer) { - return buffer.toString(); - }); - }, - - /** - * Decode response as buffer (non-spec api) - * - * @return Promise - */ - buffer() { - return consumeBody.call(this); - }, - - /** - * Decode response as text, while automatically detecting the encoding and - * trying to decode to UTF-8 (non-spec api) - * - * @return Promise - */ - textConverted() { - var _this3 = this; - - return consumeBody.call(this).then(function (buffer) { - return convertBody(buffer, _this3.headers); - }); - } - -}; - -// In browsers, all properties are enumerable. -Object.defineProperties(Body.prototype, { - body: { enumerable: true }, - bodyUsed: { enumerable: true }, - arrayBuffer: { enumerable: true }, - blob: { enumerable: true }, - json: { enumerable: true }, - text: { enumerable: true } -}); - -Body.mixIn = function (proto) { - for (const name of Object.getOwnPropertyNames(Body.prototype)) { - // istanbul ignore else: future proof - if (!(name in proto)) { - const desc = Object.getOwnPropertyDescriptor(Body.prototype, name); - Object.defineProperty(proto, name, desc); - } - } -}; - -/** - * Consume and convert an entire Body to a Buffer. - * - * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body - * - * @return Promise - */ -function consumeBody() { - var _this4 = this; - - if (this[INTERNALS].disturbed) { - return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`)); - } - - this[INTERNALS].disturbed = true; - - if (this[INTERNALS].error) { - return Body.Promise.reject(this[INTERNALS].error); - } - - // body is null - if (this.body === null) { - return Body.Promise.resolve(Buffer.alloc(0)); - } - - // body is string - if (typeof this.body === 'string') { - return Body.Promise.resolve(Buffer.from(this.body)); - } - - // body is blob - if (this.body instanceof Blob) { - return Body.Promise.resolve(this.body[BUFFER]); - } - - // body is buffer - if (Buffer.isBuffer(this.body)) { - return Body.Promise.resolve(this.body); - } - - // body is buffer - if (Object.prototype.toString.call(this.body) === '[object ArrayBuffer]') { - return Body.Promise.resolve(Buffer.from(this.body)); - } - - // istanbul ignore if: should never happen - if (!(this.body instanceof Stream)) { - return Body.Promise.resolve(Buffer.alloc(0)); - } - - // body is stream - // get ready to actually consume the body - let accum = []; - let accumBytes = 0; - let abort = false; - - return new Body.Promise(function (resolve, reject) { - let resTimeout; - - // allow timeout on slow response body - if (_this4.timeout) { - resTimeout = setTimeout(function () { - abort = true; - reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout')); - }, _this4.timeout); - } - - // handle stream error, such as incorrect content-encoding - _this4.body.on('error', function (err) { - reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err)); - }); - - _this4.body.on('data', function (chunk) { - if (abort || chunk === null) { - return; - } - - if (_this4.size && accumBytes + chunk.length > _this4.size) { - abort = true; - reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size')); - return; - } - - accumBytes += chunk.length; - accum.push(chunk); - }); - - _this4.body.on('end', function () { - if (abort) { - return; - } - - clearTimeout(resTimeout); - - try { - resolve(Buffer.concat(accum)); - } catch (err) { - // handle streams that have accumulated too much data (issue #414) - reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err)); - } - }); - }); -} - -/** - * Detect buffer encoding and convert to target encoding - * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding - * - * @param Buffer buffer Incoming buffer - * @param String encoding Target encoding - * @return String - */ -function convertBody(buffer, headers) { - if (typeof convert !== 'function') { - throw new Error('The package `encoding` must be installed to use the textConverted() function'); - } - - const ct = headers.get('content-type'); - let charset = 'utf-8'; - let res, str; - - // header - if (ct) { - res = /charset=([^;]*)/i.exec(ct); - } - - // no charset in content type, peek at response body for at most 1024 bytes - str = buffer.slice(0, 1024).toString(); - - // html5 - if (!res && str) { - res = / 0 && arguments[0] !== undefined ? arguments[0] : undefined; - - this[MAP] = Object.create(null); - - if (init instanceof Headers) { - const rawHeaders = init.raw(); - const headerNames = Object.keys(rawHeaders); - - for (const headerName of headerNames) { - for (const value of rawHeaders[headerName]) { - this.append(headerName, value); - } - } - - return; - } - - // We don't worry about converting prop to ByteString here as append() - // will handle it. - if (init == null) { - // no op - } else if (typeof init === 'object') { - const method = init[Symbol.iterator]; - if (method != null) { - if (typeof method !== 'function') { - throw new TypeError('Header pairs must be iterable'); - } - - // sequence> - // Note: per spec we have to first exhaust the lists then process them - const pairs = []; - for (const pair of init) { - if (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') { - throw new TypeError('Each header pair must be iterable'); - } - pairs.push(Array.from(pair)); - } - - for (const pair of pairs) { - if (pair.length !== 2) { - throw new TypeError('Each header pair must be a name/value tuple'); - } - this.append(pair[0], pair[1]); - } - } else { - // record - for (const key of Object.keys(init)) { - const value = init[key]; - this.append(key, value); - } - } - } else { - throw new TypeError('Provided initializer must be an object'); - } - } - - /** - * Return combined header value given name - * - * @param String name Header name - * @return Mixed - */ - get(name) { - name = `${name}`; - validateName(name); - const key = find(this[MAP], name); - if (key === undefined) { - return null; - } - - return this[MAP][key].join(', '); - } - - /** - * Iterate over all headers - * - * @param Function callback Executed for each item with parameters (value, name, thisArg) - * @param Boolean thisArg `this` context for callback function - * @return Void - */ - forEach(callback) { - let thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined; - - let pairs = getHeaders(this); - let i = 0; - while (i < pairs.length) { - var _pairs$i = pairs[i]; - const name = _pairs$i[0], - value = _pairs$i[1]; - - callback.call(thisArg, value, name, this); - pairs = getHeaders(this); - i++; - } - } - - /** - * Overwrite header values given name - * - * @param String name Header name - * @param String value Header value - * @return Void - */ - set(name, value) { - name = `${name}`; - value = `${value}`; - validateName(name); - validateValue(value); - const key = find(this[MAP], name); - this[MAP][key !== undefined ? key : name] = [value]; - } - - /** - * Append a value onto existing header - * - * @param String name Header name - * @param String value Header value - * @return Void - */ - append(name, value) { - name = `${name}`; - value = `${value}`; - validateName(name); - validateValue(value); - const key = find(this[MAP], name); - if (key !== undefined) { - this[MAP][key].push(value); - } else { - this[MAP][name] = [value]; - } - } - - /** - * Check for header name existence - * - * @param String name Header name - * @return Boolean - */ - has(name) { - name = `${name}`; - validateName(name); - return find(this[MAP], name) !== undefined; - } - - /** - * Delete all header values given name - * - * @param String name Header name - * @return Void - */ - delete(name) { - name = `${name}`; - validateName(name); - const key = find(this[MAP], name); - if (key !== undefined) { - delete this[MAP][key]; - } - } - - /** - * Return raw headers (non-spec api) - * - * @return Object - */ - raw() { - return this[MAP]; - } - - /** - * Get an iterator on keys. - * - * @return Iterator - */ - keys() { - return createHeadersIterator(this, 'key'); - } - - /** - * Get an iterator on values. - * - * @return Iterator - */ - values() { - return createHeadersIterator(this, 'value'); - } - - /** - * Get an iterator on entries. - * - * This is the default iterator of the Headers object. - * - * @return Iterator - */ - [Symbol.iterator]() { - return createHeadersIterator(this, 'key+value'); - } -} -Headers.prototype.entries = Headers.prototype[Symbol.iterator]; - -Object.defineProperty(Headers.prototype, Symbol.toStringTag, { - value: 'Headers', - writable: false, - enumerable: false, - configurable: true -}); - -Object.defineProperties(Headers.prototype, { - get: { enumerable: true }, - forEach: { enumerable: true }, - set: { enumerable: true }, - append: { enumerable: true }, - has: { enumerable: true }, - delete: { enumerable: true }, - keys: { enumerable: true }, - values: { enumerable: true }, - entries: { enumerable: true } -}); - -function getHeaders(headers) { - let kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value'; - - const keys = Object.keys(headers[MAP]).sort(); - return keys.map(kind === 'key' ? function (k) { - return k.toLowerCase(); - } : kind === 'value' ? function (k) { - return headers[MAP][k].join(', '); - } : function (k) { - return [k.toLowerCase(), headers[MAP][k].join(', ')]; - }); -} - -const INTERNAL = Symbol('internal'); - -function createHeadersIterator(target, kind) { - const iterator = Object.create(HeadersIteratorPrototype); - iterator[INTERNAL] = { - target, - kind, - index: 0 - }; - return iterator; -} - -const HeadersIteratorPrototype = Object.setPrototypeOf({ - next() { - // istanbul ignore if - if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) { - throw new TypeError('Value of `this` is not a HeadersIterator'); - } - - var _INTERNAL = this[INTERNAL]; - const target = _INTERNAL.target, - kind = _INTERNAL.kind, - index = _INTERNAL.index; - - const values = getHeaders(target, kind); - const len = values.length; - if (index >= len) { - return { - value: undefined, - done: true - }; - } - - this[INTERNAL].index = index + 1; - - return { - value: values[index], - done: false - }; - } -}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))); - -Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, { - value: 'HeadersIterator', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * Export the Headers object in a form that Node.js can consume. - * - * @param Headers headers - * @return Object - */ -function exportNodeCompatibleHeaders(headers) { - const obj = Object.assign({ __proto__: null }, headers[MAP]); - - // http.request() only supports string as Host header. This hack makes - // specifying custom Host header possible. - const hostHeaderKey = find(headers[MAP], 'Host'); - if (hostHeaderKey !== undefined) { - obj[hostHeaderKey] = obj[hostHeaderKey][0]; - } - - return obj; -} - -/** - * Create a Headers object from an object of headers, ignoring those that do - * not conform to HTTP grammar productions. - * - * @param Object obj Object of headers - * @return Headers - */ -function createHeadersLenient(obj) { - const headers = new Headers(); - for (const name of Object.keys(obj)) { - if (invalidTokenRegex.test(name)) { - continue; - } - if (Array.isArray(obj[name])) { - for (const val of obj[name]) { - if (invalidHeaderCharRegex.test(val)) { - continue; - } - if (headers[MAP][name] === undefined) { - headers[MAP][name] = [val]; - } else { - headers[MAP][name].push(val); - } - } - } else if (!invalidHeaderCharRegex.test(obj[name])) { - headers[MAP][name] = [obj[name]]; - } - } - return headers; -} - -/** - * response.js - * - * Response class provides content decoding - */ - -var _require$1 = require('http'); - -const STATUS_CODES = _require$1.STATUS_CODES; - - -const INTERNALS$1 = Symbol('Response internals'); - -/** - * Response class - * - * @param Stream body Readable stream - * @param Object opts Response options - * @return Void - */ -class Response { - constructor() { - let body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; - let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - - Body.call(this, body, opts); - - const status = opts.status || 200; - - this[INTERNALS$1] = { - url: opts.url, - status, - statusText: opts.statusText || STATUS_CODES[status], - headers: new Headers(opts.headers) - }; - } - - get url() { - return this[INTERNALS$1].url; - } - - get status() { - return this[INTERNALS$1].status; - } - - /** - * Convenience property representing if the request ended normally - */ - get ok() { - return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300; - } - - get statusText() { - return this[INTERNALS$1].statusText; - } - - get headers() { - return this[INTERNALS$1].headers; - } - - /** - * Clone this response - * - * @return Response - */ - clone() { - return new Response(clone(this), { - url: this.url, - status: this.status, - statusText: this.statusText, - headers: this.headers, - ok: this.ok - }); - } -} - -Body.mixIn(Response.prototype); - -Object.defineProperties(Response.prototype, { - url: { enumerable: true }, - status: { enumerable: true }, - ok: { enumerable: true }, - statusText: { enumerable: true }, - headers: { enumerable: true }, - clone: { enumerable: true } -}); - -Object.defineProperty(Response.prototype, Symbol.toStringTag, { - value: 'Response', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * request.js - * - * Request class contains server only options - * - * All spec algorithm step numbers are based on https://fetch.spec.whatwg.org/commit-snapshots/ae716822cb3a61843226cd090eefc6589446c1d2/. - */ - -var _require$2 = require('url'); - -const format_url = _require$2.format; -const parse_url = _require$2.parse; - - -const INTERNALS$2 = Symbol('Request internals'); - -/** - * Check if a value is an instance of Request. - * - * @param Mixed input - * @return Boolean - */ -function isRequest(input) { - return typeof input === 'object' && typeof input[INTERNALS$2] === 'object'; -} - -/** - * Request class - * - * @param Mixed input Url or Request instance - * @param Object init Custom options - * @return Void - */ -class Request { - constructor(input) { - let init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - - let parsedURL; - - // normalize input - if (!isRequest(input)) { - if (input && input.href) { - // in order to support Node.js' Url objects; though WHATWG's URL objects - // will fall into this branch also (since their `toString()` will return - // `href` property anyway) - parsedURL = parse_url(input.href); - } else { - // coerce input to a string before attempting to parse - parsedURL = parse_url(`${input}`); - } - input = {}; - } else { - parsedURL = parse_url(input.url); - } - - let method = init.method || input.method || 'GET'; - method = method.toUpperCase(); - - if ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) { - throw new TypeError('Request with GET/HEAD method cannot have body'); - } - - let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null; - - Body.call(this, inputBody, { - timeout: init.timeout || input.timeout || 0, - size: init.size || input.size || 0 - }); - - const headers = new Headers(init.headers || input.headers || {}); - - if (init.body != null) { - const contentType = extractContentType(this); - if (contentType !== null && !headers.has('Content-Type')) { - headers.append('Content-Type', contentType); - } - } - - this[INTERNALS$2] = { - method, - redirect: init.redirect || input.redirect || 'follow', - headers, - parsedURL - }; - - // node-fetch-only options - this.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20; - this.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true; - this.counter = init.counter || input.counter || 0; - this.agent = init.agent || input.agent; - } - - get method() { - return this[INTERNALS$2].method; - } - - get url() { - return format_url(this[INTERNALS$2].parsedURL); - } - - get headers() { - return this[INTERNALS$2].headers; - } - - get redirect() { - return this[INTERNALS$2].redirect; - } - - /** - * Clone this request - * - * @return Request - */ - clone() { - return new Request(this); - } -} - -Body.mixIn(Request.prototype); - -Object.defineProperty(Request.prototype, Symbol.toStringTag, { - value: 'Request', - writable: false, - enumerable: false, - configurable: true -}); - -Object.defineProperties(Request.prototype, { - method: { enumerable: true }, - url: { enumerable: true }, - headers: { enumerable: true }, - redirect: { enumerable: true }, - clone: { enumerable: true } -}); - -/** - * Convert a Request to Node.js http request options. - * - * @param Request A Request instance - * @return Object The options object to be passed to http.request - */ -function getNodeRequestOptions(request) { - const parsedURL = request[INTERNALS$2].parsedURL; - const headers = new Headers(request[INTERNALS$2].headers); - - // fetch step 1.3 - if (!headers.has('Accept')) { - headers.set('Accept', '*/*'); - } - - // Basic fetch - if (!parsedURL.protocol || !parsedURL.hostname) { - throw new TypeError('Only absolute URLs are supported'); - } - - if (!/^https?:$/.test(parsedURL.protocol)) { - throw new TypeError('Only HTTP(S) protocols are supported'); - } - - // HTTP-network-or-cache fetch steps 2.4-2.7 - let contentLengthValue = null; - if (request.body == null && /^(POST|PUT)$/i.test(request.method)) { - contentLengthValue = '0'; - } - if (request.body != null) { - const totalBytes = getTotalBytes(request); - if (typeof totalBytes === 'number') { - contentLengthValue = String(totalBytes); - } - } - if (contentLengthValue) { - headers.set('Content-Length', contentLengthValue); - } - - // HTTP-network-or-cache fetch step 2.11 - if (!headers.has('User-Agent')) { - headers.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)'); - } - - // HTTP-network-or-cache fetch step 2.15 - if (request.compress) { - headers.set('Accept-Encoding', 'gzip,deflate'); - } - if (!headers.has('Connection') && !request.agent) { - headers.set('Connection', 'close'); - } - - // HTTP-network fetch step 4.2 - // chunked encoding is handled by Node.js - - return Object.assign({}, parsedURL, { - method: request.method, - headers: exportNodeCompatibleHeaders(headers), - agent: request.agent - }); -} - -/** - * index.js - * - * a request API compatible with window.fetch - * - * All spec algorithm step numbers are based on https://fetch.spec.whatwg.org/commit-snapshots/ae716822cb3a61843226cd090eefc6589446c1d2/. - */ - -const http = require('http'); -const https = require('https'); - -var _require$3 = require('stream'); - -const PassThrough$1 = _require$3.PassThrough; - -var _require2 = require('url'); - -const resolve_url = _require2.resolve; - -const zlib = require('zlib'); - -/** - * Fetch function - * - * @param Mixed url Absolute url or Request instance - * @param Object opts Fetch options - * @return Promise - */ -function fetch(url, opts) { - - // allow custom promise - if (!fetch.Promise) { - throw new Error('native promise missing, set fetch.Promise to your favorite alternative'); - } - - Body.Promise = fetch.Promise; - - // wrap http.request into fetch - return new fetch.Promise(function (resolve, reject) { - // build request object - const request = new Request(url, opts); - const options = getNodeRequestOptions(request); - - const send = (options.protocol === 'https:' ? https : http).request; - - // send request - const req = send(options); - let reqTimeout; - - function finalize() { - req.abort(); - clearTimeout(reqTimeout); - } - - if (request.timeout) { - req.once('socket', function (socket) { - reqTimeout = setTimeout(function () { - reject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout')); - finalize(); - }, request.timeout); - }); - } - - req.on('error', function (err) { - reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err)); - finalize(); - }); - - req.on('response', function (res) { - clearTimeout(reqTimeout); - - const headers = createHeadersLenient(res.headers); - - // HTTP fetch step 5 - if (fetch.isRedirect(res.statusCode)) { - // HTTP fetch step 5.2 - const location = headers.get('Location'); - - // HTTP fetch step 5.3 - const locationURL = location === null ? null : resolve_url(request.url, location); - - // HTTP fetch step 5.5 - switch (request.redirect) { - case 'error': - reject(new FetchError(`redirect mode is set to error: ${request.url}`, 'no-redirect')); - finalize(); - return; - case 'manual': - // node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL. - if (locationURL !== null) { - headers.set('Location', locationURL); - } - break; - case 'follow': - // HTTP-redirect fetch step 2 - if (locationURL === null) { - break; - } - - // HTTP-redirect fetch step 5 - if (request.counter >= request.follow) { - reject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect')); - finalize(); - return; - } - - // HTTP-redirect fetch step 6 (counter increment) - // Create a new Request object. - const requestOpts = { - headers: new Headers(request.headers), - follow: request.follow, - counter: request.counter + 1, - agent: request.agent, - compress: request.compress, - method: request.method, - body: request.body - }; - - // HTTP-redirect fetch step 9 - if (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) { - reject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect')); - finalize(); - return; - } - - // HTTP-redirect fetch step 11 - if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') { - requestOpts.method = 'GET'; - requestOpts.body = undefined; - requestOpts.headers.delete('content-length'); - } - - // HTTP-redirect fetch step 15 - resolve(fetch(new Request(locationURL, requestOpts))); - finalize(); - return; - } - } - - // prepare response - let body = res.pipe(new PassThrough$1()); - const response_options = { - url: request.url, - status: res.statusCode, - statusText: res.statusMessage, - headers: headers, - size: request.size, - timeout: request.timeout - }; - - // HTTP-network fetch step 12.1.1.3 - const codings = headers.get('Content-Encoding'); - - // HTTP-network fetch step 12.1.1.4: handle content codings - - // in following scenarios we ignore compression support - // 1. compression support is disabled - // 2. HEAD request - // 3. no Content-Encoding header - // 4. no content response (204) - // 5. content not modified response (304) - if (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) { - resolve(new Response(body, response_options)); - return; - } - - // For Node v6+ - // Be less strict when decoding compressed responses, since sometimes - // servers send slightly invalid responses that are still accepted - // by common browsers. - // Always using Z_SYNC_FLUSH is what cURL does. - const zlibOptions = { - flush: zlib.Z_SYNC_FLUSH, - finishFlush: zlib.Z_SYNC_FLUSH - }; - - // for gzip - if (codings == 'gzip' || codings == 'x-gzip') { - body = body.pipe(zlib.createGunzip(zlibOptions)); - resolve(new Response(body, response_options)); - return; - } - - // for deflate - if (codings == 'deflate' || codings == 'x-deflate') { - // handle the infamous raw deflate response from old servers - // a hack for old IIS and Apache servers - const raw = res.pipe(new PassThrough$1()); - raw.once('data', function (chunk) { - // see http://stackoverflow.com/questions/37519828 - if ((chunk[0] & 0x0F) === 0x08) { - body = body.pipe(zlib.createInflate()); - } else { - body = body.pipe(zlib.createInflateRaw()); - } - resolve(new Response(body, response_options)); - }); - return; - } - - // otherwise, use response as-is - resolve(new Response(body, response_options)); - }); - - writeToStream(req, request); - }); -} - -/** - * Redirect code matching - * - * @param Number code Status code - * @return Boolean - */ -fetch.isRedirect = function (code) { - return code === 301 || code === 302 || code === 303 || code === 307 || code === 308; -}; - -// Needed for TypeScript. -fetch.default = fetch; - -// expose Promise -fetch.Promise = global.Promise; - -export default fetch; -export { Headers, Request, Response, FetchError }; diff --git a/node_modules/cross-fetch/node_modules/node-fetch/lib/index.js b/node_modules/cross-fetch/node_modules/node-fetch/lib/index.js deleted file mode 100644 index f08ceb54..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/lib/index.js +++ /dev/null @@ -1,1557 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js -// (MIT licensed) - -const BUFFER = Symbol('buffer'); -const TYPE = Symbol('type'); - -class Blob { - constructor() { - this[TYPE] = ''; - - const blobParts = arguments[0]; - const options = arguments[1]; - - const buffers = []; - - if (blobParts) { - const a = blobParts; - const length = Number(a.length); - for (let i = 0; i < length; i++) { - const element = a[i]; - let buffer; - if (element instanceof Buffer) { - buffer = element; - } else if (ArrayBuffer.isView(element)) { - buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength); - } else if (element instanceof ArrayBuffer) { - buffer = Buffer.from(element); - } else if (element instanceof Blob) { - buffer = element[BUFFER]; - } else { - buffer = Buffer.from(typeof element === 'string' ? element : String(element)); - } - buffers.push(buffer); - } - } - - this[BUFFER] = Buffer.concat(buffers); - - let type = options && options.type !== undefined && String(options.type).toLowerCase(); - if (type && !/[^\u0020-\u007E]/.test(type)) { - this[TYPE] = type; - } - } - get size() { - return this[BUFFER].length; - } - get type() { - return this[TYPE]; - } - slice() { - const size = this.size; - - const start = arguments[0]; - const end = arguments[1]; - let relativeStart, relativeEnd; - if (start === undefined) { - relativeStart = 0; - } else if (start < 0) { - relativeStart = Math.max(size + start, 0); - } else { - relativeStart = Math.min(start, size); - } - if (end === undefined) { - relativeEnd = size; - } else if (end < 0) { - relativeEnd = Math.max(size + end, 0); - } else { - relativeEnd = Math.min(end, size); - } - const span = Math.max(relativeEnd - relativeStart, 0); - - const buffer = this[BUFFER]; - const slicedBuffer = buffer.slice(relativeStart, relativeStart + span); - const blob = new Blob([], { type: arguments[2] }); - blob[BUFFER] = slicedBuffer; - return blob; - } -} - -Object.defineProperties(Blob.prototype, { - size: { enumerable: true }, - type: { enumerable: true }, - slice: { enumerable: true } -}); - -Object.defineProperty(Blob.prototype, Symbol.toStringTag, { - value: 'Blob', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * fetch-error.js - * - * FetchError interface for operational errors - */ - -/** - * Create FetchError instance - * - * @param String message Error message for human - * @param String type Error type for machine - * @param String systemError For Node.js system error - * @return FetchError - */ -function FetchError(message, type, systemError) { - Error.call(this, message); - - this.message = message; - this.type = type; - - // when err.type is `system`, err.code contains system error code - if (systemError) { - this.code = this.errno = systemError.code; - } - - // hide custom error implementation details from end-users - Error.captureStackTrace(this, this.constructor); -} - -FetchError.prototype = Object.create(Error.prototype); -FetchError.prototype.constructor = FetchError; -FetchError.prototype.name = 'FetchError'; - -/** - * body.js - * - * Body interface provides common methods for Request and Response - */ - -const Stream = require('stream'); - -var _require = require('stream'); - -const PassThrough = _require.PassThrough; - - -let convert; -try { - convert = require('encoding').convert; -} catch (e) {} - -const INTERNALS = Symbol('Body internals'); - -/** - * Body mixin - * - * Ref: https://fetch.spec.whatwg.org/#body - * - * @param Stream body Readable stream - * @param Object opts Response options - * @return Void - */ -function Body(body) { - var _this = this; - - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - _ref$size = _ref.size; - - let size = _ref$size === undefined ? 0 : _ref$size; - var _ref$timeout = _ref.timeout; - let timeout = _ref$timeout === undefined ? 0 : _ref$timeout; - - if (body == null) { - // body is undefined or null - body = null; - } else if (typeof body === 'string') { - // body is string - } else if (isURLSearchParams(body)) { - // body is a URLSearchParams - } else if (body instanceof Blob) { - // body is blob - } else if (Buffer.isBuffer(body)) { - // body is buffer - } else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') { - // body is array buffer - } else if (body instanceof Stream) { - // body is stream - } else { - // none of the above - // coerce to string - body = String(body); - } - this[INTERNALS] = { - body, - disturbed: false, - error: null - }; - this.size = size; - this.timeout = timeout; - - if (body instanceof Stream) { - body.on('error', function (err) { - _this[INTERNALS].error = new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err); - }); - } -} - -Body.prototype = { - get body() { - return this[INTERNALS].body; - }, - - get bodyUsed() { - return this[INTERNALS].disturbed; - }, - - /** - * Decode response as ArrayBuffer - * - * @return Promise - */ - arrayBuffer() { - return consumeBody.call(this).then(function (buf) { - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); - }); - }, - - /** - * Return raw response as Blob - * - * @return Promise - */ - blob() { - let ct = this.headers && this.headers.get('content-type') || ''; - return consumeBody.call(this).then(function (buf) { - return Object.assign( - // Prevent copying - new Blob([], { - type: ct.toLowerCase() - }), { - [BUFFER]: buf - }); - }); - }, - - /** - * Decode response as json - * - * @return Promise - */ - json() { - var _this2 = this; - - return consumeBody.call(this).then(function (buffer) { - try { - return JSON.parse(buffer.toString()); - } catch (err) { - return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json')); - } - }); - }, - - /** - * Decode response as text - * - * @return Promise - */ - text() { - return consumeBody.call(this).then(function (buffer) { - return buffer.toString(); - }); - }, - - /** - * Decode response as buffer (non-spec api) - * - * @return Promise - */ - buffer() { - return consumeBody.call(this); - }, - - /** - * Decode response as text, while automatically detecting the encoding and - * trying to decode to UTF-8 (non-spec api) - * - * @return Promise - */ - textConverted() { - var _this3 = this; - - return consumeBody.call(this).then(function (buffer) { - return convertBody(buffer, _this3.headers); - }); - } - -}; - -// In browsers, all properties are enumerable. -Object.defineProperties(Body.prototype, { - body: { enumerable: true }, - bodyUsed: { enumerable: true }, - arrayBuffer: { enumerable: true }, - blob: { enumerable: true }, - json: { enumerable: true }, - text: { enumerable: true } -}); - -Body.mixIn = function (proto) { - for (const name of Object.getOwnPropertyNames(Body.prototype)) { - // istanbul ignore else: future proof - if (!(name in proto)) { - const desc = Object.getOwnPropertyDescriptor(Body.prototype, name); - Object.defineProperty(proto, name, desc); - } - } -}; - -/** - * Consume and convert an entire Body to a Buffer. - * - * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body - * - * @return Promise - */ -function consumeBody() { - var _this4 = this; - - if (this[INTERNALS].disturbed) { - return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`)); - } - - this[INTERNALS].disturbed = true; - - if (this[INTERNALS].error) { - return Body.Promise.reject(this[INTERNALS].error); - } - - // body is null - if (this.body === null) { - return Body.Promise.resolve(Buffer.alloc(0)); - } - - // body is string - if (typeof this.body === 'string') { - return Body.Promise.resolve(Buffer.from(this.body)); - } - - // body is blob - if (this.body instanceof Blob) { - return Body.Promise.resolve(this.body[BUFFER]); - } - - // body is buffer - if (Buffer.isBuffer(this.body)) { - return Body.Promise.resolve(this.body); - } - - // body is buffer - if (Object.prototype.toString.call(this.body) === '[object ArrayBuffer]') { - return Body.Promise.resolve(Buffer.from(this.body)); - } - - // istanbul ignore if: should never happen - if (!(this.body instanceof Stream)) { - return Body.Promise.resolve(Buffer.alloc(0)); - } - - // body is stream - // get ready to actually consume the body - let accum = []; - let accumBytes = 0; - let abort = false; - - return new Body.Promise(function (resolve, reject) { - let resTimeout; - - // allow timeout on slow response body - if (_this4.timeout) { - resTimeout = setTimeout(function () { - abort = true; - reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout')); - }, _this4.timeout); - } - - // handle stream error, such as incorrect content-encoding - _this4.body.on('error', function (err) { - reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err)); - }); - - _this4.body.on('data', function (chunk) { - if (abort || chunk === null) { - return; - } - - if (_this4.size && accumBytes + chunk.length > _this4.size) { - abort = true; - reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size')); - return; - } - - accumBytes += chunk.length; - accum.push(chunk); - }); - - _this4.body.on('end', function () { - if (abort) { - return; - } - - clearTimeout(resTimeout); - - try { - resolve(Buffer.concat(accum)); - } catch (err) { - // handle streams that have accumulated too much data (issue #414) - reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err)); - } - }); - }); -} - -/** - * Detect buffer encoding and convert to target encoding - * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding - * - * @param Buffer buffer Incoming buffer - * @param String encoding Target encoding - * @return String - */ -function convertBody(buffer, headers) { - if (typeof convert !== 'function') { - throw new Error('The package `encoding` must be installed to use the textConverted() function'); - } - - const ct = headers.get('content-type'); - let charset = 'utf-8'; - let res, str; - - // header - if (ct) { - res = /charset=([^;]*)/i.exec(ct); - } - - // no charset in content type, peek at response body for at most 1024 bytes - str = buffer.slice(0, 1024).toString(); - - // html5 - if (!res && str) { - res = / 0 && arguments[0] !== undefined ? arguments[0] : undefined; - - this[MAP] = Object.create(null); - - if (init instanceof Headers) { - const rawHeaders = init.raw(); - const headerNames = Object.keys(rawHeaders); - - for (const headerName of headerNames) { - for (const value of rawHeaders[headerName]) { - this.append(headerName, value); - } - } - - return; - } - - // We don't worry about converting prop to ByteString here as append() - // will handle it. - if (init == null) { - // no op - } else if (typeof init === 'object') { - const method = init[Symbol.iterator]; - if (method != null) { - if (typeof method !== 'function') { - throw new TypeError('Header pairs must be iterable'); - } - - // sequence> - // Note: per spec we have to first exhaust the lists then process them - const pairs = []; - for (const pair of init) { - if (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') { - throw new TypeError('Each header pair must be iterable'); - } - pairs.push(Array.from(pair)); - } - - for (const pair of pairs) { - if (pair.length !== 2) { - throw new TypeError('Each header pair must be a name/value tuple'); - } - this.append(pair[0], pair[1]); - } - } else { - // record - for (const key of Object.keys(init)) { - const value = init[key]; - this.append(key, value); - } - } - } else { - throw new TypeError('Provided initializer must be an object'); - } - } - - /** - * Return combined header value given name - * - * @param String name Header name - * @return Mixed - */ - get(name) { - name = `${name}`; - validateName(name); - const key = find(this[MAP], name); - if (key === undefined) { - return null; - } - - return this[MAP][key].join(', '); - } - - /** - * Iterate over all headers - * - * @param Function callback Executed for each item with parameters (value, name, thisArg) - * @param Boolean thisArg `this` context for callback function - * @return Void - */ - forEach(callback) { - let thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined; - - let pairs = getHeaders(this); - let i = 0; - while (i < pairs.length) { - var _pairs$i = pairs[i]; - const name = _pairs$i[0], - value = _pairs$i[1]; - - callback.call(thisArg, value, name, this); - pairs = getHeaders(this); - i++; - } - } - - /** - * Overwrite header values given name - * - * @param String name Header name - * @param String value Header value - * @return Void - */ - set(name, value) { - name = `${name}`; - value = `${value}`; - validateName(name); - validateValue(value); - const key = find(this[MAP], name); - this[MAP][key !== undefined ? key : name] = [value]; - } - - /** - * Append a value onto existing header - * - * @param String name Header name - * @param String value Header value - * @return Void - */ - append(name, value) { - name = `${name}`; - value = `${value}`; - validateName(name); - validateValue(value); - const key = find(this[MAP], name); - if (key !== undefined) { - this[MAP][key].push(value); - } else { - this[MAP][name] = [value]; - } - } - - /** - * Check for header name existence - * - * @param String name Header name - * @return Boolean - */ - has(name) { - name = `${name}`; - validateName(name); - return find(this[MAP], name) !== undefined; - } - - /** - * Delete all header values given name - * - * @param String name Header name - * @return Void - */ - delete(name) { - name = `${name}`; - validateName(name); - const key = find(this[MAP], name); - if (key !== undefined) { - delete this[MAP][key]; - } - } - - /** - * Return raw headers (non-spec api) - * - * @return Object - */ - raw() { - return this[MAP]; - } - - /** - * Get an iterator on keys. - * - * @return Iterator - */ - keys() { - return createHeadersIterator(this, 'key'); - } - - /** - * Get an iterator on values. - * - * @return Iterator - */ - values() { - return createHeadersIterator(this, 'value'); - } - - /** - * Get an iterator on entries. - * - * This is the default iterator of the Headers object. - * - * @return Iterator - */ - [Symbol.iterator]() { - return createHeadersIterator(this, 'key+value'); - } -} -Headers.prototype.entries = Headers.prototype[Symbol.iterator]; - -Object.defineProperty(Headers.prototype, Symbol.toStringTag, { - value: 'Headers', - writable: false, - enumerable: false, - configurable: true -}); - -Object.defineProperties(Headers.prototype, { - get: { enumerable: true }, - forEach: { enumerable: true }, - set: { enumerable: true }, - append: { enumerable: true }, - has: { enumerable: true }, - delete: { enumerable: true }, - keys: { enumerable: true }, - values: { enumerable: true }, - entries: { enumerable: true } -}); - -function getHeaders(headers) { - let kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value'; - - const keys = Object.keys(headers[MAP]).sort(); - return keys.map(kind === 'key' ? function (k) { - return k.toLowerCase(); - } : kind === 'value' ? function (k) { - return headers[MAP][k].join(', '); - } : function (k) { - return [k.toLowerCase(), headers[MAP][k].join(', ')]; - }); -} - -const INTERNAL = Symbol('internal'); - -function createHeadersIterator(target, kind) { - const iterator = Object.create(HeadersIteratorPrototype); - iterator[INTERNAL] = { - target, - kind, - index: 0 - }; - return iterator; -} - -const HeadersIteratorPrototype = Object.setPrototypeOf({ - next() { - // istanbul ignore if - if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) { - throw new TypeError('Value of `this` is not a HeadersIterator'); - } - - var _INTERNAL = this[INTERNAL]; - const target = _INTERNAL.target, - kind = _INTERNAL.kind, - index = _INTERNAL.index; - - const values = getHeaders(target, kind); - const len = values.length; - if (index >= len) { - return { - value: undefined, - done: true - }; - } - - this[INTERNAL].index = index + 1; - - return { - value: values[index], - done: false - }; - } -}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))); - -Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, { - value: 'HeadersIterator', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * Export the Headers object in a form that Node.js can consume. - * - * @param Headers headers - * @return Object - */ -function exportNodeCompatibleHeaders(headers) { - const obj = Object.assign({ __proto__: null }, headers[MAP]); - - // http.request() only supports string as Host header. This hack makes - // specifying custom Host header possible. - const hostHeaderKey = find(headers[MAP], 'Host'); - if (hostHeaderKey !== undefined) { - obj[hostHeaderKey] = obj[hostHeaderKey][0]; - } - - return obj; -} - -/** - * Create a Headers object from an object of headers, ignoring those that do - * not conform to HTTP grammar productions. - * - * @param Object obj Object of headers - * @return Headers - */ -function createHeadersLenient(obj) { - const headers = new Headers(); - for (const name of Object.keys(obj)) { - if (invalidTokenRegex.test(name)) { - continue; - } - if (Array.isArray(obj[name])) { - for (const val of obj[name]) { - if (invalidHeaderCharRegex.test(val)) { - continue; - } - if (headers[MAP][name] === undefined) { - headers[MAP][name] = [val]; - } else { - headers[MAP][name].push(val); - } - } - } else if (!invalidHeaderCharRegex.test(obj[name])) { - headers[MAP][name] = [obj[name]]; - } - } - return headers; -} - -/** - * response.js - * - * Response class provides content decoding - */ - -var _require$1 = require('http'); - -const STATUS_CODES = _require$1.STATUS_CODES; - - -const INTERNALS$1 = Symbol('Response internals'); - -/** - * Response class - * - * @param Stream body Readable stream - * @param Object opts Response options - * @return Void - */ -class Response { - constructor() { - let body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; - let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - - Body.call(this, body, opts); - - const status = opts.status || 200; - - this[INTERNALS$1] = { - url: opts.url, - status, - statusText: opts.statusText || STATUS_CODES[status], - headers: new Headers(opts.headers) - }; - } - - get url() { - return this[INTERNALS$1].url; - } - - get status() { - return this[INTERNALS$1].status; - } - - /** - * Convenience property representing if the request ended normally - */ - get ok() { - return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300; - } - - get statusText() { - return this[INTERNALS$1].statusText; - } - - get headers() { - return this[INTERNALS$1].headers; - } - - /** - * Clone this response - * - * @return Response - */ - clone() { - return new Response(clone(this), { - url: this.url, - status: this.status, - statusText: this.statusText, - headers: this.headers, - ok: this.ok - }); - } -} - -Body.mixIn(Response.prototype); - -Object.defineProperties(Response.prototype, { - url: { enumerable: true }, - status: { enumerable: true }, - ok: { enumerable: true }, - statusText: { enumerable: true }, - headers: { enumerable: true }, - clone: { enumerable: true } -}); - -Object.defineProperty(Response.prototype, Symbol.toStringTag, { - value: 'Response', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * request.js - * - * Request class contains server only options - * - * All spec algorithm step numbers are based on https://fetch.spec.whatwg.org/commit-snapshots/ae716822cb3a61843226cd090eefc6589446c1d2/. - */ - -var _require$2 = require('url'); - -const format_url = _require$2.format; -const parse_url = _require$2.parse; - - -const INTERNALS$2 = Symbol('Request internals'); - -/** - * Check if a value is an instance of Request. - * - * @param Mixed input - * @return Boolean - */ -function isRequest(input) { - return typeof input === 'object' && typeof input[INTERNALS$2] === 'object'; -} - -/** - * Request class - * - * @param Mixed input Url or Request instance - * @param Object init Custom options - * @return Void - */ -class Request { - constructor(input) { - let init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - - let parsedURL; - - // normalize input - if (!isRequest(input)) { - if (input && input.href) { - // in order to support Node.js' Url objects; though WHATWG's URL objects - // will fall into this branch also (since their `toString()` will return - // `href` property anyway) - parsedURL = parse_url(input.href); - } else { - // coerce input to a string before attempting to parse - parsedURL = parse_url(`${input}`); - } - input = {}; - } else { - parsedURL = parse_url(input.url); - } - - let method = init.method || input.method || 'GET'; - method = method.toUpperCase(); - - if ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) { - throw new TypeError('Request with GET/HEAD method cannot have body'); - } - - let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null; - - Body.call(this, inputBody, { - timeout: init.timeout || input.timeout || 0, - size: init.size || input.size || 0 - }); - - const headers = new Headers(init.headers || input.headers || {}); - - if (init.body != null) { - const contentType = extractContentType(this); - if (contentType !== null && !headers.has('Content-Type')) { - headers.append('Content-Type', contentType); - } - } - - this[INTERNALS$2] = { - method, - redirect: init.redirect || input.redirect || 'follow', - headers, - parsedURL - }; - - // node-fetch-only options - this.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20; - this.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true; - this.counter = init.counter || input.counter || 0; - this.agent = init.agent || input.agent; - } - - get method() { - return this[INTERNALS$2].method; - } - - get url() { - return format_url(this[INTERNALS$2].parsedURL); - } - - get headers() { - return this[INTERNALS$2].headers; - } - - get redirect() { - return this[INTERNALS$2].redirect; - } - - /** - * Clone this request - * - * @return Request - */ - clone() { - return new Request(this); - } -} - -Body.mixIn(Request.prototype); - -Object.defineProperty(Request.prototype, Symbol.toStringTag, { - value: 'Request', - writable: false, - enumerable: false, - configurable: true -}); - -Object.defineProperties(Request.prototype, { - method: { enumerable: true }, - url: { enumerable: true }, - headers: { enumerable: true }, - redirect: { enumerable: true }, - clone: { enumerable: true } -}); - -/** - * Convert a Request to Node.js http request options. - * - * @param Request A Request instance - * @return Object The options object to be passed to http.request - */ -function getNodeRequestOptions(request) { - const parsedURL = request[INTERNALS$2].parsedURL; - const headers = new Headers(request[INTERNALS$2].headers); - - // fetch step 1.3 - if (!headers.has('Accept')) { - headers.set('Accept', '*/*'); - } - - // Basic fetch - if (!parsedURL.protocol || !parsedURL.hostname) { - throw new TypeError('Only absolute URLs are supported'); - } - - if (!/^https?:$/.test(parsedURL.protocol)) { - throw new TypeError('Only HTTP(S) protocols are supported'); - } - - // HTTP-network-or-cache fetch steps 2.4-2.7 - let contentLengthValue = null; - if (request.body == null && /^(POST|PUT)$/i.test(request.method)) { - contentLengthValue = '0'; - } - if (request.body != null) { - const totalBytes = getTotalBytes(request); - if (typeof totalBytes === 'number') { - contentLengthValue = String(totalBytes); - } - } - if (contentLengthValue) { - headers.set('Content-Length', contentLengthValue); - } - - // HTTP-network-or-cache fetch step 2.11 - if (!headers.has('User-Agent')) { - headers.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)'); - } - - // HTTP-network-or-cache fetch step 2.15 - if (request.compress) { - headers.set('Accept-Encoding', 'gzip,deflate'); - } - if (!headers.has('Connection') && !request.agent) { - headers.set('Connection', 'close'); - } - - // HTTP-network fetch step 4.2 - // chunked encoding is handled by Node.js - - return Object.assign({}, parsedURL, { - method: request.method, - headers: exportNodeCompatibleHeaders(headers), - agent: request.agent - }); -} - -/** - * index.js - * - * a request API compatible with window.fetch - * - * All spec algorithm step numbers are based on https://fetch.spec.whatwg.org/commit-snapshots/ae716822cb3a61843226cd090eefc6589446c1d2/. - */ - -const http = require('http'); -const https = require('https'); - -var _require$3 = require('stream'); - -const PassThrough$1 = _require$3.PassThrough; - -var _require2 = require('url'); - -const resolve_url = _require2.resolve; - -const zlib = require('zlib'); - -/** - * Fetch function - * - * @param Mixed url Absolute url or Request instance - * @param Object opts Fetch options - * @return Promise - */ -function fetch(url, opts) { - - // allow custom promise - if (!fetch.Promise) { - throw new Error('native promise missing, set fetch.Promise to your favorite alternative'); - } - - Body.Promise = fetch.Promise; - - // wrap http.request into fetch - return new fetch.Promise(function (resolve, reject) { - // build request object - const request = new Request(url, opts); - const options = getNodeRequestOptions(request); - - const send = (options.protocol === 'https:' ? https : http).request; - - // send request - const req = send(options); - let reqTimeout; - - function finalize() { - req.abort(); - clearTimeout(reqTimeout); - } - - if (request.timeout) { - req.once('socket', function (socket) { - reqTimeout = setTimeout(function () { - reject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout')); - finalize(); - }, request.timeout); - }); - } - - req.on('error', function (err) { - reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err)); - finalize(); - }); - - req.on('response', function (res) { - clearTimeout(reqTimeout); - - const headers = createHeadersLenient(res.headers); - - // HTTP fetch step 5 - if (fetch.isRedirect(res.statusCode)) { - // HTTP fetch step 5.2 - const location = headers.get('Location'); - - // HTTP fetch step 5.3 - const locationURL = location === null ? null : resolve_url(request.url, location); - - // HTTP fetch step 5.5 - switch (request.redirect) { - case 'error': - reject(new FetchError(`redirect mode is set to error: ${request.url}`, 'no-redirect')); - finalize(); - return; - case 'manual': - // node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL. - if (locationURL !== null) { - headers.set('Location', locationURL); - } - break; - case 'follow': - // HTTP-redirect fetch step 2 - if (locationURL === null) { - break; - } - - // HTTP-redirect fetch step 5 - if (request.counter >= request.follow) { - reject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect')); - finalize(); - return; - } - - // HTTP-redirect fetch step 6 (counter increment) - // Create a new Request object. - const requestOpts = { - headers: new Headers(request.headers), - follow: request.follow, - counter: request.counter + 1, - agent: request.agent, - compress: request.compress, - method: request.method, - body: request.body - }; - - // HTTP-redirect fetch step 9 - if (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) { - reject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect')); - finalize(); - return; - } - - // HTTP-redirect fetch step 11 - if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') { - requestOpts.method = 'GET'; - requestOpts.body = undefined; - requestOpts.headers.delete('content-length'); - } - - // HTTP-redirect fetch step 15 - resolve(fetch(new Request(locationURL, requestOpts))); - finalize(); - return; - } - } - - // prepare response - let body = res.pipe(new PassThrough$1()); - const response_options = { - url: request.url, - status: res.statusCode, - statusText: res.statusMessage, - headers: headers, - size: request.size, - timeout: request.timeout - }; - - // HTTP-network fetch step 12.1.1.3 - const codings = headers.get('Content-Encoding'); - - // HTTP-network fetch step 12.1.1.4: handle content codings - - // in following scenarios we ignore compression support - // 1. compression support is disabled - // 2. HEAD request - // 3. no Content-Encoding header - // 4. no content response (204) - // 5. content not modified response (304) - if (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) { - resolve(new Response(body, response_options)); - return; - } - - // For Node v6+ - // Be less strict when decoding compressed responses, since sometimes - // servers send slightly invalid responses that are still accepted - // by common browsers. - // Always using Z_SYNC_FLUSH is what cURL does. - const zlibOptions = { - flush: zlib.Z_SYNC_FLUSH, - finishFlush: zlib.Z_SYNC_FLUSH - }; - - // for gzip - if (codings == 'gzip' || codings == 'x-gzip') { - body = body.pipe(zlib.createGunzip(zlibOptions)); - resolve(new Response(body, response_options)); - return; - } - - // for deflate - if (codings == 'deflate' || codings == 'x-deflate') { - // handle the infamous raw deflate response from old servers - // a hack for old IIS and Apache servers - const raw = res.pipe(new PassThrough$1()); - raw.once('data', function (chunk) { - // see http://stackoverflow.com/questions/37519828 - if ((chunk[0] & 0x0F) === 0x08) { - body = body.pipe(zlib.createInflate()); - } else { - body = body.pipe(zlib.createInflateRaw()); - } - resolve(new Response(body, response_options)); - }); - return; - } - - // otherwise, use response as-is - resolve(new Response(body, response_options)); - }); - - writeToStream(req, request); - }); -} - -/** - * Redirect code matching - * - * @param Number code Status code - * @return Boolean - */ -fetch.isRedirect = function (code) { - return code === 301 || code === 302 || code === 303 || code === 307 || code === 308; -}; - -// Needed for TypeScript. -fetch.default = fetch; - -// expose Promise -fetch.Promise = global.Promise; - -module.exports = exports = fetch; -exports.Headers = Headers; -exports.Request = Request; -exports.Response = Response; -exports.FetchError = FetchError; diff --git a/node_modules/cross-fetch/node_modules/node-fetch/package.json b/node_modules/cross-fetch/node_modules/node-fetch/package.json deleted file mode 100644 index b95e54ee..00000000 --- a/node_modules/cross-fetch/node_modules/node-fetch/package.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "name": "node-fetch", - "version": "2.1.2", - "description": "A light-weight module that brings window.fetch to node.js", - "main": "lib/index.js", - "browser": "./browser.js", - "module": "lib/index.es.js", - "files": [ - "lib/index.js", - "lib/index.es.js", - "browser.js" - ], - "engines": { - "node": "4.x || >=6.0.0" - }, - "scripts": { - "build": "cross-env BABEL_ENV=rollup rollup -c", - "prepare": "npm run build", - "test": "cross-env BABEL_ENV=test mocha --compilers js:babel-register test/test.js", - "report": "cross-env BABEL_ENV=coverage nyc --reporter lcov --reporter text mocha -R spec test/test.js", - "coverage": "cross-env BABEL_ENV=coverage nyc --reporter json --reporter text mocha -R spec test/test.js && codecov -f coverage/coverage-final.json" - }, - "repository": { - "type": "git", - "url": "https://github.com/bitinn/node-fetch.git" - }, - "keywords": [ - "fetch", - "http", - "promise" - ], - "author": "David Frank", - "license": "MIT", - "bugs": { - "url": "https://github.com/bitinn/node-fetch/issues" - }, - "homepage": "https://github.com/bitinn/node-fetch", - "devDependencies": { - "babel-core": "^6.26.0", - "babel-plugin-istanbul": "^4.1.5", - "babel-preset-env": "^1.6.1", - "babel-register": "^6.16.3", - "chai": "^3.5.0", - "chai-as-promised": "^7.1.1", - "chai-iterator": "^1.1.1", - "chai-string": "^1.3.0", - "codecov": "^3.0.0", - "cross-env": "^5.1.3", - "form-data": "^2.3.1", - "mocha": "^5.0.0", - "nyc": "^11.4.1", - "parted": "^0.1.1", - "promise": "^8.0.1", - "resumer": "0.0.0", - "rollup": "^0.55.1", - "rollup-plugin-babel": "^3.0.3", - "string-to-arraybuffer": "^1.0.0", - "url-search-params": "^0.10.0", - "whatwg-url": "^5.0.0" - }, - "dependencies": {} -} diff --git a/node_modules/cross-fetch/package.json b/node_modules/cross-fetch/package.json deleted file mode 100644 index 913a0d00..00000000 --- a/node_modules/cross-fetch/package.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "name": "cross-fetch", - "version": "2.2.2", - "description": "Universal WHATWG Fetch API for Node, Browsers and React Native", - "homepage": "https://github.com/lquixada/cross-fetch", - "main": "dist/node-ponyfill.js", - "browser": "dist/browser-ponyfill.js", - "typings": "index.d.ts", - "scripts": { - "pretest:node:bundle": "webpack-cli --config test/webpack-node/webpack.config.js", - "precommit": "npm run -s build && lint-staged", - "build": "rollup -c", - "codecov": "nyc report --reporter=text-lcov > coverage.lcov && codecov", - "deploy:major": "npm version major && git push --follow-tags", - "deploy:minor": "npm version minor && git push --follow-tags", - "deploy:patch": "npm version patch && git push --follow-tags", - "lint": "eslint .", - "sauce": "./tasks/sauce", - "security": "snyk test", - "test": "npm run -s test:headless && npm run -s test:node && npm run -s test:node:bundle && npm run -s lint", - "test:browser": "opn test/browser/index.html", - "test:headless": "mocha-headless-chrome -f test/browser/index.html -a no-sandbox -a disable-setuid-sandbox", - "test:node:bundle": "nyc mocha test/webpack-node/bundle.js", - "test:node": "nyc mocha test/node/index.js" - }, - "lint-staged": { - "*.js": [ - "eslint --fix", - "git add" - ] - }, - "repository": { - "type": "git", - "url": "https://github.com/lquixada/cross-fetch.git" - }, - "author": "Leonardo Quixada ", - "license": "MIT", - "bugs": { - "url": "https://github.com/lquixada/cross-fetch/issues" - }, - "dependencies": { - "node-fetch": "2.1.2", - "whatwg-fetch": "2.0.4" - }, - "devDependencies": { - "chai": "4.1.2", - "codecov": "3.0.2", - "eslint": "4.19.1", - "husky": "0.14.3", - "lint-staged": "7.2.0", - "mocha": "5.2.0", - "mocha-headless-chrome": "2.0.0", - "nock": "9.3.3", - "nyc": "12.0.2", - "opn-cli": "3.1.0", - "ora": "2.1.0", - "rollup": "0.60.7", - "rollup-plugin-copy": "0.2.3", - "rollup-plugin-uglify": "4.0.0", - "sinon": "6.0.0", - "snyk": "1.83.0", - "webpack": "4.12.0", - "webpack-cli": "3.0.7" - }, - "files": [ - "dist", - "polyfill", - "index.d.ts" - ], - "keywords": [ - "fetch", - "isomorphic", - "universal", - "node", - "react", - "native", - "browser", - "ponyfill", - "whatwg", - "xhr", - "ajax" - ] -} diff --git a/node_modules/cross-fetch/polyfill/package.json b/node_modules/cross-fetch/polyfill/package.json deleted file mode 100644 index 68a6007d..00000000 --- a/node_modules/cross-fetch/polyfill/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "cross-fetch-polyfill", - "version": "0.0.0", - "main": "../dist/node-polyfill.js", - "browser": "../dist/browser-polyfill.js" -} diff --git a/node_modules/cross-spawn/node_modules/.bin/node-which b/node_modules/cross-spawn/node_modules/.bin/node-which index 6f8415ec..d29008e6 120000 --- a/node_modules/cross-spawn/node_modules/.bin/node-which +++ b/node_modules/cross-spawn/node_modules/.bin/node-which @@ -1 +1 @@ -../which/bin/node-which \ No newline at end of file +../../../jest-haste-map/node_modules/which/bin/node-which \ No newline at end of file diff --git a/node_modules/damerau-levenshtein/CHANGELOG.md b/node_modules/damerau-levenshtein/CHANGELOG.md deleted file mode 100644 index eb6af352..00000000 --- a/node_modules/damerau-levenshtein/CHANGELOG.md +++ /dev/null @@ -1,67 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/). This project adheres to [Semantic Versioning](http://semver.org/). - -## [Unreleased] - - -## [1.0.6] - 2020-01-27 - -Changed: -- Upgrade lodash to version 4.17.15 #16 - -## [1.0.5] - 2019-05-09 - -Changed: -- Upgrade Mocha to version 6.1.4 #12 by @whyboris -- Example use in README.md by @whyboris - -## [1.0.4] - 2017-03-24 - -Fixed: -- Fails in strict mode #7 by @gilly3 - -## [1.0.3] - 2016-09-26 - -Fixed: -- A title of this document :P - -Added: -- List of contributors -- Bugs URL -- Git repository URL - -## [1.0.2] - 2016-09-26 - -Fixed: -- Similarity 0 returned for equal strings #4 by @tad-lispy - -## [1.0.1] - 2016-09-12 - -Fixed: -- Wrong results for transposition #2 by @g-adolph - -Added: -- First unit test by @g-adolph -- A Change Log :) by @tad-lispy - -## [1.0.0] - 2016-02-23 - -Fixed: -- Update README to match the actual output by @gilly3 - -## [0.1.3] - 2013-09-02 - -Fixed: -- Clear matrix on each call @tad-lispy -- Always return an object @tad-lispy - -## [0.1.2] - 2013-08-29 - -Added: -- ReadMe - -## [0.1.1] - 2013-08-28 - -Added: -- Initial working release @tad-lispy diff --git a/node_modules/damerau-levenshtein/LICENSE b/node_modules/damerau-levenshtein/LICENSE deleted file mode 100644 index 3332001b..00000000 --- a/node_modules/damerau-levenshtein/LICENSE +++ /dev/null @@ -1,25 +0,0 @@ -BSD 2-Clause License - -Copyright (c) 2018, Tadeusz Łazurski -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -* Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -* Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/node_modules/damerau-levenshtein/README.md b/node_modules/damerau-levenshtein/README.md deleted file mode 100644 index 519436e1..00000000 --- a/node_modules/damerau-levenshtein/README.md +++ /dev/null @@ -1,47 +0,0 @@ -[![NPM](https://nodei.co/npm/damerau-levenshtein.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/damerau-levenshtein/) - -It provides a function that takes two string arguments and returns a hash like this: - -``` javascript -{ - steps: 5, // Levenstein demerau distance - relative: 0.7, // steps / length of the longer string - similarity: 0.3 // 1 - relative -} -``` - -## Install - -```sh -npm install damerau-levenshtein -``` - -## Use with ES6 modules - -```js -import * as levenshtien from 'damerau-levenshtein'; - -const lev = levenshtien('hello world', 'Hello World!'); -// { steps: 4, relative: 0.3076923076923077, similarity: 0.6923076923076923 } -``` - -Please see [tests](./test/test.js) for more insights. - -## Use with TypeScript - -```ts -import * as levenshtien from 'damerau-levenshtein'; - -interface LevenshteinResponse { - steps: number; - relative: number; - similarity: number; -} - -const lev: LevenshteinResponse = levenshtien('hello world', 'Hello World!'); - -console.log(lev.steps); -// 2 -console.log(lev.foo); -// TypeScript Error: Property 'foo' does not exist on type 'LevenshteinResponse'. -``` diff --git a/node_modules/damerau-levenshtein/index.js b/node_modules/damerau-levenshtein/index.js deleted file mode 100644 index 17f3fcd0..00000000 --- a/node_modules/damerau-levenshtein/index.js +++ /dev/null @@ -1,72 +0,0 @@ -// TheSpanishInquisition - -// Cache the matrix. Note that if you not pass a limit this implementation will use a dynamically calculate one. - -module.exports = function(__this, that, limit) { - - var thisLength = __this.length, - thatLength = that.length, - matrix = []; - - // If the limit is not defined it will be calculate from this and that args. - limit = (limit || ((thatLength > thisLength ? thatLength : thisLength)))+1; - - for (var i = 0; i < limit; i++) { - matrix[i] = [i]; - matrix[i].length = limit; - } - for (i = 0; i < limit; i++) { - matrix[0][i] = i; - } - - if (Math.abs(thisLength - thatLength) > (limit || 100)){ - return prepare (limit || 100); - } - if (thisLength === 0){ - return prepare (thatLength); - } - if (thatLength === 0){ - return prepare (thisLength); - } - - // Calculate matrix. - var j, this_i, that_j, cost, min, t; - for (i = 1; i <= thisLength; ++i) { - this_i = __this[i-1]; - - // Step 4 - for (j = 1; j <= thatLength; ++j) { - // Check the jagged ld total so far - if (i === j && matrix[i][j] > 4) return prepare (thisLength); - - that_j = that[j-1]; - cost = (this_i === that_j) ? 0 : 1; // Step 5 - // Calculate the minimum (much faster than Math.min(...)). - min = matrix[i - 1][j ] + 1; // Deletion. - if ((t = matrix[i ][j - 1] + 1 ) < min) min = t; // Insertion. - if ((t = matrix[i - 1][j - 1] + cost) < min) min = t; // Substitution. - - // Update matrix. - matrix[i][j] = (i > 1 && j > 1 && this_i === that[j-2] && __this[i-2] === that_j && (t = matrix[i-2][j-2]+cost) < min) ? t : min; // Transposition. - } - } - - return prepare (matrix[thisLength][thatLength]); - -/** - * - */ - function prepare(steps) { - var length = Math.max(thisLength, thatLength) - var relative = length === 0 - ? 0 - : (steps / length); - var similarity = 1 - relative - return { - steps: steps, - relative: relative, - similarity: similarity - }; - } - -}; diff --git a/node_modules/damerau-levenshtein/package.json b/node_modules/damerau-levenshtein/package.json deleted file mode 100644 index 2dba69ba..00000000 --- a/node_modules/damerau-levenshtein/package.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "name": "damerau-levenshtein", - "version": "1.0.6", - "description": "Damerau - Levenshtein distance by The Spanish Inquisition + relative distance", - "main": "index.js", - "scripts": { - "test": "mocha --use_strict", - "version": "scripts/update-changelog.sh" - }, - "keywords": [ - "Damerau-Levenshtein", - "Damerau", - "Levenshtein", - "distance", - "compare", - "relative" - ], - "author": "The Spanish Inquisition", - "contributors": [ - "Tadeusz Łazurski (https://tad-lispy.com/)", - "Gustavo Marques Adolph", - "Ivan Gilchrist (http://jumpingfishes.com)", - "Boris Yakubchik (http://dev.yboris.com/)" - ], - "license": "BSD-2-Clause", - "devDependencies": { - "mocha": "^6.1.4" - }, - "repository": { - "type": "git", - "url": "https://github.com/tad-lispy/node-damerau-levenshtein.git" - }, - "bugs": { - "url": "https://github.com/tad-lispy/node-damerau-levenshtein/issues" - } -} diff --git a/node_modules/damerau-levenshtein/scripts/update-changelog.sh b/node_modules/damerau-levenshtein/scripts/update-changelog.sh deleted file mode 100755 index fd5312b8..00000000 --- a/node_modules/damerau-levenshtein/scripts/update-changelog.sh +++ /dev/null @@ -1,21 +0,0 @@ -#! /usr/bin/env bash - -set -euo pipefail - -# To make it work on OSX (provided gnu-sed in installed) -if type gsed -then - sed=gsed -fi - - -version=$(jq --raw-output ' .version ' "package.json") -date=$(date +%Y-%m-%d) - -$sed \ - --regexp-extended \ - --in-place="" \ - "s$^## \[Unreleased\]$\## [Unreleased\]\n\n\n## [${version}] - ${date}$" \ - CHANGELOG.md - -git add CHANGELOG.md diff --git a/node_modules/damerau-levenshtein/test/test.js b/node_modules/damerau-levenshtein/test/test.js deleted file mode 100644 index 0939f094..00000000 --- a/node_modules/damerau-levenshtein/test/test.js +++ /dev/null @@ -1,168 +0,0 @@ -var levenshtien = require("./../index"); - -var assert = require("assert"); - -describe("Damerau - Levenshtein", function() { - describe("Equality", function() { - it("returns 0 steps for equal strings", function() { - assert.deepEqual(levenshtien("test", "test"), { - steps: 0, - relative: 0, - similarity: 1 - }); - }); - }); - - describe("Additions", function() { - it("returns 1 step when appending one char", function() { - assert.deepEqual(levenshtien("test", "tests"), { - steps: 1, - relative: 1 / 5, - similarity: 1 - 1 / 5 - }); - }); - - it("returns 1 step when prepending one char", function() { - assert.deepEqual(levenshtien("test", "stest"), { - steps: 1, - relative: 1 / 5, - similarity: 1 - 1 / 5 - }); - }); - - it("returns 2 steps when appending two char", function() { - assert.deepEqual(levenshtien("test", "mytest"), { - steps: 2, - relative: 2 / 6, - similarity: 1 - 2 / 6 - }); - }); - - it("returns 7 steps when appending seven char", function() { - assert.deepEqual(levenshtien("test", "mycrazytest"), { - steps: 7, - relative: 7 / 11, - similarity: 1 - 7 / 11 - }); - }); - - it("returns 9 steps when prepend two chars and append seven chars", function() { - assert.deepEqual(levenshtien("test", "mytestiscrazy"), { - steps: 9, - relative: 9 / 13, - similarity: 1 - 9 / 13 - }); - }); - }); - - - describe("Addition of repeated chars", function() { - it("returns 1 step when repeating a character", function() { - assert.deepEqual(levenshtien("test", "teest"), { - steps: 1, - relative: 1 / 5, - similarity: 1 - 1 / 5 - }); - }); - - it("returns 2 step when repeating a character twice", function() { - assert.deepEqual(levenshtien("test", "teeest"), { - steps: 2, - relative: 2 / 6, - similarity: 1 - 2 / 6 - }); - }); - }); - - - describe("#Deletion", function() { - it("returns 1 step when removing one char", function() { - assert.deepEqual(levenshtien("test", "tst"), { - steps: 1, - relative: 1 / 4, - similarity: 1 - 1 / 4 - }); - }); - }); - - - describe("Transposition", function() { - it("returns 1 step when transposing one char", function() { - assert.deepEqual(levenshtien("test", "tset"), { - steps: 1, - relative: 1 / 4, - similarity: 1 - 1 / 4 - }); - }); - }); - - - describe("Addition with transposition", function() { - it("returns 2 step when transposing one char and append another", function() { - assert.deepEqual(levenshtien("test", "tsets"), { - steps: 2, - relative: 2 / 5, - similarity: 1 - 2 / 5 - }); - }); - it("returns 2 step when transposing a char and repeating it", function() { - assert.deepEqual(levenshtien("test", "tsset"), { - steps: 2, - relative: 2 / 5, - similarity: 1 - 2 / 5 - }); - }); - }); - - describe("Transposition of multiple chars", function() { - it("returns 1 step when transposing two neighbouring characters", function() { - assert.deepEqual(levenshtien("banana", "banaan"), { - steps: 1, - relative: 1 / 6, - similarity: 1 - 1 / 6 - }); - }); - - it("returns 2 step when transposing two neighbouring characters by two places", function() { - assert.deepEqual(levenshtien("banana", "nabana"), { - steps: 2, - relative: 2 / 6, - similarity: 1 - 2 / 6 - }); - }); - - it("returns 2 step when transposing two pairs of characters", function() { - assert.deepEqual(levenshtien("banana", "abnaan"), { - steps: 2, - relative: 2 / 6, - similarity: 1 - 2 / 6 - }); - }); - }); - - describe("Empty strings", function() { - it("returns 0 step and 0 relative when both are empty", function() { - assert.deepEqual(levenshtien("", ""), { - steps: 0, - relative: 0, - similarity: 1 - }); - }); - - it("returns steps equal to first string lenght when second string is empty", function() { - assert.deepEqual(levenshtien("test", ""), { - steps: 4, - relative: 4 / 4, - similarity: 0 - }); - }); - - it("returns steps equal to second string lenght when first string is empty", function() { - assert.deepEqual(levenshtien("", "test"), { - steps: 4, - relative: 1, - similarity: 0 - }); - }); - }); -}); diff --git a/node_modules/emoji-regex/README.md b/node_modules/emoji-regex/README.md index 37cf14e0..f10e1733 100644 --- a/node_modules/emoji-regex/README.md +++ b/node_modules/emoji-regex/README.md @@ -2,7 +2,7 @@ _emoji-regex_ offers a regular expression to match all emoji symbols (including textual representations of emoji) as per the Unicode Standard. -This repository contains a script that generates this regular expression based on [the data from Unicode Technical Report #51](https://github.com/mathiasbynens/unicode-tr51). Because of this, the regular expression can easily be updated whenever new emoji are added to the Unicode standard. +This repository contains a script that generates this regular expression based on [the data from Unicode v12](https://github.com/mathiasbynens/unicode-12.0.0). Because of this, the regular expression can easily be updated whenever new emoji are added to the Unicode standard. ## Installation diff --git a/node_modules/emoji-regex/es2015/index.js b/node_modules/emoji-regex/es2015/index.js index 0216db95..b4cf3dcd 100644 --- a/node_modules/emoji-regex/es2015/index.js +++ b/node_modules/emoji-regex/es2015/index.js @@ -2,5 +2,5 @@ module.exports = () => { // https://mths.be/emoji - return /\u{1F3F4}(?:\u{E0067}\u{E0062}(?:\u{E0065}\u{E006E}\u{E0067}|\u{E0077}\u{E006C}\u{E0073}|\u{E0073}\u{E0063}\u{E0074})\u{E007F}|\u200D\u2620\uFE0F)|\u{1F469}\u200D\u{1F469}\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F468}(?:\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D)?\u{1F468}|[\u{1F468}\u{1F469}]\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}])|[\u{1F3FB}-\u{1F3FF}]\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}])|\u{1F469}\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D[\u{1F468}\u{1F469}]|[\u{1F468}\u{1F469}])|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}])|\u{1F469}\u200D\u{1F466}\u200D\u{1F466}|(?:\u{1F441}\uFE0F\u200D\u{1F5E8}|\u{1F469}[\u{1F3FB}-\u{1F3FF}]\u200D[\u2695\u2696\u2708]|\u{1F468}(?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}]\uFE0F|[\u{1F46F}\u{1F93C}\u{1F9DE}\u{1F9DF}])\u200D[\u2640\u2642]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9D6}-\u{1F9DD}](?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\u{1F469}\u200D[\u2695\u2696\u2708])\uFE0F|\u{1F469}\u200D\u{1F467}\u200D[\u{1F466}\u{1F467}]|\u{1F469}\u200D\u{1F469}\u200D[\u{1F466}\u{1F467}]|\u{1F468}(?:\u200D(?:[\u{1F468}\u{1F469}]\u200D[\u{1F466}\u{1F467}]|[\u{1F466}\u{1F467}])|[\u{1F3FB}-\u{1F3FF}])|\u{1F3F3}\uFE0F\u200D\u{1F308}|\u{1F469}\u200D\u{1F467}|\u{1F469}[\u{1F3FB}-\u{1F3FF}]\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}]|\u{1F469}\u200D\u{1F466}|\u{1F1F6}\u{1F1E6}|\u{1F1FD}\u{1F1F0}|\u{1F1F4}\u{1F1F2}|\u{1F469}[\u{1F3FB}-\u{1F3FF}]|\u{1F1ED}[\u{1F1F0}\u{1F1F2}\u{1F1F3}\u{1F1F7}\u{1F1F9}\u{1F1FA}]|\u{1F1EC}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EE}\u{1F1F1}-\u{1F1F3}\u{1F1F5}-\u{1F1FA}\u{1F1FC}\u{1F1FE}]|\u{1F1EA}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1ED}\u{1F1F7}-\u{1F1FA}]|\u{1F1E8}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1EE}\u{1F1F0}-\u{1F1F5}\u{1F1F7}\u{1F1FA}-\u{1F1FF}]|\u{1F1F2}[\u{1F1E6}\u{1F1E8}-\u{1F1ED}\u{1F1F0}-\u{1F1FF}]|\u{1F1F3}[\u{1F1E6}\u{1F1E8}\u{1F1EA}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F4}\u{1F1F5}\u{1F1F7}\u{1F1FA}\u{1F1FF}]|\u{1F1FC}[\u{1F1EB}\u{1F1F8}]|\u{1F1FA}[\u{1F1E6}\u{1F1EC}\u{1F1F2}\u{1F1F3}\u{1F1F8}\u{1F1FE}\u{1F1FF}]|\u{1F1F0}[\u{1F1EA}\u{1F1EC}-\u{1F1EE}\u{1F1F2}\u{1F1F3}\u{1F1F5}\u{1F1F7}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1EF}[\u{1F1EA}\u{1F1F2}\u{1F1F4}\u{1F1F5}]|\u{1F1F8}[\u{1F1E6}-\u{1F1EA}\u{1F1EC}-\u{1F1F4}\u{1F1F7}-\u{1F1F9}\u{1F1FB}\u{1F1FD}-\u{1F1FF}]|\u{1F1EE}[\u{1F1E8}-\u{1F1EA}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}]|\u{1F1FF}[\u{1F1E6}\u{1F1F2}\u{1F1FC}]|\u{1F1EB}[\u{1F1EE}-\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1F7}]|\u{1F1F5}[\u{1F1E6}\u{1F1EA}-\u{1F1ED}\u{1F1F0}-\u{1F1F3}\u{1F1F7}-\u{1F1F9}\u{1F1FC}\u{1F1FE}]|\u{1F1E9}[\u{1F1EA}\u{1F1EC}\u{1F1EF}\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1FF}]|\u{1F1F9}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1ED}\u{1F1EF}-\u{1F1F4}\u{1F1F7}\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FF}]|\u{1F1E7}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EF}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|[#\*0-9]\uFE0F\u20E3|\u{1F1F1}[\u{1F1E6}-\u{1F1E8}\u{1F1EE}\u{1F1F0}\u{1F1F7}-\u{1F1FB}\u{1F1FE}]|\u{1F1E6}[\u{1F1E8}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F2}\u{1F1F4}\u{1F1F6}-\u{1F1FA}\u{1F1FC}\u{1F1FD}\u{1F1FF}]|\u{1F1F7}[\u{1F1EA}\u{1F1F4}\u{1F1F8}\u{1F1FA}\u{1F1FC}]|\u{1F1FB}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1EE}\u{1F1F3}\u{1F1FA}]|\u{1F1FE}[\u{1F1EA}\u{1F1F9}]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9D6}-\u{1F9DD}][\u{1F3FB}-\u{1F3FF}]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]|[\u261D\u270A-\u270D\u{1F385}\u{1F3C2}\u{1F3C7}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}\u{1F467}\u{1F470}\u{1F472}\u{1F474}-\u{1F476}\u{1F478}\u{1F47C}\u{1F483}\u{1F485}\u{1F4AA}\u{1F574}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F64C}\u{1F64F}\u{1F6C0}\u{1F6CC}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F930}-\u{1F936}\u{1F9B5}\u{1F9B6}\u{1F9D1}-\u{1F9D5}][\u{1F3FB}-\u{1F3FF}]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55\u{1F004}\u{1F0CF}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F236}\u{1F238}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F320}\u{1F32D}-\u{1F335}\u{1F337}-\u{1F37C}\u{1F37E}-\u{1F393}\u{1F3A0}-\u{1F3CA}\u{1F3CF}-\u{1F3D3}\u{1F3E0}-\u{1F3F0}\u{1F3F4}\u{1F3F8}-\u{1F43E}\u{1F440}\u{1F442}-\u{1F4FC}\u{1F4FF}-\u{1F53D}\u{1F54B}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F57A}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5FB}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CC}\u{1F6D0}-\u{1F6D2}\u{1F6EB}\u{1F6EC}\u{1F6F4}-\u{1F6F9}\u{1F910}-\u{1F93A}\u{1F93C}-\u{1F93E}\u{1F940}-\u{1F945}\u{1F947}-\u{1F970}\u{1F973}-\u{1F976}\u{1F97A}\u{1F97C}-\u{1F9A2}\u{1F9B0}-\u{1F9B9}\u{1F9C0}-\u{1F9C2}\u{1F9D0}-\u{1F9FF}]|[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299\u{1F004}\u{1F0CF}\u{1F170}\u{1F171}\u{1F17E}\u{1F17F}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F202}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F321}\u{1F324}-\u{1F393}\u{1F396}\u{1F397}\u{1F399}-\u{1F39B}\u{1F39E}-\u{1F3F0}\u{1F3F3}-\u{1F3F5}\u{1F3F7}-\u{1F4FD}\u{1F4FF}-\u{1F53D}\u{1F549}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F56F}\u{1F570}\u{1F573}-\u{1F57A}\u{1F587}\u{1F58A}-\u{1F58D}\u{1F590}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5A5}\u{1F5A8}\u{1F5B1}\u{1F5B2}\u{1F5BC}\u{1F5C2}-\u{1F5C4}\u{1F5D1}-\u{1F5D3}\u{1F5DC}-\u{1F5DE}\u{1F5E1}\u{1F5E3}\u{1F5E8}\u{1F5EF}\u{1F5F3}\u{1F5FA}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CB}-\u{1F6D2}\u{1F6E0}-\u{1F6E5}\u{1F6E9}\u{1F6EB}\u{1F6EC}\u{1F6F0}\u{1F6F3}-\u{1F6F9}\u{1F910}-\u{1F93A}\u{1F93C}-\u{1F93E}\u{1F940}-\u{1F945}\u{1F947}-\u{1F970}\u{1F973}-\u{1F976}\u{1F97A}\u{1F97C}-\u{1F9A2}\u{1F9B0}-\u{1F9B9}\u{1F9C0}-\u{1F9C2}\u{1F9D0}-\u{1F9FF}]\uFE0F|[\u261D\u26F9\u270A-\u270D\u{1F385}\u{1F3C2}-\u{1F3C4}\u{1F3C7}\u{1F3CA}-\u{1F3CC}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}-\u{1F469}\u{1F46E}\u{1F470}-\u{1F478}\u{1F47C}\u{1F481}-\u{1F483}\u{1F485}-\u{1F487}\u{1F4AA}\u{1F574}\u{1F575}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F645}-\u{1F647}\u{1F64B}-\u{1F64F}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F6C0}\u{1F6CC}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F926}\u{1F930}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B5}\u{1F9B6}\u{1F9B8}\u{1F9B9}\u{1F9D1}-\u{1F9DD}]/gu; + return /\u{1F3F4}\u{E0067}\u{E0062}(?:\u{E0065}\u{E006E}\u{E0067}|\u{E0073}\u{E0063}\u{E0074}|\u{E0077}\u{E006C}\u{E0073})\u{E007F}|\u{1F468}(?:\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}\u{1F3FB}|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FE}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D)?\u{1F468}|[\u{1F468}\u{1F469}]\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}]|[\u{1F468}\u{1F469}]\u200D[\u{1F466}\u{1F467}]|[\u2695\u2696\u2708]\uFE0F|[\u{1F466}\u{1F467}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|(?:\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708])\uFE0F|\u{1F3FB}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}]|[\u{1F3FB}-\u{1F3FF}])|(?:\u{1F9D1}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F469})\u{1F3FB}|\u{1F9D1}(?:\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u200D\u{1F91D}\u200D\u{1F9D1})|(?:\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D[\u{1F468}\u{1F469}])[\u{1F3FB}-\u{1F3FE}]|(?:\u{1F9D1}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}\u{1F3FC}]|\u{1F469}(?:\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FD}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FB}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FC}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}\u{1F3FE}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D[\u{1F468}\u{1F469}]|[\u{1F468}\u{1F469}])|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F469}\u200D\u{1F469}\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|(?:\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}-\u{1F3FD}]|\u{1F469}\u200D\u{1F466}\u200D\u{1F466}|\u{1F469}\u200D\u{1F469}\u200D[\u{1F466}\u{1F467}]|(?:\u{1F441}\uFE0F\u200D\u{1F5E8}|\u{1F469}(?:\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708]|\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}]\uFE0F|[\u{1F46F}\u{1F93C}\u{1F9DE}\u{1F9DF}])\u200D[\u2640\u2642]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}](?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\u{1F3F4}\u200D\u2620)\uFE0F|\u{1F469}\u200D\u{1F467}\u200D[\u{1F466}\u{1F467}]|\u{1F3F3}\uFE0F\u200D\u{1F308}|\u{1F415}\u200D\u{1F9BA}|\u{1F469}\u200D\u{1F466}|\u{1F469}\u200D\u{1F467}|\u{1F1FD}\u{1F1F0}|\u{1F1F4}\u{1F1F2}|\u{1F1F6}\u{1F1E6}|[#\*0-9]\uFE0F\u20E3|\u{1F1E7}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EF}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1F9}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1ED}\u{1F1EF}-\u{1F1F4}\u{1F1F7}\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FF}]|\u{1F1EA}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1ED}\u{1F1F7}-\u{1F1FA}]|\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F7}[\u{1F1EA}\u{1F1F4}\u{1F1F8}\u{1F1FA}\u{1F1FC}]|\u{1F469}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F2}[\u{1F1E6}\u{1F1E8}-\u{1F1ED}\u{1F1F0}-\u{1F1FF}]|\u{1F1E6}[\u{1F1E8}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F2}\u{1F1F4}\u{1F1F6}-\u{1F1FA}\u{1F1FC}\u{1F1FD}\u{1F1FF}]|\u{1F1F0}[\u{1F1EA}\u{1F1EC}-\u{1F1EE}\u{1F1F2}\u{1F1F3}\u{1F1F5}\u{1F1F7}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1ED}[\u{1F1F0}\u{1F1F2}\u{1F1F3}\u{1F1F7}\u{1F1F9}\u{1F1FA}]|\u{1F1E9}[\u{1F1EA}\u{1F1EC}\u{1F1EF}\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1FF}]|\u{1F1FE}[\u{1F1EA}\u{1F1F9}]|\u{1F1EC}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EE}\u{1F1F1}-\u{1F1F3}\u{1F1F5}-\u{1F1FA}\u{1F1FC}\u{1F1FE}]|\u{1F1F8}[\u{1F1E6}-\u{1F1EA}\u{1F1EC}-\u{1F1F4}\u{1F1F7}-\u{1F1F9}\u{1F1FB}\u{1F1FD}-\u{1F1FF}]|\u{1F1EB}[\u{1F1EE}-\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1F7}]|\u{1F1F5}[\u{1F1E6}\u{1F1EA}-\u{1F1ED}\u{1F1F0}-\u{1F1F3}\u{1F1F7}-\u{1F1F9}\u{1F1FC}\u{1F1FE}]|\u{1F1FB}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1EE}\u{1F1F3}\u{1F1FA}]|\u{1F1F3}[\u{1F1E6}\u{1F1E8}\u{1F1EA}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F4}\u{1F1F5}\u{1F1F7}\u{1F1FA}\u{1F1FF}]|\u{1F1E8}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1EE}\u{1F1F0}-\u{1F1F5}\u{1F1F7}\u{1F1FA}-\u{1F1FF}]|\u{1F1F1}[\u{1F1E6}-\u{1F1E8}\u{1F1EE}\u{1F1F0}\u{1F1F7}-\u{1F1FB}\u{1F1FE}]|\u{1F1FF}[\u{1F1E6}\u{1F1F2}\u{1F1FC}]|\u{1F1FC}[\u{1F1EB}\u{1F1F8}]|\u{1F1FA}[\u{1F1E6}\u{1F1EC}\u{1F1F2}\u{1F1F3}\u{1F1F8}\u{1F1FE}\u{1F1FF}]|\u{1F1EE}[\u{1F1E8}-\u{1F1EA}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}]|\u{1F1EF}[\u{1F1EA}\u{1F1F2}\u{1F1F4}\u{1F1F5}]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}][\u{1F3FB}-\u{1F3FF}]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]|[\u261D\u270A-\u270D\u{1F385}\u{1F3C2}\u{1F3C7}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}\u{1F467}\u{1F46B}-\u{1F46D}\u{1F470}\u{1F472}\u{1F474}-\u{1F476}\u{1F478}\u{1F47C}\u{1F483}\u{1F485}\u{1F4AA}\u{1F574}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F64C}\u{1F64F}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F930}-\u{1F936}\u{1F9B5}\u{1F9B6}\u{1F9BB}\u{1F9D2}-\u{1F9D5}][\u{1F3FB}-\u{1F3FF}]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55\u{1F004}\u{1F0CF}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F236}\u{1F238}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F320}\u{1F32D}-\u{1F335}\u{1F337}-\u{1F37C}\u{1F37E}-\u{1F393}\u{1F3A0}-\u{1F3CA}\u{1F3CF}-\u{1F3D3}\u{1F3E0}-\u{1F3F0}\u{1F3F4}\u{1F3F8}-\u{1F43E}\u{1F440}\u{1F442}-\u{1F4FC}\u{1F4FF}-\u{1F53D}\u{1F54B}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F57A}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5FB}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CC}\u{1F6D0}-\u{1F6D2}\u{1F6D5}\u{1F6EB}\u{1F6EC}\u{1F6F4}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]|[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299\u{1F004}\u{1F0CF}\u{1F170}\u{1F171}\u{1F17E}\u{1F17F}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F202}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F321}\u{1F324}-\u{1F393}\u{1F396}\u{1F397}\u{1F399}-\u{1F39B}\u{1F39E}-\u{1F3F0}\u{1F3F3}-\u{1F3F5}\u{1F3F7}-\u{1F4FD}\u{1F4FF}-\u{1F53D}\u{1F549}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F56F}\u{1F570}\u{1F573}-\u{1F57A}\u{1F587}\u{1F58A}-\u{1F58D}\u{1F590}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5A5}\u{1F5A8}\u{1F5B1}\u{1F5B2}\u{1F5BC}\u{1F5C2}-\u{1F5C4}\u{1F5D1}-\u{1F5D3}\u{1F5DC}-\u{1F5DE}\u{1F5E1}\u{1F5E3}\u{1F5E8}\u{1F5EF}\u{1F5F3}\u{1F5FA}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CB}-\u{1F6D2}\u{1F6D5}\u{1F6E0}-\u{1F6E5}\u{1F6E9}\u{1F6EB}\u{1F6EC}\u{1F6F0}\u{1F6F3}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]\uFE0F|[\u261D\u26F9\u270A-\u270D\u{1F385}\u{1F3C2}-\u{1F3C4}\u{1F3C7}\u{1F3CA}-\u{1F3CC}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}-\u{1F478}\u{1F47C}\u{1F481}-\u{1F483}\u{1F485}-\u{1F487}\u{1F48F}\u{1F491}\u{1F4AA}\u{1F574}\u{1F575}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F645}-\u{1F647}\u{1F64B}-\u{1F64F}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91F}\u{1F926}\u{1F930}-\u{1F939}\u{1F93C}-\u{1F93E}\u{1F9B5}\u{1F9B6}\u{1F9B8}\u{1F9B9}\u{1F9BB}\u{1F9CD}-\u{1F9CF}\u{1F9D1}-\u{1F9DD}]/gu; }; diff --git a/node_modules/emoji-regex/es2015/text.js b/node_modules/emoji-regex/es2015/text.js index d0a771d3..780309df 100644 --- a/node_modules/emoji-regex/es2015/text.js +++ b/node_modules/emoji-regex/es2015/text.js @@ -2,5 +2,5 @@ module.exports = () => { // https://mths.be/emoji - return /\u{1F3F4}(?:\u{E0067}\u{E0062}(?:\u{E0065}\u{E006E}\u{E0067}|\u{E0077}\u{E006C}\u{E0073}|\u{E0073}\u{E0063}\u{E0074})\u{E007F}|\u200D\u2620\uFE0F)|\u{1F469}\u200D\u{1F469}\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F468}(?:\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D)?\u{1F468}|[\u{1F468}\u{1F469}]\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}])|[\u{1F3FB}-\u{1F3FF}]\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}])|\u{1F469}\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D[\u{1F468}\u{1F469}]|[\u{1F468}\u{1F469}])|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}])|\u{1F469}\u200D\u{1F466}\u200D\u{1F466}|(?:\u{1F441}\uFE0F\u200D\u{1F5E8}|\u{1F469}[\u{1F3FB}-\u{1F3FF}]\u200D[\u2695\u2696\u2708]|\u{1F468}(?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}]\uFE0F|[\u{1F46F}\u{1F93C}\u{1F9DE}\u{1F9DF}])\u200D[\u2640\u2642]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9D6}-\u{1F9DD}](?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\u{1F469}\u200D[\u2695\u2696\u2708])\uFE0F|\u{1F469}\u200D\u{1F467}\u200D[\u{1F466}\u{1F467}]|\u{1F469}\u200D\u{1F469}\u200D[\u{1F466}\u{1F467}]|\u{1F468}(?:\u200D(?:[\u{1F468}\u{1F469}]\u200D[\u{1F466}\u{1F467}]|[\u{1F466}\u{1F467}])|[\u{1F3FB}-\u{1F3FF}])|\u{1F3F3}\uFE0F\u200D\u{1F308}|\u{1F469}\u200D\u{1F467}|\u{1F469}[\u{1F3FB}-\u{1F3FF}]\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9B0}-\u{1F9B3}]|\u{1F469}\u200D\u{1F466}|\u{1F1F6}\u{1F1E6}|\u{1F1FD}\u{1F1F0}|\u{1F1F4}\u{1F1F2}|\u{1F469}[\u{1F3FB}-\u{1F3FF}]|\u{1F1ED}[\u{1F1F0}\u{1F1F2}\u{1F1F3}\u{1F1F7}\u{1F1F9}\u{1F1FA}]|\u{1F1EC}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EE}\u{1F1F1}-\u{1F1F3}\u{1F1F5}-\u{1F1FA}\u{1F1FC}\u{1F1FE}]|\u{1F1EA}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1ED}\u{1F1F7}-\u{1F1FA}]|\u{1F1E8}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1EE}\u{1F1F0}-\u{1F1F5}\u{1F1F7}\u{1F1FA}-\u{1F1FF}]|\u{1F1F2}[\u{1F1E6}\u{1F1E8}-\u{1F1ED}\u{1F1F0}-\u{1F1FF}]|\u{1F1F3}[\u{1F1E6}\u{1F1E8}\u{1F1EA}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F4}\u{1F1F5}\u{1F1F7}\u{1F1FA}\u{1F1FF}]|\u{1F1FC}[\u{1F1EB}\u{1F1F8}]|\u{1F1FA}[\u{1F1E6}\u{1F1EC}\u{1F1F2}\u{1F1F3}\u{1F1F8}\u{1F1FE}\u{1F1FF}]|\u{1F1F0}[\u{1F1EA}\u{1F1EC}-\u{1F1EE}\u{1F1F2}\u{1F1F3}\u{1F1F5}\u{1F1F7}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1EF}[\u{1F1EA}\u{1F1F2}\u{1F1F4}\u{1F1F5}]|\u{1F1F8}[\u{1F1E6}-\u{1F1EA}\u{1F1EC}-\u{1F1F4}\u{1F1F7}-\u{1F1F9}\u{1F1FB}\u{1F1FD}-\u{1F1FF}]|\u{1F1EE}[\u{1F1E8}-\u{1F1EA}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}]|\u{1F1FF}[\u{1F1E6}\u{1F1F2}\u{1F1FC}]|\u{1F1EB}[\u{1F1EE}-\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1F7}]|\u{1F1F5}[\u{1F1E6}\u{1F1EA}-\u{1F1ED}\u{1F1F0}-\u{1F1F3}\u{1F1F7}-\u{1F1F9}\u{1F1FC}\u{1F1FE}]|\u{1F1E9}[\u{1F1EA}\u{1F1EC}\u{1F1EF}\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1FF}]|\u{1F1F9}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1ED}\u{1F1EF}-\u{1F1F4}\u{1F1F7}\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FF}]|\u{1F1E7}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EF}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|[#\*0-9]\uFE0F\u20E3|\u{1F1F1}[\u{1F1E6}-\u{1F1E8}\u{1F1EE}\u{1F1F0}\u{1F1F7}-\u{1F1FB}\u{1F1FE}]|\u{1F1E6}[\u{1F1E8}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F2}\u{1F1F4}\u{1F1F6}-\u{1F1FA}\u{1F1FC}\u{1F1FD}\u{1F1FF}]|\u{1F1F7}[\u{1F1EA}\u{1F1F4}\u{1F1F8}\u{1F1FA}\u{1F1FC}]|\u{1F1FB}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1EE}\u{1F1F3}\u{1F1FA}]|\u{1F1FE}[\u{1F1EA}\u{1F1F9}]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9D6}-\u{1F9DD}][\u{1F3FB}-\u{1F3FF}]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]|[\u261D\u270A-\u270D\u{1F385}\u{1F3C2}\u{1F3C7}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}\u{1F467}\u{1F470}\u{1F472}\u{1F474}-\u{1F476}\u{1F478}\u{1F47C}\u{1F483}\u{1F485}\u{1F4AA}\u{1F574}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F64C}\u{1F64F}\u{1F6C0}\u{1F6CC}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F930}-\u{1F936}\u{1F9B5}\u{1F9B6}\u{1F9D1}-\u{1F9D5}][\u{1F3FB}-\u{1F3FF}]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55\u{1F004}\u{1F0CF}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F236}\u{1F238}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F320}\u{1F32D}-\u{1F335}\u{1F337}-\u{1F37C}\u{1F37E}-\u{1F393}\u{1F3A0}-\u{1F3CA}\u{1F3CF}-\u{1F3D3}\u{1F3E0}-\u{1F3F0}\u{1F3F4}\u{1F3F8}-\u{1F43E}\u{1F440}\u{1F442}-\u{1F4FC}\u{1F4FF}-\u{1F53D}\u{1F54B}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F57A}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5FB}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CC}\u{1F6D0}-\u{1F6D2}\u{1F6EB}\u{1F6EC}\u{1F6F4}-\u{1F6F9}\u{1F910}-\u{1F93A}\u{1F93C}-\u{1F93E}\u{1F940}-\u{1F945}\u{1F947}-\u{1F970}\u{1F973}-\u{1F976}\u{1F97A}\u{1F97C}-\u{1F9A2}\u{1F9B0}-\u{1F9B9}\u{1F9C0}-\u{1F9C2}\u{1F9D0}-\u{1F9FF}]|[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299\u{1F004}\u{1F0CF}\u{1F170}\u{1F171}\u{1F17E}\u{1F17F}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F202}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F321}\u{1F324}-\u{1F393}\u{1F396}\u{1F397}\u{1F399}-\u{1F39B}\u{1F39E}-\u{1F3F0}\u{1F3F3}-\u{1F3F5}\u{1F3F7}-\u{1F4FD}\u{1F4FF}-\u{1F53D}\u{1F549}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F56F}\u{1F570}\u{1F573}-\u{1F57A}\u{1F587}\u{1F58A}-\u{1F58D}\u{1F590}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5A5}\u{1F5A8}\u{1F5B1}\u{1F5B2}\u{1F5BC}\u{1F5C2}-\u{1F5C4}\u{1F5D1}-\u{1F5D3}\u{1F5DC}-\u{1F5DE}\u{1F5E1}\u{1F5E3}\u{1F5E8}\u{1F5EF}\u{1F5F3}\u{1F5FA}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CB}-\u{1F6D2}\u{1F6E0}-\u{1F6E5}\u{1F6E9}\u{1F6EB}\u{1F6EC}\u{1F6F0}\u{1F6F3}-\u{1F6F9}\u{1F910}-\u{1F93A}\u{1F93C}-\u{1F93E}\u{1F940}-\u{1F945}\u{1F947}-\u{1F970}\u{1F973}-\u{1F976}\u{1F97A}\u{1F97C}-\u{1F9A2}\u{1F9B0}-\u{1F9B9}\u{1F9C0}-\u{1F9C2}\u{1F9D0}-\u{1F9FF}]\uFE0F?|[\u261D\u26F9\u270A-\u270D\u{1F385}\u{1F3C2}-\u{1F3C4}\u{1F3C7}\u{1F3CA}-\u{1F3CC}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}-\u{1F469}\u{1F46E}\u{1F470}-\u{1F478}\u{1F47C}\u{1F481}-\u{1F483}\u{1F485}-\u{1F487}\u{1F4AA}\u{1F574}\u{1F575}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F645}-\u{1F647}\u{1F64B}-\u{1F64F}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F6C0}\u{1F6CC}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F926}\u{1F930}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B5}\u{1F9B6}\u{1F9B8}\u{1F9B9}\u{1F9D1}-\u{1F9DD}]/gu; + return /\u{1F3F4}\u{E0067}\u{E0062}(?:\u{E0065}\u{E006E}\u{E0067}|\u{E0073}\u{E0063}\u{E0074}|\u{E0077}\u{E006C}\u{E0073})\u{E007F}|\u{1F468}(?:\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}\u{1F3FB}|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FE}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D)?\u{1F468}|[\u{1F468}\u{1F469}]\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}]|[\u{1F468}\u{1F469}]\u200D[\u{1F466}\u{1F467}]|[\u2695\u2696\u2708]\uFE0F|[\u{1F466}\u{1F467}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|(?:\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708])\uFE0F|\u{1F3FB}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}]|[\u{1F3FB}-\u{1F3FF}])|(?:\u{1F9D1}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F469})\u{1F3FB}|\u{1F9D1}(?:\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u200D\u{1F91D}\u200D\u{1F9D1})|(?:\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D[\u{1F468}\u{1F469}])[\u{1F3FB}-\u{1F3FE}]|(?:\u{1F9D1}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}\u{1F3FC}]|\u{1F469}(?:\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FD}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FB}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FC}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}\u{1F3FE}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D[\u{1F468}\u{1F469}]|[\u{1F468}\u{1F469}])|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F469}\u200D\u{1F469}\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|(?:\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}-\u{1F3FD}]|\u{1F469}\u200D\u{1F466}\u200D\u{1F466}|\u{1F469}\u200D\u{1F469}\u200D[\u{1F466}\u{1F467}]|(?:\u{1F441}\uFE0F\u200D\u{1F5E8}|\u{1F469}(?:\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708]|\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}]\uFE0F|[\u{1F46F}\u{1F93C}\u{1F9DE}\u{1F9DF}])\u200D[\u2640\u2642]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}](?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\u{1F3F4}\u200D\u2620)\uFE0F|\u{1F469}\u200D\u{1F467}\u200D[\u{1F466}\u{1F467}]|\u{1F3F3}\uFE0F\u200D\u{1F308}|\u{1F415}\u200D\u{1F9BA}|\u{1F469}\u200D\u{1F466}|\u{1F469}\u200D\u{1F467}|\u{1F1FD}\u{1F1F0}|\u{1F1F4}\u{1F1F2}|\u{1F1F6}\u{1F1E6}|[#\*0-9]\uFE0F\u20E3|\u{1F1E7}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EF}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1F9}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1ED}\u{1F1EF}-\u{1F1F4}\u{1F1F7}\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FF}]|\u{1F1EA}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1ED}\u{1F1F7}-\u{1F1FA}]|\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F7}[\u{1F1EA}\u{1F1F4}\u{1F1F8}\u{1F1FA}\u{1F1FC}]|\u{1F469}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F2}[\u{1F1E6}\u{1F1E8}-\u{1F1ED}\u{1F1F0}-\u{1F1FF}]|\u{1F1E6}[\u{1F1E8}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F2}\u{1F1F4}\u{1F1F6}-\u{1F1FA}\u{1F1FC}\u{1F1FD}\u{1F1FF}]|\u{1F1F0}[\u{1F1EA}\u{1F1EC}-\u{1F1EE}\u{1F1F2}\u{1F1F3}\u{1F1F5}\u{1F1F7}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1ED}[\u{1F1F0}\u{1F1F2}\u{1F1F3}\u{1F1F7}\u{1F1F9}\u{1F1FA}]|\u{1F1E9}[\u{1F1EA}\u{1F1EC}\u{1F1EF}\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1FF}]|\u{1F1FE}[\u{1F1EA}\u{1F1F9}]|\u{1F1EC}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EE}\u{1F1F1}-\u{1F1F3}\u{1F1F5}-\u{1F1FA}\u{1F1FC}\u{1F1FE}]|\u{1F1F8}[\u{1F1E6}-\u{1F1EA}\u{1F1EC}-\u{1F1F4}\u{1F1F7}-\u{1F1F9}\u{1F1FB}\u{1F1FD}-\u{1F1FF}]|\u{1F1EB}[\u{1F1EE}-\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1F7}]|\u{1F1F5}[\u{1F1E6}\u{1F1EA}-\u{1F1ED}\u{1F1F0}-\u{1F1F3}\u{1F1F7}-\u{1F1F9}\u{1F1FC}\u{1F1FE}]|\u{1F1FB}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1EE}\u{1F1F3}\u{1F1FA}]|\u{1F1F3}[\u{1F1E6}\u{1F1E8}\u{1F1EA}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F4}\u{1F1F5}\u{1F1F7}\u{1F1FA}\u{1F1FF}]|\u{1F1E8}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1EE}\u{1F1F0}-\u{1F1F5}\u{1F1F7}\u{1F1FA}-\u{1F1FF}]|\u{1F1F1}[\u{1F1E6}-\u{1F1E8}\u{1F1EE}\u{1F1F0}\u{1F1F7}-\u{1F1FB}\u{1F1FE}]|\u{1F1FF}[\u{1F1E6}\u{1F1F2}\u{1F1FC}]|\u{1F1FC}[\u{1F1EB}\u{1F1F8}]|\u{1F1FA}[\u{1F1E6}\u{1F1EC}\u{1F1F2}\u{1F1F3}\u{1F1F8}\u{1F1FE}\u{1F1FF}]|\u{1F1EE}[\u{1F1E8}-\u{1F1EA}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}]|\u{1F1EF}[\u{1F1EA}\u{1F1F2}\u{1F1F4}\u{1F1F5}]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}][\u{1F3FB}-\u{1F3FF}]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]|[\u261D\u270A-\u270D\u{1F385}\u{1F3C2}\u{1F3C7}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}\u{1F467}\u{1F46B}-\u{1F46D}\u{1F470}\u{1F472}\u{1F474}-\u{1F476}\u{1F478}\u{1F47C}\u{1F483}\u{1F485}\u{1F4AA}\u{1F574}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F64C}\u{1F64F}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F930}-\u{1F936}\u{1F9B5}\u{1F9B6}\u{1F9BB}\u{1F9D2}-\u{1F9D5}][\u{1F3FB}-\u{1F3FF}]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55\u{1F004}\u{1F0CF}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F236}\u{1F238}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F320}\u{1F32D}-\u{1F335}\u{1F337}-\u{1F37C}\u{1F37E}-\u{1F393}\u{1F3A0}-\u{1F3CA}\u{1F3CF}-\u{1F3D3}\u{1F3E0}-\u{1F3F0}\u{1F3F4}\u{1F3F8}-\u{1F43E}\u{1F440}\u{1F442}-\u{1F4FC}\u{1F4FF}-\u{1F53D}\u{1F54B}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F57A}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5FB}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CC}\u{1F6D0}-\u{1F6D2}\u{1F6D5}\u{1F6EB}\u{1F6EC}\u{1F6F4}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]|[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299\u{1F004}\u{1F0CF}\u{1F170}\u{1F171}\u{1F17E}\u{1F17F}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F202}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F321}\u{1F324}-\u{1F393}\u{1F396}\u{1F397}\u{1F399}-\u{1F39B}\u{1F39E}-\u{1F3F0}\u{1F3F3}-\u{1F3F5}\u{1F3F7}-\u{1F4FD}\u{1F4FF}-\u{1F53D}\u{1F549}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F56F}\u{1F570}\u{1F573}-\u{1F57A}\u{1F587}\u{1F58A}-\u{1F58D}\u{1F590}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5A5}\u{1F5A8}\u{1F5B1}\u{1F5B2}\u{1F5BC}\u{1F5C2}-\u{1F5C4}\u{1F5D1}-\u{1F5D3}\u{1F5DC}-\u{1F5DE}\u{1F5E1}\u{1F5E3}\u{1F5E8}\u{1F5EF}\u{1F5F3}\u{1F5FA}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CB}-\u{1F6D2}\u{1F6D5}\u{1F6E0}-\u{1F6E5}\u{1F6E9}\u{1F6EB}\u{1F6EC}\u{1F6F0}\u{1F6F3}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]\uFE0F?|[\u261D\u26F9\u270A-\u270D\u{1F385}\u{1F3C2}-\u{1F3C4}\u{1F3C7}\u{1F3CA}-\u{1F3CC}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}-\u{1F478}\u{1F47C}\u{1F481}-\u{1F483}\u{1F485}-\u{1F487}\u{1F48F}\u{1F491}\u{1F4AA}\u{1F574}\u{1F575}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F645}-\u{1F647}\u{1F64B}-\u{1F64F}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91F}\u{1F926}\u{1F930}-\u{1F939}\u{1F93C}-\u{1F93E}\u{1F9B5}\u{1F9B6}\u{1F9B8}\u{1F9B9}\u{1F9BB}\u{1F9CD}-\u{1F9CF}\u{1F9D1}-\u{1F9DD}]/gu; }; diff --git a/node_modules/emoji-regex/index.d.ts b/node_modules/emoji-regex/index.d.ts index 2c317cda..1955b470 100644 --- a/node_modules/emoji-regex/index.d.ts +++ b/node_modules/emoji-regex/index.d.ts @@ -3,3 +3,21 @@ declare module 'emoji-regex' { export default emojiRegex; } + +declare module 'emoji-regex/text' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} + +declare module 'emoji-regex/es2015' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} + +declare module 'emoji-regex/es2015/text' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} diff --git a/node_modules/emoji-regex/index.js b/node_modules/emoji-regex/index.js index e2237a4e..d993a3a9 100644 --- a/node_modules/emoji-regex/index.js +++ b/node_modules/emoji-regex/index.js @@ -2,5 +2,5 @@ module.exports = function () { // https://mths.be/emoji - return /\uD83C\uDFF4(?:\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74)\uDB40\uDC7F|\u200D\u2620\uFE0F)|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC68(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3]))|\uD83D\uDC69\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\uD83D\uDC68(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83D\uDC69\u200D[\u2695\u2696\u2708])\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC68(?:\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDD1-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDEEB\uDEEC\uDEF4-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC69\uDC6E\uDC70-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD26\uDD30-\uDD39\uDD3D\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDD1-\uDDDD])/g; + return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g; }; diff --git a/node_modules/emoji-regex/package.json b/node_modules/emoji-regex/package.json index ed68e52b..6d323528 100644 --- a/node_modules/emoji-regex/package.json +++ b/node_modules/emoji-regex/package.json @@ -1,6 +1,6 @@ { "name": "emoji-regex", - "version": "7.0.3", + "version": "8.0.0", "description": "A regular expression to match all Emoji-only symbols as per the Unicode Standard.", "homepage": "https://mths.be/emoji-regex", "main": "index.js", @@ -39,13 +39,12 @@ "test:watch": "npm run test -- --watch" }, "devDependencies": { - "@babel/cli": "^7.0.0", - "@babel/core": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.0.0", - "@babel/preset-env": "^7.0.0", - "mocha": "^5.2.0", + "@babel/cli": "^7.2.3", + "@babel/core": "^7.3.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.2.0", + "@babel/preset-env": "^7.3.4", + "mocha": "^6.0.2", "regexgen": "^1.3.0", - "unicode-11.0.0": "^0.7.7", - "unicode-tr51": "^9.0.1" + "unicode-12.0.0": "^0.7.9" } } diff --git a/node_modules/emoji-regex/text.js b/node_modules/emoji-regex/text.js index 199ae3be..0a55ce2f 100644 --- a/node_modules/emoji-regex/text.js +++ b/node_modules/emoji-regex/text.js @@ -2,5 +2,5 @@ module.exports = function () { // https://mths.be/emoji - return /\uD83C\uDFF4(?:\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74)\uDB40\uDC7F|\u200D\u2620\uFE0F)|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC68(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3]))|\uD83D\uDC69\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\uD83D\uDC68(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83D\uDC69\u200D[\u2695\u2696\u2708])\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC68(?:\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDD1-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDEEB\uDEEC\uDEF4-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])\uFE0F?|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC69\uDC6E\uDC70-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD26\uDD30-\uDD39\uDD3D\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDD1-\uDDDD])/g; + return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F?|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g; }; diff --git a/node_modules/eslint-config-prettier/@typescript-eslint.js b/node_modules/eslint-config-prettier/@typescript-eslint.js index 50c9c681..f1fee0f8 100644 --- a/node_modules/eslint-config-prettier/@typescript-eslint.js +++ b/node_modules/eslint-config-prettier/@typescript-eslint.js @@ -5,14 +5,16 @@ module.exports = { "@typescript-eslint/quotes": 0, "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/func-call-spacing": "off", "@typescript-eslint/indent": "off", + "@typescript-eslint/keyword-spacing": "off", "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/no-extra-parens": "off", "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/semi": "off", "@typescript-eslint/space-before-function-paren": "off", - "@typescript-eslint/type-annotation-spacing": "off" - } + "@typescript-eslint/type-annotation-spacing": "off", + }, }; diff --git a/node_modules/eslint-config-prettier/CHANGELOG.md b/node_modules/eslint-config-prettier/CHANGELOG.md index f91fd3b7..7bd7a968 100644 --- a/node_modules/eslint-config-prettier/CHANGELOG.md +++ b/node_modules/eslint-config-prettier/CHANGELOG.md @@ -1,7 +1,19 @@ +### Version 6.12.0 (2020-09-25) + +- Added: [@typescript-eslint/comma-dangle]. Thanks to Masafumi Koba (@ybiquitous)!! + +### Version 6.11.0 (2020-04-21) + +- Added: [@typescript-eslint/keyword-spacing]. Thanks to Hans Bergren (@hbergren)! + +### Version 6.10.1 (2020-03-22) + +- Improved: Recommend using `npx` when running the CLI helper tool. +- Updated: Mention that eslint-config-prettier has been tested with Prettier 2.0 and the latest versions of plugins. + ### Version 6.10.0 (2020-01-28) -- Added: [@typescript-eslint/comma-spacing]. Thanks to Thanks to Masafumi - Koba (@ybiquitous)!! +- Added: [@typescript-eslint/comma-spacing]. Thanks to Masafumi Koba (@ybiquitous)!! ### Version 6.9.0 (2019-12-27) @@ -13,48 +25,37 @@ ### Version 6.7.0 (2019-11-19) -- Added: [@typescript-eslint/space-before-function-paren]. Thanks to Masafumi - Koba (@ybiquitous)! +- Added: [@typescript-eslint/space-before-function-paren]. Thanks to Masafumi Koba (@ybiquitous)! ### Version 6.6.0 (2019-11-17) -- Added: New [eslint-plugin-vue] rules: [vue/dot-location] and - [vue/keyword-spacing]. Thanks to @xcatliu! +- Added: New [eslint-plugin-vue] rules: [vue/dot-location] and [vue/keyword-spacing]. Thanks to @xcatliu! ### Version 6.5.0 (2019-10-26) -- Added: Support for [excluding deprecated rules]. Thanks to Alex Ilyaev - (@alexilyaev)! +- Added: Support for [excluding deprecated rules]. Thanks to Alex Ilyaev (@alexilyaev)! ### Version 6.4.0 (2019-10-05) -- Added: [unicorn/no-nested-ternary]. Thanks to Yang Mingshan - (@yangmingshan)! +- Added: [unicorn/no-nested-ternary]. Thanks to Yang Mingshan (@yangmingshan)! ### Version 6.3.0 (2019-09-10) -- Added: [@typescript-eslint/brace-style]. Thanks to Masafumi Koba - (@ybiquitous)! +- Added: [@typescript-eslint/brace-style]. Thanks to Masafumi Koba (@ybiquitous)! ### Version 6.2.0 (2019-09-03) -- Added: [@typescript-eslint/quotes] (as a [special - rule][@typescript-eslint/quotes-special]). Thanks to Masafumi Koba - (@ybiquitous)! +- Added: [@typescript-eslint/quotes] (as a [special rule][@typescript-eslint/quotes-special]). Thanks to Masafumi Koba (@ybiquitous)! ### Version 6.1.0 (2019-08-19) -- Added: [function-call-argument-newline] \(new in ESLint 6.2.0). Thanks to - Masafumi Koba (@ybiquitous)! +- Added: [function-call-argument-newline] \(new in ESLint 6.2.0). Thanks to Masafumi Koba (@ybiquitous)! ### Version 6.0.0 (2019-06-25) -- Changed: The CLI helper tool now considers [no-confusing-arrow] to conflict - if you use the default value of its `allowParens` option. The default was - changed to `true` in ESLint 6, which conflicts with Prettier. +- Changed: The CLI helper tool now considers [no-confusing-arrow] to conflict if you use the default value of its `allowParens` option. The default was changed to `true` in ESLint 6, which conflicts with Prettier. - If the CLI helper tool gives you errors about this after upgrading, the - solution is to change this: + If the CLI helper tool gives you errors about this after upgrading, the solution is to change this: ```json { @@ -76,10 +77,7 @@ The latter works in both ESLint 6 as well as in ESLint 5 and older. -- Improved: `eslint --print-config` usage instructions. The CLI tool help - text as well as the documentation has been updated to suggest commands that - work in ESLint 6.0 as well as in ESLint 5 and older. (Instead of `eslint - --print-config .`, use `eslint --print-config path/to/main.js`.) +- Improved: `eslint --print-config` usage instructions. The CLI tool help text as well as the documentation has been updated to suggest commands that work in ESLint 6.0 as well as in ESLint 5 and older. (Instead of `eslint --print-config .`, use `eslint --print-config path/to/main.js`.) ### Version 5.1.0 (2019-06-25) @@ -87,38 +85,25 @@ ### Version 5.0.0 (2019-06-15) -- Removed: [react/self-closing-comp]. This rule was added in v4.1.0 not - because it _conflicted_ with Prettier but because it was _unnecessary_ when - using Prettier. However, in v1.18.0 [Prettier stopped converting empty - elements to self-closing elements][prettier-self-closing]. So the rule is - not unnecessary anymore. +- Removed: [react/self-closing-comp]. This rule was added in v4.1.0 not because it _conflicted_ with Prettier but because it was _unnecessary_ when using Prettier. However, in v1.18.0 [Prettier stopped converting empty elements to self-closing elements][prettier-self-closing]. So the rule is not unnecessary anymore. - If you use Prettier v1.17.1 or older you should be able to upgrade - eslint-config-prettier to v5.0.0 without having to do anything else. + If you use Prettier v1.17.1 or older you should be able to upgrade eslint-config-prettier to v5.0.0 without having to do anything else. - If you use Prettier v1.18.0 or newer, you might get lint errors about for - example changing `
` into `
`. You have two options: + If you use Prettier v1.18.0 or newer, you might get lint errors about for example changing `
` into `
`. You have two options: - - Run `eslint --fix` if you prefer to enforce self-closing elements where - possible. This should fix all the errors. - - Add `"react/self-closing-comp": "off"` to your ESLint config if you use - autofix from your editor and you face the same [issue as Prettier - did][prettier-self-closing]. + - Run `eslint --fix` if you prefer to enforce self-closing elements where possible. This should fix all the errors. + - Add `"react/self-closing-comp": "off"` to your ESLint config if you use autofix from your editor and you face the same [issue as Prettier did][prettier-self-closing]. -- Changed: Node.js 6 is no longer officially supported, but v5.0.0 should - still work with it. +- Changed: Node.js 6 is no longer officially supported, but v5.0.0 should still work with it. ### Version 4.3.0 (2019-05-16) -- Added: New [eslint-plugin-vue] rules: [vue/arrow-spacing], - [vue/block-spacing], [vue/brace-style] and [vue/comma-dangle]. -- Added: New [@typescript-eslint/eslint-plugin] rules: - [@typescript-eslint/func-call-spacing] and [@typescript-eslint/semi]. +- Added: New [eslint-plugin-vue] rules: [vue/arrow-spacing], [vue/block-spacing], [vue/brace-style] and [vue/comma-dangle]. +- Added: New [@typescript-eslint/eslint-plugin] rules: [@typescript-eslint/func-call-spacing] and [@typescript-eslint/semi]. ### Version 4.2.0 (2019-04-25) -- Added: [@typescript-eslint/no-extra-parens]. Thanks to Keiichiro Amemiya - (@Hoishin) and Jen Gorfine (@jgorfine)! +- Added: [@typescript-eslint/no-extra-parens]. Thanks to Keiichiro Amemiya (@Hoishin) and Jen Gorfine (@jgorfine)! ### Version 4.1.0 (2019-02-26) @@ -127,59 +112,37 @@ ### Version 4.0.0 (2019-01-26) -- Breaking change: Support for [eslint-plugin-typescript] has been removed and - replaced with support for its successor [@typescript-eslint/eslint-plugin]. - Thanks to TANIGUCHI Masaya (@ta2gch) and everyone else who helped with this! -- Changed: [arrow-body-style] and [prefer-arrow-callback] are now marked as - [special rules][arrow-special], since they might cause problems if using - [eslint-plugin-prettier] and `--fix`. They are turned off by default, and the - CLI helper tool will _warn_ about them (but not error if you do enable them). - This won’t break your linting checks, but do note that these rules will be - disabled unless you explicitly enable them again, and that you might see new - warnings when running the CLI helper tool. +- Breaking change: Support for [eslint-plugin-typescript] has been removed and replaced with support for its successor [@typescript-eslint/eslint-plugin]. Thanks to TANIGUCHI Masaya (@ta2gch) and everyone else who helped with this! +- Changed: [arrow-body-style] and [prefer-arrow-callback] are now marked as [special rules][arrow-special], since they might cause problems if using [eslint-plugin-prettier] and `--fix`. They are turned off by default, and the CLI helper tool will _warn_ about them (but not error if you do enable them). This won’t break your linting checks, but do note that these rules will be disabled unless you explicitly enable them again, and that you might see new warnings when running the CLI helper tool. ### Version 3.6.0 (2019-01-19) -- Added: Support for [eslint-plugin-babel]. Thanks to Matija Marohnić - (@silvenon)! +- Added: Support for [eslint-plugin-babel]. Thanks to Matija Marohnić (@silvenon)! ### Version 3.5.0 (2019-01-16) -- Fixed: The eslint-plugin-vue change from 3.4.0 has been reverted. That change - requires eslint-plugin-vue@5, while many use eslint-plugin-vue@4. In other - words, it was an accidental breaking change. Also, after thinking about it - some more, it makes sense to have a Prettier-specific list of rules, rather - than using the `vue/no-layout-rules` list, since there can be layout rules - that don’t conflict with but rather complement Prettier. +- Fixed: The eslint-plugin-vue change from 3.4.0 has been reverted. That change requires eslint-plugin-vue@5, while many use eslint-plugin-vue@4. In other words, it was an accidental breaking change. Also, after thinking about it some more, it makes sense to have a Prettier-specific list of rules, rather than using the `vue/no-layout-rules` list, since there can be layout rules that don’t conflict with but rather complement Prettier. - Added: New eslint-plugin-vue rules coming in the next version after 5.1.0. ### Version 3.4.0 (2019-01-13) - Added: Support for [eslint-plugin-typescript]. Thanks to Jed Fox (@j-f1)! -- Improved: The eslint-plugin-vue integration is now using the - `vue/no-layout-rules` config behind the scenes, so it should automatically - stay up-to-date when new eslint-plugin-vue versions are released. Thanks to - Michał Sajnóg (@michalsnik)! +- Improved: The eslint-plugin-vue integration is now using the `vue/no-layout-rules` config behind the scenes, so it should automatically stay up-to-date when new eslint-plugin-vue versions are released. Thanks to Michał Sajnóg (@michalsnik)! ### Version 3.3.0 (2018-11-11) -- Added: The [vue/html-self-closing] rule (as a [special - rule][vue/html-self-closing-special]). Thanks to Yamagishi Kazutoshi (@ykzts)! +- Added: The [vue/html-self-closing] rule (as a [special rule][vue/html-self-closing-special]). Thanks to Yamagishi Kazutoshi (@ykzts)! ### Version 3.2.0 (2018-11-10) - Added: Support for [eslint-plugin-vue]. -- Fixed: The CLI helper tool should now work in Node.js 6 with npm 3 again. - Thanks to Grant Snodgrass (@meeber)! +- Fixed: The CLI helper tool should now work in Node.js 6 with npm 3 again. Thanks to Grant Snodgrass (@meeber)! - Improved: Updated documentation. ### Version 3.1.0 (2018-09-22) - Added: Support for [eslint-plugin-unicorn]. Thanks to John Mars (@j0hnm4r5)! -- Changed: The [quotes] rule is now allowed to be used to forbid unnecessary - backticks. This means that the CLI helper tool no longer can automatically - validate it, so you’ll need to refer the [quotes special rule - documentation][quotes-special]. Thanks to Nick Petruzzelli (@npetruzzelli)! +- Changed: The [quotes] rule is now allowed to be used to forbid unnecessary backticks. This means that the CLI helper tool no longer can automatically validate it, so you’ll need to refer the [quotes special rule documentation][quotes-special]. Thanks to Nick Petruzzelli (@npetruzzelli)! ### Version 3.0.1 (2018-08-13) @@ -205,12 +168,8 @@ ### Version 2.7.0 (2017-11-01) -- Added: The [lines-around-comment] rule (as a [special - rule][lines-around-comment-special]). Thanks to Maurice de Beijer - (@mauricedb)! -- Added: The [no-unexpected-multiline] rule (as a [special - rule][no-unexpected-multiline-special]). Thanks to Suhas Karanth - (@sudo-suhas)! +- Added: The [lines-around-comment] rule (as a [special rule][lines-around-comment-special]). Thanks to Maurice de Beijer (@mauricedb)! +- Added: The [no-unexpected-multiline] rule (as a [special rule][no-unexpected-multiline-special]). Thanks to Suhas Karanth (@sudo-suhas)! ### Version 2.6.0 (2017-09-23) @@ -218,18 +177,15 @@ ### Version 2.5.0 (2017-09-16) -- Added: Support for [eslint-plugin-standard]. Thanks to Christian Pekeler - (@pekeler)! +- Added: Support for [eslint-plugin-standard]. Thanks to Christian Pekeler (@pekeler)! ### Version 2.4.0 (2017-09-02) -- Added: The [function-paren-newline] rule (new in [ESLint 4.6.0]). Thanks to - Pierre Vanduynslager (@vanduynslagerp)! +- Added: The [function-paren-newline] rule (new in [ESLint 4.6.0]). Thanks to Pierre Vanduynslager (@vanduynslagerp)! ### Version 2.3.0 (2017-06-30) -- Added: The (deprecated) [indent-legacy] rule. Thanks to M. Ian Graham - (@miangraham)! +- Added: The (deprecated) [indent-legacy] rule. Thanks to M. Ian Graham (@miangraham)! ### Version 2.2.0 (2017-06-17) @@ -246,33 +202,23 @@ ### Version 2.1.0 (2017-05-13) -- Added: The [no-tabs] rule (as a [special rule][no-tabs-special]). Thanks to - Alex Meah (@AlexMeah)! +- Added: The [no-tabs] rule (as a [special rule][no-tabs-special]). Thanks to Alex Meah (@AlexMeah)! ### Version 2.0.0 (2017-05-07) - Changed/Improved: The CLI helper tool is now more helpful. - - The options of special rules are now validated if possible. If a special - rule is enabled with non-conflicting options, the CLI no longer warns about - it. - - If only special rules that cannot be automatically checked are found, the - CLI no longer exists with a non-zero exit code. Instead, it only warns about - the rules. + - The options of special rules are now validated if possible. If a special rule is enabled with non-conflicting options, the CLI no longer warns about it. + - If only special rules that cannot be automatically checked are found, the CLI no longer exists with a non-zero exit code. Instead, it only warns about the rules. -- Changed: The [no-confusing-arrow] is now a special rule again, since it might - conflict with recent Prettier versions. +- Changed: The [no-confusing-arrow] is now a special rule again, since it might conflict with recent Prettier versions. -- Removed: The `react/wrap-multilines` rule (which has been deprecated for a - while), since it was removed in eslint-plugin-react@7. +- Removed: The `react/wrap-multilines` rule (which has been deprecated for a while), since it was removed in eslint-plugin-react@7. ### Version 1.7.0 (2017-04-19) -- Changed: The [no-confusing-arrow] is no longer a special rule, but simply - turned off, since recent Prettier versions make it redundant. -- Improved: The CLI helper tool now has a more helpful message for special - rules, and exits with a different status code if only special rules were - found. The exit codes are now documented as well. +- Changed: The [no-confusing-arrow] is no longer a special rule, but simply turned off, since recent Prettier versions make it redundant. +- Improved: The CLI helper tool now has a more helpful message for special rules, and exits with a different status code if only special rules were found. The exit codes are now documented as well. ### Version 1.6.0 (2017-04-05) @@ -284,26 +230,20 @@ ### Version 1.4.1 (2017-02-28) -- Improved: eslint-config-prettier is now part of the [prettier] organization! - This version updates all URLs to point to the new home of the project. +- Improved: eslint-config-prettier is now part of the [prettier] organization! This version updates all URLs to point to the new home of the project. ### Version 1.4.0 (2017-02-26) -- Added: The [no-confusing-arrow] rule (as a - [special rule][no-confusing-arrow-special]). Thanks to Dominik Ferber - (@dferber90)! -- Added: Deprecated or removed rules that might conflict with prettier. Thanks - to Dominik Ferber (@dferber90)! +- Added: The [no-confusing-arrow] rule (as a [special rule][no-confusing-arrow-special]). Thanks to Dominik Ferber (@dferber90)! +- Added: Deprecated or removed rules that might conflict with prettier. Thanks to Dominik Ferber (@dferber90)! ### Version 1.3.0 (2017-02-21) -- Added: The [template-tag-spacing] rule. Thanks to Thibault Derousseaux - (@tibdex)! +- Added: The [template-tag-spacing] rule. Thanks to Thibault Derousseaux (@tibdex)! ### Version 1.2.0 (2017-02-14) -- Added: The [one-var-declaration-per-line] rule. Thanks to Ruben Oostinga - (@0xR)! +- Added: The [one-var-declaration-per-line] rule. Thanks to Ruben Oostinga (@0xR)! ### Version 1.1.1 (2017-02-12) @@ -312,8 +252,7 @@ ### Version 1.1.0 (2017-02-10) - Fixed: The [eslint-plugin-react] exclusion rules now actually work. -- Fixed: The CLI helper tool now works in Node.js 4. Thanks to Nathan Friedly - (@nfriedly)! +- Fixed: The CLI helper tool now works in Node.js 4. Thanks to Nathan Friedly (@nfriedly)! - Added: Support for [eslint-plugin-flowtype]. - Improved: Minor things for the CLI helper tool. - Improved: There are now tests for everything. @@ -335,9 +274,11 @@ - Initial release. [@typescript-eslint/brace-style]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/brace-style.md +[@typescript-eslint/comma-dangle]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/comma-dangle.md [@typescript-eslint/comma-spacing]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/comma-spacing.md [@typescript-eslint/eslint-plugin]: https://github.com/typescript-eslint/typescript-eslint [@typescript-eslint/func-call-spacing]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/func-call-spacing.md +[@typescript-eslint/keyword-spacing]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/keyword-spacing.md [@typescript-eslint/no-extra-parens]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-parens.md [@typescript-eslint/no-extra-semi]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-semi.md [@typescript-eslint/quotes-special]: https://github.com/prettier/eslint-config-prettier/blob/857257179fe69715362dfa9300762d6e534c0603/README.md#quotes @@ -350,8 +291,8 @@ [arrow-special]: https://github.com/prettier/eslint-config-prettier/blob/2c842675e55b91aecaef6f997d234ebf2d220ffb/README.md#arrow-body-style-and-prefer-arrow-callback [curly]: https://eslint.org/docs/rules/curly [end-of-line]: https://prettier.io/docs/en/options.html#end-of-line -[ESLint 4.0.0]: https://eslint.org/blog/2017/06/eslint-v4.0.0-released -[ESLint 4.6.0]: https://eslint.org/blog/2017/09/eslint-v4.6.0-released +[eslint 4.0.0]: https://eslint.org/blog/2017/06/eslint-v4.0.0-released +[eslint 4.6.0]: https://eslint.org/blog/2017/09/eslint-v4.6.0-released [eslint-plugin-babel]: https://github.com/babel/eslint-plugin-babel [eslint-plugin-flowtype]: https://github.com/gajus/eslint-plugin-flowtype [eslint-plugin-prettier]: https://github.com/prettier/eslint-plugin-prettier diff --git a/node_modules/eslint-config-prettier/README.md b/node_modules/eslint-config-prettier/README.md index b4d983eb..d81cbdfa 100644 --- a/node_modules/eslint-config-prettier/README.md +++ b/node_modules/eslint-config-prettier/README.md @@ -1,19 +1,16 @@ -# eslint-config-prettier [![Build Status][travis-badge]][travis] +# eslint-config-prettier Turns off all rules that are unnecessary or might conflict with [Prettier]. -This lets you use your favorite shareable config without letting its stylistic -choices get in the way when using Prettier. +This lets you use your favorite shareable config without letting its stylistic choices get in the way when using Prettier. -Note that this config _only_ turns rules _off,_ so it only makes sense using -it together with some other config. +Note that this config _only_ turns rules _off,_ so it only makes sense using it together with some other config. ## Contents - - [Installation](#installation) - [Excluding deprecated rules](#excluding-deprecated-rules) - [CLI helper tool](#cli-helper-tool) @@ -42,19 +39,15 @@ it together with some other config. ## Installation -Tip: First, you might be interested in installing [eslint-plugin-prettier]. -Follow the instructions over there. This is optional, though. - Install eslint-config-prettier: ``` npm install --save-dev eslint-config-prettier ``` -Then, add eslint-config-prettier to the "extends" array in your `.eslintrc.*` -file. Make sure to put it **last,** so it gets the chance to override other -configs. +Then, add eslint-config-prettier to the "extends" array in your `.eslintrc.*` file. Make sure to put it **last,** so it gets the chance to override other configs. + ```json { "extends": [ @@ -76,6 +69,7 @@ A few ESLint plugins are supported as well: Add extra exclusions for the plugins you use like so: + ```json { "extends": [ @@ -92,10 +86,9 @@ Add extra exclusions for the plugins you use like so: } ``` -If you extend a config which uses a plugin, it is recommended to add -`"prettier/that-plugin"` (if available). For example, [eslint-config-airbnb] -enables [eslint-plugin-react] rules, so `"prettier/react"` is needed: +If you extend a config which uses a plugin, it is recommended to add `"prettier/that-plugin"` (if available). For example, [eslint-config-airbnb] enables [eslint-plugin-react] rules, so `"prettier/react"` is needed: + ```json { "extends": [ @@ -106,16 +99,11 @@ enables [eslint-plugin-react] rules, so `"prettier/react"` is needed: } ``` -If you’re unsure which plugins are used, you can usually find them in your -`package.json`. +If you’re unsure which plugins are used, you can usually find them in your `package.json`. ### Excluding deprecated rules -Some of the rules that eslint-config-prettier turns off may be deprecated. -**This is perfectly fine,** but if you really need to omit the -deprecated rules, you can do so by setting the -`ESLINT_CONFIG_PRETTIER_NO_DEPRECATED` environment variable to a non-empty -value. For example: +Some of the rules that eslint-config-prettier turns off may be deprecated. **This is perfectly fine,** but if you really need to omit the deprecated rules, you can do so by setting the `ESLINT_CONFIG_PRETTIER_NO_DEPRECATED` environment variable to a non-empty value. For example: ``` env ESLINT_CONFIG_PRETTIER_NO_DEPRECATED=true npx eslint-find-rules --deprecated index.js @@ -123,36 +111,22 @@ env ESLINT_CONFIG_PRETTIER_NO_DEPRECATED=true npx eslint-find-rules --deprecated ## CLI helper tool -eslint-config-prettier also ships with a little CLI tool to help you check if -your configuration contains any rules that are unnecessary or conflict with -Prettier. +eslint-config-prettier also ships with a little CLI tool to help you check if your configuration contains any rules that are unnecessary or conflict with Prettier. -First, add a script for it to package.json: - -```json -{ - "scripts": { - "eslint-check": "eslint --print-config path/to/main.js | eslint-config-prettier-check" - } -} -``` - -Then run `npm run eslint-check`. (Change `path/to/main.js` to a file that -exists in your project.) - -In theory you need to run `eslint --print-config file.js | -eslint-config-prettier-check` for every single file in your project to be -100% sure that there are no conflicting rules, because ESLint supports having -different rules for different files. But usually you’ll have about the same -rules for all files, so it is enough to run the command on one file (pick one -that you won’t be moving). If you use [multiple configuration files] or -[overrides], you can (but you probably don’t need to!) run the above script -several times with different `--print-config` arguments, such as: +You can run it using `npx`: ``` -eslint --print-config index.js | eslint-config-prettier-check -eslint --print-config test/index.js | eslint-config-prettier-check -eslint --print-config legacy/main.js | eslint-config-prettier-check +npx eslint --print-config path/to/main.js | npx eslint-config-prettier-check +``` + +(Change `path/to/main.js` to a file that exists in your project.) + +In theory you need to run `npx eslint --print-config file.js | npx eslint-config-prettier-check` for every single file in your project to be 100% sure that there are no conflicting rules, because ESLint supports having different rules for different files. But usually you’ll have about the same rules for all files, so it is enough to run the command on one file (pick one that you won’t be moving). If you use [multiple configuration files] or [overrides], you can (but you probably don’t need to!) run the above script several times with different `--print-config` arguments, such as: + +``` +npx eslint --print-config index.js | npx eslint-config-prettier-check +npx eslint --print-config test/index.js | npx eslint-config-prettier-check +npx eslint --print-config legacy/main.js | npx eslint-config-prettier-check ``` Exit codes: @@ -163,6 +137,7 @@ Exit codes: ## Example configuration + ```json { "extends": [ @@ -185,7 +160,6 @@ Exit codes: "@typescript-eslint", "babel", "flowtype", - "prettier", "react", "standard", "unicorn", @@ -200,50 +174,34 @@ Exit codes: "env": { "es6": true, "node": true - }, - "rules": { - "prettier/prettier": "error" } } ``` ## Special rules -There a few rules that eslint-config-prettier disables that actually can be -enabled in some cases. +There a few rules that eslint-config-prettier disables that actually can be enabled in some cases. - Some require certain options. The CLI helper tool validates this. -- Some require special attention when writing code. The CLI helper tool warns - you if any of those rules are enabled, but can’t tell if anything is - problematic. +- Some require special attention when writing code. The CLI helper tool warns you if any of those rules are enabled, but can’t tell if anything is problematic. - Some can cause problems if using [eslint-plugin-prettier] and `--fix`. -For maximum ease of use, the special rules are disabled by default. If you want -them, you need to explicitly specify them in your ESLint config. +For maximum ease of use, the special rules are disabled by default. If you want them, you need to explicitly specify them in your ESLint config. ### [arrow-body-style] and [prefer-arrow-callback] **These rules might cause problems if using [eslint-plugin-prettier] and `--fix`.** -If you use any of these rules together with the `prettier/prettier` rule from -[eslint-plugin-prettier], you can in some cases end up with invalid code due to -a bug in ESLint’s autofix. +If you use any of these rules together with the `prettier/prettier` rule from [eslint-plugin-prettier], you can in some cases end up with invalid code due to a bug in ESLint’s autofix. These rules are safe to use if: -- You don’t use [eslint-plugin-prettier]. In other words, you run `eslint --fix` - and `prettier --write` as separate steps. -- You _do_ use [eslint-plugin-prettier], but don’t use `--fix`. (But then, - what’s the point?) +- You don’t use [eslint-plugin-prettier]. In other words, you run `eslint --fix` and `prettier --write` as separate steps. +- You _do_ use [eslint-plugin-prettier], but don’t use `--fix`. (But then, what’s the point?) -You _can_ still use these rules together with [eslint-plugin-prettier] if you -want, because the bug does not occur _all the time._ But if you do, you need to -keep in mind that you might end up with invalid code, where you manually have to -insert a missing closing parenthesis to get going again. +You _can_ still use these rules together with [eslint-plugin-prettier] if you want, because the bug does not occur _all the time._ But if you do, you need to keep in mind that you might end up with invalid code, where you manually have to insert a missing closing parenthesis to get going again. -If you’re fixing large of amounts of previously unformatted code, consider -temporarily disabling the `prettier/prettier` rule and running `eslint --fix` -and `prettier --write` separately. +If you’re fixing large of amounts of previously unformatted code, consider temporarily disabling the `prettier/prettier` rule and running `eslint --fix` and `prettier --write` separately. See these issues for more information: @@ -251,39 +209,36 @@ See these issues for more information: - [eslint-config-prettier#71] - [eslint-plugin-prettier#65] -When the autofix bug in ESLint has been fixed, the special case for these rules -can be removed. +When the autofix bug in ESLint has been fixed, the special case for these rules can be removed. ### [curly] **This rule requires certain options.** -If a block (for example after `if`, `else`, `for` or `while`) contains only one -statement, JavaScript allows omitting the curly braces around that statement. -This rule enforces if or when those optional curly braces should be omitted. +If a block (for example after `if`, `else`, `for` or `while`) contains only one statement, JavaScript allows omitting the curly braces around that statement. This rule enforces if or when those optional curly braces should be omitted. -If you use the `"multi-line"` or `"multi-or-nest"` option, the rule can conflict -with Prettier. +If you use the `"multi-line"` or `"multi-or-nest"` option, the rule can conflict with Prettier. For example, the `"multi-line"` option allows this line: + ```js if (cart.items && cart.items[0] && cart.items[0].quantity === 0) updateCart(cart); ``` -However, Prettier might consider the line too long and turn it into the -following, which the `"multi-line"` option does _not_ allow: +However, Prettier might consider the line too long and turn it into the following, which the `"multi-line"` option does _not_ allow: + ```js if (cart.items && cart.items[0] && cart.items[0].quantity === 0) updateCart(cart); ``` -If you like this rule, it can be used just fine with Prettier as long as you -don’t use the `"multi-line"` or `"multi-or-nest"` option. +If you like this rule, it can be used just fine with Prettier as long as you don’t use the `"multi-line"` or `"multi-or-nest"` option. Example ESLint configuration: + ```json { "rules": { @@ -296,16 +251,14 @@ Example ESLint configuration: **This rule can be used with certain options.** -This rule requires empty lines before and/or after comments. Prettier preserves -blank lines, with two exceptions: +This rule requires empty lines before and/or after comments. Prettier preserves blank lines, with two exceptions: -- Several blank lines in a row are collapsed into a single blank line. This is - fine. -- Blank lines at the beginning and end of blocks, objects and arrays are always - removed. This may lead to conflicts. +- Several blank lines in a row are collapsed into a single blank line. This is fine. +- Blank lines at the beginning and end of blocks, objects and arrays are always removed. This may lead to conflicts. By default, ESLint requires a blank line above the comment is this case: + ```js if (result) { @@ -316,6 +269,7 @@ if (result) { However, Prettier removes the blank line: + ```js if (result) { /* comment */ @@ -323,12 +277,11 @@ if (result) { } ``` -If you like this rule, it can be used just fine with Prettier as long as you add -some extra configuration to allow comments at the start and end of blocks, -objects and arrays. +If you like this rule, it can be used just fine with Prettier as long as you add some extra configuration to allow comments at the start and end of blocks, objects and arrays. Example ESLint configuration: + ```json { "rules": { @@ -357,19 +310,15 @@ Example ESLint configuration: **This rule requires special attention when writing code.** -Usually, Prettier takes care of following a maximum line length automatically. -However, there are cases where Prettier can’t do anything, such as for long -strings, regular expressions and comments. Those need to be split up by a human. +Usually, Prettier takes care of following a maximum line length automatically. However, there are cases where Prettier can’t do anything, such as for long strings, regular expressions and comments. Those need to be split up by a human. -If you’d like to enforce an even stricter maximum line length policy than -Prettier can provide automatically, you can enable this rule. Just remember to -keep `max-len`’s options and Prettier’s `printWidth` option in sync. +If you’d like to enforce an even stricter maximum line length policy than Prettier can provide automatically, you can enable this rule. Just remember to keep `max-len`’s options and Prettier’s `printWidth` option in sync. -Keep in mind that you might have to refactor code slightly if Prettier formats -lines in a way that the `max-len` rule does not approve of. +Keep in mind that you might have to refactor code slightly if Prettier formats lines in a way that the `max-len` rule does not approve of. Example ESLint configuration: + ```json { "rules": { @@ -384,39 +333,40 @@ Example ESLint configuration: For example, the rule could warn about this line: + ```js var x = a => 1 ? 2 : 3; ``` -With `{allowParens: true}` (the default since ESLint 6.0.0), adding -parentheses is considered a valid way to avoid the arrow confusion: +With `{allowParens: true}` (the default since ESLint 6.0.0), adding parentheses is considered a valid way to avoid the arrow confusion: + ```js var x = a => (1 ? 2 : 3); ``` -While Prettier keeps those parentheses, it removes them if the line is long -enough to introduce a line break: +While Prettier keeps those parentheses, it removes them if the line is long enough to introduce a line break: + ```js EnterpriseCalculator.prototype.calculateImportantNumbers = inputNumber => 1 ? 2 : 3; ``` -With `{allowParens: false}`, ESLint instead suggests switching to an explicit -return: +With `{allowParens: false}`, ESLint instead suggests switching to an explicit return: + ```js var x = a => { return 1 ? 2 : 3; }; ``` That causes no problems with Prettier. -If you like this rule, it can be used just fine with Prettier as long as the -`allowParens` option is off. +If you like this rule, it can be used just fine with Prettier as long as the `allowParens` option is off. Example ESLint configuration: + ```json { "rules": { @@ -425,12 +375,7 @@ Example ESLint configuration: } ``` -(Note: The CLI helper tool considers `{allowParens: true}` to be the default, -which is the case since ESLint 6.0.0. The tool will produce a warning if you -use the default even if you use an older version of ESLint. It doesn’t hurt -to explicitly set `{allowParens: false}` even though it is technically -redundant. This way you are prepared for a future ESLint upgrade and the CLI -tool can be kept simple.) +(Note: The CLI helper tool considers `{allowParens: true}` to be the default, which is the case since ESLint 6.0.0. The tool will produce a warning if you use the default even if you use an older version of ESLint. It doesn’t hurt to explicitly set `{allowParens: false}` even though it is technically redundant. This way you are prepared for a future ESLint upgrade and the CLI tool can be kept simple.) ### [no-mixed-operators] @@ -440,25 +385,28 @@ This rule forbids mixing certain operators, such as `&&` and `||`. For example, the rule could warn about this line: + ```js var foo = a + b * c; ``` The rule suggests adding parentheses, like this: + ```js var foo = a + (b * c); ``` However, Prettier removes many “unnecessary” parentheses, turning it back to: + ```js var foo = a + b * c; ``` -If you want to use this rule with Prettier, you need to split the expression -into another variable: +If you want to use this rule with Prettier, you need to split the expression into another variable: + ```js var bar = b * c; var foo = a + bar; @@ -466,12 +414,14 @@ var foo = a + bar; Keep in mind that Prettier prints _some_ “unnecessary” parentheses, though: + ```js var foo = (a && b) || c; ``` Example ESLint configuration: + ```json { "rules": { @@ -484,11 +434,11 @@ Example ESLint configuration: **This rule requires certain Prettier options.** -This rule disallows the use of tab characters at all. It can be used just fine -with Prettier as long as you don’t configure Prettier to indent using tabs. +This rule disallows the use of tab characters at all. It can be used just fine with Prettier as long as you don’t configure Prettier to indent using tabs. Example ESLint configuration: + ```json { "rules": { @@ -497,18 +447,18 @@ Example ESLint configuration: } ``` -Example Prettier configuration (this is the default, so adding this is not -required): +Example Prettier configuration (this is the default, so adding this is not required): + ```json { "useTabs": false } ``` -**Note:** Since [ESlint 5.7.0] this rule can be configured to work regardless of -your Prettier configuration: +**Note:** Since [ESlint 5.7.0] this rule can be configured to work regardless of your Prettier configuration: + ```json { "rules": { @@ -523,32 +473,33 @@ A future version of eslint-config-prettier might check for that automatically. **This rule requires special attention when writing code.** -This rule disallows confusing multiline expressions where a newline looks like -it is ending a statement, but is not. +This rule disallows confusing multiline expressions where a newline looks like it is ending a statement, but is not. For example, the rule could warn about this: + ```js var hello = "world" [1, 2, 3].forEach(addNumber) ``` -Prettier usually formats this in a way that makes it obvious that a semicolon -was missing: +Prettier usually formats this in a way that makes it obvious that a semicolon was missing: + ```js var hello = "world"[(1, 2, 3)].forEach(addNumber); ``` -However, there are cases where Prettier breaks things into several lines such -that the `no-unexpected-multiline` conflicts. +However, there are cases where Prettier breaks things into several lines such that the `no-unexpected-multiline` conflicts. + ```js const value = text.trim().split("\n")[position].toLowerCase(); ``` Prettier breaks it up into several lines, though, causing a conflict: + ```js const value = text .trim() @@ -556,10 +507,9 @@ const value = text [position].toLowerCase(); ``` -If you like this rule, it can usually be used with Prettier without problems, -but occasionally you might need to either temporarily disable the rule or -refactor your code. +If you like this rule, it can usually be used with Prettier without problems, but occasionally you might need to either temporarily disable the rule or refactor your code. + ```js const value = text .trim() @@ -573,13 +523,11 @@ const lines = text.trim().split("\n"); const value = lines[position].toLowerCase(); ``` -**Note:** If you _do_ enable this rule, you have to run ESLint and Prettier as -two separate steps (and ESLint first) in order to get any value out of it. -Otherwise Prettier might reformat your code in such a way that ESLint never gets -a chance to report anything (as seen in the first example). +**Note:** If you _do_ enable this rule, you have to run ESLint and Prettier as two separate steps (and ESLint first) in order to get any value out of it. Otherwise Prettier might reformat your code in such a way that ESLint never gets a chance to report anything (as seen in the first example). Example configuration: + ```json { "rules": { @@ -594,20 +542,18 @@ Example configuration: **This rule requires certain options and certain Prettier options.** -Usually, you don’t need this rule at all. But there are two cases where it could -be useful: +Usually, you don’t need this rule at all. But there are two cases where it could be useful: -- To enforce the use of backticks rather than single or double quotes for - strings. +- To enforce the use of backticks rather than single or double quotes for strings. - To forbid backticks where regular strings could have been used. #### Enforce backticks -If you’d like all strings to use backticks (never quotes), enable the -`"backtick"` option. +If you’d like all strings to use backticks (never quotes), enable the `"backtick"` option. Example ESLint configuration: + ```json { "rules": { @@ -618,9 +564,9 @@ Example ESLint configuration: #### Forbid unnecessary backticks -In the following example, the first array item could have been written with -quotes instead of backticks. +In the following example, the first array item could have been written with quotes instead of backticks. + ```js const strings = [ `could have been a regular string`, @@ -633,12 +579,9 @@ const strings = [ ]; ``` -If you’d like ESLint to enforce `` `could have been a regular string` `` being -written as either `"could have been a regular string"` or `'could have been a -regular string'`, you need to use some specific configuration. The `quotes` rule has two options, a string option and an object option. +If you’d like ESLint to enforce `` `could have been a regular string` `` being written as either `"could have been a regular string"` or `'could have been a regular string'`, you need to use some specific configuration. The `quotes` rule has two options, a string option and an object option. -- The first (string) option needs to be set to `"single"` or `"double"` and be - kept in sync with Prettier’s [singleQuote] option. +- The first (string) option needs to be set to `"single"` or `"double"` and be kept in sync with Prettier’s [singleQuote] option. - The second (object) option needs the following properties: - `"avoidEscape": true` to follow Prettier’s [string formatting rules]. - `"allowTemplateLiterals": false` to disallow unnecessary backticks. @@ -647,6 +590,7 @@ regular string'`, you need to use some specific configuration. The `quotes` rule ESLint: + ```json { "rules": { @@ -661,6 +605,7 @@ ESLint: Prettier (this is the default, so adding this is not required): + ```json { "singleQuote": false @@ -671,6 +616,7 @@ Prettier (this is the default, so adding this is not required): ESLint: + ```json { "rules": { @@ -685,6 +631,7 @@ ESLint: Prettier: + ```json { "singleQuote": true @@ -699,6 +646,7 @@ This rule enforces whether elements should be self-closing or not. Prettier generally preserves the way you wrote your elements: + ```vue
@@ -708,14 +656,13 @@ Prettier generally preserves the way you wrote your elements: ``` -But for known _void_ HTML elements, Prettier always uses the self-closing style. -For example, `` is turned into ``. +But for known _void_ HTML elements, Prettier always uses the self-closing style. For example, `` is turned into ``. -If you like this rule, it can be used just fine with Prettier as long as you -set `html.void` to `"any"`. +If you like this rule, it can be used just fine with Prettier as long as you set `html.void` to `"any"`. Example ESLint configuration: + ```json { "rules": { @@ -733,35 +680,29 @@ Example ESLint configuration: ## Other rules worth mentioning -These rules don’t conflict with Prettier, but have some gotchas when used with -Prettier. +These rules don’t conflict with Prettier, but have some gotchas when used with Prettier. ### [no-sequences] -This rule forbids using JavaScript’s confusing comma operator (sequence -expressions). This piece of code is not doing what it looks like: +This rule forbids using JavaScript’s confusing comma operator (sequence expressions). This piece of code is not doing what it looks like: + ```js matrix[4, 7]; ``` -Prettier adds parentheses to the above to make it clear that a sequence -expression is used: +Prettier adds parentheses to the above to make it clear that a sequence expression is used: + ```js matrix[(4, 7)]; ``` -However, the `no-sequences` rule allows comma operators if the expression -sequence is explicitly wrapped in parentheses. Since Prettier automatically -wraps them in parentheses, you might never see any warnings from ESLint about -comma operators. +However, the `no-sequences` rule allows comma operators if the expression sequence is explicitly wrapped in parentheses. Since Prettier automatically wraps them in parentheses, you might never see any warnings from ESLint about comma operators. -Ending up with an accidental sequence expression can easily happen while -refactoring. If you want ESLint to catch such mistakes, it is recommended to -forbid sequence expressions entirely using [no-restricted-syntax] \([as -mentioned in the `no-sequences` documentation][no-sequences-full]): +Ending up with an accidental sequence expression can easily happen while refactoring. If you want ESLint to catch such mistakes, it is recommended to forbid sequence expressions entirely using [no-restricted-syntax] \([as mentioned in the `no-sequences` documentation][no-sequences-full]): + ```json { "rules": { @@ -770,13 +711,11 @@ mentioned in the `no-sequences` documentation][no-sequences-full]): } ``` -If you still need to use the comma operator for some edge case, you can place an -`// eslint-disable-next-line no-restricted-syntax` comment on the line above the -expression. `no-sequences` can safely be disabled if you use the -`no-restricted-syntax` approach. +If you still need to use the comma operator for some edge case, you can place an `// eslint-disable-next-line no-restricted-syntax` comment on the line above the expression. `no-sequences` can safely be disabled if you use the `no-restricted-syntax` approach. You can also supply a custom message if you want: + ```json { "rules": { @@ -795,28 +734,27 @@ You can also supply a custom message if you want: eslint-config-prettier has been tested with: -- ESLint 6.8.0 +- ESLint 7.9.0 + - eslint-config-prettier 6.11.0 and older were tested with ESLint 6.x - eslint-config-prettier 5.1.0 and older were tested with ESLint 5.x - eslint-config-prettier 2.10.0 and older were tested with ESLint 4.x - eslint-config-prettier 2.1.1 and older were tested with ESLint 3.x -- prettier 1.19.1 -- @typescript-eslint/eslint-plugin 2.18.0 -- eslint-plugin-babel 5.3.0 -- eslint-plugin-flowtype 4.6.0 -- eslint-plugin-react 7.18.0 +- prettier 2.1.2 +- @typescript-eslint/eslint-plugin 4.2.0 +- eslint-plugin-babel 5.3.1 +- eslint-plugin-flowtype 5.2.0 +- eslint-plugin-react 7.21.2 - eslint-plugin-standard 4.0.1 -- eslint-plugin-unicorn 15.0.1 -- eslint-plugin-vue 6.1.2 +- eslint-plugin-unicorn 22.0.0 +- eslint-plugin-vue 6.2.2 -Have new rules been added since those versions? Have we missed any rules? Is -there a plugin you would like to see exclusions for? Open an issue or a pull -request! +Have new rules been added since those versions? Have we missed any rules? Is there a plugin you would like to see exclusions for? Open an issue or a pull request! -If you’d like to add support for eslint-plugin-foobar, this is how you’d go -about it: +If you’d like to add support for eslint-plugin-foobar, this is how you’d go about it: First, create `foobar.js`: + ```js "use strict"; @@ -829,6 +767,7 @@ module.exports = { Then, create `test-lint/foobar.js`: + ```js /* eslint-disable quotes */ "use strict"; @@ -838,35 +777,25 @@ Then, create `test-lint/foobar.js`: console.log(); ``` -`test-lint/foobar.js` must fail when used with eslint-plugin-foobar and -eslint-plugin-prettier at the same time – until `"prettier/foobar"` is added to -the "extends" property of an ESLint config. The file should be formatted -according to Prettier, and that formatting should disagree with the plugin. +`test-lint/foobar.js` must fail when used with eslint-plugin-foobar and eslint-plugin-prettier at the same time – until `"prettier/foobar"` is added to the "extends" property of an ESLint config. The file should be formatted according to Prettier, and that formatting should disagree with the plugin. Finally, you need to mention the plugin in several places: - Add `"foobar.js"` to the "files" field in `package.json`. - Add eslint-plugin-foobar to the "devDependencies" field in `package.json`. -- Make sure that at least one rule from eslint-plugin-foobar gets used in - `.eslintrc.base.js`. -- Add it to the list of supported plugins, to the example config and to - Contributing section in `README.md`. +- Make sure that at least one rule from eslint-plugin-foobar gets used in `.eslintrc.base.js`. +- Add it to the list of supported plugins, to the example config and to Contributing section in `README.md`. -When you’re done, run `npm test` to verify that you got it all right. It runs -several other npm scripts: +When you’re done, run `npm test` to verify that you got it all right. It runs several other npm scripts: -- `"test:lint"` makes sure that the files in `test-lint/` pass ESLint when - the exclusions from eslint-config-prettier are used. It also lints the code of - eslint-config-prettier itself. +- `"test:lint"` makes sure that the files in `test-lint/` pass ESLint when the exclusions from eslint-config-prettier are used. It also lints the code of eslint-config-prettier itself, and checks that Prettier has been run on all files. - `"test:lint-verify-fail"` is run by a test in `test/lint-verify-fail.test.js`. - `"test:lint-rules"` is run by a test in `test/rules.test.js`. - `"test:jest"` runs unit tests that check a number of things: - That eslint-plugin-foobar is mentioned in all the places shown above. - - That no unknown rules are turned off. This helps catching typos, for - example. + - That no unknown rules are turned off. This helps catching typos, for example. - That the CLI works. -- `"test:cli-sanity"` and `"test:cli-sanity-warning"` are sanity checks for the - CLI. +- `"test:cli-sanity"` and `"test:cli-sanity-warning"` are sanity checks for the CLI. ## License @@ -874,8 +803,8 @@ several other npm scripts: [@typescript-eslint/eslint-plugin]: https://github.com/typescript-eslint/typescript-eslint [@typescript-eslint/quotes]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/quotes.md -[ESlint 5.7.0]: https://eslint.org/blog/2018/10/eslint-v5.7.0-released -[Prettier]: https://github.com/prettier/prettier +[eslint 5.7.0]: https://eslint.org/blog/2018/10/eslint-v5.7.0-released +[prettier]: https://github.com/prettier/prettier [arrow-body-style]: https://eslint.org/docs/rules/arrow-body-style [babel/quotes]: https://github.com/babel/eslint-plugin-babel#rules [curly]: https://eslint.org/docs/rules/curly @@ -903,9 +832,7 @@ several other npm scripts: [overrides]: https://eslint.org/docs/user-guide/configuring#configuration-based-on-glob-patterns [prefer-arrow-callback]: https://eslint.org/docs/rules/prefer-arrow-callback [quotes]: https://eslint.org/docs/rules/quotes -[singleQuote]: https://prettier.io/docs/en/options.html#quotes +[singlequote]: https://prettier.io/docs/en/options.html#quotes [string formatting rules]: https://prettier.io/docs/en/rationale.html#strings -[travis-badge]: https://travis-ci.org/prettier/eslint-config-prettier.svg?branch=master -[travis]: https://travis-ci.org/prettier/eslint-config-prettier [vue/html-self-closing]: https://github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/html-self-closing.md [vue/max-len]: https://github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/max-len.md diff --git a/node_modules/eslint-config-prettier/babel.js b/node_modules/eslint-config-prettier/babel.js index a93d5a4c..47d03650 100644 --- a/node_modules/eslint-config-prettier/babel.js +++ b/node_modules/eslint-config-prettier/babel.js @@ -5,6 +5,6 @@ module.exports = { "babel/quotes": 0, "babel/object-curly-spacing": "off", - "babel/semi": "off" - } + "babel/semi": "off", + }, }; diff --git a/node_modules/eslint-config-prettier/bin/cli.js b/node_modules/eslint-config-prettier/bin/cli.js index 47311c3c..208b1436 100755 --- a/node_modules/eslint-config-prettier/bin/cli.js +++ b/node_modules/eslint-config-prettier/bin/cli.js @@ -17,8 +17,8 @@ if (module === require.main) { "This tool checks whether an ESLint configuration contains rules that are", "unnecessary or conflict with Prettier. It’s supposed to be run like this:", "", - " eslint --print-config path/to/main.js | eslint-config-prettier-check", - " eslint --print-config test/index.js | eslint-config-prettier-check", + " npx eslint --print-config path/to/main.js | npx eslint-config-prettier-check", + " npx eslint --print-config test/index.js | npx eslint-config-prettier-check", "", "Exit codes:", "", @@ -27,14 +27,14 @@ if (module === require.main) { "2: Conflicting rules found.", "", "For more information, see:", - "https://github.com/prettier/eslint-config-prettier#cli-helper-tool" + "https://github.com/prettier/eslint-config-prettier#cli-helper-tool", ].join("\n") ); process.exit(1); } getStdin() - .then(string => { + .then((string) => { const result = processString(string); if (result.stderr) { console.error(result.stderr); @@ -44,7 +44,7 @@ if (module === require.main) { } process.exit(result.code); }) - .catch(error => { + .catch((error) => { console.error("Unexpected error", error); process.exit(1); }); @@ -57,7 +57,7 @@ function processString(string) { } catch (error) { return { stderr: `Failed to parse JSON:\n${error.message}`, - code: 1 + code: 1, }; } @@ -69,7 +69,7 @@ function processString(string) { ) { return { stderr: `Expected a \`{"rules: {...}"}\` JSON object, but got:\n${string}`, - code: 1 + code: 1, }; } @@ -80,8 +80,8 @@ function processString(string) { Object.create(null), ...fs .readdirSync(path.join(__dirname, "..")) - .filter(name => !name.startsWith(".") && name.endsWith(".js")) - .map(ruleFileName => require(`../${ruleFileName}`).rules) + .filter((name) => !name.startsWith(".") && name.endsWith(".js")) + .map((ruleFileName) => require(`../${ruleFileName}`).rules) ); const regularRules = filterRules( @@ -98,7 +98,7 @@ function processString(string) { ); const flaggedRules = Object.keys(config.rules) - .map(ruleName => { + .map((ruleName) => { const value = config.rules[ruleName]; const arrayValue = Array.isArray(value) ? value : [value]; const level = arrayValue[0]; @@ -110,7 +110,7 @@ function processString(string) { const regularFlaggedRuleNames = filterRuleNames( flaggedRules, - ruleName => ruleName in regularRules + (ruleName) => ruleName in regularRules ); const optionsFlaggedRuleNames = filterRuleNames( flaggedRules, @@ -119,7 +119,7 @@ function processString(string) { ); const specialFlaggedRuleNames = filterRuleNames( flaggedRules, - ruleName => ruleName in specialRules + (ruleName) => ruleName in specialRules ); if ( @@ -138,52 +138,52 @@ function processString(string) { "However, the following rules are enabled but cannot be automatically checked. See:", SPECIAL_RULES_URL, "", - printRuleNames(specialFlaggedRuleNames) + printRuleNames(specialFlaggedRuleNames), ].join("\n"); return { stdout: message, - code: 0 + code: 0, }; } const regularMessage = [ "The following rules are unnecessary or might conflict with Prettier:", "", - printRuleNames(regularFlaggedRuleNames) + printRuleNames(regularFlaggedRuleNames), ].join("\n"); const optionsMessage = [ "The following rules are enabled with options that might conflict with Prettier. See:", SPECIAL_RULES_URL, "", - printRuleNames(optionsFlaggedRuleNames) + printRuleNames(optionsFlaggedRuleNames), ].join("\n"); const specialMessage = [ "The following rules are enabled but cannot be automatically checked. See:", SPECIAL_RULES_URL, "", - printRuleNames(specialFlaggedRuleNames) + printRuleNames(specialFlaggedRuleNames), ].join("\n"); const message = [ regularFlaggedRuleNames.length === 0 ? null : regularMessage, optionsFlaggedRuleNames.length === 0 ? null : optionsMessage, - specialFlaggedRuleNames.length === 0 ? null : specialMessage + specialFlaggedRuleNames.length === 0 ? null : specialMessage, ] .filter(Boolean) .join("\n\n"); return { stdout: message, - code: 2 + code: 2, }; } function filterRules(rules, fn) { return Object.keys(rules) - .filter(ruleName => fn(ruleName, rules[ruleName])) + .filter((ruleName) => fn(ruleName, rules[ruleName])) .reduce((obj, ruleName) => { obj[ruleName] = true; return obj; @@ -192,15 +192,15 @@ function filterRules(rules, fn) { function filterRuleNames(rules, fn) { return rules - .filter(rule => fn(rule.ruleName, rule.options)) - .map(rule => rule.ruleName); + .filter((rule) => fn(rule.ruleName, rule.options)) + .map((rule) => rule.ruleName); } function printRuleNames(ruleNames) { return ruleNames .slice() .sort() - .map(ruleName => `- ${ruleName}`) + .map((ruleName) => `- ${ruleName}`) .join("\n"); } diff --git a/node_modules/eslint-config-prettier/bin/validators.js b/node_modules/eslint-config-prettier/bin/validators.js index c8c4ae9a..a6a9b8ae 100644 --- a/node_modules/eslint-config-prettier/bin/validators.js +++ b/node_modules/eslint-config-prettier/bin/validators.js @@ -50,5 +50,5 @@ module.exports = { // Enable when Prettier supports SVG: https://github.com/prettier/prettier/issues/5322 // && firstOption.svg === "any" ); - } + }, }; diff --git a/node_modules/eslint-config-prettier/flowtype.js b/node_modules/eslint-config-prettier/flowtype.js index 09529ae7..34b8943c 100644 --- a/node_modules/eslint-config-prettier/flowtype.js +++ b/node_modules/eslint-config-prettier/flowtype.js @@ -10,6 +10,6 @@ module.exports = { "flowtype/space-after-type-colon": "off", "flowtype/space-before-generic-bracket": "off", "flowtype/space-before-type-colon": "off", - "flowtype/union-intersection-spacing": "off" - } + "flowtype/union-intersection-spacing": "off", + }, }; diff --git a/node_modules/eslint-config-prettier/index.js b/node_modules/eslint-config-prettier/index.js index fa29d3f6..1cbfd47a 100644 --- a/node_modules/eslint-config-prettier/index.js +++ b/node_modules/eslint-config-prettier/index.js @@ -89,7 +89,7 @@ module.exports = { "unicode-bom": "off", "wrap-iife": "off", "wrap-regex": "off", - "yield-star-spacing": "off" + "yield-star-spacing": "off", }, includeDeprecated && { // Deprecated since version 4.0.0. @@ -97,7 +97,7 @@ module.exports = { "indent-legacy": "off", // Deprecated since version 3.3.0. // https://eslint.org/docs/rules/no-spaced-func - "no-spaced-func": "off" + "no-spaced-func": "off", } - ) + ), }; diff --git a/node_modules/eslint-config-prettier/package.json b/node_modules/eslint-config-prettier/package.json index 515ca8e6..616625f7 100644 --- a/node_modules/eslint-config-prettier/package.json +++ b/node_modules/eslint-config-prettier/package.json @@ -1,6 +1,6 @@ { "name": "eslint-config-prettier", - "version": "6.10.0", + "version": "6.12.0", "license": "MIT", "author": "Simon Lydell", "description": "Turns off all rules that are unnecessary or might conflict with Prettier.", @@ -26,7 +26,8 @@ ], "scripts": { "doctoc": "doctoc README.md && replace \"\\[\\[([\\w/-]+)\\](?:([^\\[\\]]+)\\[([\\w/-]+)\\])?\\]\" \"[\\$1\\$2\\$3]\" README.md", - "test:lint": "eslint .", + "prettier": "prettier --write .", + "test:lint": "eslint . && prettier --check .", "test:lint-verify-fail": "eslint \"test-lint/*.{js,ts,vue}\" --config .eslintrc.base.js --format json", "test:lint-rules": "eslint index.js --config test-config/.eslintrc.js --format json", "test:deprecated": "eslint-find-rules --deprecated index.js", @@ -39,26 +40,26 @@ "get-stdin": "^6.0.0" }, "devDependencies": { - "@typescript-eslint/eslint-plugin": "2.18.0", - "@typescript-eslint/parser": "2.18.0", - "babel-eslint": "10.0.3", - "cross-spawn": "6.0.5", + "@typescript-eslint/eslint-plugin": "4.2.0", + "@typescript-eslint/parser": "4.2.0", + "babel-eslint": "10.1.0", + "cross-spawn": "7.0.3", "doctoc": "1.4.0", - "eslint": "6.8.0", + "eslint": "7.9.0", "eslint-config-google": "0.14.0", - "eslint-find-rules": "3.4.0", - "eslint-plugin-babel": "5.3.0", - "eslint-plugin-flowtype": "4.6.0", - "eslint-plugin-prettier": "3.1.2", - "eslint-plugin-react": "7.18.0", + "eslint-find-rules": "3.6.1", + "eslint-plugin-babel": "5.3.1", + "eslint-plugin-flowtype": "5.2.0", + "eslint-plugin-prettier": "3.1.4", + "eslint-plugin-react": "7.21.2", "eslint-plugin-standard": "4.0.1", - "eslint-plugin-unicorn": "15.0.1", - "eslint-plugin-vue": "6.1.2", - "jest": "25.1.0", - "prettier": "1.19.1", - "replace": "1.1.5", - "rimraf": "3.0.1", - "typescript": "3.7.5" + "eslint-plugin-unicorn": "22.0.0", + "eslint-plugin-vue": "6.2.2", + "jest": "26.4.2", + "prettier": "2.1.2", + "replace": "1.2.0", + "rimraf": "3.0.2", + "typescript": "4.0.3" }, "peerDependencies": { "eslint": ">=3.14.1" diff --git a/node_modules/eslint-config-prettier/react.js b/node_modules/eslint-config-prettier/react.js index 264737fa..3f485532 100644 --- a/node_modules/eslint-config-prettier/react.js +++ b/node_modules/eslint-config-prettier/react.js @@ -18,12 +18,12 @@ module.exports = { "react/jsx-one-expression-per-line": "off", "react/jsx-props-no-multi-spaces": "off", "react/jsx-tag-spacing": "off", - "react/jsx-wrap-multilines": "off" + "react/jsx-wrap-multilines": "off", }, includeDeprecated && { // Deprecated since version 7.0.0. // https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md#700---2017-05-06 - "react/jsx-space-before-closing": "off" + "react/jsx-space-before-closing": "off", } - ) + ), }; diff --git a/node_modules/eslint-config-prettier/standard.js b/node_modules/eslint-config-prettier/standard.js index 036ecd4e..faacadd0 100644 --- a/node_modules/eslint-config-prettier/standard.js +++ b/node_modules/eslint-config-prettier/standard.js @@ -4,6 +4,6 @@ module.exports = { rules: { "standard/array-bracket-even-spacing": "off", "standard/computed-property-even-spacing": "off", - "standard/object-curly-even-spacing": "off" - } + "standard/object-curly-even-spacing": "off", + }, }; diff --git a/node_modules/eslint-config-prettier/unicorn.js b/node_modules/eslint-config-prettier/unicorn.js index 34e5187e..eb7103ed 100644 --- a/node_modules/eslint-config-prettier/unicorn.js +++ b/node_modules/eslint-config-prettier/unicorn.js @@ -3,6 +3,6 @@ module.exports = { rules: { "unicorn/no-nested-ternary": "off", - "unicorn/number-literal-case": "off" - } + "unicorn/number-literal-case": "off", + }, }; diff --git a/node_modules/eslint-config-prettier/vue.js b/node_modules/eslint-config-prettier/vue.js index 2c7c6c69..d60c2dea 100644 --- a/node_modules/eslint-config-prettier/vue.js +++ b/node_modules/eslint-config-prettier/vue.js @@ -27,6 +27,6 @@ module.exports = { "vue/script-indent": "off", "vue/singleline-html-element-content-newline": "off", "vue/space-infix-ops": "off", - "vue/space-unary-ops": "off" - } + "vue/space-unary-ops": "off", + }, }; diff --git a/node_modules/eslint-import-resolver-node/CHANGELOG.md b/node_modules/eslint-import-resolver-node/CHANGELOG.md index f0d2358b..8fa31bed 100644 --- a/node_modules/eslint-import-resolver-node/CHANGELOG.md +++ b/node_modules/eslint-import-resolver-node/CHANGELOG.md @@ -5,9 +5,17 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel ## Unreleased +## v0.3.4 - 2020-06-16 +### Added +- add `.node` extension ([#1663]) + +## v0.3.3 - 2020-01-10 +### Changed +- [meta] copy LICENSE file to all npm packages on prepublish ([#1595], thanks [@opichals]) + ## v0.3.2 - 2018-01-05 ### Added -- `.mjs` extension detected by default to support `experimental-modules` (#939) +- `.mjs` extension detected by default to support `experimental-modules` ([#939]) ### Deps - update `debug`, `resolve` @@ -42,6 +50,8 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel [#438]: https://github.com/benmosher/eslint-plugin-import/pull/438 +[#1663]: https://github.com/benmosher/eslint-plugin-import/issues/1663 +[#1595]: https://github.com/benmosher/eslint-plugin-import/pull/1595 [#939]: https://github.com/benmosher/eslint-plugin-import/issues/939 [#531]: https://github.com/benmosher/eslint-plugin-import/issues/531 [#437]: https://github.com/benmosher/eslint-plugin-import/issues/437 @@ -50,3 +60,4 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel [@lukeapage]: https://github.com/lukeapage [@SkeLLLa]: https://github.com/SkeLLLa [@ljharb]: https://github.com/ljharb +[@opichals]: https://github.com/opichals diff --git a/node_modules/eslint-import-resolver-node/index.js b/node_modules/eslint-import-resolver-node/index.js index b5a1537b..bf2aab38 100644 --- a/node_modules/eslint-import-resolver-node/index.js +++ b/node_modules/eslint-import-resolver-node/index.js @@ -28,7 +28,7 @@ function opts(file, config) { return Object.assign({ // more closely matches Node (#333) // plus 'mjs' for native modules! (#939) - extensions: ['.mjs', '.js', '.json'], + extensions: ['.mjs', '.js', '.json', '.node'], }, config, { diff --git a/node_modules/eslint-import-resolver-node/package.json b/node_modules/eslint-import-resolver-node/package.json index f197babb..27daa907 100644 --- a/node_modules/eslint-import-resolver-node/package.json +++ b/node_modules/eslint-import-resolver-node/package.json @@ -1,6 +1,6 @@ { "name": "eslint-import-resolver-node", - "version": "0.3.3", + "version": "0.3.4", "description": "Node default behavior import resolution plugin for eslint-plugin-import.", "main": "index.js", "files": [ @@ -8,7 +8,8 @@ ], "scripts": { "prepublishOnly": "cp ../../{LICENSE,.npmrc} ./", - "test": "nyc mocha", + "tests-only": "nyc mocha", + "test": "npm run tests-only", "coveralls": "nyc report --reporter lcovonly && cd ../.. && coveralls < ./resolvers/node/coverage/lcov.info" }, "repository": { diff --git a/node_modules/eslint-module-utils/CHANGELOG.md b/node_modules/eslint-module-utils/CHANGELOG.md index 61671ba8..f337d385 100644 --- a/node_modules/eslint-module-utils/CHANGELOG.md +++ b/node_modules/eslint-module-utils/CHANGELOG.md @@ -5,6 +5,11 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel ## Unreleased +## v2.6.0 - 2020-03-28 + +### Added +[New] Print more helpful info if parsing fails ([#1671], thanks [@kaiyoma]) + ## v2.5.2 - 2020-01-12 ### Fixed @@ -70,6 +75,7 @@ Yanked due to critical issue with cache key resulting from #839. ### Fixed - `unambiguous.test()` regex is now properly in multiline mode +[#1671]: https://github.com/benmosher/eslint-plugin-import/pull/1671 [#1606]: https://github.com/benmosher/eslint-plugin-import/pull/1606 [#1602]: https://github.com/benmosher/eslint-plugin-import/pull/1602 [#1591]: https://github.com/benmosher/eslint-plugin-import/pull/1591 @@ -94,3 +100,4 @@ Yanked due to critical issue with cache key resulting from #839. [@arcanis]: https://github.com/arcanis [@sompylasar]: https://github.com/sompylasar [@iamnapo]: https://github.com/iamnapo +[@kaiyoma]: https://github.com/kaiyoma diff --git a/node_modules/eslint-module-utils/ModuleCache.js b/node_modules/eslint-module-utils/ModuleCache.js index ab0266fe..b910a581 100644 --- a/node_modules/eslint-module-utils/ModuleCache.js +++ b/node_modules/eslint-module-utils/ModuleCache.js @@ -22,7 +22,7 @@ class ModuleCache { get(cacheKey, settings) { if (this.map.has(cacheKey)) { const f = this.map.get(cacheKey) - // check fresness + // check freshness if (process.hrtime(f.lastSeen)[0] < settings.lifetime) return f.result } else log('cache miss for', cacheKey) // cache miss diff --git a/node_modules/eslint-module-utils/package.json b/node_modules/eslint-module-utils/package.json index b8d4033e..6e8ebddf 100644 --- a/node_modules/eslint-module-utils/package.json +++ b/node_modules/eslint-module-utils/package.json @@ -1,6 +1,6 @@ { "name": "eslint-module-utils", - "version": "2.5.2", + "version": "2.6.0", "description": "Core utilities to support eslint-plugin-import and other module-related plugins.", "engines": { "node": ">=4" diff --git a/node_modules/eslint-module-utils/parse.js b/node_modules/eslint-module-utils/parse.js index fa2ff142..b3a46922 100644 --- a/node_modules/eslint-module-utils/parse.js +++ b/node_modules/eslint-module-utils/parse.js @@ -47,7 +47,9 @@ exports.default = function parse(path, content, context) { try { ast = parser.parseForESLint(content, parserOptions).ast } catch (e) { - // + console.warn() + console.warn('Error while parsing ' + parserOptions.filePath) + console.warn('Line ' + e.lineNumber + ', column ' + e.column + ': ' + e.message) } if (!ast || typeof ast !== 'object') { console.warn( diff --git a/node_modules/eslint-plugin-flowtype/CONTRIBUTING.md b/node_modules/eslint-plugin-flowtype/CONTRIBUTING.md deleted file mode 100644 index 455849da..00000000 --- a/node_modules/eslint-plugin-flowtype/CONTRIBUTING.md +++ /dev/null @@ -1,57 +0,0 @@ -# Contributing - -**`README.md` is a generated file. Do not edit it directly.** Edit the files inside `.README` instead. - -## Pre-Commit Hook - -When making a commit, the following Pre-Commit hooks run: - -* test and documentation checks -* tests -* lint -* commit message validation (see "Commit Messages" below) - -## Commit Messages - -All commit messages must begin with one of the following prefixes: - -* `fix: ` -* `feat: ` -* `refactor: ` -* `docs: ` -* `chore: ` - -The prefix is used to bump the correct segment of the version number during the automatic release. - -## Tests - -Run them with `npm test`. - -## Lint - -Run with `npm run lint`. - -## Submitting a PR - -Just before submitting a PR, run `npm run create-readme` to generate the new README.md - -## Adding a Rule - -### Source & Tests - -1. Create a file in `tests/rules/assertions` named the `camelCase` version of your rule name with the following template: - * `export default { invalid: [], valid: [] }` -2. Add your test file to `tests/rules/index.js` -3. Create a file in `src/rules` named the `camelCase` version of your rule name -4. Add your rule file to `src/index.js` - -### Adding Documentation - -1. Create new file in `./.README/rules/[rule-name].md`. - * Use [./.README/rules/require-valid-file-annotation.md](./.README/rules/require-valid-file-annotation.md) as a template. - * Ensure that rule documentation document includes `` declaration. -1. Update [./.README/README.md](/.README/README.md) to include the new rule. - -A CI service will build and publish the new documentation. - -Note: Sections "The following patterns are considered problems:" and "The following patterns are not considered problems:" are **generated automatically** using the test cases. diff --git a/node_modules/eslint-plugin-flowtype/LICENSE b/node_modules/eslint-plugin-flowtype/LICENSE deleted file mode 100644 index 183e8d8a..00000000 --- a/node_modules/eslint-plugin-flowtype/LICENSE +++ /dev/null @@ -1,24 +0,0 @@ -Copyright (c) 2015, Gajus Kuizinas (http://gajus.com/) -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the Gajus Kuizinas (http://gajus.com/) nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL ANUARY BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/node_modules/eslint-plugin-flowtype/README.md b/node_modules/eslint-plugin-flowtype/README.md deleted file mode 100644 index 3ce86604..00000000 --- a/node_modules/eslint-plugin-flowtype/README.md +++ /dev/null @@ -1,5943 +0,0 @@ - -# eslint-plugin-flowtype - -[![GitSpo Mentions](https://gitspo.com/badges/mentions/gajus/eslint-plugin-flowtype?style=flat-square)](https://gitspo.com/mentions/gajus/eslint-plugin-flowtype) -[![NPM version](http://img.shields.io/npm/v/eslint-plugin-flowtype.svg?style=flat-square)](https://www.npmjs.org/package/eslint-plugin-flowtype) -[![Travis build status](http://img.shields.io/travis/gajus/eslint-plugin-flowtype/master.svg?style=flat-square)](https://travis-ci.org/gajus/eslint-plugin-flowtype) -[![js-canonical-style](https://img.shields.io/badge/code%20style-canonical-blue.svg?style=flat-square)](https://github.com/gajus/canonical) - -[Flow type](http://flowtype.org/) linting rules for ESLint. - -* [eslint-plugin-flowtype](#eslint-plugin-flowtype) - * [Installation](#eslint-plugin-flowtype-installation) - * [Configuration](#eslint-plugin-flowtype-configuration) - * [Shareable configurations](#eslint-plugin-flowtype-configuration-shareable-configurations) - * [Community maintained configurations](#eslint-plugin-flowtype-configuration-community-maintained-configurations) - * [Settings](#eslint-plugin-flowtype-settings) - * [`onlyFilesWithFlowAnnotation`](#eslint-plugin-flowtype-settings-onlyfileswithflowannotation) - * [Rules](#eslint-plugin-flowtype-rules) - * [`array-style-complex-type`](#eslint-plugin-flowtype-rules-array-style-complex-type) - * [`array-style-simple-type`](#eslint-plugin-flowtype-rules-array-style-simple-type) - * [`arrow-parens`](#eslint-plugin-flowtype-rules-arrow-parens) - * [`boolean-style`](#eslint-plugin-flowtype-rules-boolean-style) - * [`define-flow-type`](#eslint-plugin-flowtype-rules-define-flow-type) - * [`delimiter-dangle`](#eslint-plugin-flowtype-rules-delimiter-dangle) - * [`generic-spacing`](#eslint-plugin-flowtype-rules-generic-spacing) - * [`newline-after-flow-annotation`](#eslint-plugin-flowtype-rules-newline-after-flow-annotation) - * [`no-dupe-keys`](#eslint-plugin-flowtype-rules-no-dupe-keys) - * [`no-existential-type`](#eslint-plugin-flowtype-rules-no-existential-type) - * [`no-flow-fix-me-comments`](#eslint-plugin-flowtype-rules-no-flow-fix-me-comments) - * [`no-mixed`](#eslint-plugin-flowtype-rules-no-mixed) - * [`no-mutable-array`](#eslint-plugin-flowtype-rules-no-mutable-array) - * [`no-primitive-constructor-types`](#eslint-plugin-flowtype-rules-no-primitive-constructor-types) - * [`no-types-missing-file-annotation`](#eslint-plugin-flowtype-rules-no-types-missing-file-annotation) - * [`no-unused-expressions`](#eslint-plugin-flowtype-rules-no-unused-expressions) - * [`no-weak-types`](#eslint-plugin-flowtype-rules-no-weak-types) - * [`object-type-delimiter`](#eslint-plugin-flowtype-rules-object-type-delimiter) - * [`require-compound-type-alias`](#eslint-plugin-flowtype-rules-require-compound-type-alias) - * [`require-exact-type`](#eslint-plugin-flowtype-rules-require-exact-type) - * [`require-indexer-name`](#eslint-plugin-flowtype-rules-require-indexer-name) - * [`require-inexact-type`](#eslint-plugin-flowtype-rules-require-inexact-type) - * [`require-parameter-type`](#eslint-plugin-flowtype-rules-require-parameter-type) - * [`require-readonly-react-props`](#eslint-plugin-flowtype-rules-require-readonly-react-props) - * [`require-return-type`](#eslint-plugin-flowtype-rules-require-return-type) - * [`require-types-at-top`](#eslint-plugin-flowtype-rules-require-types-at-top) - * [`require-valid-file-annotation`](#eslint-plugin-flowtype-rules-require-valid-file-annotation) - * [`require-variable-type`](#eslint-plugin-flowtype-rules-require-variable-type) - * [`semi`](#eslint-plugin-flowtype-rules-semi) - * [`sort-keys`](#eslint-plugin-flowtype-rules-sort-keys) - * [`space-after-type-colon`](#eslint-plugin-flowtype-rules-space-after-type-colon) - * [`space-before-generic-bracket`](#eslint-plugin-flowtype-rules-space-before-generic-bracket) - * [`space-before-type-colon`](#eslint-plugin-flowtype-rules-space-before-type-colon) - * [`spread-exact-type`](#eslint-plugin-flowtype-rules-spread-exact-type) - * [`type-id-match`](#eslint-plugin-flowtype-rules-type-id-match) - * [`type-import-style`](#eslint-plugin-flowtype-rules-type-import-style) - * [`union-intersection-spacing`](#eslint-plugin-flowtype-rules-union-intersection-spacing) - * [`use-flow-type`](#eslint-plugin-flowtype-rules-use-flow-type) - * [`valid-syntax`](#eslint-plugin-flowtype-rules-valid-syntax) - - - -## Installation - -1. Install [ESLint](https://www.github.com/eslint/eslint). -1. Install [`babel-eslint`](https://github.com/babel/babel-eslint) parser (ESLint parser [does not support type annotations](https://github.com/eslint/eslint/issues/2157)). -1. Install [`eslint-plugin-flowtype`](https://github.com/gajus/eslint-plugin-flowtype) plugin. - - - -```sh -npm install eslint --save-dev -npm install babel-eslint --save-dev -npm install eslint-plugin-flowtype --save-dev - -# Or all at once: -npm install eslint babel-eslint eslint-plugin-flowtype --save-dev -``` - - -## Configuration - -1. Set `parser` property to `babel-eslint`. -1. Add `plugins` section and specify `eslint-plugin-flowtype` as a plugin. -1. Enable rules. - - - -```json -{ - "parser": "babel-eslint", - "plugins": [ - "flowtype" - ], - "rules": { - "flowtype/boolean-style": [ - 2, - "boolean" - ], - "flowtype/define-flow-type": 1, - "flowtype/delimiter-dangle": [ - 2, - "never" - ], - "flowtype/generic-spacing": [ - 2, - "never" - ], - "flowtype/no-mixed": 2, - "flowtype/no-primitive-constructor-types": 2, - "flowtype/no-types-missing-file-annotation": 2, - "flowtype/no-weak-types": 2, - "flowtype/object-type-delimiter": [ - 2, - "comma" - ], - "flowtype/require-parameter-type": 2, - "flowtype/require-readonly-react-props": 0, - "flowtype/require-return-type": [ - 2, - "always", - { - "annotateUndefined": "never" - } - ], - "flowtype/require-valid-file-annotation": 2, - "flowtype/semi": [ - 2, - "always" - ], - "flowtype/space-after-type-colon": [ - 2, - "always" - ], - "flowtype/space-before-generic-bracket": [ - 2, - "never" - ], - "flowtype/space-before-type-colon": [ - 2, - "never" - ], - "flowtype/type-id-match": [ - 2, - "^([A-Z][a-z0-9]+)+Type$" - ], - "flowtype/union-intersection-spacing": [ - 2, - "always" - ], - "flowtype/use-flow-type": 1, - "flowtype/valid-syntax": 1 - }, - "settings": { - "flowtype": { - "onlyFilesWithFlowAnnotation": false - } - } -} -``` - - -### Shareable configurations - - -#### Recommended - -This plugin exports a [recommended configuration](./src/configs/recommended.json) that enforces Flow type good practices. - -To enable this configuration use the extends property in your `.eslintrc` config file: - -```json -{ - "extends": [ - "plugin:flowtype/recommended" - ], - "plugins": [ - "flowtype" - ] -} -``` - -See [ESLint documentation](http://eslint.org/docs/user-guide/configuring#extending-configuration-files) for more information about extending configuration files. - - -### Community maintained configurations - -The following are third-party submitted/ maintained configurations of `eslint-plugin-flowtype`: - -* https://github.com/wemake-services/eslint-config-flowtype-essential - - -## Settings - - -### onlyFilesWithFlowAnnotation - -When `true`, only checks files with a [`@flow` annotation](http://flowtype.org/docs/about-flow.html#gradual) in the first comment. - -```js -{ - "settings": { - "flowtype": { - "onlyFilesWithFlowAnnotation": true - } - } -} -``` - - -## Rules - - - - -### array-style-complex-type - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces a particular annotation style of complex types. - -Type is considered complex in these cases: - -* [Maybe type](https://flow.org/en/docs/types/maybe/) -* [Function type](https://flow.org/en/docs/types/functions/) -* [Object type](https://flow.org/en/docs/types/objects/) -* [Tuple type](https://flow.org/en/docs/types/tuples/) -* [Union type](https://flow.org/en/docs/types/unions/) -* [Intersection type](https://flow.org/en/docs/types/intersections/) - -This rule takes one argument. - -If it is `'verbose'` then a problem is raised when using `Type[]` instead of `Array`. - -If it is `'shorthand'` then a problem is raised when using `Array` instead of `Type[]`. - -The default value is `'verbose'`. - -The following patterns are considered problems: - -```js -type X = (?string)[] -// Message: Use "Array", not "(?string)[]" - -// Options: ["verbose"] -type X = (?string)[] -// Message: Use "Array", not "(?string)[]" - -// Options: ["shorthand"] -type X = Array -// Message: Use "(?string)[]", not "Array" - -// Options: ["shorthand"] -type X = Array<{foo: string}> -// Message: Use "{foo: string}[]", not "Array<{foo: string}>" - -type X = (string | number)[] -// Message: Use "Array", not "(string | number)[]" - -type X = (string & number)[] -// Message: Use "Array", not "(string & number)[]" - -type X = [string, number][] -// Message: Use "Array<[string, number]>", not "[string, number][]" - -type X = {foo: string}[] -// Message: Use "Array<{foo: string}>", not "{foo: string}[]" - -type X = (string => number)[] -// Message: Use "Array number>", not "(string => number)[]" - -type X = { - foo: string, - bar: number -}[] -// Message: Use "Array<{ foo: string, bar: number }>", not "{ foo: string, bar: number }[]" - -type X = { - foo: string, - bar: number, - quo: boolean, - hey: Date -}[] -// Message: Use "Array", not "Type[]" -``` - -The following patterns are not considered problems: - -```js -type X = Array - -// Options: ["verbose"] -type X = Array - -// Options: ["shorthand"] -type X = (?string)[] - -// Options: ["shorthand"] -type X = Array - -// Options: ["shorthand"] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type X = Array -``` - - - - -### array-style-simple-type - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces a particular array type annotation style of simple types. - -Type is considered simple in these cases: - -* [Primitive types](https://flow.org/en/docs/types/primitives/) -* [Literal types](https://flow.org/en/docs/types/literals/) -* [Mixed type](https://flow.org/en/docs/types/mixed/) -* [Any type](https://flow.org/en/docs/types/any/) -* [Class type](https://flow.org/en/docs/types/classes/) -* [Generic type](https://flow.org/en/docs/types/generics/) -* Array type [shorthand notation](https://flow.org/en/docs/types/arrays/#toc-array-type-shorthand-syntax) - -This rule takes one argument. - -If it is `'verbose'` then a problem is raised when using `Type[]` instead of `Array`. - -If it is `'shorthand'` then a problem is raised when using `Array` instead of `Type[]`. - -The default value is `'verbose'`. - -The following patterns are considered problems: - -```js -type X = string[] -// Message: Use "Array", not "string[]" - -// Options: ["verbose"] -type X = string[] -// Message: Use "Array", not "string[]" - -// Options: ["shorthand"] -type X = Array -// Message: Use "string[]", not "Array" - -type X = Date[] -// Message: Use "Array", not "Date[]" - -type X = Promise[] -// Message: Use "Array>", not "Promise[]" - -type X = $Keys<{foo: string}>[] -// Message: Use "Array<$Keys<{foo: string}>>", not "$Keys<{foo: string}>[]" - -type X = any[] -// Message: Use "Array", not "any[]" - -type X = mixed[] -// Message: Use "Array", not "mixed[]" - -type X = void[] -// Message: Use "Array", not "void[]" - -type X = null[] -// Message: Use "Array", not "null[]" - -type X = string[][] -// Message: Use "Array", not "string[][]" -// Message: Use "Array", not "string[]" - -type X = Promise<{ - foo: string, - bar: number -}>[] -// Message: Use "Array>", not "Promise<{ foo: string, bar: number }>[]" - -type X = Promise<{ - foo: string, - bar: number, - quo: boolean -}>[] -// Message: Use "Array", not "Type[]" -``` - -The following patterns are not considered problems: - -```js -type X = Array - -// Options: ["verbose"] -type X = Array - -// Options: ["shorthand"] -type X = string[] - -type X = Array> - -// Options: ["verbose"] -type X = (?string)[] - -// Options: ["verbose"] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type X = string[] - -type X = Array - -type X = typeof Array -``` - - - - -### arrow-parens - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces the consistent use of parentheses in arrow functions. - -This rule has a string option and an object one. - -String options are: - -- `"always"` (default) requires parens around arguments in all cases. -- `"as-needed"` enforces no braces where they can be omitted. - -Object properties for variants of the `"as-needed"` option: - -- `"requireForBlockBody": true` modifies the as-needed rule in order to require parens if the function body is in an instructions block (surrounded by braces). - -The following patterns are considered problems: - -```js -a => {} -// Message: undefined - -a => a -// Message: undefined - -a => { -} -// Message: undefined - -a.then(foo => {}); -// Message: undefined - -a.then(foo => a); -// Message: undefined - -a(foo => { if (true) {}; }); -// Message: undefined - -a(async foo => { if (true) {}; }); -// Message: undefined - -// Options: ["as-needed"] -(a) => a -// Message: undefined - -// Options: ["as-needed"] -(a,) => a -// Message: undefined - -// Options: ["as-needed"] -async (a) => a -// Message: undefined - -// Options: ["as-needed"] -async(a) => a -// Message: undefined - -// Options: ["as-needed",{"requireForBlockBody":true}] -a => {} -// Message: undefined - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a) => a -// Message: undefined - -// Options: ["as-needed",{"requireForBlockBody":true}] -async a => {} -// Message: undefined - -// Options: ["as-needed",{"requireForBlockBody":true}] -async (a) => a -// Message: undefined - -// Options: ["as-needed",{"requireForBlockBody":true}] -async(a) => a -// Message: undefined -``` - -The following patterns are not considered problems: - -```js -() => {} - -(a) => {} - -(a) => a - -(a) => { -} - -a.then((foo) => {}); - -a.then((foo) => { if (true) {}; }); - -a.then(async (foo) => { if (true) {}; }); - -// Options: ["always"] -() => {} - -// Options: ["always"] -(a) => {} - -// Options: ["always"] -(a) => a - -// Options: ["always"] -(a) => { -} - -// Options: ["always"] -a.then((foo) => {}); - -// Options: ["always"] -a.then((foo) => { if (true) {}; }); - -// Options: ["always"] -a.then(async (foo) => { if (true) {}; }); - -// Options: ["as-needed"] -() => {} - -// Options: ["as-needed"] -a => {} - -// Options: ["as-needed"] -a => a - -// Options: ["as-needed"] -([a, b]) => {} - -// Options: ["as-needed"] -({ a, b }) => {} - -// Options: ["as-needed"] -(a = 10) => {} - -// Options: ["as-needed"] -(...a) => a[0] - -// Options: ["as-needed"] -(a, b) => {} - -// Options: ["as-needed"] -async ([a, b]) => {} - -// Options: ["as-needed"] -async (a, b) => {} - -// Options: ["as-needed"] -(a: T) => a - -// Options: ["as-needed"] -(a): T => a - -// Options: ["as-needed",{"requireForBlockBody":true}] -() => {} - -// Options: ["as-needed",{"requireForBlockBody":true}] -a => a - -// Options: ["as-needed",{"requireForBlockBody":true}] -([a, b]) => {} - -// Options: ["as-needed",{"requireForBlockBody":true}] -([a, b]) => a - -// Options: ["as-needed",{"requireForBlockBody":true}] -({ a, b }) => {} - -// Options: ["as-needed",{"requireForBlockBody":true}] -({ a, b }) => a + b - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a = 10) => {} - -// Options: ["as-needed",{"requireForBlockBody":true}] -(...a) => a[0] - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a, b) => {} - -// Options: ["as-needed",{"requireForBlockBody":true}] -a => ({}) - -// Options: ["as-needed",{"requireForBlockBody":true}] -async a => ({}) - -// Options: ["as-needed",{"requireForBlockBody":true}] -async a => a - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a: T) => a - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a): T => a - -// Options: ["always",{"requireForBlockBody":true}] -(a: T) => a - -// Options: ["as-needed",{"requireForBlockBody":false}] -(a: T) => { return a; } - -// Options: ["always",{"requireForBlockBody":true}] -(a: T) => { return a; } - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a: T) => { return a; } - -// Options: ["as-needed",{"requireForBlockBody":true}] -(a): %checks => typeof a === "number" -``` - - - - -### boolean-style - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces a particular style for boolean type annotations. This rule takes one argument. - -If it is `'boolean'` then a problem is raised when using `bool` instead of `boolean`. - -If it is `'bool'` then a problem is raised when using `boolean` instead of `bool`. - -The default value is `'boolean'`. - -The following patterns are considered problems: - -```js -type X = bool -// Message: Use "boolean", not "bool" - -// Options: ["boolean"] -type X = bool -// Message: Use "boolean", not "bool" - -// Options: ["bool"] -type X = boolean -// Message: Use "bool", not "boolean" -``` - -The following patterns are not considered problems: - -```js -type X = boolean - -// Options: ["boolean"] -type X = boolean - -// Options: ["bool"] -type X = bool - -// Options: ["boolean"] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type X = bool -``` - - - - -### define-flow-type - -Marks Flow type identifiers as defined. - -Used to suppress [`no-undef`](http://eslint.org/docs/rules/no-undef) reporting of type identifiers. - -The following patterns are not considered problems: - -```js -var a: AType -// Additional rules: {"no-undef":2} - -var a: AType; var b: AType -// Additional rules: {"no-undef":2} - -var a; (a: AType) -// Additional rules: {"no-undef":2} - -var a: AType -// Additional rules: {"no-undef":2} - -type A = AType -// Additional rules: {"no-undef":2} - -declare type A = number -// Additional rules: {"no-undef":2} - -opaque type A = AType -// Additional rules: {"no-undef":2} - -function f(a: AType) {} -// Additional rules: {"no-undef":2} - -function f(a: AType.a) {} -// Additional rules: {"no-undef":2} - -function f(a: AType.a.b) {} -// Additional rules: {"no-undef":2} - -function f(a): AType {}; var a: AType -// Additional rules: {"no-undef":2} - -function f(a): AType {} -// Additional rules: {"no-undef":2} - -class C { a: AType } -// Additional rules: {"no-undef":2} - -class C { a: AType.a } -// Additional rules: {"no-undef":2} - -class C { a: AType.a.b } -// Additional rules: {"no-undef":2} - -class C implements AType {} -// Additional rules: {"no-undef":2} - -declare interface A {} -// Additional rules: {"no-undef":2} - -({ a: ({b() {}}: AType) }) -// Additional rules: {"no-undef":2} - -type X = {Y(): BType} -// Additional rules: {"no-undef":2} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} - -/** -* Copyright 2019 no corp -* @flow -*/ -type Foo = $ReadOnly<{}> -// Additional rules: {"no-undef":2} - -var a: AType -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -var a: AType; var b: AType -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -var a; (a: AType) -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -var a: AType -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -type A = AType -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -declare type A = number -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -opaque type A = AType -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -function f(a: AType) {} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -function f(a: AType.a) {} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -function f(a: AType.a.b) {} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -function f(a): AType {}; var a: AType -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -function f(a): AType {} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -class C { a: AType } -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -class C { a: AType.a } -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -class C { a: AType.a.b } -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -class C implements AType {} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -declare interface A {} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -({ a: ({b() {}}: AType) }) -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -type X = {Y(): BType} -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} - -/** -* Copyright 2019 no corp -* @flow -*/ -type Foo = $ReadOnly<{}> -// Additional rules: {"no-undef":2,"no-use-before-define":[2,"nofunc"]} -``` - - - - -### delimiter-dangle - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent use of trailing commas in Object and Tuple annotations. - -This rule takes three arguments where the possible values are the same as ESLint's default `comma-dangle` rule: - -1. The first argument is for Object and Tuple annotations. The default value is `'never'`. -2. The second argument is used for Interface annotations. This defaults to the value of the first argument. -3. The third argument is used for inexact object notation (trailing `...`). The default value is `'never'`. - -If it is `'never'` then a problem is raised when there is a trailing comma. - -If it is `'always'` then a problem is raised when there is no trailing comma. - -If it is `'always-multiline'` then a problem is raised when there is no trailing comma on a multi-line definition, or there _is_ a trailing comma on a single-line definition. - -If it is `'only-multiline'` then a problem is raised when there is a trailing comma on a single-line definition. It allows, but does not enforce, trailing commas on multi-line definitions. - -The following patterns are considered problems: - -```js -type X = { foo: string, } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { foo: string, } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { foo: string; } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { -foo: string, -} -// Message: Unexpected trailing delimiter - -// Options: ["always"] -type X = { foo: string } -// Message: Missing trailing delimiter - -// Options: ["always"] -type X = { -foo: string -} -// Message: Missing trailing delimiter - -// Options: ["always-multiline"] -type X = { foo: string, } -// Message: Unexpected trailing delimiter - -// Options: ["always-multiline"] -type X = { -foo: string -} -// Message: Missing trailing delimiter - -// Options: ["only-multiline"] -type X = { foo: string; } -// Message: Unexpected trailing delimiter - -// Options: ["always","never"] -interface X { foo: string; } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { [key: string]: number, } -// Message: Unexpected trailing delimiter - -// Options: ["always"] -type X = { [key: string]: number } -// Message: Missing trailing delimiter - -// Options: ["always-multiline"] -type X = { [key: string]: number, } -// Message: Unexpected trailing delimiter - -// Options: ["always-multiline"] -type X = { -[key: string]: number -} -// Message: Missing trailing delimiter - -// Options: ["only-multiline"] -type X = { [key: string]: number; } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { [key: string]: number, foo: string, } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { -[key: string]: number, -foo: string, -} -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { -[key: string]: number, -aReallyLongPropertyNameHere: string, -} -// Message: Unexpected trailing delimiter - -// Options: ["always"] -type X = { [key: string]: number, foo: string } -// Message: Missing trailing delimiter - -// Options: ["always"] -type X = { -[key: string]: number; -foo: string -} -// Message: Missing trailing delimiter - -// Options: ["always-multiline"] -type X = { [key: string]: number, foo: string, } -// Message: Unexpected trailing delimiter - -// Options: ["always-multiline"] -type X = { -[key: string]: number, -foo: string -} -// Message: Missing trailing delimiter - -// Options: ["only-multiline"] -type X = { [key: string]: number, foo: string, } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { foo: string, [key: string]: number, } -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { -foo: string, -[key: string]: number, -} -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = { -aReallyLongPropertyNameHere: string, -[key: string]: number, -} -// Message: Unexpected trailing delimiter - -// Options: ["always"] -type X = { foo: string, [key: string]: number } -// Message: Missing trailing delimiter - -// Options: ["always"] -type X = { foo: string; [key: string]: number } -// Message: Missing trailing delimiter - -// Options: ["always-multiline"] -type X = { foo: string, [key: string]: number; } -// Message: Unexpected trailing delimiter - -// Options: ["always-multiline"] -type X = { -foo: string, -[key: string]: number -} -// Message: Missing trailing delimiter - -// Options: ["only-multiline"] -type X = { foo: string, [key: string]: number; } -// Message: Unexpected trailing delimiter - -type X = { ..., } -// Message: Unexpected trailing delimiter - -type X = { ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always"] -type X = { ... } -// Message: Missing trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","only-multiline"] -type X = { ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","only-multiline"] -type X = { ...; } -// Message: Unexpected trailing delimiter - -type X = { -..., -} -// Message: Unexpected trailing delimiter - -type X = { -...; -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { -..., -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { -...; -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always"] -type X = { -... -} -// Message: Missing trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { -... -} -// Message: Missing trailing delimiter - -type X = { foo: string, ..., } -// Message: Unexpected trailing delimiter - -type X = { foo: string; ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { foo: string, ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { foo: string; ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always"] -type X = { foo: string, ... } -// Message: Missing trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { foo: string, ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { foo: string; ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","only-multiline"] -type X = { foo: string, ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","only-multiline"] -type X = { foo: string; ...; } -// Message: Unexpected trailing delimiter - -type X = { -foo: string, -..., -} -// Message: Unexpected trailing delimiter - -type X = { -foo: string; -...; -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { -foo: string, -..., -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { -foo: string; -...; -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always"] -type X = { -foo: string, -... -} -// Message: Missing trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { -foo: string, -... -} -// Message: Missing trailing delimiter - -type X = { [key: string]: number, ..., } -// Message: Unexpected trailing delimiter - -type X = { [key: string]: number; ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { [key: string]: number, ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { [key: string]: number; ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always"] -type X = { [key: string]: number, ... } -// Message: Missing trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { [key: string]: number, ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { [key: string]: number; ...; } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","only-multiline"] -type X = { [key: string]: number, ..., } -// Message: Unexpected trailing delimiter - -// Options: ["never","never","only-multiline"] -type X = { [key: string]: number; ...; } -// Message: Unexpected trailing delimiter - -type X = { -[key: string]: number, -..., -} -// Message: Unexpected trailing delimiter - -type X = { -[key: string]: number; -...; -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { -[key: string]: number, -..., -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","never"] -type X = { -[key: string]: number; -...; -} -// Message: Unexpected trailing delimiter - -// Options: ["never","never","always"] -type X = { -[key: string]: number, -... -} -// Message: Missing trailing delimiter - -// Options: ["never","never","always-multiline"] -type X = { -[key: string]: number, -... -} -// Message: Missing trailing delimiter - -type X = [string, number,] -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = [string, number,] -// Message: Unexpected trailing delimiter - -// Options: ["never"] -type X = [ -string, -number, -] -// Message: Unexpected trailing delimiter - -// Options: ["always"] -type X = [string, number] -// Message: Missing trailing delimiter - -// Options: ["always"] -type X = [ -string, -number -] -// Message: Missing trailing delimiter - -// Options: ["always-multiline"] -type X = [string, number,] -// Message: Unexpected trailing delimiter - -// Options: ["always-multiline"] -type X = [ -foo, string -] -// Message: Missing trailing delimiter - -// Options: ["only-multiline"] -type X = [ number, string, ] -// Message: Unexpected trailing delimiter -``` - -The following patterns are not considered problems: - -```js -type X = { foo: string } - -// Options: ["never"] -type X = { foo: string } - -// Options: ["always"] -type X = { foo: string, } - -// Options: ["always"] -type X = { foo: string; } - -// Options: ["never"] -type X = { -foo: string -} - -// Options: ["always"] -type X = { -foo: string, -} - -// Options: ["always-multiline"] -type X = { foo: string } - -// Options: ["always-multiline"] -type X = { -foo: string, -} - -// Options: ["always-multiline"] -type X = { -foo: string; -} - -// Options: ["only-multiline"] -type X = { foo: string } - -// Options: ["only-multiline"] -type X = { -foo: string -} - -// Options: ["only-multiline"] -type X = { -foo: string, -} - -// Options: ["only-multiline"] -type X = { -foo: string; -} - -// Options: ["never","always"] -interface X { foo: string; } - -// Options: ["never"] -type X = {} - -// Options: ["always"] -type X = {} - -// Options: ["always-multiline"] -type X = {} - -// Options: ["only-multiline"] -type X = {} - -// Options: ["never"] -type X = { [key: string]: number } - -// Options: ["always"] -type X = { [key: string]: number, } - -// Options: ["always"] -type X = { [key: string]: number; } - -// Options: ["always-multiline"] -type X = { [key: string]: number } - -// Options: ["always-multiline"] -type X = { -[key: string]: number, -} - -// Options: ["only-multiline"] -type X = { -[key: string]: number, -} - -// Options: ["only-multiline"] -type X = { -[key: string]: number -} - -// Options: ["only-multiline"] -type X = { [key: string]: number } - -// Options: ["never"] -type X = { [key: string]: number, foo: string } - -// Options: ["always"] -type X = { [key: string]: number, foo: string, } - -// Options: ["always"] -type X = { [key: string]: number; foo: string; } - -// Options: ["always-multiline"] -type X = { [key: string]: number, foo: string } - -// Options: ["always-multiline"] -type X = { -[key: string]: number, -foo: string, -} - -// Options: ["only-multiline"] -type X = { -[key: string]: number, -foo: string, -} - -// Options: ["only-multiline"] -type X = { -[key: string]: number; -foo: string -} - -// Options: ["only-multiline"] -type X = { [key: string]: number, foo: string } - -// Options: ["never"] -type X = { foo: string, [key: string]: number } - -// Options: ["always"] -type X = { foo: string, [key: string]: number, } - -// Options: ["always"] -type X = { foo: string; [key: string]: number; } - -// Options: ["always-multiline"] -type X = { foo: string, [key: string]: number } - -// Options: ["always-multiline"] -type X = { -foo: string, -[key: string]: number, -} - -// Options: ["only-multiline"] -type X = { -foo: string, -[key: string]: number, -} - -// Options: ["only-multiline"] -type X = { -foo: string; -[key: string]: number -} - -// Options: ["only-multiline"] -type X = { foo: string, [key: string]: number } - -type X = { ... } - -// Options: ["never","never","never"] -type X = { ... } - -// Options: ["never","never","always"] -type X = { ..., } - -// Options: ["never","never","always-multiline"] -type X = { ... } - -// Options: ["never","never","only-multiline"] -type X = { ... } - -type X = { -... -} - -// Options: ["never","never","never"] -type X = { -... -} - -// Options: ["never","never","always"] -type X = { -..., - } - -// Options: ["never","never","always"] -type X = { -...; - } - -// Options: ["never","never","always-multiline"] -type X = { -..., -} - -// Options: ["never","never","always-multiline"] -type X = { -...; -} - -// Options: ["never","never","only-multiline"] -type X = { -... -} - -// Options: ["never","never","only-multiline"] -type X = { -..., -} - -// Options: ["never","never","only-multiline"] -type X = { -...; -} - -type X = { foo: string, ... } - -// Options: ["never","never","never"] -type X = { foo: string, ... } - -// Options: ["never","never","always"] -type X = { foo: string, ..., } - -// Options: ["never","never","always"] -type X = { foo: string; ...; } - -// Options: ["never","never","always-multiline"] -type X = { foo: string, ... } - -// Options: ["never","never","only-multiline"] -type X = { foo: string, ... } - -type X = { -foo: string, -... -} - -// Options: ["never","never","never"] -type X = { -foo: string, -... -} - -// Options: ["never","never","always"] -type X = { -foo: string, -..., -} - -// Options: ["never","never","always"] -type X = { -foo: string; -...; -} - -// Options: ["never","never","always-multiline"] -type X = { -foo: string, -..., -} - -// Options: ["never","never","always-multiline"] -type X = { -foo: string; -...; -} - -// Options: ["never","never","only-multiline"] -type X = { -foo: string, -... -} - -// Options: ["never","never","only-multiline"] -type X = { -foo: string, -..., -} - -// Options: ["never","never","only-multiline"] -type X = { -foo: string, -...; -} - -// Options: ["never","never","never"] -type X = { [key: string]: number, ... } - -// Options: ["never","never","always"] -type X = { [key: string]: number, ..., } - -// Options: ["never","never","always"] -type X = { [key: string]: number; ...; } - -// Options: ["never","never","always-multiline"] -type X = { [key: string]: number, ... } - -// Options: ["never","never","only-multiline"] -type X = { [key: string]: number, ... } - -// Options: ["never","never","never"] -type X = { -[key: string]: number, -... -} - -// Options: ["never","never","always"] -type X = { -[key: string]: number, -..., -} - -// Options: ["never","never","always"] -type X = { -[key: string]: number; -...; -} - -// Options: ["never","never","always-multiline"] -type X = { -[key: string]: number, -..., -} - -// Options: ["never","never","always-multiline"] -type X = { -[key: string]: number; -...; -} - -// Options: ["never","never","only-multiline"] -type X = { -[key: string]: number, -... -} - -// Options: ["never","never","only-multiline"] -type X = { -[key: string]: number, -..., -} - -// Options: ["never","never","only-multiline"] -type X = { -[key: string]: number; -...; -} - -type X = [string, number] - -// Options: ["never"] -type X = [string, number] - -// Options: ["never"] -type X = [ -string, -number -] - -// Options: ["always"] -type X = [string, number,] - -// Options: ["always"] -type X = [ -string, -number, -] - -// Options: ["always-multiline"] -type X = [ foo, string ] - -// Options: ["always-multiline"] -type X = [ -foo, string, -] - -// Options: ["only-multiline"] -type X = [ number, string ] - -// Options: ["only-multiline"] -type X = [ -number, -string -] - -// Options: ["only-multiline"] -type X = [ -number, -string, -] - -// Options: ["never"] -type X = [] - -// Options: ["always"] -type X = [] - -// Options: ["always-multiline"] -type X = [] - -// Options: ["only-multiline"] -type X = [] -``` - - - - -### generic-spacing - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent spacing within generic type annotation parameters. - -This rule takes one argument. If it is `'never'` then a problem is raised when there is a space surrounding the generic type parameters. If it is `'always'` then a problem is raised when there is no space surrounding the generic type parameters. - -The default value is `'never'`. - -The following patterns are considered problems: - -```js -type X = Promise< string> -// Message: There must be no space at start of "Promise" generic type annotation - -// Options: ["never"] -type X = Promise< string> -// Message: There must be no space at start of "Promise" generic type annotation - -type X = FooBar -// Message: There must be no space at end of "FooBar" generic type annotation - -type X = Promise< string > -// Message: There must be no space at start of "Promise" generic type annotation -// Message: There must be no space at end of "Promise" generic type annotation - -type X = Promise< (foo), bar, (((baz))) > -// Message: There must be no space at start of "Promise" generic type annotation -// Message: There must be no space at end of "Promise" generic type annotation - -// Options: ["always"] -type X = Promise -// Message: There must be a space at start of "Promise" generic type annotation - -// Options: ["always"] -type X = FooBar< string> -// Message: There must be a space at end of "FooBar" generic type annotation - -// Options: ["always"] -type X = Promise -// Message: There must be a space at start of "Promise" generic type annotation -// Message: There must be a space at end of "Promise" generic type annotation - -// Options: ["always"] -type X = Promise<(foo), bar, (((baz)))> -// Message: There must be a space at start of "Promise" generic type annotation -// Message: There must be a space at end of "Promise" generic type annotation - -// Options: ["always"] -type X = FooBar< string > -// Message: There must be one space at start of "FooBar" generic type annotation - -// Options: ["always"] -type X = FooBar< string > -// Message: There must be one space at end of "FooBar" generic type annotation - -// Options: ["always"] -type X = Promise< (foo), bar, (((baz))) > -// Message: There must be one space at start of "Promise" generic type annotation -// Message: There must be one space at end of "Promise" generic type annotation -``` - -The following patterns are not considered problems: - -```js -type X = Promise - -type X = Promise<(string)> - -type X = Promise<(foo), bar, (((baz)))> - -type X = Promise< - (foo), - bar, - (((baz))), -> - -// Options: ["always"] -type X = Promise< string > - -// Options: ["always"] -type X = Promise< (string) > - -// Options: ["always"] -type X = Promise< (foo), bar, (((baz))) > -``` - - - - -### newline-after-flow-annotation - -This rule requires an empty line after the Flow annotation. - - -#### Options - -The rule has a string option: - -* `"always"` (default): Enforces that `@flow` annotations be followed by an empty line, separated by newline (LF) -* `"always-windows"`: Identical to "always", but will use a CRLF when autofixing -* `"never"`: Enforces that `@flow` annotations are not followed by empty lines - -```js -{ - "rules": { - "flowtype/newline-after-flow-annotation": [ - 2, - "always" - ] - } -} -``` - - -The following patterns are considered problems: - -```js -// @flow -import Foo from './foo'; -// Message: Expected newline after flow annotation - -// Options: ["always"] -// @flow -import Foo from './foo'; -// Message: Expected newline after flow annotation - -// Options: ["always-windows"] -// @flow -import Foo from './foo'; -// Message: Expected newline after flow annotation - -// Options: ["never"] -// @flow - - -// Message: Expected no newline after flow annotation -``` - -The following patterns are not considered problems: - -```js -// Options: ["always"] -// @flow - -import Foo from './foo'; - -// Options: ["always-windows"] -// @flow - -import Foo from './foo'; - -// Options: ["never"] -// @flow -import Foo from './foo'; -``` - - - - -### no-dupe-keys - -Checks for duplicate properties in Object annotations. - -This rule mirrors ESLint's [no-dupe-keys](http://eslint.org/docs/rules/no-dupe-keys) rule. - -```js -{ - "rules": { - "flowtype/no-dupe-keys": 2 - } -} -``` - -The following patterns are considered problems: - -```js -type f = { a: number, b: string, a: number } -// Message: Duplicate property. - -type f = { a: number, b: string, a: string } -// Message: Duplicate property. - -type f = { get(key: "a"): string, get(key: "a"): string } -// Message: Duplicate property. - -type f = { get(key: 1): string, get(key: 1): string } -// Message: Duplicate property. - -type f = { get(key: 1.1): string, get(key: 1.1): string } -// Message: Duplicate property. - -type f = { get(key: true): string, get(key: true): string } -// Message: Duplicate property. - -type f = { get(key: {a: 1}): string, get(key: {a: 1}):string } -// Message: Duplicate property. - -var a = "a"; type f = { get(key: a): string, get(key: a): string } -// Message: Duplicate property. - -var b = 1; type f = { get(key: b): string, get(key: b): string } -// Message: Duplicate property. - -var c = true; type f = { get(key: c): string, get(key: c): string } -// Message: Duplicate property. - -var d = {}; type f = { get(key: d): string, get(key: d): string } -// Message: Duplicate property. - -var e = []; type f = { get(key: e): string, get(key: e): string } -// Message: Duplicate property. - -var e = [1, "a"]; type f = { get(key: e): string, get(key: e): string } -// Message: Duplicate property. - -function fn() {}; type f = { get(key: fn): string, get(key: fn): string } -// Message: Duplicate property. -``` - -The following patterns are not considered problems: - -```js -type FooType = { a: number, b: string, c: number } - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type FooType = { a: number, b: string, a: number } - -type f = { get(key: "a"): string, get(key: "b"): string } - -type f = { get(key: 1): string, get(key: 2): string } - -type f = { get(key: 1.1): string, get(key: 1.2): string } - -type f = { get(key: true): string, get(key: false): string } - -type f = { get(key: ["a", 1]): string, get(key: ["a", 2]): string } - -type f = { get(key: ["a", ["b", 1]]): string, get(key: ["a", ["b", 2]]): string } - -type f = { a: number, b: string, c: number } - -type f = { get(key: "a"): string, get(key: "b"): string } - -type f = { get(key: "a"): string, get(key: "a", key2: "b"): string } - -type f = { get(key: "a"): string, get(key: 1): string } - -type f = { get(key: { a: 1 }): string, get(key: { a: 2 }): string} - -var a = {}; var b = {}; type f = { get(key: a): string, get(key: b): string } - -var a = 1; var b = 1; type f = { get(key: a): string, get(key: b): string } - -type a = { b: (config: { ...C, key: string}) => C } - -export interface Foo { get foo(): boolean; get bar(): string; } -``` - - - - -### no-existential-type - -Disallows use of the existential type (*). [See more](https://flow.org/en/docs/types/utilities/#toc-existential-type) - -```js -{ - "rules": { - "flowtype/no-existential-type": 2 - } -} -``` - - -The following patterns are considered problems: - -```js -type T = *; -// Message: Unexpected use of existential type (*). - -type T = U<*, *>; -// Message: Unexpected use of existential type (*). -// Message: Unexpected use of existential type (*). - -const f: (*) => null = () => null; -// Message: Unexpected use of existential type (*). -``` - -The following patterns are not considered problems: - -```js -type T = string | null -``` - - - - -### no-flow-fix-me-comments - -Disallows `$FlowFixMe` comment suppressions. - -This is especially useful as a warning to ensure instances of `$FlowFixMe` in your codebase get fixed over time. - - -#### Options - -This rule takes an optional RegExp that comments a text RegExp that makes the supression valid. - -```js -{ - "rules": { - "flowtype/no-flow-fix-me-comments": [ - 1, - "TODO\s+[0-9]+" - ] - } -} -``` - -The following patterns are considered problems: - -```js -// $FlowFixMe I am doing something evil here -const text = 'HELLO'; -// Message: $FlowFixMe is treated as `any` and should be fixed. - -// Options: ["TODO [0-9]+"] -// $FlowFixMe I am doing something evil here -const text = 'HELLO'; -// Message: $FlowFixMe is treated as `any` and should be fixed. Fix it or match `/TODO [0-9]+/`. - -// Options: ["TODO [0-9]+"] -// $FlowFixMe TODO abc 47 I am doing something evil here -const text = 'HELLO'; -// Message: $FlowFixMe is treated as `any` and should be fixed. Fix it or match `/TODO [0-9]+/`. - -// $$FlowFixMeProps I am doing something evil here -const text = 'HELLO'; -// Message: $FlowFixMe is treated as `any` and should be fixed. - -// Options: ["TODO [0-9]+"] -// $FlowFixMeProps I am doing something evil here -const text = 'HELLO'; -// Message: $FlowFixMe is treated as `any` and should be fixed. Fix it or match `/TODO [0-9]+/`. -``` - -The following patterns are not considered problems: - -```js -const text = 'HELLO'; - -// Options: ["TODO [0-9]+"] -// $FlowFixMe TODO 48 -const text = 'HELLO'; -``` - - - - -### no-mixed - -Warns against "mixed" type annotations. -These types are not strict enough and could often be made more specific. - -The following patterns are considered problems: - -The following patterns are considered problems: - -```js -function foo(thing): mixed {} -// Message: Unexpected use of mixed type - -function foo(thing): Promise {} -// Message: Unexpected use of mixed type - -function foo(thing): Promise> {} -// Message: Unexpected use of mixed type -``` - -The following patterns are not considered problems: - -```js -function foo(thing): string {} - -function foo(thing): Promise {} - -function foo(thing): Promise> {} - -(foo?: string) => {} - -(foo: ?string) => {} - -(foo: { a: string }) => {} - -(foo: { a: ?string }) => {} - -(foo: string[]) => {} - -type Foo = string - -type Foo = { a: string } - -type Foo = { (a: string): string } - -function foo(thing: string) {} - -var foo: string - -class Foo { props: string } -``` - - - - -### no-mutable-array - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Requires use of [`$ReadOnlyArray`](https://github.com/facebook/flow/blob/v0.46.0/lib/core.js#L185) instead of just `Array` or array [shorthand notation](https://flow.org/en/docs/types/arrays/#toc-array-type-shorthand-syntax). `$ReadOnlyArray` is immutable array collection type and the superclass of Array and tuple types in Flow. Use of `$ReadOnlyArray` instead of `Array` can solve some "problems" in typing with Flow (e.g., [1](https://github.com/facebook/flow/issues/3425), [2](https://github.com/facebook/flow/issues/4251)). - -General reasons for using immutable data structures: - -* They are simpler to construct, test, and use -* They help to avoid temporal coupling -* Their usage is side-effect free (no defensive copies) -* Identity mutability problem is avoided -* They always have failure atomicity -* They are much easier to cache - -Note that initialization of a variable with an empty array is considered valid (e.g., `const values: Array = [];`). This behavior resembles the behavior of Flow's [unsealed objects](https://flow.org/en/docs/types/objects/#toc-unsealed-objects), as it is assumed that empty array is intended to be mutated. - -The following patterns are considered problems: - -```js -type X = Array -// Message: Use "$ReadOnlyArray" instead of "Array" - -type X = string[] -// Message: Use "$ReadOnlyArray" instead of array shorthand notation - -const values: Array> = []; -// Message: Use "$ReadOnlyArray" instead of "Array" - -let values: Array>; -// Message: Use "$ReadOnlyArray" instead of "Array" -// Message: Use "$ReadOnlyArray" instead of "Array" -``` - -The following patterns are not considered problems: - -```js -type X = $ReadOnlyArray - -const values: Array<$ReadOnlyArray> = []; - -const values: $ReadOnlyArray[] = []; - -const values: Array<$ReadOnlyArray> = new Array(); - -const values: Array<$ReadOnlyArray> = Array(); -``` - - - - -### no-primitive-constructor-types - -Disallows use of primitive constructors as types, such as `Boolean`, `Number` and `String`. [See more](https://flowtype.org/docs/builtins.html). - -```js -{ - "rules": { - "flowtype/no-primitive-constructor-types": 2 - } -} -``` - -The following patterns are considered problems: - -```js -type x = Number -// Message: Unexpected use of Number constructor type. - -type x = String -// Message: Unexpected use of String constructor type. - -type x = Boolean -// Message: Unexpected use of Boolean constructor type. - -type x = { a: Number } -// Message: Unexpected use of Number constructor type. - -type x = { a: String } -// Message: Unexpected use of String constructor type. - -type x = { a: Boolean } -// Message: Unexpected use of Boolean constructor type. - -(x: Number) => {} -// Message: Unexpected use of Number constructor type. - -(x: String) => {} -// Message: Unexpected use of String constructor type. - -(x: Boolean) => {} -// Message: Unexpected use of Boolean constructor type. -``` - -The following patterns are not considered problems: - -```js -type x = number - -type x = string - -type x = boolean - -type x = { a: number } - -type x = { a: string } - -type x = { a: boolean } - -(x: number) => {} - -(x: string) => {} - -(x: boolean) => {} - -type x = MyNumber - -type x = MyString - -type x = MyBoolean -``` - - - - -### no-types-missing-file-annotation - -Disallows Flow type imports, aliases, and annotations in files missing a valid Flow file declaration (or a @noflow annotation). - -```js -{ - "rules": { - "flowtype/no-types-missing-file-annotation": 2 - } -} -``` - -The following patterns are considered problems: - -```js -const x: number = 42; -// Message: Type annotations require valid Flow declaration. - -type FooType = number; -// Message: Type aliases require valid Flow declaration. - -import type A from "a" -// Message: Type imports require valid Flow declaration. - -import type {A} from "a" -// Message: Type imports require valid Flow declaration. - -import {type A} from "a" -// Message: Type imports require valid Flow declaration. - -export type {A} from "a" -// Message: Type exports require valid Flow declaration. - -function t(): T{} -// Message: Type annotations require valid Flow declaration. - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -const x: number = 42; -// Message: Type annotations require valid Flow declaration. -``` - -The following patterns are not considered problems: - -```js -// @flow -const x: number = 42; - -/* @flow weak */ -type FooType = number; - -/* @noflow */ -type FooType = number; - -/* @noflow */ -import type A from "a" - -/* @noflow */ -import {type A} from "a" - -/* @noflow */ -export type {A} from "a" - -// an unrelated comment -// @flow -export type {A} from "a" -``` - - - - -### no-unused-expressions - -An extension of [ESLint's `no-unused-expressions`](https://eslint.org/docs/rules/no-unused-expressions). -This rule ignores type cast expressions, but otherwise behaves the same as ESLint's -`no-unused-expressions`. - -Bare type casts are useful, for example to assert the exhaustiveness of a `switch`: - -```js -type Action - = { type: 'FOO', doFoo: (_: number) => void } - | { type: 'BAR', doBar: (_: string) => void }; - -type State = { foo: number, bar: string }; - -function runFooBar(action: Action, state: State): void { - switch (action.type) { - case 'FOO': - doFoo(state.foo); - break; - case 'BAR': - doBar(state.bar); - break; - default: - (action: empty); // type error when `Action` is extended with new types - console.error(`Impossible action: ${action.toString()}`); - } -} -``` - -This rule takes the same arguments as ESLint's `no-unused-expressions`. See -[that rule's documentation](https://eslint.org/docs/rules/no-unused-expressions) for details. - -The following patterns are considered problems: - -```js -foo + 1 -// Message: Expected an assignment or function call and instead saw an expression. -``` - -The following patterns are not considered problems: - -```js -(foo: number) -``` - - - - -### no-weak-types - -Warns against weak type annotations *any*, *Object* and *Function*. -These types can cause flow to silently skip over portions of your code, -which would have otherwise caused type errors. - -This rule optionally takes one argument, an object to configure which type warnings to enable. By default, all of the -warnings are enabled. e.g. to disable the `any` warning (allowing it to exist in your code), while continuing to warn -about `Object` and `Function`: - -```js -{ - "rules": { - "flowtype/no-weak-types": [2, { - "any": false, - "Object": true, - "Function": true - }] - } -} - -// or, the following is equivalent as default is true: - -{ - "rules": { - "flowtype/no-weak-types": [2, { - "any": false - }] - } -} -``` - -The following patterns are considered problems: - -```js -function foo(thing): any {} -// Message: Unexpected use of weak type "any" - -function foo(thing): Promise {} -// Message: Unexpected use of weak type "any" - -function foo(thing): Promise> {} -// Message: Unexpected use of weak type "any" - -function foo(thing): Object {} -// Message: Unexpected use of weak type "Object" - -function foo(thing): Promise {} -// Message: Unexpected use of weak type "Object" - -function foo(thing): Promise> {} -// Message: Unexpected use of weak type "Object" - -function foo(thing): Function {} -// Message: Unexpected use of weak type "Function" - -function foo(thing): Promise {} -// Message: Unexpected use of weak type "Function" - -function foo(thing): Promise> {} -// Message: Unexpected use of weak type "Function" - -(foo: any) => {} -// Message: Unexpected use of weak type "any" - -(foo: Function) => {} -// Message: Unexpected use of weak type "Function" - -(foo?: any) => {} -// Message: Unexpected use of weak type "any" - -(foo?: Function) => {} -// Message: Unexpected use of weak type "Function" - -(foo: { a: any }) => {} -// Message: Unexpected use of weak type "any" - -(foo: { a: Object }) => {} -// Message: Unexpected use of weak type "Object" - -(foo: any[]) => {} -// Message: Unexpected use of weak type "any" - -type Foo = any -// Message: Unexpected use of weak type "any" - -type Foo = Function -// Message: Unexpected use of weak type "Function" - -type Foo = { a: any } -// Message: Unexpected use of weak type "any" - -type Foo = { a: Object } -// Message: Unexpected use of weak type "Object" - -type Foo = { (a: Object): string } -// Message: Unexpected use of weak type "Object" - -type Foo = { (a: string): Function } -// Message: Unexpected use of weak type "Function" - -function foo(thing: any) {} -// Message: Unexpected use of weak type "any" - -function foo(thing: Object) {} -// Message: Unexpected use of weak type "Object" - -var foo: Function -// Message: Unexpected use of weak type "Function" - -var foo: Object -// Message: Unexpected use of weak type "Object" - -class Foo { props: any } -// Message: Unexpected use of weak type "any" - -class Foo { props: Object } -// Message: Unexpected use of weak type "Object" - -var foo: any -// Message: Unexpected use of weak type "any" - -// Options: [{"Function":false}] -type X = any; type Y = Function; type Z = Object -// Message: Unexpected use of weak type "any" -// Message: Unexpected use of weak type "Object" - -// Options: [{"any":false,"Object":false}] -type X = any; type Y = Function; type Z = Object -// Message: Unexpected use of weak type "Function" -``` - -The following patterns are not considered problems: - -```js -function foo(thing): string {} - -function foo(thing): Promise {} - -function foo(thing): Promise> {} - -(foo?: string) => {} - -(foo: ?string) => {} - -(foo: { a: string }) => {} - -(foo: { a: ?string }) => {} - -(foo: string[]) => {} - -type Foo = string - -type Foo = { a: string } - -type Foo = { (a: string): string } - -function foo(thing: string) {} - -var foo: string - -class Foo { props: string } - -// Options: [{"any":false,"Object":false}] -type X = any; type Y = Object - -// Options: [{"Function":false}] -type X = Function - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -function foo(thing): Function {} -``` - - - - -### object-type-delimiter - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent separators between properties in Flow object types. - -This rule takes one argument. - -If it is `'comma'` then a problem is raised when using `;` as a separator. - -If it is `'semicolon'` then a problem is raised when using `,` as a separator. - -The default value is `'comma'`. - -_This rule is ported from `babel/flow-object-type`, however the default option was changed._ - -The following patterns are considered problems: - -```js -// Options: ["semicolon"] -type Foo = { a: Foo, b: Bar } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -type Foo = { a: Foo; b: Bar } -// Message: Prefer commas to semicolons in object and class types - -// Options: ["semicolon"] -type Foo = { [a: string]: Foo, [b: string]: Bar } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -type Foo = { [a: string]: Foo; [b: string]: Bar } -// Message: Prefer commas to semicolons in object and class types - -// Options: ["semicolon"] -type Foo = { (): Foo, (): Bar } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -type Foo = { (): Foo; (): Bar } -// Message: Prefer commas to semicolons in object and class types - -// Options: ["semicolon"] -declare class Foo { a: Foo, } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -declare class Foo { a: Foo; } -// Message: Prefer commas to semicolons in object and class types - -// Options: ["semicolon"] -declare class Foo { [a: string]: Foo, } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -declare class Foo { a: Foo; } -// Message: Prefer commas to semicolons in object and class types - -// Options: ["semicolon"] -declare class Foo { (): Foo, } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -declare class Foo { (): Foo; } -// Message: Prefer commas to semicolons in object and class types - -// Options: ["semicolon"] -declare class Foo { static (): Foo, } -// Message: Prefer semicolons to commas in object and class types - -// Options: ["comma"] -declare class Foo { static (): Foo; } -// Message: Prefer commas to semicolons in object and class types -``` - -The following patterns are not considered problems: - -```js -// Options: ["semicolon"] -type Foo = { a: Foo; b: Bar } - -// Options: ["comma"] -type Foo = { a: Foo, b: Bar } - -// Options: ["semicolon"] -type Foo = { [a: string]: Foo; [b: string]: Bar } - -// Options: ["comma"] -type Foo = { [a: string]: Foo, [b: string]: Bar } - -// Options: ["semicolon"] -type Foo = { (): Foo; (): Bar } - -// Options: ["comma"] -type Foo = { (): Foo, (): Bar } - -type Foo = { a: Foo, b: Bar } - -type Foo = { [a: string]: Foo, [b: string]: Bar } - -type Foo = { (): Foo, (): Bar } - -// Options: ["semicolon"] -declare class Foo { a: Foo; } - -// Options: ["comma"] -declare class Foo { a: Foo, } - -// Options: ["semicolon"] -declare class Foo { [a: string]: Foo; } - -// Options: ["comma"] -declare class Foo { [a: string]: Foo, } - -// Options: ["semicolon"] -declare class Foo { (): Foo; } - -// Options: ["comma"] -declare class Foo { (): Foo, } - -// Options: ["semicolon"] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type Foo = { a: Foo, b: Bar } -``` - - - - -### require-compound-type-alias - -Requires to make a type alias for all [union](https://flow.org/en/docs/types/unions/) and [intersection](https://flow.org/en/docs/types/intersections/) types. If these are used in "raw" forms it might be tempting to just copy&paste them around the code. However, this brings sort of a source code pollution and unnecessary changes on several parts when these compound types need to be changed. - - -#### Options - -The rule has a string option: - -* `"never"` -* `"always"` - -The default value is `"always"`. - -The following patterns are considered problems: - -```js -function foo(bar: "A" | "B") {} -// Message: All union types must be declared with named type alias. - -const foo: "A" | "B" = "A"; -// Message: All union types must be declared with named type alias. - -type Foo = { bar: "A" | "B" }; -// Message: All union types must be declared with named type alias. - -function foo(bar: { n: number } | { s: string }) {} -// Message: All union types must be declared with named type alias. - -function foo(bar: { n: number } & { s: string }) {} -// Message: All intersection types must be declared with named type alias. - -const foo: { n: number } & { s: string } = { n: 0, s: "" }; -// Message: All intersection types must be declared with named type alias. - -type Foo = { bar: { n: number } & { s: string } }; -// Message: All intersection types must be declared with named type alias. - -function foo(bar: { n: number } & { s: string }) {} -// Message: All intersection types must be declared with named type alias. -``` - -The following patterns are not considered problems: - -```js -type Foo = "A" | "B"; - -type Bar = "A" | "B"; function foo(bar: Bar) {} - -type Foo = { disjoint: "A", n: number } | { disjoint: "B", s: string }; - -type Foo = { n: number } & { s: string }; - -type Bar = { n: number } & { s: string }; function foo(bar: Bar) {} - -// Options: ["never"] -function foo(bar: "A" | "B") {} - -// Options: ["never"] -function foo(bar: { n: number } & { s: string }) {} -``` - - - - -### require-exact-type - -This rule enforces [exact object types](https://flow.org/en/docs/types/objects/#toc-exact-object-types). - - -#### Options - -The rule has one string option: - -* `"always"` (default): Report all object type definitions that aren't exact. -* `"never"`: Report all object type definitions that are exact. - -```js -{ - "rules": { - "flowtype/require-exact-type": [ - 2, - "always" - ] - } -} - -{ - "rules": { - "flowtype/require-exact-type": [ - 2, - "never" - ] - } -} -``` - -The following patterns are considered problems: - -```js -type foo = {}; -// Message: Type identifier 'foo' must be exact. - -type foo = { bar: string }; -// Message: Type identifier 'foo' must be exact. - -// Options: ["always"] -type foo = {}; -// Message: Type identifier 'foo' must be exact. - -// Options: ["always"] -type foo = { bar: string }; -// Message: Type identifier 'foo' must be exact. - -// Options: ["never"] -type foo = {| |}; -// Message: Type identifier 'foo' must not be exact. - -// Options: ["never"] -type foo = {| bar: string |}; -// Message: Type identifier 'foo' must not be exact. -``` - -The following patterns are not considered problems: - -```js -type foo = {| |}; - -type foo = {| bar: string |}; - -type foo = { [key: string]: string }; - -type foo = number; - -// Options: ["always"] -type foo = {| |}; - -// Options: ["always"] -type foo = {| bar: string |}; - -// Options: ["always"] -type foo = number; - -// Options: ["never"] -type foo = { }; - -// Options: ["never"] -type foo = { bar: string }; - -// Options: ["never"] -type foo = number; -``` - - - - -### require-indexer-name - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -This rule validates Flow object indexer name. - - -#### Options - -The rule has a string option: - -* `"never"` (default): Never report files that are missing an indexer key name. -* `"always"`: Always report files that are missing an indexer key name. - -```js -{ - "rules": { - "flowtype/require-indexer-name": [ - 2, - "always" - ] - } -} -``` - -The following patterns are considered problems: - -```js -type foo = { [string]: number }; -// Message: All indexers must be declared with key name. -``` - -The following patterns are not considered problems: - -```js -type foo = { [key: string]: number }; - -// Options: ["never"] -type foo = { [key: string]: number }; - -// Options: ["never"] -type foo = { [string]: number }; -``` - - - - -### require-inexact-type - -This rule enforces explicit inexact object types. - - -#### Options - -The rule has one string option: - -- `"always"` (default): Report all object type definitions that aren't explicit inexact, but ignore exact objects. -- `"never"`: Report all object type definitions that are explicit inexact. - -```js -{ - "rules": { - "flowtype/require-inexact-type": [ - 2, - "always" - ] - } -} - -{ - "rules": { - "flowtype/require-inexact-type": [ - 2, - "never" - ] - } -} -``` - -The following patterns are considered problems: - -```js -type foo = {}; -// Message: Type must be explicit inexact. - -type foo = { bar: string }; -// Message: Type must be explicit inexact. - -// Options: ["always"] -type foo = {}; -// Message: Type must be explicit inexact. - -// Options: ["always"] -type foo = { bar: string }; -// Message: Type must be explicit inexact. - -// Options: ["never"] -type foo = {...}; -// Message: Type must not be explicit inexact. - -// Options: ["never"] -type foo = { bar: string, ... }; -// Message: Type must not be explicit inexact. -``` - -The following patterns are not considered problems: - -```js -type foo = { foo: string, ... }; - -interface Foo { foo: string } - -declare class Foo { foo: string } - -type foo = {| |}; - -type foo = {| bar: string |}; - -type foo = { [key: string]: string, ... }; - -type foo = number; - -// Options: ["always"] -type foo = {| |}; - -// Options: ["always"] -type foo = {...}; - -// Options: ["always"] -type foo = { bar: string, ... }; - -// Options: ["always"] -type foo = {| bar: string |}; - -// Options: ["always"] -type foo = number; - -// Options: ["never"] -type foo = { }; - -// Options: ["never"] -type foo = {| |}; - -// Options: ["never"] -type foo = { bar: string }; - -// Options: ["never"] -type foo = {| bar: string |}; - -// Options: ["never"] -type foo = number; -``` - - - - -### require-parameter-type - -Requires that all function parameters have type annotations. - - -#### Options - -You can skip all arrow functions by providing the `excludeArrowFunctions` option with `true`. - -Alternatively, you can want to exclude only concise arrow functions (e.g. `x => x * 2`). Provide `excludeArrowFunctions` with `expressionsOnly` for this. - -```js -{ - "rules": { - "flowtype/require-parameter-type": [ - 2, - { - "excludeArrowFunctions": true - } - ] - } -} - -{ - "rules": { - "flowtype/require-parameter-type": [ - 2, - { - "excludeArrowFunctions": "expressionsOnly" - } - ] - } -} -``` - -You can exclude parameters that match a certain regex by using `excludeParameterMatch`. - -```js -{ - "rules": { - "flowtype/require-parameter-type": [ - 2, - { - "excludeParameterMatch": "^_" - } - ] - } -} -``` - -This excludes all parameters that start with an underscore (`_`). -The default pattern is `a^`, which doesn't match anything, i.e., all parameters are checked. - -The following patterns are considered problems: - -```js -(foo) => {} -// Message: Missing "foo" parameter type annotation. - -function x(foo) {} -// Message: Missing "foo" parameter type annotation. - -// Options: [{"excludeArrowFunctions":true}] -function x(foo) {} -// Message: Missing "foo" parameter type annotation. - -(foo = 'FOO') => {} -// Message: Missing "foo" parameter type annotation. - -(...foo) => {} -// Message: Missing "foo" parameter type annotation. - -({foo}) => {} -// Message: Missing "{foo}" parameter type annotation. - -([foo]) => {} -// Message: Missing "[foo]" parameter type annotation. - -({foo = 1} = {}) => {} -// Message: Missing "{foo = 1}" parameter type annotation. - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -// @flow -(foo) => {} -// Message: Missing "foo" parameter type annotation. - -// Options: [{"excludeArrowFunctions":"expressionsOnly"}] -(foo) => {} -// Message: Missing "foo" parameter type annotation. - -// Options: [{"excludeArrowFunctions":"expressionsOnly"}] -function x(foo) {} -// Message: Missing "foo" parameter type annotation. - -// Options: [{"excludeParameterMatch":"^_"}] -(_foo: number, bar) => {} -// Message: Missing "bar" parameter type annotation. - -// Options: [{"excludeParameterMatch":"^_"}] -(_foo, bar) => {} -// Message: Missing "bar" parameter type annotation. -``` - -The following patterns are not considered problems: - -```js -(foo: string) => {} - -(foo: string = 'FOO') => {} - -(...foo: string) => {} - -const f: Foo = (a, b) => 42; - -({foo}: {foo: string}) => {} - -([foo]: Array) => {} - -type fn = (a: string, b: number) => number; -const f: fn = (a, b) => {} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -(foo) => {} - -// Options: [{"excludeArrowFunctions":true}] -(foo) => {} - -// Options: [{"excludeArrowFunctions":"expressionsOnly"}] -(foo) => 3 - -// Options: [{"excludeParameterMatch":"^_"}] -(_foo, bar: string) => {} - -// Options: [{"excludeParameterMatch":"^_"}] -(_foo: number, bar: string) => {} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -(foo) => {} -``` - - - - -### require-readonly-react-props - -This rule validates that React props are marked as $ReadOnly. React props are immutable and modifying them could lead to unexpected results. Marking prop shapes as $ReadOnly avoids these issues. - -The rule tries its best to work with both class and functional components. For class components, it does a fuzzy check for one of "Component", "PureComponent", "React.Component" and "React.PureComponent". It doesn't actually infer that those identifiers resolve to a proper `React.Component` object. - -For example, this will NOT be checked: - -```js -import MyReact from 'react'; -class Foo extends MyReact.Component { } -``` - -As a result, you can safely use other classes without getting warnings from this rule: - -```js -class MyClass extends MySuperClass { } -``` - -React's functional components are hard to detect statically. The way it's done here is by searching for JSX within a function. When present, a function is considered a React component: - -```js -// this gets checked -type Props = { }; -function MyComponent(props: Props) { - return

; -} - -// this doesn't get checked since no JSX is present in a function -type Options = { }; -function SomeHelper(options: Options) { - // ... -} - -// this doesn't get checked since no JSX is present directly in a function -function helper() { return

} -function MyComponent(props: Props) { - return helper(); -} -``` - -The rule only works for locally defined props that are marked with a `$ReadOnly` or using covariant notation. It doesn't work with imported props: - -```js -// the rule has no way of knowing whether ImportedProps are read-only -import { type ImportedProps } from './somewhere'; -class Foo extends React.Component { } - - -// the rule also checks for covariant properties -type Props = {| - +foo: string -|}; -class Bar extends React.Component { } - -// this fails because the object is not fully read-only -type Props = {| - +foo: string, - bar: number, -|}; -class Bar extends React.Component { } - -// this fails because spreading makes object mutable (as of Flow 0.98) -// https://github.com/gajus/eslint-plugin-flowtype/pull/400#issuecomment-489813899 -type Props = {| - +foo: string, - ...bar, -|}; -class Bar extends React.Component { } -``` - - -```js -{ - "rules": { - "flowtype/require-readonly-react-props": 2 - } -} -``` - - -The following patterns are considered problems: - -```js -type Props = { }; class Foo extends React.Component { } -// Message: Props must be $ReadOnly - -type OtherProps = { foo: string }; class Foo extends React.Component { } -// Message: OtherProps must be $ReadOnly - -class Foo extends React.Component<{}> { } -// Message: Foo class props must be $ReadOnly - -type Props = { bar: {} }; class Foo extends React.Component { } -// Message: Props must be $ReadOnly - -type Props = { }; class Foo extends Component { } -// Message: Props must be $ReadOnly - -type Props = { }; class Foo extends PureComponent { } -// Message: Props must be $ReadOnly - -export type Props = {}; class Foo extends Component { } -// Message: Props must be $ReadOnly - -type Props = {| foo: string |}; class Foo extends Component { } -// Message: Props must be $ReadOnly - -type Props = {| +foo: string, ...bar |}; class Foo extends Component { } -// Message: Props must be $ReadOnly - -type Props = {| +foo: string, -bar: number |}; class Foo extends Component { } -// Message: Props must be $ReadOnly - -type Props = { }; function Foo(props: Props) { return

} -// Message: Props must be $ReadOnly - -type Props = { }; function Foo(props: Props) { return foo ?

: } -// Message: Props must be $ReadOnly - -function Foo(props: {}) { return

} -// Message: Foo component props must be $ReadOnly - -export type Props = {}; function Foo(props: Props) { return

} -// Message: Props must be $ReadOnly -``` - -The following patterns are not considered problems: - -```js -class Foo extends React.Component<$ReadOnly<{}>> { } - -type Props = $ReadOnly<{}>; class Foo extends React.Component { } - -type Props = $ReadOnly<{}>; class Foo extends React.PureComponent { } - -class Foo extends React.Component<$ReadOnly<{}, State>> { } - -type Props = $ReadOnly<{}>; class Foo extends React.Component { } - -type Props = $ReadOnly<{}>; class Foo extends Component { } - -type Props = $ReadOnly<{}>; class Foo extends PureComponent { } - -type FooType = {}; class Foo extends Bar { } - -class Foo { } - -export type Props = $ReadOnly<{}>; class Foo extends Component { } - -export type Props = $ReadOnly<{}>; export class Foo extends Component { } - -type Props = {| +foo: string |}; class Foo extends Component { } - -type Props = {| +foo: string, +bar: number |}; class Foo extends Component { } - -type Props = $FlowFixMe; class Foo extends Component { } - -type Props = {||}; class Foo extends Component { } - -class Foo extends Component<{||}> { } - -class Foo extends React.Component { } - -import { type Props } from "file"; class Foo extends React.Component { } - -type Props = {}; function Foo() { } - -type Props = $ReadOnly<{}>; function Foo(props: Props) { } - -type Props = {}; function Foo(props: OtherProps) { } - -function Foo() { return

} - -function Foo(props: $FlowFixMe) { return

} - -function Foo(props: {||}) { return

} -``` - - - - -### require-return-type - -Requires that functions have return type annotation. - - -#### Options - -You can skip all arrow functions by providing the `excludeArrowFunctions` option with `true`. - -Alternatively, you can exclude a concise arrow function (e.g. `() => 2`). Provide `excludeArrowFunctions` with `expressionsOnly` for this. - -```js -{ - "rules": { - "flowtype/require-return-type": [ - 2, - "always", - { - "excludeArrowFunctions": true - } - ] - } -} - -{ - "rules": { - "flowtype/require-return-type": [ - 2, - "always", - { - "excludeArrowFunctions": "expressionsOnly" - } - ] - } -} -``` - -You can exclude or include specific tests with the `includeOnlyMatching` and `excludeMatching` rules. - -```js -{ - "rules": { - "flowtype/require-return-type": [ - 2, - "always", - { - "includeOnlyMatching": [ - "^F.*", - "Ba(r|z)" - ] - } - ] - } -} - -{ - "rules": { - "flowtype/require-return-type": [ - 2, - "always", - { - "excludeMatching": [ - "^F.*", - "Ba(r|z)" - ] - } - ] - } -} - -``` - -Both rules take an array that can contain either strings or valid RegExp statements. - -The following patterns are considered problems: - -```js -(foo) => { return "foo"; } -// Message: Missing return type annotation. - -// Options: ["always"] -(foo) => { return "foo"; } -// Message: Missing return type annotation. - -// Options: ["always"] -(foo) => "foo" -// Message: Missing return type annotation. - -(foo) => ({}) -// Message: Missing return type annotation. - -(foo): undefined => { return; } -// Message: Must not annotate undefined return type. - -(foo): void => { return; } -// Message: Must not annotate undefined return type. - -(foo): undefined => { return undefined; } -// Message: Must not annotate undefined return type. - -(foo): void => { return void 0; } -// Message: Must not annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"never"}] -(foo): undefined => { return; } -// Message: Must not annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"never"}] -(foo): void => { return; } -// Message: Must not annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"always"}] -(foo) => { return; } -// Message: Must annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"never"}] -(foo): undefined => { return undefined; } -// Message: Must not annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"always"}] -(foo) => { return undefined; } -// Message: Must annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"always"}] -(foo) => { return void 0; } -// Message: Must annotate undefined return type. - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -// @flow -(foo) => { return 1; } -// Message: Missing return type annotation. - -// Options: ["always",{"annotateUndefined":"always"}] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -// @flow - (foo) => { return undefined; } -// Message: Must annotate undefined return type. - -// Options: ["always"] -async () => { return 2; } -// Message: Missing return type annotation. - -// Options: ["always",{"annotateUndefined":"always"}] -async () => {} -// Message: Must annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"always"}] -async function x() {} -// Message: Must annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"never"}] -async (): Promise => { return; } -// Message: Must not annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"never"}] -async (): Promise => { return; } -// Message: Must not annotate undefined return type. - -// Options: ["always",{"annotateUndefined":"always"}] -class Test { constructor() { } } -// Message: Must annotate undefined return type. - -class Test { foo() { return 42; } } -// Message: Missing return type annotation. - -class Test { foo = () => { return 42; } } -// Message: Missing return type annotation. - -class Test { foo = () => 42; } -// Message: Missing return type annotation. - -// Options: ["always"] -function* x() {} -// Message: Missing return type annotation. - -// Options: ["always",{"excludeArrowFunctions":"expressionsOnly"}] -() => { return 3; } -// Message: Missing return type annotation. - -// Options: ["always",{"excludeArrowFunctions":"expressionsOnly"}] -async () => { return 4; } -// Message: Missing return type annotation. - -// Options: ["always",{"includeOnlyMatching":["bar"]}] -function foo() { return 42; } -function bar() { return 42; } -// Message: Missing return type annotation. - -// Options: ["always",{"includeOnlyMatching":["bar"]}] -const foo = () => { return 42; }; -const bar = () => { return 42; } -// Message: Missing return type annotation. - -// Options: ["always",{"includeOnlyMatching":["bar"]}] -const foo = { bar() { return 42; }, foobar: function() { return 42; } } -// Message: Missing return type annotation. -// Message: Missing return type annotation. - -// Options: ["always",{"excludeMatching":["bar"]}] -const foo = { bar() { return 42; }, baz() { return 42; } } -// Message: Missing return type annotation. - -// Options: ["always",{"annotateUndefined":"always"}] -function * foo() { yield 2; } -// Message: Missing return type annotation. - -// Options: ["always",{"annotateUndefined":"always"}] -async function * foo() { yield 2; } -// Message: Missing return type annotation. -``` - -The following patterns are not considered problems: - -```js -return; - -(foo): string => {} - -const f: Foo = (a, b) => 42; - -// Options: ["always"] -(foo): string => {} - -type fn = (a: string, b: number) => number; -const f: fn = (a, b) => { return 42; } - -(foo) => { return; } - -(foo): Object => ( {} ) - -(foo) => { return undefined; } - -(foo) => { return void 0; } - -// Options: ["always",{"annotateUndefined":"always"}] -(foo): undefined => { return; } - -// Options: ["always",{"annotateUndefined":"always"}] -(foo): void => { return; } - -// Options: ["always",{"annotateUndefined":"never"}] -(foo) => { return; } - -// Options: ["always",{"annotateUndefined":"never"}] -(foo) => { return undefined; } - -// Options: ["always",{"annotateUndefined":"never"}] -(foo) => { return void 0; } - -// Options: ["always",{"annotateUndefined":"always"}] -(foo): undefined => { return undefined; } - -// Options: ["always",{"annotateUndefined":"always"}] -(foo): void => { return void 0; } - -// Options: ["always"] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -(foo) => { return 1; } - -// Options: ["always",{"annotateUndefined":"always"}] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -(foo) => { return undefined; } - -// Options: ["always",{"annotateUndefined":"always"}] -async function doThing(): Promise {} - -// Options: ["always",{"annotateUndefined":"ignore"}] -async function doThing(): Promise {} - -// Options: ["always",{"annotateUndefined":"ignore"}] -async function doThing() {} - -// Options: ["always",{"annotateUndefined":"always"}] -function* doThing(): Generator { yield 2; } - -// Options: ["always",{"annotateUndefined":"always","excludeMatching":["constructor"]}] -class Test { constructor() { } } - -class Test { constructor() { } } - -// Options: ["always",{"excludeMatching":["foo"]}] -class Test { foo() { return 42; } } - -// Options: ["always",{"excludeMatching":["foo"]}] -class Test { foo = () => { return 42; } } - -// Options: ["always",{"excludeMatching":["foo"]}] -class Test { foo = () => 42; } - -class Test { foo = (): number => { return 42; } } - -class Test { foo = (): number => 42; } - -async (foo): Promise => { return 3; } - -// Options: ["always",{"excludeArrowFunctions":true}] -() => 3 - -// Options: ["always",{"excludeArrowFunctions":true}] -() => { return 4; } - -// Options: ["always",{"excludeArrowFunctions":true}] -() => undefined - -// Options: ["always",{"annotateUndefined":"always","excludeArrowFunctions":true}] -() => undefined - -// Options: ["always",{"annotateUndefined":"always","excludeArrowFunctions":true}] -() => { return undefined; } - -// Options: ["always",{"excludeArrowFunctions":"expressionsOnly"}] -() => 3 - -// Options: ["always",{"excludeArrowFunctions":"expressionsOnly"}] -async () => 3 - -// Options: ["always",{"excludeMatching":["foo"]}] -function foo() { return 42; } - -// Options: ["always",{"includeOnlyMatching":["bar"]}] -function foo() { return 42; } - -// Options: ["always",{"excludeMatching":["bar"]}] -function foo(): number { return 42; } -function bar() { return 42; } - -// Options: ["always",{"includeOnlyMatching":["foo","baz"]}] -function foo(): number { return 42; } -function bar() { return 42; } - -// Options: ["always",{"excludeMatching":["^b.*","qux"]}] -function foo(): number { return 42; } -function bar() { return 42; } - -// Options: ["always",{"includeOnlyMatching":["^f.*"]}] -function foo(): number { return 42; } -function bar() { return 42; } - -// Options: ["always",{"includeOnlyMatching":["bar"]}] -const foo = { baz() { return 42; } } - -// Options: ["always",{"excludeMatching":["bar"]}] -const foo = { bar() { return 42; } } - -// Options: ["always",{"annotateUndefined":"always"}] -function * foo(): Iterable { yield 2; } - -// Options: ["always",{"annotateUndefined":"always"}] -async function * foo(): AsyncIterable { yield 2; } -``` - - - - -### require-types-at-top - -Requires all type declarations to be at the top of the file, after any import declarations. - - -#### Options - -The rule has a string option: - -* `"never"` -* `"always"` - -The default value is `"always"`. - -The following patterns are considered problems: - -```js -const foo = 3; -type Foo = number; -// Message: All type declaration should be at the top of the file, after any import declarations. - -const foo = 3; -opaque type Foo = number; -// Message: All type declaration should be at the top of the file, after any import declarations. - -const foo = 3; -export type Foo = number; -// Message: All type declaration should be at the top of the file, after any import declarations. - -const foo = 3; -export opaque type Foo = number; -// Message: All type declaration should be at the top of the file, after any import declarations. - -const foo = 3; -type Foo = number | string; -// Message: All type declaration should be at the top of the file, after any import declarations. - -import bar from "./bar"; -const foo = 3; -type Foo = number; -// Message: All type declaration should be at the top of the file, after any import declarations. -``` - -The following patterns are not considered problems: - -```js -type Foo = number; -const foo = 3; - -opaque type Foo = number; -const foo = 3; - -export type Foo = number; -const foo = 3; - -export opaque type Foo = number; -const foo = 3; - -type Foo = number; -const foo = 3; - -import bar from "./bar"; -type Foo = number; - -type Foo = number; -import bar from "./bar"; - -// Options: ["never"] -const foo = 3; -type Foo = number; -``` - - - - -### require-valid-file-annotation - -This rule validates Flow file annotations. - -This rule can optionally report missing or missed placed annotations, common typos (e.g. `// @floww`), and enforce a consistant annotation style. - - -#### Options - -The rule has a string option: - -* `"never"` (default): Never report files that are missing an `@flow` annotation. -* `"always"`: Always report files that are missing an `@flow` annotation - -This rule has an object option: - -* `"annotationStyle"` - Enforce a consistant file annotation style. - * `"none"` (default): Either annotation style is accepted. - * `"line"`: Require single line annotations (i.e. `// @flow`). - * `"block"`: Require block annotations (i.e. `/* @flow */`). - -* `"strict"` - Enforce a strict flow file annotation. - * `false` (default): strict flow annotation is not required. - * `true`: Require strict flow annotation (i.e. `// @flow strict`). - -```js -{ - "rules": { - "flowtype/require-valid-file-annotation": [ - 2, - "always" - ] - } -} - -{ - "rules": { - "flowtype/require-valid-file-annotation": [ - 2, - "always", { - "annotationStyle": "block", - "strict": true, - } - ] - } -} -``` - -The following patterns are considered problems: - -```js -;// @flow -// Message: Flow file annotation not at the top of the file. - -; -// @flow -// Message: Flow file annotation not at the top of the file. - -// @Flow -// Message: Malformed Flow file annotation. - -// @NoFlow -// Message: Malformed Flow file annotation. - -// @Noflow -// Message: Malformed Flow file annotation. - -// @floweeeeeee -// Message: Misspelled or malformed Flow file annotation. - -// @nofloweeeeeee -// Message: Misspelled or malformed Flow file annotation. - -// Options: ["always"] -a; -// Message: Flow file annotation is missing. - -// Options: ["always",{"annotationStyle":"line"}] -/* @flow */ -// Message: Flow file annotation style must be `// @flow` - -// Options: ["always",{"annotationStyle":"block"}] -// @flow -// Message: Flow file annotation style must be `/* @flow */` - -// Options: ["always",{"annotationStyle":"block"}] -// @flow -// Message: Flow file annotation style must be `/* @flow */` - -// Options: ["always",{"annotationStyle":"line","strict":true}] -// @flow -// Message: Strict Flow file annotation is required, should be `// @flow strict` - -// Options: ["always",{"annotationStyle":"line"}] -/* @noflow */ -// Message: Flow file annotation style must be `// @noflow` - -// Options: ["always",{"annotationStyle":"block"}] -// @noflow -// Message: Flow file annotation style must be `/* @noflow */` - -// Options: ["always"] -a; -// Message: Flow file annotation is missing. - -// Options: ["always",{"annotationStyle":"block"}] -a; -// Message: Flow file annotation is missing. - -// Options: ["always",{"annotationStyle":"line","strict":true}] -a; -// Message: Flow file annotation is missing. - -// Options: ["always",{"annotationStyle":"line","strict":true}] -// @flow -a; -b; -// Message: Strict Flow file annotation is required, should be `// @flow strict` -``` - -The following patterns are not considered problems: - -```js -a; - -// @flow -a; - -//@flow -a; - -//**@flow -a; - -/* foo @flow bar */ -a; - - - -// @flow -a; - -// @flow -// @FLow - -// @noflow -a; - -// Options: ["always"] -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -a; - -// Options: ["always",{"annotationStyle":"line"}] -// @flow - -// Options: ["always",{"annotationStyle":"line","strict":true}] -// @noflow - -// Options: ["always",{"annotationStyle":"line","strict":true}] -// @flow strict - -// Options: ["never",{"annotationStyle":"none"}] -// @function - -// Options: ["never"] -// @fixable - -// Options: ["always",{"annotationStyle":"block"}] -/* @flow */ -``` - - - - -### require-variable-type - -Requires that all variable declarators have type annotations. - - -#### Options - -You can exclude variables that match a certain regex by using `excludeVariableMatch`. - -This excludes all parameters that start with an underscore (`_`). -The default pattern is `a^`, which doesn't match anything, i.e., all parameters are checked. - -```js -{ - "rules": { - "flowtype/require-variable-type": [ - 2, - { - "excludeVariableMatch": "^_" - } - ] - } -} -``` - - -You can choose specific variable types (`var`, `let`, and `const`) to ignore using `excludeVariableTypes`. - -This excludes `var` and `let` declarations from needing type annotations, but forces `const` declarations to have it. -By default, all declarations are checked. - -```js -{ - "rules": { - "flowtype/require-variable-type": [ - 2, - { - "excludeVariableTypes": { - "var": true, - "let": true, - "const": false, - } - } - ] - } -} -``` - - - -The following patterns are considered problems: - -```js -var foo = "bar" -// Message: Missing "foo" variable type annotation. - -var foo : string = "bar", bar = 1 -// Message: Missing "bar" variable type annotation. - -// Options: [{"excludeVariableMatch":"^_"}] -var _foo = "bar", bar = 1 -// Message: Missing "bar" variable type annotation. - -// Options: [{"excludeVariableTypes":{"let":false,"var":true}}] -var foo = "bar", bar = 1; const oob : string = "oob"; let hey = "yah" -// Message: Missing "hey" variable type annotation. -``` - -The following patterns are not considered problems: - -```js -var foo : string = "bar" - -var foo : string = "bar", bar : number = 1 - -// Options: [{"excludeVariableMatch":"^_"}] -var _foo = "bar", bar : number = 1 - -// Options: [{"excludeVariableTypes":{"var":true}}] -var foo = "bar", bar = 1 - -// Options: [{"excludeVariableTypes":{"let":true,"var":true}}] -var foo = "bar", bar = 1; const oob : string = "oob"; let hey = "yah" -``` - - - - -### semi - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent use of semicolons after type aliases. - -This rule takes one argument. If it is `'never'` then a problem is raised when there is a semicolon after a type alias. If it is `'always'` then a problem is raised when there is no semicolon after a type alias. - -The default value is `'always'`. - -The following patterns are considered problems: - -```js -// Options: [] -type FooType = {} -// Message: Missing semicolon. - -// Options: ["always"] -type FooType = {} -// Message: Missing semicolon. - -// Options: ["never"] -type FooType = {}; -// Message: Extra semicolon. - -// Options: [] -opaque type FooType = {} -// Message: Missing semicolon. -``` - -The following patterns are not considered problems: - -```js -type FooType = {}; - -// Options: ["always"] -type FooType = {}; - -// Options: ["always"] -type FooType = { a: number; - b: string; - }; - -// Options: ["never"] -type FooType = { a: number; - b: string; - } - -// Options: ["never"] -type FooType = {} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type FooType = {} - -opaque type FooType = {}; -``` - - - - -### sort-keys - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces sorting of Object annotations. - -This rule mirrors ESlint's [sort-keys](http://eslint.org/docs/rules/sort-keys) rule. - - -#### Options - -The first option specifies sort order. - -* `"asc"` (default) - enforce ascending sort order. -* `"desc"` - enforce descending sort order. - -The second option takes an object with two possible properties. - -* `caseSensitive` - if `true`, enforce case-sensitive sort order. Default is `true`. -* `natural` - if `true`, enforce [natural sort order](https://en.wikipedia.org/wiki/Natural_sort_order). Default is `false`. - -```js -{ - "rules": { - "flowtype/sort-keys": [ - 2, - "asc", { - "caseSensitive": true, - "natural": false - } - ] - } -} -``` - -The following patterns are considered problems: - -```js -type FooType = { a: number, c: number, b: string } -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - -type FooType = { a: number, b: number, C: number } -// Message: Expected type annotations to be in ascending order. "C" should be before "b". - -type FooType = { 1: number, 2: number, 10: number } -// Message: Expected type annotations to be in ascending order. "10" should be before "2". - -// Options: ["desc"] -type FooType = { a: number, b: number } -// Message: Expected type annotations to be in descending order. "b" should be before "a". - -// Options: ["desc"] -type FooType = { C: number, b: number, a: string } -// Message: Expected type annotations to be in descending order. "b" should be before "C". - -// Options: ["desc"] -type FooType = { 10: number, 2: number, 1: number } -// Message: Expected type annotations to be in descending order. "2" should be before "10". - -// Options: ["asc",{"caseSensitive":false}] -type FooType = { a: number, c: number, C: number, b: string } -// Message: Expected type annotations to be in insensitive ascending order. "b" should be before "C". - -// Options: ["asc",{"caseSensitive":false}] -type FooType = { a: number, C: number, c: number, b: string } -// Message: Expected type annotations to be in insensitive ascending order. "b" should be before "c". - -// Options: ["asc",{"natural":true}] -type FooType = { 1: number, 10: number, 2: boolean } -// Message: Expected type annotations to be in natural ascending order. "2" should be before "10". - -type FooType = { a: number, c: number, b: string } -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - a: number, - c: number, - b: string, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - +a: number, - c: number, - b: string, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - -a: number, - c: number, - b: string, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - a?: number, - c: ?number, - b: string, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - a: (number) => void, - c: number, - b: (param: string) => number, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - a: number | string | boolean, - c: number, - b: (param: string) => number, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". - - - type FooType = { - c: number, - a: number | string | boolean, - b: (param: string) => number, - } - -// Message: Expected type annotations to be in ascending order. "a" should be before "c". - - - type FooType = { - c: { - z: number, - x: string, - y: boolean, - }, - a: number | string | boolean, - b: (param: string) => number, - } - -// Message: Expected type annotations to be in ascending order. "x" should be before "z". -// Message: Expected type annotations to be in ascending order. "a" should be before "c". - - - type FooType = { - c: { - z: { - j: string, - l: number, - k: boolean, - }, - x: string, - y: boolean, - }, - a: number | string | boolean, - b: (param: string) => number, - } - -// Message: Expected type annotations to be in ascending order. "k" should be before "l". -// Message: Expected type annotations to be in ascending order. "x" should be before "z". -// Message: Expected type annotations to be in ascending order. "a" should be before "c". - - - type FooType = { - +c: number, - -b: number, - a: number, - } - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". -// Message: Expected type annotations to be in ascending order. "a" should be before "b". - - - type FooType = {| - +c: number, - -b: number, - a: number, - |} - -// Message: Expected type annotations to be in ascending order. "b" should be before "c". -// Message: Expected type annotations to be in ascending order. "a" should be before "b". -``` - -The following patterns are not considered problems: - -```js -type FooType = { a: number } - -type FooType = { a: number, b: number, c: (boolean | number) } - -type FooType = { C: number, a: string, b: foo } - -type FooType = { 1: number, 10: number, 2: boolean } - -// Options: ["desc"] -type FooType = { c: number, b: number, a: number } - -// Options: ["desc"] -type FooType = { b: string, a: {}, C: number } - -// Options: ["desc"] -type FooType = { 2: number, 10: number, 1: boolean } - -// Options: ["asc",{"caseSensitive":false}] -type FooType = { a: number, b: number, c: number, C: number } - -// Options: ["asc",{"caseSensitive":false}] -type FooType = { a: number, b: number, C: number, c: number } - -// Options: ["asc",{"natural":true}] -type FooType = { 1:number, 2: number, 10: number } - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type FooType = { b: number, a: number } -``` - - - - -### space-after-type-colon - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent spacing after the type annotation colon. - - -#### Options - -This rule has a string argument. - -* `"always"` (default): Require a space after the type annotation colon (e.g. foo: BarType). -* `"never"`: Require no spaces after the type annotation colon (e.g. foo:BarType). - -This rule has an option object. - -* `"allowLineBreak"` - Allow a line break to count as a space following the annotation colon. - * `"true"`: Enable - * `"false"`: Disable - -{ - "rules": { - "flowtype/space-after-type-colon": [ - 2, - "always", { - "allowLineBreak": false - } - ] - } -} - -The following patterns are considered problems: - -```js -// Options: ["never"] -(foo: string) => {} -// Message: There must be no space after "foo" parameter type annotation colon. - -// Options: ["always"] -(foo: string) => {} -// Message: There must be 1 space after "foo" parameter type annotation colon. - -// Options: ["always"] -(foo:(() => void)) => {} -// Message: There must be a space after "foo" parameter type annotation colon. - -// Options: ["never"] -(foo: (() => void)) => {} -// Message: There must be no space after "foo" parameter type annotation colon. - -// Options: ["always"] -(foo: (() => void)) => {} -// Message: There must be 1 space after "foo" parameter type annotation colon. - -({ lorem, ipsum, dolor } : SomeType) => {} -// Message: There must be 1 space after "{ lorem, ipsum, dolor }" parameter type annotation colon. - -(foo:{ a: string, b: number }) => {} -// Message: There must be a space after "foo" parameter type annotation colon. - -({ a, b } :{ a: string, b: number }) => {} -// Message: There must be a space after "{ a, b }" parameter type annotation colon. - -([ a, b ] :string[]) => {} -// Message: There must be a space after "[ a, b ]" parameter type annotation colon. - -(i?:number) => {} -// Message: There must be a space after "i" parameter type annotation colon. - -(i?: number) => {} -// Message: There must be 1 space after "i" parameter type annotation colon. - -// Options: ["never"] -(i?: number) => {} -// Message: There must be no space after "i" parameter type annotation colon. - -(foo: - { a: string, b: number }) => {} -// Message: There must not be a line break after "foo" parameter type annotation colon. - -(foo: -{ a: string, b: number }) => {} -// Message: There must not be a line break after "foo" parameter type annotation colon. - -(foo: -{ a: string, b: number }) => {} -// Message: There must not be a line break after "foo" parameter type annotation colon. - -// Options: ["always"] -():Object => {} -// Message: There must be a space after return type colon. - -// Options: ["never"] -(): Object => {} -// Message: There must be no space after return type colon. - -// Options: ["always"] -(): Object => {} -// Message: There must be 1 space after return type colon. - -// Options: ["always"] -():(() => void) => {} -// Message: There must be a space after return type colon. - -// Options: ["never"] -(): (() => void) => {} -// Message: There must be no space after return type colon. - -// Options: ["always"] -(): (() => void) => {} -// Message: There must be 1 space after return type colon. - -// Options: ["never"] -export default function (foo: string) {} -// Message: There must be no space after "foo" parameter type annotation colon. - -// Options: ["never"] -function foo (foo: string) {} -// Message: There must be no space after "foo" parameter type annotation colon. - -// Options: ["always"] -(foo:string) => {} -// Message: There must be a space after "foo" parameter type annotation colon. - -function foo (foo:string) {} -// Message: There must be a space after "foo" parameter type annotation colon. - -async function foo({ lorem, ipsum, dolor }:SomeType) {} -// Message: There must be a space after "{ lorem, ipsum, dolor }" parameter type annotation colon. - -function x(i?:number) {} -// Message: There must be a space after "i" parameter type annotation colon. - -function x(i?: number) {} -// Message: There must be 1 space after "i" parameter type annotation colon. - -// Options: ["never"] -function x(i?: number) {} -// Message: There must be no space after "i" parameter type annotation colon. - -function a():x {} -// Message: There must be a space after return type colon. - -// Options: ["always"] -function a(): x {} -// Message: There must be 1 space after return type colon. - -// Options: ["never"] -function a(): x {} -// Message: There must be no space after return type colon. - -type X = (foo:number) => string -// Message: There must be a space after "foo" parameter type annotation colon. - -// Options: ["never"] -type X = (foo: number) => string -// Message: There must be no space after "foo" parameter type annotation colon. - -type X = (foo: number) => string -// Message: There must be 1 space after "foo" parameter type annotation colon. - -type X = (foo:?number) => string -// Message: There must be a space after "foo" parameter type annotation colon. - -type X = (foo:(number)) => string -// Message: There must be a space after "foo" parameter type annotation colon. - -type X = (foo:((number))) => string -// Message: There must be a space after "foo" parameter type annotation colon. - -type X = (foo: ((number))) => string -// Message: There must be 1 space after "foo" parameter type annotation colon. - -// Options: ["never"] -type X = (foo: ((number))) => string -// Message: There must be no space after "foo" parameter type annotation colon. - -type X = (foo:?(number)) => string -// Message: There must be a space after "foo" parameter type annotation colon. - -type TArrayPredicate = (el: T, i?:number) => boolean -// Message: There must be a space after "i" parameter type annotation colon. - -type TArrayPredicate = (el: T, i?: number) => boolean -// Message: There must be 1 space after "i" parameter type annotation colon. - -// Options: ["never"] -type TArrayPredicate = (el:T, i?: number) => boolean -// Message: There must be no space after "i" parameter type annotation colon. - -class X { foo:string } -// Message: There must be a space after "foo" class property type annotation colon. - -// Options: ["never"] -class X { foo: string } -// Message: There must be no space after "foo" class property type annotation colon. - -class X { foo:?string } -// Message: There must be a space after "foo" class property type annotation colon. - -// Options: ["never"] -class X { foo: ?string } -// Message: There must be no space after "foo" class property type annotation colon. - -class X { static foo:number } -// Message: There must be a space after "foo" class property type annotation colon. - -// Options: ["never"] -class X { static foo: number } -// Message: There must be no space after "foo" class property type annotation colon. - -class X { static foo :number } -// Message: There must be a space after "foo" class property type annotation colon. - -// Options: ["never"] -class X { static foo : number } -// Message: There must be no space after "foo" class property type annotation colon. - -declare class X { static foo:number } -// Message: There must be a space after "foo" type annotation colon. - -// Options: ["never"] -declare class X { static foo: number } -// Message: There must be no space after "foo" type annotation colon. - -declare class X { static foo :number } -// Message: There must be a space after "foo" type annotation colon. - -// Options: ["never"] -declare class X { static foo : number } -// Message: There must be no space after "foo" type annotation colon. - -class X { +foo:string } -// Message: There must be a space after "foo" class property type annotation colon. - -class X { +foo: string } -// Message: There must be 1 space after "foo" class property type annotation colon. - -// Options: ["never"] -class X { +foo: string } -// Message: There must be no space after "foo" class property type annotation colon. - -class X { static +foo:string } -// Message: There must be a space after "foo" class property type annotation colon. - -class X { static +foo: string } -// Message: There must be 1 space after "foo" class property type annotation colon. - -// Options: ["never"] -class X { static +foo: string } -// Message: There must be no space after "foo" class property type annotation colon. - -type X = { foo:string } -// Message: There must be a space after "foo" type annotation colon. - -// Options: ["always"] -type X = { foo:string } -// Message: There must be a space after "foo" type annotation colon. - -// Options: ["never"] -type X = { foo: string } -// Message: There must be no space after "foo" type annotation colon. - -type X = { foo: string } -// Message: There must be 1 space after "foo" type annotation colon. - -type X = { foo?:string } -// Message: There must be a space after "foo" type annotation colon. - -// Options: ["never"] -type X = { foo?: string } -// Message: There must be no space after "foo" type annotation colon. - -type X = { foo?:?string } -// Message: There must be a space after "foo" type annotation colon. - -type X = { foo?: ?string } -// Message: There must be 1 space after "foo" type annotation colon. - -type Foo = { barType:(string | () => void) } -// Message: There must be a space after "barType" type annotation colon. - -type Foo = { barType:(((string | () => void))) } -// Message: There must be a space after "barType" type annotation colon. - -// Options: ["never"] -type Foo = { barType: (string | () => void) } -// Message: There must be no space after "barType" type annotation colon. - -type Foo = { barType: (string | () => void) } -// Message: There must be 1 space after "barType" type annotation colon. - -type Foo = { barType: ((string | () => void)) } -// Message: There must be 1 space after "barType" type annotation colon. - -type X = { get:() => A; } -// Message: There must be a space after "get" type annotation colon. - -type X = { get:() => A; } -// Message: There must be a space after "get" type annotation colon. - -// Options: ["never"] -type X = { get: () => A; } -// Message: There must be no space after "get" type annotation colon. - -// Options: ["never"] -type X = { get: () => A; } -// Message: There must be no space after "get" type annotation colon. - -type X = { get: () => A; } -// Message: There must be 1 space after "get" type annotation colon. - -type X = { get: () => A; } -// Message: There must be 1 space after "get" type annotation colon. - -type X = { +foo:string } -// Message: There must be a space after "foo" type annotation colon. - -type X = { +foo: string } -// Message: There must be 1 space after "foo" type annotation colon. - -// Options: ["never"] -type X = { +foo: string } -// Message: There must be no space after "foo" type annotation colon. - -type X = { +foo?:string } -// Message: There must be a space after "foo" type annotation colon. - -type X = { +foo?: string } -// Message: There must be 1 space after "foo" type annotation colon. - -// Options: ["never"] -type X = { +foo?: string } -// Message: There must be no space after "foo" type annotation colon. - -// Options: ["always"] -type X = { [a:b]: c } -// Message: There must be a space after type annotation colon. - -// Options: ["never"] -type X = { [a: b]:c } -// Message: There must be no space after type annotation colon. - -// Options: ["always"] -type X = { [a: b]: c } -// Message: There must be 1 space after type annotation colon. - -// Options: ["always"] -type X = { +[a:b]: c } -// Message: There must be a space after type annotation colon. - -// Options: ["never"] -type X = { +[a: b]:c } -// Message: There must be no space after type annotation colon. - -// Options: ["always"] -type X = { +[a: b]: c } -// Message: There must be 1 space after type annotation colon. - -// Options: ["always"] -type X = { [a: b]:c } -// Message: There must be a space after type annotation colon. - -// Options: ["never"] -type X = { [a:b]: c } -// Message: There must be no space after type annotation colon. - -// Options: ["always"] -type X = { [a: b]: c } -// Message: There must be 1 space after type annotation colon. - -// Options: ["always"] -type X = { [a:b]:c } -// Message: There must be a space after type annotation colon. -// Message: There must be a space after type annotation colon. - -// Options: ["never"] -type X = { [a: b]: c } -// Message: There must be no space after type annotation colon. -// Message: There must be no space after type annotation colon. - -// Options: ["always"] -type X = { [a: b]: c } -// Message: There must be 1 space after type annotation colon. -// Message: There must be 1 space after type annotation colon. - -// Options: ["always"] -type X = { [a:(b)]:(c) } -// Message: There must be a space after type annotation colon. -// Message: There must be a space after type annotation colon. - -// Options: ["never"] -type X = { [a: (b)]: (c) } -// Message: There must be no space after type annotation colon. -// Message: There must be no space after type annotation colon. - -// Options: ["never"] -const x = ({}: {}) -// Message: There must be no space after type cast colon. - -// Options: ["always"] -const x = ({}:{}) -// Message: There must be a space after type cast colon. - -// Options: ["always"] -const x = ({}: {}) -// Message: There must be 1 space after type cast colon. - -// Options: ["never"] -((x): (string)) -// Message: There must be no space after type cast colon. - -// Options: ["always"] -((x):(string)) -// Message: There must be a space after type cast colon. - -// Options: ["always"] -((x): (string)) -// Message: There must be 1 space after type cast colon. - -// Options: ["always"] -const x:number = 7; -// Message: There must be a space after const type annotation colon. - -// Options: ["always"] -let x:number = 42; -// Message: There must be a space after let type annotation colon. - -// Options: ["always"] -var x:number = 42; -// Message: There must be a space after var type annotation colon. -``` - -The following patterns are not considered problems: - -```js -(foo) => {} - -(foo: string) => {} - -(foo: (string|number)) => {} - -// Options: ["never"] -(foo:string) => {} - -// Options: ["always"] -(foo: string) => {} - -// Options: ["never"] -(foo:(() => void)) => {} - -// Options: ["always"] -(foo: (() => void)) => {} - -({ lorem, ipsum, dolor }: SomeType) => {} - -(foo: { a: string, b: number }) => {} - -({ a, b }: ?{ a: string, b: number }) => {} - -([ a, b ]: string[]) => {} - -(i?: number) => {} - -// Options: ["never"] -(i?:number) => {} - -// Options: ["always",{"allowLineBreak":true}] -(foo: - { a: string, b: number }) => {} - -// Options: ["always",{"allowLineBreak":true}] -(foo: - { a: string, b: number }) => {} - -// Options: ["never"] -():Object => {} - -// Options: ["always"] -(): Object => {} - -// Options: ["never"] -():(number | string) => {} - -// Options: ["always"] -(): (number | string) => {} - -// Options: ["never"] -():number|string => {} - -// Options: ["always"] -(): number|string => {} - -// Options: ["never"] -():(() => void) => {} - -// Options: ["always"] -(): (() => void) => {} - -// Options: ["never"] -():( () => void ) => {} - -// Options: ["always"] -(): ( () => void ) => {} - -(): { a: number, b: string } => {} - -// Options: ["never"] -() :{ a:number, b:string } => {} - -function x(foo: string) {} - -class Foo { constructor(foo: string) {} } - -// Options: ["never"] -function x(foo:string) {} - -// Options: ["never"] -class Foo { constructor(foo:string) {} } - -async function foo({ lorem, ipsum, dolor }: SomeType) {} - -function x({ a, b }: { a: string, b: number }) {} - -function x(i?: number) {} - -// Options: ["never"] -function x(i?:number) {} - -function a(): x {} - -// Options: ["never"] -function a():x {} - -function a(): (number | string) {} - -// Options: ["never"] -function a() :(number | string) {} - -type X = (foo: number) => string; - -type X = (foo : number) => string; - -type X = (foo: ?number) => string; - -type X = (foo? : ?number) => string; - -type X = (foo: ?{ x: number }) => string; - -// Options: ["never"] -type X = (foo:number) => string; - -// Options: ["never"] -type X = (foo:?{ x:number }) => string; - -type X = (foo: (number)) => string - -type X = (foo: ((number))) => string - -// Options: ["never"] -type X = (foo:((number))) => string - -type X = ?(foo: ((number))) => string - -// Options: ["never"] -type X = ?(foo:((number))) => string - -type TArrayPredicate = (el: T, i?: number) => boolean - -// Options: ["never"] -type TArrayPredicate = (el:T, i?:number) => boolean - -type X = (number) => string; - -type X = (?number) => string; - -type X = number => string; - -type X = ?number => string; - -type X = ({ foo: bar }) => string; - -// Options: ["always"] -type X = (number) => string; - -// Options: ["always"] -type X = (?number) => string; - -// Options: ["always"] -type X = number => string; - -// Options: ["always"] -type X = ?number => string; - -// Options: ["always"] -type X = ({ foo: bar }) => string; - -class Foo { bar } - -class Foo { bar = 3 } - -class Foo { bar: string } - -class Foo { bar: ?string } - -// Options: ["never"] -class Foo { bar:string } - -// Options: ["never"] -class Foo { bar:?string } - -class X { static foo : number } - -// Options: ["never"] -class X { static foo :number } - -declare class X { static foo : number } - -// Options: ["never"] -declare class X { static foo :number } - -class X { +foo: string } - -class X { static +foo: string } - -// Options: ["never"] -class X { +foo:string } - -// Options: ["never"] -class X { static +foo:string } - -type X = { foo: string } - -// Options: ["never"] -type X = { foo:string } - -type X = { foo?: string } - -type X = { foo?: ?string } - -// Options: ["never"] -type X = { foo?:?string } - -type Foo = { barType: (string | () => void) } - -type Foo = { barType: ((string | () => void)) } - -// Options: ["never"] -type Foo = { barType:(string | () => void) } - -// Options: ["never"] -type Foo = { barType:((string | () => void)) } - -type X = { get(): A; } - -type X = { get(): A; } - -// Options: ["never"] -type X = { get(): A; } - -// Options: ["never"] -type X = { get(): A; } - -type X = { get: () => A; } - -type X = { get: () => A; } - -// Options: ["never"] -type X = { get:() => A; } - -// Options: ["never"] -type X = { get:() => A; } - -type X = { +foo: string } - -type X = { +foo?: string } - -// Options: ["never"] -type X = { +foo:string } - -// Options: ["never"] -type X = { +foo?:string } - -// Options: ["always"] -type X = { [a: b]: c } - -// Options: ["never"] -type X = { [a:b]:c } - -// Options: ["always"] -type X = { +[a: b]: c } - -// Options: ["never"] -type X = { +[a:b]:c } - -// Options: ["always"] -type X = { [string]: c } - -// Options: ["never"] -type X = { [string]:c } - -// Options: ["never"] -const x = ({}:{}) - -// Options: ["always"] -const x = ({}: {}) - -// Options: ["never"] -((x):(string)) - -// Options: ["always"] -((x): (string)) - -// Options: ["always"] -const x: number = 7; - -// Options: ["always"] -let x: number = 42; - -// Options: ["always"] -var x: number = 42; -``` - - - - -### space-before-generic-bracket - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent spacing before the opening `<` of generic type annotation parameters. - -This rule takes one argument. If it is `'never'` then a problem is raised when there is a space before the `<`. If it is `'always'` then a problem is raised when there is no space before the `<`. - -The default value is `'never'`. - -The following patterns are considered problems: - -```js -type X = Promise -// Message: There must be no space before "Promise" generic type annotation bracket - -// Options: ["never"] -type X = Promise -// Message: There must be no space before "Promise" generic type annotation bracket - -type X = Promise -// Message: There must be no space before "Promise" generic type annotation bracket - -// Options: ["always"] -type X = Promise -// Message: There must be a space before "Promise" generic type annotation bracket - -// Options: ["always"] -type X = Promise -// Message: There must be one space before "Promise" generic type annotation bracket -``` - -The following patterns are not considered problems: - -```js -type X = Promise - -// Options: ["always"] -type X = Promise -``` - - - - -### space-before-type-colon - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent spacing before the type annotation colon. - -This rule takes one argument. If it is `'always'` then a problem is raised when there is no space before the type annotation colon. If it is `'never'` then a problem is raised when there is a space before the type annotation colon. The default value is `'never'`. - -The following patterns are considered problems: - -```js -// Options: ["never"] -(foo : string) => {} -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["never"] -(foo ? : string) => {} -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["always"] -(foo: string) => {} -// Message: There must be a space before "foo" parameter type annotation colon. - -// Options: ["always"] -(foo : string) => {} -// Message: There must be 1 space before "foo" parameter type annotation colon. - -// Options: ["always"] -(foo?: string) => {} -// Message: There must be a space before "foo" parameter type annotation colon. - -// Options: ["always"] -(foo ? : string) => {} -// Message: There must be 1 space before "foo" parameter type annotation colon. - -// Options: ["always"] -(foo ?: string) => {} -// Message: There must be a space before "foo" parameter type annotation colon. - -({ lorem, ipsum, dolor } : SomeType) => {} -// Message: There must be no space before "{ lorem, ipsum, dolor }" parameter type annotation colon. - -(foo : { a: string, b: number }) => {} -// Message: There must be no space before "foo" parameter type annotation colon. - -({ a, b } : { a: string, b: number }) => {} -// Message: There must be no space before "{ a, b }" parameter type annotation colon. - -([ a, b ] : string[]) => {} -// Message: There must be no space before "[ a, b ]" parameter type annotation colon. - -() : x => {} -// Message: There must be no space before return type colon. - -// Options: ["always"] -(): x => {} -// Message: There must be a space before return type colon. - -// Options: ["always"] -() : x => {} -// Message: There must be 1 space before return type colon. - -function x(foo : string) {} -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["always"] -function x(foo: string) {} -// Message: There must be a space before "foo" parameter type annotation colon. - -var x = function (foo : string) {} -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["always"] -var x = function (foo: string) {} -// Message: There must be a space before "foo" parameter type annotation colon. - -class Foo { constructor(foo : string ) {} } -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["always"] -class Foo { constructor(foo: string ) {} } -// Message: There must be a space before "foo" parameter type annotation colon. - -async function foo({ lorem, ipsum, dolor } : SomeType) {} -// Message: There must be no space before "{ lorem, ipsum, dolor }" parameter type annotation colon. - -function a() : x {} -// Message: There must be no space before return type colon. - -// Options: ["always"] -function a(): x {} -// Message: There must be a space before return type colon. - -// Options: ["always"] -function a() : x {} -// Message: There must be 1 space before return type colon. - -type X = (foo :string) => string; -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["always"] -type X = (foo:string) => string; -// Message: There must be a space before "foo" parameter type annotation colon. - -// Options: ["always"] -type X = (foo :string) => string; -// Message: There must be 1 space before "foo" parameter type annotation colon. - -type X = (foo? :string) => string; -// Message: There must be no space before "foo" parameter type annotation colon. - -type X = (foo? :string) => string; -// Message: There must be no space before "foo" parameter type annotation colon. - -// Options: ["always"] -type X = (foo?:string) => string; -// Message: There must be a space before "foo" parameter type annotation colon. - -type X = (foo? :?string) => string; -// Message: There must be no space before "foo" parameter type annotation colon. - -class X { foo :string } -// Message: There must be no space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { foo: string } -// Message: There must be a space before "foo" class property type annotation colon. - -class X { foo :?string } -// Message: There must be no space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { foo: ?string } -// Message: There must be a space before "foo" class property type annotation colon. - -class X { static foo : number } -// Message: There must be no space before "foo" class property type annotation colon. - -class X { static foo :number } -// Message: There must be no space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { static foo: number } -// Message: There must be a space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { static foo:number } -// Message: There must be a space before "foo" class property type annotation colon. - -declare class Foo { static bar :number; } -// Message: There must be no space before "bar" type annotation colon. - -declare class Foo { static bar : number; } -// Message: There must be no space before "bar" type annotation colon. - -// Options: ["always"] -declare class Foo { static bar:number; } -// Message: There must be a space before "bar" type annotation colon. - -// Options: ["always"] -declare class Foo { static bar: number; } -// Message: There must be a space before "bar" type annotation colon. - -// Options: ["always"] -class X { +foo: string } -// Message: There must be a space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { +foo : string } -// Message: There must be 1 space before "foo" class property type annotation colon. - -// Options: ["never"] -class X { +foo : string } -// Message: There must be no space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { static +foo: string } -// Message: There must be a space before "foo" class property type annotation colon. - -// Options: ["always"] -class X { static +foo : string } -// Message: There must be 1 space before "foo" class property type annotation colon. - -// Options: ["never"] -class X { static +foo : string } -// Message: There must be no space before "foo" class property type annotation colon. - -type X = { foo : string } -// Message: There must be no space before "foo" type annotation colon. - -// Options: ["never"] -type X = { foo : string } -// Message: There must be no space before "foo" type annotation colon. - -// Options: ["always"] -type X = { foo: string } -// Message: There must be a space before "foo" type annotation colon. - -// Options: ["always"] -type X = { foo : string } -// Message: There must be 1 space before "foo" type annotation colon. - -type X = { foo? : string } -// Message: There must be no space before "foo" type annotation colon. - -// Options: ["always"] -type X = { foo?: string } -// Message: There must be a space before "foo" type annotation colon. - -// Options: ["always"] -type X = { foo? : string } -// Message: There must be 1 space before "foo" type annotation colon. - -// Options: ["always"] -type X = { foo ?: string } -// Message: There must be a space before "foo" type annotation colon. - -// Options: ["always"] -type X = { +foo: string } -// Message: There must be a space before "foo" type annotation colon. - -// Options: ["always"] -type X = { +foo : string } -// Message: There must be 1 space before "foo" type annotation colon. - -// Options: ["never"] -type X = { +foo : string } -// Message: There must be no space before "foo" type annotation colon. - -// Options: ["always"] -type X = { +foo?: string } -// Message: There must be a space before "foo" type annotation colon. - -// Options: ["always"] -type X = { +foo? : string } -// Message: There must be 1 space before "foo" type annotation colon. - -// Options: ["never"] -type X = { +foo? : string } -// Message: There must be no space before "foo" type annotation colon. - -// Options: ["always"] -type X = { [a: b] : c } -// Message: There must be a space before type annotation colon. - -// Options: ["never"] -type X = { [a : b]: c } -// Message: There must be no space before type annotation colon. - -// Options: ["always"] -type X = { [a : b] : c } -// Message: There must be 1 space before type annotation colon. - -// Options: ["always"] -type X = { +[a:b] : c } -// Message: There must be a space before type annotation colon. - -// Options: ["never"] -type X = { +[a : b]: c } -// Message: There must be no space before type annotation colon. - -// Options: ["always"] -type X = { +[a : b] : c } -// Message: There must be 1 space before type annotation colon. - -// Options: ["always"] -type X = { [a : b]: c } -// Message: There must be a space before type annotation colon. - -// Options: ["never"] -type X = { [a: b] : c } -// Message: There must be no space before type annotation colon. - -// Options: ["always"] -type X = { [a : b] : c } -// Message: There must be 1 space before type annotation colon. - -// Options: ["always"] -type X = { [a:b]:c } -// Message: There must be a space before type annotation colon. -// Message: There must be a space before type annotation colon. - -// Options: ["never"] -type X = { [a : b] : c } -// Message: There must be no space before type annotation colon. -// Message: There must be no space before type annotation colon. - -// Options: ["always"] -type X = { [a : b] : c } -// Message: There must be 1 space before type annotation colon. -// Message: There must be 1 space before type annotation colon. - -// Options: ["always"] -type X = { [a:(b)]:(c) } -// Message: There must be a space before type annotation colon. -// Message: There must be a space before type annotation colon. - -// Options: ["never"] -type X = { [a : (b)] : (c) } -// Message: There must be no space before type annotation colon. -// Message: There must be no space before type annotation colon. - -// Options: ["never"] -const x = ({} :{}) -// Message: There must be no space before type cast colon. - -// Options: ["always"] -const x = ({}:{}) -// Message: There must be a space before type cast colon. - -// Options: ["always"] -const x = ({} :{}) -// Message: There must be 1 space before type cast colon. - -// Options: ["never"] -((x) : string) -// Message: There must be no space before type cast colon. - -// Options: ["always"] -((x): string) -// Message: There must be a space before type cast colon. - -// Options: ["always"] -((x) : string) -// Message: There must be 1 space before type cast colon. - -// Options: ["always"] -const x:number = 7; -// Message: There must be a space before const type annotation colon. - -// Options: ["always"] -let x:number = 42; -// Message: There must be a space before let type annotation colon. - -// Options: ["always"] -var x:number = 42; -// Message: There must be a space before var type annotation colon. -``` - -The following patterns are not considered problems: - -```js -(foo) => {} - -(foo: string) => {} - -(foo?: string) => {} - -(foo ?: string) => {} - -// Options: ["never"] -(foo: string) => {} - -// Options: ["always"] -(foo : string) => {} - -// Options: ["always"] -(foo? : string) => {} - -// Options: ["always"] -(foo ? : string) => {} - -// Options: ["always"] -(foo ? : string) => {} - -({ lorem, ipsum, dolor }: SomeType) => {} - -(foo: { a: string, b: number }) => {} - -({ a, b }: ?{ a: string, b: number }) => {} - -(): { a: number, b: string } => {} - -// Options: ["always"] -() : { a : number, b : string } => {} - -([ a, b ]: string[]) => {} - -(): x => {} - -// Options: ["always"] -() : x => {} - -(): (number | string) => {} - -// Options: ["always"] -() : (number | string) => {} - -function x(foo: string) {} - -// Options: ["always"] -function x(foo : string) {} - -var x = function (foo: string) {} - -// Options: ["always"] -var x = function (foo : string) {} - -class X { foo({ bar }: Props = this.props) {} } - -class Foo { constructor(foo: string ) {} } - -// Options: ["always"] -class Foo { constructor(foo : string ) {} } - -async function foo({ lorem, ipsum, dolor }: SomeType) {} - -function x({ a, b }: { a: string, b: number }) {} - -function a(): x {} - -// Options: ["always"] -function a() : x {} - -function a(): (number | string) {} - -// Options: ["always"] -function a() : (number | string) {} - -type X = (foo:string) => number; - -type X = (foo: string) => number; - -type X = (foo: ?string) => number; - -type X = (foo?: string) => number; - -type X = (foo?: ?string) => number; - -type X = (foo ?: string) => number; - -// Options: ["always"] -type X = (foo? : string) => number - -// Options: ["always"] -type X = (foo? : ?string) => number - -type X = (number) => string; - -type X = (?number) => string; - -type X = number => string; - -type X = ?number => string; - -type X = ({ foo: bar }) => string; - -// Options: ["always"] -type X = (number) => string; - -// Options: ["always"] -type X = (?number) => string; - -// Options: ["always"] -type X = number => string; - -// Options: ["always"] -type X = ?number => string; - -// Options: ["always"] -type X = ({ foo : bar }) => string; - -class Foo { bar } - -class Foo { bar = 3 } - -class Foo { bar: string } - -class Foo { bar: ?string } - -class Foo { bar:?string } - -// Options: ["always"] -class Foo { bar : string } - -class X { static foo:number } - -class X { static foo: number } - -// Options: ["always"] -class X { static foo :number } - -// Options: ["always"] -class X { static foo : number } - -declare class Foo { static bar:number; } - -// Options: ["always"] -declare class Foo { static bar :number; } - -declare class Foo { static bar: number; } - -// Options: ["always"] -declare class Foo { static bar : number; } - -class X { +foo: string } - -class X { static +foo: string } - -// Options: ["always"] -class X { +foo : string } - -// Options: ["always"] -class X { static +foo : string } - -type X = { foo: string } - -// Options: ["always"] -type X = { foo : string } - -type X = { foo?: string } - -type X = { foo ?: string } - -// Options: ["always"] -type X = { foo? : string } - -type X = { +foo: string } - -type X = { +foo?: string } - -// Options: ["always"] -type X = { +foo : string } - -// Options: ["always"] -type X = { +foo? : string } - -// Options: ["always"] -type X = { [a : b] : c } - -// Options: ["never"] -type X = { [a:b]:c } - -// Options: ["always"] -type X = { [string] : c } - -// Options: ["never"] -type X = { [string]:c } - -// Options: ["always"] -type X = { +[a : b] : c } - -// Options: ["never"] -type X = { +[a:b]:c } - -// Options: ["always"] -type X = { [a : (b)] : (c) } - -// Options: ["never"] -type X = { [a:(b)]:(c) } - -// Options: ["never"] -const x = ({}:{}) - -// Options: ["always"] -const x = ({} :{}) - -// Options: ["never"] -((x): string) - -// Options: ["always"] -((x) : string) - -// Options: ["always"] -const x :number = 7; - -// Options: ["always"] -let x :number = 42; - -// Options: ["always"] -var x :number = 42; -``` - - - - -### spread-exact-type - -Enforce object types, that are spread to be exact type explicitly. - -The following patterns are considered problems: - -```js -type bar = {...{test: string}} -// Message: Use $Exact to make type spreading safe. - -type foo = {test: number}; type bar = {...foo} -// Message: Use $Exact to make type spreading safe. -``` - -The following patterns are not considered problems: - -```js -type bar = {...$Exact<{test: string}>} - -type foo = {test: number}; type bar = {...$Exact} -``` - - - - -### type-id-match - -Enforces a consistent naming pattern for type aliases. - - -#### Options - -This rule needs a text RegExp to operate with Its signature is as follows: - -```js -{ - "rules": { - "flowtype/type-id-match": [ - 2, - "^([A-Z][a-z0-9]*)+Type$" - ] - } -} -``` - -`'^([A-Z][a-z0-9]*)+Type$$'` is the default pattern. - -The following patterns are considered problems: - -```js -type foo = {}; -// Message: Type identifier 'foo' does not match pattern '/^([A-Z][a-z0-9]*)+Type$/'. - -// Options: ["^foo$"] -type FooType = {}; -// Message: Type identifier 'FooType' does not match pattern '/^foo$/'. -``` - -The following patterns are not considered problems: - -```js -type FooType = {}; - -// Options: ["^foo$"] -type foo = {}; - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type foo = {}; -``` - - - - -### type-import-style - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces a particular style for type imports: - -``` -// 'identifier' style -import {type T, type U, type V} from '...'; - -// 'declaration' style -import type {T, U, V} from '...'; -``` - - -#### Options - -The rule has a string option: - -* `"identifier"` (default): Enforces that type imports are all in the - 'identifier' style. -* `"declaration"`: Enforces that type imports are all in the 'declaration' - style. - -This rule has an object option: - -* `ignoreTypeDefault` - if `true`, when in "identifier" mode, default type imports will be ignored. Default is `false`. - -The following patterns are considered problems: - -```js -import type {A, B} from 'a'; -// Message: Unexpected "import type" - -// Options: ["identifier"] -import type {A, B} from 'a'; -// Message: Unexpected "import type" - -// Options: ["identifier"] -import type {A, B as C} from 'a'; -// Message: Unexpected "import type" - -// Options: ["identifier"] -import type A from 'a'; -// Message: Unexpected "import type" - -// Options: ["declaration"] -import {type A, type B} from 'a'; -// Message: Unexpected type import -// Message: Unexpected type import -``` - -The following patterns are not considered problems: - -```js -import {type A, type B} from 'a'; - -// Options: ["identifier"] -import {type A, type B} from 'a'; - -// Options: ["declaration"] -import type {A, B} from 'a'; - -// Options: ["identifier"] -import typeof * as A from 'a'; - -// Options: ["identifier",{"ignoreTypeDefault":true}] -import type A from 'a'; - -// Options: ["identifier"] -declare module "m" { import type A from 'a'; } -``` - - - - -### union-intersection-spacing - -_The `--fix` option on the command line automatically fixes problems reported by this rule._ - -Enforces consistent spacing around union and intersection type separators (`|` and `&`). - -This rule takes one argument. If it is `'always'` then a problem is raised when there is no space around the separator. If it is `'never'` then a problem is raised when there is a space around the separator. - -The default value is `'always'`. - -The following patterns are considered problems: - -```js -type X = string| number; -// Message: There must be a space before union type annotation separator - -// Options: ["always"] -type X = string| number; -// Message: There must be a space before union type annotation separator - -type X = string |number; -// Message: There must be a space after union type annotation separator - -type X = string|number; -// Message: There must be a space before union type annotation separator -// Message: There must be a space after union type annotation separator - -type X = {x: string}|{y: number}; -// Message: There must be a space before union type annotation separator -// Message: There must be a space after union type annotation separator - -type X = string | number |boolean; -// Message: There must be a space after union type annotation separator - -type X = string|number|boolean; -// Message: There must be a space before union type annotation separator -// Message: There must be a space after union type annotation separator -// Message: There must be a space before union type annotation separator -// Message: There must be a space after union type annotation separator - -type X = (string)| number; -// Message: There must be a space before union type annotation separator - -type X = ((string))|(number | foo); -// Message: There must be a space before union type annotation separator -// Message: There must be a space after union type annotation separator - -// Options: ["never"] -type X = string |number; -// Message: There must be no space before union type annotation separator - -// Options: ["never"] -type X = string| number; -// Message: There must be no space after union type annotation separator - -type X = string& number; -// Message: There must be a space before intersection type annotation separator - -// Options: ["always"] -type X = string& number; -// Message: There must be a space before intersection type annotation separator - -type X = string &number; -// Message: There must be a space after intersection type annotation separator - -type X = {x: string}&{y: number}; -// Message: There must be a space before intersection type annotation separator -// Message: There must be a space after intersection type annotation separator - -type X = string&number; -// Message: There must be a space before intersection type annotation separator -// Message: There must be a space after intersection type annotation separator - -type X = string & number &boolean; -// Message: There must be a space after intersection type annotation separator - -type X = string&number&boolean; -// Message: There must be a space before intersection type annotation separator -// Message: There must be a space after intersection type annotation separator -// Message: There must be a space before intersection type annotation separator -// Message: There must be a space after intersection type annotation separator - -type X = (string)& number; -// Message: There must be a space before intersection type annotation separator - -type X = ((string))&(number & foo); -// Message: There must be a space before intersection type annotation separator -// Message: There must be a space after intersection type annotation separator - -// Options: ["never"] -type X = string &number; -// Message: There must be no space before intersection type annotation separator - -// Options: ["never"] -type X = string& number; -// Message: There must be no space after intersection type annotation separator -``` - -The following patterns are not considered problems: - -```js -type X = string | number; - -type X = string | number | boolean; - -type X = (string) | number; - -type X = ((string)) | (number | foo); - -// Options: ["never"] -type X = string|number - -type X = -| string -| number - -function x() { -type X = -| string -| number -} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type X = string| number; - -type X = string & number; - -type X = string & number & boolean; - -type X = (string) & number; - -type X = ((string)) & (number & foo); - -// Options: ["never"] -type X = string&number - -type X = -& string -& number - -function x() { -type X = -& string -& number -} - -// Settings: {"flowtype":{"onlyFilesWithFlowAnnotation":true}} -type X = string& number; -``` - - - - -### use-flow-type - -Marks Flow [type alias](https://flowtype.org/docs/type-aliases.html) declarations as used. - -Used to suppress [`no-unused-vars`](http://eslint.org/docs/rules/no-unused-vars) errors that are triggered by type aliases. - -The following patterns are not considered problems: - -```js -declare class A {} -// Additional rules: {"no-unused-vars":1} - -declare function A(): Y -// Additional rules: {"no-unused-vars":1} - -declare module A {} -// Additional rules: {"no-unused-vars":1} - -declare module A { declare var a: Y } -// Additional rules: {"no-unused-vars":1} - -declare var A: Y -// Additional rules: {"no-unused-vars":1} - -import type A from "a"; type X> = { b: B }; let x: X; console.log(x); -// Additional rules: {"no-unused-vars":1} - -import type A from "a"; type X> = { b: B }; let x: X; console.log(x); -// Additional rules: {"no-unused-vars":1} -``` - - - - -### valid-syntax - -**Deprecated** Babylon (the Babel parser) v6.10.0 fixes parsing of the invalid syntax this plugin warned against. - -Checks for simple Flow syntax errors. - -The following patterns are not considered problems: - -```js -function x(foo: string = "1") {} - -function x(foo: Type = bar()) {} -``` - - - diff --git a/node_modules/eslint-plugin-flowtype/dist/bin/addAssertions.js b/node_modules/eslint-plugin-flowtype/dist/bin/addAssertions.js deleted file mode 100644 index 64de4515..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/bin/addAssertions.js +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/env node -'use strict'; - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _fs = require('fs'); - -var _fs2 = _interopRequireDefault(_fs); - -var _glob = require('glob'); - -var _glob2 = _interopRequireDefault(_glob); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/** - * @file This script is used to inline assertions into the README.md documents. - */ - -var formatCodeSnippet = function formatCodeSnippet(setup) { - var paragraphs = []; - - if (setup.options) { - paragraphs.push('// Options: ' + JSON.stringify(setup.options)); - } - - if (setup.settings) { - paragraphs.push('// Settings: ' + JSON.stringify(setup.settings)); - } - - paragraphs.push(setup.code); - - if (setup.errors) { - setup.errors.forEach(function (message) { - paragraphs.push('// Message: ' + message.message); - }); - } - - if (setup.rules) { - paragraphs.push('// Additional rules: ' + JSON.stringify(setup.rules)); - } - - return paragraphs.join('\n'); -}; - -var getAssertions = function getAssertions() { - var assertionFiles = _glob2.default.sync(_path2.default.resolve(__dirname, '../../tests/rules/assertions/*.js')); - - var assertionNames = _lodash2.default.map(assertionFiles, function (filePath) { - return _path2.default.basename(filePath, '.js'); - }); - - var assertionCodes = _lodash2.default.map(assertionFiles, function (filePath) { - // eslint-disable-next-line global-require, import/no-dynamic-require - var codes = require(filePath); - - return { - invalid: _lodash2.default.map(codes.invalid, formatCodeSnippet), - valid: _lodash2.default.map(codes.valid, formatCodeSnippet) - }; - }); - - return _lodash2.default.zipObject(assertionNames, assertionCodes); -}; - -var updateDocuments = function updateDocuments(assertions) { - var readmeDocumentPath = _path2.default.join(__dirname, '../../README.md'); - var documentBody = void 0; - - documentBody = _fs2.default.readFileSync(readmeDocumentPath, 'utf8'); - - documentBody = documentBody.replace(//ig, function (assertionsBlock) { - var exampleBody = void 0; - - var ruleName = assertionsBlock.match(/assertions ([a-z]+)/i)[1]; - - var ruleAssertions = assertions[ruleName]; - - if (!ruleAssertions) { - throw new Error('No assertions available for rule "' + ruleName + '".'); - } - - exampleBody = ''; - - if (ruleAssertions.invalid.length) { - exampleBody += 'The following patterns are considered problems:\n\n```js\n' + ruleAssertions.invalid.join('\n\n') + '\n```\n\n'; - } - - if (ruleAssertions.valid.length) { - exampleBody += 'The following patterns are not considered problems:\n\n```js\n' + ruleAssertions.valid.join('\n\n') + '\n```\n\n'; - } - - return exampleBody; - }); - - _fs2.default.writeFileSync(readmeDocumentPath, documentBody); -}; - -updateDocuments(getAssertions()); \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/bin/checkDocs.js b/node_modules/eslint-plugin-flowtype/dist/bin/checkDocs.js deleted file mode 100644 index 5278dea6..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/bin/checkDocs.js +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/env node -'use strict'; - -var _fs = require('fs'); - -var _fs2 = _interopRequireDefault(_fs); - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _utilities = require('./utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var windows = function windows(array, size) { - var output = []; - - for (var ii = 0; ii < array.length - size + 1; ii++) { - output.push(array.slice(ii, ii + size)); - } - - return output; -}; - -// @flow - -var getDocIndexRules = function getDocIndexRules() { - var content = _fs2.default.readFileSync(_path2.default.resolve(__dirname, '../../.README/README.md'), 'utf-8'); - - var rules = content.split('\n').map(function (line) { - var match = /^{"gitdown": "include", "file": "([^"]+)"}$/.exec(line); - - if (match === null) { - return null; - } else { - return match[1].replace('./rules/', '').replace('.md', ''); - } - }).filter(function (rule) { - return rule !== null; - }); - - if (rules.length === 0) { - throw new Error('Docs checker is broken - it could not extract rules from docs index file.'); - } - - return rules; -}; - -var hasCorrectAssertions = function hasCorrectAssertions(docPath, name) { - var content = _fs2.default.readFileSync(docPath, 'utf-8'); - - var match = //.exec(content); - - if (match === null) { - return false; - } else { - return match[1] === name; - } -}; - -/** - * Performed checks: - * - file `/.README/rules/.md` exists - * - file `/.README/rules/.md` contains correct assertions placeholder (``) - * - rule is included in gitdown directive in `/.README/README.md` - * - rules in `/.README/README.md` are alphabetically sorted - */ -var checkDocs = function checkDocs(rulesNames) { - var docIndexRules = getDocIndexRules(); - - var sorted = windows(docIndexRules, 2).every(function (chunk) { - return chunk[0] < chunk[1]; - }); - - if (!sorted) { - throw new Error('Rules are not alphabetically sorted in `.README/README.md` file.'); - } - - var invalid = rulesNames.filter(function (names) { - var docPath = _path2.default.resolve(__dirname, '../../.README/rules', names[1] + '.md'); - var docExists = (0, _utilities.isFile)(docPath); - var inIndex = docIndexRules.includes(names[1]); - var hasAssertions = docExists ? hasCorrectAssertions(docPath, names[0]) : false; - - return !(docExists && inIndex && hasAssertions); - }); - - if (invalid.length > 0) { - var invalidList = invalid.map(function (names) { - return names[0]; - }).join(', '); - - throw new Error('Docs checker encountered an error in: ' + invalidList + '. ' + 'Make sure that for every rule you created documentation file with assertions placeholder in camelCase ' + 'and included the file path in `.README/README.md` file.'); - } -}; - -checkDocs((0, _utilities.getRules)()); \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/bin/checkTests.js b/node_modules/eslint-plugin-flowtype/dist/bin/checkTests.js deleted file mode 100644 index f9631cef..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/bin/checkTests.js +++ /dev/null @@ -1,70 +0,0 @@ -'use strict'; - -var _fs = require('fs'); - -var _fs2 = _interopRequireDefault(_fs); - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _utilities = require('./utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var getTestIndexRules = function getTestIndexRules() { - var content = _fs2.default.readFileSync(_path2.default.resolve(__dirname, '../../tests/rules/index.js'), 'utf-8'); - - var result = content.split('\n').reduce(function (acc, line) { - if (acc.inRulesArray) { - if (line === '];') { - acc.inRulesArray = false; - } else { - acc.rules.push(line.replace(/^\s*'([^']+)',?$/, '$1')); - } - } else if (line === 'const reportingRules = [') { - acc.inRulesArray = true; - } - - return acc; - }, { - inRulesArray: false, - rules: [] - }); - - var rules = result.rules; - - if (rules.length === 0) { - throw new Error('Tests checker is broken - it could not extract rules from test index file.'); - } - - return rules; -}; - -/** - * Performed checks: - * - file `/tests/rules/assertions/.js` exists - * - rule is included in `reportingRules` variable in `/tests/rules/index.js` - */ -// @flow - -var checkTests = function checkTests(rulesNames) { - var testIndexRules = getTestIndexRules(); - - var invalid = rulesNames.filter(function (names) { - var testExists = (0, _utilities.isFile)(_path2.default.resolve(__dirname, '../../tests/rules/assertions', names[0] + '.js')); - var inIndex = testIndexRules.includes(names[1]); - - return !(testExists && inIndex); - }); - - if (invalid.length > 0) { - var invalidList = invalid.map(function (names) { - return names[0]; - }).join(', '); - - throw new Error('Tests checker encountered an error in: ' + invalidList + '. ' + 'Make sure that for every rule you created test suite and included the rule name in `tests/rules/index.js` file.'); - } -}; - -checkTests((0, _utilities.getRules)()); \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/bin/utilities.js b/node_modules/eslint-plugin-flowtype/dist/bin/utilities.js deleted file mode 100644 index 6639bdba..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/bin/utilities.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.isFile = exports.getRules = undefined; - -var _fs = require('fs'); - -var _fs2 = _interopRequireDefault(_fs); - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _glob = require('glob'); - -var _glob2 = _interopRequireDefault(_glob); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// @flow - -var getRules = exports.getRules = function getRules() { - var rulesFiles = _glob2.default.sync(_path2.default.resolve(__dirname, '../rules/*.js')); - - var rulesNames = rulesFiles.map(function (file) { - return _path2.default.basename(file, '.js'); - }).map(function (name) { - return [name, _lodash2.default.kebabCase(name)]; - }); - - return rulesNames; -}; - -var isFile = exports.isFile = function isFile(filepath) { - try { - return _fs2.default.statSync(filepath).isFile(); - } catch (error) { - return false; - } -}; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/configs/recommended.json b/node_modules/eslint-plugin-flowtype/dist/configs/recommended.json deleted file mode 100644 index 13cc76ec..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/configs/recommended.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "parser": "babel-eslint", - "plugins": [ - "flowtype" - ], - "rules": { - "flowtype/boolean-style": [ - 2, - "boolean" - ], - "flowtype/define-flow-type": 1, - "flowtype/delimiter-dangle": 0, - "flowtype/generic-spacing": [ - 2, - "never" - ], - "flowtype/no-mixed": 0, - "flowtype/no-types-missing-file-annotation": 2, - "flowtype/no-weak-types": 0, - "flowtype/require-parameter-type": 0, - "flowtype/require-readonly-react-props": 0, - "flowtype/require-return-type": 0, - "flowtype/require-valid-file-annotation": 0, - "flowtype/semi": 0, - "flowtype/space-after-type-colon": [ - 2, - "always" - ], - "flowtype/space-before-generic-bracket": [ - 2, - "never" - ], - "flowtype/space-before-type-colon": [ - 2, - "never" - ], - "flowtype/type-id-match": 0, - "flowtype/union-intersection-spacing": [ - 2, - "always" - ], - "flowtype/use-flow-type": 1 - }, - "settings": { - "flowtype": { - "onlyFilesWithFlowAnnotation": false - } - } -} diff --git a/node_modules/eslint-plugin-flowtype/dist/index.js b/node_modules/eslint-plugin-flowtype/dist/index.js deleted file mode 100644 index 17ca4b7c..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/index.js +++ /dev/null @@ -1,263 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _recommended = require('./configs/recommended.json'); - -var _recommended2 = _interopRequireDefault(_recommended); - -var _arrayStyleComplexType = require('./rules/arrayStyleComplexType'); - -var _arrayStyleComplexType2 = _interopRequireDefault(_arrayStyleComplexType); - -var _arrayStyleSimpleType = require('./rules/arrayStyleSimpleType'); - -var _arrayStyleSimpleType2 = _interopRequireDefault(_arrayStyleSimpleType); - -var _booleanStyle = require('./rules/booleanStyle'); - -var _booleanStyle2 = _interopRequireDefault(_booleanStyle); - -var _defineFlowType = require('./rules/defineFlowType'); - -var _defineFlowType2 = _interopRequireDefault(_defineFlowType); - -var _delimiterDangle = require('./rules/delimiterDangle'); - -var _delimiterDangle2 = _interopRequireDefault(_delimiterDangle); - -var _genericSpacing = require('./rules/genericSpacing'); - -var _genericSpacing2 = _interopRequireDefault(_genericSpacing); - -var _newlineAfterFlowAnnotation = require('./rules/newlineAfterFlowAnnotation'); - -var _newlineAfterFlowAnnotation2 = _interopRequireDefault(_newlineAfterFlowAnnotation); - -var _noDupeKeys = require('./rules/noDupeKeys'); - -var _noDupeKeys2 = _interopRequireDefault(_noDupeKeys); - -var _noExistentialType = require('./rules/noExistentialType'); - -var _noExistentialType2 = _interopRequireDefault(_noExistentialType); - -var _noFlowFixMeComments = require('./rules/noFlowFixMeComments'); - -var _noFlowFixMeComments2 = _interopRequireDefault(_noFlowFixMeComments); - -var _noMutableArray = require('./rules/noMutableArray'); - -var _noMutableArray2 = _interopRequireDefault(_noMutableArray); - -var _noPrimitiveConstructorTypes = require('./rules/noPrimitiveConstructorTypes'); - -var _noPrimitiveConstructorTypes2 = _interopRequireDefault(_noPrimitiveConstructorTypes); - -var _noTypesMissingFileAnnotation = require('./rules/noTypesMissingFileAnnotation'); - -var _noTypesMissingFileAnnotation2 = _interopRequireDefault(_noTypesMissingFileAnnotation); - -var _noUnusedExpressions = require('./rules/noUnusedExpressions'); - -var _noUnusedExpressions2 = _interopRequireDefault(_noUnusedExpressions); - -var _noWeakTypes = require('./rules/noWeakTypes'); - -var _noWeakTypes2 = _interopRequireDefault(_noWeakTypes); - -var _noMixed = require('./rules/noMixed'); - -var _noMixed2 = _interopRequireDefault(_noMixed); - -var _objectTypeDelimiter = require('./rules/objectTypeDelimiter'); - -var _objectTypeDelimiter2 = _interopRequireDefault(_objectTypeDelimiter); - -var _requireIndexerName = require('./rules/requireIndexerName'); - -var _requireIndexerName2 = _interopRequireDefault(_requireIndexerName); - -var _requireCompoundTypeAlias = require('./rules/requireCompoundTypeAlias'); - -var _requireCompoundTypeAlias2 = _interopRequireDefault(_requireCompoundTypeAlias); - -var _requireInexactType = require('./rules/requireInexactType'); - -var _requireInexactType2 = _interopRequireDefault(_requireInexactType); - -var _requireExactType = require('./rules/requireExactType'); - -var _requireExactType2 = _interopRequireDefault(_requireExactType); - -var _requireParameterType = require('./rules/requireParameterType'); - -var _requireParameterType2 = _interopRequireDefault(_requireParameterType); - -var _requireReadonlyReactProps = require('./rules/requireReadonlyReactProps'); - -var _requireReadonlyReactProps2 = _interopRequireDefault(_requireReadonlyReactProps); - -var _requireReturnType = require('./rules/requireReturnType'); - -var _requireReturnType2 = _interopRequireDefault(_requireReturnType); - -var _requireTypesAtTop = require('./rules/requireTypesAtTop'); - -var _requireTypesAtTop2 = _interopRequireDefault(_requireTypesAtTop); - -var _requireValidFileAnnotation = require('./rules/requireValidFileAnnotation'); - -var _requireValidFileAnnotation2 = _interopRequireDefault(_requireValidFileAnnotation); - -var _requireVariableType = require('./rules/requireVariableType'); - -var _requireVariableType2 = _interopRequireDefault(_requireVariableType); - -var _semi = require('./rules/semi'); - -var _semi2 = _interopRequireDefault(_semi); - -var _sortKeys = require('./rules/sortKeys'); - -var _sortKeys2 = _interopRequireDefault(_sortKeys); - -var _spaceAfterTypeColon = require('./rules/spaceAfterTypeColon'); - -var _spaceAfterTypeColon2 = _interopRequireDefault(_spaceAfterTypeColon); - -var _spaceBeforeGenericBracket = require('./rules/spaceBeforeGenericBracket'); - -var _spaceBeforeGenericBracket2 = _interopRequireDefault(_spaceBeforeGenericBracket); - -var _spaceBeforeTypeColon = require('./rules/spaceBeforeTypeColon'); - -var _spaceBeforeTypeColon2 = _interopRequireDefault(_spaceBeforeTypeColon); - -var _typeIdMatch = require('./rules/typeIdMatch'); - -var _typeIdMatch2 = _interopRequireDefault(_typeIdMatch); - -var _typeImportStyle = require('./rules/typeImportStyle'); - -var _typeImportStyle2 = _interopRequireDefault(_typeImportStyle); - -var _unionIntersectionSpacing = require('./rules/unionIntersectionSpacing'); - -var _unionIntersectionSpacing2 = _interopRequireDefault(_unionIntersectionSpacing); - -var _useFlowType = require('./rules/useFlowType'); - -var _useFlowType2 = _interopRequireDefault(_useFlowType); - -var _validSyntax = require('./rules/validSyntax'); - -var _validSyntax2 = _interopRequireDefault(_validSyntax); - -var _spreadExactType = require('./rules/spreadExactType'); - -var _spreadExactType2 = _interopRequireDefault(_spreadExactType); - -var _arrowParens = require('./rules/arrowParens'); - -var _arrowParens2 = _interopRequireDefault(_arrowParens); - -var _utilities = require('./utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var rules = { - 'array-style-complex-type': _arrayStyleComplexType2.default, - 'array-style-simple-type': _arrayStyleSimpleType2.default, - 'arrow-parens': _arrowParens2.default, - 'boolean-style': _booleanStyle2.default, - 'define-flow-type': _defineFlowType2.default, - 'delimiter-dangle': _delimiterDangle2.default, - 'generic-spacing': _genericSpacing2.default, - 'newline-after-flow-annotation': _newlineAfterFlowAnnotation2.default, - 'no-dupe-keys': _noDupeKeys2.default, - 'no-existential-type': _noExistentialType2.default, - 'no-flow-fix-me-comments': _noFlowFixMeComments2.default, - 'no-mixed': _noMixed2.default, - 'no-mutable-array': _noMutableArray2.default, - 'no-primitive-constructor-types': _noPrimitiveConstructorTypes2.default, - 'no-types-missing-file-annotation': _noTypesMissingFileAnnotation2.default, - 'no-unused-expressions': _noUnusedExpressions2.default, - 'no-weak-types': _noWeakTypes2.default, - 'object-type-delimiter': _objectTypeDelimiter2.default, - 'require-compound-type-alias': _requireCompoundTypeAlias2.default, - 'require-exact-type': _requireExactType2.default, - 'require-indexer-name': _requireIndexerName2.default, - 'require-inexact-type': _requireInexactType2.default, - 'require-parameter-type': _requireParameterType2.default, - 'require-readonly-react-props': _requireReadonlyReactProps2.default, - 'require-return-type': _requireReturnType2.default, - 'require-types-at-top': _requireTypesAtTop2.default, - 'require-valid-file-annotation': _requireValidFileAnnotation2.default, - 'require-variable-type': _requireVariableType2.default, - semi: _semi2.default, - 'sort-keys': _sortKeys2.default, - 'space-after-type-colon': _spaceAfterTypeColon2.default, - 'space-before-generic-bracket': _spaceBeforeGenericBracket2.default, - 'space-before-type-colon': _spaceBeforeTypeColon2.default, - 'spread-exact-type': _spreadExactType2.default, - 'type-id-match': _typeIdMatch2.default, - 'type-import-style': _typeImportStyle2.default, - 'union-intersection-spacing': _unionIntersectionSpacing2.default, - 'use-flow-type': _useFlowType2.default, - 'valid-syntax': _validSyntax2.default -}; - -exports.default = { - configs: { - recommended: _recommended2.default - }, - rules: _lodash2.default.mapValues(rules, function (rule, key) { - if (key === 'no-types-missing-file-annotation') { - return rule; - } - - return _extends({}, rule, { - create: _lodash2.default.partial(_utilities.checkFlowFileAnnotation, rule.create) - }); - }), - rulesConfig: { - 'boolean-style': 0, - 'define-flow-type': 0, - 'delimiter-dangle': 0, - 'generic-spacing': 0, - 'newline-after-flow-annotation': 0, - 'no-dupe-keys': 0, - 'no-flow-fix-me-comments': 0, - 'no-mixed': 0, - 'no-mutable-array': 0, - 'no-weak-types': 0, - 'object-type-delimiter': 0, - 'require-compound-type-alias': 0, - 'require-exact-type': 0, - 'require-parameter-type': 0, - 'require-readonly-react-props': 0, - 'require-return-type': 0, - 'require-variable-type': 0, - semi: 0, - 'sort-keys': 0, - 'space-after-type-colon': 0, - 'space-before-generic-bracket': 0, - 'space-before-type-colon': 0, - 'spread-exact-type': 0, - 'type-id-match': 0, - 'type-import-style': 0, - 'union-intersection-spacing': 0, - 'use-flow-type': 0, - 'valid-syntax': 0 - } -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/index.js b/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/index.js deleted file mode 100644 index a7dc4e5b..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/index.js +++ /dev/null @@ -1,98 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _isSimpleType = require('./isSimpleType'); - -var _isSimpleType2 = _interopRequireDefault(_isSimpleType); - -var _needWrap = require('./needWrap'); - -var _needWrap2 = _interopRequireDefault(_needWrap); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - enum: ['verbose', 'shorthand'], - type: 'string' -}]; - -var inlineType = function inlineType(type) { - var inlined = type.replace(/\s+/g, ' '); - - if (inlined.length <= 50) { - return inlined; - } else { - return 'Type'; - } -}; - -exports.default = function (defaultConfig, simpleType) { - var create = function create(context) { - var verbose = (context.options[0] || defaultConfig) === 'verbose'; - - return { - // shorthand - ArrayTypeAnnotation(node) { - var rawElementType = context.getSourceCode().getText(node.elementType); - var inlinedType = inlineType(rawElementType); - var wrappedInlinedType = (0, _needWrap2.default)(node.elementType) ? '(' + inlinedType + ')' : inlinedType; - - if ((0, _isSimpleType2.default)(node.elementType) === simpleType && verbose) { - context.report({ - data: { - type: inlinedType, - wrappedType: wrappedInlinedType - }, - fix(fixer) { - return fixer.replaceText(node, 'Array<' + rawElementType + '>'); - }, - message: 'Use "Array<{{ type }}>", not "{{ wrappedType }}[]"', - node - }); - } - }, - - // verbose - GenericTypeAnnotation(node) { - if (node.id.name === 'Array') { - // Don't report on un-parameterized Array annotations. There are valid cases for this, - // but regardless, we should not crash when encountering them. - if (node.typeParameters && node.typeParameters.params.length === 1) { - var elementTypeNode = node.typeParameters.params[0]; - var rawElementType = context.getSourceCode().getText(elementTypeNode); - var inlinedType = inlineType(rawElementType); - var wrappedInlinedType = (0, _needWrap2.default)(elementTypeNode) ? '(' + inlinedType + ')' : inlinedType; - - if ((0, _isSimpleType2.default)(elementTypeNode) === simpleType && !verbose) { - context.report({ - data: { - type: inlinedType, - wrappedType: wrappedInlinedType - }, - fix(fixer) { - if ((0, _needWrap2.default)(elementTypeNode)) { - return fixer.replaceText(node, '(' + rawElementType + ')[]'); - } else { - return fixer.replaceText(node, rawElementType + '[]'); - } - }, - message: 'Use "{{ wrappedType }}[]", not "Array<{{ type }}>"', - node - }); - } - } - } - } - }; - }; - - return { - create, - schema - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/isSimpleType.js b/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/isSimpleType.js deleted file mode 100644 index 43217fe2..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/isSimpleType.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -/** - * Types considered simple: - * - * - primitive types - * - literal types - * - mixed and any types - * - generic types (such as Date, Promise, $Keys, etc.) - * - array type written in shorthand notation - * - * Types not considered simple: - * - * - maybe type - * - function type - * - object type - * - tuple type - * - union and intersection types - * - * Reminder: if you change these semantics, don't forget to modify documentation of `array-style-...` rules - */ - -var simpleTypePatterns = [/^(?:Any|Array|Boolean|Generic|Mixed|Number|String|Void)TypeAnnotation$/, /.+LiteralTypeAnnotation$/]; - -exports.default = function (node) { - return simpleTypePatterns.some(function (pattern) { - return pattern.test(node.type); - }); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/needWrap.js b/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/needWrap.js deleted file mode 100644 index 829b6bc0..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyle/needWrap.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _isSimpleType = require('./isSimpleType'); - -var _isSimpleType2 = _interopRequireDefault(_isSimpleType); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var complexTypesWithoutWrap = ['TupleTypeAnnotation', 'ObjectTypeAnnotation']; - -exports.default = function (node) { - return !(0, _isSimpleType2.default)(node) && !complexTypesWithoutWrap.includes(node.type); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyleComplexType.js b/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyleComplexType.js deleted file mode 100644 index 3c14f125..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyleComplexType.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _arrayStyle = require('./arrayStyle'); - -var _arrayStyle2 = _interopRequireDefault(_arrayStyle); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = (0, _arrayStyle2.default)('verbose', false); -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyleSimpleType.js b/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyleSimpleType.js deleted file mode 100644 index a2b256be..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/arrayStyleSimpleType.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _arrayStyle = require('./arrayStyle'); - -var _arrayStyle2 = _interopRequireDefault(_arrayStyle); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = (0, _arrayStyle2.default)('verbose', true); -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/arrowParens.js b/node_modules/eslint-plugin-flowtype/dist/rules/arrowParens.js deleted file mode 100644 index da22627b..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/arrowParens.js +++ /dev/null @@ -1,160 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var getLocation = function getLocation(node) { - return { - end: node.params[node.params.length - 1].loc.end, - start: node.params[0].loc.start - }; -}; - -var isOpeningParenToken = function isOpeningParenToken(token) { - return token.value === '(' && token.type === 'Punctuator'; -}; - -var isClosingParenToken = function isClosingParenToken(token) { - return token.value === ')' && token.type === 'Punctuator'; -}; - -exports.default = { - create(context) { - var asNeeded = context.options[0] === 'as-needed'; - var requireForBlockBody = asNeeded && context.options[1] && context.options[1].requireForBlockBody === true; - - var sourceCode = context.getSourceCode(); - - // Determines whether a arrow function argument end with `)` - // eslint-disable-next-line complexity - var parens = function parens(node) { - var isAsync = node.async; - var firstTokenOfParam = sourceCode.getFirstToken(node, isAsync ? 1 : 0); - - // Remove the parenthesis around a parameter - var fixParamsWithParenthesis = function fixParamsWithParenthesis(fixer) { - var paramToken = sourceCode.getTokenAfter(firstTokenOfParam); - - /* - * ES8 allows Trailing commas in function parameter lists and calls - * https://github.com/eslint/eslint/issues/8834 - */ - var closingParenToken = sourceCode.getTokenAfter(paramToken, isClosingParenToken); - var asyncToken = isAsync ? sourceCode.getTokenBefore(firstTokenOfParam) : null; - var shouldAddSpaceForAsync = asyncToken && asyncToken.range[1] === firstTokenOfParam.range[0]; - - return fixer.replaceTextRange([firstTokenOfParam.range[0], closingParenToken.range[1]], `${shouldAddSpaceForAsync ? ' ' : ''}${paramToken.value}`); - }; - - // Type parameters without an opening paren is always a parse error, and - // can therefore be safely ignored. - if (node.typeParameters) { - return; - } - - // Similarly, a predicate always requires parens just like a return type - // does, and therefore this case can also be safely ignored. - if (node.predicate) { - return; - } - - // "as-needed", { "requireForBlockBody": true }: x => x - if (requireForBlockBody && node.params.length === 1 && node.params[0].type === 'Identifier' && !node.params[0].typeAnnotation && node.body.type !== 'BlockStatement' && !node.returnType) { - if (isOpeningParenToken(firstTokenOfParam)) { - context.report({ - fix: fixParamsWithParenthesis, - loc: getLocation(node), - messageId: 'unexpectedParensInline', - node - }); - } - - return; - } - - if (requireForBlockBody && node.body.type === 'BlockStatement') { - if (!isOpeningParenToken(firstTokenOfParam)) { - context.report({ - fix(fixer) { - return fixer.replaceText(firstTokenOfParam, `(${firstTokenOfParam.value})`); - }, - loc: getLocation(node), - messageId: 'expectedParensBlock', - node - }); - } - - return; - } - - // "as-needed": x => x - if (asNeeded && node.params.length === 1 && node.params[0].type === 'Identifier' && !node.params[0].typeAnnotation && !node.returnType) { - if (isOpeningParenToken(firstTokenOfParam)) { - context.report({ - fix: fixParamsWithParenthesis, - loc: getLocation(node), - messageId: 'unexpectedParens', - node - }); - } - - return; - } - - if (firstTokenOfParam.type === 'Identifier') { - var after = sourceCode.getTokenAfter(firstTokenOfParam); - - // (x) => x - if (after.value !== ')') { - context.report({ - fix(fixer) { - return fixer.replaceText(firstTokenOfParam, `(${firstTokenOfParam.value})`); - }, - loc: getLocation(node), - messageId: 'expectedParens', - node - }); - } - } - }; - - return { - ArrowFunctionExpression: parens - }; - }, - - meta: { - docs: { - category: 'ECMAScript 6', - description: 'require parentheses around arrow function arguments', - recommended: false, - url: 'https://eslint.org/docs/rules/arrow-parens' - }, - - fixable: 'code', - - messages: { - expectedParens: 'Expected parentheses around arrow function argument.', - expectedParensBlock: 'Expected parentheses around arrow function argument having a body with curly braces.', - - unexpectedParens: 'Unexpected parentheses around single function argument.', - unexpectedParensInline: 'Unexpected parentheses around single function argument having a body with no curly braces.' - }, - - type: 'layout' - }, - - schema: [{ - enum: ['always', 'as-needed'] - }, { - additionalProperties: false, - properties: { - requireForBlockBody: { - default: false, - type: 'boolean' - } - }, - type: 'object' - }] -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/booleanStyle.js b/node_modules/eslint-plugin-flowtype/dist/rules/booleanStyle.js deleted file mode 100644 index 1383fc23..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/booleanStyle.js +++ /dev/null @@ -1,45 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['bool', 'boolean'], - type: 'string' -}]; - -var create = function create(context) { - var longForm = (context.options[0] || 'boolean') === 'boolean'; - - return { - BooleanTypeAnnotation(node) { - var diff = node.end - node.start; - - if (longForm && diff === 4) { - context.report({ - fix(fixer) { - return fixer.replaceText(node, 'boolean'); - }, - message: 'Use "boolean", not "bool"', - node - }); - } - - if (!longForm && diff !== 4) { - context.report({ - fix(fixer) { - return fixer.replaceText(node, 'bool'); - }, - message: 'Use "bool", not "boolean"', - node - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/defineFlowType.js b/node_modules/eslint-plugin-flowtype/dist/rules/defineFlowType.js deleted file mode 100644 index fe343fe4..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/defineFlowType.js +++ /dev/null @@ -1,83 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = []; - -var create = function create(context) { - var globalScope = void 0; - - // do nearly the same thing that eslint does for config globals - // https://github.com/eslint/eslint/blob/v2.0.0/lib/eslint.js#L118-L194 - var makeDefined = function makeDefined(ident) { - var ii = void 0; - - // start from the right since we're going to remove items from the array - for (ii = globalScope.through.length - 1; ii >= 0; ii--) { - var ref = globalScope.through[ii]; - - if (ref.identifier.name === ident.name) { - // use "__defineGeneric" since we don't have a reference to "escope.Variable" - // eslint-disable-next-line no-underscore-dangle - globalScope.__defineGeneric(ident.name, globalScope.set, globalScope.variables); - var variable = globalScope.set.get(ident.name); - - variable.writeable = false; - - // "through" contains all references whose definition cannot be found - // so we need to update references and remove the ones that were added - globalScope.through.splice(ii, 1); - ref.resolved = variable; - variable.references.push(ref); - } - } - }; - - return { - ClassImplements(node) { - makeDefined(node.id); - }, - DeclareInterface(node) { - makeDefined(node.id); - }, - DeclareTypeAlias(node) { - makeDefined(node.id); - }, - GenericTypeAnnotation(node) { - if (node.id.type === 'Identifier') { - makeDefined(node.id); - } else if (node.id.type === 'QualifiedTypeIdentifier') { - var qid = void 0; - - qid = node.id; - do { - qid = qid.qualification; - } while (qid.qualification); - - makeDefined(qid); - } - }, - - // Can be removed once https://github.com/babel/babel-eslint/pull/696 is published - OpaqueType(node) { - if (node.id.type === 'Identifier') { - makeDefined(node.id); - } - }, - Program() { - globalScope = context.getScope(); - }, - TypeParameterDeclaration(node) { - node.params.forEach(function (param) { - makeDefined(param); - }); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/delimiterDangle.js b/node_modules/eslint-plugin-flowtype/dist/rules/delimiterDangle.js deleted file mode 100644 index 7740f665..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/delimiterDangle.js +++ /dev/null @@ -1,151 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - enum: ['always', 'always-multiline', 'only-multiline', 'never'], - type: 'string' -}, { - enum: ['always', 'always-multiline', 'only-multiline', 'never'], - type: 'string' -}, { - enum: ['always', 'always-multiline', 'only-multiline', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var option = context.options[0] || 'never'; - var interfaceOption = context.options[1] || option; - var inexactNotationOption = context.options[2] || 'never'; - var sourceCode = context.getSourceCode(); - - var getNodeOption = function getNodeOption(node) { - if (node.parent.type === 'InterfaceDeclaration') { - return interfaceOption; - } - - if (node.inexact) { - return inexactNotationOption; - } - - return option; - }; - - var reporter = function reporter(node, message, fix) { - return function () { - context.report({ - fix, - message, - node - }); - }; - }; - - var makeReporters = function makeReporters(node, tokenToFix) { - return { - dangle: reporter(node, 'Unexpected trailing delimiter', function (fixer) { - return fixer.replaceText(tokenToFix, ''); - }), - noDangle: reporter(node, 'Missing trailing delimiter', function (fixer) { - return fixer.insertTextAfter(tokenToFix, ','); - }) - }; - }; - - var evaluate = function evaluate(node, lastChildNode) { - if (!lastChildNode && !node.inexact) { - return; - } - - var _sourceCode$getLastTo = sourceCode.getLastTokens(node, 2), - _sourceCode$getLastTo2 = _slicedToArray(_sourceCode$getLastTo, 2), - penultimateToken = _sourceCode$getLastTo2[0], - lastToken = _sourceCode$getLastTo2[1]; - - var isDangling = [';', ','].includes(penultimateToken.value); - var isMultiLine = penultimateToken.loc.start.line !== lastToken.loc.start.line; - - // Use the object node if it's inexact since there's no child node for the inexact notation - var report = makeReporters(node.inexact ? node : lastChildNode, penultimateToken); - var nodeOption = getNodeOption(node); - - if (nodeOption === 'always' && !isDangling) { - report.noDangle(); - - return; - } - - if (nodeOption === 'never' && isDangling) { - report.dangle(); - - return; - } - - if (nodeOption === 'always-multiline' && !isDangling && isMultiLine) { - report.noDangle(); - - return; - } - - if (nodeOption === 'always-multiline' && isDangling && !isMultiLine) { - report.dangle(); - - return; - } - - if (nodeOption === 'only-multiline' && isDangling && !isMultiLine) { - report.dangle(); - } - }; - - // required for reporting the correct position - var getLast = function getLast(property, indexer) { - if (!property) { - return indexer; - } - - if (!indexer) { - return property; - } - - if (property.loc.end.line > indexer.loc.end.line) { - return property; - } - - if (indexer.loc.end.line > property.loc.end.line) { - return indexer; - } - - if (property.loc.end.column > indexer.loc.end.column) { - return property; - } - - return indexer; - }; - - return { - ObjectTypeAnnotation(node) { - evaluate(node, getLast(_lodash2.default.last(node.properties), _lodash2.default.last(node.indexers))); - }, - - TupleTypeAnnotation(node) { - evaluate(node, _lodash2.default.last(node.types)); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/genericSpacing.js b/node_modules/eslint-plugin-flowtype/dist/rules/genericSpacing.js deleted file mode 100644 index 5850b4aa..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/genericSpacing.js +++ /dev/null @@ -1,108 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _utilities = require('../utilities'); - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var sourceCode = context.getSourceCode(); - - var never = (context.options[0] || 'never') === 'never'; - - return { - GenericTypeAnnotation(node) { - var types = node.typeParameters; - - // Promise - // ^^^^^^^^^^^^ GenericTypeAnnotation (with typeParameters) - // ^^^ GenericTypeAnnotation (without typeParameters) - if (!types) { - return; - } - - var _sourceCode$getFirstT = sourceCode.getFirstTokens(types, 2), - _sourceCode$getFirstT2 = _slicedToArray(_sourceCode$getFirstT, 2), - opener = _sourceCode$getFirstT2[0], - firstInnerToken = _sourceCode$getFirstT2[1]; - - var _sourceCode$getLastTo = sourceCode.getLastTokens(types, 2), - _sourceCode$getLastTo2 = _slicedToArray(_sourceCode$getLastTo, 2), - lastInnerToken = _sourceCode$getLastTo2[0], - closer = _sourceCode$getLastTo2[1]; - - var spacesBefore = firstInnerToken.start - opener.end; - var spacesAfter = closer.start - lastInnerToken.end; - - if (never) { - if (spacesBefore) { - if (sourceCode.text[opener.end] !== '\n') { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.stripSpacesAfter(opener, spacesBefore), - message: 'There must be no space at start of "{{name}}" generic type annotation', - node: types - }); - } - } - - if (spacesAfter) { - if (sourceCode.text[closer.start - 1] !== '\n') { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.stripSpacesAfter(lastInnerToken, spacesAfter), - message: 'There must be no space at end of "{{name}}" generic type annotation', - node: types - }); - } - } - } else { - if (spacesBefore > 1) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.stripSpacesAfter(opener, spacesBefore - 1), - message: 'There must be one space at start of "{{name}}" generic type annotation', - node: types - }); - } else if (spacesBefore === 0) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.addSpaceAfter(opener), - message: 'There must be a space at start of "{{name}}" generic type annotation', - node: types - }); - } - - if (spacesAfter > 1) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.stripSpacesAfter(lastInnerToken, spacesAfter - 1), - message: 'There must be one space at end of "{{name}}" generic type annotation', - node: types - }); - } else if (spacesAfter === 0) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.addSpaceAfter(lastInnerToken), - message: 'There must be a space at end of "{{name}}" generic type annotation', - node: types - }); - } - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/newlineAfterFlowAnnotation.js b/node_modules/eslint-plugin-flowtype/dist/rules/newlineAfterFlowAnnotation.js deleted file mode 100644 index 98c23eb7..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/newlineAfterFlowAnnotation.js +++ /dev/null @@ -1,71 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var looksLikeFlowFileAnnotation = function looksLikeFlowFileAnnotation(comment) { - return (/@(?:no)?flo/i.test(comment) - ); -}; - -var schema = [{ - enum: ['always', 'always-windows', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var mode = context.options[0]; - var never = mode === 'never'; - - var newline = mode === 'always-windows' ? '\r\n' : '\n'; - - return { - Program(node) { - var sourceCode = context.getSourceCode(); - - var potentialFlowFileAnnotation = _lodash2.default.find(context.getAllComments(), function (comment) { - return looksLikeFlowFileAnnotation(comment.value); - }); - - if (potentialFlowFileAnnotation) { - var line = potentialFlowFileAnnotation.loc.end.line; - var nextLineIsEmpty = sourceCode.lines[line] === ''; - - if (!never && !nextLineIsEmpty) { - context.report({ - fix: function fix(fixer) { - return fixer.insertTextAfter(potentialFlowFileAnnotation, newline); - }, - message: 'Expected newline after flow annotation', - node - }); - } - - if (never && nextLineIsEmpty) { - context.report({ - fix: function fix(fixer) { - var lineBreak = sourceCode.text[potentialFlowFileAnnotation.end]; - - return fixer.replaceTextRange([potentialFlowFileAnnotation.end, potentialFlowFileAnnotation.end + (lineBreak === '\r' ? 2 : 1)], ''); - }, - message: 'Expected no newline after flow annotation', - node - }); - } - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noDupeKeys.js b/node_modules/eslint-plugin-flowtype/dist/rules/noDupeKeys.js deleted file mode 100644 index 122d13f8..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noDupeKeys.js +++ /dev/null @@ -1,108 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _lodash = require('lodash/'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = []; - -var create = function create(context) { - var report = function report(node) { - context.report({ - loc: node.loc, - message: 'Duplicate property.', - node - }); - }; - - var analizeElement = function analizeElement(element) { - var type = element.type; - - var value = void 0; - - switch (type) { - case 'GenericTypeAnnotation': - value = element.id.name; - break; - case 'ObjectTypeAnnotation': - // eslint-disable-next-line no-use-before-define - value = builObjectStructure(element.properties); - break; - case 'TupleTypeAnnotation': - // eslint-disable-next-line no-use-before-define - value = buildArrayStructure(element.types); - break; - default: - value = element.value; - break; - } - - return { - type, - value - }; - }; - - var buildArrayStructure = function buildArrayStructure(elements) { - return _lodash2.default.map(elements, function (element) { - return analizeElement(element); - }); - }; - - var builObjectStructure = function builObjectStructure(properties) { - return _lodash2.default.map(properties, function (property) { - var element = analizeElement(property.type === 'ObjectTypeSpreadProperty' ? property.argument : property.value); - - return _extends({}, element, { - name: (0, _utilities.getParameterName)(property, context) - }); - }); - }; - - var checkForDuplicates = function checkForDuplicates(node) { - var haystack = []; - - // filter out complex object types, like ObjectTypeSpreadProperty - var identifierNodes = _lodash2.default.filter(node.properties, { type: 'ObjectTypeProperty' }); - - _lodash2.default.forEach(identifierNodes, function (identifierNode) { - var needle = { name: (0, _utilities.getParameterName)(identifierNode, context) }; - - if (identifierNode.value.type === 'FunctionTypeAnnotation') { - needle.args = _lodash2.default.map(identifierNode.value.params, function (param) { - return analizeElement(param.typeAnnotation); - }); - } - - var match = _lodash2.default.some(haystack, function (existingNeedle) { - return _lodash2.default.isEqual(existingNeedle, needle); - }); - - if (match) { - report(identifierNode); - } else { - haystack.push(needle); - } - }); - }; - - return { - ObjectTypeAnnotation: checkForDuplicates - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noExistentialType.js b/node_modules/eslint-plugin-flowtype/dist/rules/noExistentialType.js deleted file mode 100644 index 6116a3d9..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noExistentialType.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -// Support both node types for existential type -// https://github.com/babel/babylon/issues/319 -var reporter = function reporter(context) { - return function (node) { - context.report({ - message: 'Unexpected use of existential type (*).', - node - }); - }; -}; - -var create = function create(context) { - return { - ExistentialTypeParam: reporter(context), - ExistsTypeAnnotation: reporter(context) - }; -}; - -exports.default = { - create -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noFlowFixMeComments.js b/node_modules/eslint-plugin-flowtype/dist/rules/noFlowFixMeComments.js deleted file mode 100644 index dc6552ae..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noFlowFixMeComments.js +++ /dev/null @@ -1,58 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - type: 'string' -}]; - -var message = '$FlowFixMe is treated as `any` and should be fixed.'; - -var isIdentifier = function isIdentifier(node, name) { - return node && node.type === 'Identifier' && node.name.match(name); -}; - -var create = function create(context) { - var allowedPattern = context.options[0] ? new RegExp(context.options[0]) : null; - var extraMessage = allowedPattern ? ' Fix it or match `' + allowedPattern.toString() + '`.' : ''; - - var passesExtraRegex = function passesExtraRegex(value) { - if (!allowedPattern) { - return false; - } - - return value.match(allowedPattern); - }; - - var handleComment = function handleComment(comment) { - var value = comment.value.trim(); - - if (value.match(/\$FlowFixMe/) && !passesExtraRegex(value)) { - context.report(comment, message + extraMessage); - } - }; - - return { - GenericTypeAnnotation(node) { - if (isIdentifier(node.id, /\$FlowFixMe/)) { - context.report({ - message, - node: node.id - }); - } - }, - - Program() { - context.getSourceCode().getAllComments().filter(function (comment) { - return comment.type === 'Block' || comment.type === 'Line'; - }).forEach(handleComment); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noMixed.js b/node_modules/eslint-plugin-flowtype/dist/rules/noMixed.js deleted file mode 100644 index 9e0aa80b..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noMixed.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = []; - -var create = function create(context) { - return { - MixedTypeAnnotation(node) { - context.report({ - message: 'Unexpected use of mixed type', - node - }); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noMutableArray.js b/node_modules/eslint-plugin-flowtype/dist/rules/noMutableArray.js deleted file mode 100644 index 1f7ffc8e..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noMutableArray.js +++ /dev/null @@ -1,73 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = []; - -// const x = []; -var isEmptyArrayLiteral = function isEmptyArrayLiteral(node) { - return _lodash2.default.get(node, 'init.type') === 'ArrayExpression' && _lodash2.default.get(node, 'init.elements.length') === 0; -}; - -// const x = new Array(); const y = Array(); -var isEmptyArrayInstance = function isEmptyArrayInstance(node) { - if (_lodash2.default.get(node, 'init.type') === 'NewExpression' || _lodash2.default.get(node, 'init.type') === 'CallExpression') { - return _lodash2.default.get(node, 'init.callee.name') === 'Array' && _lodash2.default.get(node, 'init.arguments.length') === 0; - } else { - return false; - } -}; - -var isAnnotationOfEmptyArrayInit = function isAnnotationOfEmptyArrayInit(node) { - if (_lodash2.default.has(node, 'parent.parent.parent')) { - var parent = _lodash2.default.get(node, 'parent.parent.parent'); - var isVariableDeclaration = _lodash2.default.get(parent, 'type') === 'VariableDeclarator'; - - return isVariableDeclaration && (isEmptyArrayLiteral(parent) || isEmptyArrayInstance(parent)); - } else { - return false; - } -}; - -var create = function create(context) { - return { - ArrayTypeAnnotation(node) { - if (!isAnnotationOfEmptyArrayInit(node)) { - context.report({ - fix(fixer) { - var rawElementType = context.getSourceCode().getText(node.elementType); - - return fixer.replaceText(node, '$ReadOnlyArray<' + rawElementType + '>'); - }, - message: 'Use "$ReadOnlyArray" instead of array shorthand notation', - node - }); - } - }, - GenericTypeAnnotation(node) { - if (node.id.name === 'Array' && !isAnnotationOfEmptyArrayInit(node)) { - context.report({ - fix(fixer) { - return fixer.replaceText(node.id, '$ReadOnlyArray'); - }, - message: 'Use "$ReadOnlyArray" instead of "Array"', - node - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes.js b/node_modules/eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes.js deleted file mode 100644 index 535498ac..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes.js +++ /dev/null @@ -1,40 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = []; - -var create = function create(context) { - var regex = /^(Boolean|Number|String)$/; - - return { - GenericTypeAnnotation: function GenericTypeAnnotation(node) { - var name = _lodash2.default.get(node, 'id.name'); - - if (regex.test(name)) { - context.report({ - data: { - name - }, - loc: node.loc, - message: 'Unexpected use of {{name}} constructor type.', - node - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation.js b/node_modules/eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation.js deleted file mode 100644 index f5eb116d..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation.js +++ /dev/null @@ -1,59 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../utilities'); - -/** - * Disallows the use for flow types without a valid file annotation. - * Only checks files without a valid flow annotation. - */ - -var schema = []; - -var create = function create(context) { - // Skip flow files - if ((0, _utilities.isFlowFile)(context, false)) { - return {}; - } - - var reporter = function reporter(node, type) { - context.report({ - data: { type }, - message: 'Type {{type}} require valid Flow declaration.', - node - }); - }; - - return { - ExportNamedDeclaration(node) { - if (node.exportKind === 'type') { - reporter(node, 'exports'); - } - }, - ImportDeclaration(node) { - if (node.importKind === 'type') { - reporter(node, 'imports'); - } - if (node.importKind === 'value' && node.specifiers.some(function (specifier) { - return specifier.importKind === 'type'; - })) { - reporter(node, 'imports'); - } - }, - TypeAlias(node) { - reporter(node, 'aliases'); - }, - TypeAnnotation(node) { - reporter(node, 'annotations'); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noUnusedExpressions.js b/node_modules/eslint-plugin-flowtype/dist/rules/noUnusedExpressions.js deleted file mode 100644 index 8566ce41..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noUnusedExpressions.js +++ /dev/null @@ -1,32 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _noUnusedExpressions = require('eslint/lib/rules/no-unused-expressions'); - -var _noUnusedExpressions2 = _interopRequireDefault(_noUnusedExpressions); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var meta = _noUnusedExpressions2.default.meta; // A wrapper around ESLint's core rule no-unused-expressions, additionally ignores type cast -// expressions. - -var create = function create(context) { - var coreChecks = _noUnusedExpressions2.default.create(context); - - return { - ExpressionStatement(node) { - if (node.expression.type !== 'TypeCastExpression') { - coreChecks.ExpressionStatement(node); - } - } - }; -}; - -exports.default = { - create, - meta -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/noWeakTypes.js b/node_modules/eslint-plugin-flowtype/dist/rules/noWeakTypes.js deleted file mode 100644 index efd6dc1a..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/noWeakTypes.js +++ /dev/null @@ -1,77 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - additionalProperties: false, - properties: { - any: { - type: 'boolean' - }, - Function: { - type: 'boolean' - }, - Object: { - type: 'boolean' - } - }, - type: 'object' -}]; - -var reportWeakType = function reportWeakType(context, weakType) { - return function (node) { - context.report({ - data: { weakType }, - message: 'Unexpected use of weak type "{{weakType}}"', - node - }); - }; -}; - -var genericTypeEvaluator = function genericTypeEvaluator(context, _ref) { - var checkFunction = _ref.checkFunction, - checkObject = _ref.checkObject; - - return function (node) { - var name = _lodash2.default.get(node, 'id.name'); - - if (checkFunction && name === 'Function' || checkObject && name === 'Object') { - reportWeakType(context, name)(node); - } - }; -}; - -var create = function create(context) { - var checkAny = _lodash2.default.get(context, 'options[0].any', true) === true; - var checkFunction = _lodash2.default.get(context, 'options[0].Function', true) === true; - var checkObject = _lodash2.default.get(context, 'options[0].Object', true) === true; - - var checks = {}; - - if (checkAny) { - checks.AnyTypeAnnotation = reportWeakType(context, 'any'); - } - - if (checkFunction || checkObject) { - checks.GenericTypeAnnotation = genericTypeEvaluator(context, { - checkFunction, - checkObject - }); - } - - return checks; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/objectTypeDelimiter.js b/node_modules/eslint-plugin-flowtype/dist/rules/objectTypeDelimiter.js deleted file mode 100644 index 4adad663..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/objectTypeDelimiter.js +++ /dev/null @@ -1,72 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -// ported from babel/flow-object-type; original author: Nat Mote -// https://github.com/babel/eslint-plugin-babel/blob/c0a49d25a97feb12c1d07073a0b37317359a5fe5/rules/flow-object-type.js - -var SEMICOLON = { - char: ';', - name: 'semicolon' -}; - -var COMMA = { - char: ',', - name: 'comma' -}; - -var create = function create(context) { - var GOOD = void 0; - var BAD = void 0; - - if (!context.options[0] || context.options[0] === COMMA.name) { - GOOD = COMMA; - BAD = SEMICOLON; - } else { - GOOD = SEMICOLON; - BAD = COMMA; - } - - var requireProperPunctuation = function requireProperPunctuation(node) { - var sourceCode = context.getSourceCode(); - var tokens = sourceCode.getTokens(node); - var lastToken = void 0; - - lastToken = tokens[tokens.length - 1]; - if (lastToken.type !== 'Punctuator' || !(lastToken.value === SEMICOLON.char || lastToken.value === COMMA.char)) { - var parentTokens = sourceCode.getTokens(node.parent); - - lastToken = parentTokens[parentTokens.indexOf(lastToken) + 1]; - } - - if (lastToken.type === 'Punctuator') { - if (lastToken.value === BAD.char) { - context.report({ - fix(fixer) { - return fixer.replaceText(lastToken, GOOD.char); - }, - message: 'Prefer ' + GOOD.name + 's to ' + BAD.name + 's in object and class types', - node: lastToken - }); - } - } - }; - - return { - ObjectTypeCallProperty: requireProperPunctuation, - ObjectTypeIndexer: requireProperPunctuation, - ObjectTypeProperty: requireProperPunctuation - }; -}; - -var schema = [{ - enum: ['semicolon', 'comma'], - type: 'string' -}]; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireCompoundTypeAlias.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireCompoundTypeAlias.js deleted file mode 100644 index 8cecb502..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireCompoundTypeAlias.js +++ /dev/null @@ -1,42 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var always = (context.options[0] || 'always') === 'always'; - - if (always) { - return { - IntersectionTypeAnnotation(node) { - if (node.parent.type !== 'TypeAlias') { - context.report({ - message: 'All intersection types must be declared with named type alias.', - node - }); - } - }, - UnionTypeAnnotation(node) { - if (node.parent.type !== 'TypeAlias') { - context.report({ - message: 'All union types must be declared with named type alias.', - node - }); - } - } - }; - } else { - return {}; - } -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireExactType.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireExactType.js deleted file mode 100644 index 17362295..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireExactType.js +++ /dev/null @@ -1,48 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var always = (context.options[0] || 'always') === 'always'; - - return { - TypeAlias(node) { - var name = node.id.name, - _node$right = node.right, - type = _node$right.type, - exact = _node$right.exact, - indexers = _node$right.indexers; - - - if (type === 'ObjectTypeAnnotation') { - if (always && !exact && indexers.length === 0) { - context.report({ - data: { name }, - message: 'Type identifier \'{{name}}\' must be exact.', - node - }); - } - - if (!always && exact) { - context.report({ - data: { name }, - message: 'Type identifier \'{{name}}\' must not be exact.', - node - }); - } - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireIndexerName.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireIndexerName.js deleted file mode 100644 index 0bb11650..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireIndexerName.js +++ /dev/null @@ -1,42 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../utilities'); - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var always = (context.options[0] || 'always') === 'always'; - - if (always) { - return { - ObjectTypeIndexer(node) { - var id = (0, _utilities.getParameterName)(node, context); - var rawKeyType = context.getSourceCode().getText(node.key); - if (id === null) { - context.report({ - fix(fixer) { - return fixer.replaceText(node.key, 'key: ' + rawKeyType); - }, - message: 'All indexers must be declared with key name.', - node - }); - } - } - }; - } else { - return {}; - } -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireInexactType.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireInexactType.js deleted file mode 100644 index d09575b6..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireInexactType.js +++ /dev/null @@ -1,45 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var always = (context.options[0] || 'always') === 'always'; - - return { - ObjectTypeAnnotation(node) { - var inexact = node.inexact, - exact = node.exact; - - - if (!node.hasOwnProperty('inexact')) { - return; - } - - if (always && !inexact && !exact) { - context.report({ - message: 'Type must be explicit inexact.', - node - }); - } - - if (!always && inexact) { - context.report({ - message: 'Type must not be explicit inexact.', - node - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireParameterType.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireParameterType.js deleted file mode 100644 index 54d8bd7f..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireParameterType.js +++ /dev/null @@ -1,78 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - additionalProperties: false, - properties: { - excludeArrowFunctions: { - enum: [false, true, 'expressionsOnly'] - }, - excludeParameterMatch: { - type: 'string' - } - }, - type: 'object' -}]; - -var create = (0, _utilities.iterateFunctionNodes)(function (context) { - var skipArrows = _lodash2.default.get(context, 'options[0].excludeArrowFunctions'); - var excludeParameterMatch = new RegExp(_lodash2.default.get(context, 'options[0].excludeParameterMatch', 'a^')); - - return function (functionNode) { - // It is save to ignore FunctionTypeAnnotation nodes in this rule. - if (functionNode.type === 'FunctionTypeAnnotation') { - return; - } - - var isArrow = functionNode.type === 'ArrowFunctionExpression'; - var isArrowFunctionExpression = functionNode.expression; - var functionAnnotation = isArrow && _lodash2.default.get(functionNode, 'parent.id.typeAnnotation'); - - if (skipArrows === 'expressionsOnly' && isArrowFunctionExpression || skipArrows === true && isArrow) { - return; - } - - _lodash2.default.forEach(functionNode.params, function (identifierNode) { - var parameterName = (0, _utilities.getParameterName)(identifierNode, context); - - if (excludeParameterMatch.test(parameterName)) { - return; - } - - var typeAnnotation = void 0; - - typeAnnotation = _lodash2.default.get(identifierNode, 'typeAnnotation') || _lodash2.default.get(identifierNode, 'left.typeAnnotation'); - - if (isArrow && functionAnnotation) { - typeAnnotation = true; - } - - if (!typeAnnotation) { - context.report({ - data: { - name: (0, _utilities.quoteName)(parameterName) - }, - message: 'Missing {{name}}parameter type annotation.', - node: identifierNode - }); - } - }); - }; -}); - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireReadonlyReactProps.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireReadonlyReactProps.js deleted file mode 100644 index 141edc7b..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireReadonlyReactProps.js +++ /dev/null @@ -1,166 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = []; - -var reComponentName = /^(Pure)?Component$/; -var reReadOnly = /^\$(ReadOnly|FlowFixMe)$/; - -var isReactComponent = function isReactComponent(node) { - if (!node.superClass) { - return false; - } - - return ( - - // class Foo extends Component { } - // class Foo extends PureComponent { } - node.superClass.type === 'Identifier' && reComponentName.test(node.superClass.name) || - - // class Foo extends React.Component { } - // class Foo extends React.PureComponent { } - node.superClass.type === 'MemberExpression' && node.superClass.object.name === 'React' && reComponentName.test(node.superClass.property.name) - ); -}; - -var create = function create(context) { - var readOnlyTypes = []; - var foundTypes = []; - var reportedFunctionalComponents = []; - - var isReadOnlyClassProp = function isReadOnlyClassProp(node) { - var id = node.superTypeParameters && node.superTypeParameters.params[0].id; - - return id && !reReadOnly.test(id.name) && !readOnlyTypes.includes(id.name) && foundTypes.includes(id.name); - }; - - var isReadOnlyObjectType = function isReadOnlyObjectType(node) { - if (!node || node.type !== 'ObjectTypeAnnotation') { - return false; - } - - // we consider `{||}` to be ReadOnly since it's exact AND has no props - if (node.exact && node.properties.length === 0) { - return true; - } - - // { +foo: ..., +bar: ..., ... } - return node.properties.length > 0 && node.properties.every(function (prop) { - return prop.variance && prop.variance.kind === 'plus'; - }); - }; - - var isReadOnlyType = function isReadOnlyType(node) { - return node.right.id && reReadOnly.test(node.right.id.name) || isReadOnlyObjectType(node.right); - }; - - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = context.getSourceCode().ast.body[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var node = _step.value; - - var idName = void 0; - var typeNode = void 0; - - // type Props = $ReadOnly<{}> - if (node.type === 'TypeAlias') { - idName = node.id.name; - typeNode = node; - - // export type Props = $ReadOnly<{}> - } else if (node.type === 'ExportNamedDeclaration' && node.declaration && node.declaration.type === 'TypeAlias') { - idName = node.declaration.id.name; - typeNode = node.declaration; - } - - if (idName) { - foundTypes.push(idName); - if (isReadOnlyType(typeNode)) { - readOnlyTypes.push(idName); - } - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - return { - - // class components - ClassDeclaration(node) { - if (isReactComponent(node) && isReadOnlyClassProp(node)) { - context.report({ - message: node.superTypeParameters.params[0].id.name + ' must be $ReadOnly', - node - }); - } else if (node.superTypeParameters && node.superTypeParameters.params[0].type === 'ObjectTypeAnnotation' && !isReadOnlyObjectType(node.superTypeParameters.params[0])) { - context.report({ - message: node.id.name + ' class props must be $ReadOnly', - node - }); - } - }, - - // functional components - JSXElement(node) { - var currentNode = node; - var identifier = void 0; - var typeAnnotation = void 0; - - while (currentNode && currentNode.type !== 'FunctionDeclaration') { - currentNode = currentNode.parent; - } - - // functional components can only have 1 param - if (!currentNode || currentNode.params.length !== 1) { - return; - } - - if (currentNode.params[0].type === 'Identifier' && (typeAnnotation = currentNode.params[0].typeAnnotation)) { - if ((identifier = typeAnnotation.typeAnnotation.id) && foundTypes.includes(identifier.name) && !readOnlyTypes.includes(identifier.name) && !reReadOnly.test(identifier.name)) { - if (reportedFunctionalComponents.includes(identifier)) { - return; - } - - context.report({ - message: identifier.name + ' must be $ReadOnly', - node - }); - - reportedFunctionalComponents.push(identifier); - - return; - } - - if (typeAnnotation.typeAnnotation.type === 'ObjectTypeAnnotation' && !isReadOnlyObjectType(typeAnnotation.typeAnnotation)) { - context.report({ - message: currentNode.id.name + ' component props must be $ReadOnly', - node - }); - } - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireReturnType.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireReturnType.js deleted file mode 100644 index b4bb8b9d..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireReturnType.js +++ /dev/null @@ -1,160 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - enum: ['always'], - type: 'string' -}, { - additionalProperties: false, - properties: { - annotateUndefined: { - enum: ['always', 'never', 'ignore', 'always-enforce'], - type: 'string' - }, - excludeArrowFunctions: { - enum: [false, true, 'expressionsOnly'] - }, - excludeMatching: { - items: { - type: 'string' - }, - type: 'array' - }, - includeOnlyMatching: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' -}]; - -var create = function create(context) { - var annotateReturn = (_lodash2.default.get(context, 'options[0]') || 'always') === 'always'; - var annotateUndefined = _lodash2.default.get(context, 'options[1].annotateUndefined') || 'never'; - var skipArrows = _lodash2.default.get(context, 'options[1].excludeArrowFunctions') || false; - - var makeRegExp = function makeRegExp(str) { - return new RegExp(str); - }; - - var excludeMatching = _lodash2.default.get(context, 'options[1].excludeMatching', []).map(makeRegExp); - var includeOnlyMatching = _lodash2.default.get(context, 'options[1].includeOnlyMatching', []).map(makeRegExp); - - var targetNodes = []; - - var registerFunction = function registerFunction(functionNode) { - targetNodes.push({ - functionNode - }); - }; - - var isUndefinedReturnType = function isUndefinedReturnType(returnNode) { - return returnNode.argument === null || returnNode.argument.name === 'undefined' || returnNode.argument.operator === 'void'; - }; - - var getIsReturnTypeAnnotationUndefined = function getIsReturnTypeAnnotationUndefined(targetNode) { - var isReturnTypeAnnotationLiteralUndefined = _lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.id.name') === 'undefined' && _lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.type') === 'GenericTypeAnnotation'; - var isReturnTypeAnnotationVoid = _lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.type') === 'VoidTypeAnnotation'; - var isAsyncReturnTypeAnnotationVoid = _lodash2.default.get(targetNode, 'functionNode.async') && _lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.id.name') === 'Promise' && (_lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.typeParameters.params[0].type') === 'VoidTypeAnnotation' || _lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.typeParameters.params[0].id.name') === 'undefined' && _lodash2.default.get(targetNode, 'functionNode.returnType.typeAnnotation.typeParameters.params[0].type') === 'GenericTypeAnnotation'); - - return isReturnTypeAnnotationLiteralUndefined || isReturnTypeAnnotationVoid || isAsyncReturnTypeAnnotationVoid; - }; - - var shouldFilterNode = function shouldFilterNode(functionNode) { - var isArrow = functionNode.type === 'ArrowFunctionExpression'; - var isMethod = functionNode.parent && functionNode.parent.type === 'MethodDefinition'; - var propertyNodes = ['Property', 'ClassProperty']; - var isProperty = functionNode.parent && propertyNodes.includes(functionNode.parent.type); - var selector = void 0; - - if (isMethod || isProperty) { - selector = 'parent.key.name'; - } else if (isArrow) { - selector = 'parent.id.name'; - } else { - selector = 'id.name'; - } - var identifierName = _lodash2.default.get(functionNode, selector); - - var checkRegExp = function checkRegExp(regex) { - return regex.test(identifierName); - }; - - if (excludeMatching.length && _lodash2.default.some(excludeMatching, checkRegExp)) { - return true; - } - - if (includeOnlyMatching.length && !_lodash2.default.some(includeOnlyMatching, checkRegExp)) { - return true; - } - - return false; - }; - - // eslint-disable-next-line complexity - var evaluateFunction = function evaluateFunction(functionNode) { - var targetNode = targetNodes.pop(); - - if (functionNode !== targetNode.functionNode) { - throw new Error('Mismatch.'); - } - - var isArrow = functionNode.type === 'ArrowFunctionExpression'; - var isArrowFunctionExpression = functionNode.expression; - var isFunctionReturnUndefined = !isArrowFunctionExpression && !functionNode.generator && (!targetNode.returnStatementNode || isUndefinedReturnType(targetNode.returnStatementNode)); - var isReturnTypeAnnotationUndefined = getIsReturnTypeAnnotationUndefined(targetNode); - - if (skipArrows === 'expressionsOnly' && isArrowFunctionExpression || skipArrows === true && isArrow || shouldFilterNode(functionNode)) { - return; - } - - var returnType = functionNode.returnType || isArrow && _lodash2.default.get(functionNode, 'parent.id.typeAnnotation'); - - if (isFunctionReturnUndefined && isReturnTypeAnnotationUndefined && annotateUndefined === 'never') { - context.report(functionNode, 'Must not annotate undefined return type.'); - } else if (isFunctionReturnUndefined && !isReturnTypeAnnotationUndefined && annotateUndefined === 'always') { - context.report(functionNode, 'Must annotate undefined return type.'); - } else if ((annotateUndefined === 'always-enforce' || !isFunctionReturnUndefined && !isReturnTypeAnnotationUndefined) && annotateReturn && !returnType && !shouldFilterNode(functionNode)) { - context.report(functionNode, 'Missing return type annotation.'); - } - }; - - var evaluateNoise = function evaluateNoise() { - targetNodes.pop(); - }; - - return { - ArrowFunctionExpression: registerFunction, - 'ArrowFunctionExpression:exit': evaluateFunction, - ClassDeclaration: registerFunction, - 'ClassDeclaration:exit': evaluateNoise, - ClassExpression: registerFunction, - 'ClassExpression:exit': evaluateNoise, - FunctionDeclaration: registerFunction, - 'FunctionDeclaration:exit': evaluateFunction, - FunctionExpression: registerFunction, - 'FunctionExpression:exit': evaluateFunction, - ReturnStatement: function ReturnStatement(node) { - if (targetNodes.length) { - targetNodes[targetNodes.length - 1].returnStatementNode = node; - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireTypesAtTop.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireTypesAtTop.js deleted file mode 100644 index acf204a9..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireTypesAtTop.js +++ /dev/null @@ -1,134 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var always = (context.options[0] || 'always') === 'always'; - - if (always) { - var sourceCode = context.getSourceCode(); - - // nodes representing type and import declarations - var ignoredNodes = [ - // import ... - function (node) { - return node.type === 'ImportDeclaration'; - }, - - // export type Foo = ... - // export opaque type Foo = ... - // export type Foo from ... - // export opaque type Foo from ... - function (node) { - return node.type === 'ExportNamedDeclaration' && node.exportKind === 'type'; - }, - - // type Foo = ... - function (node) { - return node.type === 'TypeAlias'; - }, - - // opaque type Foo = ... - function (node) { - return node.type === 'OpaqueType'; - }]; - - var isIgnoredNode = function isIgnoredNode(node) { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = ignoredNodes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var predicate = _step.value; - - if (predicate(node)) { - return true; - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - return false; - }; - - var regularCodeStartRange = void 0; - - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = sourceCode.ast.body[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var node = _step2.value; - - if (!isIgnoredNode(node)) { - regularCodeStartRange = node.range; - break; - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - if (!_lodash2.default.isArray(regularCodeStartRange)) { - // a source with only ignored nodes - return {}; - } - - return { - 'TypeAlias, OpaqueType'(node) { - if (node.range[0] > regularCodeStartRange[0]) { - context.report({ - message: 'All type declaration should be at the top of the file, after any import declarations.', - node - }); - } - } - }; - } else { - return {}; - } -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation.js deleted file mode 100644 index 014cb28a..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation.js +++ /dev/null @@ -1,146 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var defaults = { - annotationStyle: 'none', - strict: false -}; - -var looksLikeFlowFileAnnotation = function looksLikeFlowFileAnnotation(comment) { - return (/@(?:no)?flo/i.test(comment) - ); -}; - -var isValidAnnotationStyle = function isValidAnnotationStyle(node, style) { - if (style === 'none') { - return true; - } - - return style === node.type.toLowerCase(); -}; - -var checkAnnotationSpelling = function checkAnnotationSpelling(comment) { - return (/@[a-z]+\b/.test(comment) && (0, _utilities.fuzzyStringMatch)(comment.replace(/no/i, ''), '@flow', 0.2) - ); -}; - -var isFlowStrict = function isFlowStrict(comment) { - return (/^@flow\sstrict\b/.test(comment) - ); -}; - -var noFlowAnnotation = function noFlowAnnotation(comment) { - return (/^@noflow\b/.test(comment) - ); -}; - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}, { - additionalProperties: false, - properties: { - annotationStyle: { - enum: ['none', 'line', 'block'], - type: 'string' - }, - strict: { - enum: [true, false], - type: 'boolean' - } - }, - type: 'object' -}]; - -var create = function create(context) { - var always = context.options[0] === 'always'; - var style = _lodash2.default.get(context, 'options[1].annotationStyle', defaults.annotationStyle); - var flowStrict = _lodash2.default.get(context, 'options[1].strict', defaults.strict); - - return { - Program(node) { - var firstToken = node.tokens[0]; - var addAnnotation = function addAnnotation() { - return function (fixer) { - var annotation = void 0; - if (flowStrict) { - annotation = ['line', 'none'].includes(style) ? '// @flow strict\n' : '/* @flow strict */\n'; - } else { - annotation = ['line', 'none'].includes(style) ? '// @flow\n' : '/* @flow */\n'; - } - - return fixer.replaceTextRange([node.start, node.start], annotation); - }; - }; - - var addStrictAnnotation = function addStrictAnnotation() { - return function (fixer) { - var annotation = ['line', 'none'].includes(style) ? '// @flow strict\n' : '/* @flow strict */\n'; - - return fixer.replaceTextRange([node.start, node.range[0]], annotation); - }; - }; - - var potentialFlowFileAnnotation = _lodash2.default.find(context.getAllComments(), function (comment) { - return looksLikeFlowFileAnnotation(comment.value); - }); - - if (potentialFlowFileAnnotation) { - if (firstToken && firstToken.start < potentialFlowFileAnnotation.start) { - context.report(potentialFlowFileAnnotation, 'Flow file annotation not at the top of the file.'); - } - var annotationValue = potentialFlowFileAnnotation.value.trim(); - if ((0, _utilities.isFlowFileAnnotation)(annotationValue)) { - if (!isValidAnnotationStyle(potentialFlowFileAnnotation, style)) { - var annotation = style === 'line' ? '// ' + annotationValue : '/* ' + annotationValue + ' */'; - - context.report({ - fix: function fix(fixer) { - return fixer.replaceTextRange([potentialFlowFileAnnotation.start, potentialFlowFileAnnotation.end], annotation); - }, - message: 'Flow file annotation style must be `' + annotation + '`', - node: potentialFlowFileAnnotation - }); - } - if (!noFlowAnnotation(annotationValue) && flowStrict) { - if (!isFlowStrict(annotationValue)) { - var str = style === 'line' ? '`// @flow strict`' : '`/* @flow strict */`'; - context.report({ - fix: addStrictAnnotation(), - message: 'Strict Flow file annotation is required, should be ' + str, - node - }); - } - } - } else if (checkAnnotationSpelling(annotationValue)) { - context.report(potentialFlowFileAnnotation, 'Misspelled or malformed Flow file annotation.'); - } else { - context.report(potentialFlowFileAnnotation, 'Malformed Flow file annotation.'); - } - } else if (always) { - context.report({ - fix: addAnnotation(), - message: 'Flow file annotation is missing.', - node - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/requireVariableType.js b/node_modules/eslint-plugin-flowtype/dist/rules/requireVariableType.js deleted file mode 100644 index 726cf858..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/requireVariableType.js +++ /dev/null @@ -1,86 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - additionalProperties: false, - properties: { - excludeVariableMatch: { - type: 'string' - }, - excludeVariableTypes: { - additionalProperties: false, - properties: { - const: { - type: 'boolean' - }, - let: { - type: 'boolean' - }, - var: { - type: 'boolean' - } - }, - type: 'object' - } - }, - type: 'object' -}]; - -var create = function create(context) { - var checkThisFile = !_lodash2.default.get(context, 'settings.flowtype.onlyFilesWithFlowAnnotation') || (0, _utilities.isFlowFile)(context); - - if (!checkThisFile) { - return function () {}; - } - - var excludeVariableMatch = new RegExp(_lodash2.default.get(context, 'options[0].excludeVariableMatch', 'a^')); - var excludeVariableTypes = _lodash2.default.get(context, 'options[0].excludeVariableTypes', {}); - - return { - VariableDeclaration: function VariableDeclaration(variableDeclaration) { - var variableType = _lodash2.default.get(variableDeclaration, 'kind'); - - if (_lodash2.default.get(excludeVariableTypes, variableType)) { - return; - } - - _lodash2.default.forEach(variableDeclaration.declarations, function (variableDeclarator) { - var identifierNode = _lodash2.default.get(variableDeclarator, 'id'); - var identifierName = _lodash2.default.get(identifierNode, 'name'); - - if (excludeVariableMatch.test(identifierName)) { - return; - } - - var typeAnnotation = _lodash2.default.get(identifierNode, 'typeAnnotation'); - - if (!typeAnnotation) { - context.report({ - data: { - name: (0, _utilities.quoteName)(identifierName) - }, - message: 'Missing {{name}}variable type annotation.', - node: identifierNode - }); - } - }); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/semi.js b/node_modules/eslint-plugin-flowtype/dist/rules/semi.js deleted file mode 100644 index bed1f3ec..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/semi.js +++ /dev/null @@ -1,71 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var never = (context.options[0] || 'always') === 'never'; - var sourceCode = context.getSourceCode(); - - var report = function report(node, missing) { - var lastToken = sourceCode.getLastToken(node); - var fix = void 0; - var message = void 0; - var loc = lastToken.loc; - - - if (missing) { - message = 'Missing semicolon.'; - loc = loc.end; - fix = function fix(fixer) { - return fixer.insertTextAfter(lastToken, ';'); - }; - } else { - message = 'Extra semicolon.'; - loc = loc.start; - fix = function fix(fixer) { - return fixer.remove(lastToken); - }; - } - - context.report({ - fix, - loc, - message, - node - }); - }; - - var isSemicolon = function isSemicolon(token) { - return token.type === 'Punctuator' && token.value === ';'; - }; - - var checkForSemicolon = function checkForSemicolon(node) { - var lastToken = sourceCode.getLastToken(node); - var isLastTokenSemicolon = isSemicolon(lastToken); - - if (never && isLastTokenSemicolon) { - report(node, false); - } - - if (!never && !isLastTokenSemicolon) { - report(node, true); - } - }; - - return { - OpaqueType: checkForSemicolon, - TypeAlias: checkForSemicolon - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/sortKeys.js b/node_modules/eslint-plugin-flowtype/dist/rules/sortKeys.js deleted file mode 100644 index 3efd5cfd..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/sortKeys.js +++ /dev/null @@ -1,259 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } - -var defaults = { - caseSensitive: true, - natural: false -}; - -var schema = [{ - enum: ['asc', 'desc'], - type: 'string' -}, { - additionalProperties: false, - properties: { - caseSensitive: { - type: 'boolean' - }, - natural: { - type: 'boolean' - } - }, - type: 'object' -}]; - -/** - * Functions to compare the order of two strings - * - * Based on a similar function from eslint's sort-keys rule. - * https://github.com/eslint/eslint/blob/master/lib/rules/sort-keys.js - * - * @private - */ -var isValidOrders = { - asc(str1, str2) { - return str1 <= str2; - }, - ascI(str1, str2) { - return str1.toLowerCase() <= str2.toLowerCase(); - }, - ascIN(str1, str2) { - return isValidOrders.naturalCompare(str1.toLowerCase(), str2.toLowerCase()) <= 0; - }, - ascN(str1, str2) { - return isValidOrders.naturalCompare(str1, str2) <= 0; - }, - desc(str1, str2) { - return isValidOrders.asc(str2, str1); - }, - descI(str1, str2) { - return isValidOrders.ascI(str2, str1); - }, - descIN(str1, str2) { - return isValidOrders.ascIN(str2, str1); - }, - descN(str1, str2) { - return isValidOrders.ascN(str2, str1); - }, - naturalCompare(str1, str2) { - return str1.localeCompare(str2, 'en-US', { numeric: true }); - } -}; - -var generateOrderedList = function generateOrderedList(context, sort, properties) { - var source = context.getSourceCode(); - - var items = properties.map(function (property) { - var name = (0, _utilities.getParameterName)(property, context); - - var commentsBefore = source.getCommentsBefore(property); - var startIndex = commentsBefore.length > 0 ? commentsBefore[0].start : property.start; - - if (property.type === 'ObjectTypeSpreadProperty' || !property.value) { - // NOTE: It could but currently does not fix recursive generic type arguments in GenericTypeAnnotation within ObjectTypeSpreadProperty. - - // Maintain everything between the start of property including leading comments and the nextPunctuator `,` or `}`: - var nextPunctuator = source.getTokenAfter(property, { - filter: function filter(token) { - return token.type === 'Punctuator'; - } - }); - var beforePunctuator = source.getTokenBefore(nextPunctuator, { - includeComments: true - }); - var text = source.getText().substring(startIndex, beforePunctuator.end); - - return [property, text]; - } - - var colonToken = source.getTokenBefore(property.value, { - filter: function filter(token) { - return token.value === ':'; - } - }); - - // Preserve all code until the colon verbatim: - var key = source.getText().substring(startIndex, colonToken.start); - var value = void 0; - - if (property.value.type === 'ObjectTypeAnnotation') { - // eslint-disable-next-line no-use-before-define - value = ' ' + generateFix(property.value, context, sort); - } else { - // NOTE: It could but currently does not fix recursive generic type arguments in GenericTypeAnnotation. - - // Maintain everything between the `:` and the next Punctuator `,` or `}`: - var _nextPunctuator = source.getTokenAfter(property, { - filter: function filter(token) { - return token.type === 'Punctuator'; - } - }); - var _beforePunctuator = source.getTokenBefore(_nextPunctuator, { - includeComments: true - }); - var _text = source.getText().substring(colonToken.end, _beforePunctuator.end); - - value = _text; - } - - return [property, name, key, value]; - }); - - var itemGroups = [[]]; - var itemGroupIndex = 0; - items.forEach(function (item) { - if (item[0].type === 'ObjectTypeSpreadProperty') { - ++itemGroupIndex; - itemGroups[itemGroupIndex] = [item]; - ++itemGroupIndex; - itemGroups[itemGroupIndex] = []; - } else { - itemGroups[itemGroupIndex].push(item); - } - }); - - var orderedList = []; - itemGroups.forEach(function (itemGroup) { - if (itemGroup[0] && itemGroup[0].type !== 'ObjectTypeSpreadProperty') { - itemGroup.sort(function (first, second) { - return sort(first[1], second[1]) ? -1 : 1; - }); - } - orderedList.push.apply(orderedList, _toConsumableArray(itemGroup.map(function (item) { - if (item.length === 2) { - return item[1]; - } - - return item[2] + ':' + item[3]; - }))); - }); - - return orderedList; -}; - -var generateFix = function generateFix(node, context, sort) { - // this could be done much more cleanly in ESLint >=4 - // as we can apply multiple fixes. That also means we can - // maintain code style in a much nicer way - var nodeText = void 0; - var newTypes = generateOrderedList(context, sort, node.properties); - var source = context.getSourceCode(node); - - var originalSubstring = source.getText(node); - - nodeText = originalSubstring; - - node.properties.forEach(function (property, index) { - var nextPunctuator = source.getTokenAfter(property, { - filter: function filter(token) { - return token.type === 'Punctuator'; - } - }); - var beforePunctuator = source.getTokenBefore(nextPunctuator, { - includeComments: true - }); - var commentsBefore = source.getCommentsBefore(property); - var startIndex = commentsBefore.length > 0 ? commentsBefore[0].start : property.start; - var subString = source.getText().substring(startIndex, beforePunctuator.end); - - nodeText = nodeText.replace(subString, '$' + index); - }); - - newTypes.forEach(function (item, index) { - nodeText = nodeText.replace('$' + index, item); - }); - - return nodeText; -}; - -var create = function create(context) { - var order = _lodash2.default.get(context, ['options', 0], 'asc'); - - var _$get = _lodash2.default.get(context, ['options', 1], defaults), - natural = _$get.natural, - caseSensitive = _$get.caseSensitive; - - var insensitive = caseSensitive === false; - - var prev = void 0; - var checkKeyOrder = function checkKeyOrder(node) { - prev = null; - - _lodash2.default.forEach(node.properties, function (identifierNode) { - var current = (0, _utilities.getParameterName)(identifierNode, context); - var last = prev; - - // keep track of the last token - prev = current || last; - - if (!last || !current) { - return; - } - - var isValidOrder = isValidOrders[order + (insensitive ? 'I' : '') + (natural ? 'N' : '')]; - - if (isValidOrder(last, current) === false) { - context.report({ - data: { - current, - insensitive: insensitive ? 'insensitive ' : '', - last, - natural: natural ? 'natural ' : '', - order - }, - fix(fixer) { - var nodeText = generateFix(node, context, isValidOrder); - - return fixer.replaceText(node, nodeText); - }, - loc: identifierNode.loc, - message: 'Expected type annotations to be in {{natural}}{{insensitive}}{{order}}ending order. "{{current}}" should be before "{{last}}".', - node: identifierNode - }); - } - }); - }; - - return { - ObjectTypeAnnotation: checkKeyOrder - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon.js b/node_modules/eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon.js deleted file mode 100644 index 0c8f8b92..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _typeColonSpacing = require('./typeColonSpacing'); - -var _typeColonSpacing2 = _interopRequireDefault(_typeColonSpacing); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}, { - additionalProperties: false, - properties: { - allowLineBreak: { - type: 'boolean' - } - }, - type: 'object' -}]; - -var create = function create(context) { - return (0, _typeColonSpacing2.default)('after', context, { - allowLineBreak: _lodash2.default.get(context, ['options', '1', 'allowLineBreak'], false), - always: _lodash2.default.get(context, ['options', '0'], 'always') === 'always' - }); -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket.js b/node_modules/eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket.js deleted file mode 100644 index 3a741f5c..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket.js +++ /dev/null @@ -1,64 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../utilities'); - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var never = (context.options[0] || 'never') === 'never'; - - return { - GenericTypeAnnotation(node) { - var types = node.typeParameters; - - // Promise - // ^^^^^^^^^^^^ GenericTypeAnnotation (with typeParameters) - // ^^^ GenericTypeAnnotation (without typeParameters) - if (!types) { - return; - } - - var spaceBefore = types.start - node.id.end; - - if (never && spaceBefore) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.stripSpacesAfter(node.id, spaceBefore), - message: 'There must be no space before "{{name}}" generic type annotation bracket', - node - }); - } - - if (!never && !spaceBefore) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.addSpaceAfter(node.id), - message: 'There must be a space before "{{name}}" generic type annotation bracket', - node - }); - } - - if (!never && spaceBefore > 1) { - context.report({ - data: { name: node.id.name }, - fix: _utilities.spacingFixers.stripSpacesAfter(node.id, spaceBefore - 1), - message: 'There must be one space before "{{name}}" generic type annotation bracket', - node - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon.js b/node_modules/eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon.js deleted file mode 100644 index d23e1f45..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon.js +++ /dev/null @@ -1,28 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _typeColonSpacing = require('./typeColonSpacing'); - -var _typeColonSpacing2 = _interopRequireDefault(_typeColonSpacing); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - return (0, _typeColonSpacing2.default)('before', context, { - always: context.options[0] === 'always' - }); -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/spreadExactType.js b/node_modules/eslint-plugin-flowtype/dist/rules/spreadExactType.js deleted file mode 100644 index 8bc9ee5a..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/spreadExactType.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - return { - ObjectTypeAnnotation(node) { - var properties = node.properties; - - - properties.forEach(function (property) { - var type = property.type; - - if (type === 'ObjectTypeSpreadProperty') { - var _property$argument = property.argument, - argumentType = _property$argument.type, - argumentId = _property$argument.id; - - if (argumentType !== 'GenericTypeAnnotation' || argumentId.name !== '$Exact') { - context.report({ - message: 'Use $Exact to make type spreading safe.', - node - }); - } - } - }); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions.js deleted file mode 100644 index 346130c4..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions.js +++ /dev/null @@ -1,32 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../../utilities'); - -var _evaluateTypical = require('./evaluateTypical'); - -var _evaluateTypical2 = _interopRequireDefault(_evaluateTypical); - -var _evaluateReturnType = require('./evaluateReturnType'); - -var _evaluateReturnType2 = _interopRequireDefault(_evaluateReturnType); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = (0, _utilities.iterateFunctionNodes)(function (context, report) { - var checkParam = (0, _evaluateTypical2.default)(context, report, 'parameter'); - var checkReturnType = (0, _evaluateReturnType2.default)(context, report); - - return function (functionNode) { - _lodash2.default.forEach(functionNode.params, checkParam); - checkReturnType(functionNode); - }; -}); -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer.js deleted file mode 100644 index 4c6a4907..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../../utilities'); - -exports.default = function (context, report) { - var sourceCode = context.getSourceCode(); - - return function (objectTypeIndexer) { - // type X = { [a: b]: c } - // ^ - report({ - colon: (0, _utilities.getTokenBeforeParens)(sourceCode, objectTypeIndexer.key), - node: objectTypeIndexer - }); - - // type X = { [a: b]: c } - // ^ - report({ - colon: sourceCode.getTokenAfter((0, _utilities.getTokenAfterParens)(sourceCode, objectTypeIndexer.key)), - node: objectTypeIndexer - }); - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty.js deleted file mode 100644 index 949439ef..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty.js +++ /dev/null @@ -1,51 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../../utilities'); - -var getColon = function getColon(context, objectTypeProperty) { - // eslint-disable-next-line init-declarations - var tokenIndex = 1; - - if (objectTypeProperty.optional) { - tokenIndex++; - } - - if (objectTypeProperty.static) { - tokenIndex++; - } - - if (objectTypeProperty.variance) { - tokenIndex++; - } - - return context.getSourceCode().getFirstToken(objectTypeProperty, tokenIndex); -}; - -// 1) type X = { foo(): A; } -// 2) type X = { foo: () => A; } -// the above have identical ASTs (save for their ranges) -// case 1 doesn't have a type annotation colon and should be ignored -var isShortPropertyFunction = function isShortPropertyFunction(objectTypeProperty) { - return objectTypeProperty.value.type === 'FunctionTypeAnnotation' && objectTypeProperty.start === objectTypeProperty.value.start; -}; - -exports.default = function (context, report) { - return function (objectTypeProperty) { - if (isShortPropertyFunction(objectTypeProperty)) { - // potential difference: not checked in before - return; - } - - report({ - colon: getColon(context, objectTypeProperty), - name: (0, _utilities.quoteName)((0, _utilities.getParameterName)(objectTypeProperty, context)), - node: objectTypeProperty - }); - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType.js deleted file mode 100644 index d6ddd08e..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports.default = function (context, report) { - var sourceCode = context.getSourceCode(); - - return function (functionNode) { - // skip FunctionTypeAnnotation, possibly another rule as it's an arrow, not a colon? - // (foo: number) => string - // ^^^^ - if (functionNode.returnType && functionNode.type !== 'FunctionTypeAnnotation') { - report({ - colon: sourceCode.getFirstToken(functionNode.returnType), - node: functionNode, - type: 'return type' - }); - } - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression.js deleted file mode 100644 index e05223e1..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports.default = function (context, report) { - var sourceCode = context.getSourceCode(); - - return function (typeCastExpression) { - report({ - colon: sourceCode.getFirstToken(typeCastExpression.typeAnnotation), - node: typeCastExpression, - type: 'type cast' - }); - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical.js deleted file mode 100644 index 5cbb3db5..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical.js +++ /dev/null @@ -1,40 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (context, report, typeForMessage) { - var sourceCode = context.getSourceCode(); - - var getColon = function getColon(node, typeAnnotation) { - if (node.type === 'FunctionTypeParam') { - return sourceCode.getFirstToken(node, node.optional ? 2 : 1); - } else { - return sourceCode.getFirstToken(typeAnnotation); - } - }; - - return function (node) { - var typeAnnotation = _lodash2.default.get(node, 'typeAnnotation') || _lodash2.default.get(node, 'left.typeAnnotation'); - - if (typeAnnotation) { - report({ - colon: getColon(node, typeAnnotation), - name: (0, _utilities.quoteName)((0, _utilities.getParameterName)(node, context)), - node, - type: typeForMessage + ' type annotation' - }); - } - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateVariables.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateVariables.js deleted file mode 100644 index 2a7b74ae..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateVariables.js +++ /dev/null @@ -1,36 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (context, report) { - var sourceCode = context.getSourceCode(); - - return function (node) { - var declarations = _lodash2.default.get(node, 'declarations', []); - - _lodash2.default.forEach(declarations, function (leaf) { - var typeAnnotation = _lodash2.default.get(leaf, 'id.typeAnnotation'); - - if (typeAnnotation) { - report({ - colon: sourceCode.getFirstToken(typeAnnotation), - name: (0, _utilities.quoteName)((0, _utilities.getParameterName)(leaf, context)), - node: leaf, - type: node.kind + ' type annotation' - }); - } - }); - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/index.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/index.js deleted file mode 100644 index 91e2874d..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/index.js +++ /dev/null @@ -1,51 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _reporter = require('./reporter'); - -var _reporter2 = _interopRequireDefault(_reporter); - -var _evaluateObjectTypeIndexer = require('./evaluateObjectTypeIndexer'); - -var _evaluateObjectTypeIndexer2 = _interopRequireDefault(_evaluateObjectTypeIndexer); - -var _evaluateObjectTypeProperty = require('./evaluateObjectTypeProperty'); - -var _evaluateObjectTypeProperty2 = _interopRequireDefault(_evaluateObjectTypeProperty); - -var _evaluateTypeCastExpression = require('./evaluateTypeCastExpression'); - -var _evaluateTypeCastExpression2 = _interopRequireDefault(_evaluateTypeCastExpression); - -var _evaluateTypical = require('./evaluateTypical'); - -var _evaluateTypical2 = _interopRequireDefault(_evaluateTypical); - -var _evaluateFunctions = require('./evaluateFunctions'); - -var _evaluateFunctions2 = _interopRequireDefault(_evaluateFunctions); - -var _evaluateVariables = require('./evaluateVariables'); - -var _evaluateVariables2 = _interopRequireDefault(_evaluateVariables); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (direction, context, options) { - var report = (0, _reporter2.default)(direction, context, options); - - return _extends({}, (0, _evaluateFunctions2.default)(context, report), { - ClassProperty: (0, _evaluateTypical2.default)(context, report, 'class property'), - ObjectTypeIndexer: (0, _evaluateObjectTypeIndexer2.default)(context, report), - ObjectTypeProperty: (0, _evaluateObjectTypeProperty2.default)(context, report), - TypeCastExpression: (0, _evaluateTypeCastExpression2.default)(context, report), - VariableDeclaration: (0, _evaluateVariables2.default)(context, report) - }); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter.js deleted file mode 100644 index ae3f0aa6..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter.js +++ /dev/null @@ -1,100 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../../utilities'); - -var hasLineBreak = function hasLineBreak(direction, colon, context) { - var sourceCode = context.getSourceCode(); - - if (direction === 'before') { - return colon.loc.start.line !== sourceCode.getTokenBefore(colon).loc.end.line; - } else { - return sourceCode.getTokenAfter(colon).loc.start.line !== colon.loc.end.line; - } -}; - -var getSpaces = function getSpaces(direction, colon, context) { - var sourceCode = context.getSourceCode(); - - if (direction === 'before') { - return colon.start - sourceCode.getTokenBefore(colon).end; - } else { - return sourceCode.getTokenAfter(colon).start - colon.end; - } -}; - -exports.default = function (direction, context, _ref) { - var always = _ref.always, - allowLineBreak = _ref.allowLineBreak; - - return function (_ref2) { - var colon = _ref2.colon, - node = _ref2.node, - _ref2$name = _ref2.name, - name = _ref2$name === undefined ? '' : _ref2$name, - _ref2$type = _ref2.type, - type = _ref2$type === undefined ? 'type annotation' : _ref2$type; - - var lineBreak = void 0; - var spaces = void 0; - - // Support optional names - // type X = { [string]: a } - // type X = string => string - if (!colon || colon.value !== ':') { - return; - } - - var data = { - direction, - name, - type - }; - - if (hasLineBreak(direction, colon, context)) { - if (allowLineBreak) { - spaces = 1; - } else { - lineBreak = true; - spaces = getSpaces(direction, colon, context); - } - } else { - spaces = getSpaces(direction, colon, context); - } - - if (always && lineBreak) { - context.report({ - data, - fix: _utilities.spacingFixers.replaceWithSpace(direction, colon, spaces), - message: 'There must not be a line break {{direction}} {{name}}{{type}} colon.', - node - }); - } else if (always && spaces > 1) { - context.report({ - data, - fix: _utilities.spacingFixers.stripSpaces(direction, colon, spaces - 1), - message: 'There must be 1 space {{direction}} {{name}}{{type}} colon.', - node - }); - } else if (always && spaces === 0) { - context.report({ - data, - fix: _utilities.spacingFixers.addSpace(direction, colon), - message: 'There must be a space {{direction}} {{name}}{{type}} colon.', - node - }); - } else if (!always && spaces > 0) { - context.report({ - data, - fix: _utilities.spacingFixers.stripSpaces(direction, colon, spaces), - message: 'There must be no space {{direction}} {{name}}{{type}} colon.', - node - }); - } - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeIdMatch.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeIdMatch.js deleted file mode 100644 index adc447de..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeIdMatch.js +++ /dev/null @@ -1,31 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - type: 'string' -}]; - -var create = function create(context) { - var pattern = new RegExp(context.options[0] || '^([A-Z][a-z0-9]*)+Type$'); - - return { - TypeAlias(typeAliasNode) { - var typeIdentifierName = typeAliasNode.id.name; - - if (!pattern.test(typeIdentifierName)) { - context.report(typeAliasNode, 'Type identifier \'{{name}}\' does not match pattern \'{{pattern}}\'.', { - name: typeIdentifierName, - pattern: pattern.toString() - }); - } - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/typeImportStyle.js b/node_modules/eslint-plugin-flowtype/dist/rules/typeImportStyle.js deleted file mode 100644 index 4016469e..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/typeImportStyle.js +++ /dev/null @@ -1,89 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = [{ - enum: ['declaration', 'identifier'], - type: 'string' -}, { - additionalProperties: false, - properties: { - ignoreTypeDefault: { - type: 'boolean' - } - }, - type: 'object' -}]; - -var create = function create(context) { - if (context.options[0] === 'declaration') { - return { - ImportDeclaration(node) { - if (node.importKind !== 'type') { - node.specifiers.forEach(function (specifier) { - if (specifier.importKind === 'type') { - context.report({ - message: 'Unexpected type import', - node - }); - } - }); - } - } - }; - } else { - // Default to 'identifier' - var ignoreTypeDefault = context.options[1] && context.options[1].ignoreTypeDefault; - var isInsideDeclareModule = false; - - return { - DeclareModule() { - isInsideDeclareModule = true; - }, - 'DeclareModule:exit'() { - isInsideDeclareModule = false; - }, - ImportDeclaration(node) { - if (node.importKind !== 'type') { - return; - } - - // type specifiers are not allowed inside module declarations: - // https://github.com/facebook/flow/issues/7609 - if (isInsideDeclareModule) { - return; - } - - if (ignoreTypeDefault && node.specifiers[0] && node.specifiers[0].type === 'ImportDefaultSpecifier') { - return; - } - - context.report({ - fix(fixer) { - var imports = node.specifiers.map(function (specifier) { - if (specifier.type === 'ImportDefaultSpecifier') { - return 'type default as ' + specifier.local.name; - } else if (specifier.imported.name === specifier.local.name) { - return 'type ' + specifier.local.name; - } else { - return 'type ' + specifier.imported.name + ' as ' + specifier.local.name; - } - }); - var source = node.source.value; - - return fixer.replaceText(node, 'import {' + imports.join(', ') + '} from \'' + source + '\';'); - }, - message: 'Unexpected "import type"', - node - }); - } - }; - } -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing.js b/node_modules/eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing.js deleted file mode 100644 index 0a76d0ee..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing.js +++ /dev/null @@ -1,84 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _utilities = require('../utilities'); - -var schema = [{ - enum: ['always', 'never'], - type: 'string' -}]; - -var create = function create(context) { - var sourceCode = context.getSourceCode(); - - var always = (context.options[0] || 'always') === 'always'; - - var check = function check(node) { - node.types.forEach(function (type, index) { - if (index + 1 === node.types.length) { - return; - } - - var separator = (0, _utilities.getTokenAfterParens)(sourceCode, type); - var endOfType = sourceCode.getTokenBefore(separator); - var nextType = sourceCode.getTokenAfter(separator); - - var spaceBefore = separator.start - endOfType.end; - var spaceAfter = nextType.start - separator.end; - - var data = { type: node.type === 'UnionTypeAnnotation' ? 'union' : 'intersection' }; - - if (always) { - if (!spaceBefore) { - context.report({ - data, - fix: _utilities.spacingFixers.addSpaceAfter(endOfType), - message: 'There must be a space before {{type}} type annotation separator', - node - }); - } - - if (!spaceAfter) { - context.report({ - data, - fix: _utilities.spacingFixers.addSpaceAfter(separator), - message: 'There must be a space after {{type}} type annotation separator', - node - }); - } - } else { - if (spaceBefore) { - context.report({ - data, - fix: _utilities.spacingFixers.stripSpacesAfter(endOfType, spaceBefore), - message: 'There must be no space before {{type}} type annotation separator', - node - }); - } - - if (spaceAfter) { - context.report({ - data, - fix: _utilities.spacingFixers.stripSpacesAfter(separator, spaceAfter), - message: 'There must be no space after {{type}} type annotation separator', - node - }); - } - } - }); - }; - - return { - IntersectionTypeAnnotation: check, - UnionTypeAnnotation: check - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/useFlowType.js b/node_modules/eslint-plugin-flowtype/dist/rules/useFlowType.js deleted file mode 100644 index 3327e018..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/useFlowType.js +++ /dev/null @@ -1,63 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var schema = []; - -var create = function create(context) { - var markTypeAsUsed = function markTypeAsUsed(node) { - context.markVariableAsUsed(node.id.name); - }; - var markTypeAsUsedWithGenericType = function markTypeAsUsedWithGenericType(node) { - var typeId = void 0; - var scope = void 0; - var variable = void 0; - - if (node.id.type === 'Identifier') { - typeId = node.id; - } else if (node.id.type === 'QualifiedTypeIdentifier') { - typeId = node.id; - do { - typeId = typeId.qualification; - } while (typeId.qualification); - } - - for (scope = context.getScope(); scope; scope = scope.upper) { - variable = scope.set.get(typeId.name); - if (variable && variable.defs.length) { - context.markVariableAsUsed(typeId.name); - break; - } - } - }; - - return { - DeclareClass: markTypeAsUsed, - DeclareFunction: markTypeAsUsed, - DeclareModule: markTypeAsUsed, - DeclareVariable: markTypeAsUsed, - GenericTypeAnnotation: markTypeAsUsedWithGenericType, - TypeParameterDeclaration(node) { - node.params.forEach(function (param) { - if (param.default && param.default.typeParameters) { - if (param.default.type === 'GenericTypeAnnotation') { - markTypeAsUsedWithGenericType(param.default); - } - - param.default.typeParameters.params.forEach(function (typeParameterNode) { - if (typeParameterNode.type === 'GenericTypeAnnotation') { - markTypeAsUsedWithGenericType(typeParameterNode); - } - }); - } - }); - } - }; -}; - -exports.default = { - create, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/rules/validSyntax.js b/node_modules/eslint-plugin-flowtype/dist/rules/validSyntax.js deleted file mode 100644 index 9614b7d2..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/rules/validSyntax.js +++ /dev/null @@ -1,45 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _utilities = require('../utilities'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var schema = []; - -var create = (0, _utilities.iterateFunctionNodes)(function (context) { - return function (functionNode) { - _lodash2.default.forEach(functionNode.params, function (identifierNode) { - var nodeType = _lodash2.default.get(identifierNode, 'type'); - var isAssignmentPattern = nodeType === 'AssignmentPattern'; - var hasTypeAnnotation = Boolean(_lodash2.default.get(identifierNode, 'typeAnnotation')); - var leftAnnotated = Boolean(_lodash2.default.get(identifierNode, 'left.typeAnnotation')); - - if (isAssignmentPattern && hasTypeAnnotation && !leftAnnotated) { - context.report({ - data: { - name: (0, _utilities.quoteName)((0, _utilities.getParameterName)(identifierNode, context)) - }, - message: '{{name}}parameter type annotation must be placed on left-hand side of assignment.', - node: identifierNode - }); - } - }); - }; -}); - -exports.default = { - create, - meta: { - deprecated: true - }, - schema -}; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation.js b/node_modules/eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation.js deleted file mode 100644 index 184869e7..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -var _isFlowFile = require('./isFlowFile'); - -var _isFlowFile2 = _interopRequireDefault(_isFlowFile); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (cb, context) { - var checkThisFile = !_lodash2.default.get(context, 'settings.flowtype.onlyFilesWithFlowAnnotation') || (0, _isFlowFile2.default)(context); - - if (!checkThisFile) { - return function () {}; - } - - return cb(context); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch.js b/node_modules/eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch.js deleted file mode 100644 index 35b6778b..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// Creates an array of letter pairs from a given array -// origin: https://github.com/d3/d3-array/blob/master/src/pairs.js -var arrayPairs = function arrayPairs(array) { - var ii = 0; - var length = array.length - 1; - var letter = array[0]; - var pairs = new Array(length < 0 ? 0 : length); - - while (ii < length) { - pairs[ii] = [letter, letter = array[++ii]]; - } - - return pairs; -}; -/* eslint-enable */ - -exports.default = function (needle, haystack) { - var weight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0.5; - - // Based on http://stackoverflow.com/a/23305385 - - var stringSimilarity = function stringSimilarity(str1, str2) { - if (str1.length > 0 && str2.length > 0) { - var pairs1 = arrayPairs(str1); - var pairs2 = arrayPairs(str2); - var unionLen = pairs1.length + pairs2.length; - var hitCount = void 0; - - hitCount = 0; - - _lodash2.default.forIn(pairs1, function (val1) { - _lodash2.default.forIn(pairs2, function (val2) { - if (_lodash2.default.isEqual(val1, val2)) { - hitCount++; - } - }); - }); - - if (hitCount > 0) { - return 2 * hitCount / unionLen; - } - } - - return 0; - }; - - return stringSimilarity(needle, haystack) >= Number(weight); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/getParameterName.js b/node_modules/eslint-plugin-flowtype/dist/utilities/getParameterName.js deleted file mode 100644 index 0d824856..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/getParameterName.js +++ /dev/null @@ -1,94 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (identifierNode, context) { - if (_lodash2.default.has(identifierNode, 'name')) { - return identifierNode.name; - } - - if (_lodash2.default.has(identifierNode, 'left.name')) { - return identifierNode.left.name; - } - - if (_lodash2.default.has(identifierNode, 'key.name')) { - return identifierNode.key.name; - } - - if (identifierNode.type === 'RestElement') { - return identifierNode.argument.name; - } - - if (identifierNode.type === 'ObjectTypeProperty') { - var tokenIndex = void 0; - - tokenIndex = 0; - - if (identifierNode.static) { - tokenIndex++; - } - - if (identifierNode.variance) { - tokenIndex++; - } - - if (identifierNode.kind === 'set' || identifierNode.kind === 'get') { - tokenIndex++; - } - - return context.getSourceCode().getFirstToken(identifierNode, tokenIndex).value; - } - - if (identifierNode.type === 'ObjectTypeIndexer') { - var _tokenIndex = void 0; - - _tokenIndex = 0; - - if (identifierNode.static) { - _tokenIndex++; - } - - if (identifierNode.variance) { - _tokenIndex++; - } - - _tokenIndex++; - - var id = context.getSourceCode().getFirstToken(identifierNode, _tokenIndex); - var colonOrBrace = context.getSourceCode().getTokenAfter(id); - if (colonOrBrace.value === ':') { - return id.value; - } else { - return null; - } - } - - if (identifierNode.type === 'FunctionTypeParam') { - return context.getSourceCode().getFirstToken(identifierNode).value; - } - - if (identifierNode.type === 'ObjectPattern' || identifierNode.type === 'ArrayPattern') { - var text = context.getSourceCode().getText(identifierNode); - - if (identifierNode.typeAnnotation) { - return text.replace(context.getSourceCode().getText(identifierNode.typeAnnotation), '').trim(); - } else { - return text; - } - } - if (_lodash2.default.get(identifierNode, 'left.type') === 'ObjectPattern') { - return context.getSourceCode().getText(identifierNode.left); - } - - return null; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/getTokenAfterParens.js b/node_modules/eslint-plugin-flowtype/dist/utilities/getTokenAfterParens.js deleted file mode 100644 index 75b95e67..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/getTokenAfterParens.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var getTokenAfterParens = function getTokenAfterParens(sourceCode, node) { - var token = void 0; - - token = sourceCode.getTokenAfter(node); - - while (token.type === 'Punctuator' && token.value === ')') { - token = sourceCode.getTokenAfter(token); - } - - return token; -}; - -exports.default = getTokenAfterParens; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens.js b/node_modules/eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens.js deleted file mode 100644 index 6b67a5e2..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var getTokenBeforeParens = function getTokenBeforeParens(sourceCode, node) { - var token = void 0; - - token = sourceCode.getTokenBefore(node); - - while (token.type === 'Punctuator' && token.value === '(') { - token = sourceCode.getTokenBefore(token); - } - - return token; -}; - -exports.default = getTokenBeforeParens; -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/index.js b/node_modules/eslint-plugin-flowtype/dist/utilities/index.js deleted file mode 100644 index 98fde28a..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/index.js +++ /dev/null @@ -1,97 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.spacingFixers = exports.quoteName = exports.iterateFunctionNodes = exports.isFlowFileAnnotation = exports.isFlowFile = exports.getTokenBeforeParens = exports.getTokenAfterParens = exports.getParameterName = exports.fuzzyStringMatch = exports.checkFlowFileAnnotation = undefined; - -var _checkFlowFileAnnotation = require('./checkFlowFileAnnotation'); - -Object.defineProperty(exports, 'checkFlowFileAnnotation', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_checkFlowFileAnnotation).default; - } -}); - -var _fuzzyStringMatch = require('./fuzzyStringMatch'); - -Object.defineProperty(exports, 'fuzzyStringMatch', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_fuzzyStringMatch).default; - } -}); - -var _getParameterName = require('./getParameterName'); - -Object.defineProperty(exports, 'getParameterName', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_getParameterName).default; - } -}); - -var _getTokenAfterParens = require('./getTokenAfterParens'); - -Object.defineProperty(exports, 'getTokenAfterParens', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_getTokenAfterParens).default; - } -}); - -var _getTokenBeforeParens = require('./getTokenBeforeParens'); - -Object.defineProperty(exports, 'getTokenBeforeParens', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_getTokenBeforeParens).default; - } -}); - -var _isFlowFile = require('./isFlowFile'); - -Object.defineProperty(exports, 'isFlowFile', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_isFlowFile).default; - } -}); - -var _isFlowFileAnnotation = require('./isFlowFileAnnotation'); - -Object.defineProperty(exports, 'isFlowFileAnnotation', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_isFlowFileAnnotation).default; - } -}); - -var _iterateFunctionNodes = require('./iterateFunctionNodes'); - -Object.defineProperty(exports, 'iterateFunctionNodes', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_iterateFunctionNodes).default; - } -}); - -var _quoteName = require('./quoteName'); - -Object.defineProperty(exports, 'quoteName', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_quoteName).default; - } -}); - -var _spacingFixers = require('./spacingFixers'); - -var spacingFixers = _interopRequireWildcard(_spacingFixers); - -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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.spacingFixers = spacingFixers; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/isFlowFile.js b/node_modules/eslint-plugin-flowtype/dist/utilities/isFlowFile.js deleted file mode 100644 index 4c9554a2..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/isFlowFile.js +++ /dev/null @@ -1,36 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _isFlowFileAnnotation = require('./isFlowFileAnnotation'); - -var _isFlowFileAnnotation2 = _interopRequireDefault(_isFlowFileAnnotation); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable flowtype/require-valid-file-annotation */ -/** - * Checks whether a file has an @flow or @noflow annotation. - * - * @param context - * @param [strict] - By default, the function returns true if the file starts with @flow but not if it - * starts by @noflow. When the strict flag is set to false, the function returns true if the flag has @noflow also. - */ -/* eslint-enable flowtype/require-valid-file-annotation */ -exports.default = function (context) { - var strict = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; - - var comments = context.getAllComments(); - - if (!comments.length) { - return false; - } - - return comments.some(function (comment) { - return (0, _isFlowFileAnnotation2.default)(comment.value, strict); - }); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation.js b/node_modules/eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation.js deleted file mode 100644 index f378fc2e..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation.js +++ /dev/null @@ -1,30 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _lodash = require('lodash'); - -var _lodash2 = _interopRequireDefault(_lodash); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var FLOW_MATCHER = /^@(?:no)?flow$/; - -exports.default = function (comment, strict) { - // eslint-disable-next-line flowtype/require-valid-file-annotation - // The flow parser splits comments with the following regex to look for the @flow flag. - // See https://github.com/facebook/flow/blob/a96249b93541f2f7bfebd8d62085bf7a75de02f2/src/parsing/docblock.ml#L39 - return _lodash2.default.some(comment.split(/[ \t\r\n\\*/]+/), function (commentPart) { - var match = commentPart.match(FLOW_MATCHER); - - if (match === null) { - return false; - } - - return !strict || match[0] === '@flow'; - }); -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes.js b/node_modules/eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes.js deleted file mode 100644 index bbe1c146..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes.js +++ /dev/null @@ -1,24 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports.default = function (iterator) { - return function (context) { - for (var _len = arguments.length, rest = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - rest[_key - 1] = arguments[_key]; - } - - var nodeIterator = iterator.apply(undefined, [context].concat(rest)); - - return { - ArrowFunctionExpression: nodeIterator, - FunctionDeclaration: nodeIterator, - FunctionExpression: nodeIterator, - FunctionTypeAnnotation: nodeIterator - }; - }; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/quoteName.js b/node_modules/eslint-plugin-flowtype/dist/utilities/quoteName.js deleted file mode 100644 index 62917cee..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/quoteName.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports.default = function (name) { - return name ? '"' + name + '" ' : ''; -}; - -module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/dist/utilities/spacingFixers.js b/node_modules/eslint-plugin-flowtype/dist/utilities/spacingFixers.js deleted file mode 100644 index b07d6928..00000000 --- a/node_modules/eslint-plugin-flowtype/dist/utilities/spacingFixers.js +++ /dev/null @@ -1,64 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var stripSpacesBefore = exports.stripSpacesBefore = function stripSpacesBefore(node, spaces) { - return function (fixer) { - return fixer.removeRange([node.start - spaces, node.start]); - }; -}; - -var stripSpacesAfter = exports.stripSpacesAfter = function stripSpacesAfter(node, spaces) { - return function (fixer) { - return fixer.removeRange([node.end, node.end + spaces]); - }; -}; - -var addSpaceBefore = exports.addSpaceBefore = function addSpaceBefore(node) { - return function (fixer) { - return fixer.insertTextBefore(node, ' '); - }; -}; - -var addSpaceAfter = exports.addSpaceAfter = function addSpaceAfter(node) { - return function (fixer) { - return fixer.insertTextAfter(node, ' '); - }; -}; - -var replaceWithSpaceBefore = exports.replaceWithSpaceBefore = function replaceWithSpaceBefore(node, spaces) { - return function (fixer) { - return fixer.replaceTextRange([node.start - spaces, node.start], ' '); - }; -}; - -var replaceWithSpaceAfter = exports.replaceWithSpaceAfter = function replaceWithSpaceAfter(node, spaces) { - return function (fixer) { - return fixer.replaceTextRange([node.end, node.end + spaces], ' '); - }; -}; - -var stripSpaces = exports.stripSpaces = function stripSpaces(direction, node, spaces) { - if (direction === 'before') { - return stripSpacesBefore(node, spaces); - } else { - return stripSpacesAfter(node, spaces); - } -}; - -var addSpace = exports.addSpace = function addSpace(direction, node) { - if (direction === 'before') { - return addSpaceBefore(node); - } else { - return addSpaceAfter(node); - } -}; - -var replaceWithSpace = exports.replaceWithSpace = function replaceWithSpace(direction, node, spaces) { - if (direction === 'before') { - return replaceWithSpaceBefore(node, spaces); - } else { - return replaceWithSpaceAfter(node, spaces); - } -}; \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/node_modules/.bin/eslint b/node_modules/eslint-plugin-flowtype/node_modules/.bin/eslint deleted file mode 120000 index fad93f58..00000000 --- a/node_modules/eslint-plugin-flowtype/node_modules/.bin/eslint +++ /dev/null @@ -1 +0,0 @@ -../../../eslint/bin/eslint.js \ No newline at end of file diff --git a/node_modules/eslint-plugin-flowtype/package.json b/node_modules/eslint-plugin-flowtype/package.json deleted file mode 100644 index d7cfa2ce..00000000 --- a/node_modules/eslint-plugin-flowtype/package.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "author": { - "email": "gajus@gajus.com", - "name": "Gajus Kuizinas", - "url": "http://gajus.com" - }, - "dependencies": { - "lodash": "^4.17.15" - }, - "description": "Flowtype linting rules for ESLint.", - "devDependencies": { - "ajv": "^6.10.2", - "babel-cli": "^6.26.0", - "babel-eslint": "^10.0.2", - "babel-plugin-add-module-exports": "^1.0.2", - "babel-plugin-transform-object-rest-spread": "^6.26.0", - "babel-preset-env": "^1.7.0", - "babel-register": "^6.26.0", - "chai": "^4.2.0", - "eclint": "^2.8.1", - "eslint": "^5.13.0", - "eslint-config-canonical": "^17.3.4", - "gitdown": "^3.1.1", - "glob": "^7.1.4", - "husky": "^3.0.3", - "jsonlint": "^1.6.3", - "mocha": "^6.2.0", - "rimraf": "^3.0.0", - "semantic-release": "^15.13.19" - }, - "engines": { - "node": ">=4" - }, - "husky": { - "hooks": { - "pre-commit": "npm run check-docs && npm run check-tests && npm run lint && npm run test && npm run build && npm run format-json && eclint fix ./src/**/* ./tests/**/*" - } - }, - "keywords": [ - "eslint", - "plugin", - "flowtype" - ], - "license": "BSD-3-Clause", - "main": "./dist/index.js", - "name": "eslint-plugin-flowtype", - "peerDependencies": { - "eslint": ">=6.1.0" - }, - "repository": { - "type": "git", - "url": "https://github.com/gajus/eslint-plugin-flowtype" - }, - "scripts": { - "build": "rimraf ./dist && babel ./src --out-dir ./dist --copy-files", - "check-docs": "babel-node ./src/bin/checkDocs", - "check-tests": "babel-node ./src/bin/checkTests", - "create-readme": "gitdown ./.README/README.md --output-file ./README.md && npm run documentation-add-assertions", - "documentation-add-assertions": "babel-node ./src/bin/addAssertions", - "format-json": "jsonlint --sort-keys --in-place --indent \" \" ./src/configs/recommended.json", - "lint": "eslint ./src ./tests", - "test": "mocha --require babel-core/register ./tests/rules/index.js" - }, - "version": "4.6.0" -} diff --git a/node_modules/eslint-plugin-github/README.md b/node_modules/eslint-plugin-github/README.md index 6b602ec2..db14ae05 100644 --- a/node_modules/eslint-plugin-github/README.md +++ b/node_modules/eslint-plugin-github/README.md @@ -3,25 +3,36 @@ ## Installation ```sh -$ npm install --save-dev eslint -$ npm install --save-dev eslint-plugin-github +$ npm install --save-dev eslint eslint-plugin-github ``` -Run initialization wizard. +## Setup -```sh -$ node_modules/.bin/eslint-github-init -``` - -Set up `npm run lint` script. +Add `github` to your list of plugins in your ESLint config. +JSON ESLint config example: ```json { - "private": true, - "scripts": { - "lint": "github-lint" - } + "plugins": ["github"] } ``` -The `github-lint` command will run `eslint`, `flow` and flow coverage checking depending on your project configuration. +Extend the configs you wish to use. + +JSON ESLint config example: +```json +{ + "extends": ["plugin:github/recommended"] +} +``` + +The available configs are: + +- `app` + - Rules useful for github applications. +- `browser` + - Useful rules when shipping your app to the browser. +- `recommended` + - Recommended rules for every application. +- `typescript` + - Useful rules when writing TypeScript. diff --git a/node_modules/eslint-plugin-github/bin/eslint-github-init.js b/node_modules/eslint-plugin-github/bin/eslint-github-init.js deleted file mode 100755 index 9ed4b48a..00000000 --- a/node_modules/eslint-plugin-github/bin/eslint-github-init.js +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env node - -const inquirer = require('inquirer') -const fs = require('fs') -const path = require('path') - -const defaults = { - project: 'lib', - env: 'browser', - typeSystem: 'none', - react: true, - relay: true -} - -const packagePath = path.resolve(process.cwd(), 'package.json') -if (fs.existsSync(packagePath)) { - const packageJSON = JSON.parse(fs.readFileSync(packagePath, 'utf8')) - defaults.project = packageJSON.private ? 'app' : 'lib' - - const dependencies = Object.keys(packageJSON.dependencies || {}) - const devDependencies = Object.keys(packageJSON.devDependencies || {}) - - defaults.react = dependencies.includes('react') || devDependencies.includes('react') - defaults.relay = dependencies.includes('relay') || devDependencies.includes('relay') - - if (dependencies.includes('flow-bin') || devDependencies.includes('flow-bin')) { - defaults.typeSystem = 'flow' - } - if (dependencies.includes('typescript') || devDependencies.includes('typescript')) { - defaults.typeSystem = 'typescript' - } -} - -const questions = [ - { - type: 'list', - name: 'project', - message: 'Is this project a web app or reuseable library?', - choices: ['app', 'lib'], - default: defaults.project - }, - { - type: 'list', - name: 'env', - message: 'Which environment does this library target?', - choices: ['browser', 'node'], - default: defaults.env - }, - { - type: 'list', - name: 'typeSystem', - message: 'What type system are you using?', - choices: ['flow', 'typescript', 'none'], - default: defaults.typeSystem - }, - { - type: 'confirm', - name: 'relay', - message: 'Are you using Relay?', - default: defaults.relay - }, - { - type: 'confirm', - name: 'react', - message: 'Are you using React?', - default: defaults.react, - when: answers => answers.env === 'browser' - } -] - -inquirer.prompt(questions).then(answers => { - const eslintrc = {extends: ['plugin:github/es6']} - - if (answers.env === 'node') { - eslintrc.extends.push('plugin:github/node') - } else if (answers.project === 'app') { - eslintrc.extends.push('plugin:github/app') - } else if (answers.env === 'browser') { - eslintrc.extends.push('plugin:github/browser') - } - - if (answers.typeSystem === 'flow') eslintrc.extends.push('plugin:github/flow') - if (answers.typeSystem === 'typescript') { - eslintrc.extends.push('plugin:github/typescript') - eslintrc.parser = '@typescript-eslint/parser' - - // Create a `tsconfig.json`. - const tsconfigPath = path.resolve(process.cwd(), 'tsconfig.json') - if (!fs.existsSync(tsconfigPath)) { - const tsconfigDefaults = { - compilerOptions: { - target: 'es2015', - module: 'esnext', - lib: ['esnext', 'dom'], - allowSyntheticDefaultImports: true, - moduleResolution: 'node' - } - } - if (answers.react) { - tsconfigDefaults.compilerOptions.jsx = 'react' - } - fs.writeFileSync(tsconfigPath, JSON.stringify(tsconfigDefaults, null, ' '), 'utf8') - } - } - - if (answers.react) eslintrc.extends.push('plugin:github/react') - if (answers.relay) eslintrc.extends.push('plugin:github/relay') - - fs.writeFileSync(path.resolve(process.cwd(), '.eslintrc.json'), JSON.stringify(eslintrc, null, ' '), 'utf8') - - const prettierConfig = [] - if (answers.typeSystem === 'flow') prettierConfig.push('/* @flow */') - - prettierConfig.push("module.exports = require('eslint-plugin-github/prettier.config')") - prettierConfig.push('') - - fs.writeFileSync(path.resolve(process.cwd(), 'prettier.config.js'), prettierConfig.join('\n'), 'utf8') -}) diff --git a/node_modules/eslint-plugin-github/bin/eslint-ignore-errors.js b/node_modules/eslint-plugin-github/bin/eslint-ignore-errors.js index 3d71b833..643d3f77 100755 --- a/node_modules/eslint-plugin-github/bin/eslint-ignore-errors.js +++ b/node_modules/eslint-plugin-github/bin/eslint-ignore-errors.js @@ -11,22 +11,22 @@ const fs = require('fs') const execFile = require('child_process').execFile execFile('eslint', ['--format', 'json', process.argv[2]], (error, stdout) => { - JSON.parse(stdout).forEach(result => { + for (const result of JSON.parse(stdout)) { const filename = result.filePath const jsLines = fs.readFileSync(filename, 'utf8').split('\n') const offensesByLine = {} let addedLines = 0 // Produces {47: ['github/no-d-none', 'github/no-blur'], 83: ['github/no-blur']} - result.messages.forEach(message => { + for (const message of result.messages) { if (offensesByLine[message.line]) { offensesByLine[message.line].push(message.ruleId) } else { offensesByLine[message.line] = [message.ruleId] } - }) + } - Object.keys(offensesByLine).forEach(line => { + for (const line of Object.keys(offensesByLine)) { const lineIndex = line - 1 + addedLines const previousLine = jsLines[lineIndex - 1] const ruleIds = offensesByLine[line].join(', ') @@ -37,12 +37,12 @@ execFile('eslint', ['--format', 'json', process.argv[2]], (error, stdout) => { jsLines.splice(lineIndex, 0, `${leftPad}/* eslint-disable-next-line ${ruleIds} */`) } addedLines += 1 - }) + } if (result.messages.length !== 0) { fs.writeFileSync(filename, jsLines.join('\n'), 'utf8') } - }) + } }) function isDisableComment(line) { diff --git a/node_modules/eslint-plugin-github/bin/eslint-unused-modules.js b/node_modules/eslint-plugin-github/bin/eslint-unused-modules.js deleted file mode 100755 index 9dc8ea38..00000000 --- a/node_modules/eslint-plugin-github/bin/eslint-unused-modules.js +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env node - -const {CLIEngine} = require('eslint') - -// TODO: Figure out how to deactive other rules. -let cli = new CLIEngine({ - rules: { - 'github/dependency-graph': 1 - } -}) -cli.executeOnFiles(process.argv.slice(2)) - -// TODO: Figure out how to deactive other rules. -cli = new CLIEngine({ - rules: { - 'github/unused-export': 2, - 'github/unused-module': 2 - } -}) - -const report = cli.executeOnFiles(process.argv.slice(2)) -const formatter = cli.getFormatter() - -process.stdout.write(formatter(report.results)) - -if (report.errorCount > 0) { - process.exit(1) -} diff --git a/node_modules/eslint-plugin-github/bin/flow-coverage.js b/node_modules/eslint-plugin-github/bin/flow-coverage.js deleted file mode 100755 index 65c92bc7..00000000 --- a/node_modules/eslint-plugin-github/bin/flow-coverage.js +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env node -// usage: flow-coverage -// -// Run flow coverage on project. - -const childProcess = require('child_process') -const flow = require('flow-bin') -const fs = require('fs') -const {join} = require('path') - -const execFile = (file, args) => - new Promise((resolve, reject) => { - childProcess.execFile( - file, - args, - { - maxBuffer: Infinity - }, - (error, stdout, stderr) => { - if (error) { - reject(error) - } else { - resolve({stdout, stderr}) - } - } - ) - }) - -async function execFileJSON(file, args) { - args.push('--json') - const {stdout, stderr} = await execFile(file, args) - if (stderr) { - return JSON.parse(stderr) - } else { - return JSON.parse(stdout) - } -} - -function computeCoverage(covered, uncovered) { - const total = covered + uncovered - if (total) { - return 100 * (covered / total) - } else { - return 100 - } -} - -async function getCoverage(path) { - const json = await execFileJSON(flow, ['coverage', path]) - if (json && json.expressions) { - const uncoveredCount = json.expressions['uncovered_count'] - const coveredCount = json.expressions['covered_count'] - const covered = computeCoverage(coveredCount, uncoveredCount) - return {path, uncoveredCount, coveredCount, covered} - } else { - return {path, uncoveredCount: 0, coveredCount: 0, covered: 0} - } -} - -async function startFlow() { - try { - await execFile(flow, ['start', '--wait']) - } catch (error) { - if (error.code === 11) { - /* already running */ - } else { - throw error - } - } -} - -// const ignore = [/\.flowconfig$/, /\.json$/, /\.test\.js$/, /\/__generated__\//, /\/flow-typed\//, /\/node_modules\//] -// -// async function flowList() { -// execFile('git', ['grep', '--name-only', '--', '@flow']) -// -// const paths = await execFileJSON(flow, ['ls']) -// return paths.filter(path => !ignore.some(re => re.test(path))) -// } - -async function grepFlowFiles() { - const {stdout} = await execFile('git', ['grep', '--null', '--name-only', '--', '@flow']) - return stdout.split('\0').filter(path => path) -} - -;(async function() { - let threshold = 0 - - const packageJsonPath = join(process.cwd(), 'package.json') - if (fs.existsSync(packageJsonPath)) { - const packageJson = require(packageJsonPath) - threshold = (packageJson.flow && packageJson.flow.coverageThreshold) || 0 - } - - await startFlow() - - const files = await grepFlowFiles() - - let totalCoveredCount = 0 - let totalUncoveredCount = 0 - - for (const file of files) { - const {path, covered, coveredCount, uncoveredCount} = await getCoverage(file) - process.stdout.write(`${covered.toFixed()}\t${path}\n`) - totalCoveredCount += coveredCount - totalUncoveredCount += uncoveredCount - } - - const totalCoverage = computeCoverage(totalCoveredCount, totalUncoveredCount) - - process.stdout.write(`${totalCoverage.toFixed()}\t(total)\n`) - if (totalCoverage < threshold) { - process.stderr.write(`expected at least ${threshold}% coverage, but was ${totalCoverage.toFixed()}%\n`) - process.exit(1) - } -})().catch(error => { - process.stderr.write(`${error}\n`) - process.exit(2) -}) diff --git a/node_modules/eslint-plugin-github/bin/github-lint.js b/node_modules/eslint-plugin-github/bin/github-lint.js deleted file mode 100755 index e9998be4..00000000 --- a/node_modules/eslint-plugin-github/bin/github-lint.js +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/env node -// usage: github-lint -// -// Run ESLint and Flow on project. - -const childProcess = require('child_process') -const fs = require('fs') -const path = require('path') -const supportsColors = require('supports-color') - -const hasBasicColorSupport = supportsColors.stdout.hasBasic && supportsColors.stderr.hasBasic - -function execFile(command, args) { - return new Promise(resolve => { - childProcess.execFile(command, args, {maxBuffer: 1024 ** 2}, (error, stdout, stderr) => { - resolve({code: error ? error.code : 0, stdout, stderr}) - }) - }) -} - -;(async function() { - let runs = 0 - const codes = [] - const commands = [] - - const packageJson = fs.existsSync('package.json') ? require(path.join(process.cwd(), 'package.json')) : {} - - let eslintOptions = ['--report-unused-disable-directives', '.'] - - if (hasBasicColorSupport) { - eslintOptions = eslintOptions.concat(['--color']) - } - - const isTypeScriptProject = fs.existsSync('tsconfig.json') - - if (isTypeScriptProject) { - eslintOptions = eslintOptions.concat(['--ext', '.js,.ts,.tsx']) - } - - commands.push(['eslint', eslintOptions]) - - if (isTypeScriptProject) { - commands.push(['tsc', ['--noEmit']]) - } - - if (fs.existsSync('.flowconfig')) { - commands.push(['flow', ['check']]) - } - - if (packageJson && packageJson.flow && packageJson.flow.coverageThreshold) { - commands.push(['flow-coverage', []]) - } - - for (const [command, args] of commands) { - if (runs > 0) process.stderr.write('\n') - process.stderr.write(`> ${command} ${args.join(' ')}\n`) - - const {code, stdout, stderr} = await execFile(command, args) - codes.push(code) - if (stderr) process.stderr.write(stderr) - if (stdout) process.stdout.write(stdout) - - runs++ - } - - const nonzero = codes.find(code => code !== 0) - if (nonzero) { - process.stderr.write(`\nCommand failed: ${nonzero}\n`) - process.exit(nonzero) - } -})().catch(error => { - setTimeout(() => { - throw error - }) -}) diff --git a/node_modules/eslint-plugin-github/bin/npm-check-github-package-requirements.js b/node_modules/eslint-plugin-github/bin/npm-check-github-package-requirements.js deleted file mode 100755 index c55b0d8d..00000000 --- a/node_modules/eslint-plugin-github/bin/npm-check-github-package-requirements.js +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env node - -const fs = require('fs') -const path = require('path') - -const checks = [] -function check(name, callback) { - checks.push([checks.length + 1, name, callback]) -} - -function run() { - process.stdout.write(`1..${checks.length}\n`) - checks.forEach(([count, name, callback]) => { - Promise.resolve() - .then(callback) - .then(() => { - process.stdout.write(`ok ${count} - ${name}\n`) - }) - .catch(error => { - process.stdout.write(`not ok ${count} - ${name}\n ${error}\n`) - }) - }) -} - -const packageRoot = process.argv[2] - -check('package.json exists', () => { - const packageJsonPath = path.join(packageRoot, 'package.json') - - if (!fs.existsSync(packageJsonPath)) { - throw new Error('package.json does not exist') - } -}) - -check('package.json license is set', () => { - const packageJsonPath = path.join(packageRoot, 'package.json') - const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8')) - - if (!pkg.license) { - throw new Error('license not set') - } -}) - -run() diff --git a/node_modules/eslint-plugin-github/lib/configs/app.js b/node_modules/eslint-plugin-github/lib/configs/app.js deleted file mode 100644 index fa41d90c..00000000 --- a/node_modules/eslint-plugin-github/lib/configs/app.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - plugins: ['github'], - rules: { - 'github/authenticity-token': 'error', - 'github/js-class-name': 'error', - 'github/no-d-none': 'error', - 'github/no-dataset': 'error', - 'github/no-then': 'error' - }, - extends: [require.resolve('./recommended'), require.resolve('./es6'), require.resolve('./browser')] -} diff --git a/node_modules/eslint-plugin-github/lib/configs/browser.js b/node_modules/eslint-plugin-github/lib/configs/browser.js index aceab841..c2e5c446 100644 --- a/node_modules/eslint-plugin-github/lib/configs/browser.js +++ b/node_modules/eslint-plugin-github/lib/configs/browser.js @@ -8,8 +8,11 @@ module.exports = { 'github/async-preventdefault': 'error', 'github/get-attribute': 'error', 'github/no-blur': 'error', + 'github/no-dataset': 'error', 'github/no-innerText': 'error', - 'github/unescaped-html-literal': 'error' - }, - extends: [require.resolve('./recommended')] + 'github/unescaped-html-literal': 'error', + 'github/no-useless-passive': 'error', + 'github/require-passive-events': 'error', + 'github/prefer-observers': 'error' + } } diff --git a/node_modules/eslint-plugin-github/lib/configs/es6.js b/node_modules/eslint-plugin-github/lib/configs/es6.js deleted file mode 100644 index a2ec3ebd..00000000 --- a/node_modules/eslint-plugin-github/lib/configs/es6.js +++ /dev/null @@ -1,51 +0,0 @@ -module.exports = { - parserOptions: { - ecmaFeatures: { - ecmaVersion: 6 - }, - sourceType: 'module' - }, - env: { - es6: true - }, - plugins: ['github', 'import'], - rules: { - 'github/array-foreach': 'error', - 'import/default': 'error', - 'import/export': 'error', - 'import/first': 'error', - 'import/named': 'error', - 'import/namespace': 'error', - 'import/no-absolute-path': 'error', - 'import/no-anonymous-default-export': [ - 'error', - { - allowAnonymousClass: false, - allowAnonymousFunction: false, - allowArray: true, - allowArrowFunction: false, - allowLiteral: true, - allowObject: true - } - ], - 'import/no-deprecated': 'error', - 'import/no-duplicates': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-named-as-default': 'error', - 'import/no-namespace': 'error', - 'no-var': 'error', - 'prefer-const': 'error', - 'prefer-rest-params': 'error', - 'prefer-spread': 'error', - 'prefer-template': 'error' - }, - settings: { - 'import/resolver': { - node: { - extensions: ['.js', '.ts'] - } - } - }, - extends: [require.resolve('./recommended')] -} diff --git a/node_modules/eslint-plugin-github/lib/configs/flow.js b/node_modules/eslint-plugin-github/lib/configs/flow.js deleted file mode 100644 index 84050a45..00000000 --- a/node_modules/eslint-plugin-github/lib/configs/flow.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = { - parser: 'babel-eslint', - plugins: ['flowtype', 'github'], - rules: { - 'flowtype/define-flow-type': 'error', - 'flowtype/require-valid-file-annotation': ['error', 'always', {annotationStyle: 'block'}], - 'flowtype/use-flow-type': 'error', - 'flowtype/no-flow-fix-me-comments': 'error', - 'flowtype/no-primitive-constructor-types': 'error', - 'flowtype/no-weak-types': 'error', - 'github/no-flow-weak': 'error', - 'github/no-noflow': 'error' - } -} diff --git a/node_modules/eslint-plugin-github/lib/configs/internal.js b/node_modules/eslint-plugin-github/lib/configs/internal.js new file mode 100644 index 00000000..8de10865 --- /dev/null +++ b/node_modules/eslint-plugin-github/lib/configs/internal.js @@ -0,0 +1,8 @@ +module.exports = { + plugins: ['github'], + rules: { + 'github/authenticity-token': 'error', + 'github/js-class-name': 'error', + 'github/no-d-none': 'error' + } +} diff --git a/node_modules/eslint-plugin-github/lib/configs/node.js b/node_modules/eslint-plugin-github/lib/configs/node.js deleted file mode 100644 index 637faa77..00000000 --- a/node_modules/eslint-plugin-github/lib/configs/node.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - parser: 'babel-eslint', - env: { - node: true - }, - plugins: ['github'], - rules: { - 'no-console': 'off' - }, - extends: [require.resolve('./recommended')] -} diff --git a/node_modules/eslint-plugin-github/lib/configs/react.js b/node_modules/eslint-plugin-github/lib/configs/react.js deleted file mode 100644 index afd311dc..00000000 --- a/node_modules/eslint-plugin-github/lib/configs/react.js +++ /dev/null @@ -1,136 +0,0 @@ -module.exports = { - parser: 'babel-eslint', - parserOptions: { - ecmaFeatures: { - jsx: true - } - }, - settings: { - react: { - version: 'detect' - } - }, - env: { - jest: true, - node: true - }, - plugins: ['jest', 'jsx-a11y', 'react', 'relay'], - rules: { - 'jest/no-disabled-tests': 'warn', - 'jest/no-focused-tests': 'error', - 'jest/no-identical-title': 'error', - 'jest/valid-expect': 'error', - 'jsx-a11y/accessible-emoji': 'error', - 'jsx-a11y/alt-text': 'error', - 'jsx-a11y/anchor-has-content': 'error', - 'jsx-a11y/anchor-is-valid': 'error', - 'jsx-a11y/aria-activedescendant-has-tabindex': 'error', - 'jsx-a11y/aria-props': 'error', - 'jsx-a11y/aria-proptypes': 'error', - 'jsx-a11y/aria-role': 'error', - 'jsx-a11y/aria-unsupported-elements': 'error', - 'jsx-a11y/click-events-have-key-events': 'error', - 'jsx-a11y/heading-has-content': 'error', - 'jsx-a11y/html-has-lang': 'error', - 'jsx-a11y/iframe-has-title': 'error', - 'jsx-a11y/img-redundant-alt': 'error', - 'jsx-a11y/interactive-supports-focus': [ - 'error', - { - tabbable: ['button', 'checkbox', 'link', 'searchbox', 'spinbutton', 'switch', 'textbox'] - } - ], - 'jsx-a11y/label-has-for': [ - 2, - { - components: ['Label'], - required: { - some: ['nesting', 'id'] - }, - allowChildren: false - } - ], - 'jsx-a11y/media-has-caption': 'error', - 'jsx-a11y/mouse-events-have-key-events': 'error', - 'jsx-a11y/no-access-key': 'error', - 'jsx-a11y/no-autofocus': 'error', - 'jsx-a11y/no-distracting-elements': 'error', - - 'jsx-a11y/no-interactive-element-to-noninteractive-role': [ - 'error', - { - tr: ['none', 'presentation'] - } - ], - 'jsx-a11y/no-noninteractive-element-interactions': [ - 'error', - { - handlers: ['onClick', 'onMouseDown', 'onMouseUp', 'onKeyPress', 'onKeyDown', 'onKeyUp'] - } - ], - 'jsx-a11y/no-noninteractive-element-to-interactive-role': [ - 'error', - { - ul: ['listbox', 'menu', 'menubar', 'radiogroup', 'tablist', 'tree', 'treegrid'], - ol: ['listbox', 'menu', 'menubar', 'radiogroup', 'tablist', 'tree', 'treegrid'], - li: ['menuitem', 'option', 'row', 'tab', 'treeitem'], - table: ['grid'], - td: ['gridcell'] - } - ], - 'jsx-a11y/no-noninteractive-tabindex': [ - 'error', - { - tags: [], - roles: ['tabpanel'] - } - ], - 'jsx-a11y/no-onchange': 'error', - 'jsx-a11y/no-redundant-roles': 'error', - 'jsx-a11y/no-static-element-interactions': [ - 'error', - { - handlers: ['onClick', 'onMouseDown', 'onMouseUp', 'onKeyPress', 'onKeyDown', 'onKeyUp'] - } - ], - 'jsx-a11y/role-has-required-aria-props': 'error', - 'jsx-a11y/role-supports-aria-props': 'error', - 'jsx-a11y/scope': 'error', - 'jsx-a11y/tabindex-no-positive': 'error', - 'react/jsx-boolean-value': 'error', - 'react/jsx-handler-names': 'error', - 'react/jsx-key': 'error', - 'react/jsx-no-duplicate-props': 'error', - 'react/jsx-no-undef': 'error', - 'react/jsx-pascal-case': 'error', - 'react/jsx-uses-react': 'error', - 'react/jsx-uses-vars': 'error', - 'react/no-array-index-key': 'error', - 'react/no-children-prop': 'error', - 'react/no-danger-with-children': 'error', - 'react/no-danger': 'error', - 'react/no-deprecated': 'error', - 'react/no-did-mount-set-state': 'error', - 'react/no-did-update-set-state': 'error', - 'react/no-direct-mutation-state': 'error', - 'react/no-find-dom-node': 'error', - 'react/no-is-mounted': 'error', - 'react/no-multi-comp': ['error', {ignoreStateless: true}], - 'react/no-render-return-value': 'error', - 'react/no-string-refs': 'error', - 'react/no-unknown-property': 'error', - 'react/no-unused-prop-types': 'error', - 'react/prefer-es6-class': 'error', - 'react/prefer-stateless-function': 'error', - 'react/react-in-jsx-scope': 'error', - 'react/require-render-return': 'error', - 'react/self-closing-comp': 'error', - 'react/sort-comp': 'error', - 'react/sort-prop-types': 'error', - 'react/style-prop-object': 'error', - 'react/void-dom-elements-no-children': 'error', - 'relay/graphql-naming': 'error', - 'relay/graphql-syntax': 'error' - }, - extends: [require.resolve('./browser')] -} diff --git a/node_modules/eslint-plugin-github/lib/configs/recommended.js b/node_modules/eslint-plugin-github/lib/configs/recommended.js index 45f5170e..c164a398 100644 --- a/node_modules/eslint-plugin-github/lib/configs/recommended.js +++ b/node_modules/eslint-plugin-github/lib/configs/recommended.js @@ -1,8 +1,14 @@ module.exports = { - plugins: ['github', 'prettier', 'eslint-comments', 'jsdoc'], - env: { - commonjs: true + parserOptions: { + ecmaFeatures: { + ecmaVersion: 6 + }, + sourceType: 'module' }, + env: { + es6: true + }, + plugins: ['github', 'prettier', 'eslint-comments', 'import'], rules: { 'constructor-super': 'error', 'eslint-comments/disable-enable-pair': 'off', @@ -13,28 +19,32 @@ module.exports = { 'eslint-comments/no-unused-enable': 'error', 'eslint-comments/no-use': ['error', {allow: ['eslint', 'eslint-disable-next-line', 'eslint-env', 'globals']}], 'func-style': ['error', 'declaration', {allowArrowFunctions: true}], + 'github/array-foreach': 'error', 'github/no-implicit-buggy-globals': 'error', - 'jsdoc/check-alignment': 'error', - 'jsdoc/check-examples': ['error', {rejectExampleCodeRegex: '<.*>'}], - 'jsdoc/check-param-names': 'error', - 'jsdoc/check-syntax': 'error', - 'jsdoc/check-tag-names': 'error', - 'jsdoc/check-types': 'error', - 'jsdoc/implements-on-classes': 'error', - 'jsdoc/match-description': 'error', - 'jsdoc/newline-after-description': 'error', - 'jsdoc/require-description': 'error', - 'jsdoc/require-description-complete-sentence': 'error', - 'jsdoc/require-hyphen-before-param-description': 'error', - 'jsdoc/require-param': 'error', - 'jsdoc/require-param-description': 'error', - 'jsdoc/require-param-name': 'error', - 'jsdoc/require-param-type': 'error', - 'jsdoc/require-returns': 'error', - 'jsdoc/require-returns-check': 'error', - 'jsdoc/require-returns-description': 'error', - 'jsdoc/require-returns-type': 'error', - 'jsdoc/valid-types': 'error', + 'github/no-then': 'error', + 'import/default': 'error', + 'import/export': 'error', + 'import/first': 'error', + 'import/named': 'error', + 'import/namespace': 'error', + 'import/no-absolute-path': 'error', + 'import/no-anonymous-default-export': [ + 'error', + { + allowAnonymousClass: false, + allowAnonymousFunction: false, + allowArray: true, + allowArrowFunction: false, + allowLiteral: true, + allowObject: true + } + ], + 'import/no-deprecated': 'error', + 'import/no-duplicates': 'error', + 'import/no-mutable-exports': 'error', + 'import/no-named-as-default': 'error', + 'import/no-named-as-default-member': 'error', + 'import/no-namespace': 'error', 'no-case-declarations': 'error', 'no-class-assign': 'error', 'no-compare-neg-zero': 'error', @@ -82,13 +92,25 @@ module.exports = { 'no-unused-vars': 'error', 'no-useless-concat': 'error', 'no-useless-escape': 'error', + 'no-var': 'error', 'object-shorthand': ['error', 'always', {avoidQuotes: true}], + 'prefer-const': 'error', 'prefer-promise-reject-errors': 'error', + 'prefer-rest-params': 'error', + 'prefer-spread': 'error', + 'prefer-template': 'error', 'prettier/prettier': 'error', 'require-yield': 'error', 'use-isnan': 'error', 'valid-typeof': 'error', camelcase: ['error', {properties: 'always'}], eqeqeq: ['error', 'smart'] + }, + settings: { + 'import/resolver': { + node: { + extensions: ['.js', '.ts'] + } + } } } diff --git a/node_modules/eslint-plugin-github/lib/configs/relay.js b/node_modules/eslint-plugin-github/lib/configs/relay.js deleted file mode 100644 index 45b9b3e3..00000000 --- a/node_modules/eslint-plugin-github/lib/configs/relay.js +++ /dev/null @@ -1,13 +0,0 @@ -module.exports = { - parser: 'babel-eslint', - plugins: ['graphql'], - rules: { - 'graphql/no-deprecated-fields': [ - 'error', - { - env: 'relay', - tagName: 'graphql' - } - ] - } -} diff --git a/node_modules/eslint-plugin-github/lib/configs/typescript.js b/node_modules/eslint-plugin-github/lib/configs/typescript.js index 3ae24406..ff480bef 100644 --- a/node_modules/eslint-plugin-github/lib/configs/typescript.js +++ b/node_modules/eslint-plugin-github/lib/configs/typescript.js @@ -1,13 +1,15 @@ module.exports = { extends: ['plugin:@typescript-eslint/recommended', 'prettier', 'prettier/@typescript-eslint'], - parserOptions: { - project: './tsconfig.json' - }, + parser: '@typescript-eslint/parser', plugins: ['@typescript-eslint', 'github'], rules: { + camelcase: 'off', + 'no-unused-vars': 'off', + '@typescript-eslint/interface-name-prefix': 'off', '@typescript-eslint/array-type': ['error', {default: 'array-simple'}], '@typescript-eslint/no-use-before-define': 'off', '@typescript-eslint/explicit-member-accessibility': 'off', - '@typescript-eslint/explicit-function-return-type': 'off' + '@typescript-eslint/explicit-function-return-type': 'off', + '@typescript-eslint/no-non-null-assertion': 'off' } } diff --git a/node_modules/eslint-plugin-github/lib/dependency-graph.js b/node_modules/eslint-plugin-github/lib/dependency-graph.js deleted file mode 100644 index d92a38ef..00000000 --- a/node_modules/eslint-plugin-github/lib/dependency-graph.js +++ /dev/null @@ -1,67 +0,0 @@ -const readPkgUp = require('read-pkg-up') -const path = require('path') - -const dependencyGraph = new Map() -exports.dependencyGraph = dependencyGraph - -exports.entries = new Set() - -const entryWhitelist = [/\/tests?\//, /\.test\.js$/, /\.config\.js$/] - -exports.checkEntriesWhitelist = filename => { - for (const re of entryWhitelist) { - if (re.test(filename)) { - exports.entries.add(filename) - } - } -} - -const packageFile = readPkgUp.sync() - -function recordPackageEntry(entry) { - exports.entries.add(path.resolve(packageFile.path, '..', entry)) -} - -if (packageFile) { - for (const key in packageFile.packageJson) { - if (key === 'main') { - recordPackageEntry(packageFile.packageJson.main) - } else if (key === 'entries') { - packageFile.packageJson.entries.forEach(recordPackageEntry) - } else if (/-bundles$/.test(key)) { - // github-asset-pipeline internal manifest format - Object.keys(packageFile.packageJson[key]).forEach(recordPackageEntry) - } - } -} - -function gatherImported() { - const filenames = new Set() - const identifiers = new Set() - - for (const {imports} of dependencyGraph.values()) { - for (const [importedFilename, importedIdentifiers] of imports) { - // require.resolve will expand any symlinks to their fully qualified - // directories. We can use this (with the absolute path given in - // importedFilename to quickly expand symlinks, which allows us to have - // symlinks (aka workspaces) in node_modules, and not fail the lint. - const fullyQualifiedImportedFilename = require.resolve(importedFilename) - filenames.add(fullyQualifiedImportedFilename) - - for (const importedIdentifier of importedIdentifiers) { - identifiers.add(`${fullyQualifiedImportedFilename}#${importedIdentifier}`) - } - } - } - - return {filenames, identifiers} -} - -let importedCache = null - -exports.imported = function() { - if (!importedCache) { - importedCache = gatherImported() - } - return importedCache -} diff --git a/node_modules/eslint-plugin-github/lib/index.js b/node_modules/eslint-plugin-github/lib/index.js index 748c326c..63f9847b 100644 --- a/node_modules/eslint-plugin-github/lib/index.js +++ b/node_modules/eslint-plugin-github/lib/index.js @@ -4,31 +4,23 @@ module.exports = { 'async-currenttarget': require('./rules/async-currenttarget'), 'async-preventdefault': require('./rules/async-preventdefault'), 'authenticity-token': require('./rules/authenticity-token'), - 'dependency-graph': require('./rules/dependency-graph'), - 'flow-to-typescript': require('./rules/flow-to-typescript'), 'get-attribute': require('./rules/get-attribute'), 'js-class-name': require('./rules/js-class-name'), 'no-blur': require('./rules/no-blur'), 'no-d-none': require('./rules/no-d-none'), 'no-dataset': require('./rules/no-dataset'), - 'no-flow-weak': require('./rules/no-flow-weak'), 'no-implicit-buggy-globals': require('./rules/no-implicit-buggy-globals'), 'no-innerText': require('./rules/no-innerText'), - 'no-noflow': require('./rules/no-noflow'), 'no-then': require('./rules/no-then'), 'unescaped-html-literal': require('./rules/unescaped-html-literal'), - 'unused-export': require('./rules/unused-export'), - 'unused-module': require('./rules/unused-module') + 'no-useless-passive': require('./rules/no-useless-passive'), + 'prefer-observers': require('./rules/prefer-observers'), + 'require-passive-events': require('./rules/require-passive-events') }, configs: { - app: require('./configs/app'), + internal: require('./configs/internal'), browser: require('./configs/browser'), - es6: require('./configs/es6'), - flow: require('./configs/flow'), - node: require('./configs/node'), - react: require('./configs/react'), recommended: require('./configs/recommended'), - relay: require('./configs/relay'), typescript: require('./configs/typescript') } } diff --git a/node_modules/eslint-plugin-github/lib/rules/dependency-graph.js b/node_modules/eslint-plugin-github/lib/rules/dependency-graph.js deleted file mode 100644 index e8304776..00000000 --- a/node_modules/eslint-plugin-github/lib/rules/dependency-graph.js +++ /dev/null @@ -1,110 +0,0 @@ -const resolve = require('eslint-module-utils/resolve').default - -const {dependencyGraph, checkEntriesWhitelist, entries} = require('../dependency-graph') - -const STAR = '*' -const DEFAULT = 'default' - -module.exports = { - meta: { - docs: {} - }, - - create(context) { - const filename = context.getFilename() - const sourceCode = context.getSourceCode() - - const imports = new Map() - const exports = new Set() - - checkEntriesWhitelist(filename) - - function recordImport(importPath, symbol) { - let symbols = imports.get(importPath) - if (!symbols) { - symbols = new Set() - imports.set(importPath, symbols) - } - - if (symbol) { - symbols.add(symbol) - } - } - - function recordExport(symbol) { - if (symbol) { - exports.add(symbol) - } - } - - return { - ImportDeclaration(node) { - const resolvedPath = resolve(node.source.value, context) - if (!resolvedPath) { - return - } - - recordImport(resolvedPath) - - node.specifiers.forEach(specifier => { - if (specifier.type === 'ImportDefaultSpecifier') { - recordImport(resolvedPath, DEFAULT) - } else if (specifier.type === 'ImportSpecifier') { - recordImport(resolvedPath, specifier.imported.name) - } - }) - }, - ExportDefaultDeclaration() { - recordExport(DEFAULT) - }, - ExportNamedDeclaration(node) { - if (node.declaration == null) return - - if (node.declaration.id != null) { - recordExport(node.declaration.id.name) - } - - if (node.declaration.declarations != null) { - for (const declaration of node.declaration.declarations) { - recordExport(declaration.id.name) - } - } - }, - CallExpression(node) { - if (node.callee.type === 'Identifier' && node.callee.name === 'require' && node.arguments.length === 1) { - const pathNode = node.arguments[0] - if (pathNode.type === 'Literal' && typeof pathNode.value === 'string') { - const resolvedPath = - pathNode.type === 'Literal' && typeof pathNode.value === 'string' && resolve(pathNode.value, context) - - if (resolvedPath) { - recordImport(resolvedPath, STAR) - } - } - } - }, - MemberExpression(node) { - if (context.getScope().type !== 'module') { - return - } - - if (node.object.name === 'module' && node.property.name === 'exports') { - recordExport(DEFAULT) - } - - if (node.object.name === 'exports') { - recordExport(node.property.name) - } - }, - Program() { - const comments = sourceCode.getAllComments() - if (comments.some(token => token.type === 'Shebang')) { - entries.add(filename) - } - }, - 'Program:exit': function() { - dependencyGraph.set(filename, {imports, exports}) - } - } - } -} diff --git a/node_modules/eslint-plugin-github/lib/rules/flow-to-typescript.js b/node_modules/eslint-plugin-github/lib/rules/flow-to-typescript.js deleted file mode 100644 index b681d93e..00000000 --- a/node_modules/eslint-plugin-github/lib/rules/flow-to-typescript.js +++ /dev/null @@ -1,18 +0,0 @@ -module.exports = { - meta: { - docs: {}, - schema: [] - }, - - create(context) { - return { - Program(node) { - const comments = context.getSourceCode().getAllComments() - const enabledTypeChecker = comments.some(comment => comment.value.trim().match(/@ts-check|@flow/)) - if (!enabledTypeChecker) { - context.report(node, 'File must be type checked by TypeScript or Flow.') - } - } - } - } -} diff --git a/node_modules/eslint-plugin-github/lib/rules/js-class-name.js b/node_modules/eslint-plugin-github/lib/rules/js-class-name.js index 14f27a17..e2f2a6c5 100644 --- a/node_modules/eslint-plugin-github/lib/rules/js-class-name.js +++ b/node_modules/eslint-plugin-github/lib/rules/js-class-name.js @@ -5,17 +5,17 @@ module.exports = { }, create(context) { - var allJsClassNameRegexp = /\bjs-[_a-zA-Z0-9-]*/g - var validJsClassNameRegexp = /^js(-[a-z0-9]+)+$/g - var endWithJsClassNameRegexp = /\bjs-[_a-zA-Z0-9-]*$/g + const allJsClassNameRegexp = /\bjs-[_a-zA-Z0-9-]*/g + const validJsClassNameRegexp = /^js(-[a-z0-9]+)+$/g + const endWithJsClassNameRegexp = /\bjs-[_a-zA-Z0-9-]*$/g function checkStringFormat(node, str) { - var matches = str.match(allJsClassNameRegexp) || [] - matches.forEach(function(match) { + const matches = str.match(allJsClassNameRegexp) || [] + for (const match of matches) { if (!match.match(validJsClassNameRegexp)) { context.report(node, 'js- class names should be lowercase and only contain dashes.') } - }) + } } function checkStringEndsWithJSClassName(node, str) { @@ -40,13 +40,13 @@ module.exports = { } }, TemplateLiteral(node) { - node.quasis.forEach(function(quasi) { + for (const quasi of node.quasis) { checkStringFormat(quasi, quasi.value.raw) if (quasi.tail === false) { checkStringEndsWithJSClassName(quasi, quasi.value.raw) } - }) + } } } } diff --git a/node_modules/eslint-plugin-github/lib/rules/no-flow-weak.js b/node_modules/eslint-plugin-github/lib/rules/no-flow-weak.js deleted file mode 100644 index bcd9c96e..00000000 --- a/node_modules/eslint-plugin-github/lib/rules/no-flow-weak.js +++ /dev/null @@ -1,24 +0,0 @@ -module.exports = { - meta: { - docs: {}, - schema: [] - }, - - create(context) { - function handleComment(comment) { - var value = comment.value.trim() - if (value.match(/@flow weak/)) { - context.report(comment, "Do not use Flow 'weak' mode checking, use @flow instead.") - } - } - - return { - LineComment: handleComment, - BlockComment: handleComment, - Program() { - const comments = context.getSourceCode().getAllComments() - comments.forEach(handleComment) - } - } - } -} diff --git a/node_modules/eslint-plugin-github/lib/rules/no-implicit-buggy-globals.js b/node_modules/eslint-plugin-github/lib/rules/no-implicit-buggy-globals.js index ef48b025..66348812 100644 --- a/node_modules/eslint-plugin-github/lib/rules/no-implicit-buggy-globals.js +++ b/node_modules/eslint-plugin-github/lib/rules/no-implicit-buggy-globals.js @@ -7,14 +7,14 @@ module.exports = { create(context) { return { Program() { - var scope = context.getScope() + const scope = context.getScope() - scope.variables.forEach(function(variable) { + for (const variable of scope.variables) { if (variable.writeable) { return } - variable.defs.forEach(function(def) { + for (const def of variable.defs) { if ( def.type === 'FunctionName' || def.type === 'ClassName' || @@ -23,8 +23,8 @@ module.exports = { ) { context.report(def.node, 'Implicit global variable, assign as global property instead.') } - }) - }) + } + } } } } diff --git a/node_modules/eslint-plugin-github/lib/rules/no-noflow.js b/node_modules/eslint-plugin-github/lib/rules/no-noflow.js deleted file mode 100644 index 4d8d35a3..00000000 --- a/node_modules/eslint-plugin-github/lib/rules/no-noflow.js +++ /dev/null @@ -1,24 +0,0 @@ -module.exports = { - meta: { - docs: {}, - schema: [] - }, - - create(context) { - function handleComment(comment) { - var value = comment.value.trim() - if (value.match(/@noflow/)) { - context.report(comment, 'Do not disable Flow type checker, use @flow instead.') - } - } - - return { - LineComment: handleComment, - BlockComment: handleComment, - Program() { - const comments = context.getSourceCode().getAllComments() - comments.forEach(handleComment) - } - } - } -} diff --git a/node_modules/eslint-plugin-github/lib/rules/no-useless-passive.js b/node_modules/eslint-plugin-github/lib/rules/no-useless-passive.js new file mode 100644 index 00000000..f9eef57d --- /dev/null +++ b/node_modules/eslint-plugin-github/lib/rules/no-useless-passive.js @@ -0,0 +1,46 @@ +const passiveEventListenerNames = new Set(['touchstart', 'touchmove', 'wheel', 'mousewheel']) + +const propIsPassiveTrue = prop => prop.key && prop.key.name === 'passive' && prop.value && prop.value.value === true + +module.exports = { + meta: { + docs: {}, + fixable: 'code' + }, + + create(context) { + return { + ['CallExpression[callee.property.name="addEventListener"]']: function(node) { + const [name, listener, options] = node.arguments + if (name.type !== 'Literal') return + if (passiveEventListenerNames.has(name.value)) return + if (options && options.type === 'ObjectExpression') { + const i = options.properties.findIndex(propIsPassiveTrue) + if (i === -1) return + const passiveProp = options.properties[i] + const l = options.properties.length + const source = context.getSourceCode() + context.report({ + node: passiveProp, + message: `"${name.value}" event listener is not cancellable and so \`passive: true\` does nothing.`, + fix(fixer) { + const removals = [] + if (l === 1) { + removals.push(options) + removals.push(...source.getTokensBetween(listener, options)) + } else { + removals.push(passiveProp) + if (i > 0) { + removals.push(...source.getTokensBetween(options.properties[i - 1], passiveProp)) + } else { + removals.push(...source.getTokensBetween(passiveProp, options.properties[i + 1])) + } + } + return removals.map(t => fixer.remove(t)) + } + }) + } + } + } + } +} diff --git a/node_modules/eslint-plugin-github/lib/rules/prefer-observers.js b/node_modules/eslint-plugin-github/lib/rules/prefer-observers.js new file mode 100644 index 00000000..0e9824a6 --- /dev/null +++ b/node_modules/eslint-plugin-github/lib/rules/prefer-observers.js @@ -0,0 +1,24 @@ +const observerMap = { + scroll: 'IntersectionObserver', + resize: 'ResizeObserver' +} +module.exports = { + meta: { + docs: {}, + fixable: 'code' + }, + + create(context) { + return { + ['CallExpression[callee.property.name="addEventListener"]']: function(node) { + const [name] = node.arguments + if (name.type !== 'Literal') return + if (!(name.value in observerMap)) return + context.report({ + node, + message: `Avoid using "${name.value}" event listener. Consider using ${observerMap[name.value]} instead` + }) + } + } + } +} diff --git a/node_modules/eslint-plugin-github/lib/rules/require-passive-events.js b/node_modules/eslint-plugin-github/lib/rules/require-passive-events.js new file mode 100644 index 00000000..72b8a682 --- /dev/null +++ b/node_modules/eslint-plugin-github/lib/rules/require-passive-events.js @@ -0,0 +1,22 @@ +const passiveEventListenerNames = new Set(['touchstart', 'touchmove', 'wheel', 'mousewheel']) + +const propIsPassiveTrue = prop => prop.key && prop.key.name === 'passive' && prop.value && prop.value.value === true + +module.exports = { + meta: { + docs: {} + }, + + create(context) { + return { + ['CallExpression[callee.property.name="addEventListener"]']: function(node) { + const [name, listener, options] = node.arguments + if (!listener) return + if (name.type !== 'Literal') return + if (!passiveEventListenerNames.has(name.value)) return + if (options && options.type === 'ObjectExpression' && options.properties.some(propIsPassiveTrue)) return + context.report(node, `High Frequency Events like "${name.value}" should be \`passive: true\``) + } + } + } +} diff --git a/node_modules/eslint-plugin-github/lib/rules/unused-export.js b/node_modules/eslint-plugin-github/lib/rules/unused-export.js deleted file mode 100644 index 7a37a903..00000000 --- a/node_modules/eslint-plugin-github/lib/rules/unused-export.js +++ /dev/null @@ -1,56 +0,0 @@ -const depGraph = require('../dependency-graph') - -module.exports = { - meta: { - docs: {} - }, - - create(context) { - const filename = context.getFilename() - const {identifiers} = depGraph.imported() - - if (depGraph.entries.has(filename)) { - return {} - } - - if (identifiers.has(`${filename}#*`)) { - return {} - } - - return { - ExportDefaultDeclaration(node) { - if (!identifiers.has(`${filename}#default`)) { - context.report(node, 'Export was not imported by any modules.') - } - }, - ExportNamedDeclaration(node) { - if (node.declaration == null) return - - if (node.declaration.id != null) { - if (!identifiers.has(`${filename}#${node.declaration.id.name}`)) { - context.report(node, 'Export was not imported by any modules.') - } - } - - if (node.declaration.declarations != null) { - for (const declaration of node.declaration.declarations) { - if (!identifiers.has(`${filename}#${declaration.id.name}`)) { - context.report(node, 'Export was not imported by any modules.') - } - } - } - }, - MemberExpression(node) { - if (context.getScope().type !== 'module') { - return - } - - if (node.object.name === 'exports') { - if (!identifiers.has(`${filename}#${node.property.name}`)) { - context.report(node.parent, 'Export was not imported by any modules.') - } - } - } - } - } -} diff --git a/node_modules/eslint-plugin-github/lib/rules/unused-module.js b/node_modules/eslint-plugin-github/lib/rules/unused-module.js deleted file mode 100644 index 7426479e..00000000 --- a/node_modules/eslint-plugin-github/lib/rules/unused-module.js +++ /dev/null @@ -1,24 +0,0 @@ -const depGraph = require('../dependency-graph') - -module.exports = { - meta: { - docs: {} - }, - - create(context) { - const filename = context.getFilename() - - if (depGraph.entries.has(filename)) { - return {} - } - - return { - Program(node) { - const {filenames} = depGraph.imported() - if (!filenames.has(filename)) { - context.report(node, 'Module was not imported by any files.') - } - } - } - } -} diff --git a/node_modules/eslint-plugin-github/package.json b/node_modules/eslint-plugin-github/package.json index c82d89b9..d700da49 100644 --- a/node_modules/eslint-plugin-github/package.json +++ b/node_modules/eslint-plugin-github/package.json @@ -1,23 +1,18 @@ { "name": "eslint-plugin-github", - "version": "3.4.1", + "version": "4.1.1", "description": "An opinionated collection of ESLint shared configs and rules used by GitHub.", "main": "lib/index.js", "entries": [ "lib/formatters/stylish-fixes.js" ], "bin": { - "eslint-github-init": "bin/eslint-github-init.js", - "eslint-ignore-errors": "bin/eslint-ignore-errors.js", - "eslint-unused-modules": "bin/eslint-unused-modules.js", - "flow-coverage": "bin/flow-coverage.js", - "github-lint": "bin/github-lint.js", - "npm-check-github-package-requirements": "bin/npm-check-github-package-requirements.js" + "eslint-ignore-errors": "bin/eslint-ignore-errors.js" }, "scripts": { "pretest": "mkdir -p node_modules/ && ln -fs $(pwd) node_modules/", "eslint-check": "eslint --print-config .eslintrc.js | eslint-config-prettier-check", - "test": "npm run eslint-check && bin/github-lint.js && mocha tests/" + "test": "npm run eslint-check && eslint . && mocha tests/" }, "repository": { "type": "git", @@ -29,45 +24,28 @@ "url": "https://github.com/github/eslint-plugin-github/issues" }, "homepage": "https://github.com/github/eslint-plugin-github#readme", - "engines": { - "node": ">=8.11.1" - }, "dependencies": { - "@typescript-eslint/eslint-plugin": ">=2.5.0", - "@typescript-eslint/parser": ">=2.5.0", - "babel-eslint": ">=10.0.3", - "eslint-config-prettier": ">=6.4.0", + "@typescript-eslint/eslint-plugin": ">=2.25.0", + "@typescript-eslint/parser": ">=2.25.0", + "eslint-config-prettier": ">=6.10.1", "eslint-plugin-eslint-comments": ">=3.0.1", - "eslint-plugin-flowtype": ">=4.3.0", - "eslint-plugin-graphql": ">=3.0.1", - "eslint-plugin-import": ">=2.18.2", - "eslint-plugin-jsdoc": ">=15.5.2", - "eslint-plugin-jsx-a11y": ">=6.0.0", - "eslint-plugin-prettier": ">=2.6.0", - "eslint-plugin-react": ">=7.7.0", - "eslint-plugin-relay": ">=1.0.0", + "eslint-plugin-import": ">=2.20.1", + "eslint-plugin-prettier": ">=3.1.2", "eslint-rule-documentation": ">=1.0.0", - "inquirer": ">=6.0.0", "prettier": ">=1.12.0", - "read-pkg-up": ">=6.0.0", - "supports-color": "^7.1.0", - "svg-element-attributes": ">=1.2.1" + "svg-element-attributes": ">=1.3.1" }, + "prettier": "@github/prettier-config", "peerDependencies": { - "eslint": ">=4.19.0", - "flow-bin": ">=0.70.0", - "graphql": ">=14.0.0" + "eslint": ">=4.19.0" }, "files": [ "bin/*", - "lib/*", - "prettier.config.js" + "lib/*" ], "devDependencies": { - "eslint": ">=6.5.1", - "flow-bin": ">=0.110.1", - "graphql": ">=14.5.8", - "mocha": ">=6.2.2", - "rimraf": "^3.0.0" + "@github/prettier-config": "0.0.4", + "eslint": ">=7.0.0", + "mocha": ">=7.1.1" } } diff --git a/node_modules/eslint-plugin-github/prettier.config.js b/node_modules/eslint-plugin-github/prettier.config.js deleted file mode 100644 index 9ef99788..00000000 --- a/node_modules/eslint-plugin-github/prettier.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - printWidth: 120, - semi: false, - singleQuote: true, - bracketSpacing: false -} diff --git a/node_modules/eslint-plugin-graphql/.eslintrc.js b/node_modules/eslint-plugin-graphql/.eslintrc.js deleted file mode 100644 index 772bbd0d..00000000 --- a/node_modules/eslint-plugin-graphql/.eslintrc.js +++ /dev/null @@ -1,12 +0,0 @@ -module.exports = { - extends: "eslint:recommended", - parserOptions: { - ecmaVersion: 2018, - sourceType: "module" - }, - env: { - mocha: true, - node: true, - es6: true, - } -}; diff --git a/node_modules/eslint-plugin-graphql/.github/PULL_REQUEST_TEMPLATE.md b/node_modules/eslint-plugin-graphql/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 585f4eea..00000000 --- a/node_modules/eslint-plugin-graphql/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,15 +0,0 @@ - - -TODO: - -- [ ] Make sure all of the significant new logic is covered by tests -- [ ] Rebase your changes on master so that they can be merged easily -- [ ] Make sure all tests pass -- [ ] Update CHANGELOG.md with your change -- [ ] If this was a change that affects the external API, update the README - diff --git a/node_modules/eslint-plugin-graphql/.github/workflows/nodejs.yml b/node_modules/eslint-plugin-graphql/.github/workflows/nodejs.yml deleted file mode 100644 index 086e8e7b..00000000 --- a/node_modules/eslint-plugin-graphql/.github/workflows/nodejs.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Node CI - -on: - push: - branches: - - !master - -jobs: - build: - - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [8.x, 10.x, 12.x] - - steps: - - uses: actions/checkout@v1 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - name: npm install, build, and test - run: | - npm install - npm run build --if-present - npm test diff --git a/node_modules/eslint-plugin-graphql/.tav.yml b/node_modules/eslint-plugin-graphql/.tav.yml deleted file mode 100644 index 925bd5ed..00000000 --- a/node_modules/eslint-plugin-graphql/.tav.yml +++ /dev/null @@ -1,4 +0,0 @@ - -graphql: - versions: ^0.12.0 || ^0.13.0 || ^14.0.0 - commands: mocha test/index.js diff --git a/node_modules/eslint-plugin-graphql/.travis.yml b/node_modules/eslint-plugin-graphql/.travis.yml deleted file mode 100644 index f8ae0b66..00000000 --- a/node_modules/eslint-plugin-graphql/.travis.yml +++ /dev/null @@ -1,12 +0,0 @@ -language: node_js -node_js: - - "8" - - "10" -install: - - npm install - -script: - - npm run lint && npm test - -# Allow Travis tests to run in containers. -sudo: false diff --git a/node_modules/eslint-plugin-graphql/CHANGELOG.md b/node_modules/eslint-plugin-graphql/CHANGELOG.md deleted file mode 100644 index d1921500..00000000 --- a/node_modules/eslint-plugin-graphql/CHANGELOG.md +++ /dev/null @@ -1,146 +0,0 @@ -# Change log - -### vNEXT - -### v3.1.1 - -- Update the `required-fields` rule to handle inline fragments without field ancestors. [PR #240](https://github.com/apollographql/eslint-plugin-graphql/pull/240) by [Henry Q. Dineen](https://github.com/henryqdineen) - -### v3.1.0 - -- Fix an issue that caused `graphql/required-fields` to throw on non-existent field references. [PR #231](https://github.com/apollographql/eslint-plugin-graphql/pull/231) by [Vitor Balocco](https://github.com/vitorbal) -- chore: Update dependency `graphql-tools` to `v4.0.5`. [PR #239](https://github.com/apollographql/eslint-plugin-graphql/pull/239) -- chore: Update dependency `eslint` to `v5.16.0`. [PR #218](https://github.com/apollographql/eslint-plugin-graphql/pull/218) -- chore: Update dependency `graphql` to `v14.4.2`. [PR #220](https://github.com/apollographql/eslint-plugin-graphql/pull/220) -- chore: Update dependency `test-all-versions` to `v4.1.1`. [PR #230](https://github.com/apollographql/eslint-plugin-graphql/pull/230) -- chore: Update dependency `lodash` to `v4.17.13`. [PR #234](https://github.com/apollographql/eslint-plugin-graphql/pull/234) -- chore: Update dependency `mocha` to `v6`. [PR #213](https://github.com/apollographql/eslint-plugin-graphql/pull/213) -- chore: Running `prettier` on all files [PR #237](https://github.com/apollographql/eslint-plugin-graphql/pull/237) - -### v3.0.3 - -- chore: Update dependency `graphql-tools` to `v4.0.4`. [PR #210](https://github.com/apollographql/eslint-plugin-graphql/pull/210) -- chore: Update dependency `eslint` to `v5.12.1`. [PR #206](https://github.com/apollographql/eslint-plugin-graphql/pull/206) -- chore: Update dependency `graphql` to `v14.1.1`. [PR #208](https://github.com/apollographql/eslint-plugin-graphql/pull/208) - -### v3.0.2 - -- Fix regression which caused `graphql/required-fields` to throw on non-existent field references. [PR #203](https://github.com/apollographql/eslint-plugin-graphql/pull/203) by [Matt Bretl](https://github.com/mattbretl) - -### v3.0.1 - -- Fix support for multi-schema workspaces [PR #179](https://github.com/apollographql/eslint-plugin-graphql/pull/179) by [Pat Sissons](https://github.com/patsissons) - -### v3.0.0 - -- BREAKING: The `required-fields` rule has been significantly changed to make it a completely reliable method of ensuring an `id` field (or any other field name) is always requested when available. [PR #199](https://github.com/apollographql/eslint-plugin-graphql/pull/199) Here is the behavior, let's say we are requiring field `id`: - - On any field whose return type defines a field called `id`, the selection set must directly contain `id`. - - In any named fragment declaration whose type defines a field called `id`, the selection set must directly contain `id`. - - An inline fragment whose type defines a field called `id` must contain `id` in its selection set unless its parent is also an inline fragment that contains the field `id`. - - Here's a specific case which is _no longer valid_: - - `query { greetings { hello ... on Greetings { id } } }` - - This must now be written as `query { greetings { id hello ... on Greetings { id } } }` - - This is a more conservative approach than before, driven by the fact that it's quite hard to ensure that a combination of inline fragments actually covers all of the possible types of a selection set. -- Fix breaking change in `graphql@^14.0.0` that renamed `ProvidedNonNullArguments` to `ProvidedRequiredArguments` [#192](https://github.com/apollographql/eslint-plugin-graphql/pull/192) -- Update dependencies to graphql-tools 4 and eslint 5.9 [#193](https://github.com/apollographql/eslint-plugin-graphql/pull/193) - -### v2.1.1 - -- Fix support for InlineFragments with the `required-fields` rule in [#140](https://github.com/apollographql/eslint-plugin-graphql/pull/140/files) by [Steve Hollaar](https://github.com/stevehollaar) -- Fix error location information for literal .graphql files and strings with leading newlines in [#122](https://github.com/apollographql/eslint-plugin-graphql/pull/122) by [Dan Freeman](https://github.com/dfreeman) -- Add [`fraql`](https://github.com/smooth-code/fraql) environment - -### v2.1.0 - -- Retrieves `.graphqlconfig` relative to the file being linted, which re-enables support for `vscode-eslint` using `.graphqlconfig` in [#108](https://github.com/apollographql/eslint-plugin-graphql/pull/108) by [Jon Wong][https://github.com/jnwng/] -- Cache schema reading/parsing results each time a rule is created in [#137](https://github.com/apollographql/eslint-plugin-graphql/pull/137) by [Kristján Oddsson](https://github.com/koddsson) - -### v2.0.0 - -- Add support for `graphql-js@^0.12.0` and `graphql-js@^0.13.0` in [Jon Wong](https://github.com/jnwng/)[#119](https://github.com/apollographql/eslint-plugin-graphql/pull/93) -- Update list of available validators in [#121]((https://github.com/apollographql/eslint-plugin-graphql/pull/121) by [Pleun Vanderbauwhede](https://github.com/pleunv) -- Update supported Node `engines` to >= 6.0 in [#133](https://github.com/apollographql/eslint-plugin-graphql/pull/133) by [Jon Wong](https://github.com/jnwng/) - -### v1.5.0 - -- Add new rule `no-deprecated-fields` in [Kristján Oddsson](https://github.com/koddsson/)[#92](https://github.com/apollographql/eslint-plugin-graphql/pull/93) -- Add support for deprecated fields on enums in [#100](https://github.com/apollographql/eslint-plugin-graphql/pull/100) by [Daniel Rinehart](https://github.com/NeoPhi) -- Bumped `babel-eslint` and pinned `graphql-config` in [#101](https://github.com/apollographql/eslint-plugin-graphql/pull/101) by [Jon Wong](https://github.com/jnwng) - -### v1.4.1 - -Skipped v1.4.0 because of incorrect version tag in `package.json` - -- Move `graphql-js` to `peerDependencies`, support `graphql@^0.11.0` in [Jon Wong](https://github.com/jnwng/)[#91](https://github.com/apollographql/eslint-plugin-graphql/pull/91) -- Fix escaping of literal .graphql files [Simon Lydell](https://github.com/lydell/) in [#88](https://github.com/apollographql/eslint-plugin-graphql/pull/88) -- Fix ESLint config validation [Simon Lydell](https://github.com/lydell/) in [#86](https://github.com/apollographql/eslint-plugin-graphql/pull/86) - -### v1.3.0 - -- add support for [.graphqlconfig](https://github.com/graphcool/graphql-config) [Roman Hotsiy](https://github.com/RomanGotsiy) in [#80](https://github.com/apollographql/eslint-plugin-graphql/pull/80) -- add `graphql/capitalized-type-name` rule to warn on uncapitalized type names [DianaSuvorova](https://github.com/DianaSuvorova) in [#81](https://github.com/apollographql/eslint-plugin-graphql/pull/81) - -### v1.2.0 - -- Add env config option for required-fields rule [Justin Schulz](https://github.com/PepperTeasdale) in [#75](https://github.com/apollographql/eslint-plugin-graphql/pull/75) - -### v1.1.0 - -- Add option to pass schema as string [Christopher Cliff](https://github.com/christophercliff) in [#78](https://github.com/apollographql/eslint-plugin-graphql/pull/78) - -### v1.0.0 - -- Fix template env for older runtimes (eg. node 5 and earlier) [Justin Schulz](https://github.com/PepperTeasdale) in [#73](https://github.com/apollographql/eslint-plugin-graphql/pull/73) -- Updated `graphql-js` to `v0.10.1` in [#67](https://github.com/apollographql/eslint-plugin-graphql/pull/67) [Sashko Stubailo](https://github.com/stubailo) - -### v0.8.2 - -- Remove `KnownFragmentNames` and `UnusedFragment` from default rules in `literal` env. [Justin Schulz](https://github.com/PepperTeasdale) in [#70](https://github.com/apollographql/eslint-plugin-graphql/pull/70) - -### v0.8.1 - -- Fix `graphql/required-fields` throwing on non-existent field reference [Benjie](https://github.com/benjie) in [#65](https://github.com/apollographql/eslint-plugin-graphql/pull/65) - -### v0.8.0 - -- Updated `graphql` dependency to resolve test failures ([wording change](https://github.com/graphql/graphql-js/commit/ba401e154461bca5323ca9121c6dacaee10ebe88), no API change) [jnwng](https://github.com/jnwng) -- Add lint rule to enforce that required fields are specified. [rgoldfinger](https://github.com/rgoldfinger) in [#47](https://github.com/apollographql/eslint-plugin-graphql/pull/50) - -### v0.7.0 - -- Add lint rule to enforce that operations have names [gauravmk](https://github.com/gauravmk) in [#47](https://github.com/apollographql/eslint-plugin-graphql/pull/47) - -### v0.6.1 - -- Remove `babel-polyfill` from runtime dependencies, since it was only being used in test code. [joelgriffith](https://github.com/joelgriffith) in [#44](https://github.com/apollographql/eslint-plugin-graphql/pull/44) - -### v0.6.0 - -- Update graphql-js dependency to 0.9.0 [jonbretman](https://github.com/jonbretman) in [#41](https://github.com/apollostack/eslint-plugin-graphql/pull/41) - -### v0.5.0 - -- Take into account Apollo fragment interpolation rules [jnwng](https://github.com/jnwng) in [#33](https://github.com/apollostack/eslint-plugin-graphql/pull/33) -- Update graphql-js dependency to 0.8.2 [jonbretman](https://github.com/jonbretman) in [#40](https://github.com/apollostack/eslint-plugin-graphql/pull/40) - -### v0.4.3 - -- Add `'literal'` option to options schema, so that it can actually be used. [stefanorg](https://github.com/stefanorg) in [#39](https://github.com/apollostack/eslint-plugin-graphql/pull/39) - -### v0.4.2 - -- Added `'literal'` option to `env` for when working with `.graphql` and `.gql` files, by [jtmthf in #36](https://github.com/apollostack/eslint-plugin-graphql/pull/36) - -### v0.4.1 - -- Support for selecting validation rules one by one, by [erydo in - #34](https://github.com/apollostack/eslint-plugin-graphql/pull/34) - -### v0.4.0 - -- Support for multiple schemas, by [erydo in - #31](https://github.com/apollostack/eslint-plugin-graphql/pull/31) - -### v0.3.1 - -- We didn't keep track of changes before this version. Consult the commit log. diff --git a/node_modules/eslint-plugin-graphql/CONTRIBUTING.md b/node_modules/eslint-plugin-graphql/CONTRIBUTING.md deleted file mode 100644 index 651c0717..00000000 --- a/node_modules/eslint-plugin-graphql/CONTRIBUTING.md +++ /dev/null @@ -1,82 +0,0 @@ -# Apollo Contributor Guide - -Excited about Apollo and want to make it better? We’re excited too! - -Apollo is a community of developers just like you, striving to create the best tools and libraries around GraphQL. We welcome anyone who wants to contribute or provide constructive feedback, no matter the age or level of experience. If you want to help but don't know where to start, let us know, and we'll find something for you. - -Oh, and if you haven't already, sign up for the [Apollo Slack](http://www.apollodata.com/#slack). - -Here are some ways to contribute to the project, from easiest to most difficult: - -* [Reporting bugs](#reporting-bugs) -* [Improving the documentation](#improving-the-documentation) -* [Responding to issues](#responding-to-issues) -* [Small bug fixes](#small-bug-fixes) -* [Suggesting features](#suggesting-features) -* [Big pull requests](#big-prs) - -## Issues - -### Reporting bugs - -If you encounter a bug, please file an issue on GitHub via the repository of the sub-project you think contains the bug. If an issue you have is already reported, please add additional information or add a 👍 reaction to indicate your agreement. - -While we will try to be as helpful as we can on any issue reported, please include the following to maximize the chances of a quick fix: - -1. **Intended outcome:** What you were trying to accomplish when the bug occurred, and as much code as possible related to the source of the problem. -2. **Actual outcome:** A description of what actually happened, including a screenshot or copy-paste of any related error messages, logs, or other output that might be related. Places to look for information include your browser console, server console, and network logs. Please avoid non-specific phrases like “didn’t work” or “broke”. -3. **How to reproduce the issue:** Instructions for how the issue can be reproduced by a maintainer or contributor. Be as specific as possible, and only mention what is necessary to reproduce the bug. If possible, try to isolate the exact circumstances in which the bug occurs and avoid speculation over what the cause might be. - -Creating a good reproduction really helps contributors investigate and resolve your issue quickly. In many cases, the act of creating a minimal reproduction illuminates that the source of the bug was somewhere outside the library in question, saving time and effort for everyone. - -### Improving the documentation - -Improving the documentation, examples, and other open source content can be the easiest way to contribute to the library. If you see a piece of content that can be better, open a PR with an improvement, no matter how small! If you would like to suggest a big change or major rewrite, we’d love to hear your ideas but please open an issue for discussion before writing the PR. - -### Responding to issues - -In addition to reporting issues, a great way to contribute to Apollo is to respond to other peoples' issues and try to identify the problem or help them work around it. If you’re interested in taking a more active role in this process, please go ahead and respond to issues. And don't forget to say "Hi" on Apollo Slack! - -### Small bug fixes - -For a small bug fix change (less than 20 lines of code changed), feel free to open a pull request. We’ll try to merge it as fast as possible and ideally publish a new release on the same day. The only requirement is, make sure you also add a test that verifies the bug you are trying to fix. - -### Suggesting features - -Most of the features in Apollo came from suggestions by you, the community! We welcome any ideas about how to make Apollo better for your use case. Unless there is overwhelming demand for a feature, it might not get implemented immediately, but please include as much information as possible that will help people have a discussion about your proposal: - -1. **Use case:** What are you trying to accomplish, in specific terms? Often, there might already be a good way to do what you need and a new feature is unnecessary, but it’s hard to know without information about the specific use case. -2. **Could this be a plugin?** In many cases, a feature might be too niche to be included in the core of a library, and is better implemented as a companion package. If there isn’t a way to extend the library to do what you want, could we add additional plugin APIs? It’s important to make the case for why a feature should be part of the core functionality of the library. -3. **Is there a workaround?** Is this a more convenient way to do something that is already possible, or is there some blocker that makes a workaround unfeasible? - -Feature requests will be labeled as such, and we encourage using GitHub issues as a place to discuss new features and possible implementation designs. Please refrain from submitting a pull request to implement a proposed feature until there is consensus that it should be included. This way, you can avoid putting in work that can’t be merged in. - -Once there is a consensus on the need for a new feature, proceed as listed below under “Big PRs”. - -## Big PRs - -This includes: - -- Big bug fixes -- New features - -For significant changes to a repository, it’s important to settle on a design before starting on the implementation. This way, we can make sure that major improvements get the care and attention they deserve. Since big changes can be risky and might not always get merged, it’s good to reduce the amount of possible wasted effort by agreeing on an implementation design/plan first. - -1. **Open an issue.** Open an issue about your bug or feature, as described above. -2. **Reach consensus.** Some contributors and community members should reach an agreement that this feature or bug is important, and that someone should work on implementing or fixing it. -3. **Agree on intended behavior.** On the issue, reach an agreement about the desired behavior. In the case of a bug fix, it should be clear what it means for the bug to be fixed, and in the case of a feature, it should be clear what it will be like for developers to use the new feature. -4. **Agree on implementation plan.** Write a plan for how this feature or bug fix should be implemented. What modules need to be added or rewritten? Should this be one pull request or multiple incremental improvements? Who is going to do each part? -5. **Submit PR.** In the case where multiple dependent patches need to be made to implement the change, only submit one at a time. Otherwise, the others might get stale while the first is reviewed and merged. Make sure to avoid “while we’re here” type changes - if something isn’t relevant to the improvement at hand, it should be in a separate PR; this especially includes code style changes of unrelated code. -6. **Review.** At least one core contributor should sign off on the change before it’s merged. Look at the “code review” section below to learn about factors are important in the code review. If you want to expedite the code being merged, try to review your own code first! -7. **Merge and release!** - -### Code review guidelines - -It’s important that every piece of code in Apollo packages is reviewed by at least one core contributor familiar with that codebase. Here are some things we look for: - -1. **Required CI checks pass.** This is a prerequisite for the review, and it is the PR author's responsibility. As long as the tests don’t pass, the PR won't get reviewed. -2. **Simplicity.** Is this the simplest way to achieve the intended goal? If there are too many files, redundant functions, or complex lines of code, suggest a simpler way to do the same thing. In particular, avoid implementing an overly general solution when a simple, small, and pragmatic fix will do. -3. **Testing.** Do the tests ensure this code won’t break when other stuff changes around it? When it does break, will the tests added help us identify which part of the library has the problem? Did we cover an appropriate set of edge cases? Look at the test coverage report if there is one. Are all significant code paths in the new code exercised at least once? -4. **No unnecessary or unrelated changes.** PRs shouldn’t come with random formatting changes, especially in unrelated parts of the code. If there is some refactoring that needs to be done, it should be in a separate PR from a bug fix or feature, if possible. -5. **Code has appropriate comments.** Code should be commented, or written in a clear “self-documenting” way. -6. **Idiomatic use of the language.** In TypeScript, make sure the typings are specific and correct. In ES2015, make sure to use imports rather than require and const instead of var, etc. Ideally a linter enforces a lot of this, but use your common sense and follow the style of the surrounding code. diff --git a/node_modules/eslint-plugin-graphql/README.md b/node_modules/eslint-plugin-graphql/README.md deleted file mode 100644 index 19b2a41c..00000000 --- a/node_modules/eslint-plugin-graphql/README.md +++ /dev/null @@ -1,583 +0,0 @@ -# eslint-plugin-graphql -[![npm version](https://badge.fury.io/js/eslint-plugin-graphql.svg)](https://badge.fury.io/js/eslint-plugin-graphql) -[![Build Status](https://travis-ci.org/apollographql/eslint-plugin-graphql.svg?branch=master)](https://travis-ci.org/apollographql/eslint-plugin-graphql) -[![Get on Slack](https://img.shields.io/badge/slack-join-orange.svg)](http://www.apollostack.com/#slack) - -An ESLint plugin that checks tagged query strings inside JavaScript, or queries inside `.graphql` files, against a GraphQL schema. - -``` -npm install eslint-plugin-graphql -``` - -![Screenshot from Atom](https://github.com/apollostack/eslint-plugin-graphql/raw/master/screenshot.png) - -`eslint-plugin-graphql` has built-in settings for four GraphQL clients out of the box: - -1. [Apollo client](http://docs.apollostack.com/apollo-client/index.html) -2. [Relay](https://facebook.github.io/relay/) -3. [Lokka](https://github.com/kadirahq/lokka) -4. [FraQL](https://github.com/smooth-code/fraql) - -If you want to lint your GraphQL schema, rather than queries, check out [cjoudrey/graphql-schema-linter](https://github.com/cjoudrey/graphql-schema-linter). - -### Importing schema JSON - -You'll need to import your [introspection query result](https://github.com/graphql/graphql-js/blob/master/src/utilities/introspectionQuery.js) or the schema as a string in the Schema Language format. This can be done if you define your ESLint config in a JS file. - -### Retrieving a remote GraphQL schema - -[graphql-cli](https://github.com/graphcool/graphql-cli) provides a `get-schema` command (in conjunction with a `.graphqlconfig` file) that makes retrieving remote schemas very simple. - -[apollo-codegen](https://github.com/apollographql/apollo-codegen) also provides an [introspect-schema](https://github.com/apollographql/apollo-codegen#introspect-schema) command that can get your remote schemas as well - -### Common options - -All of the rules provided by this plugin have a few options in common. There are examples of how to use these with Apollo, Relay, Lokka, FraQL and literal files further down. - -- `env`: Import default settings for your GraphQL client. Supported values: `'apollo'`, `'relay'`, `'lokka'`, `'fraql'` `'literal'`. Defaults to `'apollo'`. This is used for the slight parsing differences in the GraphQL syntax between Apollo, Relay, Lokka and FraQL as well as giving nice defaults to some other options. - -- `tagName`: The name of the template literal tag that this plugin should look for when searching for GraphQL queries. It has different defaults depending on the `env` option: - - - `'relay'`: `'Relay.QL'` - - `'internal'`: Special automatic value - - others: `'gql'`, `'graphql'` - -You also have to specify a schema. You can either do it using _one_ of these options: - -- `schemaJson`: Your schema as JSON. -- `schemaJsonFilepath`: The absolute path to your schema as a .json file. (Warning: this variant is incompatible with `eslint --cache`.) -- `schemaString`: Your schema in the Schema Language format as a string. - -Alternatively, you can use a [.graphqlconfig](https://github.com/graphcool/graphql-config) file instead of the above three options. If you do there's one more option to know about: - -- `projectName`: In case you specify multiple schemas in your `.graphqlconfig` file, choose which one to use by providing the project name here as a string. - -There's an example on how to use a `.graphqlconfig` file further down. - -### Identity template literal tag - -This plugin relies on GraphQL queries being prefixed with a special tag. In Relay and Apollo, this is always done, but other clients often take query strings without a tag. In this case, you can define an identity tag that doesn't do anything except for tell the linter this is a GraphQL query: - -```js -global.gql = (literals, ...substitutions) => { - let result = ""; - - // run the loop only for the substitution count - for (let i = 0; i < substitutions.length; i++) { - result += literals[i]; - result += substitutions[i]; - } - - // add the last literal - result += literals[literals.length - 1]; - - return result; -} -``` - -Code snippet taken from: - -Note: The linter rule could be extended to identify calls to various specific APIs to eliminate the need for a template literal tag, but this might just make the implementation a lot more complex for little benefit. - -### GraphQL literal files - -This plugin also lints GraphQL literal files ending on `.gql` or `.graphql`. -In order to do so set `env` to `'literal'` in your `.eslintrc.js` and tell eslint to check these files as well. - -```bash -eslint . --ext .js --ext .gql --ext .graphql -``` - -### Example config for Apollo - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - // Import default settings for your GraphQL client. Supported values: - // 'apollo', 'relay', 'lokka', 'fraql', 'literal' - env: 'apollo', - - // Import your schema JSON here - schemaJson: require('./schema.json'), - - // OR provide absolute path to your schema JSON (but not if using `eslint --cache`!) - // schemaJsonFilepath: path.resolve(__dirname, './schema.json'), - - // OR provide the schema in the Schema Language format - // schemaString: printSchema(schema), - - // tagName is gql by default - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Example config for Relay - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - // Import default settings for your GraphQL client. Supported values: - // 'apollo', 'relay', 'lokka', 'fraql', 'literal' - env: 'relay', - - // Import your schema JSON here - schemaJson: require('./schema.json'), - - // OR provide absolute path to your schema JSON (but not if using `eslint --cache`!) - // schemaJsonFilepath: path.resolve(__dirname, './schema.json'), - - // OR provide the schema in the Schema Language format - // schemaString: printSchema(schema), - - // tagName is set for you to Relay.QL - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Example config for Lokka - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - // Import default settings for your GraphQL client. Supported values: - // 'apollo', 'relay', 'lokka', 'fraql', 'literal' - env: 'lokka', - - // Import your schema JSON here - schemaJson: require('./schema.json'), - - // OR provide absolute path to your schema JSON (but not if using `eslint --cache`!) - // schemaJsonFilepath: path.resolve(__dirname, './schema.json'), - - // OR provide the schema in the Schema Language format - // schemaString: printSchema(schema), - - // Optional, the name of the template tag, defaults to 'gql' - tagName: 'gql' - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Example config for FraQL - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - // Import default settings for your GraphQL client. Supported values: - // 'apollo', 'relay', 'lokka', 'fraql', 'literal' - env: 'fraql', - - // Import your schema JSON here - schemaJson: require('./schema.json'), - - // OR provide absolute path to your schema JSON - // schemaJsonFilepath: path.resolve(__dirname, './schema.json'), - - // OR provide the schema in the Schema Language format - // schemaString: printSchema(schema), - - // Optional, the name of the template tag, defaults to 'gql' - tagName: 'gql' - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Example config for literal graphql files - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - // Import default settings for your GraphQL client. Supported values: - // 'apollo', 'relay', 'lokka', 'fraql', 'literal' - env: 'literal', - - // Import your schema JSON here - schemaJson: require('./schema.json'), - - // OR provide absolute path to your schema JSON (but not if using `eslint --cache`!) - // schemaJsonFilepath: path.resolve(__dirname, './schema.json'), - - // OR provide the schema in the Schema Language format - // schemaString: printSchema(schema), - - // tagName is set automatically - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Additional Schemas or Tags - -This plugin can be used to validate against multiple schemas by identifying them with different tags. This is useful for applications interacting with multiple GraphQL systems. Additional schemas can simply be appended to the options list: - -```js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - env: 'apollo', - tagName: 'FirstGQL', - schemaJson: require('./schema-first.json') - }, { - env: 'relay', - tagName: 'SecondGQL', - schemaJson: require('./schema-second.json') - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Example config when using [.graphqlconfig](https://github.com/graphcool/graphql-config) - -If you have `.graphqlconfig` file in the root of your repo you can omit schema-related -properties (`schemaJson`, `schemaJsonFilepath` and `schemaString`) from rule config. - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - // Import default settings for your GraphQL client. Supported values: - // 'apollo', 'relay', 'lokka', 'fraql', 'literal' - env: 'literal' - // no need to specify schema here, it will be automatically determined using .graphqlconfig - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -In case you use additional schemas, specify `projectName` from `.graphqlconfig` for each `tagName`: -```js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - env: 'apollo', - tagName: 'FirstGQL', - projectName: 'FirstGQLProject' - }, { - env: 'relay', - tagName: 'SecondGQL', - projectName: 'SecondGQLProject' - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -### Selecting Validation Rules - -GraphQL validation rules can be configured in the eslint rule configuration using the `validators` option. The default selection depends on the `env` setting. If no `env` is specified, all rules are enabled by default. - -The `validators` setting can be set either to a list of specific validator names or to the special value `"all"`. - -```js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - env: 'apollo', - validators: 'all', - tagName: 'FirstGQL', - schemaJson: require('./schema-first.json') - }, { - validators: ['FieldsOnCorrectType'], - tagName: 'SecondGQL', - schemaJson: require('./schema-second.json') - }] - }, - plugins: [ - 'graphql' - ] -} -``` - -The full list of available validators is: - - `ExecutableDefinitions` - - `FieldsOnCorrectType` - - `FragmentsOnCompositeTypes` - - `KnownArgumentNames` - - `KnownDirectives` (*disabled by default in `relay`*) - - `KnownFragmentNames` (*disabled by default in all envs*) - - `KnownTypeNames` - - `LoneAnonymousOperation` - - `NoFragmentCycles` - - `NoUndefinedVariables` (*disabled by default in `relay`*) - - `NoUnusedFragments` (*disabled by default in all envs*) - - `NoUnusedVariables` - - `OverlappingFieldsCanBeMerged` - - `PossibleFragmentSpreads` - - `ProvidedRequiredArguments` (*disabled by default in `relay`*) - - `ScalarLeafs` (*disabled by default in `relay`*) - - `SingleFieldSubscriptions` - - `UniqueArgumentNames` - - `UniqueDirectivesPerLocation` - - `UniqueFragmentNames` - - `UniqueInputFieldNames` - - `UniqueOperationNames` - - `UniqueVariableNames` - - `ValuesOfCorrectType` - - `VariablesAreInputTypes` - - `VariablesDefaultValueAllowed` - - `VariablesInAllowedPosition` - -### Named Operations Validation Rule - -The Named Operation rule validates that all operations are named. Naming operations is valuable for including in server-side logs and debugging. - -**Pass** -``` -query FetchUsername { - viewer { - name - } -} -``` - -**Fail** -``` -query { - viewer { - name - } -} -``` - -The rule is defined as `graphql/named-operations`. - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - env: 'apollo', - schemaJson: require('./schema.json'), - }], - "graphql/named-operations": ['warn', { - schemaJson: require('./schema.json'), - }], - }, - plugins: [ - 'graphql' - ] -} -``` -### Required Fields Validation Rule - -The Required Fields rule validates that any specified required field is part of the query, but only if that field is available in schema. This is useful to ensure that query results are cached properly in the client. - -**Pass** -``` -// 'uuid' required and present in the schema - -schema { - query { - viewer { - name - uuid - } - } -} - -query ViewerName { - viewer { - name - uuid - } -} -``` - -**Pass** -``` -// 'uuid' usually required but not present in the schema here - -schema { - query { - viewer { - name - } - } -} - -query ViewerName { - viewer { - name - } -} -``` - -**Fail** -``` -// 'uuid' required and present in the schema - -schema { - query { - viewer { - uuid - name - } - } -} - -query ViewerName { - viewer { - name - } -} -``` - -The rule is defined as `graphql/required-fields` and requires the `requiredFields` option. - -```js -// In a file called .eslintrc.js -module.exports = { - rules: { - 'graphql/required-fields': [ - 'error', - { - env: 'apollo', - schemaJsonFilepath: path.resolve(__dirname, './schema.json'), - requiredFields: ['uuid'], - }, - ], - }, - plugins: [ - 'graphql' - ] -} -``` - -### Capitalization of a first letter of a Type name - -This rule enforces that first letter of types is capitalized - -**Pass** -``` -query { - someUnion { - ... on SomeType { - someField - } - } -} -``` - -**Fail** -``` -query { - someUnion { - ... on someType { - someField - } - } -} -``` - -The rule is defined as `graphql/capitalized-type-name`. - -```js -// In a file called .eslintrc.js -module.exports = { - parser: "babel-eslint", - rules: { - "graphql/template-strings": ['error', { - env: 'apollo', - schemaJson: require('./schema.json'), - }], - "graphql/capitalized-type-name": ['warn', { - schemaJson: require('./schema.json'), - }], - }, - plugins: [ - 'graphql' - ] -} -``` - -### No Deprecated Fields Validation Rule - -The No Deprecated Fields rule validates that no deprecated fields are part of the query. This is useful to discover fields that have been marked as deprecated and shouldn't be used. - -**Fail** -``` -// 'id' requested and marked as deprecated in the schema - -schema { - query { - viewer { - id: Int @deprecated(reason: "Use the 'uuid' field instead") - uuid: String - } - } -} - -query ViewerName { - viewer { - id - } -} -``` - -The rule is defined as `graphql/no-deprecated-fields`. - -```js -// In a file called .eslintrc.js -module.exports = { - rules: { - 'graphql/no-deprecated-fields': [ - 'error', - { - env: 'relay', - schemaJson: require('./schema.json') - }, - ], - }, - plugins: [ - 'graphql' - ] -} -``` diff --git a/node_modules/eslint-plugin-graphql/lib/constants.js b/node_modules/eslint-plugin-graphql/lib/constants.js deleted file mode 100644 index 6adc6b33..00000000 --- a/node_modules/eslint-plugin-graphql/lib/constants.js +++ /dev/null @@ -1,6 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -var internalTag = exports.internalTag = "ESLintPluginGraphQLFile"; \ No newline at end of file diff --git a/node_modules/eslint-plugin-graphql/lib/createRule.js b/node_modules/eslint-plugin-graphql/lib/createRule.js deleted file mode 100644 index db506983..00000000 --- a/node_modules/eslint-plugin-graphql/lib/createRule.js +++ /dev/null @@ -1,245 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.createRule = createRule; - -var _graphql = require("graphql"); - -var _constants = require("./constants"); - -function strWithLen(len) { - // from http://stackoverflow.com/questions/14343844/create-a-string-of-variable-length-filled-with-a-repeated-character - return new Array(len + 1).join("x"); -} - -function replaceExpressions(node, context, env) { - var chunks = []; - - node.quasis.forEach(function (element, i) { - var chunk = element.value.cooked; - var value = node.expressions[i]; - - chunks.push(chunk); - - if (!env || env === "apollo") { - // In Apollo, interpolation is only valid outside top-level structures like `query` or `mutation`. - // We'll check to make sure there's an equivalent set of opening and closing brackets, otherwise - // we're attempting to do an invalid interpolation. - if (chunk.split("{").length - 1 !== chunk.split("}").length - 1) { - context.report({ - node: value, - message: "Invalid interpolation - fragment interpolation must occur outside of the brackets." - }); - throw new Error("Invalid interpolation"); - } - } - - if (!element.tail) { - // Preserve location of errors by replacing with exactly the same length - var nameLength = value.end - value.start; - - if (env === "relay" && /:\s*$/.test(chunk)) { - // The chunk before this one had a colon at the end, so this - // is a variable - - // Add 2 for brackets in the interpolation - var placeholder = strWithLen(nameLength + 2); - chunks.push("$" + placeholder); - } else if (env === "lokka" && /\.\.\.\s*$/.test(chunk)) { - // This is Lokka-style fragment interpolation where you actually type the '...' yourself - var _placeholder = strWithLen(nameLength + 3); - chunks.push(_placeholder); - } else if (env === "relay") { - // This is Relay-style fragment interpolation where you don't type '...' - // Ellipsis cancels out extra characters - var _placeholder2 = strWithLen(nameLength); - chunks.push("..." + _placeholder2); - } else if (!env || env === "apollo") { - // In Apollo, fragment interpolation is only valid outside of brackets - // Since we don't know what we'd interpolate here (that occurs at runtime), - // we're not going to do anything with this interpolation. - } else if (env === "fraql") { - if (chunk.lastIndexOf("{") > chunk.lastIndexOf("}")) { - chunks.push("__typename"); - } - } else { - // Invalid interpolation - context.report({ - node: value, - message: "Invalid interpolation - not a valid fragment or variable." - }); - throw new Error("Invalid interpolation"); - } - } - }); - - return chunks.join(""); -} - -function locFrom(node, error) { - if (!error.locations || !error.locations.length) { - return; - } - var location = error.locations[0]; - - var line = void 0; - var column = void 0; - if (location.line === 1 && node.tag.name !== _constants.internalTag) { - line = node.loc.start.line; - column = node.tag.loc.end.column + location.column; - } else { - line = node.loc.start.line + location.line - 1; - column = location.column - 1; - } - - return { - line: line, - column: column - }; -} - -function handleTemplateTag(node, context, schema, env, validators) { - var text = void 0; - try { - text = replaceExpressions(node.quasi, context, env); - } catch (e) { - if (e.message !== "Invalid interpolation") { - console.log(e); // eslint-disable-line no-console - } - return; - } - - // Re-implement syntax sugar for fragment names, which is technically not valid - // graphql - if ((env === "lokka" || env === "relay" || env === "fraql") && /fragment\s+on/.test(text)) { - text = text.replace("fragment", "fragment _"); - } - - var ast = void 0; - - try { - ast = (0, _graphql.parse)(text); - } catch (error) { - context.report({ - node: node, - message: error.message.split("\n")[0], - loc: locFrom(node, error) - }); - return; - } - - var validationErrors = schema ? (0, _graphql.validate)(schema, ast, validators) : []; - if (validationErrors && validationErrors.length > 0) { - context.report({ - node: node, - message: validationErrors[0].message, - loc: locFrom(node, validationErrors[0]) - }); - return; - } -} - -function templateExpressionMatchesTag(tagName, node) { - var tagNameSegments = tagName.split(".").length; - if (tagNameSegments === 1) { - // Check for single identifier, like 'gql' - if (node.tag.type !== "Identifier" || node.tag.name !== tagName) { - return false; - } - } else if (tagNameSegments === 2) { - // Check for dotted identifier, like 'Relay.QL' - if (node.tag.type !== "MemberExpression" || node.tag.object.name + "." + node.tag.property.name !== tagName) { - return false; - } - } else { - // We don't currently support 3 segments so ignore - return false; - } - return true; -} - -function createRule(context, optionParser) { - var tagNames = new Set(); - var tagRules = []; - var options = context.options.length === 0 ? [{}] : context.options; - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - var _loop = function _loop() { - var optionGroup = _step.value; - - var _optionParser = optionParser(optionGroup), - schema = _optionParser.schema, - env = _optionParser.env, - tagName = _optionParser.tagName, - validators = _optionParser.validators; - - var boundValidators = validators.map(function (v) { - return function (ctx) { - return v(ctx, optionGroup); - }; - }); - if (tagNames.has(tagName)) { - throw new Error("Multiple options for GraphQL tag " + tagName); - } - tagNames.add(tagName); - tagRules.push({ schema: schema, env: env, tagName: tagName, validators: boundValidators }); - }; - - for (var _iterator = options[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - _loop(); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - return { - TaggedTemplateExpression: function TaggedTemplateExpression(node) { - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = tagRules[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var _ref2 = _step2.value; - var schema = _ref2.schema, - env = _ref2.env, - tagName = _ref2.tagName, - validators = _ref2.validators; - - if (templateExpressionMatchesTag(tagName, node)) { - return handleTemplateTag(node, context, schema, env, validators); - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - } - }; -} \ No newline at end of file diff --git a/node_modules/eslint-plugin-graphql/lib/customGraphQLValidationRules.js b/node_modules/eslint-plugin-graphql/lib/customGraphQLValidationRules.js deleted file mode 100644 index d7dc88b9..00000000 --- a/node_modules/eslint-plugin-graphql/lib/customGraphQLValidationRules.js +++ /dev/null @@ -1,162 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.OperationsMustHaveNames = OperationsMustHaveNames; -exports.RequiredFields = RequiredFields; -exports.typeNamesShouldBeCapitalized = typeNamesShouldBeCapitalized; -exports.noDeprecatedFields = noDeprecatedFields; - -var _graphql = require("graphql"); - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } - -function OperationsMustHaveNames(context) { - return { - OperationDefinition: function OperationDefinition(node) { - if (!node.name) { - context.reportError(new _graphql.GraphQLError("All operations must be named", [node])); - } - } - }; -} - -function getFieldWasRequestedOnNode(node, field) { - return node.selectionSet.selections.some(function (n) { - return n.kind === "Field" && n.name.value === field; - }); -} - -function fieldAvailableOnType(type, field) { - if (!type) { - return false; - } - - return type._fields && type._fields[field] || type.ofType && fieldAvailableOnType(type.ofType, field); -} - -function RequiredFields(context, options) { - var requiredFields = options.requiredFields; - - - return { - FragmentDefinition: function FragmentDefinition(node) { - requiredFields.forEach(function (field) { - var type = context.getType(); - - if (fieldAvailableOnType(type, field)) { - var fieldWasRequested = getFieldWasRequestedOnNode(node, field); - if (!fieldWasRequested) { - context.reportError(new _graphql.GraphQLError("'" + field + "' field required on 'fragment " + node.name.value + " on " + node.typeCondition.name.value + "'", [node])); - } - } - }); - }, - - - // Every inline fragment must have the required field specified inside - // itself or in some parent selection set. - InlineFragment: function InlineFragment(node, key, parent, path, ancestors) { - requiredFields.forEach(function (field) { - var type = context.getType(); - - if (fieldAvailableOnType(type, field)) { - // First, check the selection set on this inline fragment - if (node.selectionSet && getFieldWasRequestedOnNode(node, field)) { - return true; - } - - var ancestorClone = [].concat(_toConsumableArray(ancestors)); - - var nearestFieldOrExecutableDefinition = void 0; - var nextAncestor = void 0; - - // Now, walk up the ancestors, until you see a field or executable definition. - while (!nearestFieldOrExecutableDefinition) { - nextAncestor = ancestorClone.pop(); - - if (nextAncestor.selectionSet && getFieldWasRequestedOnNode(nextAncestor, field)) { - return true; - } - - if (nextAncestor.kind === "Field" || nextAncestor.kind === "FragmentDefinition" || nextAncestor.kind === "OperationDefiniton") { - nearestFieldOrExecutableDefinition = nextAncestor; - } - } - - // If we never found a field or executable definition, the query is malformed - if (!nearestFieldOrExecutableDefinition) { - throw new Error("Inline fragment found inside document without a parent field, fragment definition, or operation definition."); - } - - // We found a field or executable definition, but we never saw the field we were looking for in - // the intermediate selection sets. - context.reportError(new _graphql.GraphQLError("'" + field + "' field required on '... on " + node.typeCondition.name.value + "'", [node])); - } - }); - }, - - - // Every field that can have the field directly on it, should. It's not - // enough to have some child fragment to include the field, since we don't - // know if that fragment covers all of the possible type options. - Field: function Field(node) { - var def = context.getFieldDef(); - if (!def) { - return; - } - - requiredFields.forEach(function (field) { - if (fieldAvailableOnType(def.type, field)) { - var fieldWasRequested = getFieldWasRequestedOnNode(node, field); - if (!fieldWasRequested) { - context.reportError(new _graphql.GraphQLError("'" + field + "' field required on '" + node.name.value + "'", [node])); - } - } - }); - } - }; -} - -function typeNamesShouldBeCapitalized(context) { - return { - NamedType: function NamedType(node) { - var typeName = node.name.value; - if (typeName[0] == typeName[0].toLowerCase()) { - context.reportError(new _graphql.GraphQLError("All type names should start with a capital letter", [node])); - } - } - }; -} - -// Mostly taken from https://github.com/graphql/graphql-js/blob/063148de039b02670a760b8d3dfaf2a04a467169/src/utilities/findDeprecatedUsages.js -// See explanation in [#93](https://github.com/apollographql/eslint-plugin-graphql/pull/93) -function noDeprecatedFields(context) { - return { - Field: function Field(node) { - var fieldDef = context.getFieldDef(); - if (fieldDef && fieldDef.isDeprecated) { - var parentType = context.getParentType(); - if (parentType) { - var reason = fieldDef.deprecationReason; - context.reportError(new _graphql.GraphQLError("The field " + parentType.name + "." + fieldDef.name + " is deprecated." + (reason ? " " + reason : ""), [node])); - } - } - }, - EnumValue: function EnumValue(node) { - // context is of type ValidationContext which doesn't export getEnumValue. - // Bypass the public API to grab that information directly from _typeInfo. - var enumVal = context._typeInfo.getEnumValue(); - if (enumVal && enumVal.isDeprecated) { - var type = (0, _graphql.getNamedType)(context.getInputType()); - if (!type) { - return; - } - - var reason = enumVal.deprecationReason; - context.reportError(new _graphql.GraphQLError("The enum value " + type.name + "." + enumVal.name + " is deprecated." + (reason ? " " + reason : ""), [node])); - } - } - }; -} \ No newline at end of file diff --git a/node_modules/eslint-plugin-graphql/lib/index.js b/node_modules/eslint-plugin-graphql/lib/index.js deleted file mode 100644 index 16e9e0c1..00000000 --- a/node_modules/eslint-plugin-graphql/lib/index.js +++ /dev/null @@ -1,356 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.processors = exports.rules = undefined; - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _fs = require("fs"); - -var _fs2 = _interopRequireDefault(_fs); - -var _path = require("path"); - -var _path2 = _interopRequireDefault(_path); - -var _graphql = require("graphql"); - -var _lodash = require("lodash"); - -var _graphqlConfig = require("graphql-config"); - -var _customGraphQLValidationRules = require("./customGraphQLValidationRules"); - -var customRules = _interopRequireWildcard(_customGraphQLValidationRules); - -var _constants = require("./constants"); - -var _createRule = require("./createRule"); - -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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var allGraphQLValidatorNames = _graphql.specifiedRules.map(function (rule) { - return rule.name; -}); - -// Map of env name to list of rule names. -var envGraphQLValidatorNames = { - apollo: (0, _lodash.without)(allGraphQLValidatorNames, "KnownFragmentNames", "NoUnusedFragments"), - lokka: (0, _lodash.without)(allGraphQLValidatorNames, "KnownFragmentNames", "NoUnusedFragments"), - fraql: (0, _lodash.without)(allGraphQLValidatorNames, "KnownFragmentNames", "NoUnusedFragments"), - relay: (0, _lodash.without)(allGraphQLValidatorNames, "KnownDirectives", "KnownFragmentNames", "NoUndefinedVariables", "NoUnusedFragments", - // `graphql` < 14 - "ProvidedNonNullArguments", - // `graphql`@14 - "ProvidedRequiredArguments", "ScalarLeafs"), - literal: (0, _lodash.without)(allGraphQLValidatorNames, "KnownFragmentNames", "NoUnusedFragments") -}; - -var gqlFiles = ["gql", "graphql"]; - -var defaultRuleProperties = { - env: { - enum: ["lokka", "fraql", "relay", "apollo", "literal"] - }, - schemaJson: { - type: "object" - }, - schemaJsonFilepath: { - type: "string" - }, - schemaString: { - type: "string" - }, - tagName: { - type: "string", - pattern: "^[$_a-zA-Z$_][a-zA-Z0-9$_]+(\\.[a-zA-Z0-9$_]+)?$" - }, - projectName: { - type: "string" - } -}; - -// schemaJson, schemaJsonFilepath, schemaString and projectName are mutually exclusive: -var schemaPropsExclusiveness = { - oneOf: [{ - required: ["schemaJson"], - not: { required: ["schemaString", "schemaJsonFilepath", "projectName"] } - }, { - required: ["schemaJsonFilepath"], - not: { required: ["schemaJson", "schemaString", "projectName"] } - }, { - required: ["schemaString"], - not: { required: ["schemaJson", "schemaJsonFilepath", "projectName"] } - }, { - not: { - anyOf: [{ required: ["schemaString"] }, { required: ["schemaJson"] }, { required: ["schemaJsonFilepath"] }] - } - }] -}; - -var rules = exports.rules = { - "template-strings": { - meta: { - schema: { - type: "array", - items: _extends({ - additionalProperties: false, - properties: _extends({}, defaultRuleProperties, { - validators: { - oneOf: [{ - type: "array", - uniqueItems: true, - items: { - enum: allGraphQLValidatorNames - } - }, { - enum: ["all"] - }] - } - }) - }, schemaPropsExclusiveness) - } - }, - create: function create(context) { - return (0, _createRule.createRule)(context, function (optionGroup) { - return parseOptions(optionGroup, context); - }); - } - }, - "named-operations": { - meta: { - schema: { - type: "array", - items: _extends({ - additionalProperties: false, - properties: _extends({}, defaultRuleProperties) - }, schemaPropsExclusiveness) - } - }, - create: function create(context) { - return (0, _createRule.createRule)(context, function (optionGroup) { - return parseOptions(_extends({ - validators: ["OperationsMustHaveNames"] - }, optionGroup), context); - }); - } - }, - "required-fields": { - meta: { - schema: { - type: "array", - minItems: 1, - items: _extends({ - additionalProperties: false, - properties: _extends({}, defaultRuleProperties, { - requiredFields: { - type: "array", - items: { - type: "string" - } - } - }), - required: ["requiredFields"] - }, schemaPropsExclusiveness) - } - }, - create: function create(context) { - return (0, _createRule.createRule)(context, function (optionGroup) { - return parseOptions(_extends({ - validators: ["RequiredFields"], - options: { requiredFields: optionGroup.requiredFields } - }, optionGroup), context); - }); - } - }, - "capitalized-type-name": { - meta: { - schema: { - type: "array", - items: _extends({ - additionalProperties: false, - properties: _extends({}, defaultRuleProperties) - }, schemaPropsExclusiveness) - } - }, - create: function create(context) { - return (0, _createRule.createRule)(context, function (optionGroup) { - return parseOptions(_extends({ - validators: ["typeNamesShouldBeCapitalized"] - }, optionGroup), context); - }); - } - }, - "no-deprecated-fields": { - meta: { - schema: { - type: "array", - items: _extends({ - additionalProperties: false, - properties: _extends({}, defaultRuleProperties) - }, schemaPropsExclusiveness) - } - }, - create: function create(context) { - return (0, _createRule.createRule)(context, function (optionGroup) { - return parseOptions(_extends({ - validators: ["noDeprecatedFields"] - }, optionGroup), context); - }); - } - } -}; - -var schemaCache = {}; -var projectCache = {}; - -function parseOptions(optionGroup, context) { - var schemaJson = optionGroup.schemaJson, - schemaJsonFilepath = optionGroup.schemaJsonFilepath, - schemaString = optionGroup.schemaString, - env = optionGroup.env, - projectName = optionGroup.projectName, - tagNameOption = optionGroup.tagName, - validatorNamesOption = optionGroup.validators; - - - var cacheHit = schemaCache[JSON.stringify(optionGroup)]; - if (cacheHit && env !== "literal") { - return cacheHit; - } - - // Validate and unpack schema - var schema = void 0; - if (schemaJson) { - schema = initSchema(schemaJson); - } else if (schemaJsonFilepath) { - schema = initSchemaFromFile(schemaJsonFilepath); - } else if (schemaString) { - schema = initSchemaFromString(schemaString); - } else { - try { - var config = (0, _graphqlConfig.getGraphQLConfig)(_path2.default.dirname(context.getFilename())); - var projectConfig = void 0; - if (projectName) { - projectConfig = config.getProjects()[projectName]; - if (!projectConfig) { - throw new Error("Project with name \"" + projectName + "\" not found in " + config.configPath + "."); - } - } else { - projectConfig = config.getConfigForFile(context.getFilename()); - } - if (projectConfig) { - var key = config.configPath + "[" + projectConfig.projectName + "]"; - schema = projectCache[key]; - if (!schema) { - schema = projectConfig.getSchema(); - projectCache[key] = schema; - } - } - if (cacheHit) { - return _extends({}, cacheHit, { schema: schema }); - } - } catch (e) { - if (e instanceof _graphqlConfig.ConfigNotFoundError) { - throw new Error("Must provide .graphqlconfig file or pass in `schemaJson` option " + "with schema object or `schemaJsonFilepath` with absolute path to the json file."); - } - throw e; - } - } - - // Validate env - if (env && env !== "lokka" && env !== "fraql" && env !== "relay" && env !== "apollo" && env !== "literal") { - throw new Error("Invalid option for env, only `apollo`, `lokka`, `fraql`, `relay`, and `literal` supported."); - } - - // Validate tagName and set default - var tagName = void 0; - if (tagNameOption) { - tagName = tagNameOption; - } else if (env === "relay") { - tagName = "Relay.QL"; - } else if (env === "literal") { - tagName = _constants.internalTag; - } else { - tagName = "gql"; - } - - // The validator list may be: - // The string 'all' to use all rules. - // An array of rule names. - // null/undefined to use the default rule set of the environment, or all rules. - var validatorNames = void 0; - if (validatorNamesOption === "all") { - validatorNames = allGraphQLValidatorNames; - } else if (validatorNamesOption) { - validatorNames = validatorNamesOption; - } else { - validatorNames = envGraphQLValidatorNames[env] || allGraphQLValidatorNames; - } - - var validators = validatorNames.map(function (name) { - if (name in customRules) { - return customRules[name]; - } else { - return require("graphql/validation/rules/" + name)[name]; - } - }); - var results = { schema: schema, env: env, tagName: tagName, validators: validators }; - schemaCache[JSON.stringify(optionGroup)] = results; - return results; -} - -function initSchema(json) { - var unpackedSchemaJson = json.data ? json.data : json; - if (!unpackedSchemaJson.__schema) { - throw new Error("Please pass a valid GraphQL introspection query result."); - } - return (0, _graphql.buildClientSchema)(unpackedSchemaJson); -} - -function initSchemaFromFile(jsonFile) { - return initSchema(JSON.parse(_fs2.default.readFileSync(jsonFile, "utf8"))); -} - -function initSchemaFromString(source) { - return (0, _graphql.buildSchema)(source); -} - -var gqlProcessor = { - preprocess: function preprocess(text) { - // Wrap the text in backticks and prepend the internal tag. First the text - // must be escaped, because of the three sequences that have special - // meaning in JavaScript template literals, and could change the meaning of - // the text or cause syntax errors. - // https://tc39.github.io/ecma262/#prod-TemplateCharacter - // - // - "`" would end the template literal. - // - "\" would start an escape sequence. - // - "${" would start an interpolation. - var escaped = text.replace(/[`\\]|\$\{/g, "\\$&"); - return [_constants.internalTag + "`" + escaped + "`"]; - }, - postprocess: function postprocess(messages) { - // only report graphql-errors - return (0, _lodash.flatten)(messages).filter(function (message) { - return (0, _lodash.includes)((0, _lodash.keys)(rules).map(function (key) { - return "graphql/" + key; - }), message.ruleId); - }); - } -}; - -var processors = exports.processors = (0, _lodash.reduce)(gqlFiles, function (result, value) { - return _extends({}, result, _defineProperty({}, "." + value, gqlProcessor)); -}, {}); - -exports.default = { - rules: rules, - processors: processors -}; \ No newline at end of file diff --git a/node_modules/eslint-plugin-graphql/package.json b/node_modules/eslint-plugin-graphql/package.json deleted file mode 100644 index 761585f6..00000000 --- a/node_modules/eslint-plugin-graphql/package.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "name": "eslint-plugin-graphql", - "version": "3.1.1", - "description": "GraphQL ESLint plugin.", - "author": "Sashko Stubailo", - "main": "lib/index.js", - "scripts": { - "test": "tav --ci && mocha test/index.js", - "prepublish": "babel ./src --ignore test --out-dir ./lib", - "pretest": "node test/updateSchemaJson.js", - "tav": "tav", - "lint": "eslint 'src/**/*.js' 'test/**/*.js'" - }, - "homepage": "https://github.com/apollostack/eslint-plugin-graphql", - "repository": { - "type": "git", - "url": "git+https://github.com/apollostack/eslint-plugin-graphql.git" - }, - "devDependencies": { - "babel-cli": "6.26.0", - "babel-core": "6.26.3", - "babel-eslint": "10.0.1", - "babel-plugin-transform-runtime": "6.23.0", - "babel-preset-es2015": "6.24.1", - "babel-preset-stage-0": "6.24.1", - "eslint": "5.16.0", - "graphql": "14.4.2", - "graphql-tools": "4.0.5", - "mocha": "6.2.0", - "pretty-quick": "1.11.1", - "test-all-versions": "4.1.1" - }, - "babel": { - "presets": [ - "es2015", - "stage-0" - ] - }, - "husky": { - "hooks": { - "pre-commit": "pretty-quick --staged" - } - }, - "engines": { - "node": ">=6.0" - }, - "license": "MIT", - "dependencies": { - "graphql-config": "^2.0.1", - "lodash": "^4.11.1" - }, - "peerDependencies": { - "graphql": "^0.12.0 || ^0.13.0 || ^14.0.0" - } -} diff --git a/node_modules/eslint-plugin-graphql/renovate.json b/node_modules/eslint-plugin-graphql/renovate.json deleted file mode 100644 index f45d8f11..00000000 --- a/node_modules/eslint-plugin-graphql/renovate.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "extends": [ - "config:base" - ] -} diff --git a/node_modules/eslint-plugin-graphql/screenshot.png b/node_modules/eslint-plugin-graphql/screenshot.png deleted file mode 100644 index 82ce807a..00000000 Binary files a/node_modules/eslint-plugin-graphql/screenshot.png and /dev/null differ diff --git a/node_modules/eslint-plugin-import/CHANGELOG.md b/node_modules/eslint-plugin-import/CHANGELOG.md index 80912e53..5ba0cb63 100644 --- a/node_modules/eslint-plugin-import/CHANGELOG.md +++ b/node_modules/eslint-plugin-import/CHANGELOG.md @@ -6,13 +6,92 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel ## [Unreleased] +## [2.22.1] - 2020-09-27 +### Fixed +- [`default`]/TypeScript: avoid crash on `export =` with a MemberExpression ([#1841], thanks [@ljharb]) +- [`extensions`]/importType: Fix @/abc being treated as scoped module ([#1854], thanks [@3nuc]) +- allow using rest operator in named export ([#1878], thanks [@foray1010]) +- [`dynamic-import-chunkname`]: allow single quotes to match Webpack support ([#1848], thanks [@straub]) + +### Changed +- [`export`]: add tests for a name collision with `export * from` ([#1704], thanks @tomprats) + +## [2.22.0] - 2020-06-26 +### Added +- [`no-unused-modules`]: consider exported TypeScript interfaces, types and enums ([#1819], thanks [@nicolashenry]) +- [`no-cycle`]: allow `maxDepth` option to be `"∞"` (thanks [@ljharb]) + +### Fixed +- [`order`]/TypeScript: properly support `import = object` expressions ([#1823], thanks [@manuth]) +- [`no-extraneous-dependencies`]/TypeScript: do not error when importing type from dev dependencies ([#1820], thanks [@fernandopasik]) +- [`default`]: avoid crash with `export =` ([#1822], thanks [@AndrewLeedham]) +- [`order`]/[`newline-after-import`]: ignore TypeScript's "export import object" ([#1830], thanks [@be5invis]) +- [`dynamic-import-chunkname`]/TypeScript: supports `@typescript-eslint/parser` ([#1833], thanks [@noelebrun]) +- [`order`]/TypeScript: ignore ordering of object imports ([#1831], thanks [@manuth]) +- [`namespace`]: do not report on shadowed import names ([#518], thanks [@ljharb]) +- [`export`]: avoid warning on `export * as` non-conflicts ([#1834], thanks [@ljharb]) + +### Changed +- [`no-extraneous-dependencies`]: add tests for importing types ([#1824], thanks [@taye]) +- [docs] [`no-default-export`]: Fix docs url ([#1836], thanks [@beatrizrezener]) +- [docs] [`imports-first`]: deprecation info and link to `first` docs ([#1835], thanks [@beatrizrezener]) + +## [2.21.2] - 2020-06-09 +### Fixed +- [`order`]: avoid a crash on TypeScript’s `export import` syntax ([#1808], thanks [@ljharb]) +- [`newline-after-import`]: consider TypeScript `import =` syntax' ([#1811], thanks [@ljharb]) +- [`no-internal-modules`]: avoid a crash on a named export declaration ([#1814], thanks [@ljharb]) + +## [2.21.1] - 2020-06-07 +### Fixed +- TypeScript: [`import/named`]: avoid requiring `typescript` when not using TS ([#1805], thanks [@ljharb]) + +## [2.21.0] - 2020-06-07 +### Added +- [`import/default`]: support default export in TSExportAssignment ([#1528], thanks [@joaovieira]) +- [`no-cycle`]: add `ignoreExternal` option ([#1681], thanks [@sveyret]) +- [`order`]: Add support for TypeScript's "import equals"-expressions ([#1785], thanks [@manuth]) +- [`import/default`]: support default export in TSExportAssignment ([#1689], thanks [@Maxim-Mazurok]) +- [`no-restricted-paths`]: add custom message support ([#1802], thanks [@malykhinvi]) + +### Fixed +- [`group-exports`]: Flow type export awareness ([#1702], thanks [@ernestostifano]) +- [`order`]: Recognize pathGroup config for first group ([#1719], [#1724], thanks [@forivall], [@xpl]) +- [`no-unused-modules`]: Fix re-export not counting as usage when used in combination with import ([#1722], thanks [@Ephem]) +- [`no-duplicates`]: Handle TS import type ([#1676], thanks [@kmui2]) +- [`newline-after-import`]: recognize decorators ([#1139], thanks [@atos1990]) +- [`no-unused-modules`]: Revert "[flow] `no-unused-modules`: add flow type support" ([#1770], thanks [@Hypnosphi]) +- TypeScript: Add nested namespace handling ([#1763], thanks [@julien1619]) +- [`namespace`]/`ExportMap`: Fix interface declarations for TypeScript ([#1764], thanks [@julien1619]) +- [`no-unused-modules`]: avoid order-dependence ([#1744], thanks [@darkartur]) +- [`no-internal-modules`]: also check `export from` syntax ([#1691], thanks [@adjerbetian]) +- TypeScript: [`export`]: avoid a crash with `export =` ([#1801], thanks [@ljharb]) + +### Changed +- [Refactor] `no-extraneous-dependencies`: use moduleVisitor ([#1735], thanks [@adamborowski]) +- TypeScript config: Disable [`named`][] ([#1726], thanks [@astorije]) +- [readme] Remove duplicate no-unused-modules from docs ([#1690], thanks [@arvigeus]) +- [Docs] `order`: fix bad inline config ([#1788], thanks [@nickofthyme]) +- [Tests] Add fix for Windows Subsystem for Linux ([#1786], thanks [@manuth]) +- [Docs] `no-unused-rules`: Fix docs for unused exports ([#1776], thanks [@barbogast]) +- [eslint] bump minimum v7 version to v7.2.0 + +## [2.20.2] - 2020-03-28 +### Fixed +- [`order`]: fix `isExternalModule` detect on windows ([#1651], thanks [@fisker]) +- [`order`]: recognize ".." as a "parent" path ([#1658], thanks [@golopot]) +- [`no-duplicates`]: fix fixer on cases with default import ([#1666], thanks [@golopot]) +- [`no-unused-modules`]: Handle `export { default } from` syntax ([#1631], thanks [@richardxia]) +- [`first`]: Add a way to disable `absolute-first` explicitly ([#1664], thanks [@TheCrueltySage]) +- [Docs] `no-webpack-loader-syntax`: Updates webpack URLs ([#1751], thanks [@MikeyBeLike]) + ## [2.20.1] - 2020-02-01 ### Fixed - [`export`]: Handle function overloading in `*.d.ts` ([#1619], thanks [@IvanGoncharov]) - [`no-absolute-path`]: fix a crash with invalid import syntax ([#1616], thanks [@ljharb]) - [`import/external-module-folders` setting] now correctly works with directories containing modules symlinked from `node_modules` ([#1605], thanks [@skozin]) - [`extensions`]: for invalid code where `name` does not exist, do not crash ([#1613], thanks [@ljharb]) -- [`extentions`]: Fix scope regex ([#1611], thanks [@yordis]) +- [`extensions`]: Fix scope regex ([#1611], thanks [@yordis]) - [`no-duplicates`]: allow duplicate imports if one is a namespace and the other not ([#1612], thanks [@sveyret]) - Add some missing rule meta schemas and types ([#1620], thanks [@bmish]) - [`named`]: for importing from a module which re-exports named exports from a `node_modules` module ([#1569], [#1447], thanks [@redbugz], [@kentcdodds]) @@ -21,6 +100,7 @@ This change log adheres to standards from [Keep a CHANGELOG](http://keepachangel ### Changed - [`import/external-module-folders` setting] behavior is more strict now: it will only match complete path segments ([#1605], thanks [@skozin]) - [meta] fix "files" field to include/exclude the proper files ([#1635], thanks [@ljharb]) +- [Tests] `order`: Add TS import type tests ([#1736], thanks [@kmui2]) ## [2.20.0] - 2020-01-10 ### Added @@ -652,7 +732,51 @@ for info on changes for earlier releases. [`memo-parser`]: ./memo-parser/README.md +[#1878]: https://github.com/benmosher/eslint-plugin-import/pull/1878 +[#1854]: https://github.com/benmosher/eslint-plugin-import/issues/1854 +[#1848]: https://github.com/benmosher/eslint-plugin-import/pull/1848 +[#1841]: https://github.com/benmosher/eslint-plugin-import/issues/1841 +[#1836]: https://github.com/benmosher/eslint-plugin-import/pull/1836 +[#1835]: https://github.com/benmosher/eslint-plugin-import/pull/1835 +[#1834]: https://github.com/benmosher/eslint-plugin-import/issues/1834 +[#1833]: https://github.com/benmosher/eslint-plugin-import/pull/1833 +[#1831]: https://github.com/benmosher/eslint-plugin-import/pull/1831 +[#1830]: https://github.com/benmosher/eslint-plugin-import/pull/1830 +[#1824]: https://github.com/benmosher/eslint-plugin-import/pull/1824 +[#1823]: https://github.com/benmosher/eslint-plugin-import/pull/1823 +[#1822]: https://github.com/benmosher/eslint-plugin-import/pull/1822 +[#1820]: https://github.com/benmosher/eslint-plugin-import/pull/1820 +[#1819]: https://github.com/benmosher/eslint-plugin-import/pull/1819 +[#1802]: https://github.com/benmosher/eslint-plugin-import/pull/1802 +[#1801]: https://github.com/benmosher/eslint-plugin-import/issues/1801 +[#1788]: https://github.com/benmosher/eslint-plugin-import/pull/1788 +[#1786]: https://github.com/benmosher/eslint-plugin-import/pull/1786 +[#1785]: https://github.com/benmosher/eslint-plugin-import/pull/1785 +[#1776]: https://github.com/benmosher/eslint-plugin-import/pull/1776 +[#1770]: https://github.com/benmosher/eslint-plugin-import/pull/1770 +[#1764]: https://github.com/benmosher/eslint-plugin-import/pull/1764 +[#1763]: https://github.com/benmosher/eslint-plugin-import/pull/1763 +[#1751]: https://github.com/benmosher/eslint-plugin-import/pull/1751 +[#1744]: https://github.com/benmosher/eslint-plugin-import/pull/1744 +[#1736]: https://github.com/benmosher/eslint-plugin-import/pull/1736 +[#1735]: https://github.com/benmosher/eslint-plugin-import/pull/1735 +[#1726]: https://github.com/benmosher/eslint-plugin-import/pull/1726 +[#1724]: https://github.com/benmosher/eslint-plugin-import/pull/1724 +[#1722]: https://github.com/benmosher/eslint-plugin-import/issues/1722 +[#1719]: https://github.com/benmosher/eslint-plugin-import/pull/1719 +[#1704]: https://github.com/benmosher/eslint-plugin-import/issues/1704 +[#1702]: https://github.com/benmosher/eslint-plugin-import/issues/1702 +[#1691]: https://github.com/benmosher/eslint-plugin-import/pull/1691 +[#1690]: https://github.com/benmosher/eslint-plugin-import/pull/1690 +[#1689]: https://github.com/benmosher/eslint-plugin-import/pull/1689 +[#1681]: https://github.com/benmosher/eslint-plugin-import/pull/1681 +[#1676]: https://github.com/benmosher/eslint-plugin-import/pull/1676 +[#1666]: https://github.com/benmosher/eslint-plugin-import/pull/1666 +[#1664]: https://github.com/benmosher/eslint-plugin-import/pull/1664 +[#1658]: https://github.com/benmosher/eslint-plugin-import/pull/1658 +[#1651]: https://github.com/benmosher/eslint-plugin-import/pull/1651 [#1635]: https://github.com/benmosher/eslint-plugin-import/issues/1635 +[#1631]: https://github.com/benmosher/eslint-plugin-import/issues/1631 [#1625]: https://github.com/benmosher/eslint-plugin-import/pull/1625 [#1620]: https://github.com/benmosher/eslint-plugin-import/pull/1620 [#1619]: https://github.com/benmosher/eslint-plugin-import/pull/1619 @@ -669,6 +793,7 @@ for info on changes for earlier releases. [#1560]: https://github.com/benmosher/eslint-plugin-import/pull/1560 [#1551]: https://github.com/benmosher/eslint-plugin-import/pull/1551 [#1542]: https://github.com/benmosher/eslint-plugin-import/pull/1542 +[#1528]: https://github.com/benmosher/eslint-plugin-import/pull/1528 [#1526]: https://github.com/benmosher/eslint-plugin-import/pull/1526 [#1521]: https://github.com/benmosher/eslint-plugin-import/pull/1521 [#1519]: https://github.com/benmosher/eslint-plugin-import/pull/1519 @@ -734,6 +859,7 @@ for info on changes for earlier releases. [#1157]: https://github.com/benmosher/eslint-plugin-import/pull/1157 [#1151]: https://github.com/benmosher/eslint-plugin-import/pull/1151 [#1142]: https://github.com/benmosher/eslint-plugin-import/pull/1142 +[#1139]: https://github.com/benmosher/eslint-plugin-import/pull/1139 [#1137]: https://github.com/benmosher/eslint-plugin-import/pull/1137 [#1135]: https://github.com/benmosher/eslint-plugin-import/pull/1135 [#1128]: https://github.com/benmosher/eslint-plugin-import/pull/1128 @@ -781,6 +907,7 @@ for info on changes for earlier releases. [#555]: https://github.com/benmosher/eslint-plugin-import/pull/555 [#538]: https://github.com/benmosher/eslint-plugin-import/pull/538 [#527]: https://github.com/benmosher/eslint-plugin-import/pull/527 +[#518]: https://github.com/benmosher/eslint-plugin-import/pull/518 [#509]: https://github.com/benmosher/eslint-plugin-import/pull/509 [#508]: https://github.com/benmosher/eslint-plugin-import/pull/508 [#503]: https://github.com/benmosher/eslint-plugin-import/pull/503 @@ -823,6 +950,10 @@ for info on changes for earlier releases. [#211]: https://github.com/benmosher/eslint-plugin-import/pull/211 [#164]: https://github.com/benmosher/eslint-plugin-import/pull/164 [#157]: https://github.com/benmosher/eslint-plugin-import/pull/157 +[#1814]: https://github.com/benmosher/eslint-plugin-import/issues/1814 +[#1811]: https://github.com/benmosher/eslint-plugin-import/issues/1811 +[#1808]: https://github.com/benmosher/eslint-plugin-import/issues/1808 +[#1805]: https://github.com/benmosher/eslint-plugin-import/issues/1805 [#1565]: https://github.com/benmosher/eslint-plugin-import/issues/1565 [#1366]: https://github.com/benmosher/eslint-plugin-import/issues/1366 [#1334]: https://github.com/benmosher/eslint-plugin-import/issues/1334 @@ -908,7 +1039,13 @@ for info on changes for earlier releases. [#119]: https://github.com/benmosher/eslint-plugin-import/issues/119 [#89]: https://github.com/benmosher/eslint-plugin-import/issues/89 -[Unreleased]: https://github.com/benmosher/eslint-plugin-import/compare/v2.20.1...HEAD +[Unreleased]: https://github.com/benmosher/eslint-plugin-import/compare/v2.22.1...HEAD +[2.22.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.22.0...v2.22.1 +[2.22.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.21.1...v2.22.0 +[2.21.2]: https://github.com/benmosher/eslint-plugin-import/compare/v2.21.1...v2.21.2 +[2.21.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.21.0...v2.21.1 +[2.21.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.20.2...v2.21.0 +[2.20.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.20.1...v2.20.2 [2.20.0]: https://github.com/benmosher/eslint-plugin-import/compare/v2.20.0...v2.20.1 [2.19.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.19.1...v2.20.0 [2.19.1]: https://github.com/benmosher/eslint-plugin-import/compare/v2.19.0...v2.19.1 @@ -974,6 +1111,7 @@ for info on changes for earlier releases. [0.12.1]: https://github.com/benmosher/eslint-plugin-import/compare/v0.12.0...v0.12.1 [0.12.0]: https://github.com/benmosher/eslint-plugin-import/compare/v0.11.0...v0.12.0 [0.11.0]: https://github.com/benmosher/eslint-plugin-import/compare/v0.10.1...v0.11.0 + [@mathieudutour]: https://github.com/mathieudutour [@gausie]: https://github.com/gausie [@singles]: https://github.com/singles @@ -1105,3 +1243,36 @@ for info on changes for earlier releases. [@kentcdodds]: https://github.com/kentcdodds [@IvanGoncharov]: https://github.com/IvanGoncharov [@wschurman]: https://github.com/wschurman +[@fisker]: https://github.com/fisker +[@richardxia]: https://github.com/richardxia +[@TheCrueltySage]: https://github.com/TheCrueltySage +[@ernestostifano]: https://github.com/ernestostifano +[@forivall]: https://github.com/forivall +[@xpl]: https://github.com/xpl +[@astorije]: https://github.com/astorije +[@Ephem]: https://github.com/Ephem +[@kmui2]: https://github.com/kmui2 +[@arvigeus]: https://github.com/arvigeus +[@atos1990]: https://github.com/atos1990 +[@Hypnosphi]: https://github.com/Hypnosphi +[@nickofthyme]: https://github.com/nickofthyme +[@manuth]: https://github.com/manuth +[@julien1619]: https://github.com/julien1619 +[@darkartur]: https://github.com/darkartur +[@MikeyBeLike]: https://github.com/MikeyBeLike +[@barbogast]: https://github.com/barbogast +[@adamborowski]: https://github.com/adamborowski +[@adjerbetian]: https://github.com/adjerbetian +[@Maxim-Mazurok]: https://github.com/Maxim-Mazurok +[@malykhinvi]: https://github.com/malykhinvi +[@nicolashenry]: https://github.com/nicolashenry +[@fernandopasik]: https://github.com/fernandopasik +[@taye]: https://github.com/taye +[@AndrewLeedham]: https://github.com/AndrewLeedham +[@be5invis]: https://github.com/be5invis +[@noelebrun]: https://github.com/noelebrun +[@beatrizrezener]: https://github.com/beatrizrezener +[@3nuc]: https://github.com/3nuc +[@foray1010]: https://github.com/foray1010 +[@tomprats]: https://github.com/tomprats +[@straub]: https://github.com/straub diff --git a/node_modules/eslint-plugin-import/README.md b/node_modules/eslint-plugin-import/README.md index cc9d1d78..e08e72ff 100644 --- a/node_modules/eslint-plugin-import/README.md +++ b/node_modules/eslint-plugin-import/README.md @@ -27,7 +27,6 @@ This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, a * Forbid a module from importing a module with a dependency path back to itself ([`no-cycle`]) * Prevent unnecessary path segments in import and require statements ([`no-useless-path-segments`]) * Forbid importing modules from parent directories ([`no-relative-parent-imports`]) -* Forbid modules without any export, and exports not imported by any modules. ([`no-unused-modules`]) [`no-unresolved`]: ./docs/rules/no-unresolved.md [`named`]: ./docs/rules/named.md @@ -42,7 +41,6 @@ This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, a [`no-cycle`]: ./docs/rules/no-cycle.md [`no-useless-path-segments`]: ./docs/rules/no-useless-path-segments.md [`no-relative-parent-imports`]: ./docs/rules/no-relative-parent-imports.md -[`no-unused-modules`]: ./docs/rules/no-unused-modules.md ### Helpful warnings diff --git a/node_modules/eslint-plugin-import/config/typescript.js b/node_modules/eslint-plugin-import/config/typescript.js index 262e3c79..705faaf3 100644 --- a/node_modules/eslint-plugin-import/config/typescript.js +++ b/node_modules/eslint-plugin-import/config/typescript.js @@ -19,4 +19,10 @@ module.exports = { }, }, + rules: { + // analysis/correctness + + // TypeScript compilation already ensures that named imports exist in the referenced module + 'import/named': 'off', + }, } diff --git a/node_modules/eslint-plugin-import/docs/rules/dynamic-import-chunkname.md b/node_modules/eslint-plugin-import/docs/rules/dynamic-import-chunkname.md index 4bcc5a98..d29c06bb 100644 --- a/node_modules/eslint-plugin-import/docs/rules/dynamic-import-chunkname.md +++ b/node_modules/eslint-plugin-import/docs/rules/dynamic-import-chunkname.md @@ -39,12 +39,6 @@ import( 'someModule', ); -// using single quotes instead of double quotes -import( - /* webpackChunkName: 'someModule' */ - 'someModule', -); - // invalid syntax for webpack comment import( /* totally not webpackChunkName: "someModule" */ @@ -78,6 +72,12 @@ The following patterns are valid: /* webpackChunkName: "someModule", webpackPrefetch: true */ 'someModule', ); + + // using single quotes instead of double quotes + import( + /* webpackChunkName: 'someModule' */ + 'someModule', + ); ``` ## When Not To Use It diff --git a/node_modules/eslint-plugin-import/docs/rules/group-exports.md b/node_modules/eslint-plugin-import/docs/rules/group-exports.md index f61ff530..e6b9887b 100644 --- a/node_modules/eslint-plugin-import/docs/rules/group-exports.md +++ b/node_modules/eslint-plugin-import/docs/rules/group-exports.md @@ -60,6 +60,15 @@ test.another = true module.exports = test ``` +```flow js +const first = true; +type firstType = boolean + +// A single named export declaration (type exports handled separately) -> ok +export {first} +export type {firstType} +``` + ### Invalid @@ -94,6 +103,15 @@ module.exports.first = true module.exports.second = true ``` +```flow js +type firstType = boolean +type secondType = any + +// Multiple named type export statements -> not ok! +export type {firstType} +export type {secondType} +``` + ## When Not To Use It If you do not mind having your exports spread across the file, you can safely turn this rule off. diff --git a/node_modules/eslint-plugin-import/docs/rules/imports-first.md b/node_modules/eslint-plugin-import/docs/rules/imports-first.md new file mode 100644 index 00000000..b7f20754 --- /dev/null +++ b/node_modules/eslint-plugin-import/docs/rules/imports-first.md @@ -0,0 +1,3 @@ +# imports-first + +This rule was **deprecated** in eslint-plugin-import v2.0.0. Please use the corresponding rule [`first`](https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/first.md). diff --git a/node_modules/eslint-plugin-import/docs/rules/no-cycle.md b/node_modules/eslint-plugin-import/docs/rules/no-cycle.md index 8819d670..7d54e81f 100644 --- a/node_modules/eslint-plugin-import/docs/rules/no-cycle.md +++ b/node_modules/eslint-plugin-import/docs/rules/no-cycle.md @@ -2,7 +2,7 @@ Ensures that there is no resolvable path back to this module via its dependencies. -This includes cycles of depth 1 (imported module imports me) to `Infinity`, if the +This includes cycles of depth 1 (imported module imports me) to `"∞"` (or `Infinity`), if the [`maxDepth`](#maxdepth) option is not set. ```js @@ -55,6 +55,26 @@ import { b } from './dep-b.js' // not reported as the cycle is at depth 2 This is not necessarily recommended, but available as a cost/benefit tradeoff mechanism for reducing total project lint time, if needed. +#### `ignoreExternal` + +An `ignoreExternal` option is available to prevent the cycle detection to expand to external modules: + +```js +/*eslint import/no-cycle: [2, { ignoreExternal: true }]*/ + +// dep-a.js +import 'module-b/dep-b.js' + +export function a() { /* ... */ } +``` + +```js +// node_modules/module-b/dep-b.js +import { a } from './dep-a.js' // not reported as this module is external +``` + +Its value is `false` by default, but can be set to `true` for reducing total project lint time, if needed. + ## When Not To Use It This rule is comparatively computationally expensive. If you are pressed for lint @@ -65,5 +85,8 @@ this rule enabled. - [Original inspiring issue](https://github.com/benmosher/eslint-plugin-import/issues/941) - Rule to detect that module imports itself: [`no-self-import`] +- [`import/external-module-folders`] setting [`no-self-import`]: ./no-self-import.md + +[`import/external-module-folders`]: ../../README.md#importexternal-module-folders diff --git a/node_modules/eslint-plugin-import/docs/rules/no-internal-modules.md b/node_modules/eslint-plugin-import/docs/rules/no-internal-modules.md index 8d99c352..7bbb2edd 100644 --- a/node_modules/eslint-plugin-import/docs/rules/no-internal-modules.md +++ b/node_modules/eslint-plugin-import/docs/rules/no-internal-modules.md @@ -49,6 +49,9 @@ The following patterns are considered problems: import { settings } from './app/index'; // Reaching to "./app/index" is not allowed import userReducer from './reducer/user'; // Reaching to "./reducer/user" is not allowed import configureStore from './redux/configureStore'; // Reaching to "./redux/configureStore" is not allowed + +export { settings } from './app/index'; // Reaching to "./app/index" is not allowed +export * from './reducer/user'; // Reaching to "./reducer/user" is not allowed ``` The following patterns are NOT considered problems: @@ -61,4 +64,7 @@ The following patterns are NOT considered problems: import 'source-map-support/register'; import { settings } from '../app'; import getUser from '../actions/getUser'; + +export * from 'source-map-support/register'; +export { settings } from '../app'; ``` diff --git a/node_modules/eslint-plugin-import/docs/rules/no-restricted-paths.md b/node_modules/eslint-plugin-import/docs/rules/no-restricted-paths.md index 37766998..bfcb9af2 100644 --- a/node_modules/eslint-plugin-import/docs/rules/no-restricted-paths.md +++ b/node_modules/eslint-plugin-import/docs/rules/no-restricted-paths.md @@ -10,6 +10,7 @@ In order to prevent such scenarios this rule allows you to define restricted zon This rule has one option. The option is an object containing the definition of all restricted `zones` and the optional `basePath` which is used to resolve relative paths within. The default value for `basePath` is the current working directory. Each zone consists of the `target` path and a `from` path. The `target` is the path where the restricted imports should be applied. The `from` path defines the folder that is not allowed to be used in an import. An optional `except` may be defined for a zone, allowing exception paths that would otherwise violate the related `from`. Note that `except` is relative to `from` and cannot backtrack to a parent directory. +You may also specify an optional `message` for a zone, which will be displayed in case of the rule violation. ### Examples diff --git a/node_modules/eslint-plugin-import/docs/rules/no-unused-modules.md b/node_modules/eslint-plugin-import/docs/rules/no-unused-modules.md index 4302bc84..8c234202 100644 --- a/node_modules/eslint-plugin-import/docs/rules/no-unused-modules.md +++ b/node_modules/eslint-plugin-import/docs/rules/no-unused-modules.md @@ -58,28 +58,22 @@ given file-f: ```js import { e } from 'file-a' import { f } from 'file-b' -import * from 'file-c' -export * from 'file-d' -export { default, i0 } from 'file-e' // both will be reported +import * as fileC from 'file-c' +export { default, i0 } from 'file-d' // both will be reported export const j = 99 // will be reported ``` -and file-e: +and file-d: ```js export const i0 = 9 // will not be reported export const i1 = 9 // will be reported export default () => {} // will not be reported ``` -and file-d: +and file-c: ```js export const h = 8 // will not be reported export default () => {} // will be reported, as export * only considers named exports and ignores default exports ``` -and file-c: -```js -export const g = 7 // will not be reported -export default () => {} // will not be reported -``` and file-b: ```js import two, { b, c, doAnything } from 'file-a' diff --git a/node_modules/eslint-plugin-import/docs/rules/no-webpack-loader-syntax.md b/node_modules/eslint-plugin-import/docs/rules/no-webpack-loader-syntax.md index 37b39a43..271c76ca 100644 --- a/node_modules/eslint-plugin-import/docs/rules/no-webpack-loader-syntax.md +++ b/node_modules/eslint-plugin-import/docs/rules/no-webpack-loader-syntax.md @@ -2,12 +2,12 @@ Forbid Webpack loader syntax in imports. -[Webpack](http://webpack.github.io) allows specifying the [loaders](http://webpack.github.io/docs/loaders.html) to use in the import source string using a special syntax like this: +[Webpack](https://webpack.js.org) allows specifying the [loaders](https://webpack.js.org/concepts/loaders/) to use in the import source string using a special syntax like this: ```js var moduleWithOneLoader = require("my-loader!./my-awesome-module"); ``` -This syntax is non-standard, so it couples the code to Webpack. The recommended way to specify Webpack loader configuration is in a [Webpack configuration file](http://webpack.github.io/docs/loaders.html#loaders-by-config). +This syntax is non-standard, so it couples the code to Webpack. The recommended way to specify Webpack loader configuration is in a [Webpack configuration file](https://webpack.js.org/concepts/loaders/#configuration). ## Rule Details diff --git a/node_modules/eslint-plugin-import/docs/rules/order.md b/node_modules/eslint-plugin-import/docs/rules/order.md index 667b6337..7d91efd6 100644 --- a/node_modules/eslint-plugin-import/docs/rules/order.md +++ b/node_modules/eslint-plugin-import/docs/rules/order.md @@ -22,6 +22,8 @@ import bar from './bar'; import baz from './bar/baz'; // 6. "index" of the current directory import main from './'; +// 7. "object"-imports (only available in TypeScript) +import log = console.log; ``` Unassigned imports are ignored, as the order they are imported in may be important. @@ -77,12 +79,15 @@ This rule supports the following options: ### `groups: [array]`: -How groups are defined, and the order to respect. `groups` must be an array of `string` or [`string`]. The only allowed `string`s are: `"builtin"`, `"external"`, `"internal"`, `"unknown"`, `"parent"`, `"sibling"`, `"index"`. The enforced order is the same as the order of each element in a group. Omitted types are implicitly grouped together as the last element. Example: +How groups are defined, and the order to respect. `groups` must be an array of `string` or [`string`]. The only allowed `string`s are: +`"builtin"`, `"external"`, `"internal"`, `"unknown"`, `"parent"`, `"sibling"`, `"index"`, `"object"`. +The enforced order is the same as the order of each element in a group. Omitted types are implicitly grouped together as the last element. Example: ```js [ 'builtin', // Built-in types are first ['sibling', 'parent'], // Then sibling and parent types. They can be mingled together 'index', // Then the index file + 'object', // Then the rest: internal and external type ] ``` @@ -91,7 +96,7 @@ The default value is `["builtin", "external", "parent", "sibling", "index"]`. You can set the options like this: ```js -"import/order": ["error", {"groups": ["index", "sibling", "parent", "internal", "external", "builtin"]}] +"import/order": ["error", {"groups": ["index", "sibling", "parent", "internal", "external", "builtin", "object"]}] ``` ### `pathGroups: [array of objects]`: @@ -229,7 +234,7 @@ alphabetize: { This will fail the rule check: ```js -/* eslint import/order: ["error", {"alphabetize": true}] */ +/* eslint import/order: ["error", {"alphabetize": {"order": "asc", "caseInsensitive": true}}] */ import React, { PureComponent } from 'react'; import aTypes from 'prop-types'; import { compose, apply } from 'xcompose'; @@ -240,7 +245,7 @@ import blist from 'BList'; While this will pass: ```js -/* eslint import/order: ["error", {"alphabetize": true}] */ +/* eslint import/order: ["error", {"alphabetize": {"order": "asc", "caseInsensitive": true}}] */ import blist from 'BList'; import * as classnames from 'classnames'; import aTypes from 'prop-types'; diff --git a/node_modules/eslint-plugin-import/lib/ExportMap.js b/node_modules/eslint-plugin-import/lib/ExportMap.js index 8b3aae7b..b32b6b31 100644 --- a/node_modules/eslint-plugin-import/lib/ExportMap.js +++ b/node_modules/eslint-plugin-import/lib/ExportMap.js @@ -1,653 +1,735 @@ -'use strict'; +'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports. -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.recursivePatternCapture = recursivePatternCapture; -var _fs = require('fs'); -var _fs2 = _interopRequireDefault(_fs); -var _doctrine = require('doctrine'); -var _doctrine2 = _interopRequireDefault(_doctrine); -var _debug = require('debug'); -var _debug2 = _interopRequireDefault(_debug); -var _eslint = require('eslint'); -var _parse = require('eslint-module-utils/parse'); -var _parse2 = _interopRequireDefault(_parse); -var _resolve = require('eslint-module-utils/resolve'); -var _resolve2 = _interopRequireDefault(_resolve); -var _ignore = require('eslint-module-utils/ignore'); -var _ignore2 = _interopRequireDefault(_ignore); -var _hash = require('eslint-module-utils/hash'); -var _unambiguous = require('eslint-module-utils/unambiguous'); -var unambiguous = _interopRequireWildcard(_unambiguous); -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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -const log = (0, _debug2.default)('eslint-plugin-import:ExportMap'); -const exportCache = new Map(); -class ExportMap { - constructor(path) { - this.path = path; - this.namespace = new Map(); - // todo: restructure to key on path, value is resolver + map of names - this.reexports = new Map(); - /** - * star-exports - * @type {Set} of () => ExportMap - */ - this.dependencies = new Set(); - /** - * dependencies of this module that are not explicitly re-exported - * @type {Map} from path = () => ExportMap - */ - this.imports = new Map(); - this.errors = []; - } - get hasDefault() { - return this.get('default') != null; - } // stronger than this.has - get size() { - let size = this.namespace.size + this.reexports.size; - this.dependencies.forEach(dep => { - const d = dep(); - // CJS / ignored dependencies won't exist (#717) - if (d == null) return; - size += d.size; - }); - return size; - } - /** - * Note that this does not check explicitly re-exported names for existence - * in the base namespace, but it will expand all `export * from '...'` exports - * if not found in the explicit namespace. - * @param {string} name - * @return {Boolean} true if `name` is exported by this module. - */ - has(name) { - if (this.namespace.has(name)) return true; - if (this.reexports.has(name)) return true; - // default exports must be explicitly re-exported (#328) - if (name !== 'default') { - for (let dep of this.dependencies) { - let innerMap = dep(); - // todo: report as unresolved? - if (!innerMap) continue; - if (innerMap.has(name)) return true; - } - } - return false; - } - /** - * ensure that imported name fully resolves. - * @param {[type]} name [description] - * @return {Boolean} [description] - */ - hasDeep(name) { - if (this.namespace.has(name)) return { found: true, path: [this] }; - - if (this.reexports.has(name)) { - const reexports = this.reexports.get(name), - imported = reexports.getImport(); - - // if import is ignored, return explicit 'null' - if (imported == null) return { found: true, path: [this] - - // safeguard against cycles, only if name matches - };if (imported.path === this.path && reexports.local === name) { - return { found: false, path: [this] }; - } - - const deep = imported.hasDeep(reexports.local); - deep.path.unshift(this); - - return deep; - } - - // default exports must be explicitly re-exported (#328) - if (name !== 'default') { - for (let dep of this.dependencies) { - let innerMap = dep(); - if (innerMap == null) return { found: true, path: [this] - // todo: report as unresolved? - };if (!innerMap) continue; - - // safeguard against cycles - if (innerMap.path === this.path) continue; - - let innerValue = innerMap.hasDeep(name); - if (innerValue.found) { - innerValue.path.unshift(this); - return innerValue; - } - } - } - - return { found: false, path: [this] }; - } - - get(name) { - if (this.namespace.has(name)) return this.namespace.get(name); - - if (this.reexports.has(name)) { - const reexports = this.reexports.get(name), - imported = reexports.getImport(); - - // if import is ignored, return explicit 'null' - if (imported == null) return null; - - // safeguard against cycles, only if name matches - if (imported.path === this.path && reexports.local === name) return undefined; - - return imported.get(reexports.local); - } - - // default exports must be explicitly re-exported (#328) - if (name !== 'default') { - for (let dep of this.dependencies) { - let innerMap = dep(); - // todo: report as unresolved? - if (!innerMap) continue; - - // safeguard against cycles - if (innerMap.path === this.path) continue; - - let innerValue = innerMap.get(name); - if (innerValue !== undefined) return innerValue; - } - } - - return undefined; - } - - forEach(callback, thisArg) { - this.namespace.forEach((v, n) => callback.call(thisArg, v, n, this)); - - this.reexports.forEach((reexports, name) => { - const reexported = reexports.getImport(); - // can't look up meta for ignored re-exports (#348) - callback.call(thisArg, reexported && reexported.get(reexports.local), name, this); - }); - - this.dependencies.forEach(dep => { - const d = dep(); - // CJS / ignored dependencies won't exist (#717) - if (d == null) return; - - d.forEach((v, n) => n !== 'default' && callback.call(thisArg, v, n, this)); - }); - } - - // todo: keys, values, entries? - - reportErrors(context, declaration) { - context.report({ - node: declaration.source, - message: `Parse errors in imported module '${declaration.source.value}': ` + `${this.errors.map(e => `${e.message} (${e.lineNumber}:${e.column})`).join(', ')}` - }); - } -} - -exports.default = ExportMap; /** - * parse docs from the first node that has leading comments - */ - -function captureDoc(source, docStyleParsers) { - const metadata = {}; - - // 'some' short-circuits on first 'true' - - for (var _len = arguments.length, nodes = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { - nodes[_key - 2] = arguments[_key]; - } - - nodes.some(n => { - try { - - let leadingComments; - - // n.leadingComments is legacy `attachComments` behavior - if ('leadingComments' in n) { - leadingComments = n.leadingComments; - } else if (n.range) { - leadingComments = source.getCommentsBefore(n); - } - - if (!leadingComments || leadingComments.length === 0) return false; - - for (let name in docStyleParsers) { - const doc = docStyleParsers[name](leadingComments); - if (doc) { - metadata.doc = doc; - } - } - - return true; - } catch (err) { - return false; - } - }); - - return metadata; -} - -const availableDocStyleParsers = { - jsdoc: captureJsDoc, - tomdoc: captureTomDoc - - /** - * parse JSDoc from leading comments - * @param {...[type]} comments [description] - * @return {{doc: object}} - */ -};function captureJsDoc(comments) { - let doc; - - // capture XSDoc - comments.forEach(comment => { - // skip non-block comments - if (comment.type !== 'Block') return; - try { - doc = _doctrine2.default.parse(comment.value, { unwrap: true }); - } catch (err) { - /* don't care, for now? maybe add to `errors?` */ - } - }); - - return doc; -} - -/** - * parse TomDoc section from comments - */ -function captureTomDoc(comments) { - // collect lines up to first paragraph break - const lines = []; - for (let i = 0; i < comments.length; i++) { - const comment = comments[i]; - if (comment.value.match(/^\s*$/)) break; - lines.push(comment.value.trim()); - } - - // return doctrine-like object - const statusMatch = lines.join(' ').match(/^(Public|Internal|Deprecated):\s*(.+)/); - if (statusMatch) { - return { - description: statusMatch[2], - tags: [{ - title: statusMatch[1].toLowerCase(), - description: statusMatch[2] - }] - }; - } -} - -ExportMap.get = function (source, context) { - const path = (0, _resolve2.default)(source, context); - if (path == null) return null; - - return ExportMap.for(childContext(path, context)); -}; - -ExportMap.for = function (context) { - const path = context.path; - - - const cacheKey = (0, _hash.hashObject)(context).digest('hex'); - let exportMap = exportCache.get(cacheKey); - - // return cached ignore - if (exportMap === null) return null; - - const stats = _fs2.default.statSync(path); - if (exportMap != null) { - // date equality check - if (exportMap.mtime - stats.mtime === 0) { - return exportMap; - } - // future: check content equality? - } - - // check valid extensions first - if (!(0, _ignore.hasValidExtension)(path, context)) { - exportCache.set(cacheKey, null); - return null; - } - - // check for and cache ignore - if ((0, _ignore2.default)(path, context)) { - log('ignored path due to ignore settings:', path); - exportCache.set(cacheKey, null); - return null; - } - - const content = _fs2.default.readFileSync(path, { encoding: 'utf8' }); - - // check for and cache unambiguous modules - if (!unambiguous.test(content)) { - log('ignored path due to unambiguous regex:', path); - exportCache.set(cacheKey, null); - return null; - } - - log('cache miss', cacheKey, 'for path', path); - exportMap = ExportMap.parse(path, content, context); - - // ambiguous modules return null - if (exportMap == null) return null; - - exportMap.mtime = stats.mtime; - - exportCache.set(cacheKey, exportMap); - return exportMap; -}; - -ExportMap.parse = function (path, content, context) { - var m = new ExportMap(path); - - try { - var ast = (0, _parse2.default)(path, content, context); - } catch (err) { - log('parse error:', path, err); - m.errors.push(err); - return m; // can't continue - } - - if (!unambiguous.isModule(ast)) return null; - - const docstyle = context.settings && context.settings['import/docstyle'] || ['jsdoc']; - const docStyleParsers = {}; - docstyle.forEach(style => { - docStyleParsers[style] = availableDocStyleParsers[style]; - }); - - // attempt to collect module doc - if (ast.comments) { - ast.comments.some(c => { - if (c.type !== 'Block') return false; - try { - const doc = _doctrine2.default.parse(c.value, { unwrap: true }); - if (doc.tags.some(t => t.title === 'module')) { - m.doc = doc; - return true; - } - } catch (err) {/* ignore */} - return false; - }); - } - - const namespaces = new Map(); - - function remotePath(value) { - return _resolve2.default.relative(value, path, context.settings); - } - - function resolveImport(value) { - const rp = remotePath(value); - if (rp == null) return null; - return ExportMap.for(childContext(rp, context)); - } - - function getNamespace(identifier) { - if (!namespaces.has(identifier.name)) return; - - return function () { - return resolveImport(namespaces.get(identifier.name)); - }; - } - - function addNamespace(object, identifier) { - const nsfn = getNamespace(identifier); - if (nsfn) { - Object.defineProperty(object, 'namespace', { get: nsfn }); - } - - return object; - } - - function captureDependency(declaration) { - if (declaration.source == null) return null; - if (declaration.importKind === 'type') return null; // skip Flow type imports - const importedSpecifiers = new Set(); - const supportedTypes = new Set(['ImportDefaultSpecifier', 'ImportNamespaceSpecifier']); - let hasImportedType = false; - if (declaration.specifiers) { - declaration.specifiers.forEach(specifier => { - const isType = specifier.importKind === 'type'; - hasImportedType = hasImportedType || isType; - - if (supportedTypes.has(specifier.type) && !isType) { - importedSpecifiers.add(specifier.type); - } - if (specifier.type === 'ImportSpecifier' && !isType) { - importedSpecifiers.add(specifier.imported.name); - } - }); - } - - // only Flow types were imported - if (hasImportedType && importedSpecifiers.size === 0) return null; - - const p = remotePath(declaration.source.value); - if (p == null) return null; - const existing = m.imports.get(p); - if (existing != null) return existing.getter; - - const getter = thunkFor(p, context); - m.imports.set(p, { - getter, - source: { // capturing actual node reference holds full AST in memory! - value: declaration.source.value, - loc: declaration.source.loc - }, - importedSpecifiers - }); - return getter; - } - - const source = makeSourceCode(content, ast); - - ast.body.forEach(function (n) { - - if (n.type === 'ExportDefaultDeclaration') { - const exportMeta = captureDoc(source, docStyleParsers, n); - if (n.declaration.type === 'Identifier') { - addNamespace(exportMeta, n.declaration); - } - m.namespace.set('default', exportMeta); - return; - } - - if (n.type === 'ExportAllDeclaration') { - const getter = captureDependency(n); - if (getter) m.dependencies.add(getter); - return; - } - - // capture namespaces in case of later export - if (n.type === 'ImportDeclaration') { - captureDependency(n); - let ns; - if (n.specifiers.some(s => s.type === 'ImportNamespaceSpecifier' && (ns = s))) { - namespaces.set(ns.local.name, n.source.value); - } - return; - } - - if (n.type === 'ExportNamedDeclaration') { - // capture declaration - if (n.declaration != null) { - switch (n.declaration.type) { - case 'FunctionDeclaration': - case 'ClassDeclaration': - case 'TypeAlias': // flowtype with babel-eslint parser - case 'InterfaceDeclaration': - case 'DeclareFunction': - case 'TSDeclareFunction': - case 'TSEnumDeclaration': - case 'TSTypeAliasDeclaration': - case 'TSInterfaceDeclaration': - case 'TSAbstractClassDeclaration': - case 'TSModuleDeclaration': - m.namespace.set(n.declaration.id.name, captureDoc(source, docStyleParsers, n)); - break; - case 'VariableDeclaration': - n.declaration.declarations.forEach(d => recursivePatternCapture(d.id, id => m.namespace.set(id.name, captureDoc(source, docStyleParsers, d, n)))); - break; - } - } - - const nsource = n.source && n.source.value; - n.specifiers.forEach(s => { - const exportMeta = {}; - let local; - - switch (s.type) { - case 'ExportDefaultSpecifier': - if (!n.source) return; - local = 'default'; - break; - case 'ExportNamespaceSpecifier': - m.namespace.set(s.exported.name, Object.defineProperty(exportMeta, 'namespace', { - get() { - return resolveImport(nsource); - } - })); - return; - case 'ExportSpecifier': - if (!n.source) { - m.namespace.set(s.exported.name, addNamespace(exportMeta, s.local)); - return; - } - // else falls through - default: - local = s.local.name; - break; - } - - // todo: JSDoc - m.reexports.set(s.exported.name, { local, getImport: () => resolveImport(nsource) }); - }); - } - - // This doesn't declare anything, but changes what's being exported. - if (n.type === 'TSExportAssignment') { - const moduleDecls = ast.body.filter(bodyNode => bodyNode.type === 'TSModuleDeclaration' && bodyNode.id.name === n.expression.name); - moduleDecls.forEach(moduleDecl => { - if (moduleDecl && moduleDecl.body && moduleDecl.body.body) { - moduleDecl.body.body.forEach(moduleBlockNode => { - // Export-assignment exports all members in the namespace, explicitly exported or not. - const exportedDecl = moduleBlockNode.type === 'ExportNamedDeclaration' ? moduleBlockNode.declaration : moduleBlockNode; - - if (exportedDecl.type === 'VariableDeclaration') { - exportedDecl.declarations.forEach(decl => recursivePatternCapture(decl.id, id => m.namespace.set(id.name, captureDoc(source, docStyleParsers, decl, exportedDecl, moduleBlockNode)))); - } else { - m.namespace.set(exportedDecl.id.name, captureDoc(source, docStyleParsers, moduleBlockNode)); - } - }); - } - }); - } - }); - - return m; -}; - -/** - * The creation of this closure is isolated from other scopes - * to avoid over-retention of unrelated variables, which has - * caused memory leaks. See #1266. - */ -function thunkFor(p, context) { - return () => ExportMap.for(childContext(p, context)); -} - -/** - * Traverse a pattern/identifier node, calling 'callback' - * for each leaf identifier. - * @param {node} pattern - * @param {Function} callback - * @return {void} - */ -function recursivePatternCapture(pattern, callback) { - switch (pattern.type) { - case 'Identifier': - // base case - callback(pattern); - break; - - case 'ObjectPattern': - pattern.properties.forEach(p => { - recursivePatternCapture(p.value, callback); - }); - break; - - case 'ArrayPattern': - pattern.elements.forEach(element => { - if (element == null) return; - recursivePatternCapture(element, callback); - }); - break; - - case 'AssignmentPattern': - callback(pattern.left); - break; - } -} - -/** - * don't hold full context object in memory, just grab what we need. - */ -function childContext(path, context) { - const settings = context.settings, - parserOptions = context.parserOptions, - parserPath = context.parserPath; - - return { - settings, - parserOptions, - parserPath, - path - }; -} - -/** - * sometimes legacy support isn't _that_ hard... right? - */ -function makeSourceCode(text, ast) { - if (_eslint.SourceCode.length > 1) { - // ESLint 3 - return new _eslint.SourceCode(text, ast); - } else { - // ESLint 4, 5 - return new _eslint.SourceCode({ text, ast }); - } -} -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9FeHBvcnRNYXAuanMiXSwibmFtZXMiOlsicmVjdXJzaXZlUGF0dGVybkNhcHR1cmUiLCJ1bmFtYmlndW91cyIsImxvZyIsImV4cG9ydENhY2hlIiwiTWFwIiwiRXhwb3J0TWFwIiwiY29uc3RydWN0b3IiLCJwYXRoIiwibmFtZXNwYWNlIiwicmVleHBvcnRzIiwiZGVwZW5kZW5jaWVzIiwiU2V0IiwiaW1wb3J0cyIsImVycm9ycyIsImhhc0RlZmF1bHQiLCJnZXQiLCJzaXplIiwiZm9yRWFjaCIsImRlcCIsImQiLCJoYXMiLCJuYW1lIiwiaW5uZXJNYXAiLCJoYXNEZWVwIiwiZm91bmQiLCJpbXBvcnRlZCIsImdldEltcG9ydCIsImxvY2FsIiwiZGVlcCIsInVuc2hpZnQiLCJpbm5lclZhbHVlIiwidW5kZWZpbmVkIiwiY2FsbGJhY2siLCJ0aGlzQXJnIiwidiIsIm4iLCJjYWxsIiwicmVleHBvcnRlZCIsInJlcG9ydEVycm9ycyIsImNvbnRleHQiLCJkZWNsYXJhdGlvbiIsInJlcG9ydCIsIm5vZGUiLCJzb3VyY2UiLCJtZXNzYWdlIiwidmFsdWUiLCJtYXAiLCJlIiwibGluZU51bWJlciIsImNvbHVtbiIsImpvaW4iLCJjYXB0dXJlRG9jIiwiZG9jU3R5bGVQYXJzZXJzIiwibWV0YWRhdGEiLCJub2RlcyIsInNvbWUiLCJsZWFkaW5nQ29tbWVudHMiLCJyYW5nZSIsImdldENvbW1lbnRzQmVmb3JlIiwibGVuZ3RoIiwiZG9jIiwiZXJyIiwiYXZhaWxhYmxlRG9jU3R5bGVQYXJzZXJzIiwianNkb2MiLCJjYXB0dXJlSnNEb2MiLCJ0b21kb2MiLCJjYXB0dXJlVG9tRG9jIiwiY29tbWVudHMiLCJjb21tZW50IiwidHlwZSIsImRvY3RyaW5lIiwicGFyc2UiLCJ1bndyYXAiLCJsaW5lcyIsImkiLCJtYXRjaCIsInB1c2giLCJ0cmltIiwic3RhdHVzTWF0Y2giLCJkZXNjcmlwdGlvbiIsInRhZ3MiLCJ0aXRsZSIsInRvTG93ZXJDYXNlIiwiZm9yIiwiY2hpbGRDb250ZXh0IiwiY2FjaGVLZXkiLCJkaWdlc3QiLCJleHBvcnRNYXAiLCJzdGF0cyIsImZzIiwic3RhdFN5bmMiLCJtdGltZSIsInNldCIsImNvbnRlbnQiLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsInRlc3QiLCJtIiwiYXN0IiwiaXNNb2R1bGUiLCJkb2NzdHlsZSIsInNldHRpbmdzIiwic3R5bGUiLCJjIiwidCIsIm5hbWVzcGFjZXMiLCJyZW1vdGVQYXRoIiwicmVzb2x2ZSIsInJlbGF0aXZlIiwicmVzb2x2ZUltcG9ydCIsInJwIiwiZ2V0TmFtZXNwYWNlIiwiaWRlbnRpZmllciIsImFkZE5hbWVzcGFjZSIsIm9iamVjdCIsIm5zZm4iLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImNhcHR1cmVEZXBlbmRlbmN5IiwiaW1wb3J0S2luZCIsImltcG9ydGVkU3BlY2lmaWVycyIsInN1cHBvcnRlZFR5cGVzIiwiaGFzSW1wb3J0ZWRUeXBlIiwic3BlY2lmaWVycyIsInNwZWNpZmllciIsImlzVHlwZSIsImFkZCIsInAiLCJleGlzdGluZyIsImdldHRlciIsInRodW5rRm9yIiwibG9jIiwibWFrZVNvdXJjZUNvZGUiLCJib2R5IiwiZXhwb3J0TWV0YSIsIm5zIiwicyIsImlkIiwiZGVjbGFyYXRpb25zIiwibnNvdXJjZSIsImV4cG9ydGVkIiwibW9kdWxlRGVjbHMiLCJmaWx0ZXIiLCJib2R5Tm9kZSIsImV4cHJlc3Npb24iLCJtb2R1bGVEZWNsIiwibW9kdWxlQmxvY2tOb2RlIiwiZXhwb3J0ZWREZWNsIiwiZGVjbCIsInBhdHRlcm4iLCJwcm9wZXJ0aWVzIiwiZWxlbWVudHMiLCJlbGVtZW50IiwibGVmdCIsInBhcnNlck9wdGlvbnMiLCJwYXJzZXJQYXRoIiwidGV4dCIsIlNvdXJjZUNvZGUiXSwibWFwcGluZ3MiOiI7Ozs7O1FBcWtCZ0JBLHVCLEdBQUFBLHVCOztBQXJrQmhCOzs7O0FBRUE7Ozs7QUFFQTs7OztBQUVBOztBQUVBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUVB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O0FBQ0VBLGNBQVFDLFVBQVIsQ0FBbUJySSxPQUFuQixDQUEyQjhHLEtBQUs7QUFDOUIvSCxnQ0FBd0IrSCxFQUFFbEYsS0FBMUIsRUFBaUNiLFFBQWpDO0FBQ0QsT0FGRDtBQUdBOztBQUVGLFNBQUssY0FBTDtBQUNFcUgsY0FBUUUsUUFBUixDQUFpQnRJLE9BQWpCLENBQTBCdUksT0FBRCxJQUFhO0FBQ3BDLFlBQUlBLFdBQVcsSUFBZixFQUFxQjtBQUNyQnhKLGdDQUF3QndKLE9BQXhCLEVBQWlDeEgsUUFBakM7QUFDRCxPQUhEO0FBSUE7O0FBRUYsU0FBSyxtQkFBTDtBQUNFQSxlQUFTcUgsUUFBUUksSUFBakI7QUFDQTtBQXBCSjtBQXNCRDs7QUFFRDs7O0FBR0EsU0FBU3JFLFlBQVQsQ0FBc0I3RSxJQUF0QixFQUE0QmdDLE9BQTVCLEVBQXFDO0FBQUEsUUFDM0I4RCxRQUQyQixHQUNhOUQsT0FEYixDQUMzQjhELFFBRDJCO0FBQUEsUUFDakJxRCxhQURpQixHQUNhbkgsT0FEYixDQUNqQm1ILGFBRGlCO0FBQUEsUUFDRkMsVUFERSxHQUNhcEgsT0FEYixDQUNGb0gsVUFERTs7QUFFbkMsU0FBTztBQUNMdEQsWUFESztBQUVMcUQsaUJBRks7QUFHTEMsY0FISztBQUlMcEo7QUFKSyxHQUFQO0FBTUQ7O0FBR0Q7OztBQUdBLFNBQVM2SCxjQUFULENBQXdCd0IsSUFBeEIsRUFBOEIxRCxHQUE5QixFQUFtQztBQUNqQyxNQUFJMkQsbUJBQVdsRyxNQUFYLEdBQW9CLENBQXhCLEVBQTJCO0FBQ3pCO0FBQ0EsV0FBTyxJQUFJa0csa0JBQUosQ0FBZUQsSUFBZixFQUFxQjFELEdBQXJCLENBQVA7QUFDRCxHQUhELE1BR087QUFDTDtBQUNBLFdBQU8sSUFBSTJELGtCQUFKLENBQWUsRUFBRUQsSUFBRixFQUFRMUQsR0FBUixFQUFmLENBQVA7QUFDRDtBQUNGIiwiZmlsZSI6IkV4cG9ydE1hcC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmcyBmcm9tICdmcydcblxuaW1wb3J0IGRvY3RyaW5lIGZyb20gJ2RvY3RyaW5lJ1xuXG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnXG5cbmltcG9ydCB7IFNvdXJjZUNvZGUgfSBmcm9tICdlc2xpbnQnXG5cbmltcG9ydCBwYXJzZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3BhcnNlJ1xuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IGlzSWdub3JlZCwgeyBoYXNWYWxpZEV4dGVuc2lvbiB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvaWdub3JlJ1xuXG5pbXBvcnQgeyBoYXNoT2JqZWN0IH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9oYXNoJ1xuaW1wb3J0ICogYXMgdW5hbWJpZ3VvdXMgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy91bmFtYmlndW91cydcblxuY29uc3QgbG9nID0gZGVidWcoJ2VzbGludC1wbHVnaW4taW1wb3J0OkV4cG9ydE1hcCcpXG5cbmNvbnN0IGV4cG9ydENhY2hlID0gbmV3IE1hcCgpXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEV4cG9ydE1hcCB7XG4gIGNvbnN0cnVjdG9yKHBhdGgpIHtcbiAgICB0aGlzLnBhdGggPSBwYXRoXG4gICAgdGhpcy5uYW1lc3BhY2UgPSBuZXcgTWFwKClcbiAgICAvLyB0b2RvOiByZXN0cnVjdHVyZSB0byBrZXkgb24gcGF0aCwgdmFsdWUgaXMgcmVzb2x2ZXIgKyBtYXAgb2YgbmFtZXNcbiAgICB0aGlzLnJlZXhwb3J0cyA9IG5ldyBNYXAoKVxuICAgIC8qKlxuICAgICAqIHN0YXItZXhwb3J0c1xuICAgICAqIEB0eXBlIHtTZXR9IG9mICgpID0+IEV4cG9ydE1hcFxuICAgICAqL1xuICAgIHRoaXMuZGVwZW5kZW5jaWVzID0gbmV3IFNldCgpXG4gICAgLyoqXG4gICAgICogZGVwZW5kZW5jaWVzIG9mIHRoaXMgbW9kdWxlIHRoYXQgYXJlIG5vdCBleHBsaWNpdGx5IHJlLWV4cG9ydGVkXG4gICAgICogQHR5cGUge01hcH0gZnJvbSBwYXRoID0gKCkgPT4gRXhwb3J0TWFwXG4gICAgICovXG4gICAgdGhpcy5pbXBvcnRzID0gbmV3IE1hcCgpXG4gICAgdGhpcy5lcnJvcnMgPSBbXVxuICB9XG5cbiAgZ2V0IGhhc0RlZmF1bHQoKSB7IHJldHVybiB0aGlzLmdldCgnZGVmYXVsdCcpICE9IG51bGwgfSAvLyBzdHJvbmdlciB0aGFuIHRoaXMuaGFzXG5cbiAgZ2V0IHNpemUoKSB7XG4gICAgbGV0IHNpemUgPSB0aGlzLm5hbWVzcGFjZS5zaXplICsgdGhpcy5yZWV4cG9ydHMuc2l6ZVxuICAgIHRoaXMuZGVwZW5kZW5jaWVzLmZvckVhY2goZGVwID0+IHtcbiAgICAgIGNvbnN0IGQgPSBkZXAoKVxuICAgICAgLy8gQ0pTIC8gaWdub3JlZCBkZXBlbmRlbmNpZXMgd29uJ3QgZXhpc3QgKCM3MTcpXG4gICAgICBpZiAoZCA9PSBudWxsKSByZXR1cm5cbiAgICAgIHNpemUgKz0gZC5zaXplXG4gICAgfSlcbiAgICByZXR1cm4gc2l6ZVxuICB9XG5cbiAgLyoqXG4gICAqIE5vdGUgdGhhdCB0aGlzIGRvZXMgbm90IGNoZWNrIGV4cGxpY2l0bHkgcmUtZXhwb3J0ZWQgbmFtZXMgZm9yIGV4aXN0ZW5jZVxuICAgKiBpbiB0aGUgYmFzZSBuYW1lc3BhY2UsIGJ1dCBpdCB3aWxsIGV4cGFuZCBhbGwgYGV4cG9ydCAqIGZyb20gJy4uLidgIGV4cG9ydHNcbiAgICogaWYgbm90IGZvdW5kIGluIHRoZSBleHBsaWNpdCBuYW1lc3BhY2UuXG4gICAqIEBwYXJhbSAge3N0cmluZ30gIG5hbWVcbiAgICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSBpZiBgbmFtZWAgaXMgZXhwb3J0ZWQgYnkgdGhpcyBtb2R1bGUuXG4gICAqL1xuICBoYXMobmFtZSkge1xuICAgIGlmICh0aGlzLm5hbWVzcGFjZS5oYXMobmFtZSkpIHJldHVybiB0cnVlXG4gICAgaWYgKHRoaXMucmVleHBvcnRzLmhhcyhuYW1lKSkgcmV0dXJuIHRydWVcblxuICAgIC8vIGRlZmF1bHQgZXhwb3J0cyBtdXN0IGJlIGV4cGxpY2l0bHkgcmUtZXhwb3J0ZWQgKCMzMjgpXG4gICAgaWYgKG5hbWUgIT09ICdkZWZhdWx0Jykge1xuICAgICAgZm9yIChsZXQgZGVwIG9mIHRoaXMuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgIGxldCBpbm5lck1hcCA9IGRlcCgpXG5cbiAgICAgICAgLy8gdG9kbzogcmVwb3J0IGFzIHVucmVzb2x2ZWQ/XG4gICAgICAgIGlmICghaW5uZXJNYXApIGNvbnRpbnVlXG5cbiAgICAgICAgaWYgKGlubmVyTWFwLmhhcyhuYW1lKSkgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBlbnN1cmUgdGhhdCBpbXBvcnRlZCBuYW1lIGZ1bGx5IHJlc29sdmVzLlxuICAgKiBAcGFyYW0gIHtbdHlwZV19ICBuYW1lIFtkZXNjcmlwdGlvbl1cbiAgICogQHJldHVybiB7Qm9vbGVhbn0gICAgICBbZGVzY3JpcHRpb25dXG4gICAqL1xuICBoYXNEZWVwKG5hbWUpIHtcbiAgICBpZiAodGhpcy5uYW1lc3BhY2UuaGFzKG5hbWUpKSByZXR1cm4geyBmb3VuZDogdHJ1ZSwgcGF0aDogW3RoaXNdIH1cblxuICAgIGlmICh0aGlzLnJlZXhwb3J0cy5oYXMobmFtZSkpIHtcbiAgICAgIGNvbnN0IHJlZXhwb3J0cyA9IHRoaXMucmVleHBvcnRzLmdldChuYW1lKVxuICAgICAgICAgICwgaW1wb3J0ZWQgPSByZWV4cG9ydHMuZ2V0SW1wb3J0KClcblxuICAgICAgLy8gaWYgaW1wb3J0IGlzIGlnbm9yZWQsIHJldHVybiBleHBsaWNpdCAnbnVsbCdcbiAgICAgIGlmIChpbXBvcnRlZCA9PSBudWxsKSByZXR1cm4geyBmb3VuZDogdHJ1ZSwgcGF0aDogW3RoaXNdIH1cblxuICAgICAgLy8gc2FmZWd1YXJkIGFnYWluc3QgY3ljbGVzLCBvbmx5IGlmIG5hbWUgbWF0Y2hlc1xuICAgICAgaWYgKGltcG9ydGVkLnBhdGggPT09IHRoaXMucGF0aCAmJiByZWV4cG9ydHMubG9jYWwgPT09IG5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHsgZm91bmQ6IGZhbHNlLCBwYXRoOiBbdGhpc10gfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBkZWVwID0gaW1wb3J0ZWQuaGFzRGVlcChyZWV4cG9ydHMubG9jYWwpXG4gICAgICBkZWVwLnBhdGgudW5zaGlmdCh0aGlzKVxuXG4gICAgICByZXR1cm4gZGVlcFxuICAgIH1cblxuXG4gICAgLy8gZGVmYXVsdCBleHBvcnRzIG11c3QgYmUgZXhwbGljaXRseSByZS1leHBvcnRlZCAoIzMyOClcbiAgICBpZiAobmFtZSAhPT0gJ2RlZmF1bHQnKSB7XG4gICAgICBmb3IgKGxldCBkZXAgb2YgdGhpcy5kZXBlbmRlbmNpZXMpIHtcbiAgICAgICAgbGV0IGlubmVyTWFwID0gZGVwKClcbiAgICAgICAgaWYgKGlubmVyTWFwID09IG51bGwpIHJldHVybiB7IGZvdW5kOiB0cnVlLCBwYXRoOiBbdGhpc10gfVxuICAgICAgICAvLyB0b2RvOiByZXBvcnQgYXMgdW5yZXNvbHZlZD9cbiAgICAgICAgaWYgKCFpbm5lck1hcCkgY29udGludWVcblxuICAgICAgICAvLyBzYWZlZ3VhcmQgYWdhaW5zdCBjeWNsZXNcbiAgICAgICAgaWYgKGlubmVyTWFwLnBhdGggPT09IHRoaXMucGF0aCkgY29udGludWVcblxuICAgICAgICBsZXQgaW5uZXJWYWx1ZSA9IGlubmVyTWFwLmhhc0RlZXAobmFtZSlcbiAgICAgICAgaWYgKGlubmVyVmFsdWUuZm91bmQpIHtcbiAgICAgICAgICBpbm5lclZhbHVlLnBhdGgudW5zaGlmdCh0aGlzKVxuICAgICAgICAgIHJldHVybiBpbm5lclZhbHVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4geyBmb3VuZDogZmFsc2UsIHBhdGg6IFt0aGlzXSB9XG4gIH1cblxuICBnZXQobmFtZSkge1xuICAgIGlmICh0aGlzLm5hbWVzcGFjZS5oYXMobmFtZSkpIHJldHVybiB0aGlzLm5hbWVzcGFjZS5nZXQobmFtZSlcblxuICAgIGlmICh0aGlzLnJlZXhwb3J0cy5oYXMobmFtZSkpIHtcbiAgICAgIGNvbnN0IHJlZXhwb3J0cyA9IHRoaXMucmVleHBvcnRzLmdldChuYW1lKVxuICAgICAgICAgICwgaW1wb3J0ZWQgPSByZWV4cG9ydHMuZ2V0SW1wb3J0KClcblxuICAgICAgLy8gaWYgaW1wb3J0IGlzIGlnbm9yZWQsIHJldHVybiBleHBsaWNpdCAnbnVsbCdcbiAgICAgIGlmIChpbXBvcnRlZCA9PSBudWxsKSByZXR1cm4gbnVsbFxuXG4gICAgICAvLyBzYWZlZ3VhcmQgYWdhaW5zdCBjeWNsZXMsIG9ubHkgaWYgbmFtZSBtYXRjaGVzXG4gICAgICBpZiAoaW1wb3J0ZWQucGF0aCA9PT0gdGhpcy5wYXRoICYmIHJlZXhwb3J0cy5sb2NhbCA9PT0gbmFtZSkgcmV0dXJuIHVuZGVmaW5lZFxuXG4gICAgICByZXR1cm4gaW1wb3J0ZWQuZ2V0KHJlZXhwb3J0cy5sb2NhbClcbiAgICB9XG5cbiAgICAvLyBkZWZhdWx0IGV4cG9ydHMgbXVzdCBiZSBleHBsaWNpdGx5IHJlLWV4cG9ydGVkICgjMzI4KVxuICAgIGlmIChuYW1lICE9PSAnZGVmYXVsdCcpIHtcbiAgICAgIGZvciAobGV0IGRlcCBvZiB0aGlzLmRlcGVuZGVuY2llcykge1xuICAgICAgICBsZXQgaW5uZXJNYXAgPSBkZXAoKVxuICAgICAgICAvLyB0b2RvOiByZXBvcnQgYXMgdW5yZXNvbHZlZD9cbiAgICAgICAgaWYgKCFpbm5lck1hcCkgY29udGludWVcblxuICAgICAgICAvLyBzYWZlZ3VhcmQgYWdhaW5zdCBjeWNsZXNcbiAgICAgICAgaWYgKGlubmVyTWFwLnBhdGggPT09IHRoaXMucGF0aCkgY29udGludWVcblxuICAgICAgICBsZXQgaW5uZXJWYWx1ZSA9IGlubmVyTWFwLmdldChuYW1lKVxuICAgICAgICBpZiAoaW5uZXJWYWx1ZSAhPT0gdW5kZWZpbmVkKSByZXR1cm4gaW5uZXJWYWx1ZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfVxuXG4gIGZvckVhY2goY2FsbGJhY2ssIHRoaXNBcmcpIHtcbiAgICB0aGlzLm5hbWVzcGFjZS5mb3JFYWNoKCh2LCBuKSA9PlxuICAgICAgY2FsbGJhY2suY2FsbCh0aGlzQXJnLCB2LCBuLCB0aGlzKSlcblxuICAgIHRoaXMucmVleHBvcnRzLmZvckVhY2goKHJlZXhwb3J0cywgbmFtZSkgPT4ge1xuICAgICAgY29uc3QgcmVleHBvcnRlZCA9IHJlZXhwb3J0cy5nZXRJbXBvcnQoKVxuICAgICAgLy8gY2FuJ3QgbG9vayB1cCBtZXRhIGZvciBpZ25vcmVkIHJlLWV4cG9ydHMgKCMzNDgpXG4gICAgICBjYWxsYmFjay5jYWxsKHRoaXNBcmcsIHJlZXhwb3J0ZWQgJiYgcmVleHBvcnRlZC5nZXQocmVleHBvcnRzLmxvY2FsKSwgbmFtZSwgdGhpcylcbiAgICB9KVxuXG4gICAgdGhpcy5kZXBlbmRlbmNpZXMuZm9yRWFjaChkZXAgPT4ge1xuICAgICAgY29uc3QgZCA9IGRlcCgpXG4gICAgICAvLyBDSlMgLyBpZ25vcmVkIGRlcGVuZGVuY2llcyB3b24ndCBleGlzdCAoIzcxNylcbiAgICAgIGlmIChkID09IG51bGwpIHJldHVyblxuXG4gICAgICBkLmZvckVhY2goKHYsIG4pID0+XG4gICAgICAgIG4gIT09ICdkZWZhdWx0JyAmJiBjYWxsYmFjay5jYWxsKHRoaXNBcmcsIHYsIG4sIHRoaXMpKVxuICAgIH0pXG4gIH1cblxuICAvLyB0b2RvOiBrZXlzLCB2YWx1ZXMsIGVudHJpZXM/XG5cbiAgcmVwb3J0RXJyb3JzKGNvbnRleHQsIGRlY2xhcmF0aW9uKSB7XG4gICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgbm9kZTogZGVjbGFyYXRpb24uc291cmNlLFxuICAgICAgbWVzc2FnZTogYFBhcnNlIGVycm9ycyBpbiBpbXBvcnRlZCBtb2R1bGUgJyR7ZGVjbGFyYXRpb24uc291cmNlLnZhbHVlfSc6IGAgK1xuICAgICAgICAgICAgICAgICAgYCR7dGhpcy5lcnJvcnNcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZSA9PiBgJHtlLm1lc3NhZ2V9ICgke2UubGluZU51bWJlcn06JHtlLmNvbHVtbn0pYClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5qb2luKCcsICcpfWAsXG4gICAgfSlcbiAgfVxufVxuXG4vKipcbiAqIHBhcnNlIGRvY3MgZnJvbSB0aGUgZmlyc3Qgbm9kZSB0aGF0IGhhcyBsZWFkaW5nIGNvbW1lbnRzXG4gKi9cbmZ1bmN0aW9uIGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIC4uLm5vZGVzKSB7XG4gIGNvbnN0IG1ldGFkYXRhID0ge31cblxuICAvLyAnc29tZScgc2hvcnQtY2lyY3VpdHMgb24gZmlyc3QgJ3RydWUnXG4gIG5vZGVzLnNvbWUobiA9PiB7XG4gICAgdHJ5IHtcblxuICAgICAgbGV0IGxlYWRpbmdDb21tZW50c1xuXG4gICAgICAvLyBuLmxlYWRpbmdDb21tZW50cyBpcyBsZWdhY3kgYGF0dGFjaENvbW1lbnRzYCBiZWhhdmlvclxuICAgICAgaWYgKCdsZWFkaW5nQ29tbWVudHMnIGluIG4pIHtcbiAgICAgICAgbGVhZGluZ0NvbW1lbnRzID0gbi5sZWFkaW5nQ29tbWVudHNcbiAgICAgIH0gZWxzZSBpZiAobi5yYW5nZSkge1xuICAgICAgICBsZWFkaW5nQ29tbWVudHMgPSBzb3VyY2UuZ2V0Q29tbWVudHNCZWZvcmUobilcbiAgICAgIH1cblxuICAgICAgaWYgKCFsZWFkaW5nQ29tbWVudHMgfHwgbGVhZGluZ0NvbW1lbnRzLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGZhbHNlXG5cbiAgICAgIGZvciAobGV0IG5hbWUgaW4gZG9jU3R5bGVQYXJzZXJzKSB7XG4gICAgICAgIGNvbnN0IGRvYyA9IGRvY1N0eWxlUGFyc2Vyc1tuYW1lXShsZWFkaW5nQ29tbWVudHMpXG4gICAgICAgIGlmIChkb2MpIHtcbiAgICAgICAgICBtZXRhZGF0YS5kb2MgPSBkb2NcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9KVxuXG4gIHJldHVybiBtZXRhZGF0YVxufVxuXG5jb25zdCBhdmFpbGFibGVEb2NTdHlsZVBhcnNlcnMgPSB7XG4gIGpzZG9jOiBjYXB0dXJlSnNEb2MsXG4gIHRvbWRvYzogY2FwdHVyZVRvbURvYyxcbn1cblxuLyoqXG4gKiBwYXJzZSBKU0RvYyBmcm9tIGxlYWRpbmcgY29tbWVudHNcbiAqIEBwYXJhbSAgey4uLlt0eXBlXX0gY29tbWVudHMgW2Rlc2NyaXB0aW9uXVxuICogQHJldHVybiB7e2RvYzogb2JqZWN0fX1cbiAqL1xuZnVuY3Rpb24gY2FwdHVyZUpzRG9jKGNvbW1lbnRzKSB7XG4gIGxldCBkb2NcblxuICAvLyBjYXB0dXJlIFhTRG9jXG4gIGNvbW1lbnRzLmZvckVhY2goY29tbWVudCA9PiB7XG4gICAgLy8gc2tpcCBub24tYmxvY2sgY29tbWVudHNcbiAgICBpZiAoY29tbWVudC50eXBlICE9PSAnQmxvY2snKSByZXR1cm5cbiAgICB0cnkge1xuICAgICAgZG9jID0gZG9jdHJpbmUucGFyc2UoY29tbWVudC52YWx1ZSwgeyB1bndyYXA6IHRydWUgfSlcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8qIGRvbid0IGNhcmUsIGZvciBub3c/IG1heWJlIGFkZCB0byBgZXJyb3JzP2AgKi9cbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIGRvY1xufVxuXG4vKipcbiAgKiBwYXJzZSBUb21Eb2Mgc2VjdGlvbiBmcm9tIGNvbW1lbnRzXG4gICovXG5mdW5jdGlvbiBjYXB0dXJlVG9tRG9jKGNvbW1lbnRzKSB7XG4gIC8vIGNvbGxlY3QgbGluZXMgdXAgdG8gZmlyc3QgcGFyYWdyYXBoIGJyZWFrXG4gIGNvbnN0IGxpbmVzID0gW11cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb21tZW50cy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGNvbW1lbnQgPSBjb21tZW50c1tpXVxuICAgIGlmIChjb21tZW50LnZhbHVlLm1hdGNoKC9eXFxzKiQvKSkgYnJlYWtcbiAgICBsaW5lcy5wdXNoKGNvbW1lbnQudmFsdWUudHJpbSgpKVxuICB9XG5cbiAgLy8gcmV0dXJuIGRvY3RyaW5lLWxpa2Ugb2JqZWN0XG4gIGNvbnN0IHN0YXR1c01hdGNoID0gbGluZXMuam9pbignICcpLm1hdGNoKC9eKFB1YmxpY3xJbnRlcm5hbHxEZXByZWNhdGVkKTpcXHMqKC4rKS8pXG4gIGlmIChzdGF0dXNNYXRjaCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZXNjcmlwdGlvbjogc3RhdHVzTWF0Y2hbMl0sXG4gICAgICB0YWdzOiBbe1xuICAgICAgICB0aXRsZTogc3RhdHVzTWF0Y2hbMV0udG9Mb3dlckNhc2UoKSxcbiAgICAgICAgZGVzY3JpcHRpb246IHN0YXR1c01hdGNoWzJdLFxuICAgICAgfV0sXG4gICAgfVxuICB9XG59XG5cbkV4cG9ydE1hcC5nZXQgPSBmdW5jdGlvbiAoc291cmNlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHBhdGggPSByZXNvbHZlKHNvdXJjZSwgY29udGV4dClcbiAgaWYgKHBhdGggPT0gbnVsbCkgcmV0dXJuIG51bGxcblxuICByZXR1cm4gRXhwb3J0TWFwLmZvcihjaGlsZENvbnRleHQocGF0aCwgY29udGV4dCkpXG59XG5cbkV4cG9ydE1hcC5mb3IgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICBjb25zdCB7IHBhdGggfSA9IGNvbnRleHRcblxuICBjb25zdCBjYWNoZUtleSA9IGhhc2hPYmplY3QoY29udGV4dCkuZGlnZXN0KCdoZXgnKVxuICBsZXQgZXhwb3J0TWFwID0gZXhwb3J0Q2FjaGUuZ2V0KGNhY2hlS2V5KVxuXG4gIC8vIHJldHVybiBjYWNoZWQgaWdub3JlXG4gIGlmIChleHBvcnRNYXAgPT09IG51bGwpIHJldHVybiBudWxsXG5cbiAgY29uc3Qgc3RhdHMgPSBmcy5zdGF0U3luYyhwYXRoKVxuICBpZiAoZXhwb3J0TWFwICE9IG51bGwpIHtcbiAgICAvLyBkYXRlIGVxdWFsaXR5IGNoZWNrXG4gICAgaWYgKGV4cG9ydE1hcC5tdGltZSAtIHN0YXRzLm10aW1lID09PSAwKSB7XG4gICAgICByZXR1cm4gZXhwb3J0TWFwXG4gICAgfVxuICAgIC8vIGZ1dHVyZTogY2hlY2sgY29udGVudCBlcXVhbGl0eT9cbiAgfVxuXG4gIC8vIGNoZWNrIHZhbGlkIGV4dGVuc2lvbnMgZmlyc3RcbiAgaWYgKCFoYXNWYWxpZEV4dGVuc2lvbihwYXRoLCBjb250ZXh0KSkge1xuICAgIGV4cG9ydENhY2hlLnNldChjYWNoZUtleSwgbnVsbClcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgLy8gY2hlY2sgZm9yIGFuZCBjYWNoZSBpZ25vcmVcbiAgaWYgKGlzSWdub3JlZChwYXRoLCBjb250ZXh0KSkge1xuICAgIGxvZygnaWdub3JlZCBwYXRoIGR1ZSB0byBpZ25vcmUgc2V0dGluZ3M6JywgcGF0aClcbiAgICBleHBvcnRDYWNoZS5zZXQoY2FjaGVLZXksIG51bGwpXG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGNvbnN0IGNvbnRlbnQgPSBmcy5yZWFkRmlsZVN5bmMocGF0aCwgeyBlbmNvZGluZzogJ3V0ZjgnIH0pXG5cbiAgLy8gY2hlY2sgZm9yIGFuZCBjYWNoZSB1bmFtYmlndW91cyBtb2R1bGVzXG4gIGlmICghdW5hbWJpZ3VvdXMudGVzdChjb250ZW50KSkge1xuICAgIGxvZygnaWdub3JlZCBwYXRoIGR1ZSB0byB1bmFtYmlndW91cyByZWdleDonLCBwYXRoKVxuICAgIGV4cG9ydENhY2hlLnNldChjYWNoZUtleSwgbnVsbClcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgbG9nKCdjYWNoZSBtaXNzJywgY2FjaGVLZXksICdmb3IgcGF0aCcsIHBhdGgpXG4gIGV4cG9ydE1hcCA9IEV4cG9ydE1hcC5wYXJzZShwYXRoLCBjb250ZW50LCBjb250ZXh0KVxuXG4gIC8vIGFtYmlndW91cyBtb2R1bGVzIHJldHVybiBudWxsXG4gIGlmIChleHBvcnRNYXAgPT0gbnVsbCkgcmV0dXJuIG51bGxcblxuICBleHBvcnRNYXAubXRpbWUgPSBzdGF0cy5tdGltZVxuXG4gIGV4cG9ydENhY2hlLnNldChjYWNoZUtleSwgZXhwb3J0TWFwKVxuICByZXR1cm4gZXhwb3J0TWFwXG59XG5cblxuRXhwb3J0TWFwLnBhcnNlID0gZnVuY3Rpb24gKHBhdGgsIGNvbnRlbnQsIGNvbnRleHQpIHtcbiAgdmFyIG0gPSBuZXcgRXhwb3J0TWFwKHBhdGgpXG5cbiAgdHJ5IHtcbiAgICB2YXIgYXN0ID0gcGFyc2UocGF0aCwgY29udGVudCwgY29udGV4dClcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgbG9nKCdwYXJzZSBlcnJvcjonLCBwYXRoLCBlcnIpXG4gICAgbS5lcnJvcnMucHVzaChlcnIpXG4gICAgcmV0dXJuIG0gLy8gY2FuJ3QgY29udGludWVcbiAgfVxuXG4gIGlmICghdW5hbWJpZ3VvdXMuaXNNb2R1bGUoYXN0KSkgcmV0dXJuIG51bGxcblxuICBjb25zdCBkb2NzdHlsZSA9IChjb250ZXh0LnNldHRpbmdzICYmIGNvbnRleHQuc2V0dGluZ3NbJ2ltcG9ydC9kb2NzdHlsZSddKSB8fCBbJ2pzZG9jJ11cbiAgY29uc3QgZG9jU3R5bGVQYXJzZXJzID0ge31cbiAgZG9jc3R5bGUuZm9yRWFjaChzdHlsZSA9PiB7XG4gICAgZG9jU3R5bGVQYXJzZXJzW3N0eWxlXSA9IGF2YWlsYWJsZURvY1N0eWxlUGFyc2Vyc1tzdHlsZV1cbiAgfSlcblxuICAvLyBhdHRlbXB0IHRvIGNvbGxlY3QgbW9kdWxlIGRvY1xuICBpZiAoYXN0LmNvbW1lbnRzKSB7XG4gICAgYXN0LmNvbW1lbnRzLnNvbWUoYyA9PiB7XG4gICAgICBpZiAoYy50eXBlICE9PSAnQmxvY2snKSByZXR1cm4gZmFsc2VcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGRvYyA9IGRvY3RyaW5lLnBhcnNlKGMudmFsdWUsIHsgdW53cmFwOiB0cnVlIH0pXG4gICAgICAgIGlmIChkb2MudGFncy5zb21lKHQgPT4gdC50aXRsZSA9PT0gJ21vZHVsZScpKSB7XG4gICAgICAgICAgbS5kb2MgPSBkb2NcbiAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnIpIHsgLyogaWdub3JlICovIH1cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH0pXG4gIH1cblxuICBjb25zdCBuYW1lc3BhY2VzID0gbmV3IE1hcCgpXG5cbiAgZnVuY3Rpb24gcmVtb3RlUGF0aCh2YWx1ZSkge1xuICAgIHJldHVybiByZXNvbHZlLnJlbGF0aXZlKHZhbHVlLCBwYXRoLCBjb250ZXh0LnNldHRpbmdzKVxuICB9XG5cbiAgZnVuY3Rpb24gcmVzb2x2ZUltcG9ydCh2YWx1ZSkge1xuICAgIGNvbnN0IHJwID0gcmVtb3RlUGF0aCh2YWx1ZSlcbiAgICBpZiAocnAgPT0gbnVsbCkgcmV0dXJuIG51bGxcbiAgICByZXR1cm4gRXhwb3J0TWFwLmZvcihjaGlsZENvbnRleHQocnAsIGNvbnRleHQpKVxuICB9XG5cbiAgZnVuY3Rpb24gZ2V0TmFtZXNwYWNlKGlkZW50aWZpZXIpIHtcbiAgICBpZiAoIW5hbWVzcGFjZXMuaGFzKGlkZW50aWZpZXIubmFtZSkpIHJldHVyblxuXG4gICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiByZXNvbHZlSW1wb3J0KG5hbWVzcGFjZXMuZ2V0KGlkZW50aWZpZXIubmFtZSkpXG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gYWRkTmFtZXNwYWNlKG9iamVjdCwgaWRlbnRpZmllcikge1xuICAgIGNvbnN0IG5zZm4gPSBnZXROYW1lc3BhY2UoaWRlbnRpZmllcilcbiAgICBpZiAobnNmbikge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iamVjdCwgJ25hbWVzcGFjZScsIHsgZ2V0OiBuc2ZuIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIG9iamVjdFxuICB9XG5cbiAgZnVuY3Rpb24gY2FwdHVyZURlcGVuZGVuY3koZGVjbGFyYXRpb24pIHtcbiAgICBpZiAoZGVjbGFyYXRpb24uc291cmNlID09IG51bGwpIHJldHVybiBudWxsXG4gICAgaWYgKGRlY2xhcmF0aW9uLmltcG9ydEtpbmQgPT09ICd0eXBlJykgcmV0dXJuIG51bGwgLy8gc2tpcCBGbG93IHR5cGUgaW1wb3J0c1xuICAgIGNvbnN0IGltcG9ydGVkU3BlY2lmaWVycyA9IG5ldyBTZXQoKVxuICAgIGNvbnN0IHN1cHBvcnRlZFR5cGVzID0gbmV3IFNldChbJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInLCAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJ10pXG4gICAgbGV0IGhhc0ltcG9ydGVkVHlwZSA9IGZhbHNlXG4gICAgaWYgKGRlY2xhcmF0aW9uLnNwZWNpZmllcnMpIHtcbiAgICAgIGRlY2xhcmF0aW9uLnNwZWNpZmllcnMuZm9yRWFjaChzcGVjaWZpZXIgPT4ge1xuICAgICAgICBjb25zdCBpc1R5cGUgPSBzcGVjaWZpZXIuaW1wb3J0S2luZCA9PT0gJ3R5cGUnXG4gICAgICAgIGhhc0ltcG9ydGVkVHlwZSA9IGhhc0ltcG9ydGVkVHlwZSB8fCBpc1R5cGVcblxuICAgICAgICBpZiAoc3VwcG9ydGVkVHlwZXMuaGFzKHNwZWNpZmllci50eXBlKSAmJiAhaXNUeXBlKSB7XG4gICAgICAgICAgaW1wb3J0ZWRTcGVjaWZpZXJzLmFkZChzcGVjaWZpZXIudHlwZSlcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3BlY2lmaWVyLnR5cGUgPT09ICdJbXBvcnRTcGVjaWZpZXInICYmICFpc1R5cGUpIHtcbiAgICAgICAgICBpbXBvcnRlZFNwZWNpZmllcnMuYWRkKHNwZWNpZmllci5pbXBvcnRlZC5uYW1lKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIG9ubHkgRmxvdyB0eXBlcyB3ZXJlIGltcG9ydGVkXG4gICAgaWYgKGhhc0ltcG9ydGVkVHlwZSAmJiBpbXBvcnRlZFNwZWNpZmllcnMuc2l6ZSA9PT0gMCkgcmV0dXJuIG51bGxcblxuICAgIGNvbnN0IHAgPSByZW1vdGVQYXRoKGRlY2xhcmF0aW9uLnNvdXJjZS52YWx1ZSlcbiAgICBpZiAocCA9PSBudWxsKSByZXR1cm4gbnVsbFxuICAgIGNvbnN0IGV4aXN0aW5nID0gbS5pbXBvcnRzLmdldChwKVxuICAgIGlmIChleGlzdGluZyAhPSBudWxsKSByZXR1cm4gZXhpc3RpbmcuZ2V0dGVyXG5cbiAgICBjb25zdCBnZXR0ZXIgPSB0aHVua0ZvcihwLCBjb250ZXh0KVxuICAgIG0uaW1wb3J0cy5zZXQocCwge1xuICAgICAgZ2V0dGVyLFxuICAgICAgc291cmNlOiB7ICAvLyBjYXB0dXJpbmcgYWN0dWFsIG5vZGUgcmVmZXJlbmNlIGhvbGRzIGZ1bGwgQVNUIGluIG1lbW9yeSFcbiAgICAgICAgdmFsdWU6IGRlY2xhcmF0aW9uLnNvdXJjZS52YWx1ZSxcbiAgICAgICAgbG9jOiBkZWNsYXJhdGlvbi5zb3VyY2UubG9jLFxuICAgICAgfSxcbiAgICAgIGltcG9ydGVkU3BlY2lmaWVycyxcbiAgICB9KVxuICAgIHJldHVybiBnZXR0ZXJcbiAgfVxuXG4gIGNvbnN0IHNvdXJjZSA9IG1ha2VTb3VyY2VDb2RlKGNvbnRlbnQsIGFzdClcblxuICBhc3QuYm9keS5mb3JFYWNoKGZ1bmN0aW9uIChuKSB7XG5cbiAgICBpZiAobi50eXBlID09PSAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJykge1xuICAgICAgY29uc3QgZXhwb3J0TWV0YSA9IGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIG4pXG4gICAgICBpZiAobi5kZWNsYXJhdGlvbi50eXBlID09PSAnSWRlbnRpZmllcicpIHtcbiAgICAgICAgYWRkTmFtZXNwYWNlKGV4cG9ydE1ldGEsIG4uZGVjbGFyYXRpb24pXG4gICAgICB9XG4gICAgICBtLm5hbWVzcGFjZS5zZXQoJ2RlZmF1bHQnLCBleHBvcnRNZXRhKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKG4udHlwZSA9PT0gJ0V4cG9ydEFsbERlY2xhcmF0aW9uJykge1xuICAgICAgY29uc3QgZ2V0dGVyID0gY2FwdHVyZURlcGVuZGVuY3kobilcbiAgICAgIGlmIChnZXR0ZXIpIG0uZGVwZW5kZW5jaWVzLmFkZChnZXR0ZXIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBjYXB0dXJlIG5hbWVzcGFjZXMgaW4gY2FzZSBvZiBsYXRlciBleHBvcnRcbiAgICBpZiAobi50eXBlID09PSAnSW1wb3J0RGVjbGFyYXRpb24nKSB7XG4gICAgICBjYXB0dXJlRGVwZW5kZW5jeShuKVxuICAgICAgbGV0IG5zXG4gICAgICBpZiAobi5zcGVjaWZpZXJzLnNvbWUocyA9PiBzLnR5cGUgPT09ICdJbXBvcnROYW1lc3BhY2VTcGVjaWZpZXInICYmIChucyA9IHMpKSkge1xuICAgICAgICBuYW1lc3BhY2VzLnNldChucy5sb2NhbC5uYW1lLCBuLnNvdXJjZS52YWx1ZSlcbiAgICAgIH1cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChuLnR5cGUgPT09ICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJykge1xuICAgICAgLy8gY2FwdHVyZSBkZWNsYXJhdGlvblxuICAgICAgaWYgKG4uZGVjbGFyYXRpb24gIT0gbnVsbCkge1xuICAgICAgICBzd2l0Y2ggKG4uZGVjbGFyYXRpb24udHlwZSkge1xuICAgICAgICAgIGNhc2UgJ0Z1bmN0aW9uRGVjbGFyYXRpb24nOlxuICAgICAgICAgIGNhc2UgJ0NsYXNzRGVjbGFyYXRpb24nOlxuICAgICAgICAgIGNhc2UgJ1R5cGVBbGlhcyc6IC8vIGZsb3d0eXBlIHdpdGggYmFiZWwtZXNsaW50IHBhcnNlclxuICAgICAgICAgIGNhc2UgJ0ludGVyZmFjZURlY2xhcmF0aW9uJzpcbiAgICAgICAgICBjYXNlICdEZWNsYXJlRnVuY3Rpb24nOlxuICAgICAgICAgIGNhc2UgJ1RTRGVjbGFyZUZ1bmN0aW9uJzpcbiAgICAgICAgICBjYXNlICdUU0VudW1EZWNsYXJhdGlvbic6XG4gICAgICAgICAgY2FzZSAnVFNUeXBlQWxpYXNEZWNsYXJhdGlvbic6XG4gICAgICAgICAgY2FzZSAnVFNJbnRlcmZhY2VEZWNsYXJhdGlvbic6XG4gICAgICAgICAgY2FzZSAnVFNBYnN0cmFjdENsYXNzRGVjbGFyYXRpb24nOlxuICAgICAgICAgIGNhc2UgJ1RTTW9kdWxlRGVjbGFyYXRpb24nOlxuICAgICAgICAgICAgbS5uYW1lc3BhY2Uuc2V0KG4uZGVjbGFyYXRpb24uaWQubmFtZSwgY2FwdHVyZURvYyhzb3VyY2UsIGRvY1N0eWxlUGFyc2VycywgbikpXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ1ZhcmlhYmxlRGVjbGFyYXRpb24nOlxuICAgICAgICAgICAgbi5kZWNsYXJhdGlvbi5kZWNsYXJhdGlvbnMuZm9yRWFjaCgoZCkgPT5cbiAgICAgICAgICAgICAgcmVjdXJzaXZlUGF0dGVybkNhcHR1cmUoZC5pZCxcbiAgICAgICAgICAgICAgICBpZCA9PiBtLm5hbWVzcGFjZS5zZXQoaWQubmFtZSwgY2FwdHVyZURvYyhzb3VyY2UsIGRvY1N0eWxlUGFyc2VycywgZCwgbikpKSlcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgbnNvdXJjZSA9IG4uc291cmNlICYmIG4uc291cmNlLnZhbHVlXG4gICAgICBuLnNwZWNpZmllcnMuZm9yRWFjaCgocykgPT4ge1xuICAgICAgICBjb25zdCBleHBvcnRNZXRhID0ge31cbiAgICAgICAgbGV0IGxvY2FsXG5cbiAgICAgICAgc3dpdGNoIChzLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICdFeHBvcnREZWZhdWx0U3BlY2lmaWVyJzpcbiAgICAgICAgICAgIGlmICghbi5zb3VyY2UpIHJldHVyblxuICAgICAgICAgICAgbG9jYWwgPSAnZGVmYXVsdCdcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAnRXhwb3J0TmFtZXNwYWNlU3BlY2lmaWVyJzpcbiAgICAgICAgICAgIG0ubmFtZXNwYWNlLnNldChzLmV4cG9ydGVkLm5hbWUsIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRNZXRhLCAnbmFtZXNwYWNlJywge1xuICAgICAgICAgICAgICBnZXQoKSB7IHJldHVybiByZXNvbHZlSW1wb3J0KG5zb3VyY2UpIH0sXG4gICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIGNhc2UgJ0V4cG9ydFNwZWNpZmllcic6XG4gICAgICAgICAgICBpZiAoIW4uc291cmNlKSB7XG4gICAgICAgICAgICAgIG0ubmFtZXNwYWNlLnNldChzLmV4cG9ydGVkLm5hbWUsIGFkZE5hbWVzcGFjZShleHBvcnRNZXRhLCBzLmxvY2FsKSlcbiAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBlbHNlIGZhbGxzIHRocm91Z2hcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgbG9jYWwgPSBzLmxvY2FsLm5hbWVcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cblxuICAgICAgICAvLyB0b2RvOiBKU0RvY1xuICAgICAgICBtLnJlZXhwb3J0cy5zZXQocy5leHBvcnRlZC5uYW1lLCB7IGxvY2FsLCBnZXRJbXBvcnQ6ICgpID0+IHJlc29sdmVJbXBvcnQobnNvdXJjZSkgfSlcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gVGhpcyBkb2Vzbid0IGRlY2xhcmUgYW55dGhpbmcsIGJ1dCBjaGFuZ2VzIHdoYXQncyBiZWluZyBleHBvcnRlZC5cbiAgICBpZiAobi50eXBlID09PSAnVFNFeHBvcnRBc3NpZ25tZW50Jykge1xuICAgICAgY29uc3QgbW9kdWxlRGVjbHMgPSBhc3QuYm9keS5maWx0ZXIoKGJvZHlOb2RlKSA9PlxuICAgICAgICBib2R5Tm9kZS50eXBlID09PSAnVFNNb2R1bGVEZWNsYXJhdGlvbicgJiYgYm9keU5vZGUuaWQubmFtZSA9PT0gbi5leHByZXNzaW9uLm5hbWVcbiAgICAgIClcbiAgICAgIG1vZHVsZURlY2xzLmZvckVhY2goKG1vZHVsZURlY2wpID0+IHtcbiAgICAgICAgaWYgKG1vZHVsZURlY2wgJiYgbW9kdWxlRGVjbC5ib2R5ICYmIG1vZHVsZURlY2wuYm9keS5ib2R5KSB7XG4gICAgICAgICAgbW9kdWxlRGVjbC5ib2R5LmJvZHkuZm9yRWFjaCgobW9kdWxlQmxvY2tOb2RlKSA9PiB7XG4gICAgICAgICAgICAvLyBFeHBvcnQtYXNzaWdubWVudCBleHBvcnRzIGFsbCBtZW1iZXJzIGluIHRoZSBuYW1lc3BhY2UsIGV4cGxpY2l0bHkgZXhwb3J0ZWQgb3Igbm90LlxuICAgICAgICAgICAgY29uc3QgZXhwb3J0ZWREZWNsID0gbW9kdWxlQmxvY2tOb2RlLnR5cGUgPT09ICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJyA/XG4gICAgICAgICAgICAgIG1vZHVsZUJsb2NrTm9kZS5kZWNsYXJhdGlvbiA6XG4gICAgICAgICAgICAgIG1vZHVsZUJsb2NrTm9kZVxuXG4gICAgICAgICAgICBpZiAoZXhwb3J0ZWREZWNsLnR5cGUgPT09ICdWYXJpYWJsZURlY2xhcmF0aW9uJykge1xuICAgICAgICAgICAgICBleHBvcnRlZERlY2wuZGVjbGFyYXRpb25zLmZvckVhY2goKGRlY2wpID0+XG4gICAgICAgICAgICAgICAgcmVjdXJzaXZlUGF0dGVybkNhcHR1cmUoZGVjbC5pZCwoaWQpID0+IG0ubmFtZXNwYWNlLnNldChcbiAgICAgICAgICAgICAgICAgIGlkLm5hbWUsXG4gICAgICAgICAgICAgICAgICBjYXB0dXJlRG9jKHNvdXJjZSwgZG9jU3R5bGVQYXJzZXJzLCBkZWNsLCBleHBvcnRlZERlY2wsIG1vZHVsZUJsb2NrTm9kZSkpXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBtLm5hbWVzcGFjZS5zZXQoXG4gICAgICAgICAgICAgICAgZXhwb3J0ZWREZWNsLmlkLm5hbWUsXG4gICAgICAgICAgICAgICAgY2FwdHVyZURvYyhzb3VyY2UsIGRvY1N0eWxlUGFyc2VycywgbW9kdWxlQmxvY2tOb2RlKSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gbVxufVxuXG4vKipcbiAqIFRoZSBjcmVhdGlvbiBvZiB0aGlzIGNsb3N1cmUgaXMgaXNvbGF0ZWQgZnJvbSBvdGhlciBzY29wZXNcbiAqIHRvIGF2b2lkIG92ZXItcmV0ZW50aW9uIG9mIHVucmVsYXRlZCB2YXJpYWJsZXMsIHdoaWNoIGhhc1xuICogY2F1c2VkIG1lbW9yeSBsZWFrcy4gU2VlICMxMjY2LlxuICovXG5mdW5jdGlvbiB0aHVua0ZvcihwLCBjb250ZXh0KSB7XG4gIHJldHVybiAoKSA9PiBFeHBvcnRNYXAuZm9yKGNoaWxkQ29udGV4dChwLCBjb250ZXh0KSlcbn1cblxuXG4vKipcbiAqIFRyYXZlcnNlIGEgcGF0dGVybi9pZGVudGlmaWVyIG5vZGUsIGNhbGxpbmcgJ2NhbGxiYWNrJ1xuICogZm9yIGVhY2ggbGVhZiBpZGVudGlmaWVyLlxuICogQHBhcmFtICB7bm9kZX0gICBwYXR0ZXJuXG4gKiBAcGFyYW0gIHtGdW5jdGlvbn0gY2FsbGJhY2tcbiAqIEByZXR1cm4ge3ZvaWR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWN1cnNpdmVQYXR0ZXJuQ2FwdHVyZShwYXR0ZXJuLCBjYWxsYmFjaykge1xuICBzd2l0Y2ggKHBhdHRlcm4udHlwZSkge1xuICAgIGNhc2UgJ0lkZW50aWZpZXInOiAvLyBiYXNlIGNhc2VcbiAgICAgIGNhbGxiYWNrKHBhdHRlcm4pXG4gICAgICBicmVha1xuXG4gICAgY2FzZSAnT2JqZWN0UGF0dGVybic6XG4gICAgICBwYXR0ZXJuLnByb3BlcnRpZXMuZm9yRWFjaChwID0+IHtcbiAgICAgICAgcmVjdXJzaXZlUGF0dGVybkNhcHR1cmUocC52YWx1ZSwgY2FsbGJhY2spXG4gICAgICB9KVxuICAgICAgYnJlYWtcblxuICAgIGNhc2UgJ0FycmF5UGF0dGVybic6XG4gICAgICBwYXR0ZXJuLmVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgaWYgKGVsZW1lbnQgPT0gbnVsbCkgcmV0dXJuXG4gICAgICAgIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKGVsZW1lbnQsIGNhbGxiYWNrKVxuICAgICAgfSlcbiAgICAgIGJyZWFrXG5cbiAgICBjYXNlICdBc3NpZ25tZW50UGF0dGVybic6XG4gICAgICBjYWxsYmFjayhwYXR0ZXJuLmxlZnQpXG4gICAgICBicmVha1xuICB9XG59XG5cbi8qKlxuICogZG9uJ3QgaG9sZCBmdWxsIGNvbnRleHQgb2JqZWN0IGluIG1lbW9yeSwganVzdCBncmFiIHdoYXQgd2UgbmVlZC5cbiAqL1xuZnVuY3Rpb24gY2hpbGRDb250ZXh0KHBhdGgsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBzZXR0aW5ncywgcGFyc2VyT3B0aW9ucywgcGFyc2VyUGF0aCB9ID0gY29udGV4dFxuICByZXR1cm4ge1xuICAgIHNldHRpbmdzLFxuICAgIHBhcnNlck9wdGlvbnMsXG4gICAgcGFyc2VyUGF0aCxcbiAgICBwYXRoLFxuICB9XG59XG5cblxuLyoqXG4gKiBzb21ldGltZXMgbGVnYWN5IHN1cHBvcnQgaXNuJ3QgX3RoYXRfIGhhcmQuLi4gcmlnaHQ/XG4gKi9cbmZ1bmN0aW9uIG1ha2VTb3VyY2VDb2RlKHRleHQsIGFzdCkge1xuICBpZiAoU291cmNlQ29kZS5sZW5ndGggPiAxKSB7XG4gICAgLy8gRVNMaW50IDNcbiAgICByZXR1cm4gbmV3IFNvdXJjZUNvZGUodGV4dCwgYXN0KVxuICB9IGVsc2Uge1xuICAgIC8vIEVTTGludCA0LCA1XG4gICAgcmV0dXJuIG5ldyBTb3VyY2VDb2RlKHsgdGV4dCwgYXN0IH0pXG4gIH1cbn1cbiJdfQ== \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +recursivePatternCapture = recursivePatternCapture;var _fs = require('fs');var _fs2 = _interopRequireDefault(_fs);var _doctrine = require('doctrine');var _doctrine2 = _interopRequireDefault(_doctrine);var _debug = require('debug');var _debug2 = _interopRequireDefault(_debug);var _eslint = require('eslint');var _parse = require('eslint-module-utils/parse');var _parse2 = _interopRequireDefault(_parse);var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve);var _ignore = require('eslint-module-utils/ignore');var _ignore2 = _interopRequireDefault(_ignore);var _hash = require('eslint-module-utils/hash');var _unambiguous = require('eslint-module-utils/unambiguous');var unambiguous = _interopRequireWildcard(_unambiguous);var _tsconfigLoader = require('tsconfig-paths/lib/tsconfig-loader');var _arrayIncludes = require('array-includes');var _arrayIncludes2 = _interopRequireDefault(_arrayIncludes);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)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}}function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}let parseConfigFileTextToJson;const log = (0, _debug2.default)('eslint-plugin-import:ExportMap');const exportCache = new Map();class ExportMap {constructor(path) {this.path = path;this.namespace = new Map(); // todo: restructure to key on path, value is resolver + map of names + this.reexports = new Map(); /** + * star-exports + * @type {Set} of () => ExportMap + */this.dependencies = new Set(); /** + * dependencies of this module that are not explicitly re-exported + * @type {Map} from path = () => ExportMap + */this.imports = new Map();this.errors = [];}get hasDefault() {return this.get('default') != null;} // stronger than this.has + get size() {let size = this.namespace.size + this.reexports.size;this.dependencies.forEach(dep => {const d = dep(); // CJS / ignored dependencies won't exist (#717) + if (d == null) return;size += d.size;});return size;} /** + * Note that this does not check explicitly re-exported names for existence + * in the base namespace, but it will expand all `export * from '...'` exports + * if not found in the explicit namespace. + * @param {string} name + * @return {Boolean} true if `name` is exported by this module. + */has(name) {if (this.namespace.has(name)) return true;if (this.reexports.has(name)) return true; // default exports must be explicitly re-exported (#328) + if (name !== 'default') {for (let dep of this.dependencies) {let innerMap = dep(); // todo: report as unresolved? + if (!innerMap) continue;if (innerMap.has(name)) return true;}}return false;} /** + * ensure that imported name fully resolves. + * @param {[type]} name [description] + * @return {Boolean} [description] + */hasDeep(name) {if (this.namespace.has(name)) return { found: true, path: [this] };if (this.reexports.has(name)) {const reexports = this.reexports.get(name),imported = reexports.getImport(); // if import is ignored, return explicit 'null' + if (imported == null) return { found: true, path: [this] // safeguard against cycles, only if name matches + };if (imported.path === this.path && reexports.local === name) {return { found: false, path: [this] };}const deep = imported.hasDeep(reexports.local);deep.path.unshift(this);return deep;} // default exports must be explicitly re-exported (#328) + if (name !== 'default') {for (let dep of this.dependencies) {let innerMap = dep();if (innerMap == null) return { found: true, path: [this] // todo: report as unresolved? + };if (!innerMap) continue; // safeguard against cycles + if (innerMap.path === this.path) continue;let innerValue = innerMap.hasDeep(name);if (innerValue.found) {innerValue.path.unshift(this);return innerValue;}}}return { found: false, path: [this] };}get(name) {if (this.namespace.has(name)) return this.namespace.get(name);if (this.reexports.has(name)) {const reexports = this.reexports.get(name),imported = reexports.getImport(); // if import is ignored, return explicit 'null' + if (imported == null) return null; // safeguard against cycles, only if name matches + if (imported.path === this.path && reexports.local === name) return undefined;return imported.get(reexports.local);} // default exports must be explicitly re-exported (#328) + if (name !== 'default') {for (let dep of this.dependencies) {let innerMap = dep(); // todo: report as unresolved? + if (!innerMap) continue; // safeguard against cycles + if (innerMap.path === this.path) continue;let innerValue = innerMap.get(name);if (innerValue !== undefined) return innerValue;}}return undefined;}forEach(callback, thisArg) {this.namespace.forEach((v, n) => callback.call(thisArg, v, n, this));this.reexports.forEach((reexports, name) => {const reexported = reexports.getImport(); // can't look up meta for ignored re-exports (#348) + callback.call(thisArg, reexported && reexported.get(reexports.local), name, this);});this.dependencies.forEach(dep => {const d = dep(); // CJS / ignored dependencies won't exist (#717) + if (d == null) return;d.forEach((v, n) => n !== 'default' && callback.call(thisArg, v, n, this));});} // todo: keys, values, entries? + reportErrors(context, declaration) {context.report({ node: declaration.source, message: `Parse errors in imported module '${declaration.source.value}': ` + `${this.errors.map(e => `${e.message} (${e.lineNumber}:${e.column})`).join(', ')}` });}}exports.default = ExportMap; /** + * parse docs from the first node that has leading comments + */function captureDoc(source, docStyleParsers) {const metadata = {}; // 'some' short-circuits on first 'true' + for (var _len = arguments.length, nodes = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {nodes[_key - 2] = arguments[_key];}nodes.some(n => {try {let leadingComments; // n.leadingComments is legacy `attachComments` behavior + if ('leadingComments' in n) {leadingComments = n.leadingComments;} else if (n.range) {leadingComments = source.getCommentsBefore(n);}if (!leadingComments || leadingComments.length === 0) return false;for (let name in docStyleParsers) {const doc = docStyleParsers[name](leadingComments);if (doc) {metadata.doc = doc;}}return true;} catch (err) {return false;}});return metadata;}const availableDocStyleParsers = { jsdoc: captureJsDoc, tomdoc: captureTomDoc /** + * parse JSDoc from leading comments + * @param {...[type]} comments [description] + * @return {{doc: object}} + */ };function captureJsDoc(comments) {let doc; // capture XSDoc + comments.forEach(comment => {// skip non-block comments + if (comment.type !== 'Block') return;try {doc = _doctrine2.default.parse(comment.value, { unwrap: true });} catch (err) {/* don't care, for now? maybe add to `errors?` */}});return doc;} /** + * parse TomDoc section from comments + */function captureTomDoc(comments) {// collect lines up to first paragraph break + const lines = [];for (let i = 0; i < comments.length; i++) {const comment = comments[i];if (comment.value.match(/^\s*$/)) break;lines.push(comment.value.trim());} // return doctrine-like object + const statusMatch = lines.join(' ').match(/^(Public|Internal|Deprecated):\s*(.+)/);if (statusMatch) {return { description: statusMatch[2], tags: [{ title: statusMatch[1].toLowerCase(), description: statusMatch[2] }] };}}ExportMap.get = function (source, context) {const path = (0, _resolve2.default)(source, context);if (path == null) return null;return ExportMap.for(childContext(path, context));};ExportMap.for = function (context) {const path = context.path;const cacheKey = (0, _hash.hashObject)(context).digest('hex');let exportMap = exportCache.get(cacheKey); // return cached ignore + if (exportMap === null) return null;const stats = _fs2.default.statSync(path);if (exportMap != null) {// date equality check + if (exportMap.mtime - stats.mtime === 0) {return exportMap;} // future: check content equality? + } // check valid extensions first + if (!(0, _ignore.hasValidExtension)(path, context)) {exportCache.set(cacheKey, null);return null;} // check for and cache ignore + if ((0, _ignore2.default)(path, context)) {log('ignored path due to ignore settings:', path);exportCache.set(cacheKey, null);return null;}const content = _fs2.default.readFileSync(path, { encoding: 'utf8' }); // check for and cache unambiguous modules + if (!unambiguous.test(content)) {log('ignored path due to unambiguous regex:', path);exportCache.set(cacheKey, null);return null;}log('cache miss', cacheKey, 'for path', path);exportMap = ExportMap.parse(path, content, context); // ambiguous modules return null + if (exportMap == null) return null;exportMap.mtime = stats.mtime;exportCache.set(cacheKey, exportMap);return exportMap;};ExportMap.parse = function (path, content, context) {var m = new ExportMap(path);try {var ast = (0, _parse2.default)(path, content, context);} catch (err) {log('parse error:', path, err);m.errors.push(err);return m; // can't continue + }if (!unambiguous.isModule(ast)) return null;const docstyle = context.settings && context.settings['import/docstyle'] || ['jsdoc'];const docStyleParsers = {};docstyle.forEach(style => {docStyleParsers[style] = availableDocStyleParsers[style];}); // attempt to collect module doc + if (ast.comments) {ast.comments.some(c => {if (c.type !== 'Block') return false;try {const doc = _doctrine2.default.parse(c.value, { unwrap: true });if (doc.tags.some(t => t.title === 'module')) {m.doc = doc;return true;}} catch (err) {/* ignore */}return false;});}const namespaces = new Map();function remotePath(value) {return _resolve2.default.relative(value, path, context.settings);}function resolveImport(value) {const rp = remotePath(value);if (rp == null) return null;return ExportMap.for(childContext(rp, context));}function getNamespace(identifier) {if (!namespaces.has(identifier.name)) return;return function () {return resolveImport(namespaces.get(identifier.name));};}function addNamespace(object, identifier) {const nsfn = getNamespace(identifier);if (nsfn) {Object.defineProperty(object, 'namespace', { get: nsfn });}return object;}function captureDependency(declaration) {if (declaration.source == null) return null;if (declaration.importKind === 'type') return null; // skip Flow type imports + const importedSpecifiers = new Set();const supportedTypes = new Set(['ImportDefaultSpecifier', 'ImportNamespaceSpecifier']);let hasImportedType = false;if (declaration.specifiers) {declaration.specifiers.forEach(specifier => {const isType = specifier.importKind === 'type';hasImportedType = hasImportedType || isType;if (supportedTypes.has(specifier.type) && !isType) {importedSpecifiers.add(specifier.type);}if (specifier.type === 'ImportSpecifier' && !isType) {importedSpecifiers.add(specifier.imported.name);}});} // only Flow types were imported + if (hasImportedType && importedSpecifiers.size === 0) return null;const p = remotePath(declaration.source.value);if (p == null) return null;const existing = m.imports.get(p);if (existing != null) return existing.getter;const getter = thunkFor(p, context);m.imports.set(p, { getter, source: { // capturing actual node reference holds full AST in memory! + value: declaration.source.value, loc: declaration.source.loc }, importedSpecifiers });return getter;}const source = makeSourceCode(content, ast);function isEsModuleInterop() {const tsConfigInfo = (0, _tsconfigLoader.tsConfigLoader)({ cwd: context.parserOptions && context.parserOptions.tsconfigRootDir || process.cwd(), getEnv: key => process.env[key] });try {if (tsConfigInfo.tsConfigPath !== undefined) {const jsonText = _fs2.default.readFileSync(tsConfigInfo.tsConfigPath).toString();if (!parseConfigFileTextToJson) {var _require = require('typescript'); // this is because projects not using TypeScript won't have typescript installed + parseConfigFileTextToJson = _require.parseConfigFileTextToJson;}const tsConfig = parseConfigFileTextToJson(tsConfigInfo.tsConfigPath, jsonText).config;return tsConfig.compilerOptions.esModuleInterop;}} catch (e) {return false;}}ast.body.forEach(function (n) {if (n.type === 'ExportDefaultDeclaration') {const exportMeta = captureDoc(source, docStyleParsers, n);if (n.declaration.type === 'Identifier') {addNamespace(exportMeta, n.declaration);}m.namespace.set('default', exportMeta);return;}if (n.type === 'ExportAllDeclaration') {const getter = captureDependency(n);if (getter) m.dependencies.add(getter);return;} // capture namespaces in case of later export + if (n.type === 'ImportDeclaration') {captureDependency(n);let ns;if (n.specifiers.some(s => s.type === 'ImportNamespaceSpecifier' && (ns = s))) {namespaces.set(ns.local.name, n.source.value);}return;}if (n.type === 'ExportNamedDeclaration') {// capture declaration + if (n.declaration != null) {switch (n.declaration.type) {case 'FunctionDeclaration':case 'ClassDeclaration':case 'TypeAlias': // flowtype with babel-eslint parser + case 'InterfaceDeclaration':case 'DeclareFunction':case 'TSDeclareFunction':case 'TSEnumDeclaration':case 'TSTypeAliasDeclaration':case 'TSInterfaceDeclaration':case 'TSAbstractClassDeclaration':case 'TSModuleDeclaration':m.namespace.set(n.declaration.id.name, captureDoc(source, docStyleParsers, n));break;case 'VariableDeclaration':n.declaration.declarations.forEach(d => recursivePatternCapture(d.id, id => m.namespace.set(id.name, captureDoc(source, docStyleParsers, d, n))));break;}}const nsource = n.source && n.source.value;n.specifiers.forEach(s => {const exportMeta = {};let local;switch (s.type) {case 'ExportDefaultSpecifier':if (!n.source) return;local = 'default';break;case 'ExportNamespaceSpecifier':m.namespace.set(s.exported.name, Object.defineProperty(exportMeta, 'namespace', { get() {return resolveImport(nsource);} }));return;case 'ExportSpecifier':if (!n.source) {m.namespace.set(s.exported.name, addNamespace(exportMeta, s.local));return;} // else falls through + default:local = s.local.name;break;} // todo: JSDoc + m.reexports.set(s.exported.name, { local, getImport: () => resolveImport(nsource) });});}const isEsModuleInteropTrue = isEsModuleInterop();const exports = ['TSExportAssignment'];if (isEsModuleInteropTrue) {exports.push('TSNamespaceExportDeclaration');} // This doesn't declare anything, but changes what's being exported. + if ((0, _arrayIncludes2.default)(exports, n.type)) {const exportedName = n.type === 'TSNamespaceExportDeclaration' ? n.id.name : n.expression && n.expression.name || n.expression.id && n.expression.id.name || null;const declTypes = ['VariableDeclaration', 'ClassDeclaration', 'TSDeclareFunction', 'TSEnumDeclaration', 'TSTypeAliasDeclaration', 'TSInterfaceDeclaration', 'TSAbstractClassDeclaration', 'TSModuleDeclaration'];const exportedDecls = ast.body.filter((_ref) => {let type = _ref.type,id = _ref.id,declarations = _ref.declarations;return (0, _arrayIncludes2.default)(declTypes, type) && (id && id.name === exportedName || declarations && declarations.find(d => d.id.name === exportedName));});if (exportedDecls.length === 0) {// Export is not referencing any local declaration, must be re-exporting + m.namespace.set('default', captureDoc(source, docStyleParsers, n));return;}if (isEsModuleInteropTrue) {m.namespace.set('default', {});}exportedDecls.forEach(decl => {if (decl.type === 'TSModuleDeclaration') {if (decl.body && decl.body.type === 'TSModuleDeclaration') {m.namespace.set(decl.body.id.name, captureDoc(source, docStyleParsers, decl.body));} else if (decl.body && decl.body.body) {decl.body.body.forEach(moduleBlockNode => {// Export-assignment exports all members in the namespace, + // explicitly exported or not. + const namespaceDecl = moduleBlockNode.type === 'ExportNamedDeclaration' ? moduleBlockNode.declaration : moduleBlockNode;if (!namespaceDecl) {// TypeScript can check this for us; we needn't + } else if (namespaceDecl.type === 'VariableDeclaration') {namespaceDecl.declarations.forEach(d => recursivePatternCapture(d.id, id => m.namespace.set(id.name, captureDoc(source, docStyleParsers, decl, namespaceDecl, moduleBlockNode))));} else {m.namespace.set(namespaceDecl.id.name, captureDoc(source, docStyleParsers, moduleBlockNode));}});}} else {// Export as default + m.namespace.set('default', captureDoc(source, docStyleParsers, decl));}});}});return m;}; /** + * The creation of this closure is isolated from other scopes + * to avoid over-retention of unrelated variables, which has + * caused memory leaks. See #1266. + */function thunkFor(p, context) {return () => ExportMap.for(childContext(p, context));} /** + * Traverse a pattern/identifier node, calling 'callback' + * for each leaf identifier. + * @param {node} pattern + * @param {Function} callback + * @return {void} + */function recursivePatternCapture(pattern, callback) {switch (pattern.type) {case 'Identifier': // base case + callback(pattern);break;case 'ObjectPattern':pattern.properties.forEach(p => {if (p.type === 'ExperimentalRestProperty' || p.type === 'RestElement') {callback(p.argument);return;}recursivePatternCapture(p.value, callback);});break;case 'ArrayPattern':pattern.elements.forEach(element => {if (element == null) return;if (element.type === 'ExperimentalRestProperty' || element.type === 'RestElement') {callback(element.argument);return;}recursivePatternCapture(element, callback);});break;case 'AssignmentPattern':callback(pattern.left);break;}} /** + * don't hold full context object in memory, just grab what we need. + */function childContext(path, context) {const settings = context.settings,parserOptions = context.parserOptions,parserPath = context.parserPath;return { settings, parserOptions, parserPath, path };} /** + * sometimes legacy support isn't _that_ hard... right? + */function makeSourceCode(text, ast) {if (_eslint.SourceCode.length > 1) {// ESLint 3 + return new _eslint.SourceCode(text, ast);} else {// ESLint 4, 5 + return new _eslint.SourceCode({ text, ast });}} +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9FeHBvcnRNYXAuanMiXSwibmFtZXMiOlsicmVjdXJzaXZlUGF0dGVybkNhcHR1cmUiLCJ1bmFtYmlndW91cyIsInBhcnNlQ29uZmlnRmlsZVRleHRUb0pzb24iLCJsb2ciLCJleHBvcnRDYWNoZSIsIk1hcCIsIkV4cG9ydE1hcCIsImNvbnN0cnVjdG9yIiwicGF0aCIsIm5hbWVzcGFjZSIsInJlZXhwb3J0cyIsImRlcGVuZGVuY2llcyIsIlNldCIsImltcG9ydHMiLCJlcnJvcnMiLCJoYXNEZWZhdWx0IiwiZ2V0Iiwic2l6ZSIsImZvckVhY2giLCJkZXAiLCJkIiwiaGFzIiwibmFtZSIsImlubmVyTWFwIiwiaGFzRGVlcCIsImZvdW5kIiwiaW1wb3J0ZWQiLCJnZXRJbXBvcnQiLCJsb2NhbCIsImRlZXAiLCJ1bnNoaWZ0IiwiaW5uZXJWYWx1ZSIsInVuZGVmaW5lZCIsImNhbGxiYWNrIiwidGhpc0FyZyIsInYiLCJuIiwiY2FsbCIsInJlZXhwb3J0ZWQiLCJyZXBvcnRFcnJvcnMiLCJjb250ZXh0IiwiZGVjbGFyYXRpb24iLCJyZXBvcnQiLCJub2RlIiwic291cmNlIiwibWVzc2FnZSIsInZhbHVlIiwibWFwIiwiZSIsImxpbmVOdW1iZXIiLCJjb2x1bW4iLCJqb2luIiwiY2FwdHVyZURvYyIsImRvY1N0eWxlUGFyc2VycyIsIm1ldGFkYXRhIiwibm9kZXMiLCJzb21lIiwibGVhZGluZ0NvbW1lbnRzIiwicmFuZ2UiLCJnZXRDb21tZW50c0JlZm9yZSIsImxlbmd0aCIsImRvYyIsImVyciIsImF2YWlsYWJsZURvY1N0eWxlUGFyc2VycyIsImpzZG9jIiwiY2FwdHVyZUpzRG9jIiwidG9tZG9jIiwiY2FwdHVyZVRvbURvYyIsImNvbW1lbnRzIiwiY29tbWVudCIsInR5cGUiLCJkb2N0cmluZSIsInBhcnNlIiwidW53cmFwIiwibGluZXMiLCJpIiwibWF0Y2giLCJwdXNoIiwidHJpbSIsInN0YXR1c01hdGNoIiwiZGVzY3JpcHRpb24iLCJ0YWdzIiwidGl0bGUiLCJ0b0xvd2VyQ2FzZSIsImZvciIsImNoaWxkQ29udGV4dCIsImNhY2hlS2V5IiwiZGlnZXN0IiwiZXhwb3J0TWFwIiwic3RhdHMiLCJmcyIsInN0YXRTeW5jIiwibXRpbWUiLCJzZXQiLCJjb250ZW50IiwicmVhZEZpbGVTeW5jIiwiZW5jb2RpbmciLCJ0ZXN0IiwibSIsImFzdCIsImlzTW9kdWxlIiwiZG9jc3R5bGUiLCJzZXR0aW5ncyIsInN0eWxlIiwiYyIsInQiLCJuYW1lc3BhY2VzIiwicmVtb3RlUGF0aCIsInJlc29sdmUiLCJyZWxhdGl2ZSIsInJlc29sdmVJbXBvcnQiLCJycCIsImdldE5hbWVzcGFjZSIsImlkZW50aWZpZXIiLCJhZGROYW1lc3BhY2UiLCJvYmplY3QiLCJuc2ZuIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJjYXB0dXJlRGVwZW5kZW5jeSIsImltcG9ydEtpbmQiLCJpbXBvcnRlZFNwZWNpZmllcnMiLCJzdXBwb3J0ZWRUeXBlcyIsImhhc0ltcG9ydGVkVHlwZSIsInNwZWNpZmllcnMiLCJzcGVjaWZpZXIiLCJpc1R5cGUiLCJhZGQiLCJwIiwiZXhpc3RpbmciLCJnZXR0ZXIiLCJ0aHVua0ZvciIsImxvYyIsIm1ha2VTb3VyY2VDb2RlIiwiaXNFc01vZHVsZUludGVyb3AiLCJ0c0NvbmZpZ0luZm8iLCJjd2QiLCJwYXJzZXJPcHRpb25zIiwidHNjb25maWdSb290RGlyIiwicHJvY2VzcyIsImdldEVudiIsImtleSIsImVudiIsInRzQ29uZmlnUGF0aCIsImpzb25UZXh0IiwidG9TdHJpbmciLCJyZXF1aXJlIiwidHNDb25maWciLCJjb25maWciLCJjb21waWxlck9wdGlvbnMiLCJlc01vZHVsZUludGVyb3AiLCJib2R5IiwiZXhwb3J0TWV0YSIsIm5zIiwicyIsImlkIiwiZGVjbGFyYXRpb25zIiwibnNvdXJjZSIsImV4cG9ydGVkIiwiaXNFc01vZHVsZUludGVyb3BUcnVlIiwiZXhwb3J0cyIsImV4cG9ydGVkTmFtZSIsImV4cHJlc3Npb24iLCJkZWNsVHlwZXMiLCJleHBvcnRlZERlY2xzIiwiZmlsdGVyIiwiZmluZCIsImRlY2wiLCJtb2R1bGVCbG9ja05vZGUiLCJuYW1lc3BhY2VEZWNsIiwicGF0dGVybiIsInByb3BlcnRpZXMiLCJhcmd1bWVudCIsImVsZW1lbnRzIiwiZWxlbWVudCIsImxlZnQiLCJwYXJzZXJQYXRoIiwidGV4dCIsIlNvdXJjZUNvZGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb29CZ0JBLHVCLEdBQUFBLHVCLENBcG9CaEIsd0IsdUNBRUEsb0MsbURBRUEsOEIsNkNBRUEsZ0NBRUEsa0Qs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LGFBRGlCLENBQ0Z1QyxVQURFLEdBQ2F4SSxPQURiLENBQ0Z3SSxVQURFLENBRW5DLE9BQU8sRUFDTDFFLFFBREssRUFFTG1DLGFBRkssRUFHTHVDLFVBSEssRUFJTHhLLElBSkssRUFBUCxDQU1ELEMsQ0FHRDs7aXZCQUdBLFNBQVM2SCxjQUFULENBQXdCNEMsSUFBeEIsRUFBOEI5RSxHQUE5QixFQUFtQyxDQUNqQyxJQUFJK0UsbUJBQVd0SCxNQUFYLEdBQW9CLENBQXhCLEVBQTJCLENBQ3pCO0FBQ0EsV0FBTyxJQUFJc0gsa0JBQUosQ0FBZUQsSUFBZixFQUFxQjlFLEdBQXJCLENBQVAsQ0FDRCxDQUhELE1BR08sQ0FDTDtBQUNBLFdBQU8sSUFBSStFLGtCQUFKLENBQWUsRUFBRUQsSUFBRixFQUFROUUsR0FBUixFQUFmLENBQVAsQ0FDRCxDQUNGIiwiZmlsZSI6IkV4cG9ydE1hcC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmcyBmcm9tICdmcydcblxuaW1wb3J0IGRvY3RyaW5lIGZyb20gJ2RvY3RyaW5lJ1xuXG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnXG5cbmltcG9ydCB7IFNvdXJjZUNvZGUgfSBmcm9tICdlc2xpbnQnXG5cbmltcG9ydCBwYXJzZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3BhcnNlJ1xuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IGlzSWdub3JlZCwgeyBoYXNWYWxpZEV4dGVuc2lvbiB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvaWdub3JlJ1xuXG5pbXBvcnQgeyBoYXNoT2JqZWN0IH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9oYXNoJ1xuaW1wb3J0ICogYXMgdW5hbWJpZ3VvdXMgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy91bmFtYmlndW91cydcblxuaW1wb3J0IHsgdHNDb25maWdMb2FkZXIgfSBmcm9tICd0c2NvbmZpZy1wYXRocy9saWIvdHNjb25maWctbG9hZGVyJ1xuXG5pbXBvcnQgaW5jbHVkZXMgZnJvbSAnYXJyYXktaW5jbHVkZXMnXG5cbmxldCBwYXJzZUNvbmZpZ0ZpbGVUZXh0VG9Kc29uXG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdlc2xpbnQtcGx1Z2luLWltcG9ydDpFeHBvcnRNYXAnKVxuXG5jb25zdCBleHBvcnRDYWNoZSA9IG5ldyBNYXAoKVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFeHBvcnRNYXAge1xuICBjb25zdHJ1Y3RvcihwYXRoKSB7XG4gICAgdGhpcy5wYXRoID0gcGF0aFxuICAgIHRoaXMubmFtZXNwYWNlID0gbmV3IE1hcCgpXG4gICAgLy8gdG9kbzogcmVzdHJ1Y3R1cmUgdG8ga2V5IG9uIHBhdGgsIHZhbHVlIGlzIHJlc29sdmVyICsgbWFwIG9mIG5hbWVzXG4gICAgdGhpcy5yZWV4cG9ydHMgPSBuZXcgTWFwKClcbiAgICAvKipcbiAgICAgKiBzdGFyLWV4cG9ydHNcbiAgICAgKiBAdHlwZSB7U2V0fSBvZiAoKSA9PiBFeHBvcnRNYXBcbiAgICAgKi9cbiAgICB0aGlzLmRlcGVuZGVuY2llcyA9IG5ldyBTZXQoKVxuICAgIC8qKlxuICAgICAqIGRlcGVuZGVuY2llcyBvZiB0aGlzIG1vZHVsZSB0aGF0IGFyZSBub3QgZXhwbGljaXRseSByZS1leHBvcnRlZFxuICAgICAqIEB0eXBlIHtNYXB9IGZyb20gcGF0aCA9ICgpID0+IEV4cG9ydE1hcFxuICAgICAqL1xuICAgIHRoaXMuaW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgIHRoaXMuZXJyb3JzID0gW11cbiAgfVxuXG4gIGdldCBoYXNEZWZhdWx0KCkgeyByZXR1cm4gdGhpcy5nZXQoJ2RlZmF1bHQnKSAhPSBudWxsIH0gLy8gc3Ryb25nZXIgdGhhbiB0aGlzLmhhc1xuXG4gIGdldCBzaXplKCkge1xuICAgIGxldCBzaXplID0gdGhpcy5uYW1lc3BhY2Uuc2l6ZSArIHRoaXMucmVleHBvcnRzLnNpemVcbiAgICB0aGlzLmRlcGVuZGVuY2llcy5mb3JFYWNoKGRlcCA9PiB7XG4gICAgICBjb25zdCBkID0gZGVwKClcbiAgICAgIC8vIENKUyAvIGlnbm9yZWQgZGVwZW5kZW5jaWVzIHdvbid0IGV4aXN0ICgjNzE3KVxuICAgICAgaWYgKGQgPT0gbnVsbCkgcmV0dXJuXG4gICAgICBzaXplICs9IGQuc2l6ZVxuICAgIH0pXG4gICAgcmV0dXJuIHNpemVcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3RlIHRoYXQgdGhpcyBkb2VzIG5vdCBjaGVjayBleHBsaWNpdGx5IHJlLWV4cG9ydGVkIG5hbWVzIGZvciBleGlzdGVuY2VcbiAgICogaW4gdGhlIGJhc2UgbmFtZXNwYWNlLCBidXQgaXQgd2lsbCBleHBhbmQgYWxsIGBleHBvcnQgKiBmcm9tICcuLi4nYCBleHBvcnRzXG4gICAqIGlmIG5vdCBmb3VuZCBpbiB0aGUgZXhwbGljaXQgbmFtZXNwYWNlLlxuICAgKiBAcGFyYW0gIHtzdHJpbmd9ICBuYW1lXG4gICAqIEByZXR1cm4ge0Jvb2xlYW59IHRydWUgaWYgYG5hbWVgIGlzIGV4cG9ydGVkIGJ5IHRoaXMgbW9kdWxlLlxuICAgKi9cbiAgaGFzKG5hbWUpIHtcbiAgICBpZiAodGhpcy5uYW1lc3BhY2UuaGFzKG5hbWUpKSByZXR1cm4gdHJ1ZVxuICAgIGlmICh0aGlzLnJlZXhwb3J0cy5oYXMobmFtZSkpIHJldHVybiB0cnVlXG5cbiAgICAvLyBkZWZhdWx0IGV4cG9ydHMgbXVzdCBiZSBleHBsaWNpdGx5IHJlLWV4cG9ydGVkICgjMzI4KVxuICAgIGlmIChuYW1lICE9PSAnZGVmYXVsdCcpIHtcbiAgICAgIGZvciAobGV0IGRlcCBvZiB0aGlzLmRlcGVuZGVuY2llcykge1xuICAgICAgICBsZXQgaW5uZXJNYXAgPSBkZXAoKVxuXG4gICAgICAgIC8vIHRvZG86IHJlcG9ydCBhcyB1bnJlc29sdmVkP1xuICAgICAgICBpZiAoIWlubmVyTWFwKSBjb250aW51ZVxuXG4gICAgICAgIGlmIChpbm5lck1hcC5oYXMobmFtZSkpIHJldHVybiB0cnVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICAvKipcbiAgICogZW5zdXJlIHRoYXQgaW1wb3J0ZWQgbmFtZSBmdWxseSByZXNvbHZlcy5cbiAgICogQHBhcmFtICB7W3R5cGVdfSAgbmFtZSBbZGVzY3JpcHRpb25dXG4gICAqIEByZXR1cm4ge0Jvb2xlYW59ICAgICAgW2Rlc2NyaXB0aW9uXVxuICAgKi9cbiAgaGFzRGVlcChuYW1lKSB7XG4gICAgaWYgKHRoaXMubmFtZXNwYWNlLmhhcyhuYW1lKSkgcmV0dXJuIHsgZm91bmQ6IHRydWUsIHBhdGg6IFt0aGlzXSB9XG5cbiAgICBpZiAodGhpcy5yZWV4cG9ydHMuaGFzKG5hbWUpKSB7XG4gICAgICBjb25zdCByZWV4cG9ydHMgPSB0aGlzLnJlZXhwb3J0cy5nZXQobmFtZSlcbiAgICAgICAgICAsIGltcG9ydGVkID0gcmVleHBvcnRzLmdldEltcG9ydCgpXG5cbiAgICAgIC8vIGlmIGltcG9ydCBpcyBpZ25vcmVkLCByZXR1cm4gZXhwbGljaXQgJ251bGwnXG4gICAgICBpZiAoaW1wb3J0ZWQgPT0gbnVsbCkgcmV0dXJuIHsgZm91bmQ6IHRydWUsIHBhdGg6IFt0aGlzXSB9XG5cbiAgICAgIC8vIHNhZmVndWFyZCBhZ2FpbnN0IGN5Y2xlcywgb25seSBpZiBuYW1lIG1hdGNoZXNcbiAgICAgIGlmIChpbXBvcnRlZC5wYXRoID09PSB0aGlzLnBhdGggJiYgcmVleHBvcnRzLmxvY2FsID09PSBuYW1lKSB7XG4gICAgICAgIHJldHVybiB7IGZvdW5kOiBmYWxzZSwgcGF0aDogW3RoaXNdIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgZGVlcCA9IGltcG9ydGVkLmhhc0RlZXAocmVleHBvcnRzLmxvY2FsKVxuICAgICAgZGVlcC5wYXRoLnVuc2hpZnQodGhpcylcblxuICAgICAgcmV0dXJuIGRlZXBcbiAgICB9XG5cblxuICAgIC8vIGRlZmF1bHQgZXhwb3J0cyBtdXN0IGJlIGV4cGxpY2l0bHkgcmUtZXhwb3J0ZWQgKCMzMjgpXG4gICAgaWYgKG5hbWUgIT09ICdkZWZhdWx0Jykge1xuICAgICAgZm9yIChsZXQgZGVwIG9mIHRoaXMuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgIGxldCBpbm5lck1hcCA9IGRlcCgpXG4gICAgICAgIGlmIChpbm5lck1hcCA9PSBudWxsKSByZXR1cm4geyBmb3VuZDogdHJ1ZSwgcGF0aDogW3RoaXNdIH1cbiAgICAgICAgLy8gdG9kbzogcmVwb3J0IGFzIHVucmVzb2x2ZWQ/XG4gICAgICAgIGlmICghaW5uZXJNYXApIGNvbnRpbnVlXG5cbiAgICAgICAgLy8gc2FmZWd1YXJkIGFnYWluc3QgY3ljbGVzXG4gICAgICAgIGlmIChpbm5lck1hcC5wYXRoID09PSB0aGlzLnBhdGgpIGNvbnRpbnVlXG5cbiAgICAgICAgbGV0IGlubmVyVmFsdWUgPSBpbm5lck1hcC5oYXNEZWVwKG5hbWUpXG4gICAgICAgIGlmIChpbm5lclZhbHVlLmZvdW5kKSB7XG4gICAgICAgICAgaW5uZXJWYWx1ZS5wYXRoLnVuc2hpZnQodGhpcylcbiAgICAgICAgICByZXR1cm4gaW5uZXJWYWx1ZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgZm91bmQ6IGZhbHNlLCBwYXRoOiBbdGhpc10gfVxuICB9XG5cbiAgZ2V0KG5hbWUpIHtcbiAgICBpZiAodGhpcy5uYW1lc3BhY2UuaGFzKG5hbWUpKSByZXR1cm4gdGhpcy5uYW1lc3BhY2UuZ2V0KG5hbWUpXG5cbiAgICBpZiAodGhpcy5yZWV4cG9ydHMuaGFzKG5hbWUpKSB7XG4gICAgICBjb25zdCByZWV4cG9ydHMgPSB0aGlzLnJlZXhwb3J0cy5nZXQobmFtZSlcbiAgICAgICAgICAsIGltcG9ydGVkID0gcmVleHBvcnRzLmdldEltcG9ydCgpXG5cbiAgICAgIC8vIGlmIGltcG9ydCBpcyBpZ25vcmVkLCByZXR1cm4gZXhwbGljaXQgJ251bGwnXG4gICAgICBpZiAoaW1wb3J0ZWQgPT0gbnVsbCkgcmV0dXJuIG51bGxcblxuICAgICAgLy8gc2FmZWd1YXJkIGFnYWluc3QgY3ljbGVzLCBvbmx5IGlmIG5hbWUgbWF0Y2hlc1xuICAgICAgaWYgKGltcG9ydGVkLnBhdGggPT09IHRoaXMucGF0aCAmJiByZWV4cG9ydHMubG9jYWwgPT09IG5hbWUpIHJldHVybiB1bmRlZmluZWRcblxuICAgICAgcmV0dXJuIGltcG9ydGVkLmdldChyZWV4cG9ydHMubG9jYWwpXG4gICAgfVxuXG4gICAgLy8gZGVmYXVsdCBleHBvcnRzIG11c3QgYmUgZXhwbGljaXRseSByZS1leHBvcnRlZCAoIzMyOClcbiAgICBpZiAobmFtZSAhPT0gJ2RlZmF1bHQnKSB7XG4gICAgICBmb3IgKGxldCBkZXAgb2YgdGhpcy5kZXBlbmRlbmNpZXMpIHtcbiAgICAgICAgbGV0IGlubmVyTWFwID0gZGVwKClcbiAgICAgICAgLy8gdG9kbzogcmVwb3J0IGFzIHVucmVzb2x2ZWQ/XG4gICAgICAgIGlmICghaW5uZXJNYXApIGNvbnRpbnVlXG5cbiAgICAgICAgLy8gc2FmZWd1YXJkIGFnYWluc3QgY3ljbGVzXG4gICAgICAgIGlmIChpbm5lck1hcC5wYXRoID09PSB0aGlzLnBhdGgpIGNvbnRpbnVlXG5cbiAgICAgICAgbGV0IGlubmVyVmFsdWUgPSBpbm5lck1hcC5nZXQobmFtZSlcbiAgICAgICAgaWYgKGlubmVyVmFsdWUgIT09IHVuZGVmaW5lZCkgcmV0dXJuIGlubmVyVmFsdWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkXG4gIH1cblxuICBmb3JFYWNoKGNhbGxiYWNrLCB0aGlzQXJnKSB7XG4gICAgdGhpcy5uYW1lc3BhY2UuZm9yRWFjaCgodiwgbikgPT5cbiAgICAgIGNhbGxiYWNrLmNhbGwodGhpc0FyZywgdiwgbiwgdGhpcykpXG5cbiAgICB0aGlzLnJlZXhwb3J0cy5mb3JFYWNoKChyZWV4cG9ydHMsIG5hbWUpID0+IHtcbiAgICAgIGNvbnN0IHJlZXhwb3J0ZWQgPSByZWV4cG9ydHMuZ2V0SW1wb3J0KClcbiAgICAgIC8vIGNhbid0IGxvb2sgdXAgbWV0YSBmb3IgaWdub3JlZCByZS1leHBvcnRzICgjMzQ4KVxuICAgICAgY2FsbGJhY2suY2FsbCh0aGlzQXJnLCByZWV4cG9ydGVkICYmIHJlZXhwb3J0ZWQuZ2V0KHJlZXhwb3J0cy5sb2NhbCksIG5hbWUsIHRoaXMpXG4gICAgfSlcblxuICAgIHRoaXMuZGVwZW5kZW5jaWVzLmZvckVhY2goZGVwID0+IHtcbiAgICAgIGNvbnN0IGQgPSBkZXAoKVxuICAgICAgLy8gQ0pTIC8gaWdub3JlZCBkZXBlbmRlbmNpZXMgd29uJ3QgZXhpc3QgKCM3MTcpXG4gICAgICBpZiAoZCA9PSBudWxsKSByZXR1cm5cblxuICAgICAgZC5mb3JFYWNoKCh2LCBuKSA9PlxuICAgICAgICBuICE9PSAnZGVmYXVsdCcgJiYgY2FsbGJhY2suY2FsbCh0aGlzQXJnLCB2LCBuLCB0aGlzKSlcbiAgICB9KVxuICB9XG5cbiAgLy8gdG9kbzoga2V5cywgdmFsdWVzLCBlbnRyaWVzP1xuXG4gIHJlcG9ydEVycm9ycyhjb250ZXh0LCBkZWNsYXJhdGlvbikge1xuICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgIG5vZGU6IGRlY2xhcmF0aW9uLnNvdXJjZSxcbiAgICAgIG1lc3NhZ2U6IGBQYXJzZSBlcnJvcnMgaW4gaW1wb3J0ZWQgbW9kdWxlICcke2RlY2xhcmF0aW9uLnNvdXJjZS52YWx1ZX0nOiBgICtcbiAgICAgICAgICAgICAgICAgIGAke3RoaXMuZXJyb3JzXG4gICAgICAgICAgICAgICAgICAgICAgICAubWFwKGUgPT4gYCR7ZS5tZXNzYWdlfSAoJHtlLmxpbmVOdW1iZXJ9OiR7ZS5jb2x1bW59KWApXG4gICAgICAgICAgICAgICAgICAgICAgICAuam9pbignLCAnKX1gLFxuICAgIH0pXG4gIH1cbn1cblxuLyoqXG4gKiBwYXJzZSBkb2NzIGZyb20gdGhlIGZpcnN0IG5vZGUgdGhhdCBoYXMgbGVhZGluZyBjb21tZW50c1xuICovXG5mdW5jdGlvbiBjYXB0dXJlRG9jKHNvdXJjZSwgZG9jU3R5bGVQYXJzZXJzLCAuLi5ub2Rlcykge1xuICBjb25zdCBtZXRhZGF0YSA9IHt9XG5cbiAgLy8gJ3NvbWUnIHNob3J0LWNpcmN1aXRzIG9uIGZpcnN0ICd0cnVlJ1xuICBub2Rlcy5zb21lKG4gPT4ge1xuICAgIHRyeSB7XG5cbiAgICAgIGxldCBsZWFkaW5nQ29tbWVudHNcblxuICAgICAgLy8gbi5sZWFkaW5nQ29tbWVudHMgaXMgbGVnYWN5IGBhdHRhY2hDb21tZW50c2AgYmVoYXZpb3JcbiAgICAgIGlmICgnbGVhZGluZ0NvbW1lbnRzJyBpbiBuKSB7XG4gICAgICAgIGxlYWRpbmdDb21tZW50cyA9IG4ubGVhZGluZ0NvbW1lbnRzXG4gICAgICB9IGVsc2UgaWYgKG4ucmFuZ2UpIHtcbiAgICAgICAgbGVhZGluZ0NvbW1lbnRzID0gc291cmNlLmdldENvbW1lbnRzQmVmb3JlKG4pXG4gICAgICB9XG5cbiAgICAgIGlmICghbGVhZGluZ0NvbW1lbnRzIHx8IGxlYWRpbmdDb21tZW50cy5sZW5ndGggPT09IDApIHJldHVybiBmYWxzZVxuXG4gICAgICBmb3IgKGxldCBuYW1lIGluIGRvY1N0eWxlUGFyc2Vycykge1xuICAgICAgICBjb25zdCBkb2MgPSBkb2NTdHlsZVBhcnNlcnNbbmFtZV0obGVhZGluZ0NvbW1lbnRzKVxuICAgICAgICBpZiAoZG9jKSB7XG4gICAgICAgICAgbWV0YWRhdGEuZG9jID0gZG9jXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gbWV0YWRhdGFcbn1cblxuY29uc3QgYXZhaWxhYmxlRG9jU3R5bGVQYXJzZXJzID0ge1xuICBqc2RvYzogY2FwdHVyZUpzRG9jLFxuICB0b21kb2M6IGNhcHR1cmVUb21Eb2MsXG59XG5cbi8qKlxuICogcGFyc2UgSlNEb2MgZnJvbSBsZWFkaW5nIGNvbW1lbnRzXG4gKiBAcGFyYW0gIHsuLi5bdHlwZV19IGNvbW1lbnRzIFtkZXNjcmlwdGlvbl1cbiAqIEByZXR1cm4ge3tkb2M6IG9iamVjdH19XG4gKi9cbmZ1bmN0aW9uIGNhcHR1cmVKc0RvYyhjb21tZW50cykge1xuICBsZXQgZG9jXG5cbiAgLy8gY2FwdHVyZSBYU0RvY1xuICBjb21tZW50cy5mb3JFYWNoKGNvbW1lbnQgPT4ge1xuICAgIC8vIHNraXAgbm9uLWJsb2NrIGNvbW1lbnRzXG4gICAgaWYgKGNvbW1lbnQudHlwZSAhPT0gJ0Jsb2NrJykgcmV0dXJuXG4gICAgdHJ5IHtcbiAgICAgIGRvYyA9IGRvY3RyaW5lLnBhcnNlKGNvbW1lbnQudmFsdWUsIHsgdW53cmFwOiB0cnVlIH0pXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAvKiBkb24ndCBjYXJlLCBmb3Igbm93PyBtYXliZSBhZGQgdG8gYGVycm9ycz9gICovXG4gICAgfVxuICB9KVxuXG4gIHJldHVybiBkb2Ncbn1cblxuLyoqXG4gICogcGFyc2UgVG9tRG9jIHNlY3Rpb24gZnJvbSBjb21tZW50c1xuICAqL1xuZnVuY3Rpb24gY2FwdHVyZVRvbURvYyhjb21tZW50cykge1xuICAvLyBjb2xsZWN0IGxpbmVzIHVwIHRvIGZpcnN0IHBhcmFncmFwaCBicmVha1xuICBjb25zdCBsaW5lcyA9IFtdXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY29tbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBjb21tZW50ID0gY29tbWVudHNbaV1cbiAgICBpZiAoY29tbWVudC52YWx1ZS5tYXRjaCgvXlxccyokLykpIGJyZWFrXG4gICAgbGluZXMucHVzaChjb21tZW50LnZhbHVlLnRyaW0oKSlcbiAgfVxuXG4gIC8vIHJldHVybiBkb2N0cmluZS1saWtlIG9iamVjdFxuICBjb25zdCBzdGF0dXNNYXRjaCA9IGxpbmVzLmpvaW4oJyAnKS5tYXRjaCgvXihQdWJsaWN8SW50ZXJuYWx8RGVwcmVjYXRlZCk6XFxzKiguKykvKVxuICBpZiAoc3RhdHVzTWF0Y2gpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGVzY3JpcHRpb246IHN0YXR1c01hdGNoWzJdLFxuICAgICAgdGFnczogW3tcbiAgICAgICAgdGl0bGU6IHN0YXR1c01hdGNoWzFdLnRvTG93ZXJDYXNlKCksXG4gICAgICAgIGRlc2NyaXB0aW9uOiBzdGF0dXNNYXRjaFsyXSxcbiAgICAgIH1dLFxuICAgIH1cbiAgfVxufVxuXG5FeHBvcnRNYXAuZ2V0ID0gZnVuY3Rpb24gKHNvdXJjZSwgY29udGV4dCkge1xuICBjb25zdCBwYXRoID0gcmVzb2x2ZShzb3VyY2UsIGNvbnRleHQpXG4gIGlmIChwYXRoID09IG51bGwpIHJldHVybiBudWxsXG5cbiAgcmV0dXJuIEV4cG9ydE1hcC5mb3IoY2hpbGRDb250ZXh0KHBhdGgsIGNvbnRleHQpKVxufVxuXG5FeHBvcnRNYXAuZm9yID0gZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgY29uc3QgeyBwYXRoIH0gPSBjb250ZXh0XG5cbiAgY29uc3QgY2FjaGVLZXkgPSBoYXNoT2JqZWN0KGNvbnRleHQpLmRpZ2VzdCgnaGV4JylcbiAgbGV0IGV4cG9ydE1hcCA9IGV4cG9ydENhY2hlLmdldChjYWNoZUtleSlcblxuICAvLyByZXR1cm4gY2FjaGVkIGlnbm9yZVxuICBpZiAoZXhwb3J0TWFwID09PSBudWxsKSByZXR1cm4gbnVsbFxuXG4gIGNvbnN0IHN0YXRzID0gZnMuc3RhdFN5bmMocGF0aClcbiAgaWYgKGV4cG9ydE1hcCAhPSBudWxsKSB7XG4gICAgLy8gZGF0ZSBlcXVhbGl0eSBjaGVja1xuICAgIGlmIChleHBvcnRNYXAubXRpbWUgLSBzdGF0cy5tdGltZSA9PT0gMCkge1xuICAgICAgcmV0dXJuIGV4cG9ydE1hcFxuICAgIH1cbiAgICAvLyBmdXR1cmU6IGNoZWNrIGNvbnRlbnQgZXF1YWxpdHk/XG4gIH1cblxuICAvLyBjaGVjayB2YWxpZCBleHRlbnNpb25zIGZpcnN0XG4gIGlmICghaGFzVmFsaWRFeHRlbnNpb24ocGF0aCwgY29udGV4dCkpIHtcbiAgICBleHBvcnRDYWNoZS5zZXQoY2FjaGVLZXksIG51bGwpXG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIC8vIGNoZWNrIGZvciBhbmQgY2FjaGUgaWdub3JlXG4gIGlmIChpc0lnbm9yZWQocGF0aCwgY29udGV4dCkpIHtcbiAgICBsb2coJ2lnbm9yZWQgcGF0aCBkdWUgdG8gaWdub3JlIHNldHRpbmdzOicsIHBhdGgpXG4gICAgZXhwb3J0Q2FjaGUuc2V0KGNhY2hlS2V5LCBudWxsKVxuICAgIHJldHVybiBudWxsXG4gIH1cblxuICBjb25zdCBjb250ZW50ID0gZnMucmVhZEZpbGVTeW5jKHBhdGgsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KVxuXG4gIC8vIGNoZWNrIGZvciBhbmQgY2FjaGUgdW5hbWJpZ3VvdXMgbW9kdWxlc1xuICBpZiAoIXVuYW1iaWd1b3VzLnRlc3QoY29udGVudCkpIHtcbiAgICBsb2coJ2lnbm9yZWQgcGF0aCBkdWUgdG8gdW5hbWJpZ3VvdXMgcmVnZXg6JywgcGF0aClcbiAgICBleHBvcnRDYWNoZS5zZXQoY2FjaGVLZXksIG51bGwpXG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGxvZygnY2FjaGUgbWlzcycsIGNhY2hlS2V5LCAnZm9yIHBhdGgnLCBwYXRoKVxuICBleHBvcnRNYXAgPSBFeHBvcnRNYXAucGFyc2UocGF0aCwgY29udGVudCwgY29udGV4dClcblxuICAvLyBhbWJpZ3VvdXMgbW9kdWxlcyByZXR1cm4gbnVsbFxuICBpZiAoZXhwb3J0TWFwID09IG51bGwpIHJldHVybiBudWxsXG5cbiAgZXhwb3J0TWFwLm10aW1lID0gc3RhdHMubXRpbWVcblxuICBleHBvcnRDYWNoZS5zZXQoY2FjaGVLZXksIGV4cG9ydE1hcClcbiAgcmV0dXJuIGV4cG9ydE1hcFxufVxuXG5cbkV4cG9ydE1hcC5wYXJzZSA9IGZ1bmN0aW9uIChwYXRoLCBjb250ZW50LCBjb250ZXh0KSB7XG4gIHZhciBtID0gbmV3IEV4cG9ydE1hcChwYXRoKVxuXG4gIHRyeSB7XG4gICAgdmFyIGFzdCA9IHBhcnNlKHBhdGgsIGNvbnRlbnQsIGNvbnRleHQpXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGxvZygncGFyc2UgZXJyb3I6JywgcGF0aCwgZXJyKVxuICAgIG0uZXJyb3JzLnB1c2goZXJyKVxuICAgIHJldHVybiBtIC8vIGNhbid0IGNvbnRpbnVlXG4gIH1cblxuICBpZiAoIXVuYW1iaWd1b3VzLmlzTW9kdWxlKGFzdCkpIHJldHVybiBudWxsXG5cbiAgY29uc3QgZG9jc3R5bGUgPSAoY29udGV4dC5zZXR0aW5ncyAmJiBjb250ZXh0LnNldHRpbmdzWydpbXBvcnQvZG9jc3R5bGUnXSkgfHwgWydqc2RvYyddXG4gIGNvbnN0IGRvY1N0eWxlUGFyc2VycyA9IHt9XG4gIGRvY3N0eWxlLmZvckVhY2goc3R5bGUgPT4ge1xuICAgIGRvY1N0eWxlUGFyc2Vyc1tzdHlsZV0gPSBhdmFpbGFibGVEb2NTdHlsZVBhcnNlcnNbc3R5bGVdXG4gIH0pXG5cbiAgLy8gYXR0ZW1wdCB0byBjb2xsZWN0IG1vZHVsZSBkb2NcbiAgaWYgKGFzdC5jb21tZW50cykge1xuICAgIGFzdC5jb21tZW50cy5zb21lKGMgPT4ge1xuICAgICAgaWYgKGMudHlwZSAhPT0gJ0Jsb2NrJykgcmV0dXJuIGZhbHNlXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBkb2MgPSBkb2N0cmluZS5wYXJzZShjLnZhbHVlLCB7IHVud3JhcDogdHJ1ZSB9KVxuICAgICAgICBpZiAoZG9jLnRhZ3Muc29tZSh0ID0+IHQudGl0bGUgPT09ICdtb2R1bGUnKSkge1xuICAgICAgICAgIG0uZG9jID0gZG9jXG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyKSB7IC8qIGlnbm9yZSAqLyB9XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9KVxuICB9XG5cbiAgY29uc3QgbmFtZXNwYWNlcyA9IG5ldyBNYXAoKVxuXG4gIGZ1bmN0aW9uIHJlbW90ZVBhdGgodmFsdWUpIHtcbiAgICByZXR1cm4gcmVzb2x2ZS5yZWxhdGl2ZSh2YWx1ZSwgcGF0aCwgY29udGV4dC5zZXR0aW5ncylcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlc29sdmVJbXBvcnQodmFsdWUpIHtcbiAgICBjb25zdCBycCA9IHJlbW90ZVBhdGgodmFsdWUpXG4gICAgaWYgKHJwID09IG51bGwpIHJldHVybiBudWxsXG4gICAgcmV0dXJuIEV4cG9ydE1hcC5mb3IoY2hpbGRDb250ZXh0KHJwLCBjb250ZXh0KSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGdldE5hbWVzcGFjZShpZGVudGlmaWVyKSB7XG4gICAgaWYgKCFuYW1lc3BhY2VzLmhhcyhpZGVudGlmaWVyLm5hbWUpKSByZXR1cm5cblxuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gcmVzb2x2ZUltcG9ydChuYW1lc3BhY2VzLmdldChpZGVudGlmaWVyLm5hbWUpKVxuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGFkZE5hbWVzcGFjZShvYmplY3QsIGlkZW50aWZpZXIpIHtcbiAgICBjb25zdCBuc2ZuID0gZ2V0TmFtZXNwYWNlKGlkZW50aWZpZXIpXG4gICAgaWYgKG5zZm4pIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmplY3QsICduYW1lc3BhY2UnLCB7IGdldDogbnNmbiB9KVxuICAgIH1cblxuICAgIHJldHVybiBvYmplY3RcbiAgfVxuXG4gIGZ1bmN0aW9uIGNhcHR1cmVEZXBlbmRlbmN5KGRlY2xhcmF0aW9uKSB7XG4gICAgaWYgKGRlY2xhcmF0aW9uLnNvdXJjZSA9PSBudWxsKSByZXR1cm4gbnVsbFxuICAgIGlmIChkZWNsYXJhdGlvbi5pbXBvcnRLaW5kID09PSAndHlwZScpIHJldHVybiBudWxsIC8vIHNraXAgRmxvdyB0eXBlIGltcG9ydHNcbiAgICBjb25zdCBpbXBvcnRlZFNwZWNpZmllcnMgPSBuZXcgU2V0KClcbiAgICBjb25zdCBzdXBwb3J0ZWRUeXBlcyA9IG5ldyBTZXQoWydJbXBvcnREZWZhdWx0U3BlY2lmaWVyJywgJ0ltcG9ydE5hbWVzcGFjZVNwZWNpZmllciddKVxuICAgIGxldCBoYXNJbXBvcnRlZFR5cGUgPSBmYWxzZVxuICAgIGlmIChkZWNsYXJhdGlvbi5zcGVjaWZpZXJzKSB7XG4gICAgICBkZWNsYXJhdGlvbi5zcGVjaWZpZXJzLmZvckVhY2goc3BlY2lmaWVyID0+IHtcbiAgICAgICAgY29uc3QgaXNUeXBlID0gc3BlY2lmaWVyLmltcG9ydEtpbmQgPT09ICd0eXBlJ1xuICAgICAgICBoYXNJbXBvcnRlZFR5cGUgPSBoYXNJbXBvcnRlZFR5cGUgfHwgaXNUeXBlXG5cbiAgICAgICAgaWYgKHN1cHBvcnRlZFR5cGVzLmhhcyhzcGVjaWZpZXIudHlwZSkgJiYgIWlzVHlwZSkge1xuICAgICAgICAgIGltcG9ydGVkU3BlY2lmaWVycy5hZGQoc3BlY2lmaWVyLnR5cGUpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNwZWNpZmllci50eXBlID09PSAnSW1wb3J0U3BlY2lmaWVyJyAmJiAhaXNUeXBlKSB7XG4gICAgICAgICAgaW1wb3J0ZWRTcGVjaWZpZXJzLmFkZChzcGVjaWZpZXIuaW1wb3J0ZWQubmFtZSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyBvbmx5IEZsb3cgdHlwZXMgd2VyZSBpbXBvcnRlZFxuICAgIGlmIChoYXNJbXBvcnRlZFR5cGUgJiYgaW1wb3J0ZWRTcGVjaWZpZXJzLnNpemUgPT09IDApIHJldHVybiBudWxsXG5cbiAgICBjb25zdCBwID0gcmVtb3RlUGF0aChkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUpXG4gICAgaWYgKHAgPT0gbnVsbCkgcmV0dXJuIG51bGxcbiAgICBjb25zdCBleGlzdGluZyA9IG0uaW1wb3J0cy5nZXQocClcbiAgICBpZiAoZXhpc3RpbmcgIT0gbnVsbCkgcmV0dXJuIGV4aXN0aW5nLmdldHRlclxuXG4gICAgY29uc3QgZ2V0dGVyID0gdGh1bmtGb3IocCwgY29udGV4dClcbiAgICBtLmltcG9ydHMuc2V0KHAsIHtcbiAgICAgIGdldHRlcixcbiAgICAgIHNvdXJjZTogeyAgLy8gY2FwdHVyaW5nIGFjdHVhbCBub2RlIHJlZmVyZW5jZSBob2xkcyBmdWxsIEFTVCBpbiBtZW1vcnkhXG4gICAgICAgIHZhbHVlOiBkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUsXG4gICAgICAgIGxvYzogZGVjbGFyYXRpb24uc291cmNlLmxvYyxcbiAgICAgIH0sXG4gICAgICBpbXBvcnRlZFNwZWNpZmllcnMsXG4gICAgfSlcbiAgICByZXR1cm4gZ2V0dGVyXG4gIH1cblxuICBjb25zdCBzb3VyY2UgPSBtYWtlU291cmNlQ29kZShjb250ZW50LCBhc3QpXG5cbiAgZnVuY3Rpb24gaXNFc01vZHVsZUludGVyb3AoKSB7XG4gICAgY29uc3QgdHNDb25maWdJbmZvID0gdHNDb25maWdMb2FkZXIoe1xuICAgICAgY3dkOiBjb250ZXh0LnBhcnNlck9wdGlvbnMgJiYgY29udGV4dC5wYXJzZXJPcHRpb25zLnRzY29uZmlnUm9vdERpciB8fCBwcm9jZXNzLmN3ZCgpLFxuICAgICAgZ2V0RW52OiAoa2V5KSA9PiBwcm9jZXNzLmVudltrZXldLFxuICAgIH0pXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0c0NvbmZpZ0luZm8udHNDb25maWdQYXRoICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QganNvblRleHQgPSBmcy5yZWFkRmlsZVN5bmModHNDb25maWdJbmZvLnRzQ29uZmlnUGF0aCkudG9TdHJpbmcoKVxuICAgICAgICBpZiAoIXBhcnNlQ29uZmlnRmlsZVRleHRUb0pzb24pIHtcbiAgICAgICAgICAvLyB0aGlzIGlzIGJlY2F1c2UgcHJvamVjdHMgbm90IHVzaW5nIFR5cGVTY3JpcHQgd29uJ3QgaGF2ZSB0eXBlc2NyaXB0IGluc3RhbGxlZFxuICAgICAgICAgICh7cGFyc2VDb25maWdGaWxlVGV4dFRvSnNvbn0gPSByZXF1aXJlKCd0eXBlc2NyaXB0JykpXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdHNDb25maWcgPSBwYXJzZUNvbmZpZ0ZpbGVUZXh0VG9Kc29uKHRzQ29uZmlnSW5mby50c0NvbmZpZ1BhdGgsIGpzb25UZXh0KS5jb25maWdcbiAgICAgICAgcmV0dXJuIHRzQ29uZmlnLmNvbXBpbGVyT3B0aW9ucy5lc01vZHVsZUludGVyb3BcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICBhc3QuYm9keS5mb3JFYWNoKGZ1bmN0aW9uIChuKSB7XG4gICAgaWYgKG4udHlwZSA9PT0gJ0V4cG9ydERlZmF1bHREZWNsYXJhdGlvbicpIHtcbiAgICAgIGNvbnN0IGV4cG9ydE1ldGEgPSBjYXB0dXJlRG9jKHNvdXJjZSwgZG9jU3R5bGVQYXJzZXJzLCBuKVxuICAgICAgaWYgKG4uZGVjbGFyYXRpb24udHlwZSA9PT0gJ0lkZW50aWZpZXInKSB7XG4gICAgICAgIGFkZE5hbWVzcGFjZShleHBvcnRNZXRhLCBuLmRlY2xhcmF0aW9uKVxuICAgICAgfVxuICAgICAgbS5uYW1lc3BhY2Uuc2V0KCdkZWZhdWx0JywgZXhwb3J0TWV0YSlcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChuLnR5cGUgPT09ICdFeHBvcnRBbGxEZWNsYXJhdGlvbicpIHtcbiAgICAgIGNvbnN0IGdldHRlciA9IGNhcHR1cmVEZXBlbmRlbmN5KG4pXG4gICAgICBpZiAoZ2V0dGVyKSBtLmRlcGVuZGVuY2llcy5hZGQoZ2V0dGVyKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gY2FwdHVyZSBuYW1lc3BhY2VzIGluIGNhc2Ugb2YgbGF0ZXIgZXhwb3J0XG4gICAgaWYgKG4udHlwZSA9PT0gJ0ltcG9ydERlY2xhcmF0aW9uJykge1xuICAgICAgY2FwdHVyZURlcGVuZGVuY3kobilcbiAgICAgIGxldCBuc1xuICAgICAgaWYgKG4uc3BlY2lmaWVycy5zb21lKHMgPT4gcy50eXBlID09PSAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJyAmJiAobnMgPSBzKSkpIHtcbiAgICAgICAgbmFtZXNwYWNlcy5zZXQobnMubG9jYWwubmFtZSwgbi5zb3VyY2UudmFsdWUpXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAobi50eXBlID09PSAnRXhwb3J0TmFtZWREZWNsYXJhdGlvbicpIHtcbiAgICAgIC8vIGNhcHR1cmUgZGVjbGFyYXRpb25cbiAgICAgIGlmIChuLmRlY2xhcmF0aW9uICE9IG51bGwpIHtcbiAgICAgICAgc3dpdGNoIChuLmRlY2xhcmF0aW9uLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICdGdW5jdGlvbkRlY2xhcmF0aW9uJzpcbiAgICAgICAgICBjYXNlICdDbGFzc0RlY2xhcmF0aW9uJzpcbiAgICAgICAgICBjYXNlICdUeXBlQWxpYXMnOiAvLyBmbG93dHlwZSB3aXRoIGJhYmVsLWVzbGludCBwYXJzZXJcbiAgICAgICAgICBjYXNlICdJbnRlcmZhY2VEZWNsYXJhdGlvbic6XG4gICAgICAgICAgY2FzZSAnRGVjbGFyZUZ1bmN0aW9uJzpcbiAgICAgICAgICBjYXNlICdUU0RlY2xhcmVGdW5jdGlvbic6XG4gICAgICAgICAgY2FzZSAnVFNFbnVtRGVjbGFyYXRpb24nOlxuICAgICAgICAgIGNhc2UgJ1RTVHlwZUFsaWFzRGVjbGFyYXRpb24nOlxuICAgICAgICAgIGNhc2UgJ1RTSW50ZXJmYWNlRGVjbGFyYXRpb24nOlxuICAgICAgICAgIGNhc2UgJ1RTQWJzdHJhY3RDbGFzc0RlY2xhcmF0aW9uJzpcbiAgICAgICAgICBjYXNlICdUU01vZHVsZURlY2xhcmF0aW9uJzpcbiAgICAgICAgICAgIG0ubmFtZXNwYWNlLnNldChuLmRlY2xhcmF0aW9uLmlkLm5hbWUsIGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIG4pKVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICdWYXJpYWJsZURlY2xhcmF0aW9uJzpcbiAgICAgICAgICAgIG4uZGVjbGFyYXRpb24uZGVjbGFyYXRpb25zLmZvckVhY2goKGQpID0+XG4gICAgICAgICAgICAgIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKGQuaWQsXG4gICAgICAgICAgICAgICAgaWQgPT4gbS5uYW1lc3BhY2Uuc2V0KGlkLm5hbWUsIGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIGQsIG4pKSkpXG4gICAgICAgICAgICBicmVha1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG5zb3VyY2UgPSBuLnNvdXJjZSAmJiBuLnNvdXJjZS52YWx1ZVxuICAgICAgbi5zcGVjaWZpZXJzLmZvckVhY2goKHMpID0+IHtcbiAgICAgICAgY29uc3QgZXhwb3J0TWV0YSA9IHt9XG4gICAgICAgIGxldCBsb2NhbFxuXG4gICAgICAgIHN3aXRjaCAocy50eXBlKSB7XG4gICAgICAgICAgY2FzZSAnRXhwb3J0RGVmYXVsdFNwZWNpZmllcic6XG4gICAgICAgICAgICBpZiAoIW4uc291cmNlKSByZXR1cm5cbiAgICAgICAgICAgIGxvY2FsID0gJ2RlZmF1bHQnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ0V4cG9ydE5hbWVzcGFjZVNwZWNpZmllcic6XG4gICAgICAgICAgICBtLm5hbWVzcGFjZS5zZXQocy5leHBvcnRlZC5uYW1lLCBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0TWV0YSwgJ25hbWVzcGFjZScsIHtcbiAgICAgICAgICAgICAgZ2V0KCkgeyByZXR1cm4gcmVzb2x2ZUltcG9ydChuc291cmNlKSB9LFxuICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICBjYXNlICdFeHBvcnRTcGVjaWZpZXInOlxuICAgICAgICAgICAgaWYgKCFuLnNvdXJjZSkge1xuICAgICAgICAgICAgICBtLm5hbWVzcGFjZS5zZXQocy5leHBvcnRlZC5uYW1lLCBhZGROYW1lc3BhY2UoZXhwb3J0TWV0YSwgcy5sb2NhbCkpXG4gICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gZWxzZSBmYWxscyB0aHJvdWdoXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGxvY2FsID0gcy5sb2NhbC5uYW1lXG4gICAgICAgICAgICBicmVha1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gdG9kbzogSlNEb2NcbiAgICAgICAgbS5yZWV4cG9ydHMuc2V0KHMuZXhwb3J0ZWQubmFtZSwgeyBsb2NhbCwgZ2V0SW1wb3J0OiAoKSA9PiByZXNvbHZlSW1wb3J0KG5zb3VyY2UpIH0pXG4gICAgICB9KVxuICAgIH1cblxuICAgIGNvbnN0IGlzRXNNb2R1bGVJbnRlcm9wVHJ1ZSA9IGlzRXNNb2R1bGVJbnRlcm9wKClcblxuICAgIGNvbnN0IGV4cG9ydHMgPSBbJ1RTRXhwb3J0QXNzaWdubWVudCddXG4gICAgaWYgKGlzRXNNb2R1bGVJbnRlcm9wVHJ1ZSkge1xuICAgICAgZXhwb3J0cy5wdXNoKCdUU05hbWVzcGFjZUV4cG9ydERlY2xhcmF0aW9uJylcbiAgICB9XG5cbiAgICAvLyBUaGlzIGRvZXNuJ3QgZGVjbGFyZSBhbnl0aGluZywgYnV0IGNoYW5nZXMgd2hhdCdzIGJlaW5nIGV4cG9ydGVkLlxuICAgIGlmIChpbmNsdWRlcyhleHBvcnRzLCBuLnR5cGUpKSB7XG4gICAgICBjb25zdCBleHBvcnRlZE5hbWUgPSBuLnR5cGUgPT09ICdUU05hbWVzcGFjZUV4cG9ydERlY2xhcmF0aW9uJ1xuICAgICAgICA/IG4uaWQubmFtZVxuICAgICAgICA6IChuLmV4cHJlc3Npb24gJiYgbi5leHByZXNzaW9uLm5hbWUgfHwgKG4uZXhwcmVzc2lvbi5pZCAmJiBuLmV4cHJlc3Npb24uaWQubmFtZSkgfHwgbnVsbClcbiAgICAgIGNvbnN0IGRlY2xUeXBlcyA9IFtcbiAgICAgICAgJ1ZhcmlhYmxlRGVjbGFyYXRpb24nLFxuICAgICAgICAnQ2xhc3NEZWNsYXJhdGlvbicsXG4gICAgICAgICdUU0RlY2xhcmVGdW5jdGlvbicsXG4gICAgICAgICdUU0VudW1EZWNsYXJhdGlvbicsXG4gICAgICAgICdUU1R5cGVBbGlhc0RlY2xhcmF0aW9uJyxcbiAgICAgICAgJ1RTSW50ZXJmYWNlRGVjbGFyYXRpb24nLFxuICAgICAgICAnVFNBYnN0cmFjdENsYXNzRGVjbGFyYXRpb24nLFxuICAgICAgICAnVFNNb2R1bGVEZWNsYXJhdGlvbicsXG4gICAgICBdXG4gICAgICBjb25zdCBleHBvcnRlZERlY2xzID0gYXN0LmJvZHkuZmlsdGVyKCh7IHR5cGUsIGlkLCBkZWNsYXJhdGlvbnMgfSkgPT4gaW5jbHVkZXMoZGVjbFR5cGVzLCB0eXBlKSAmJiAoXG4gICAgICAgIChpZCAmJiBpZC5uYW1lID09PSBleHBvcnRlZE5hbWUpIHx8IChkZWNsYXJhdGlvbnMgJiYgZGVjbGFyYXRpb25zLmZpbmQoKGQpID0+IGQuaWQubmFtZSA9PT0gZXhwb3J0ZWROYW1lKSlcbiAgICAgICkpXG4gICAgICBpZiAoZXhwb3J0ZWREZWNscy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgLy8gRXhwb3J0IGlzIG5vdCByZWZlcmVuY2luZyBhbnkgbG9jYWwgZGVjbGFyYXRpb24sIG11c3QgYmUgcmUtZXhwb3J0aW5nXG4gICAgICAgIG0ubmFtZXNwYWNlLnNldCgnZGVmYXVsdCcsIGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIG4pKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChpc0VzTW9kdWxlSW50ZXJvcFRydWUpIHtcbiAgICAgICAgbS5uYW1lc3BhY2Uuc2V0KCdkZWZhdWx0Jywge30pXG4gICAgICB9XG4gICAgICBleHBvcnRlZERlY2xzLmZvckVhY2goKGRlY2wpID0+IHtcbiAgICAgICAgaWYgKGRlY2wudHlwZSA9PT0gJ1RTTW9kdWxlRGVjbGFyYXRpb24nKSB7XG4gICAgICAgICAgaWYgKGRlY2wuYm9keSAmJiBkZWNsLmJvZHkudHlwZSA9PT0gJ1RTTW9kdWxlRGVjbGFyYXRpb24nKSB7XG4gICAgICAgICAgICBtLm5hbWVzcGFjZS5zZXQoZGVjbC5ib2R5LmlkLm5hbWUsIGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIGRlY2wuYm9keSkpXG4gICAgICAgICAgfSBlbHNlIGlmIChkZWNsLmJvZHkgJiYgZGVjbC5ib2R5LmJvZHkpIHtcbiAgICAgICAgICAgIGRlY2wuYm9keS5ib2R5LmZvckVhY2goKG1vZHVsZUJsb2NrTm9kZSkgPT4ge1xuICAgICAgICAgICAgICAvLyBFeHBvcnQtYXNzaWdubWVudCBleHBvcnRzIGFsbCBtZW1iZXJzIGluIHRoZSBuYW1lc3BhY2UsXG4gICAgICAgICAgICAgIC8vIGV4cGxpY2l0bHkgZXhwb3J0ZWQgb3Igbm90LlxuICAgICAgICAgICAgICBjb25zdCBuYW1lc3BhY2VEZWNsID0gbW9kdWxlQmxvY2tOb2RlLnR5cGUgPT09ICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJyA/XG4gICAgICAgICAgICAgICAgbW9kdWxlQmxvY2tOb2RlLmRlY2xhcmF0aW9uIDpcbiAgICAgICAgICAgICAgICBtb2R1bGVCbG9ja05vZGVcblxuICAgICAgICAgICAgICBpZiAoIW5hbWVzcGFjZURlY2wpIHtcbiAgICAgICAgICAgICAgICAvLyBUeXBlU2NyaXB0IGNhbiBjaGVjayB0aGlzIGZvciB1czsgd2UgbmVlZG4ndFxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKG5hbWVzcGFjZURlY2wudHlwZSA9PT0gJ1ZhcmlhYmxlRGVjbGFyYXRpb24nKSB7XG4gICAgICAgICAgICAgICAgbmFtZXNwYWNlRGVjbC5kZWNsYXJhdGlvbnMuZm9yRWFjaCgoZCkgPT5cbiAgICAgICAgICAgICAgICAgIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKGQuaWQsIChpZCkgPT4gbS5uYW1lc3BhY2Uuc2V0KFxuICAgICAgICAgICAgICAgICAgICBpZC5uYW1lLFxuICAgICAgICAgICAgICAgICAgICBjYXB0dXJlRG9jKHNvdXJjZSwgZG9jU3R5bGVQYXJzZXJzLCBkZWNsLCBuYW1lc3BhY2VEZWNsLCBtb2R1bGVCbG9ja05vZGUpXG4gICAgICAgICAgICAgICAgICApKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtLm5hbWVzcGFjZS5zZXQoXG4gICAgICAgICAgICAgICAgICBuYW1lc3BhY2VEZWNsLmlkLm5hbWUsXG4gICAgICAgICAgICAgICAgICBjYXB0dXJlRG9jKHNvdXJjZSwgZG9jU3R5bGVQYXJzZXJzLCBtb2R1bGVCbG9ja05vZGUpKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBFeHBvcnQgYXMgZGVmYXVsdFxuICAgICAgICAgIG0ubmFtZXNwYWNlLnNldCgnZGVmYXVsdCcsIGNhcHR1cmVEb2Moc291cmNlLCBkb2NTdHlsZVBhcnNlcnMsIGRlY2wpKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gbVxufVxuXG4vKipcbiAqIFRoZSBjcmVhdGlvbiBvZiB0aGlzIGNsb3N1cmUgaXMgaXNvbGF0ZWQgZnJvbSBvdGhlciBzY29wZXNcbiAqIHRvIGF2b2lkIG92ZXItcmV0ZW50aW9uIG9mIHVucmVsYXRlZCB2YXJpYWJsZXMsIHdoaWNoIGhhc1xuICogY2F1c2VkIG1lbW9yeSBsZWFrcy4gU2VlICMxMjY2LlxuICovXG5mdW5jdGlvbiB0aHVua0ZvcihwLCBjb250ZXh0KSB7XG4gIHJldHVybiAoKSA9PiBFeHBvcnRNYXAuZm9yKGNoaWxkQ29udGV4dChwLCBjb250ZXh0KSlcbn1cblxuXG4vKipcbiAqIFRyYXZlcnNlIGEgcGF0dGVybi9pZGVudGlmaWVyIG5vZGUsIGNhbGxpbmcgJ2NhbGxiYWNrJ1xuICogZm9yIGVhY2ggbGVhZiBpZGVudGlmaWVyLlxuICogQHBhcmFtICB7bm9kZX0gICBwYXR0ZXJuXG4gKiBAcGFyYW0gIHtGdW5jdGlvbn0gY2FsbGJhY2tcbiAqIEByZXR1cm4ge3ZvaWR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWN1cnNpdmVQYXR0ZXJuQ2FwdHVyZShwYXR0ZXJuLCBjYWxsYmFjaykge1xuICBzd2l0Y2ggKHBhdHRlcm4udHlwZSkge1xuICAgIGNhc2UgJ0lkZW50aWZpZXInOiAvLyBiYXNlIGNhc2VcbiAgICAgIGNhbGxiYWNrKHBhdHRlcm4pXG4gICAgICBicmVha1xuXG4gICAgY2FzZSAnT2JqZWN0UGF0dGVybic6XG4gICAgICBwYXR0ZXJuLnByb3BlcnRpZXMuZm9yRWFjaChwID0+IHtcbiAgICAgICAgaWYgKHAudHlwZSA9PT0gJ0V4cGVyaW1lbnRhbFJlc3RQcm9wZXJ0eScgfHwgcC50eXBlID09PSAnUmVzdEVsZW1lbnQnKSB7XG4gICAgICAgICAgY2FsbGJhY2socC5hcmd1bWVudClcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICByZWN1cnNpdmVQYXR0ZXJuQ2FwdHVyZShwLnZhbHVlLCBjYWxsYmFjaylcbiAgICAgIH0pXG4gICAgICBicmVha1xuXG4gICAgY2FzZSAnQXJyYXlQYXR0ZXJuJzpcbiAgICAgIHBhdHRlcm4uZWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgICBpZiAoZWxlbWVudCA9PSBudWxsKSByZXR1cm5cbiAgICAgICAgaWYgKGVsZW1lbnQudHlwZSA9PT0gJ0V4cGVyaW1lbnRhbFJlc3RQcm9wZXJ0eScgfHwgZWxlbWVudC50eXBlID09PSAnUmVzdEVsZW1lbnQnKSB7XG4gICAgICAgICAgY2FsbGJhY2soZWxlbWVudC5hcmd1bWVudClcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICByZWN1cnNpdmVQYXR0ZXJuQ2FwdHVyZShlbGVtZW50LCBjYWxsYmFjaylcbiAgICAgIH0pXG4gICAgICBicmVha1xuXG4gICAgY2FzZSAnQXNzaWdubWVudFBhdHRlcm4nOlxuICAgICAgY2FsbGJhY2socGF0dGVybi5sZWZ0KVxuICAgICAgYnJlYWtcbiAgfVxufVxuXG4vKipcbiAqIGRvbid0IGhvbGQgZnVsbCBjb250ZXh0IG9iamVjdCBpbiBtZW1vcnksIGp1c3QgZ3JhYiB3aGF0IHdlIG5lZWQuXG4gKi9cbmZ1bmN0aW9uIGNoaWxkQ29udGV4dChwYXRoLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgc2V0dGluZ3MsIHBhcnNlck9wdGlvbnMsIHBhcnNlclBhdGggfSA9IGNvbnRleHRcbiAgcmV0dXJuIHtcbiAgICBzZXR0aW5ncyxcbiAgICBwYXJzZXJPcHRpb25zLFxuICAgIHBhcnNlclBhdGgsXG4gICAgcGF0aCxcbiAgfVxufVxuXG5cbi8qKlxuICogc29tZXRpbWVzIGxlZ2FjeSBzdXBwb3J0IGlzbid0IF90aGF0XyBoYXJkLi4uIHJpZ2h0P1xuICovXG5mdW5jdGlvbiBtYWtlU291cmNlQ29kZSh0ZXh0LCBhc3QpIHtcbiAgaWYgKFNvdXJjZUNvZGUubGVuZ3RoID4gMSkge1xuICAgIC8vIEVTTGludCAzXG4gICAgcmV0dXJuIG5ldyBTb3VyY2VDb2RlKHRleHQsIGFzdClcbiAgfSBlbHNlIHtcbiAgICAvLyBFU0xpbnQgNCwgNVxuICAgIHJldHVybiBuZXcgU291cmNlQ29kZSh7IHRleHQsIGFzdCB9KVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/core/importType.js b/node_modules/eslint-plugin-import/lib/core/importType.js index 8321c5ab..38d52000 100644 --- a/node_modules/eslint-plugin-import/lib/core/importType.js +++ b/node_modules/eslint-plugin-import/lib/core/importType.js @@ -1,150 +1,102 @@ -'use strict'; +'use strict';Object.defineProperty(exports, "__esModule", { value: true });var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();exports. -Object.defineProperty(exports, "__esModule", { - value: true -}); -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); -exports.isAbsolute = isAbsolute; -exports.isBuiltIn = isBuiltIn; -exports.isExternalModule = isExternalModule; -exports.isExternalModuleMain = isExternalModuleMain; -exports.isScoped = isScoped; -exports.isScopedMain = isScopedMain; -exports.isScopedModule = isScopedModule; -exports.default = resolveImportType; -var _core = require('resolve/lib/core'); -var _core2 = _interopRequireDefault(_core); -var _resolve = require('eslint-module-utils/resolve'); -var _resolve2 = _interopRequireDefault(_resolve); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function baseModule(name) { - if (isScoped(name)) { - var _name$split = name.split('/'), - _name$split2 = _slicedToArray(_name$split, 2); - const scope = _name$split2[0], - pkg = _name$split2[1]; - return `${scope}/${pkg}`; - } - var _name$split3 = name.split('/'), - _name$split4 = _slicedToArray(_name$split3, 1); +isAbsolute = isAbsolute;exports. - const pkg = _name$split4[0]; - return pkg; + + +isBuiltIn = isBuiltIn;exports. + + + + + + + + + + + + + + + + + + + + + + + + + +isExternalModule = isExternalModule;exports. + + + + +isExternalModuleMain = isExternalModuleMain;exports. + + + + +isScoped = isScoped;exports. + + + + +isScopedMain = isScopedMain;exports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +isScopedModule = isScopedModule;exports.default = + + + +resolveImportType;var _core = require('resolve/lib/core');var _core2 = _interopRequireDefault(_core);var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function baseModule(name) {if (isScoped(name)) {var _name$split = name.split('/'),_name$split2 = _slicedToArray(_name$split, 2);const scope = _name$split2[0],pkg = _name$split2[1];return `${scope}/${pkg}`;}var _name$split3 = name.split('/'),_name$split4 = _slicedToArray(_name$split3, 1);const pkg = _name$split4[0];return pkg;}function isAbsolute(name) {return name && name.startsWith('/');} // path is defined only when a resolver resolves to a non-standard path +function isBuiltIn(name, settings, path) {if (path || !name) return false;const base = baseModule(name);const extras = settings && settings['import/core-modules'] || [];return _core2.default[base] || extras.indexOf(base) > -1;}function isExternalPath(path, name, settings) {const folders = settings && settings['import/external-module-folders'] || ['node_modules'];return !path || folders.some(folder => isSubpath(folder, path));}function isSubpath(subpath, path) {const normPath = path.replace(/\\/g, '/');const normSubpath = subpath.replace(/\\/g, '/').replace(/\/$/, '');if (normSubpath.length === 0) {return false;}const left = normPath.indexOf(normSubpath);const right = left + normSubpath.length;return left !== -1 && (left === 0 || normSubpath[0] !== '/' && normPath[left - 1] === '/') && (right >= normPath.length || normPath[right] === '/');}const externalModuleRegExp = /^\w/;function isExternalModule(name, settings, path) {return externalModuleRegExp.test(name) && isExternalPath(path, name, settings);}const externalModuleMainRegExp = /^[\w]((?!\/).)*$/;function isExternalModuleMain(name, settings, path) {return externalModuleMainRegExp.test(name) && isExternalPath(path, name, settings);}const scopedRegExp = /^@[^/]*\/?[^/]+/;function isScoped(name) {return name && scopedRegExp.test(name);}const scopedMainRegExp = /^@[^/]+\/?[^/]+$/;function isScopedMain(name) {return name && scopedMainRegExp.test(name);}function isInternalModule(name, settings, path) {const internalScope = settings && settings['import/internal-regex'];const matchesScopedOrExternalRegExp = scopedRegExp.test(name) || externalModuleRegExp.test(name);return matchesScopedOrExternalRegExp && (internalScope && new RegExp(internalScope).test(name) || !isExternalPath(path, name, settings));}function isRelativeToParent(name) {return (/^\.\.$|^\.\.[\\/]/.test(name));}const indexFiles = ['.', './', './index', './index.js'];function isIndex(name) {return indexFiles.indexOf(name) !== -1;}function isRelativeToSibling(name) {return (/^\.[\\/]/.test(name));}function typeTest(name, settings, path) {if (isAbsolute(name, settings, path)) {return 'absolute';}if (isBuiltIn(name, settings, path)) {return 'builtin';}if (isInternalModule(name, settings, path)) {return 'internal';}if (isExternalModule(name, settings, path)) {return 'external';}if (isScoped(name, settings, path)) {return 'external';}if (isRelativeToParent(name, settings, path)) {return 'parent';}if (isIndex(name, settings, path)) {return 'index';}if (isRelativeToSibling(name, settings, path)) {return 'sibling';}return 'unknown';}function isScopedModule(name) {return name.indexOf('@') === 0 && !name.startsWith('@/');}function resolveImportType(name, context) {return typeTest(name, context.settings, (0, _resolve2.default)(name, context)); } - -function isAbsolute(name) { - return name.indexOf('/') === 0; -} - -// path is defined only when a resolver resolves to a non-standard path -function isBuiltIn(name, settings, path) { - if (path || !name) return false; - const base = baseModule(name); - const extras = settings && settings['import/core-modules'] || []; - return _core2.default[base] || extras.indexOf(base) > -1; -} - -function isExternalPath(path, name, settings) { - const folders = settings && settings['import/external-module-folders'] || ['node_modules']; - return !path || folders.some(folder => isSubpath(folder, path)); -} - -function isSubpath(subpath, path) { - const normSubpath = subpath.replace(/[/]$/, ''); - if (normSubpath.length === 0) { - return false; - } - const left = path.indexOf(normSubpath); - const right = left + normSubpath.length; - return left !== -1 && (left === 0 || normSubpath[0] !== '/' && path[left - 1] === '/') && (right >= path.length || path[right] === '/'); -} - -const externalModuleRegExp = /^\w/; -function isExternalModule(name, settings, path) { - return externalModuleRegExp.test(name) && isExternalPath(path, name, settings); -} - -const externalModuleMainRegExp = /^[\w]((?!\/).)*$/; -function isExternalModuleMain(name, settings, path) { - return externalModuleMainRegExp.test(name) && isExternalPath(path, name, settings); -} - -const scopedRegExp = /^@[^/]*\/?[^/]+/; -function isScoped(name) { - return name && scopedRegExp.test(name); -} - -const scopedMainRegExp = /^@[^/]+\/?[^/]+$/; -function isScopedMain(name) { - return name && scopedMainRegExp.test(name); -} - -function isInternalModule(name, settings, path) { - const internalScope = settings && settings['import/internal-regex']; - const matchesScopedOrExternalRegExp = scopedRegExp.test(name) || externalModuleRegExp.test(name); - return matchesScopedOrExternalRegExp && (internalScope && new RegExp(internalScope).test(name) || !isExternalPath(path, name, settings)); -} - -function isRelativeToParent(name) { - return (/^\.\.[\\/]/.test(name) - ); -} - -const indexFiles = ['.', './', './index', './index.js']; -function isIndex(name) { - return indexFiles.indexOf(name) !== -1; -} - -function isRelativeToSibling(name) { - return (/^\.[\\/]/.test(name) - ); -} - -function typeTest(name, settings, path) { - if (isAbsolute(name, settings, path)) { - return 'absolute'; - } - if (isBuiltIn(name, settings, path)) { - return 'builtin'; - } - if (isInternalModule(name, settings, path)) { - return 'internal'; - } - if (isExternalModule(name, settings, path)) { - return 'external'; - } - if (isScoped(name, settings, path)) { - return 'external'; - } - if (isRelativeToParent(name, settings, path)) { - return 'parent'; - } - if (isIndex(name, settings, path)) { - return 'index'; - } - if (isRelativeToSibling(name, settings, path)) { - return 'sibling'; - } - return 'unknown'; -} - -function isScopedModule(name) { - return name.indexOf('@') === 0; -} - -function resolveImportType(name, context) { - return typeTest(name, context.settings, (0, _resolve2.default)(name, context)); -} -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL2ltcG9ydFR5cGUuanMiXSwibmFtZXMiOlsiaXNBYnNvbHV0ZSIsImlzQnVpbHRJbiIsImlzRXh0ZXJuYWxNb2R1bGUiLCJpc0V4dGVybmFsTW9kdWxlTWFpbiIsImlzU2NvcGVkIiwiaXNTY29wZWRNYWluIiwiaXNTY29wZWRNb2R1bGUiLCJyZXNvbHZlSW1wb3J0VHlwZSIsImJhc2VNb2R1bGUiLCJuYW1lIiwic3BsaXQiLCJzY29wZSIsInBrZyIsImluZGV4T2YiLCJzZXR0aW5ncyIsInBhdGgiLCJiYXNlIiwiZXh0cmFzIiwiY29yZU1vZHVsZXMiLCJpc0V4dGVybmFsUGF0aCIsImZvbGRlcnMiLCJzb21lIiwiZm9sZGVyIiwiaXNTdWJwYXRoIiwic3VicGF0aCIsIm5vcm1TdWJwYXRoIiwicmVwbGFjZSIsImxlbmd0aCIsImxlZnQiLCJyaWdodCIsImV4dGVybmFsTW9kdWxlUmVnRXhwIiwidGVzdCIsImV4dGVybmFsTW9kdWxlTWFpblJlZ0V4cCIsInNjb3BlZFJlZ0V4cCIsInNjb3BlZE1haW5SZWdFeHAiLCJpc0ludGVybmFsTW9kdWxlIiwiaW50ZXJuYWxTY29wZSIsIm1hdGNoZXNTY29wZWRPckV4dGVybmFsUmVnRXhwIiwiUmVnRXhwIiwiaXNSZWxhdGl2ZVRvUGFyZW50IiwiaW5kZXhGaWxlcyIsImlzSW5kZXgiLCJpc1JlbGF0aXZlVG9TaWJsaW5nIiwidHlwZVRlc3QiLCJjb250ZXh0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztRQWFnQkEsVSxHQUFBQSxVO1FBS0FDLFMsR0FBQUEsUztRQXlCQUMsZ0IsR0FBQUEsZ0I7UUFLQUMsb0IsR0FBQUEsb0I7UUFLQUMsUSxHQUFBQSxRO1FBS0FDLFksR0FBQUEsWTtRQW1DQUMsYyxHQUFBQSxjO2tCQUlRQyxpQjs7QUFqR3hCOzs7O0FBRUE7Ozs7OztBQUVBLFNBQVNDLFVBQVQsQ0FBb0JDLElBQXBCLEVBQTBCO0FBQ3hCLE1BQUlMLFNBQVNLLElBQVQsQ0FBSixFQUFv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QWtCO0FBQ3pELE1BQUlvQixpQkFBaUIxQixJQUFqQixFQUF1QkssUUFBdkIsRUFBaUNDLElBQWpDLENBQUosRUFBNEM7QUFBRSxXQUFPLFVBQVA7QUFBbUI7QUFDakUsTUFBSWIsaUJBQWlCTyxJQUFqQixFQUF1QkssUUFBdkIsRUFBaUNDLElBQWpDLENBQUosRUFBNEM7QUFBRSxXQUFPLFVBQVA7QUFBbUI7QUFDakUsTUFBSVgsU0FBU0ssSUFBVCxFQUFlSyxRQUFmLEVBQXlCQyxJQUF6QixDQUFKLEVBQW9DO0FBQUUsV0FBTyxVQUFQO0FBQW1CO0FBQ3pELE1BQUl3QixtQkFBbUI5QixJQUFuQixFQUF5QkssUUFBekIsRUFBbUNDLElBQW5DLENBQUosRUFBOEM7QUFBRSxXQUFPLFFBQVA7QUFBaUI7QUFDakUsTUFBSTBCLFFBQVFoQyxJQUFSLEVBQWNLLFFBQWQsRUFBd0JDLElBQXhCLENBQUosRUFBbUM7QUFBRSxXQUFPLE9BQVA7QUFBZ0I7QUFDckQsTUFBSTJCLG9CQUFvQmpDLElBQXBCLEVBQTBCSyxRQUExQixFQUFvQ0MsSUFBcEMsQ0FBSixFQUErQztBQUFFLFdBQU8sU0FBUDtBQUFrQjtBQUNuRSxTQUFPLFNBQVA7QUFDRDs7QUFFTSxTQUFTVCxjQUFULENBQXdCRyxJQUF4QixFQUE4QjtBQUNuQyxTQUFPQSxLQUFLSSxPQUFMLENBQWEsR0FBYixNQUFzQixDQUE3QjtBQUNEOztBQUVjLFNBQVNOLGlCQUFULENBQTJCRSxJQUEzQixFQUFpQ21DLE9BQWpDLEVBQTBDO0FBQ3ZELFNBQU9ELFNBQVNsQyxJQUFULEVBQWVtQyxRQUFROUIsUUFBdkIsRUFBaUMsdUJBQVFMLElBQVIsRUFBY21DLE9BQWQsQ0FBakMsQ0FBUDtBQUNEIiwiZmlsZSI6ImltcG9ydFR5cGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY29yZU1vZHVsZXMgZnJvbSAncmVzb2x2ZS9saWIvY29yZSdcblxuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuXG5mdW5jdGlvbiBiYXNlTW9kdWxlKG5hbWUpIHtcbiAgaWYgKGlzU2NvcGVkKG5hbWUpKSB7XG4gICAgY29uc3QgW3Njb3BlLCBwa2ddID0gbmFtZS5zcGxpdCgnLycpXG4gICAgcmV0dXJuIGAke3Njb3BlfS8ke3BrZ31gXG4gIH1cbiAgY29uc3QgW3BrZ10gPSBuYW1lLnNwbGl0KCcvJylcbiAgcmV0dXJuIHBrZ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBYnNvbHV0ZShuYW1lKSB7XG4gIHJldHVybiBuYW1lLmluZGV4T2YoJy8nKSA9PT0gMFxufVxuXG4vLyBwYXRoIGlzIGRlZmluZWQgb25seSB3aGVuIGEgcmVzb2x2ZXIgcmVzb2x2ZXMgdG8gYSBub24tc3RhbmRhcmQgcGF0aFxuZXhwb3J0IGZ1bmN0aW9uIGlzQnVpbHRJbihuYW1lLCBzZXR0aW5ncywgcGF0aCkge1xuICBpZiAocGF0aCB8fCAhbmFtZSkgcmV0dXJuIGZhbHNlXG4gIGNvbnN0IGJhc2UgPSBiYXNlTW9kdWxlKG5hbWUpXG4gIGNvbnN0IGV4dHJhcyA9IChzZXR0aW5ncyAmJiBzZXR0aW5nc1snaW1wb3J0L2NvcmUtbW9kdWxlcyddKSB8fCBbXVxuICByZXR1cm4gY29yZU1vZHVsZXNbYmFzZV0gfHwgZXh0cmFzLmluZGV4T2YoYmFzZSkgPiAtMVxufVxuXG5mdW5jdGlvbiBpc0V4dGVybmFsUGF0aChwYXRoLCBuYW1lLCBzZXR0aW5ncykge1xuICBjb25zdCBmb2xkZXJzID0gKHNldHRpbmdzICYmIHNldHRpbmdzWydpbXBvcnQvZXh0ZXJuYWwtbW9kdWxlLWZvbGRlcnMnXSkgfHwgWydub2RlX21vZHVsZXMnXVxuICByZXR1cm4gIXBhdGggfHwgZm9sZGVycy5zb21lKGZvbGRlciA9PiBpc1N1YnBhdGgoZm9sZGVyLCBwYXRoKSlcbn1cblxuZnVuY3Rpb24gaXNTdWJwYXRoKHN1YnBhdGgsIHBhdGgpIHtcbiAgY29uc3Qgbm9ybVN1YnBhdGggPSBzdWJwYXRoLnJlcGxhY2UoL1svXSQvLCAnJylcbiAgaWYgKG5vcm1TdWJwYXRoLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIGNvbnN0IGxlZnQgPSBwYXRoLmluZGV4T2Yobm9ybVN1YnBhdGgpXG4gIGNvbnN0IHJpZ2h0ID0gbGVmdCArIG5vcm1TdWJwYXRoLmxlbmd0aFxuICByZXR1cm4gbGVmdCAhPT0gLTEgJiZcbiAgICAgICAgKGxlZnQgPT09IDAgfHwgbm9ybVN1YnBhdGhbMF0gIT09ICcvJyAmJiBwYXRoW2xlZnQgLSAxXSA9PT0gJy8nKSAmJlxuICAgICAgICAocmlnaHQgPj0gcGF0aC5sZW5ndGggfHwgcGF0aFtyaWdodF0gPT09ICcvJylcbn1cblxuY29uc3QgZXh0ZXJuYWxNb2R1bGVSZWdFeHAgPSAvXlxcdy9cbmV4cG9ydCBmdW5jdGlvbiBpc0V4dGVybmFsTW9kdWxlKG5hbWUsIHNldHRpbmdzLCBwYXRoKSB7XG4gIHJldHVybiBleHRlcm5hbE1vZHVsZVJlZ0V4cC50ZXN0KG5hbWUpICYmIGlzRXh0ZXJuYWxQYXRoKHBhdGgsIG5hbWUsIHNldHRpbmdzKVxufVxuXG5jb25zdCBleHRlcm5hbE1vZHVsZU1haW5SZWdFeHAgPSAvXltcXHddKCg/IVxcLykuKSokL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRXh0ZXJuYWxNb2R1bGVNYWluKG5hbWUsIHNldHRpbmdzLCBwYXRoKSB7XG4gIHJldHVybiBleHRlcm5hbE1vZHVsZU1haW5SZWdFeHAudGVzdChuYW1lKSAmJiBpc0V4dGVybmFsUGF0aChwYXRoLCBuYW1lLCBzZXR0aW5ncylcbn1cblxuY29uc3Qgc2NvcGVkUmVnRXhwID0gL15AW14vXSpcXC8/W14vXSsvXG5leHBvcnQgZnVuY3Rpb24gaXNTY29wZWQobmFtZSkge1xuICByZXR1cm4gbmFtZSAmJiBzY29wZWRSZWdFeHAudGVzdChuYW1lKVxufVxuXG5jb25zdCBzY29wZWRNYWluUmVnRXhwID0gL15AW14vXStcXC8/W14vXSskL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2NvcGVkTWFpbihuYW1lKSB7XG4gIHJldHVybiBuYW1lICYmIHNjb3BlZE1haW5SZWdFeHAudGVzdChuYW1lKVxufVxuXG5mdW5jdGlvbiBpc0ludGVybmFsTW9kdWxlKG5hbWUsIHNldHRpbmdzLCBwYXRoKSB7XG4gIGNvbnN0IGludGVybmFsU2NvcGUgPSAoc2V0dGluZ3MgJiYgc2V0dGluZ3NbJ2ltcG9ydC9pbnRlcm5hbC1yZWdleCddKVxuICBjb25zdCBtYXRjaGVzU2NvcGVkT3JFeHRlcm5hbFJlZ0V4cCA9IHNjb3BlZFJlZ0V4cC50ZXN0KG5hbWUpIHx8IGV4dGVybmFsTW9kdWxlUmVnRXhwLnRlc3QobmFtZSlcbiAgcmV0dXJuIChtYXRjaGVzU2NvcGVkT3JFeHRlcm5hbFJlZ0V4cCAmJiAoaW50ZXJuYWxTY29wZSAmJiBuZXcgUmVnRXhwKGludGVybmFsU2NvcGUpLnRlc3QobmFtZSkgfHwgIWlzRXh0ZXJuYWxQYXRoKHBhdGgsIG5hbWUsIHNldHRpbmdzKSkpXG59XG5cbmZ1bmN0aW9uIGlzUmVsYXRpdmVUb1BhcmVudChuYW1lKSB7XG4gIHJldHVybiAvXlxcLlxcLltcXFxcL10vLnRlc3QobmFtZSlcbn1cblxuY29uc3QgaW5kZXhGaWxlcyA9IFsnLicsICcuLycsICcuL2luZGV4JywgJy4vaW5kZXguanMnXVxuZnVuY3Rpb24gaXNJbmRleChuYW1lKSB7XG4gIHJldHVybiBpbmRleEZpbGVzLmluZGV4T2YobmFtZSkgIT09IC0xXG59XG5cbmZ1bmN0aW9uIGlzUmVsYXRpdmVUb1NpYmxpbmcobmFtZSkge1xuICByZXR1cm4gL15cXC5bXFxcXC9dLy50ZXN0KG5hbWUpXG59XG5cbmZ1bmN0aW9uIHR5cGVUZXN0KG5hbWUsIHNldHRpbmdzLCBwYXRoKSB7XG4gIGlmIChpc0Fic29sdXRlKG5hbWUsIHNldHRpbmdzLCBwYXRoKSkgeyByZXR1cm4gJ2Fic29sdXRlJyB9XG4gIGlmIChpc0J1aWx0SW4obmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnYnVpbHRpbicgfVxuICBpZiAoaXNJbnRlcm5hbE1vZHVsZShuYW1lLCBzZXR0aW5ncywgcGF0aCkpIHsgcmV0dXJuICdpbnRlcm5hbCcgfVxuICBpZiAoaXNFeHRlcm5hbE1vZHVsZShuYW1lLCBzZXR0aW5ncywgcGF0aCkpIHsgcmV0dXJuICdleHRlcm5hbCcgfVxuICBpZiAoaXNTY29wZWQobmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnZXh0ZXJuYWwnIH1cbiAgaWYgKGlzUmVsYXRpdmVUb1BhcmVudChuYW1lLCBzZXR0aW5ncywgcGF0aCkpIHsgcmV0dXJuICdwYXJlbnQnIH1cbiAgaWYgKGlzSW5kZXgobmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnaW5kZXgnIH1cbiAgaWYgKGlzUmVsYXRpdmVUb1NpYmxpbmcobmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnc2libGluZycgfVxuICByZXR1cm4gJ3Vua25vd24nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Njb3BlZE1vZHVsZShuYW1lKSB7XG4gIHJldHVybiBuYW1lLmluZGV4T2YoJ0AnKSA9PT0gMFxufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByZXNvbHZlSW1wb3J0VHlwZShuYW1lLCBjb250ZXh0KSB7XG4gIHJldHVybiB0eXBlVGVzdChuYW1lLCBjb250ZXh0LnNldHRpbmdzLCByZXNvbHZlKG5hbWUsIGNvbnRleHQpKVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL2ltcG9ydFR5cGUuanMiXSwibmFtZXMiOlsiaXNBYnNvbHV0ZSIsImlzQnVpbHRJbiIsImlzRXh0ZXJuYWxNb2R1bGUiLCJpc0V4dGVybmFsTW9kdWxlTWFpbiIsImlzU2NvcGVkIiwiaXNTY29wZWRNYWluIiwiaXNTY29wZWRNb2R1bGUiLCJyZXNvbHZlSW1wb3J0VHlwZSIsImJhc2VNb2R1bGUiLCJuYW1lIiwic3BsaXQiLCJzY29wZSIsInBrZyIsInN0YXJ0c1dpdGgiLCJzZXR0aW5ncyIsInBhdGgiLCJiYXNlIiwiZXh0cmFzIiwiY29yZU1vZHVsZXMiLCJpbmRleE9mIiwiaXNFeHRlcm5hbFBhdGgiLCJmb2xkZXJzIiwic29tZSIsImZvbGRlciIsImlzU3VicGF0aCIsInN1YnBhdGgiLCJub3JtUGF0aCIsInJlcGxhY2UiLCJub3JtU3VicGF0aCIsImxlbmd0aCIsImxlZnQiLCJyaWdodCIsImV4dGVybmFsTW9kdWxlUmVnRXhwIiwidGVzdCIsImV4dGVybmFsTW9kdWxlTWFpblJlZ0V4cCIsInNjb3BlZFJlZ0V4cCIsInNjb3BlZE1haW5SZWdFeHAiLCJpc0ludGVybmFsTW9kdWxlIiwiaW50ZXJuYWxTY29wZSIsIm1hdGNoZXNTY29wZWRPckV4dGVybmFsUmVnRXhwIiwiUmVnRXhwIiwiaXNSZWxhdGl2ZVRvUGFyZW50IiwiaW5kZXhGaWxlcyIsImlzSW5kZXgiLCJpc1JlbGF0aXZlVG9TaWJsaW5nIiwidHlwZVRlc3QiLCJjb250ZXh0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBYWdCQSxVLEdBQUFBLFU7Ozs7O0FBS0FDLFMsR0FBQUEsUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQkFDLGdCLEdBQUFBLGdCOzs7OztBQUtBQyxvQixHQUFBQSxvQjs7Ozs7QUFLQUMsUSxHQUFBQSxROzs7OztBQUtBQyxZLEdBQUFBLFk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUNBQyxjLEdB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UUFBUWhDLFFBQXZCLEVBQWlDLHVCQUFRTCxJQUFSLEVBQWNxQyxPQUFkLENBQWpDLENBQVA7QUFDRCIsImZpbGUiOiJpbXBvcnRUeXBlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvcmVNb2R1bGVzIGZyb20gJ3Jlc29sdmUvbGliL2NvcmUnXG5cbmltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcblxuZnVuY3Rpb24gYmFzZU1vZHVsZShuYW1lKSB7XG4gIGlmIChpc1Njb3BlZChuYW1lKSkge1xuICAgIGNvbnN0IFtzY29wZSwgcGtnXSA9IG5hbWUuc3BsaXQoJy8nKVxuICAgIHJldHVybiBgJHtzY29wZX0vJHtwa2d9YFxuICB9XG4gIGNvbnN0IFtwa2ddID0gbmFtZS5zcGxpdCgnLycpXG4gIHJldHVybiBwa2dcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQWJzb2x1dGUobmFtZSkge1xuICByZXR1cm4gbmFtZSAmJiBuYW1lLnN0YXJ0c1dpdGgoJy8nKVxufVxuXG4vLyBwYXRoIGlzIGRlZmluZWQgb25seSB3aGVuIGEgcmVzb2x2ZXIgcmVzb2x2ZXMgdG8gYSBub24tc3RhbmRhcmQgcGF0aFxuZXhwb3J0IGZ1bmN0aW9uIGlzQnVpbHRJbihuYW1lLCBzZXR0aW5ncywgcGF0aCkge1xuICBpZiAocGF0aCB8fCAhbmFtZSkgcmV0dXJuIGZhbHNlXG4gIGNvbnN0IGJhc2UgPSBiYXNlTW9kdWxlKG5hbWUpXG4gIGNvbnN0IGV4dHJhcyA9IChzZXR0aW5ncyAmJiBzZXR0aW5nc1snaW1wb3J0L2NvcmUtbW9kdWxlcyddKSB8fCBbXVxuICByZXR1cm4gY29yZU1vZHVsZXNbYmFzZV0gfHwgZXh0cmFzLmluZGV4T2YoYmFzZSkgPiAtMVxufVxuXG5mdW5jdGlvbiBpc0V4dGVybmFsUGF0aChwYXRoLCBuYW1lLCBzZXR0aW5ncykge1xuICBjb25zdCBmb2xkZXJzID0gKHNldHRpbmdzICYmIHNldHRpbmdzWydpbXBvcnQvZXh0ZXJuYWwtbW9kdWxlLWZvbGRlcnMnXSkgfHwgWydub2RlX21vZHVsZXMnXVxuICByZXR1cm4gIXBhdGggfHwgZm9sZGVycy5zb21lKGZvbGRlciA9PiBpc1N1YnBhdGgoZm9sZGVyLCBwYXRoKSlcbn1cblxuZnVuY3Rpb24gaXNTdWJwYXRoKHN1YnBhdGgsIHBhdGgpIHtcbiAgY29uc3Qgbm9ybVBhdGggPSBwYXRoLnJlcGxhY2UoL1xcXFwvZywgJy8nKVxuICBjb25zdCBub3JtU3VicGF0aCA9IHN1YnBhdGgucmVwbGFjZSgvXFxcXC9nLCAnLycpLnJlcGxhY2UoL1xcLyQvLCAnJylcbiAgaWYgKG5vcm1TdWJwYXRoLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIGNvbnN0IGxlZnQgPSBub3JtUGF0aC5pbmRleE9mKG5vcm1TdWJwYXRoKVxuICBjb25zdCByaWdodCA9IGxlZnQgKyBub3JtU3VicGF0aC5sZW5ndGhcbiAgcmV0dXJuIGxlZnQgIT09IC0xICYmXG4gICAgICAgIChsZWZ0ID09PSAwIHx8IG5vcm1TdWJwYXRoWzBdICE9PSAnLycgJiYgbm9ybVBhdGhbbGVmdCAtIDFdID09PSAnLycpICYmXG4gICAgICAgIChyaWdodCA+PSBub3JtUGF0aC5sZW5ndGggfHwgbm9ybVBhdGhbcmlnaHRdID09PSAnLycpXG59XG5cbmNvbnN0IGV4dGVybmFsTW9kdWxlUmVnRXhwID0gL15cXHcvXG5leHBvcnQgZnVuY3Rpb24gaXNFeHRlcm5hbE1vZHVsZShuYW1lLCBzZXR0aW5ncywgcGF0aCkge1xuICByZXR1cm4gZXh0ZXJuYWxNb2R1bGVSZWdFeHAudGVzdChuYW1lKSAmJiBpc0V4dGVybmFsUGF0aChwYXRoLCBuYW1lLCBzZXR0aW5ncylcbn1cblxuY29uc3QgZXh0ZXJuYWxNb2R1bGVNYWluUmVnRXhwID0gL15bXFx3XSgoPyFcXC8pLikqJC9cbmV4cG9ydCBmdW5jdGlvbiBpc0V4dGVybmFsTW9kdWxlTWFpbihuYW1lLCBzZXR0aW5ncywgcGF0aCkge1xuICByZXR1cm4gZXh0ZXJuYWxNb2R1bGVNYWluUmVnRXhwLnRlc3QobmFtZSkgJiYgaXNFeHRlcm5hbFBhdGgocGF0aCwgbmFtZSwgc2V0dGluZ3MpXG59XG5cbmNvbnN0IHNjb3BlZFJlZ0V4cCA9IC9eQFteL10qXFwvP1teL10rL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2NvcGVkKG5hbWUpIHtcbiAgcmV0dXJuIG5hbWUgJiYgc2NvcGVkUmVnRXhwLnRlc3QobmFtZSlcbn1cblxuY29uc3Qgc2NvcGVkTWFpblJlZ0V4cCA9IC9eQFteL10rXFwvP1teL10rJC9cbmV4cG9ydCBmdW5jdGlvbiBpc1Njb3BlZE1haW4obmFtZSkge1xuICByZXR1cm4gbmFtZSAmJiBzY29wZWRNYWluUmVnRXhwLnRlc3QobmFtZSlcbn1cblxuZnVuY3Rpb24gaXNJbnRlcm5hbE1vZHVsZShuYW1lLCBzZXR0aW5ncywgcGF0aCkge1xuICBjb25zdCBpbnRlcm5hbFNjb3BlID0gKHNldHRpbmdzICYmIHNldHRpbmdzWydpbXBvcnQvaW50ZXJuYWwtcmVnZXgnXSlcbiAgY29uc3QgbWF0Y2hlc1Njb3BlZE9yRXh0ZXJuYWxSZWdFeHAgPSBzY29wZWRSZWdFeHAudGVzdChuYW1lKSB8fCBleHRlcm5hbE1vZHVsZVJlZ0V4cC50ZXN0KG5hbWUpXG4gIHJldHVybiAobWF0Y2hlc1Njb3BlZE9yRXh0ZXJuYWxSZWdFeHAgJiYgKGludGVybmFsU2NvcGUgJiYgbmV3IFJlZ0V4cChpbnRlcm5hbFNjb3BlKS50ZXN0KG5hbWUpIHx8ICFpc0V4dGVybmFsUGF0aChwYXRoLCBuYW1lLCBzZXR0aW5ncykpKVxufVxuXG5mdW5jdGlvbiBpc1JlbGF0aXZlVG9QYXJlbnQobmFtZSkge1xuICByZXR1cm4vXlxcLlxcLiR8XlxcLlxcLltcXFxcL10vLnRlc3QobmFtZSlcbn1cblxuY29uc3QgaW5kZXhGaWxlcyA9IFsnLicsICcuLycsICcuL2luZGV4JywgJy4vaW5kZXguanMnXVxuZnVuY3Rpb24gaXNJbmRleChuYW1lKSB7XG4gIHJldHVybiBpbmRleEZpbGVzLmluZGV4T2YobmFtZSkgIT09IC0xXG59XG5cbmZ1bmN0aW9uIGlzUmVsYXRpdmVUb1NpYmxpbmcobmFtZSkge1xuICByZXR1cm4gL15cXC5bXFxcXC9dLy50ZXN0KG5hbWUpXG59XG5cbmZ1bmN0aW9uIHR5cGVUZXN0KG5hbWUsIHNldHRpbmdzLCBwYXRoKSB7XG4gIGlmIChpc0Fic29sdXRlKG5hbWUsIHNldHRpbmdzLCBwYXRoKSkgeyByZXR1cm4gJ2Fic29sdXRlJyB9XG4gIGlmIChpc0J1aWx0SW4obmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnYnVpbHRpbicgfVxuICBpZiAoaXNJbnRlcm5hbE1vZHVsZShuYW1lLCBzZXR0aW5ncywgcGF0aCkpIHsgcmV0dXJuICdpbnRlcm5hbCcgfVxuICBpZiAoaXNFeHRlcm5hbE1vZHVsZShuYW1lLCBzZXR0aW5ncywgcGF0aCkpIHsgcmV0dXJuICdleHRlcm5hbCcgfVxuICBpZiAoaXNTY29wZWQobmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnZXh0ZXJuYWwnIH1cbiAgaWYgKGlzUmVsYXRpdmVUb1BhcmVudChuYW1lLCBzZXR0aW5ncywgcGF0aCkpIHsgcmV0dXJuICdwYXJlbnQnIH1cbiAgaWYgKGlzSW5kZXgobmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnaW5kZXgnIH1cbiAgaWYgKGlzUmVsYXRpdmVUb1NpYmxpbmcobmFtZSwgc2V0dGluZ3MsIHBhdGgpKSB7IHJldHVybiAnc2libGluZycgfVxuICByZXR1cm4gJ3Vua25vd24nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Njb3BlZE1vZHVsZShuYW1lKSB7XG4gIHJldHVybiBuYW1lLmluZGV4T2YoJ0AnKSA9PT0gMCAmJiAhbmFtZS5zdGFydHNXaXRoKCdALycpXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlc29sdmVJbXBvcnRUeXBlKG5hbWUsIGNvbnRleHQpIHtcbiAgcmV0dXJuIHR5cGVUZXN0KG5hbWUsIGNvbnRleHQuc2V0dGluZ3MsIHJlc29sdmUobmFtZSwgY29udGV4dCkpXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/core/staticRequire.js b/node_modules/eslint-plugin-import/lib/core/staticRequire.js index 496fe7bc..507dce55 100644 --- a/node_modules/eslint-plugin-import/lib/core/staticRequire.js +++ b/node_modules/eslint-plugin-import/lib/core/staticRequire.js @@ -1,11 +1,11 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = isStaticRequire; -// todo: merge with module visitor -function isStaticRequire(node) { - return node && node.callee && node.callee.type === 'Identifier' && node.callee.name === 'require' && node.arguments.length === 1 && node.arguments[0].type === 'Literal' && typeof node.arguments[0].value === 'string'; +'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default = +isStaticRequire; // todo: merge with module visitor +function isStaticRequire(node) {return node && + node.callee && + node.callee.type === 'Identifier' && + node.callee.name === 'require' && + node.arguments.length === 1 && + node.arguments[0].type === 'Literal' && + typeof node.arguments[0].value === 'string'; } -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3N0YXRpY1JlcXVpcmUuanMiXSwibmFtZXMiOlsiaXNTdGF0aWNSZXF1aXJlIiwibm9kZSIsImNhbGxlZSIsInR5cGUiLCJuYW1lIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidmFsdWUiXSwibWFwcGluZ3MiOiI7Ozs7O2tCQUN3QkEsZTtBQUR4QjtBQUNlLFNBQVNBLGVBQVQsQ0FBeUJDLElBQXpCLEVBQStCO0FBQzVDLFNBQU9BLFFBQ0xBLEtBQUtDLE1BREEsSUFFTEQsS0FBS0MsTUFBTCxDQUFZQyxJQUFaLEtBQXFCLFlBRmhCLElBR0xGLEtBQUtDLE1BQUwsQ0FBWUUsSUFBWixLQUFxQixTQUhoQixJQUlMSCxLQUFLSSxTQUFMLENBQWVDLE1BQWYsS0FBMEIsQ0FKckIsSUFLTEwsS0FBS0ksU0FBTCxDQUFlLENBQWYsRUFBa0JGLElBQWxCLEtBQTJCLFNBTHRCLElBTUwsT0FBT0YsS0FBS0ksU0FBTCxDQUFlLENBQWYsRUFBa0JFLEtBQXpCLEtBQW1DLFFBTnJDO0FBT0QiLCJmaWxlIjoic3RhdGljUmVxdWlyZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRvZG86IG1lcmdlIHdpdGggbW9kdWxlIHZpc2l0b3JcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGlzU3RhdGljUmVxdWlyZShub2RlKSB7XG4gIHJldHVybiBub2RlICYmXG4gICAgbm9kZS5jYWxsZWUgJiZcbiAgICBub2RlLmNhbGxlZS50eXBlID09PSAnSWRlbnRpZmllcicgJiZcbiAgICBub2RlLmNhbGxlZS5uYW1lID09PSAncmVxdWlyZScgJiZcbiAgICBub2RlLmFyZ3VtZW50cy5sZW5ndGggPT09IDEgJiZcbiAgICBub2RlLmFyZ3VtZW50c1swXS50eXBlID09PSAnTGl0ZXJhbCcgJiZcbiAgICB0eXBlb2Ygbm9kZS5hcmd1bWVudHNbMF0udmFsdWUgPT09ICdzdHJpbmcnXG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3N0YXRpY1JlcXVpcmUuanMiXSwibmFtZXMiOlsiaXNTdGF0aWNSZXF1aXJlIiwibm9kZSIsImNhbGxlZSIsInR5cGUiLCJuYW1lIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidmFsdWUiXSwibWFwcGluZ3MiOiI7QUFDd0JBLGUsRUFEeEI7QUFDZSxTQUFTQSxlQUFULENBQXlCQyxJQUF6QixFQUErQixDQUM1QyxPQUFPQTtBQUNMQSxPQUFLQyxNQURBO0FBRUxELE9BQUtDLE1BQUwsQ0FBWUMsSUFBWixLQUFxQixZQUZoQjtBQUdMRixPQUFLQyxNQUFMLENBQVlFLElBQVosS0FBcUIsU0FIaEI7QUFJTEgsT0FBS0ksU0FBTCxDQUFlQyxNQUFmLEtBQTBCLENBSnJCO0FBS0xMLE9BQUtJLFNBQUwsQ0FBZSxDQUFmLEVBQWtCRixJQUFsQixLQUEyQixTQUx0QjtBQU1MLFNBQU9GLEtBQUtJLFNBQUwsQ0FBZSxDQUFmLEVBQWtCRSxLQUF6QixLQUFtQyxRQU5yQztBQU9EIiwiZmlsZSI6InN0YXRpY1JlcXVpcmUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0b2RvOiBtZXJnZSB3aXRoIG1vZHVsZSB2aXNpdG9yXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBpc1N0YXRpY1JlcXVpcmUobm9kZSkge1xuICByZXR1cm4gbm9kZSAmJlxuICAgIG5vZGUuY2FsbGVlICYmXG4gICAgbm9kZS5jYWxsZWUudHlwZSA9PT0gJ0lkZW50aWZpZXInICYmXG4gICAgbm9kZS5jYWxsZWUubmFtZSA9PT0gJ3JlcXVpcmUnICYmXG4gICAgbm9kZS5hcmd1bWVudHMubGVuZ3RoID09PSAxICYmXG4gICAgbm9kZS5hcmd1bWVudHNbMF0udHlwZSA9PT0gJ0xpdGVyYWwnICYmXG4gICAgdHlwZW9mIG5vZGUuYXJndW1lbnRzWzBdLnZhbHVlID09PSAnc3RyaW5nJ1xufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/docsUrl.js b/node_modules/eslint-plugin-import/lib/docsUrl.js index 8a94e8cc..d8aae5fc 100644 --- a/node_modules/eslint-plugin-import/lib/docsUrl.js +++ b/node_modules/eslint-plugin-import/lib/docsUrl.js @@ -1,21 +1,8 @@ -'use strict'; +'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default = -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = docsUrl; -var _package = require('../package.json'); - -var _package2 = _interopRequireDefault(_package); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const repoUrl = 'https://github.com/benmosher/eslint-plugin-import'; - -function docsUrl(ruleName) { - let commitish = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : `v${_package2.default.version}`; +docsUrl;var _package = require('../package.json');var _package2 = _interopRequireDefault(_package);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}const repoUrl = 'https://github.com/benmosher/eslint-plugin-import';function docsUrl(ruleName) {let commitish = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : `v${_package2.default.version}`; return `${repoUrl}/blob/${commitish}/docs/rules/${ruleName}.md`; } -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kb2NzVXJsLmpzIl0sIm5hbWVzIjpbImRvY3NVcmwiLCJyZXBvVXJsIiwicnVsZU5hbWUiLCJjb21taXRpc2giLCJwa2ciLCJ2ZXJzaW9uIl0sIm1hcHBpbmdzIjoiOzs7OztrQkFJd0JBLE87O0FBSnhCOzs7Ozs7QUFFQSxNQUFNQyxVQUFVLG1EQUFoQjs7QUFFZSxTQUFTRCxPQUFULENBQWlCRSxRQUFqQixFQUEwRDtBQUFBLE1BQS9CQyxTQUErQix1RUFBbEIsSUFBR0Msa0JBQUlDLE9BQVEsRUFBRzs7QUFDdkUsU0FBUSxHQUFFSixPQUFRLFNBQVFFLFNBQVUsZUFBY0QsUUFBUyxLQUEzRDtBQUNEIiwiZmlsZSI6ImRvY3NVcmwuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGtnIGZyb20gJy4uL3BhY2thZ2UuanNvbidcblxuY29uc3QgcmVwb1VybCA9ICdodHRwczovL2dpdGh1Yi5jb20vYmVubW9zaGVyL2VzbGludC1wbHVnaW4taW1wb3J0J1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBkb2NzVXJsKHJ1bGVOYW1lLCBjb21taXRpc2ggPSBgdiR7cGtnLnZlcnNpb259YCkge1xuICByZXR1cm4gYCR7cmVwb1VybH0vYmxvYi8ke2NvbW1pdGlzaH0vZG9jcy9ydWxlcy8ke3J1bGVOYW1lfS5tZGBcbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kb2NzVXJsLmpzIl0sIm5hbWVzIjpbImRvY3NVcmwiLCJyZXBvVXJsIiwicnVsZU5hbWUiLCJjb21taXRpc2giLCJwa2ciLCJ2ZXJzaW9uIl0sIm1hcHBpbmdzIjoiOzs7O0FBSXdCQSxPLENBSnhCLDBDLDhJQUVBLE1BQU1DLFVBQVUsbURBQWhCLENBRWUsU0FBU0QsT0FBVCxDQUFpQkUsUUFBakIsRUFBMEQsS0FBL0JDLFNBQStCLHVFQUFsQixJQUFHQyxrQkFBSUMsT0FBUSxFQUFHO0FBQ3ZFLFNBQVEsR0FBRUosT0FBUSxTQUFRRSxTQUFVLGVBQWNELFFBQVMsS0FBM0Q7QUFDRCIsImZpbGUiOiJkb2NzVXJsLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBrZyBmcm9tICcuLi9wYWNrYWdlLmpzb24nXG5cbmNvbnN0IHJlcG9VcmwgPSAnaHR0cHM6Ly9naXRodWIuY29tL2Jlbm1vc2hlci9lc2xpbnQtcGx1Z2luLWltcG9ydCdcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZG9jc1VybChydWxlTmFtZSwgY29tbWl0aXNoID0gYHYke3BrZy52ZXJzaW9ufWApIHtcbiAgcmV0dXJuIGAke3JlcG9Vcmx9L2Jsb2IvJHtjb21taXRpc2h9L2RvY3MvcnVsZXMvJHtydWxlTmFtZX0ubWRgXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/importDeclaration.js b/node_modules/eslint-plugin-import/lib/importDeclaration.js index 8c64ac3d..eefe50cc 100644 --- a/node_modules/eslint-plugin-import/lib/importDeclaration.js +++ b/node_modules/eslint-plugin-import/lib/importDeclaration.js @@ -1,11 +1,5 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = importDeclaration; -function importDeclaration(context) { +"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = importDeclaration;function importDeclaration(context) { var ancestors = context.getAncestors(); return ancestors[ancestors.length - 1]; } -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbXBvcnREZWNsYXJhdGlvbi5qcyJdLCJuYW1lcyI6WyJpbXBvcnREZWNsYXJhdGlvbiIsImNvbnRleHQiLCJhbmNlc3RvcnMiLCJnZXRBbmNlc3RvcnMiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI7Ozs7O2tCQUF3QkEsaUI7QUFBVCxTQUFTQSxpQkFBVCxDQUEyQkMsT0FBM0IsRUFBb0M7QUFDakQsTUFBSUMsWUFBWUQsUUFBUUUsWUFBUixFQUFoQjtBQUNBLFNBQU9ELFVBQVVBLFVBQVVFLE1BQVYsR0FBbUIsQ0FBN0IsQ0FBUDtBQUNEIiwiZmlsZSI6ImltcG9ydERlY2xhcmF0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gaW1wb3J0RGVjbGFyYXRpb24oY29udGV4dCkge1xuICB2YXIgYW5jZXN0b3JzID0gY29udGV4dC5nZXRBbmNlc3RvcnMoKVxuICByZXR1cm4gYW5jZXN0b3JzW2FuY2VzdG9ycy5sZW5ndGggLSAxXVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbXBvcnREZWNsYXJhdGlvbi5qcyJdLCJuYW1lcyI6WyJpbXBvcnREZWNsYXJhdGlvbiIsImNvbnRleHQiLCJhbmNlc3RvcnMiLCJnZXRBbmNlc3RvcnMiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI2RkFBd0JBLGlCLENBQVQsU0FBU0EsaUJBQVQsQ0FBMkJDLE9BQTNCLEVBQW9DO0FBQ2pELE1BQUlDLFlBQVlELFFBQVFFLFlBQVIsRUFBaEI7QUFDQSxTQUFPRCxVQUFVQSxVQUFVRSxNQUFWLEdBQW1CLENBQTdCLENBQVA7QUFDRCIsImZpbGUiOiJpbXBvcnREZWNsYXJhdGlvbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGltcG9ydERlY2xhcmF0aW9uKGNvbnRleHQpIHtcbiAgdmFyIGFuY2VzdG9ycyA9IGNvbnRleHQuZ2V0QW5jZXN0b3JzKClcbiAgcmV0dXJuIGFuY2VzdG9yc1thbmNlc3RvcnMubGVuZ3RoIC0gMV1cbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/index.js b/node_modules/eslint-plugin-import/lib/index.js index 49814970..6497f690 100644 --- a/node_modules/eslint-plugin-import/lib/index.js +++ b/node_modules/eslint-plugin-import/lib/index.js @@ -1,9 +1,4 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -const rules = exports.rules = { +'use strict';Object.defineProperty(exports, "__esModule", { value: true });const rules = exports.rules = { 'no-unresolved': require('./rules/no-unresolved'), 'named': require('./rules/named'), 'default': require('./rules/default'), @@ -52,8 +47,8 @@ const rules = exports.rules = { 'no-deprecated': require('./rules/no-deprecated'), // deprecated aliases to rules - 'imports-first': require('./rules/imports-first') -}; + 'imports-first': require('./rules/imports-first') }; + const configs = exports.configs = { 'recommended': require('../config/recommended'), @@ -68,6 +63,5 @@ const configs = exports.configs = { 'react': require('../config/react'), 'react-native': require('../config/react-native'), 'electron': require('../config/electron'), - 'typescript': require('../config/typescript') -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJydWxlcyIsInJlcXVpcmUiLCJjb25maWdzIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFPLE1BQU1BLHdCQUFRO0FBQ25CLG1CQUFpQkMsUUFBUSx1QkFBUixDQURFO0FBRW5CLFdBQVNBLFFBQVEsZUFBUixDQUZVO0FBR25CLGFBQVdBLFFBQVEsaUJBQVIsQ0FIUTtBQUluQixlQUFhQSxRQUFRLG1CQUFSLENBSk07QUFLbkIsa0JBQWdCQSxRQUFRLHNCQUFSLENBTEc7QUFNbkIsWUFBVUEsUUFBUSxnQkFBUixDQU5TO0FBT25CLHdCQUFzQkEsUUFBUSw0QkFBUixDQVBIO0FBUW5CLGdCQUFjQSxRQUFRLG9CQUFSLENBUks7QUFTbkIseUJBQXVCQSxRQUFRLDZCQUFSLENBVEo7QUFVbkIseUJBQXVCQSxRQUFRLDZCQUFSLENBVko7QUFXbkIsbUJBQWlCQSxRQUFRLHVCQUFSLENBWEU7QUFZbkIsZ0NBQThCQSxRQUFRLG9DQUFSLENBWlg7O0FBY25CLG9CQUFrQkEsUUFBUSx3QkFBUixDQWRDO0FBZW5CLGNBQVlBLFFBQVEsa0JBQVIsQ0FmTztBQWdCbkIsc0JBQW9CQSxRQUFRLDBCQUFSLENBaEJEO0FBaUJuQix5QkFBdUJBLFFBQVEsNkJBQVIsQ0FqQko7QUFrQm5CLGdDQUE4QkEsUUFBUSxvQ0FBUixDQWxCWDtBQW1CbkIsaUNBQStCQSxRQUFRLHFDQUFSLENBbkJaO0FBb0JuQix1QkFBcUJBLFFBQVEsMkJBQVIsQ0FwQkY7O0FBc0JuQixpQkFBZUEsUUFBUSxxQkFBUixDQXRCSTtBQXVCbkIsWUFBVUEsUUFBUSxnQkFBUixDQXZCUztBQXdCbkIsbUJBQWlCQSxRQUFRLHVCQUFSLENBeEJFO0FBeUJuQixXQUFTQSxRQUFRLGVBQVIsQ0F6QlU7QUEwQm5CLHNCQUFvQkEsUUFBUSwwQkFBUixDQTFCRDtBQTJCbkIsZ0NBQThCQSxRQUFRLG9DQUFSLENBM0JYO0FBNEJuQixzQkFBb0JBLFFBQVEsMEJBQVIsQ0E1QkQ7QUE2Qm5CLHVCQUFxQkEsUUFBUSwyQkFBUixDQTdCRjtBQThCbkIsOEJBQTRCQSxRQUFRLGtDQUFSLENBOUJUO0FBK0JuQixXQUFTQSxRQUFRLGVBQVIsQ0EvQlU7QUFnQ25CLDBCQUF3QkEsUUFBUSw4QkFBUixDQWhDTDtBQWlDbkIsMkJBQXlCQSxRQUFRLCtCQUFSLENBakNOO0FBa0NuQix1QkFBcUJBLFFBQVEsMkJBQVIsQ0FsQ0Y7QUFtQ25CLHFCQUFtQkEsUUFBUSx5QkFBUixDQW5DQTtBQW9DbkIsd0JBQXNCQSxRQUFRLDRCQUFSLENBcENIO0FBcUNuQixpQkFBZUEsUUFBUSxxQkFBUixDQXJDSTtBQXNDbkIsMEJBQXdCQSxRQUFRLDhCQUFSLENBdENMO0FBdUNuQiw4QkFBNEJBLFFBQVEsa0NBQVIsQ0F2Q1Q7QUF3Q25CLDhCQUE0QkEsUUFBUSxrQ0FBUixDQXhDVDs7QUEwQ25CO0FBQ0Esa0JBQWdCQSxRQUFRLHNCQUFSLENBM0NHOztBQTZDbkI7QUFDQSxtQkFBaUJBLFFBQVEsdUJBQVIsQ0E5Q0U7O0FBZ0RuQjtBQUNBLG1CQUFpQkEsUUFBUSx1QkFBUjtBQWpERSxDQUFkOztBQW9EQSxNQUFNQyw0QkFBVTtBQUNyQixpQkFBZUQsUUFBUSx1QkFBUixDQURNOztBQUdyQixZQUFVQSxRQUFRLGtCQUFSLENBSFc7QUFJckIsY0FBWUEsUUFBUSxvQkFBUixDQUpTOztBQU1yQjtBQUNBLGFBQVdBLFFBQVEsbUJBQVIsQ0FQVTs7QUFTckI7QUFDQSxXQUFTQSxRQUFRLGlCQUFSLENBVlk7QUFXckIsa0JBQWdCQSxRQUFRLHdCQUFSLENBWEs7QUFZckIsY0FBWUEsUUFBUSxvQkFBUixDQVpTO0FBYXJCLGdCQUFjQSxRQUFRLHNCQUFSO0FBYk8sQ0FBaEIiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcnVsZXMgPSB7XG4gICduby11bnJlc29sdmVkJzogcmVxdWlyZSgnLi9ydWxlcy9uby11bnJlc29sdmVkJyksXG4gICduYW1lZCc6IHJlcXVpcmUoJy4vcnVsZXMvbmFtZWQnKSxcbiAgJ2RlZmF1bHQnOiByZXF1aXJlKCcuL3J1bGVzL2RlZmF1bHQnKSxcbiAgJ25hbWVzcGFjZSc6IHJlcXVpcmUoJy4vcnVsZXMvbmFtZXNwYWNlJyksXG4gICduby1uYW1lc3BhY2UnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5hbWVzcGFjZScpLFxuICAnZXhwb3J0JzogcmVxdWlyZSgnLi9ydWxlcy9leHBvcnQnKSxcbiAgJ25vLW11dGFibGUtZXhwb3J0cyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tbXV0YWJsZS1leHBvcnRzJyksXG4gICdleHRlbnNpb25zJzogcmVxdWlyZSgnLi9ydWxlcy9leHRlbnNpb25zJyksXG4gICduby1yZXN0cmljdGVkLXBhdGhzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1yZXN0cmljdGVkLXBhdGhzJyksXG4gICduby1pbnRlcm5hbC1tb2R1bGVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1pbnRlcm5hbC1tb2R1bGVzJyksXG4gICdncm91cC1leHBvcnRzJzogcmVxdWlyZSgnLi9ydWxlcy9ncm91cC1leHBvcnRzJyksXG4gICduby1yZWxhdGl2ZS1wYXJlbnQtaW1wb3J0cyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tcmVsYXRpdmUtcGFyZW50LWltcG9ydHMnKSxcblxuICAnbm8tc2VsZi1pbXBvcnQnOiByZXF1aXJlKCcuL3J1bGVzL25vLXNlbGYtaW1wb3J0JyksXG4gICduby1jeWNsZSc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tY3ljbGUnKSxcbiAgJ25vLW5hbWVkLWRlZmF1bHQnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5hbWVkLWRlZmF1bHQnKSxcbiAgJ25vLW5hbWVkLWFzLWRlZmF1bHQnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5hbWVkLWFzLWRlZmF1bHQnKSxcbiAgJ25vLW5hbWVkLWFzLWRlZmF1bHQtbWVtYmVyJzogcmVxdWlyZSgnLi9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LW1lbWJlcicpLFxuICAnbm8tYW5vbnltb3VzLWRlZmF1bHQtZXhwb3J0JzogcmVxdWlyZSgnLi9ydWxlcy9uby1hbm9ueW1vdXMtZGVmYXVsdC1leHBvcnQnKSxcbiAgJ25vLXVudXNlZC1tb2R1bGVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby11bnVzZWQtbW9kdWxlcycpLFxuXG4gICduby1jb21tb25qcyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tY29tbW9uanMnKSxcbiAgJ25vLWFtZCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tYW1kJyksXG4gICduby1kdXBsaWNhdGVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1kdXBsaWNhdGVzJyksXG4gICdmaXJzdCc6IHJlcXVpcmUoJy4vcnVsZXMvZmlyc3QnKSxcbiAgJ21heC1kZXBlbmRlbmNpZXMnOiByZXF1aXJlKCcuL3J1bGVzL21heC1kZXBlbmRlbmNpZXMnKSxcbiAgJ25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcycpLFxuICAnbm8tYWJzb2x1dGUtcGF0aCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tYWJzb2x1dGUtcGF0aCcpLFxuICAnbm8tbm9kZWpzLW1vZHVsZXMnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5vZGVqcy1tb2R1bGVzJyksXG4gICduby13ZWJwYWNrLWxvYWRlci1zeW50YXgnOiByZXF1aXJlKCcuL3J1bGVzL25vLXdlYnBhY2stbG9hZGVyLXN5bnRheCcpLFxuICAnb3JkZXInOiByZXF1aXJlKCcuL3J1bGVzL29yZGVyJyksXG4gICduZXdsaW5lLWFmdGVyLWltcG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbmV3bGluZS1hZnRlci1pbXBvcnQnKSxcbiAgJ3ByZWZlci1kZWZhdWx0LWV4cG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvcHJlZmVyLWRlZmF1bHQtZXhwb3J0JyksXG4gICduby1kZWZhdWx0LWV4cG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tZGVmYXVsdC1leHBvcnQnKSxcbiAgJ25vLW5hbWVkLWV4cG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tbmFtZWQtZXhwb3J0JyksXG4gICduby1keW5hbWljLXJlcXVpcmUnOiByZXF1aXJlKCcuL3J1bGVzL25vLWR5bmFtaWMtcmVxdWlyZScpLFxuICAndW5hbWJpZ3VvdXMnOiByZXF1aXJlKCcuL3J1bGVzL3VuYW1iaWd1b3VzJyksXG4gICduby11bmFzc2lnbmVkLWltcG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tdW5hc3NpZ25lZC1pbXBvcnQnKSxcbiAgJ25vLXVzZWxlc3MtcGF0aC1zZWdtZW50cyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tdXNlbGVzcy1wYXRoLXNlZ21lbnRzJyksXG4gICdkeW5hbWljLWltcG9ydC1jaHVua25hbWUnOiByZXF1aXJlKCcuL3J1bGVzL2R5bmFtaWMtaW1wb3J0LWNodW5rbmFtZScpLFxuXG4gIC8vIGV4cG9ydFxuICAnZXhwb3J0cy1sYXN0JzogcmVxdWlyZSgnLi9ydWxlcy9leHBvcnRzLWxhc3QnKSxcblxuICAvLyBtZXRhZGF0YS1iYXNlZFxuICAnbm8tZGVwcmVjYXRlZCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tZGVwcmVjYXRlZCcpLFxuXG4gIC8vIGRlcHJlY2F0ZWQgYWxpYXNlcyB0byBydWxlc1xuICAnaW1wb3J0cy1maXJzdCc6IHJlcXVpcmUoJy4vcnVsZXMvaW1wb3J0cy1maXJzdCcpLFxufVxuXG5leHBvcnQgY29uc3QgY29uZmlncyA9IHtcbiAgJ3JlY29tbWVuZGVkJzogcmVxdWlyZSgnLi4vY29uZmlnL3JlY29tbWVuZGVkJyksXG5cbiAgJ2Vycm9ycyc6IHJlcXVpcmUoJy4uL2NvbmZpZy9lcnJvcnMnKSxcbiAgJ3dhcm5pbmdzJzogcmVxdWlyZSgnLi4vY29uZmlnL3dhcm5pbmdzJyksXG5cbiAgLy8gc2hoaGguLi4gd29yayBpbiBwcm9ncmVzcyBcInNlY3JldFwiIHJ1bGVzXG4gICdzdGFnZS0wJzogcmVxdWlyZSgnLi4vY29uZmlnL3N0YWdlLTAnKSxcblxuICAvLyB1c2VmdWwgc3R1ZmYgZm9yIGZvbGtzIHVzaW5nIHZhcmlvdXMgZW52aXJvbm1lbnRzXG4gICdyZWFjdCc6IHJlcXVpcmUoJy4uL2NvbmZpZy9yZWFjdCcpLFxuICAncmVhY3QtbmF0aXZlJzogcmVxdWlyZSgnLi4vY29uZmlnL3JlYWN0LW5hdGl2ZScpLFxuICAnZWxlY3Ryb24nOiByZXF1aXJlKCcuLi9jb25maWcvZWxlY3Ryb24nKSxcbiAgJ3R5cGVzY3JpcHQnOiByZXF1aXJlKCcuLi9jb25maWcvdHlwZXNjcmlwdCcpLFxufVxuIl19 \ No newline at end of file + 'typescript': require('../config/typescript') }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJydWxlcyIsInJlcXVpcmUiLCJjb25maWdzIl0sIm1hcHBpbmdzIjoiMkVBQU8sTUFBTUEsd0JBQVE7QUFDbkIsbUJBQWlCQyxRQUFRLHVCQUFSLENBREU7QUFFbkIsV0FBU0EsUUFBUSxlQUFSLENBRlU7QUFHbkIsYUFBV0EsUUFBUSxpQkFBUixDQUhRO0FBSW5CLGVBQWFBLFFBQVEsbUJBQVIsQ0FKTTtBQUtuQixrQkFBZ0JBLFFBQVEsc0JBQVIsQ0FMRztBQU1uQixZQUFVQSxRQUFRLGdCQUFSLENBTlM7QUFPbkIsd0JBQXNCQSxRQUFRLDRCQUFSLENBUEg7QUFRbkIsZ0JBQWNBLFFBQVEsb0JBQVIsQ0FSSztBQVNuQix5QkFBdUJBLFFBQVEsNkJBQVIsQ0FUSjtBQVVuQix5QkFBdUJBLFFBQVEsNkJBQVIsQ0FWSjtBQVduQixtQkFBaUJBLFFBQVEsdUJBQVIsQ0FYRTtBQVluQixnQ0FBOEJBLFFBQVEsb0NBQVIsQ0FaWDs7QUFjbkIsb0JBQWtCQSxRQUFRLHdCQUFSLENBZEM7QUFlbkIsY0FBWUEsUUFBUSxrQkFBUixDQWZPO0FBZ0JuQixzQkFBb0JBLFFBQVEsMEJBQVIsQ0FoQkQ7QUFpQm5CLHlCQUF1QkEsUUFBUSw2QkFBUixDQWpCSjtBQWtCbkIsZ0NBQThCQSxRQUFRLG9DQUFSLENBbEJYO0FBbUJuQixpQ0FBK0JBLFFBQVEscUNBQVIsQ0FuQlo7QUFvQm5CLHVCQUFxQkEsUUFBUSwyQkFBUixDQXBCRjs7QUFzQm5CLGlCQUFlQSxRQUFRLHFCQUFSLENBdEJJO0FBdUJuQixZQUFVQSxRQUFRLGdCQUFSLENBdkJTO0FBd0JuQixtQkFBaUJBLFFBQVEsdUJBQVIsQ0F4QkU7QUF5Qm5CLFdBQVNBLFFBQVEsZUFBUixDQXpCVTtBQTBCbkIsc0JBQW9CQSxRQUFRLDBCQUFSLENBMUJEO0FBMkJuQixnQ0FBOEJBLFFBQVEsb0NBQVIsQ0EzQlg7QUE0Qm5CLHNCQUFvQkEsUUFBUSwwQkFBUixDQTVCRDtBQTZCbkIsdUJBQXFCQSxRQUFRLDJCQUFSLENBN0JGO0FBOEJuQiw4QkFBNEJBLFFBQVEsa0NBQVIsQ0E5QlQ7QUErQm5CLFdBQVNBLFFBQVEsZUFBUixDQS9CVTtBQWdDbkIsMEJBQXdCQSxRQUFRLDhCQUFSLENBaENMO0FBaUNuQiwyQkFBeUJBLFFBQVEsK0JBQVIsQ0FqQ047QUFrQ25CLHVCQUFxQkEsUUFBUSwyQkFBUixDQWxDRjtBQW1DbkIscUJBQW1CQSxRQUFRLHlCQUFSLENBbkNBO0FBb0NuQix3QkFBc0JBLFFBQVEsNEJBQVIsQ0FwQ0g7QUFxQ25CLGlCQUFlQSxRQUFRLHFCQUFSLENBckNJO0FBc0NuQiwwQkFBd0JBLFFBQVEsOEJBQVIsQ0F0Q0w7QUF1Q25CLDhCQUE0QkEsUUFBUSxrQ0FBUixDQXZDVDtBQXdDbkIsOEJBQTRCQSxRQUFRLGtDQUFSLENBeENUOztBQTBDbkI7QUFDQSxrQkFBZ0JBLFFBQVEsc0JBQVIsQ0EzQ0c7O0FBNkNuQjtBQUNBLG1CQUFpQkEsUUFBUSx1QkFBUixDQTlDRTs7QUFnRG5CO0FBQ0EsbUJBQWlCQSxRQUFRLHVCQUFSLENBakRFLEVBQWQ7OztBQW9EQSxNQUFNQyw0QkFBVTtBQUNyQixpQkFBZUQsUUFBUSx1QkFBUixDQURNOztBQUdyQixZQUFVQSxRQUFRLGtCQUFSLENBSFc7QUFJckIsY0FBWUEsUUFBUSxvQkFBUixDQUpTOztBQU1yQjtBQUNBLGFBQVdBLFFBQVEsbUJBQVIsQ0FQVTs7QUFTckI7QUFDQSxXQUFTQSxRQUFRLGlCQUFSLENBVlk7QUFXckIsa0JBQWdCQSxRQUFRLHdCQUFSLENBWEs7QUFZckIsY0FBWUEsUUFBUSxvQkFBUixDQVpTO0FBYXJCLGdCQUFjQSxRQUFRLHNCQUFSLENBYk8sRUFBaEIiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcnVsZXMgPSB7XG4gICduby11bnJlc29sdmVkJzogcmVxdWlyZSgnLi9ydWxlcy9uby11bnJlc29sdmVkJyksXG4gICduYW1lZCc6IHJlcXVpcmUoJy4vcnVsZXMvbmFtZWQnKSxcbiAgJ2RlZmF1bHQnOiByZXF1aXJlKCcuL3J1bGVzL2RlZmF1bHQnKSxcbiAgJ25hbWVzcGFjZSc6IHJlcXVpcmUoJy4vcnVsZXMvbmFtZXNwYWNlJyksXG4gICduby1uYW1lc3BhY2UnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5hbWVzcGFjZScpLFxuICAnZXhwb3J0JzogcmVxdWlyZSgnLi9ydWxlcy9leHBvcnQnKSxcbiAgJ25vLW11dGFibGUtZXhwb3J0cyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tbXV0YWJsZS1leHBvcnRzJyksXG4gICdleHRlbnNpb25zJzogcmVxdWlyZSgnLi9ydWxlcy9leHRlbnNpb25zJyksXG4gICduby1yZXN0cmljdGVkLXBhdGhzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1yZXN0cmljdGVkLXBhdGhzJyksXG4gICduby1pbnRlcm5hbC1tb2R1bGVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1pbnRlcm5hbC1tb2R1bGVzJyksXG4gICdncm91cC1leHBvcnRzJzogcmVxdWlyZSgnLi9ydWxlcy9ncm91cC1leHBvcnRzJyksXG4gICduby1yZWxhdGl2ZS1wYXJlbnQtaW1wb3J0cyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tcmVsYXRpdmUtcGFyZW50LWltcG9ydHMnKSxcblxuICAnbm8tc2VsZi1pbXBvcnQnOiByZXF1aXJlKCcuL3J1bGVzL25vLXNlbGYtaW1wb3J0JyksXG4gICduby1jeWNsZSc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tY3ljbGUnKSxcbiAgJ25vLW5hbWVkLWRlZmF1bHQnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5hbWVkLWRlZmF1bHQnKSxcbiAgJ25vLW5hbWVkLWFzLWRlZmF1bHQnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5hbWVkLWFzLWRlZmF1bHQnKSxcbiAgJ25vLW5hbWVkLWFzLWRlZmF1bHQtbWVtYmVyJzogcmVxdWlyZSgnLi9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LW1lbWJlcicpLFxuICAnbm8tYW5vbnltb3VzLWRlZmF1bHQtZXhwb3J0JzogcmVxdWlyZSgnLi9ydWxlcy9uby1hbm9ueW1vdXMtZGVmYXVsdC1leHBvcnQnKSxcbiAgJ25vLXVudXNlZC1tb2R1bGVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby11bnVzZWQtbW9kdWxlcycpLFxuXG4gICduby1jb21tb25qcyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tY29tbW9uanMnKSxcbiAgJ25vLWFtZCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tYW1kJyksXG4gICduby1kdXBsaWNhdGVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1kdXBsaWNhdGVzJyksXG4gICdmaXJzdCc6IHJlcXVpcmUoJy4vcnVsZXMvZmlyc3QnKSxcbiAgJ21heC1kZXBlbmRlbmNpZXMnOiByZXF1aXJlKCcuL3J1bGVzL21heC1kZXBlbmRlbmNpZXMnKSxcbiAgJ25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzJzogcmVxdWlyZSgnLi9ydWxlcy9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcycpLFxuICAnbm8tYWJzb2x1dGUtcGF0aCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tYWJzb2x1dGUtcGF0aCcpLFxuICAnbm8tbm9kZWpzLW1vZHVsZXMnOiByZXF1aXJlKCcuL3J1bGVzL25vLW5vZGVqcy1tb2R1bGVzJyksXG4gICduby13ZWJwYWNrLWxvYWRlci1zeW50YXgnOiByZXF1aXJlKCcuL3J1bGVzL25vLXdlYnBhY2stbG9hZGVyLXN5bnRheCcpLFxuICAnb3JkZXInOiByZXF1aXJlKCcuL3J1bGVzL29yZGVyJyksXG4gICduZXdsaW5lLWFmdGVyLWltcG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbmV3bGluZS1hZnRlci1pbXBvcnQnKSxcbiAgJ3ByZWZlci1kZWZhdWx0LWV4cG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvcHJlZmVyLWRlZmF1bHQtZXhwb3J0JyksXG4gICduby1kZWZhdWx0LWV4cG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tZGVmYXVsdC1leHBvcnQnKSxcbiAgJ25vLW5hbWVkLWV4cG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tbmFtZWQtZXhwb3J0JyksXG4gICduby1keW5hbWljLXJlcXVpcmUnOiByZXF1aXJlKCcuL3J1bGVzL25vLWR5bmFtaWMtcmVxdWlyZScpLFxuICAndW5hbWJpZ3VvdXMnOiByZXF1aXJlKCcuL3J1bGVzL3VuYW1iaWd1b3VzJyksXG4gICduby11bmFzc2lnbmVkLWltcG9ydCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tdW5hc3NpZ25lZC1pbXBvcnQnKSxcbiAgJ25vLXVzZWxlc3MtcGF0aC1zZWdtZW50cyc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tdXNlbGVzcy1wYXRoLXNlZ21lbnRzJyksXG4gICdkeW5hbWljLWltcG9ydC1jaHVua25hbWUnOiByZXF1aXJlKCcuL3J1bGVzL2R5bmFtaWMtaW1wb3J0LWNodW5rbmFtZScpLFxuXG4gIC8vIGV4cG9ydFxuICAnZXhwb3J0cy1sYXN0JzogcmVxdWlyZSgnLi9ydWxlcy9leHBvcnRzLWxhc3QnKSxcblxuICAvLyBtZXRhZGF0YS1iYXNlZFxuICAnbm8tZGVwcmVjYXRlZCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8tZGVwcmVjYXRlZCcpLFxuXG4gIC8vIGRlcHJlY2F0ZWQgYWxpYXNlcyB0byBydWxlc1xuICAnaW1wb3J0cy1maXJzdCc6IHJlcXVpcmUoJy4vcnVsZXMvaW1wb3J0cy1maXJzdCcpLFxufVxuXG5leHBvcnQgY29uc3QgY29uZmlncyA9IHtcbiAgJ3JlY29tbWVuZGVkJzogcmVxdWlyZSgnLi4vY29uZmlnL3JlY29tbWVuZGVkJyksXG5cbiAgJ2Vycm9ycyc6IHJlcXVpcmUoJy4uL2NvbmZpZy9lcnJvcnMnKSxcbiAgJ3dhcm5pbmdzJzogcmVxdWlyZSgnLi4vY29uZmlnL3dhcm5pbmdzJyksXG5cbiAgLy8gc2hoaGguLi4gd29yayBpbiBwcm9ncmVzcyBcInNlY3JldFwiIHJ1bGVzXG4gICdzdGFnZS0wJzogcmVxdWlyZSgnLi4vY29uZmlnL3N0YWdlLTAnKSxcblxuICAvLyB1c2VmdWwgc3R1ZmYgZm9yIGZvbGtzIHVzaW5nIHZhcmlvdXMgZW52aXJvbm1lbnRzXG4gICdyZWFjdCc6IHJlcXVpcmUoJy4uL2NvbmZpZy9yZWFjdCcpLFxuICAncmVhY3QtbmF0aXZlJzogcmVxdWlyZSgnLi4vY29uZmlnL3JlYWN0LW5hdGl2ZScpLFxuICAnZWxlY3Ryb24nOiByZXF1aXJlKCcuLi9jb25maWcvZWxlY3Ryb24nKSxcbiAgJ3R5cGVzY3JpcHQnOiByZXF1aXJlKCcuLi9jb25maWcvdHlwZXNjcmlwdCcpLFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/default.js b/node_modules/eslint-plugin-import/lib/rules/default.js index 2e69fcec..933538ad 100644 --- a/node_modules/eslint-plugin-import/lib/rules/default.js +++ b/node_modules/eslint-plugin-import/lib/rules/default.js @@ -1,29 +1,22 @@ -'use strict'; - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('default') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('default') }, + + schema: [] }, + create: function (context) { function checkDefault(specifierType, node) { - const defaultSpecifier = node.specifiers.find(specifier => specifier.type === specifierType); + const defaultSpecifier = node.specifiers.find( + specifier => specifier.type === specifierType); + if (!defaultSpecifier) return; var imports = _ExportMap2.default.get(node.source.value, context); @@ -34,15 +27,14 @@ module.exports = { } else if (imports.get('default') === undefined) { context.report({ node: defaultSpecifier, - message: `No default export found in imported module "${node.source.value}".` - }); + message: `No default export found in imported module "${node.source.value}".` }); + } } return { 'ImportDeclaration': checkDefault.bind(null, 'ImportDefaultSpecifier'), - 'ExportNamedDeclaration': checkDefault.bind(null, 'ExportDefaultSpecifier') - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwiY2hlY2tEZWZhdWx0Iiwic3BlY2lmaWVyVHlwZSIsIm5vZGUiLCJkZWZhdWx0U3BlY2lmaWVyIiwic3BlY2lmaWVycyIsImZpbmQiLCJzcGVjaWZpZXIiLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInNvdXJjZSIsInZhbHVlIiwiZXJyb3JzIiwibGVuZ3RoIiwicmVwb3J0RXJyb3JzIiwidW5kZWZpbmVkIiwicmVwb3J0IiwibWVzc2FnZSIsImJpbmQiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7QUFDQTs7Ozs7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFNBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLFNBQVI7QUFERCxLQUZGO0FBS0pDLFlBQVE7QUFMSixHQURTOztBQVNmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7O0FBRXpCLGFBQVNDLFlBQVQsQ0FBc0JDLGFBQXRCLEVBQXFDQyxJQUFyQyxFQUEyQzs7QUFFekMsWUFBTUMsbUJBQW1CRCxLQUFLRSxVQUFMLENBQWdCQyxJQUFoQixDQUN2QkMsYUFBYUEsVUFBVVosSUFBVixLQUFtQk8sYUFEVCxDQUF6Qjs7QUFJQSxVQUFJLENBQUNFLGdCQUFMLEVBQXVCO0FBQ3ZCLFVBQUlJLFVBQVVDLG9CQUFRQyxHQUFSLENBQVlQLEtBQUtRLE1BQUwsQ0FBWUMsS0FBeEIsRUFBK0JaLE9BQS9CLENBQWQ7QUFDQSxVQUFJUSxXQUFXLElBQWYsRUFBcUI7O0FBRXJCLFVBQUlBLFFBQVFLLE1BQVIsQ0FBZUMsTUFBbkIsRUFBMkI7QUFDekJOLGdCQUFRTyxZQUFSLENBQXFCZixPQUFyQixFQUE4QkcsSUFBOUI7QUFDRCxPQUZELE1BRU8sSUFBSUssUUFBUUUsR0FBUixDQUFZLFNBQVosTUFBMkJNLFNBQS9CLEVBQTBDO0FBQy9DaEIsZ0JBQVFpQixNQUFSLENBQWU7QUFDYmQsZ0JBQU1DLGdCQURPO0FBRWJjLG1CQUFVLCtDQUE4Q2YsS0FBS1EsTUFBTCxDQUFZQyxLQUFNO0FBRjdELFNBQWY7QUFJRDtBQUNGOztBQUVELFdBQU87QUFDTCwyQkFBcUJYLGFBQWFrQixJQUFiLENBQWtCLElBQWxCLEVBQXdCLHdCQUF4QixDQURoQjtBQUVMLGdDQUEwQmxCLGFBQWFrQixJQUFiLENBQWtCLElBQWxCLEVBQXdCLHdCQUF4QjtBQUZyQixLQUFQO0FBSUQ7QUFuQ2MsQ0FBakIiLCJmaWxlIjoiZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZGVmYXVsdCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG5cbiAgICBmdW5jdGlvbiBjaGVja0RlZmF1bHQoc3BlY2lmaWVyVHlwZSwgbm9kZSkge1xuXG4gICAgICBjb25zdCBkZWZhdWx0U3BlY2lmaWVyID0gbm9kZS5zcGVjaWZpZXJzLmZpbmQoXG4gICAgICAgIHNwZWNpZmllciA9PiBzcGVjaWZpZXIudHlwZSA9PT0gc3BlY2lmaWVyVHlwZVxuICAgICAgKVxuXG4gICAgICBpZiAoIWRlZmF1bHRTcGVjaWZpZXIpIHJldHVyblxuICAgICAgdmFyIGltcG9ydHMgPSBFeHBvcnRzLmdldChub2RlLnNvdXJjZS52YWx1ZSwgY29udGV4dClcbiAgICAgIGlmIChpbXBvcnRzID09IG51bGwpIHJldHVyblxuXG4gICAgICBpZiAoaW1wb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGltcG9ydHMucmVwb3J0RXJyb3JzKGNvbnRleHQsIG5vZGUpXG4gICAgICB9IGVsc2UgaWYgKGltcG9ydHMuZ2V0KCdkZWZhdWx0JykgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZTogZGVmYXVsdFNwZWNpZmllcixcbiAgICAgICAgICBtZXNzYWdlOiBgTm8gZGVmYXVsdCBleHBvcnQgZm91bmQgaW4gaW1wb3J0ZWQgbW9kdWxlIFwiJHtub2RlLnNvdXJjZS52YWx1ZX1cIi5gLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnSW1wb3J0RGVjbGFyYXRpb24nOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnSW1wb3J0RGVmYXVsdFNwZWNpZmllcicpLFxuICAgICAgJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnRXhwb3J0RGVmYXVsdFNwZWNpZmllcicpLFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + 'ExportNamedDeclaration': checkDefault.bind(null, 'ExportDefaultSpecifier') }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwiY2hlY2tEZWZhdWx0Iiwic3BlY2lmaWVyVHlwZSIsIm5vZGUiLCJkZWZhdWx0U3BlY2lmaWVyIiwic3BlY2lmaWVycyIsImZpbmQiLCJzcGVjaWZpZXIiLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInNvdXJjZSIsInZhbHVlIiwiZXJyb3JzIiwibGVuZ3RoIiwicmVwb3J0RXJyb3JzIiwidW5kZWZpbmVkIiwicmVwb3J0IiwibWVzc2FnZSIsImJpbmQiXSwibWFwcGluZ3MiOiJhQUFBLHlDO0FBQ0EscUM7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFNBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLFNBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLEVBTEosRUFEUzs7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjs7QUFFekIsYUFBU0MsWUFBVCxDQUFzQkMsYUFBdEIsRUFBcUNDLElBQXJDLEVBQTJDOztBQUV6QyxZQUFNQyxtQkFBbUJELEtBQUtFLFVBQUwsQ0FBZ0JDLElBQWhCO0FBQ3ZCQyxtQkFBYUEsVUFBVVosSUFBVixLQUFtQk8sYUFEVCxDQUF6Qjs7O0FBSUEsVUFBSSxDQUFDRSxnQkFBTCxFQUF1QjtBQUN2QixVQUFJSSxVQUFVQyxvQkFBUUMsR0FBUixDQUFZUCxLQUFLUSxNQUFMLENBQVlDLEtBQXhCLEVBQStCWixPQUEvQixDQUFkO0FBQ0EsVUFBSVEsV0FBVyxJQUFmLEVBQXFCOztBQUVyQixVQUFJQSxRQUFRSyxNQUFSLENBQWVDLE1BQW5CLEVBQTJCO0FBQ3pCTixnQkFBUU8sWUFBUixDQUFxQmYsT0FBckIsRUFBOEJHLElBQTlCO0FBQ0QsT0FGRCxNQUVPLElBQUlLLFFBQVFFLEdBQVIsQ0FBWSxTQUFaLE1BQTJCTSxTQUEvQixFQUEwQztBQUMvQ2hCLGdCQUFRaUIsTUFBUixDQUFlO0FBQ2JkLGdCQUFNQyxnQkFETztBQUViYyxtQkFBVSwrQ0FBOENmLEtBQUtRLE1BQUwsQ0FBWUMsS0FBTSxJQUY3RCxFQUFmOztBQUlEO0FBQ0Y7O0FBRUQsV0FBTztBQUNMLDJCQUFxQlgsYUFBYWtCLElBQWIsQ0FBa0IsSUFBbEIsRUFBd0Isd0JBQXhCLENBRGhCO0FBRUwsZ0NBQTBCbEIsYUFBYWtCLElBQWIsQ0FBa0IsSUFBbEIsRUFBd0Isd0JBQXhCLENBRnJCLEVBQVA7O0FBSUQsR0FuQ2MsRUFBakIiLCJmaWxlIjoiZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZGVmYXVsdCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG5cbiAgICBmdW5jdGlvbiBjaGVja0RlZmF1bHQoc3BlY2lmaWVyVHlwZSwgbm9kZSkge1xuXG4gICAgICBjb25zdCBkZWZhdWx0U3BlY2lmaWVyID0gbm9kZS5zcGVjaWZpZXJzLmZpbmQoXG4gICAgICAgIHNwZWNpZmllciA9PiBzcGVjaWZpZXIudHlwZSA9PT0gc3BlY2lmaWVyVHlwZVxuICAgICAgKVxuXG4gICAgICBpZiAoIWRlZmF1bHRTcGVjaWZpZXIpIHJldHVyblxuICAgICAgdmFyIGltcG9ydHMgPSBFeHBvcnRzLmdldChub2RlLnNvdXJjZS52YWx1ZSwgY29udGV4dClcbiAgICAgIGlmIChpbXBvcnRzID09IG51bGwpIHJldHVyblxuXG4gICAgICBpZiAoaW1wb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGltcG9ydHMucmVwb3J0RXJyb3JzKGNvbnRleHQsIG5vZGUpXG4gICAgICB9IGVsc2UgaWYgKGltcG9ydHMuZ2V0KCdkZWZhdWx0JykgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZTogZGVmYXVsdFNwZWNpZmllcixcbiAgICAgICAgICBtZXNzYWdlOiBgTm8gZGVmYXVsdCBleHBvcnQgZm91bmQgaW4gaW1wb3J0ZWQgbW9kdWxlIFwiJHtub2RlLnNvdXJjZS52YWx1ZX1cIi5gLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnSW1wb3J0RGVjbGFyYXRpb24nOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnSW1wb3J0RGVmYXVsdFNwZWNpZmllcicpLFxuICAgICAgJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnRXhwb3J0RGVmYXVsdFNwZWNpZmllcicpLFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/dynamic-import-chunkname.js b/node_modules/eslint-plugin-import/lib/rules/dynamic-import-chunkname.js index 605eb799..d3023ad2 100644 --- a/node_modules/eslint-plugin-import/lib/rules/dynamic-import-chunkname.js +++ b/node_modules/eslint-plugin-import/lib/rules/dynamic-import-chunkname.js @@ -1,21 +1,12 @@ -'use strict'; - -var _vm = require('vm'); - -var _vm2 = _interopRequireDefault(_vm); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _vm = require('vm');var _vm2 = _interopRequireDefault(_vm); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('dynamic-import-chunkname') - }, + url: (0, _docsUrl2.default)('dynamic-import-chunkname') }, + schema: [{ type: 'object', properties: { @@ -23,104 +14,106 @@ module.exports = { type: 'array', uniqueItems: true, items: { - type: 'string' - } - }, + type: 'string' } }, + + webpackChunknameFormat: { - type: 'string' - } - } - }] - }, + type: 'string' } } }] }, + + + + create: function (context) { - const config = context.options[0]; - - var _ref = config || {}, - _ref$importFunctions = _ref.importFunctions; - - const importFunctions = _ref$importFunctions === undefined ? [] : _ref$importFunctions; - - var _ref2 = config || {}, - _ref2$webpackChunknam = _ref2.webpackChunknameFormat; - - const webpackChunknameFormat = _ref2$webpackChunknam === undefined ? '[0-9a-zA-Z-_/.]+' : _ref2$webpackChunknam; - + const config = context.options[0];var _ref = + config || {},_ref$importFunctions = _ref.importFunctions;const importFunctions = _ref$importFunctions === undefined ? [] : _ref$importFunctions;var _ref2 = + config || {},_ref2$webpackChunknam = _ref2.webpackChunknameFormat;const webpackChunknameFormat = _ref2$webpackChunknam === undefined ? '[0-9a-zA-Z-_/.]+' : _ref2$webpackChunknam; const paddedCommentRegex = /^ (\S[\s\S]+\S) $/; - const commentStyleRegex = /^( \w+: ("[^"]*"|\d+|false|true),?)+ $/; - const chunkSubstrFormat = ` webpackChunkName: "${webpackChunknameFormat}",? `; + const commentStyleRegex = /^( \w+: (["'][^"']*["']|\d+|false|true),?)+ $/; + const chunkSubstrFormat = ` webpackChunkName: ["']${webpackChunknameFormat}["'],? `; const chunkSubstrRegex = new RegExp(chunkSubstrFormat); + function run(node, arg) { + const sourceCode = context.getSourceCode(); + const leadingComments = sourceCode.getCommentsBefore ? + sourceCode.getCommentsBefore(arg) // This method is available in ESLint >= 4. + : sourceCode.getComments(arg).leading; // This method is deprecated in ESLint 7. + + if (!leadingComments || leadingComments.length === 0) { + context.report({ + node, + message: 'dynamic imports require a leading comment with the webpack chunkname' }); + + return; + } + + let isChunknamePresent = false; + + for (const comment of leadingComments) { + if (comment.type !== 'Block') { + context.report({ + node, + message: 'dynamic imports require a /* foo */ style comment, not a // foo comment' }); + + return; + } + + if (!paddedCommentRegex.test(comment.value)) { + context.report({ + node, + message: `dynamic imports require a block comment padded with spaces - /* foo */` }); + + return; + } + + try { + // just like webpack itself does + _vm2.default.runInNewContext(`(function(){return {${comment.value}}})()`); + } + catch (error) { + context.report({ + node, + message: `dynamic imports require a "webpack" comment with valid syntax` }); + + return; + } + + if (!commentStyleRegex.test(comment.value)) { + context.report({ + node, + message: + `dynamic imports require a leading comment in the form /*${chunkSubstrFormat}*/` }); + + return; + } + + if (chunkSubstrRegex.test(comment.value)) { + isChunknamePresent = true; + } + } + + if (!isChunknamePresent) { + context.report({ + node, + message: + `dynamic imports require a leading comment in the form /*${chunkSubstrFormat}*/` }); + + } + } + return { + ImportExpression(node) { + run(node, node.source); + }, + CallExpression(node) { if (node.callee.type !== 'Import' && importFunctions.indexOf(node.callee.name) < 0) { return; } - const sourceCode = context.getSourceCode(); - const arg = node.arguments[0]; - const leadingComments = sourceCode.getComments(arg).leading; + run(node, node.arguments[0]); + } }; - if (!leadingComments || leadingComments.length === 0) { - context.report({ - node, - message: 'dynamic imports require a leading comment with the webpack chunkname' - }); - return; - } - - let isChunknamePresent = false; - - for (const comment of leadingComments) { - if (comment.type !== 'Block') { - context.report({ - node, - message: 'dynamic imports require a /* foo */ style comment, not a // foo comment' - }); - return; - } - - if (!paddedCommentRegex.test(comment.value)) { - context.report({ - node, - message: `dynamic imports require a block comment padded with spaces - /* foo */` - }); - return; - } - - try { - // just like webpack itself does - _vm2.default.runInNewContext(`(function(){return {${comment.value}}})()`); - } catch (error) { - context.report({ - node, - message: `dynamic imports require a "webpack" comment with valid syntax` - }); - return; - } - - if (!commentStyleRegex.test(comment.value)) { - context.report({ - node, - message: `dynamic imports require a leading comment in the form /*${chunkSubstrFormat}*/` - }); - return; - } - - if (chunkSubstrRegex.test(comment.value)) { - isChunknamePresent = true; - } - } - - if (!isChunknamePresent) { - context.report({ - node, - message: `dynamic imports require a leading comment in the form /*${chunkSubstrFormat}*/` - }); - } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9keW5hbWljLWltcG9ydC1jaHVua25hbWUuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsInByb3BlcnRpZXMiLCJpbXBvcnRGdW5jdGlvbnMiLCJ1bmlxdWVJdGVtcyIsIml0ZW1zIiwid2VicGFja0NodW5rbmFtZUZvcm1hdCIsImNyZWF0ZSIsImNvbnRleHQiLCJjb25maWciLCJvcHRpb25zIiwicGFkZGVkQ29tbWVudFJlZ2V4IiwiY29tbWVudFN0eWxlUmVnZXgiLCJjaHVua1N1YnN0ckZvcm1hdCIsImNodW5rU3Vic3RyUmVnZXgiLCJSZWdFeHAiLCJDYWxsRXhwcmVzc2lvbiIsIm5vZGUiLCJjYWxsZWUiLCJpbmRleE9mIiwibmFtZSIsInNvdXJjZUNvZGUiLCJnZXRTb3VyY2VDb2RlIiwiYXJnIiwiYXJndW1lbnRzIiwibGVhZGluZ0NvbW1lbnRzIiwiZ2V0Q29tbWVudHMiLCJsZWFkaW5nIiwibGVuZ3RoIiwicmVwb3J0IiwibWVzc2FnZSIsImlzQ2h1bmtuYW1lUHJlc2VudCIsImNvbW1lbnQiLCJ0ZXN0IiwidmFsdWUiLCJ2bSIsInJ1bkluTmV3Q29udGV4dCIsImVycm9yIl0sIm1hcHBpbmdzIjoiOztBQUFBOzs7O0FBQ0E7Ozs7OztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSwwQkFBUjtBQURELEtBRkY7QUFLSkMsWUFBUSxDQUFDO0FBQ1BILFlBQU0sUUFEQztBQUVQSSxrQkFBWTtBQUNWQyx5QkFBaUI7QUFDZkwsZ0JBQU0sT0FEUztBQUVmTSx1QkFBYSxJQUZFO0FBR2ZDLGlCQUFPO0FBQ0xQLGtCQUFNO0FBREQ7QUFIUSxTQURQO0FBUVZRLGdDQUF3QjtBQUN0QlIsZ0JBQU07QUFEZ0I7QUFSZDtBQUZMLEtBQUQ7QUFMSixHQURTOztBQXVCZlMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLFVBQU1DLFNBQVNELFFBQVFFLE9BQVIsQ0FBZ0IsQ0FBaEIsQ0FBZjs7QUFEeUIsZUFFUUQsVUFBVSxFQUZsQjtBQUFBLG9DQUVqQk4sZUFGaUI7O0FBQUEsVUFFakJBLGVBRmlCLHdDQUVDLEVBRkQ7O0FBQUEsZ0JBRytCTSxVQUFVLEVBSHpDO0FBQUEsc0NBR2pCSCxzQkFIaUI7O0FBQUEsVUFHakJBLHNCQUhpQix5Q0FHUSxrQkFIUjs7O0FBS3pCLFVBQU1LLHFCQUFxQixtQkFBM0I7QUFDQSxVQUFNQyxvQkFBb0Isd0NBQTFCO0FBQ0EsVUFBTUMsb0JBQXFCLHVCQUFzQlAsc0JBQXVCLE1BQXhFO0FBQ0EsVUFBTVEsbUJBQW1CLElBQUlDLE1BQUosQ0FBV0YsaUJBQVgsQ0FBekI7O0FBRUEsV0FBTztBQUNMRyxxQkFBZUMsSUFBZixFQUFxQjtBQUNuQixZQUFJQSxLQUFLQyxNQUFMLENBQVlwQixJQUFaLEtBQXFCLFFBQXJCLElBQWlDSyxnQkFBZ0JnQixPQUFoQixDQUF3QkYsS0FBS0MsTUFBTCxDQUFZRSxJQUFwQyxJQUE0QyxDQUFqRixFQUFvRjtBQUNsRjtBQUNEOztBQUVELGNBQU1DLGFBQWFiLFFBQVFjLGFBQVIsRUFBbkI7QUFDQSxjQUFNQyxNQUFNTixLQUFLTyxTQUFMLENBQWUsQ0FBZixDQUFaO0FBQ0EsY0FBTUMsa0JBQWtCSixXQUFXSyxXQUFYLENBQXVCSCxHQUF2QixFQUE0QkksT0FBcEQ7O0FBRUEsWUFBSSxDQUFDRixlQUFELElBQW9CQSxnQkFBZ0JHLE1BQWhCLEtBQTJCLENBQW5ELEVBQXNEO0FBQ3BEcEIsa0JBQVFxQixNQUFSLENBQWU7QUFDYlosZ0JBRGE7QUFFYmEscUJBQVM7QUFGSSxXQUFmO0FBSUE7QUFDRDs7QUFFRCxZQUFJQyxxQkFBcUIsS0FBekI7O0FBRUEsYUFBSyxNQUFNQyxPQUFYLElBQXNCUCxlQUF0QixFQUF1QztBQUNyQyxjQUFJTyxRQUFRbEMsSUFBUixLQUFpQixPQUFyQixFQUE4QjtBQUM1QlUsb0JBQVFxQixNQUFSLENBQWU7QUFDYlosa0JBRGE7QUFFYmEsdUJBQVM7QUFGSSxhQUFmO0FBSUE7QUFDRDs7QUFFRCxjQUFJLENBQUNuQixtQkFBbUJzQixJQUFuQixDQUF3QkQsUUFBUUUsS0FBaEMsQ0FBTCxFQUE2QztBQUMzQzFCLG9CQUFRcUIsTUFBUixDQUFlO0FBQ2JaLGtCQURhO0FBRWJhLHVCQUFVO0FBRkcsYUFBZjtBQUlBO0FBQ0Q7O0FBRUQsY0FBSTtBQUNGO0FBQ0FLLHlCQUFHQyxlQUFILENBQW9CLHVCQUFzQkosUUFBUUUsS0FBTSxPQUF4RDtBQUNELFdBSEQsQ0FJQSxPQUFPRyxLQUFQLEVBQWM7QUFDWjdCLG9CQUFRcUIsTUFBUixDQUFlO0FBQ2JaLGtCQURhO0FBRWJhLHVCQUFVO0FBRkcsYUFBZjtBQUlBO0FBQ0Q7O0FBRUQsY0FBSSxDQUFDbEIsa0JBQWtCcUIsSUFBbEIsQ0FBdUJELFFBQVFFLEtBQS9CLENBQUwsRUFBNEM7QUFDMUMxQixvQkFBUXFCLE1BQVIsQ0FBZTtBQUNiWixrQkFEYTtBQUViYSx1QkFDRywyREFBMERqQixpQkFBa0I7QUFIbEUsYUFBZjtBQUtBO0FBQ0Q7O0FBRUQsY0FBSUMsaUJBQWlCbUIsSUFBakIsQ0FBc0JELFFBQVFFLEtBQTlCLENBQUosRUFBMEM7QUFDeENILGlDQUFxQixJQUFyQjtBQUNEO0FBQ0Y7O0FBRUQsWUFBSSxDQUFDQSxrQkFBTCxFQUF5QjtBQUN2QnZCLGtCQUFRcUIsTUFBUixDQUFlO0FBQ2JaLGdCQURhO0FBRWJhLHFCQUNHLDJEQUEwRGpCLGlCQUFrQjtBQUhsRSxXQUFmO0FBS0Q7QUFDRjtBQXRFSSxLQUFQO0FBd0VEO0FBekdjLENBQWpCIiwiZmlsZSI6ImR5bmFtaWMtaW1wb3J0LWNodW5rbmFtZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB2bSBmcm9tICd2bSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZHluYW1pYy1pbXBvcnQtY2h1bmtuYW1lJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFt7XG4gICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgaW1wb3J0RnVuY3Rpb25zOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZSxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgd2VicGFja0NodW5rbmFtZUZvcm1hdDoge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9XSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgY29uc3QgY29uZmlnID0gY29udGV4dC5vcHRpb25zWzBdXG4gICAgY29uc3QgeyBpbXBvcnRGdW5jdGlvbnMgPSBbXSB9ID0gY29uZmlnIHx8IHt9XG4gICAgY29uc3QgeyB3ZWJwYWNrQ2h1bmtuYW1lRm9ybWF0ID0gJ1swLTlhLXpBLVotXy8uXSsnIH0gPSBjb25maWcgfHwge31cblxuICAgIGNvbnN0IHBhZGRlZENvbW1lbnRSZWdleCA9IC9eIChcXFNbXFxzXFxTXStcXFMpICQvXG4gICAgY29uc3QgY29tbWVudFN0eWxlUmVnZXggPSAvXiggXFx3KzogKFwiW15cIl0qXCJ8XFxkK3xmYWxzZXx0cnVlKSw/KSsgJC9cbiAgICBjb25zdCBjaHVua1N1YnN0ckZvcm1hdCA9IGAgd2VicGFja0NodW5rTmFtZTogXCIke3dlYnBhY2tDaHVua25hbWVGb3JtYXR9XCIsPyBgXG4gICAgY29uc3QgY2h1bmtTdWJzdHJSZWdleCA9IG5ldyBSZWdFeHAoY2h1bmtTdWJzdHJGb3JtYXQpXG5cbiAgICByZXR1cm4ge1xuICAgICAgQ2FsbEV4cHJlc3Npb24obm9kZSkge1xuICAgICAgICBpZiAobm9kZS5jYWxsZWUudHlwZSAhPT0gJ0ltcG9ydCcgJiYgaW1wb3J0RnVuY3Rpb25zLmluZGV4T2Yobm9kZS5jYWxsZWUubmFtZSkgPCAwKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzb3VyY2VDb2RlID0gY29udGV4dC5nZXRTb3VyY2VDb2RlKClcbiAgICAgICAgY29uc3QgYXJnID0gbm9kZS5hcmd1bWVudHNbMF1cbiAgICAgICAgY29uc3QgbGVhZGluZ0NvbW1lbnRzID0gc291cmNlQ29kZS5nZXRDb21tZW50cyhhcmcpLmxlYWRpbmdcblxuICAgICAgICBpZiAoIWxlYWRpbmdDb21tZW50cyB8fCBsZWFkaW5nQ29tbWVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdkeW5hbWljIGltcG9ydHMgcmVxdWlyZSBhIGxlYWRpbmcgY29tbWVudCB3aXRoIHRoZSB3ZWJwYWNrIGNodW5rbmFtZScsXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBpc0NodW5rbmFtZVByZXNlbnQgPSBmYWxzZVxuXG4gICAgICAgIGZvciAoY29uc3QgY29tbWVudCBvZiBsZWFkaW5nQ29tbWVudHMpIHtcbiAgICAgICAgICBpZiAoY29tbWVudC50eXBlICE9PSAnQmxvY2snKSB7XG4gICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdkeW5hbWljIGltcG9ydHMgcmVxdWlyZSBhIC8qIGZvbyAqLyBzdHlsZSBjb21tZW50LCBub3QgYSAvLyBmb28gY29tbWVudCcsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCFwYWRkZWRDb21tZW50UmVnZXgudGVzdChjb21tZW50LnZhbHVlKSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBgZHluYW1pYyBpbXBvcnRzIHJlcXVpcmUgYSBibG9jayBjb21tZW50IHBhZGRlZCB3aXRoIHNwYWNlcyAtIC8qIGZvbyAqL2AsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIGp1c3QgbGlrZSB3ZWJwYWNrIGl0c2VsZiBkb2VzXG4gICAgICAgICAgICB2bS5ydW5Jbk5ld0NvbnRleHQoYChmdW5jdGlvbigpe3JldHVybiB7JHtjb21tZW50LnZhbHVlfX19KSgpYClcbiAgICAgICAgICB9XG4gICAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGBkeW5hbWljIGltcG9ydHMgcmVxdWlyZSBhIFwid2VicGFja1wiIGNvbW1lbnQgd2l0aCB2YWxpZCBzeW50YXhgLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghY29tbWVudFN0eWxlUmVnZXgudGVzdChjb21tZW50LnZhbHVlKSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgICAgICAgIGBkeW5hbWljIGltcG9ydHMgcmVxdWlyZSBhIGxlYWRpbmcgY29tbWVudCBpbiB0aGUgZm9ybSAvKiR7Y2h1bmtTdWJzdHJGb3JtYXR9Ki9gLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChjaHVua1N1YnN0clJlZ2V4LnRlc3QoY29tbWVudC52YWx1ZSkpIHtcbiAgICAgICAgICAgIGlzQ2h1bmtuYW1lUHJlc2VudCA9IHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWlzQ2h1bmtuYW1lUHJlc2VudCkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgICAgICBgZHluYW1pYyBpbXBvcnRzIHJlcXVpcmUgYSBsZWFkaW5nIGNvbW1lbnQgaW4gdGhlIGZvcm0gLyoke2NodW5rU3Vic3RyRm9ybWF0fSovYCxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9keW5hbWljLWltcG9ydC1jaHVua25hbWUuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsInByb3BlcnRpZXMiLCJpbXBvcnRGdW5jdGlvbnMiLCJ1bmlxdWVJdGVtcyIsIml0ZW1zIiwid2VicGFja0NodW5rbmFtZUZvcm1hdCIsImNyZWF0ZSIsImNvbnRleHQiLCJjb25maWciLCJvcHRpb25zIiwicGFkZGVkQ29tbWVudFJlZ2V4IiwiY29tbWVudFN0eWxlUmVnZXgiLCJjaHVua1N1YnN0ckZvcm1hdCIsImNodW5rU3Vic3RyUmVnZXgiLCJSZWdFeHAiLCJydW4iLCJub2RlIiwiYXJnIiwic291cmNlQ29kZSIsImdldFNvdXJjZUNvZGUiLCJsZWFkaW5nQ29tbWVudHMiLCJnZXRDb21tZW50c0JlZm9yZSIsImdldENvbW1lbnRzIiwibGVhZGluZyIsImxlbmd0aCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJpc0NodW5rbmFtZVByZXNlbnQiLCJjb21tZW50IiwidGVzdCIsInZhbHVlIiwidm0iLCJydW5Jbk5ld0NvbnRleHQiLCJlcnJvciIsIkltcG9ydEV4cHJlc3Npb24iLCJzb3VyY2UiLCJDYWxsRXhwcmVzc2lvbiIsImNhbGxlZSIsImluZGV4T2YiLCJuYW1lIiwiYXJndW1lbnRzIl0sIm1hcHBpbmdzIjoiYUFBQSx3QjtBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSwwQkFBUixDQURELEVBRkY7O0FBS0pDLFlBQVEsQ0FBQztBQUNQSCxZQUFNLFFBREM7QUFFUEksa0JBQVk7QUFDVkMseUJBQWlCO0FBQ2ZMLGdCQUFNLE9BRFM7QUFFZk0sdUJBQWEsSUFGRTtBQUdmQyxpQkFBTztBQUNMUCxrQkFBTSxRQURELEVBSFEsRUFEUDs7O0FBUVZR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bEY7QUFDRDs7QUFFRHhCLFlBQUlDLElBQUosRUFBVUEsS0FBS3dCLFNBQUwsQ0FBZSxDQUFmLENBQVY7QUFDRCxPQVhJLEVBQVA7O0FBYUQsR0FsSGMsRUFBakIiLCJmaWxlIjoiZHluYW1pYy1pbXBvcnQtY2h1bmtuYW1lLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHZtIGZyb20gJ3ZtJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCdkeW5hbWljLWltcG9ydC1jaHVua25hbWUnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW3tcbiAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBpbXBvcnRGdW5jdGlvbnM6IHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLFxuICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB3ZWJwYWNrQ2h1bmtuYW1lRm9ybWF0OiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH1dLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBjb25maWcgPSBjb250ZXh0Lm9wdGlvbnNbMF1cbiAgICBjb25zdCB7IGltcG9ydEZ1bmN0aW9ucyA9IFtdIH0gPSBjb25maWcgfHwge31cbiAgICBjb25zdCB7IHdlYnBhY2tDaHVua25hbWVGb3JtYXQgPSAnWzAtOWEtekEtWi1fLy5dKycgfSA9IGNvbmZpZyB8fCB7fVxuXG4gICAgY29uc3QgcGFkZGVkQ29tbWVudFJlZ2V4ID0gL14gKFxcU1tcXHNcXFNdK1xcUykgJC9cbiAgICBjb25zdCBjb21tZW50U3R5bGVSZWdleCA9IC9eKCBcXHcrOiAoW1wiJ11bXlwiJ10qW1wiJ118XFxkK3xmYWxzZXx0cnVlKSw/KSsgJC9cbiAgICBjb25zdCBjaHVua1N1YnN0ckZvcm1hdCA9IGAgd2VicGFja0NodW5rTmFtZTogW1wiJ10ke3dlYnBhY2tDaHVua25hbWVGb3JtYXR9W1wiJ10sPyBgXG4gICAgY29uc3QgY2h1bmtTdWJzdHJSZWdleCA9IG5ldyBSZWdFeHAoY2h1bmtTdWJzdHJGb3JtYXQpXG5cbiAgICBmdW5jdGlvbiBydW4obm9kZSwgYXJnKSB7XG4gICAgICBjb25zdCBzb3VyY2VDb2RlID0gY29udGV4dC5nZXRTb3VyY2VDb2RlKClcbiAgICAgIGNvbnN0IGxlYWRpbmdDb21tZW50cyA9IHNvdXJjZUNvZGUuZ2V0Q29tbWVudHNCZWZvcmVcbiAgICAgICAgPyBzb3VyY2VDb2RlLmdldENvbW1lbnRzQmVmb3JlKGFyZykgLy8gVGhpcyBtZXRob2QgaXMgYXZhaWxhYmxlIGluIEVTTGludCA+PSA0LlxuICAgICAgICA6IHNvdXJjZUNvZGUuZ2V0Q29tbWVudHMoYXJnKS5sZWFkaW5nIC8vIFRoaXMgbWV0aG9kIGlzIGRlcHJlY2F0ZWQgaW4gRVNMaW50IDcuXG5cbiAgICAgIGlmICghbGVhZGluZ0NvbW1lbnRzIHx8IGxlYWRpbmdDb21tZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgbWVzc2FnZTogJ2R5bmFtaWMgaW1wb3J0cyByZXF1aXJlIGEgbGVhZGluZyBjb21tZW50IHdpdGggdGhlIHdlYnBhY2sgY2h1bmtuYW1lJyxcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGxldCBpc0NodW5rbmFtZVByZXNlbnQgPSBmYWxzZVxuXG4gICAgICBmb3IgKGNvbnN0IGNvbW1lbnQgb2YgbGVhZGluZ0NvbW1lbnRzKSB7XG4gICAgICAgIGlmIChjb21tZW50LnR5cGUgIT09ICdCbG9jaycpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogJ2R5bmFtaWMgaW1wb3J0cyByZXF1aXJlIGEgLyogZm9vICovIHN0eWxlIGNvbW1lbnQsIG5vdCBhIC8vIGZvbyBjb21tZW50JyxcbiAgICAgICAgICB9KVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFwYWRkZWRDb21tZW50UmVnZXgudGVzdChjb21tZW50LnZhbHVlKSkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOiBgZHluYW1pYyBpbXBvcnRzIHJlcXVpcmUgYSBibG9jayBjb21tZW50IHBhZGRlZCB3aXRoIHNwYWNlcyAtIC8qIGZvbyAqL2AsXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8ganVzdCBsaWtlIHdlYnBhY2sgaXRzZWxmIGRvZXNcbiAgICAgICAgICB2bS5ydW5Jbk5ld0NvbnRleHQoYChmdW5jdGlvbigpe3JldHVybiB7JHtjb21tZW50LnZhbHVlfX19KSgpYClcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogYGR5bmFtaWMgaW1wb3J0cyByZXF1aXJlIGEgXCJ3ZWJwYWNrXCIgY29tbWVudCB3aXRoIHZhbGlkIHN5bnRheGAsXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghY29tbWVudFN0eWxlUmVnZXgudGVzdChjb21tZW50LnZhbHVlKSkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgICAgICBgZHluYW1pYyBpbXBvcnRzIHJlcXVpcmUgYSBsZWFkaW5nIGNvbW1lbnQgaW4gdGhlIGZvcm0gLyoke2NodW5rU3Vic3RyRm9ybWF0fSovYCxcbiAgICAgICAgICB9KVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNodW5rU3Vic3RyUmVnZXgudGVzdChjb21tZW50LnZhbHVlKSkge1xuICAgICAgICAgIGlzQ2h1bmtuYW1lUHJlc2VudCA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoIWlzQ2h1bmtuYW1lUHJlc2VudCkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgICAgYGR5bmFtaWMgaW1wb3J0cyByZXF1aXJlIGEgbGVhZGluZyBjb21tZW50IGluIHRoZSBmb3JtIC8qJHtjaHVua1N1YnN0ckZvcm1hdH0qL2AsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydEV4cHJlc3Npb24obm9kZSkge1xuICAgICAgICBydW4obm9kZSwgbm9kZS5zb3VyY2UpXG4gICAgICB9LFxuXG4gICAgICBDYWxsRXhwcmVzc2lvbihub2RlKSB7XG4gICAgICAgIGlmIChub2RlLmNhbGxlZS50eXBlICE9PSAnSW1wb3J0JyAmJiBpbXBvcnRGdW5jdGlvbnMuaW5kZXhPZihub2RlLmNhbGxlZS5uYW1lKSA8IDApIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIHJ1bihub2RlLCBub2RlLmFyZ3VtZW50c1swXSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/export.js b/node_modules/eslint-plugin-import/lib/rules/export.js index 8241a828..c7d1aad7 100644 --- a/node_modules/eslint-plugin-import/lib/rules/export.js +++ b/node_modules/eslint-plugin-import/lib/rules/export.js @@ -1,66 +1,58 @@ -'use strict'; - -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -var _arrayIncludes = require('array-includes'); - -var _arrayIncludes2 = _interopRequireDefault(_arrayIncludes); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); +var _arrayIncludes = require('array-includes');var _arrayIncludes2 = _interopRequireDefault(_arrayIncludes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} /* -Notes on TypeScript namespaces aka TSModuleDeclaration: - -There are two forms: -- active namespaces: namespace Foo {} / module Foo {} -- ambient modules; declare module "eslint-plugin-import" {} - -active namespaces: -- cannot contain a default export -- cannot contain an export all -- cannot contain a multi name export (export { a, b }) -- can have active namespaces nested within them - -ambient namespaces: -- can only be defined in .d.ts files -- cannot be nested within active namespaces -- have no other restrictions -*/ + Notes on TypeScript namespaces aka TSModuleDeclaration: + + There are two forms: + - active namespaces: namespace Foo {} / module Foo {} + - ambient modules; declare module "eslint-plugin-import" {} + + active namespaces: + - cannot contain a default export + - cannot contain an export all + - cannot contain a multi name export (export { a, b }) + - can have active namespaces nested within them + + ambient namespaces: + - can only be defined in .d.ts files + - cannot be nested within active namespaces + - have no other restrictions + */ const rootProgram = 'root'; const tsTypePrefix = 'type:'; /** - * Detect function overloads like: - * ```ts - * export function foo(a: number); - * export function foo(a: string); - * export function foo(a: number|string) { return a; } - * ``` - * @param {Set} nodes - * @returns {boolean} - */ + * Detect function overloads like: + * ```ts + * export function foo(a: number); + * export function foo(a: string); + * export function foo(a: number|string) { return a; } + * ``` + * @param {Set} nodes + * @returns {boolean} + */ function isTypescriptFunctionOverloads(nodes) { const types = new Set(Array.from(nodes, node => node.parent.type)); - return types.has('TSDeclareFunction') && (types.size === 1 || types.size === 2 && types.has('FunctionDeclaration')); + return ( + types.has('TSDeclareFunction') && ( + + types.size === 1 || + types.size === 2 && types.has('FunctionDeclaration'))); + + } module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('export') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('export') }, + + schema: [] }, + create: function (context) { const namespace = new Map([[rootProgram, new Map()]]); @@ -105,7 +97,10 @@ module.exports = { const isTypeVariableDecl = node.declaration.kind === 'type'; if (node.declaration.id != null) { - if ((0, _arrayIncludes2.default)(['TSTypeAliasDeclaration', 'TSInterfaceDeclaration'], node.declaration.type)) { + if ((0, _arrayIncludes2.default)([ + 'TSTypeAliasDeclaration', + 'TSInterfaceDeclaration'], + node.declaration.type)) { addNamed(node.declaration.id.name, node.declaration.id, parent, true); } else { addNamed(node.declaration.id.name, node.declaration.id, parent, isTypeVariableDecl); @@ -114,7 +109,8 @@ module.exports = { if (node.declaration.declarations != null) { for (let declaration of node.declaration.declarations) { - (0, _ExportMap.recursivePatternCapture)(declaration.id, v => addNamed(v.name, v, parent, isTypeVariableDecl)); + (0, _ExportMap.recursivePatternCapture)(declaration.id, v => + addNamed(v.name, v, parent, isTypeVariableDecl)); } } }, @@ -122,6 +118,9 @@ module.exports = { 'ExportAllDeclaration': function (node) { if (node.source == null) return; // not sure if this is ever true + // `export * as X from 'path'` does not conflict + if (node.exported && node.exported.name) return; + const remoteExports = _ExportMap2.default.get(node.source.value, context); if (remoteExports == null) return; @@ -133,26 +132,22 @@ module.exports = { const parent = getParent(node); let any = false; - remoteExports.forEach((v, name) => name !== 'default' && (any = true) && // poor man's filter + remoteExports.forEach((v, name) => + name !== 'default' && ( + any = true) && // poor man's filter addNamed(name, node, parent)); if (!any) { - context.report(node.source, `No named exports found in module '${node.source.value}'.`); + context.report( + node.source, + `No named exports found in module '${node.source.value}'.`); + } }, 'Program:exit': function () { - for (let _ref of namespace) { - var _ref2 = _slicedToArray(_ref, 2); - - let named = _ref2[1]; - - for (let _ref3 of named) { - var _ref4 = _slicedToArray(_ref3, 2); - - let name = _ref4[0]; - let nodes = _ref4[1]; - + for (let _ref of namespace) {var _ref2 = _slicedToArray(_ref, 2);let named = _ref2[1]; + for (let _ref3 of named) {var _ref4 = _slicedToArray(_ref3, 2);let name = _ref4[0];let nodes = _ref4[1]; if (nodes.size <= 1) continue; if (isTypescriptFunctionOverloads(nodes)) continue; @@ -161,13 +156,15 @@ module.exports = { if (name === 'default') { context.report(node, 'Multiple default exports.'); } else { - context.report(node, `Multiple exports of name '${name.replace(tsTypePrefix, '')}'.`); + context.report( + node, + `Multiple exports of name '${name.replace(tsTypePrefix, '')}'.`); + } } } } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9leHBvcnQuanMiXSwibmFtZXMiOlsicm9vdFByb2dyYW0iLCJ0c1R5cGVQcmVmaXgiLCJpc1R5cGVzY3JpcHRGdW5jdGlvbk92ZXJsb2FkcyIsIm5vZGVzIiwidHlwZXMiLCJTZXQiLCJBcnJheSIsImZyb20iLCJub2RlIiwicGFyZW50IiwidHlwZSIsImhhcyIsInNpemUiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwibmFtZXNwYWNlIiwiTWFwIiwiYWRkTmFtZWQiLCJuYW1lIiwiaXNUeXBlIiwic2V0IiwibmFtZWQiLCJnZXQiLCJrZXkiLCJhZGQiLCJnZXRQYXJlbnQiLCJleHBvcnRlZCIsImRlY2xhcmF0aW9uIiwiaXNUeXBlVmFyaWFibGVEZWNsIiwia2luZCIsImlkIiwiZGVjbGFyYXRpb25zIiwidiIsInNvdXJjZSIsInJlbW90ZUV4cG9ydHMiLCJFeHBvcnRNYXAiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsImFueSIsImZvckVhY2giLCJyZXBvcnQiLCJyZXBsYWNlIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CQSxNQUFNQSxjQUFjLE1BQXBCO0FBQ0EsTUFBTUMsZUFBZSxPQUFyQjs7QUFFQTs7Ozs7Ozs7OztBQVVBLFNBQVNDLDZCQUFULENBQXVDQyxLQUF2QyxFQUE4QztBQUM1QyxRQUFNQyxRQUFRLElBQUlDLEdBQUosQ0FBUUMsTUFBTUMsSUFBTixDQUFXSixLQUFYLEVBQWtCSyxRQUFRQSxLQUFLQyxNQUFMLENBQVlDLElBQXRDLENBQVIsQ0FBZDtBQUNBLFNBQ0VOLE1BQU1PLEdBQU4sQ0FBVSxtQkFBVixNQUVFUCxNQUFNUSxJQUFOLEtBQWUsQ0FBZixJQUNDUixNQUFNUSxJQUFOLEtBQWUsQ0FBZixJQUFvQlIs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QUFDL0IsZ0JBQUlBLE1BQU1TLElBQU4sSUFBYyxDQUFsQixFQUFxQjs7QUFFckIsZ0JBQUlWLDhCQUE4QkMsS0FBOUIsQ0FBSixFQUEwQzs7QUFFMUMsaUJBQUssSUFBSUssSUFBVCxJQUFpQkwsS0FBakIsRUFBd0I7QUFDdEIsa0JBQUlxQixTQUFTLFNBQWIsRUFBd0I7QUFDdEJKLHdCQUFRNEIsTUFBUixDQUFleEMsSUFBZixFQUFxQiwyQkFBckI7QUFDRCxlQUZELE1BRU87QUFDTFksd0JBQVE0QixNQUFSLENBQ0V4QyxJQURGLEVBRUcsNkJBQTRCZ0IsS0FBS3lCLE9BQUwsQ0FBYWhELFlBQWIsRUFBMkIsRUFBM0IsQ0FBK0IsSUFGOUQ7QUFJRDtBQUNGO0FBQ0Y7QUFDRjtBQUNGO0FBM0VJLEtBQVA7QUE2RUQ7QUFwSGMsQ0FBakIiLCJmaWxlIjoiZXhwb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEV4cG9ydE1hcCwgeyByZWN1cnNpdmVQYXR0ZXJuQ2FwdHVyZSB9IGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5pbXBvcnQgaW5jbHVkZXMgZnJvbSAnYXJyYXktaW5jbHVkZXMnXG5cbi8qXG5Ob3RlcyBvbiBUeXBlU2NyaXB0IG5hbWVzcGFjZXMgYWthIFRTTW9kdWxlRGVjbGFyYXRpb246XG5cblRoZXJlIGFyZSB0d28gZm9ybXM6XG4tIGFjdGl2ZSBuYW1lc3BhY2VzOiBuYW1lc3BhY2UgRm9vIHt9IC8gbW9kdWxlIEZvbyB7fVxuLSBhbWJpZW50IG1vZHVsZXM7IGRlY2xhcmUgbW9kdWxlIFwiZXNsaW50LXBsdWdpbi1pbXBvcnRcIiB7fVxuXG5hY3RpdmUgbmFtZXNwYWNlczpcbi0gY2Fubm90IGNvbnRhaW4gYSBkZWZhdWx0IGV4cG9ydFxuLSBjYW5ub3QgY29udGFpbiBhbiBleHBvcnQgYWxsXG4tIGNhbm5vdCBjb250YWluIGEgbXVsdGkgbmFtZSBleHBvcnQgKGV4cG9ydCB7IGEsIGIgfSlcbi0gY2FuIGhhdmUgYWN0aXZlIG5hbWVzcGFjZXMgbmVzdGVkIHdpdGhpbiB0aGVtXG5cbmFtYmllbnQgbmFtZXNwYWNlczpcbi0gY2FuIG9ubHkgYmUgZGVmaW5lZCBpbiAuZC50cyBmaWxlc1xuLSBjYW5ub3QgYmUgbmVzdGVkIHdpdGhpbiBhY3RpdmUgbmFtZXNwYWNlc1xuLSBoYXZlIG5vIG90aGVyIHJlc3RyaWN0aW9uc1xuKi9cblxuY29uc3Qgcm9vdFByb2dyYW0gPSAncm9vdCdcbmNvbnN0IHRzVHlwZVByZWZpeCA9ICd0eXBlOidcblxuLyoqXG4gKiBEZXRlY3QgZnVuY3Rpb24gb3ZlcmxvYWRzIGxpa2U6XG4gKiBgYGB0c1xuICogZXhwb3J0IGZ1bmN0aW9uIGZvbyhhOiBudW1iZXIpO1xuICogZXhwb3J0IGZ1bmN0aW9uIGZvbyhhOiBzdHJpbmcpO1xuICogZXhwb3J0IGZ1bmN0aW9uIGZvbyhhOiBudW1iZXJ8c3RyaW5nKSB7IHJldHVybiBhOyB9XG4gKiBgYGBcbiAqIEBwYXJhbSB7U2V0PE9iamVjdD59IG5vZGVzXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAqL1xuZnVuY3Rpb24gaXNUeXBlc2NyaXB0RnVuY3Rpb25PdmVybG9hZHMobm9kZXMpIHtcbiAgY29uc3QgdHlwZXMgPSBuZXcgU2V0KEFycmF5LmZyb20obm9kZXMsIG5vZGUgPT4gbm9kZS5wYXJlbnQudHlwZSkpXG4gIHJldHVybiAoXG4gICAgdHlwZXMuaGFzKCdUU0RlY2xhcmVGdW5jdGlvbicpICYmXG4gICAgKFxuICAgICAgdHlwZXMuc2l6ZSA9PT0gMSB8fFxuICAgICAgKHR5cGVzLnNpemUgPT09IDIgJiYgdHlwZXMuaGFzKCdGdW5jdGlvbkRlY2xhcmF0aW9uJykpXG4gICAgKVxuICApXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZXhwb3J0JyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBuYW1lc3BhY2UgPSBuZXcgTWFwKFtbcm9vdFByb2dyYW0sIG5ldyBNYXAoKV1dKVxuXG4gICAgZnVuY3Rpb24gYWRkTmFtZWQobmFtZSwgbm9kZSwgcGFyZW50LCBpc1R5cGUpIHtcbiAgICAgIGlmICghbmFtZXNwYWNlLmhhcyhwYXJlbnQpKSB7XG4gICAgICAgIG5hbWVzcGFjZS5zZXQocGFyZW50LCBuZXcgTWFwKCkpXG4gICAgICB9XG4gICAgICBjb25zdCBuYW1lZCA9IG5hbWVzcGFjZS5nZXQocGFyZW50KVxuXG4gICAgICBjb25zdCBrZXkgPSBpc1R5cGUgPyBgJHt0c1R5cGVQcmVmaXh9JHtuYW1lfWAgOiBuYW1lXG4gICAgICBsZXQgbm9kZXMgPSBuYW1lZC5nZXQoa2V5KVxuXG4gICAgICBpZiAobm9kZXMgPT0gbnVsbCkge1xuICAgICAgICBub2RlcyA9IG5ldyBTZXQoKVxuICAgICAgICBuYW1lZC5zZXQoa2V5LCBub2RlcylcbiAgICAgIH1cblxuICAgICAgbm9kZXMuYWRkKG5vZGUpXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZ2V0UGFyZW50KG5vZGUpIHtcbiAgICAgIGlmIChub2RlLnBhcmVudCAmJiBub2RlLnBhcmVudC50eXBlID09PSAnVFNNb2R1bGVCbG9jaycpIHtcbiAgICAgICAgcmV0dXJuIG5vZGUucGFyZW50LnBhcmVudFxuICAgICAgfVxuXG4gICAgICAvLyBqdXN0IGluIGNhc2Ugc29tZWhvdyBhIG5vbi10cyBuYW1lc3BhY2UgZXhwb3J0IGRlY2xhcmF0aW9uIGlzbid0IGRpcmVjdGx5XG4gICAgICAvLyBwYXJlbnRlZCB0byB0aGUgcm9vdCBQcm9ncmFtIG5vZGVcbiAgICAgIHJldHVybiByb290UHJvZ3JhbVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJzogKG5vZGUpID0+IGFkZE5hbWVkKCdkZWZhdWx0Jywgbm9kZSwgZ2V0UGFyZW50KG5vZGUpKSxcblxuICAgICAgJ0V4cG9ydFNwZWNpZmllcic6IChub2RlKSA9PiBhZGROYW1lZChub2RlLmV4cG9ydGVkLm5hbWUsIG5vZGUuZXhwb3J0ZWQsIGdldFBhcmVudChub2RlKSksXG5cbiAgICAgICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJzogZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgICAgaWYgKG5vZGUuZGVjbGFyYXRpb24gPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgICAgY29uc3QgcGFyZW50ID0gZ2V0UGFyZW50KG5vZGUpXG4gICAgICAgIC8vIHN1cHBvcnQgZm9yIG9sZCBUeXBlU2NyaXB0IHZlcnNpb25zXG4gICAgICAgIGNvbnN0IGlzVHlwZVZhcmlhYmxlRGVjbCA9IG5vZGUuZGVjbGFyYXRpb24ua2luZCA9PT0gJ3R5cGUnXG5cbiAgICAgICAgaWYgKG5vZGUuZGVjbGFyYXRpb24uaWQgIT0gbnVsbCkge1xuICAgICAgICAgIGlmIChpbmNsdWRlcyhbXG4gICAgICAgICAgICAnVFNUeXBlQWxpYXNEZWNsYXJhdGlvbicsXG4gICAgICAgICAgICAnVFNJbnRlcmZhY2VEZWNsYXJhdGlvbicsXG4gICAgICAgICAgXSwgbm9kZS5kZWNsYXJhdGlvbi50eXBlKSkge1xuICAgICAgICAgICAgYWRkTmFtZWQobm9kZS5kZWNsYXJhdGlvbi5pZC5uYW1lLCBub2RlLmRlY2xhcmF0aW9uLmlkLCBwYXJlbnQsIHRydWUpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGFkZE5hbWVkKG5vZGUuZGVjbGFyYXRpb24uaWQubmFtZSwgbm9kZS5kZWNsYXJhdGlvbi5pZCwgcGFyZW50LCBpc1R5cGVWYXJpYWJsZURlY2wpXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5vZGUuZGVjbGFyYXRpb24uZGVjbGFyYXRpb25zICE9IG51bGwpIHtcbiAgICAgICAgICBmb3IgKGxldCBkZWNsYXJhdGlvbiBvZiBub2RlLmRlY2xhcmF0aW9uLmRlY2xhcmF0aW9ucykge1xuICAgICAgICAgICAgcmVjdXJzaXZlUGF0dGVybkNhcHR1cmUoZGVjbGFyYXRpb24uaWQsIHYgPT5cbiAgICAgICAgICAgICAgYWRkTmFtZWQodi5uYW1lLCB2LCBwYXJlbnQsIGlzVHlwZVZhcmlhYmxlRGVjbCkpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICAnRXhwb3J0QWxsRGVjbGFyYXRpb24nOiBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICBpZiAobm9kZS5zb3VyY2UgPT0gbnVsbCkgcmV0dXJuIC8vIG5vdCBzdXJlIGlmIHRoaXMgaXMgZXZlciB0cnVlXG5cbiAgICAgICAgY29uc3QgcmVtb3RlRXhwb3J0cyA9IEV4cG9ydE1hcC5nZXQobm9kZS5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICAgIGlmIChyZW1vdGVFeHBvcnRzID09IG51bGwpIHJldHVyblxuXG4gICAgICAgIGlmIChyZW1vdGVFeHBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICByZW1vdGVFeHBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBub2RlKVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyZW50ID0gZ2V0UGFyZW50KG5vZGUpXG5cbiAgICAgICAgbGV0IGFueSA9IGZhbHNlXG4gICAgICAgIHJlbW90ZUV4cG9ydHMuZm9yRWFjaCgodiwgbmFtZSkgPT5cbiAgICAgICAgICBuYW1lICE9PSAnZGVmYXVsdCcgJiZcbiAgICAgICAgICAoYW55ID0gdHJ1ZSkgJiYgLy8gcG9vciBtYW4ncyBmaWx0ZXJcbiAgICAgICAgICBhZGROYW1lZChuYW1lLCBub2RlLCBwYXJlbnQpKVxuXG4gICAgICAgIGlmICghYW55KSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQobm9kZS5zb3VyY2UsXG4gICAgICAgICAgICBgTm8gbmFtZWQgZXhwb3J0cyBmb3VuZCBpbiBtb2R1bGUgJyR7bm9kZS5zb3VyY2UudmFsdWV9Jy5gKVxuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICAnUHJvZ3JhbTpleGl0JzogZnVuY3Rpb24gKCkge1xuICAgICAgICBmb3IgKGxldCBbLCBuYW1lZF0gb2YgbmFtZXNwYWNlKSB7XG4gICAgICAgICAgZm9yIChsZXQgW25hbWUsIG5vZGVzXSBvZiBuYW1lZCkge1xuICAgICAgICAgICAgaWYgKG5vZGVzLnNpemUgPD0gMSkgY29udGludWVcblxuICAgICAgICAgICAgaWYgKGlzVHlwZXNjcmlwdEZ1bmN0aW9uT3ZlcmxvYWRzKG5vZGVzKSkgY29udGludWVcblxuICAgICAgICAgICAgZm9yIChsZXQgbm9kZSBvZiBub2Rlcykge1xuICAgICAgICAgICAgICBpZiAobmFtZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQobm9kZSwgJ011bHRpcGxlIGRlZmF1bHQgZXhwb3J0cy4nKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICAgICAgIGBNdWx0aXBsZSBleHBvcnRzIG9mIG5hbWUgJyR7bmFtZS5yZXBsYWNlKHRzVHlwZVByZWZpeCwgJycpfScuYFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9leHBvcnQuanMiXSwibmFtZXMiOlsicm9vdFByb2dyYW0iLCJ0c1R5cGVQcmVmaXgiLCJpc1R5cGVzY3JpcHRGdW5jdGlvbk92ZXJsb2FkcyIsIm5vZGVzIiwidHlwZXMiLCJTZXQiLCJBcnJheSIsImZyb20iLCJub2RlIiwicGFyZW50IiwidHlwZSIsImhhcyIsInNpemUiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwibmFtZXNwYWNlIiwiTWFwIiwiYWRkTmFtZWQiLCJuYW1lIiwiaXNUeXBlIiwic2V0IiwibmFtZWQiLCJnZXQiLCJrZXkiLCJhZGQiLCJnZXRQYXJlbnQiLCJleHBvcnRlZCIsImRlY2xhcmF0aW9uIiwiaXNUeXBlVmFyaWFibGVEZWNsIiwia2luZCIsImlkIiwiZGVjbGFyYXRpb25zIiwidiIsInNvdXJjZSIsInJlbW90ZUV4cG9ydHMiLCJFeHBvcnRNYXAiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsImFueSIsImZvckVhY2giLCJyZXBvcnQiLCJyZXBsYWNlIl0sIm1hcHBpbmdzIjoicW9CQUFBLHlDO0FBQ0EscUM7QUFDQSwrQzs7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CQSxNQUFNQSxjQUFjLE1BQXBCO0FBQ0EsTUFBTUMsZUFBZSxPQUFyQjs7QUFFQTs7Ozs7Ozs7OztBQVVBLFNBQVNDLDZCQUFULENBQXVDQyxLQUF2QyxFQUE4QztBQUM1QyxRQUFNQyxRQUFRLElBQUlDLEdBQUosQ0FBUUMsTUFBTUMsSUFBTixDQUFXSixLQUFYLEVBQWtCSyxRQUFRQSxLQUFLQyxNQUFMLENBQVlDLElBQXRDLENBQVIsQ0FBZDtBQUNBO0FBQ0VOLFVBQU1PLEdBQU4sQ0FBVSxtQkFBVjs7QUFFRVAsVUFBTVEsSUFBTixLQUFlLENBQWY7QUFDQ1IsVUFBTVEsSUFBTixLQUFlLENBQWYsSUFBb0JSLE1B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QTBCQSxLQUExQixFQUFpQywwQ0FBdkJILElBQXVCLGdCQUFqQnJCLEtBQWlCO0FBQy9CLGdCQUFJQSxNQUFNUyxJQUFOLElBQWMsQ0FBbEIsRUFBcUI7O0FBRXJCLGdCQUFJViw4QkFBOEJDLEtBQTlCLENBQUosRUFBMEM7O0FBRTFDLGlCQUFLLElBQUlLLElBQVQsSUFBaUJMLEtBQWpCLEVBQXdCO0FBQ3RCLGtCQUFJcUIsU0FBUyxTQUFiLEVBQXdCO0FBQ3RCSix3QkFBUTRCLE1BQVIsQ0FBZXhDLElBQWYsRUFBcUIsMkJBQXJCO0FBQ0QsZUFGRCxNQUVPO0FBQ0xZLHdCQUFRNEIsTUFBUjtBQUNFeEMsb0JBREY7QUFFRyw2Q0FBNEJnQixLQUFLeUIsT0FBTCxDQUFhaEQsWUFBYixFQUEyQixFQUEzQixDQUErQixJQUY5RDs7QUFJRDtBQUNGO0FBQ0Y7QUFDRjtBQUNGLE9BaEZJLEVBQVA7O0FBa0ZELEdBekhjLEVBQWpCIiwiZmlsZSI6ImV4cG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeHBvcnRNYXAsIHsgcmVjdXJzaXZlUGF0dGVybkNhcHR1cmUgfSBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuaW1wb3J0IGluY2x1ZGVzIGZyb20gJ2FycmF5LWluY2x1ZGVzJ1xuXG4vKlxuTm90ZXMgb24gVHlwZVNjcmlwdCBuYW1lc3BhY2VzIGFrYSBUU01vZHVsZURlY2xhcmF0aW9uOlxuXG5UaGVyZSBhcmUgdHdvIGZvcm1zOlxuLSBhY3RpdmUgbmFtZXNwYWNlczogbmFtZXNwYWNlIEZvbyB7fSAvIG1vZHVsZSBGb28ge31cbi0gYW1iaWVudCBtb2R1bGVzOyBkZWNsYXJlIG1vZHVsZSBcImVzbGludC1wbHVnaW4taW1wb3J0XCIge31cblxuYWN0aXZlIG5hbWVzcGFjZXM6XG4tIGNhbm5vdCBjb250YWluIGEgZGVmYXVsdCBleHBvcnRcbi0gY2Fubm90IGNvbnRhaW4gYW4gZXhwb3J0IGFsbFxuLSBjYW5ub3QgY29udGFpbiBhIG11bHRpIG5hbWUgZXhwb3J0IChleHBvcnQgeyBhLCBiIH0pXG4tIGNhbiBoYXZlIGFjdGl2ZSBuYW1lc3BhY2VzIG5lc3RlZCB3aXRoaW4gdGhlbVxuXG5hbWJpZW50IG5hbWVzcGFjZXM6XG4tIGNhbiBvbmx5IGJlIGRlZmluZWQgaW4gLmQudHMgZmlsZXNcbi0gY2Fubm90IGJlIG5lc3RlZCB3aXRoaW4gYWN0aXZlIG5hbWVzcGFjZXNcbi0gaGF2ZSBubyBvdGhlciByZXN0cmljdGlvbnNcbiovXG5cbmNvbnN0IHJvb3RQcm9ncmFtID0gJ3Jvb3QnXG5jb25zdCB0c1R5cGVQcmVmaXggPSAndHlwZTonXG5cbi8qKlxuICogRGV0ZWN0IGZ1bmN0aW9uIG92ZXJsb2FkcyBsaWtlOlxuICogYGBgdHNcbiAqIGV4cG9ydCBmdW5jdGlvbiBmb28oYTogbnVtYmVyKTtcbiAqIGV4cG9ydCBmdW5jdGlvbiBmb28oYTogc3RyaW5nKTtcbiAqIGV4cG9ydCBmdW5jdGlvbiBmb28oYTogbnVtYmVyfHN0cmluZykgeyByZXR1cm4gYTsgfVxuICogYGBgXG4gKiBAcGFyYW0ge1NldDxPYmplY3Q+fSBub2Rlc1xuICogQHJldHVybnMge2Jvb2xlYW59XG4gKi9cbmZ1bmN0aW9uIGlzVHlwZXNjcmlwdEZ1bmN0aW9uT3ZlcmxvYWRzKG5vZGVzKSB7XG4gIGNvbnN0IHR5cGVzID0gbmV3IFNldChBcnJheS5mcm9tKG5vZGVzLCBub2RlID0+IG5vZGUucGFyZW50LnR5cGUpKVxuICByZXR1cm4gKFxuICAgIHR5cGVzLmhhcygnVFNEZWNsYXJlRnVuY3Rpb24nKSAmJlxuICAgIChcbiAgICAgIHR5cGVzLnNpemUgPT09IDEgfHxcbiAgICAgICh0eXBlcy5zaXplID09PSAyICYmIHR5cGVzLmhhcygnRnVuY3Rpb25EZWNsYXJhdGlvbicpKVxuICAgIClcbiAgKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ2V4cG9ydCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgY29uc3QgbmFtZXNwYWNlID0gbmV3IE1hcChbW3Jvb3RQcm9ncmFtLCBuZXcgTWFwKCldXSlcblxuICAgIGZ1bmN0aW9uIGFkZE5hbWVkKG5hbWUsIG5vZGUsIHBhcmVudCwgaXNUeXBlKSB7XG4gICAgICBpZiAoIW5hbWVzcGFjZS5oYXMocGFyZW50KSkge1xuICAgICAgICBuYW1lc3BhY2Uuc2V0KHBhcmVudCwgbmV3IE1hcCgpKVxuICAgICAgfVxuICAgICAgY29uc3QgbmFtZWQgPSBuYW1lc3BhY2UuZ2V0KHBhcmVudClcblxuICAgICAgY29uc3Qga2V5ID0gaXNUeXBlID8gYCR7dHNUeXBlUHJlZml4fSR7bmFtZX1gIDogbmFtZVxuICAgICAgbGV0IG5vZGVzID0gbmFtZWQuZ2V0KGtleSlcblxuICAgICAgaWYgKG5vZGVzID09IG51bGwpIHtcbiAgICAgICAgbm9kZXMgPSBuZXcgU2V0KClcbiAgICAgICAgbmFtZWQuc2V0KGtleSwgbm9kZXMpXG4gICAgICB9XG5cbiAgICAgIG5vZGVzLmFkZChub2RlKVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldFBhcmVudChub2RlKSB7XG4gICAgICBpZiAobm9kZS5wYXJlbnQgJiYgbm9kZS5wYXJlbnQudHlwZSA9PT0gJ1RTTW9kdWxlQmxvY2snKSB7XG4gICAgICAgIHJldHVybiBub2RlLnBhcmVudC5wYXJlbnRcbiAgICAgIH1cblxuICAgICAgLy8ganVzdCBpbiBjYXNlIHNvbWVob3cgYSBub24tdHMgbmFtZXNwYWNlIGV4cG9ydCBkZWNsYXJhdGlvbiBpc24ndCBkaXJlY3RseVxuICAgICAgLy8gcGFyZW50ZWQgdG8gdGhlIHJvb3QgUHJvZ3JhbSBub2RlXG4gICAgICByZXR1cm4gcm9vdFByb2dyYW1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ0V4cG9ydERlZmF1bHREZWNsYXJhdGlvbic6IChub2RlKSA9PiBhZGROYW1lZCgnZGVmYXVsdCcsIG5vZGUsIGdldFBhcmVudChub2RlKSksXG5cbiAgICAgICdFeHBvcnRTcGVjaWZpZXInOiAobm9kZSkgPT4gYWRkTmFtZWQobm9kZS5leHBvcnRlZC5uYW1lLCBub2RlLmV4cG9ydGVkLCBnZXRQYXJlbnQobm9kZSkpLFxuXG4gICAgICAnRXhwb3J0TmFtZWREZWNsYXJhdGlvbic6IGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uID09IG51bGwpIHJldHVyblxuXG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGdldFBhcmVudChub2RlKVxuICAgICAgICAvLyBzdXBwb3J0IGZvciBvbGQgVHlwZVNjcmlwdCB2ZXJzaW9uc1xuICAgICAgICBjb25zdCBpc1R5cGVWYXJpYWJsZURlY2wgPSBub2RlLmRlY2xhcmF0aW9uLmtpbmQgPT09ICd0eXBlJ1xuXG4gICAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uLmlkICE9IG51bGwpIHtcbiAgICAgICAgICBpZiAoaW5jbHVkZXMoW1xuICAgICAgICAgICAgJ1RTVHlwZUFsaWFzRGVjbGFyYXRpb24nLFxuICAgICAgICAgICAgJ1RTSW50ZXJmYWNlRGVjbGFyYXRpb24nLFxuICAgICAgICAgIF0sIG5vZGUuZGVjbGFyYXRpb24udHlwZSkpIHtcbiAgICAgICAgICAgIGFkZE5hbWVkKG5vZGUuZGVjbGFyYXRpb24uaWQubmFtZSwgbm9kZS5kZWNsYXJhdGlvbi5pZCwgcGFyZW50LCB0cnVlKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhZGROYW1lZChub2RlLmRlY2xhcmF0aW9uLmlkLm5hbWUsIG5vZGUuZGVjbGFyYXRpb24uaWQsIHBhcmVudCwgaXNUeXBlVmFyaWFibGVEZWNsKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uLmRlY2xhcmF0aW9ucyAhPSBudWxsKSB7XG4gICAgICAgICAgZm9yIChsZXQgZGVjbGFyYXRpb24gb2Ygbm9kZS5kZWNsYXJhdGlvbi5kZWNsYXJhdGlvbnMpIHtcbiAgICAgICAgICAgIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKGRlY2xhcmF0aW9uLmlkLCB2ID0+XG4gICAgICAgICAgICAgIGFkZE5hbWVkKHYubmFtZSwgdiwgcGFyZW50LCBpc1R5cGVWYXJpYWJsZURlY2wpKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgJ0V4cG9ydEFsbERlY2xhcmF0aW9uJzogZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgICAgaWYgKG5vZGUuc291cmNlID09IG51bGwpIHJldHVybiAvLyBub3Qgc3VyZSBpZiB0aGlzIGlzIGV2ZXIgdHJ1ZVxuXG4gICAgICAgIC8vIGBleHBvcnQgKiBhcyBYIGZyb20gJ3BhdGgnYCBkb2VzIG5vdCBjb25mbGljdFxuICAgICAgICBpZiAobm9kZS5leHBvcnRlZCAmJiBub2RlLmV4cG9ydGVkLm5hbWUpIHJldHVyblxuXG4gICAgICAgIGNvbnN0IHJlbW90ZUV4cG9ydHMgPSBFeHBvcnRNYXAuZ2V0KG5vZGUuc291cmNlLnZhbHVlLCBjb250ZXh0KVxuICAgICAgICBpZiAocmVtb3RlRXhwb3J0cyA9PSBudWxsKSByZXR1cm5cblxuICAgICAgICBpZiAocmVtb3RlRXhwb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgcmVtb3RlRXhwb3J0cy5yZXBvcnRFcnJvcnMoY29udGV4dCwgbm9kZSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGdldFBhcmVudChub2RlKVxuXG4gICAgICAgIGxldCBhbnkgPSBmYWxzZVxuICAgICAgICByZW1vdGVFeHBvcnRzLmZvckVhY2goKHYsIG5hbWUpID0+XG4gICAgICAgICAgbmFtZSAhPT0gJ2RlZmF1bHQnICYmXG4gICAgICAgICAgKGFueSA9IHRydWUpICYmIC8vIHBvb3IgbWFuJ3MgZmlsdGVyXG4gICAgICAgICAgYWRkTmFtZWQobmFtZSwgbm9kZSwgcGFyZW50KSlcblxuICAgICAgICBpZiAoIWFueSkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgICAgICAgbm9kZS5zb3VyY2UsXG4gICAgICAgICAgICBgTm8gbmFtZWQgZXhwb3J0cyBmb3VuZCBpbiBtb2R1bGUgJyR7bm9kZS5zb3VyY2UudmFsdWV9Jy5gXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICAnUHJvZ3JhbTpleGl0JzogZnVuY3Rpb24gKCkge1xuICAgICAgICBmb3IgKGxldCBbLCBuYW1lZF0gb2YgbmFtZXNwYWNlKSB7XG4gICAgICAgICAgZm9yIChsZXQgW25hbWUsIG5vZGVzXSBvZiBuYW1lZCkge1xuICAgICAgICAgICAgaWYgKG5vZGVzLnNpemUgPD0gMSkgY29udGludWVcblxuICAgICAgICAgICAgaWYgKGlzVHlwZXNjcmlwdEZ1bmN0aW9uT3ZlcmxvYWRzKG5vZGVzKSkgY29udGludWVcblxuICAgICAgICAgICAgZm9yIChsZXQgbm9kZSBvZiBub2Rlcykge1xuICAgICAgICAgICAgICBpZiAobmFtZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQobm9kZSwgJ011bHRpcGxlIGRlZmF1bHQgZXhwb3J0cy4nKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICAgICAgIGBNdWx0aXBsZSBleHBvcnRzIG9mIG5hbWUgJyR7bmFtZS5yZXBsYWNlKHRzVHlwZVByZWZpeCwgJycpfScuYFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/exports-last.js b/node_modules/eslint-plugin-import/lib/rules/exports-last.js index a8ff6a73..54412a67 100644 --- a/node_modules/eslint-plugin-import/lib/rules/exports-last.js +++ b/node_modules/eslint-plugin-import/lib/rules/exports-last.js @@ -1,31 +1,23 @@ -'use strict'; +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function isNonExportStatement(_ref) { - let type = _ref.type; - - return type !== 'ExportDefaultDeclaration' && type !== 'ExportNamedDeclaration' && type !== 'ExportAllDeclaration'; +function isNonExportStatement(_ref) {let type = _ref.type; + return type !== 'ExportDefaultDeclaration' && + type !== 'ExportNamedDeclaration' && + type !== 'ExportAllDeclaration'; } module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('exports-last') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('exports-last') }, + + schema: [] }, + create: function (context) { return { - Program: function (_ref2) { - let body = _ref2.body; - + Program: function (_ref2) {let body = _ref2.body; const lastNonExportStatementIndex = body.reduce(function findLastIndex(acc, item, index) { if (isNonExportStatement(item)) { return index; @@ -38,13 +30,12 @@ module.exports = { if (!isNonExportStatement(node)) { context.report({ node, - message: 'Export statements should appear at the end of the file' - }); + message: 'Export statements should appear at the end of the file' }); + } }); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9leHBvcnRzLWxhc3QuanMiXSwibmFtZXMiOlsiaXNOb25FeHBvcnRTdGF0ZW1lbnQiLCJ0eXBlIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsIlByb2dyYW0iLCJib2R5IiwibGFzdE5vbkV4cG9ydFN0YXRlbWVudEluZGV4IiwicmVkdWNlIiwiZmluZExhc3RJbmRleCIsImFjYyIsIml0ZW0iLCJpbmRleCIsInNsaWNlIiwiZm9yRWFjaCIsImNoZWNrTm9uRXhwb3J0Iiwibm9kZSIsInJlcG9ydCIsIm1lc3NhZ2UiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7OztBQUVBLFNBQVNBLG9CQUFULE9BQXdDO0FBQUEsTUFBUkMsSUFBUSxRQUFSQSxJQUFROztBQUN0QyxTQUFPQSxTQUFTLDBCQUFULElBQ0xBLFNBQVMsd0JBREosSUFFTEEsU0FBUyxzQkFGWDtBQUdEOztBQUVEQyxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkgsVUFBTSxZQURGO0FBRUpJLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxjQUFSO0FBREQsS0FGRjtBQUtKQyxZQUFRO0FBTEosR0FEUzs7QUFTZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLFdBQU87QUFDTEMsZUFBUyxpQkFBb0I7QUFBQSxZQUFSQyxJQUFRLFNBQVJBLElBQVE7O0FBQzNCLGNBQU1DLDhCQUE4QkQsS0FBS0UsTUFBTCxDQUFZLFNBQVNDLGFBQVQsQ0FBdUJDLEdBQXZCLEVBQTRCQyxJQUE1QixFQUFrQ0MsS0FBbEMsRUFBeUM7QUFDdkYsY0FBSWpCLHFCQUFxQmdCLElBQXJCLENBQUosRUFBZ0M7QUFDOUIsbUJBQU9DLEtBQVA7QUFDRDtBQUNELGlCQUFPRixHQUFQO0FBQ0QsU0FMbUMsRUFLakMsQ0FBQyxDQUxnQyxDQUFwQzs7QUFPQSxZQUFJSCxnQ0FBZ0MsQ0FBQyxDQUFyQyxFQUF3QztBQUN0Q0QsZUFBS08sS0FBTCxDQUFXLENBQVgsRUFBY04sMkJBQWQsRUFBMkNPLE9BQTNDLENBQW1ELFNBQVNDLGNBQVQsQ0FBd0JDLElBQXhCLEVBQThCO0FBQy9FLGdCQUFJLENBQUNyQixxQkFBcUJxQixJQUFyQixDQUFMLEVBQWlDO0FBQy9CWixzQkFBUWEsTUFBUixDQUFlO0FBQ2JELG9CQURhO0FBRWJFLHlCQUFTO0FBRkksZUFBZjtBQUlEO0FBQ0YsV0FQRDtBQVFEO0FBQ0Y7QUFuQkksS0FBUDtBQXFCRDtBQS9CYyxDQUFqQiIsImZpbGUiOiJleHBvcnRzLWxhc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiBpc05vbkV4cG9ydFN0YXRlbWVudCh7IHR5cGUgfSkge1xuICByZXR1cm4gdHlwZSAhPT0gJ0V4cG9ydERlZmF1bHREZWNsYXJhdGlvbicgJiZcbiAgICB0eXBlICE9PSAnRXhwb3J0TmFtZWREZWNsYXJhdGlvbicgJiZcbiAgICB0eXBlICE9PSAnRXhwb3J0QWxsRGVjbGFyYXRpb24nXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZXhwb3J0cy1sYXN0JyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgUHJvZ3JhbTogZnVuY3Rpb24gKHsgYm9keSB9KSB7XG4gICAgICAgIGNvbnN0IGxhc3ROb25FeHBvcnRTdGF0ZW1lbnRJbmRleCA9IGJvZHkucmVkdWNlKGZ1bmN0aW9uIGZpbmRMYXN0SW5kZXgoYWNjLCBpdGVtLCBpbmRleCkge1xuICAgICAgICAgIGlmIChpc05vbkV4cG9ydFN0YXRlbWVudChpdGVtKSkge1xuICAgICAgICAgICAgcmV0dXJuIGluZGV4XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgfSwgLTEpXG5cbiAgICAgICAgaWYgKGxhc3ROb25FeHBvcnRTdGF0ZW1lbnRJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBib2R5LnNsaWNlKDAsIGxhc3ROb25FeHBvcnRTdGF0ZW1lbnRJbmRleCkuZm9yRWFjaChmdW5jdGlvbiBjaGVja05vbkV4cG9ydChub2RlKSB7XG4gICAgICAgICAgICBpZiAoIWlzTm9uRXhwb3J0U3RhdGVtZW50KG5vZGUpKSB7XG4gICAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdFeHBvcnQgc3RhdGVtZW50cyBzaG91bGQgYXBwZWFyIGF0IHRoZSBlbmQgb2YgdGhlIGZpbGUnLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9leHBvcnRzLWxhc3QuanMiXSwibmFtZXMiOlsiaXNOb25FeHBvcnRTdGF0ZW1lbnQiLCJ0eXBlIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsIlByb2dyYW0iLCJib2R5IiwibGFzdE5vbkV4cG9ydFN0YXRlbWVudEluZGV4IiwicmVkdWNlIiwiZmluZExhc3RJbmRleCIsImFjYyIsIml0ZW0iLCJpbmRleCIsInNsaWNlIiwiZm9yRWFjaCIsImNoZWNrTm9uRXhwb3J0Iiwibm9kZSIsInJlcG9ydCIsIm1lc3NhZ2UiXSwibWFwcGluZ3MiOiJhQUFBLHFDOztBQUVBLFNBQVNBLG9CQUFULE9BQXdDLEtBQVJDLElBQVEsUUFBUkEsSUFBUTtBQUN0QyxTQUFPQSxTQUFTLDBCQUFUO0FBQ0xBLFdBQVMsd0JBREo7QUFFTEEsV0FBUyxzQkFGWDtBQUdEOztBQUVEQyxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkgsVUFBTSxZQURGO0FBRUpJLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxjQUFSLENBREQsRUFGRjs7QUFLSkMsWUFBUSxFQUxKLEVBRFM7OztBQVNmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7QUFDekIsV0FBTztBQUNMQyxlQUFTLGlCQUFvQixLQUFSQyxJQUFRLFNBQVJBLElBQVE7QUFDM0IsY0FBTUMsOEJBQThCRCxLQUFLRSxNQUFMLENBQVksU0FBU0MsYUFBVCxDQUF1QkMsR0FBdkIsRUFBNEJDLElBQTVCLEVBQWtDQyxLQUFsQyxFQUF5QztBQUN2RixjQUFJakIscUJBQXFCZ0IsSUFBckIsQ0FBSixFQUFnQztBQUM5QixtQkFBT0MsS0FBUDtBQUNEO0FBQ0QsaUJBQU9GLEdBQVA7QUFDRCxTQUxtQyxFQUtqQyxDQUFDLENBTGdDLENBQXBDOztBQU9BLFlBQUlILGdDQUFnQyxDQUFDLENBQXJDLEVBQXdDO0FBQ3RDRCxlQUFLTyxLQUFMLENBQVcsQ0FBWCxFQUFjTiwyQkFBZCxFQUEyQ08sT0FBM0MsQ0FBbUQsU0FBU0MsY0FBVCxDQUF3QkMsSUFBeEIsRUFBOEI7QUFDL0UsZ0JBQUksQ0FBQ3JCLHFCQUFxQnFCLElBQXJCLENBQUwsRUFBaUM7QUFDL0JaLHNCQUFRYSxNQUFSLENBQWU7QUFDYkQsb0JBRGE7QUFFYkUseUJBQVMsd0RBRkksRUFBZjs7QUFJRDtBQUNGLFdBUEQ7QUFRRDtBQUNGLE9BbkJJLEVBQVA7O0FBcUJELEdBL0JjLEVBQWpCIiwiZmlsZSI6ImV4cG9ydHMtbGFzdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIGlzTm9uRXhwb3J0U3RhdGVtZW50KHsgdHlwZSB9KSB7XG4gIHJldHVybiB0eXBlICE9PSAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJyAmJlxuICAgIHR5cGUgIT09ICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJyAmJlxuICAgIHR5cGUgIT09ICdFeHBvcnRBbGxEZWNsYXJhdGlvbidcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCdleHBvcnRzLWxhc3QnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIHJldHVybiB7XG4gICAgICBQcm9ncmFtOiBmdW5jdGlvbiAoeyBib2R5IH0pIHtcbiAgICAgICAgY29uc3QgbGFzdE5vbkV4cG9ydFN0YXRlbWVudEluZGV4ID0gYm9keS5yZWR1Y2UoZnVuY3Rpb24gZmluZExhc3RJbmRleChhY2MsIGl0ZW0sIGluZGV4KSB7XG4gICAgICAgICAgaWYgKGlzTm9uRXhwb3J0U3RhdGVtZW50KGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gaW5kZXhcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICB9LCAtMSlcblxuICAgICAgICBpZiAobGFzdE5vbkV4cG9ydFN0YXRlbWVudEluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIGJvZHkuc2xpY2UoMCwgbGFzdE5vbkV4cG9ydFN0YXRlbWVudEluZGV4KS5mb3JFYWNoKGZ1bmN0aW9uIGNoZWNrTm9uRXhwb3J0KG5vZGUpIHtcbiAgICAgICAgICAgIGlmICghaXNOb25FeHBvcnRTdGF0ZW1lbnQobm9kZSkpIHtcbiAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogJ0V4cG9ydCBzdGF0ZW1lbnRzIHNob3VsZCBhcHBlYXIgYXQgdGhlIGVuZCBvZiB0aGUgZmlsZScsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/extensions.js b/node_modules/eslint-plugin-import/lib/rules/extensions.js index 29b5a8a4..603be860 100644 --- a/node_modules/eslint-plugin-import/lib/rules/extensions.js +++ b/node_modules/eslint-plugin-import/lib/rules/extensions.js @@ -1,41 +1,29 @@ -'use strict'; - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); +'use strict';var _path = require('path');var _path2 = _interopRequireDefault(_path); +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); var _importType = require('../core/importType'); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const enumValues = { enum: ['always', 'ignorePackages', 'never'] }; const patternProperties = { type: 'object', - patternProperties: { '.*': enumValues } -}; + patternProperties: { '.*': enumValues } }; + const properties = { type: 'object', properties: { 'pattern': patternProperties, - 'ignorePackages': { type: 'boolean' } - } -}; + 'ignorePackages': { type: 'boolean' } } }; + + function buildProperties(context) { const result = { defaultConfig: 'never', pattern: {}, - ignorePackages: false - }; + ignorePackages: false }; + context.options.forEach(obj => { @@ -74,33 +62,45 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('extensions') - }, + url: (0, _docsUrl2.default)('extensions') }, + schema: { - anyOf: [{ + anyOf: [ + { type: 'array', items: [enumValues], - additionalItems: false - }, { + additionalItems: false }, + + { type: 'array', - items: [enumValues, properties], - additionalItems: false - }, { + items: [ + enumValues, + properties], + + additionalItems: false }, + + { type: 'array', items: [properties], - additionalItems: false - }, { + additionalItems: false }, + + { type: 'array', items: [patternProperties], - additionalItems: false - }, { + additionalItems: false }, + + { type: 'array', - items: [enumValues, patternProperties], - additionalItems: false - }] - } - }, + items: [ + enumValues, + patternProperties], + + additionalItems: false }] } }, + + + + create: function (context) { @@ -134,11 +134,10 @@ module.exports = { return false; } - function checkFileExtension(node) { - const source = node.source; + function checkFileExtension(node) {const + source = node.source; // bail if the declaration doesn't have a source, e.g. "export { foo };" - if (!source) return; const importPathWithQueryString = source.value; @@ -159,7 +158,8 @@ module.exports = { const extension = _path2.default.extname(resolvedPath || importPath).substring(1); // determine if this is a module - const isPackage = (0, _importType.isExternalModule)(importPath, context.settings) || (0, _importType.isScoped)(importPath); + const isPackage = (0, _importType.isExternalModule)(importPath, context.settings) || + (0, _importType.isScoped)(importPath); if (!extension || !importPath.endsWith(`.${extension}`)) { const extensionRequired = isUseOfExtensionRequired(extension, isPackage); @@ -167,23 +167,23 @@ module.exports = { if (extensionRequired && !extensionForbidden) { context.report({ node: source, - message: `Missing file extension ${extension ? `"${extension}" ` : ''}for "${importPathWithQueryString}"` - }); + message: + `Missing file extension ${extension ? `"${extension}" ` : ''}for "${importPathWithQueryString}"` }); + } } else if (extension) { if (isUseOfExtensionForbidden(extension) && isResolvableWithoutExtension(importPath)) { context.report({ node: source, - message: `Unexpected use of file extension "${extension}" for "${importPathWithQueryString}"` - }); + message: `Unexpected use of file extension "${extension}" for "${importPathWithQueryString}"` }); + } } } return { ImportDeclaration: checkFileExtension, - ExportNamedDeclaration: checkFileExtension - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9leHRlbnNpb25zLmpzIl0sIm5hbWVzIjpbImVudW1WYWx1ZXMiLCJlbnVtIiwicGF0dGVyblByb3BlcnRpZXMiLCJ0eXBlIiwicHJvcGVydGllcyIsImJ1aWxkUHJvcGVydGllcyIsImNvbnRleHQiLCJyZXN1bHQiLCJkZWZhdWx0Q29uZmlnIiwicGF0dGVybiIsImlnbm9yZVBhY2thZ2VzIiwib3B0aW9ucyIsImZvckVhY2giLCJvYmoiLCJ1bmRlZmluZWQiLCJPYmplY3QiLCJhc3NpZ24iLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJhbnlPZiIsIml0ZW1zIiwiYWRkaXRpb25hbEl0ZW1zIiwiY3JlYXRlIiwicHJvcHMiLCJnZXRNb2RpZmllciIsImV4dGVuc2lvbiIsImlzVXNlT2ZFeHRlbnNpb25SZXF1aXJlZCIsImlzUGFja2FnZSIsImlzVXNlT2ZFeHRlbnNpb25Gb3JiaWRkZW4iLCJpc1Jlc29sdmFibGVXaXRob3V0RXh0ZW5zaW9uIiwiZmlsZSIsInBhdGgiLCJleHRuYW1lIiwiZmlsZVdpdGhvdXRFeHRlbnNpb24iLCJzbGljZSIsImxlbmd0aCIsInJlc29sdmVkRmlsZVdpdGhvdXRFeHRlbnNpb24iLCJpc0V4dGVybmFsUm9vdE1vZHVsZSIsInNsYXNoQ291bnQiLCJzcGxpdCIsImNoZWNrRmlsZUV4dGVuc2lvbiIsIm5vZGUiLCJzb3VyY2UiLCJpbXBvcnRQYXRoV2l0aFF1ZXJ5U3RyaW5nIiwidmFsdWUiLCJzZXR0aW5ncyIsImltcG9ydFBhdGgiLCJyZXBsYWNlIiwicmVzb2x2ZWRQYXRoIiwic3Vic3RyaW5nIiwiZW5kc1dpdGgiLCJleHRlbnNpb25SZXF1aXJlZCIsImV4dGVuc2lvbkZvcmJpZGRlbiIsInJlcG9ydCIsIm1lc3NhZ2UiLCJJbXBvcnREZWNsYXJhdGlvbiIsIkV4cG9ydE5hbWVkRGVjbGFyYXRpb24iXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7QUFF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LEtBQVA7QUFJRDtBQS9IYyxDQUFqQiIsImZpbGUiOiJleHRlbnNpb25zLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcblxuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IHsgaXNCdWlsdEluLCBpc0V4dGVybmFsTW9kdWxlLCBpc1Njb3BlZCwgaXNTY29wZWRNb2R1bGUgfSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5jb25zdCBlbnVtVmFsdWVzID0geyBlbnVtOiBbICdhbHdheXMnLCAnaWdub3JlUGFja2FnZXMnLCAnbmV2ZXInIF0gfVxuY29uc3QgcGF0dGVyblByb3BlcnRpZXMgPSB7XG4gIHR5cGU6ICdvYmplY3QnLFxuICBwYXR0ZXJuUHJvcGVydGllczogeyAnLionOiBlbnVtVmFsdWVzIH0sXG59XG5jb25zdCBwcm9wZXJ0aWVzID0ge1xuICB0eXBlOiAnb2JqZWN0JyxcbiAgcHJvcGVydGllczoge1xuICAgICdwYXR0ZXJuJzogcGF0dGVyblByb3BlcnRpZXMsXG4gICAgJ2lnbm9yZVBhY2thZ2VzJzogeyB0eXBlOiAnYm9vbGVhbicgfSxcbiAgfSxcbn1cblxuZnVuY3Rpb24gYnVpbGRQcm9wZXJ0aWVzKGNvbnRleHQpIHtcblxuICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgIGRlZmF1bHRDb25maWc6ICduZXZlcicsXG4gICAgICBwYXR0ZXJuOiB7fSxcbiAgICAgIGlnbm9yZVBhY2thZ2VzOiBmYWxzZSxcbiAgICB9XG5cbiAgICBjb250ZXh0Lm9wdGlvbnMuZm9yRWFjaChvYmogPT4ge1xuXG4gICAgICAvLyBJZiB0aGlzIGlzIGEgc3RyaW5nLCBzZXQgZGVmYXVsdENvbmZpZyB0byBpdHMgdmFsdWVcbiAgICAgIGlmICh0eXBlb2Ygb2JqID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXN1bHQuZGVmYXVsdENvbmZpZyA9IG9ialxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gSWYgdGhpcyBpcyBub3QgdGhlIG5ldyBzdHJ1Y3R1cmUsIHRyYW5zZmVyIGFsbCBwcm9wcyB0byByZXN1bHQucGF0dGVyblxuICAgICAgaWYgKG9iai5wYXR0ZXJuID09PSB1bmRlZmluZWQgJiYgb2JqLmlnbm9yZVBhY2thZ2VzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihyZXN1bHQucGF0dGVybiwgb2JqKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gSWYgcGF0dGVybiBpcyBwcm92aWRlZCwgdHJhbnNmZXIgYWxsIHByb3BzXG4gICAgICBpZiAob2JqLnBhdHRlcm4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBPYmplY3QuYXNzaWduKHJlc3VsdC5wYXR0ZXJuLCBvYmoucGF0dGVybilcbiAgICAgIH1cblxuICAgICAgLy8gSWYgaWdub3JlUGFja2FnZXMgaXMgcHJvdmlkZWQsIHRyYW5zZmVyIGl0IHRvIHJlc3VsdFxuICAgICAgaWYgKG9iai5pZ25vcmVQYWNrYWdlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJlc3VsdC5pZ25vcmVQYWNrYWdlcyA9IG9iai5pZ25vcmVQYWNrYWdlc1xuICAgICAgfVxuICAgIH0pXG5cbiAgICBpZiAocmVzdWx0LmRlZmF1bHRDb25maWcgPT09ICdpZ25vcmVQYWNrYWdlcycpIHtcbiAgICAgIHJlc3VsdC5kZWZhdWx0Q29uZmlnID0gJ2Fsd2F5cydcbiAgICAgIHJlc3VsdC5pZ25vcmVQYWNrYWdlcyA9IHRydWVcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZXh0ZW5zaW9ucycpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IHtcbiAgICAgIGFueU9mOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiBbZW51bVZhbHVlc10sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaXRlbXM6IFtcbiAgICAgICAgICAgIGVudW1WYWx1ZXMsXG4gICAgICAgICAgICBwcm9wZXJ0aWVzLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaXRlbXM6IFtwcm9wZXJ0aWVzXSxcbiAgICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczogW3BhdHRlcm5Qcm9wZXJ0aWVzXSxcbiAgICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczogW1xuICAgICAgICAgICAgZW51bVZhbHVlcyxcbiAgICAgICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG5cbiAgICBjb25zdCBwcm9wcyA9IGJ1aWxkUHJvcGVydGllcyhjb250ZXh0KVxuXG4gICAgZnVuY3Rpb24gZ2V0TW9kaWZpZXIoZXh0ZW5zaW9uKSB7XG4gICAgICByZXR1cm4gcHJvcHMucGF0dGVybltleHRlbnNpb25dIHx8IHByb3BzLmRlZmF1bHRDb25maWdcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc1VzZU9mRXh0ZW5zaW9uUmVxdWlyZWQoZXh0ZW5zaW9uLCBpc1BhY2thZ2UpIHtcbiAgICAgIHJldHVybiBnZXRNb2RpZmllcihleHRlbnNpb24pID09PSAnYWx3YXlzJyAmJiAoIXByb3BzLmlnbm9yZVBhY2thZ2VzIHx8ICFpc1BhY2thZ2UpXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaXNVc2VPZkV4dGVuc2lvbkZvcmJpZGRlbihleHRlbnNpb24pIHtcbiAgICAgIHJldHVybiBnZXRNb2RpZmllcihleHRlbnNpb24pID09PSAnbmV2ZXInXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaXNSZXNvbHZhYmxlV2l0aG91dEV4dGVuc2lvbihmaWxlKSB7XG4gICAgICBjb25zdCBleHRlbnNpb24gPSBwYXRoLmV4dG5hbWUoZmlsZSlcbiAgICAgIGNvbnN0IGZpbGVXaXRob3V0RXh0ZW5zaW9uID0gZmlsZS5zbGljZSgwLCAtZXh0ZW5zaW9uLmxlbmd0aClcbiAgICAgIGNvbnN0IHJlc29sdmVkRmlsZVdpdGhvdXRFeHRlbnNpb24gPSByZXNvbHZlKGZpbGVXaXRob3V0RXh0ZW5zaW9uLCBjb250ZXh0KVxuXG4gICAgICByZXR1cm4gcmVzb2x2ZWRGaWxlV2l0aG91dEV4dGVuc2lvbiA9PT0gcmVzb2x2ZShmaWxlLCBjb250ZXh0KVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGlzRXh0ZXJuYWxSb290TW9kdWxlKGZpbGUpIHtcbiAgICAgIGNvbnN0IHNsYXNoQ291bnQgPSBmaWxlLnNwbGl0KCcvJykubGVuZ3RoIC0gMVxuXG4gICAgICBpZiAoaXNTY29wZWRNb2R1bGUoZmlsZSkgJiYgc2xhc2hDb3VudCA8PSAxKSByZXR1cm4gdHJ1ZVxuICAgICAgaWYgKGlzRXh0ZXJuYWxNb2R1bGUoZmlsZSwgY29udGV4dCwgcmVzb2x2ZShmaWxlLCBjb250ZXh0KSkgJiYgIXNsYXNoQ291bnQpIHJldHVybiB0cnVlXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjaGVja0ZpbGVFeHRlbnNpb24obm9kZSkge1xuICAgICAgY29uc3QgeyBzb3VyY2UgfSA9IG5vZGVcblxuICAgICAgLy8gYmFpbCBpZiB0aGUgZGVjbGFyYXRpb24gZG9lc24ndCBoYXZlIGEgc291cmNlLCBlLmcuIFwiZXhwb3J0IHsgZm9vIH07XCJcbiAgICAgIGlmICghc291cmNlKSByZXR1cm5cblxuICAgICAgY29uc3QgaW1wb3J0UGF0aFdpdGhRdWVyeVN0cmluZyA9IHNvdXJjZS52YWx1ZVxuXG4gICAgICAvLyBkb24ndCBlbmZvcmNlIGFueXRoaW5nIG9uIGJ1aWx0aW5zXG4gICAgICBpZiAoaXNCdWlsdEluKGltcG9ydFBhdGhXaXRoUXVlcnlTdHJpbmcsIGNvbnRleHQuc2V0dGluZ3MpKSByZXR1cm5cblxuICAgICAgY29uc3QgaW1wb3J0UGF0aCA9IGltcG9ydFBhdGhXaXRoUXVlcnlTdHJpbmcucmVwbGFjZSgvXFw/KC4qKSQvLCAnJylcblxuICAgICAgLy8gZG9uJ3QgZW5mb3JjZSBpbiByb290IGV4dGVybmFsIHBhY2thZ2VzIGFzIHRoZXkgbWF5IGhhdmUgbmFtZXMgd2l0aCBgLmpzYC5cbiAgICAgIC8vIExpa2UgYGltcG9ydCBEZWNpbWFsIGZyb20gZGVjaW1hbC5qc2ApXG4gICAgICBpZiAoaXNFeHRlcm5hbFJvb3RNb2R1bGUoaW1wb3J0UGF0aCkpIHJldHVyblxuXG4gICAgICBjb25zdCByZXNvbHZlZFBhdGggPSByZXNvbHZlKGltcG9ydFBhdGgsIGNvbnRleHQpXG5cbiAgICAgIC8vIGdldCBleHRlbnNpb24gZnJvbSByZXNvbHZlZCBwYXRoLCBpZiBwb3NzaWJsZS5cbiAgICAgIC8vIGZvciB1bnJlc29sdmVkLCB1c2Ugc291cmNlIHZhbHVlLlxuICAgICAgY29uc3QgZXh0ZW5zaW9uID0gcGF0aC5leHRuYW1lKHJlc29sdmVkUGF0aCB8fCBpbXBvcnRQYXRoKS5zdWJzdHJpbmcoMSlcblxuICAgICAgLy8gZGV0ZXJtaW5lIGlmIHRoaXMgaXMgYSBtb2R1bGVcbiAgICAgIGNvbnN0IGlzUGFja2FnZSA9IGlzRXh0ZXJuYWxNb2R1bGUoaW1wb3J0UGF0aCwgY29udGV4dC5zZXR0aW5ncylcbiAgICAgICAgfHwgaXNTY29wZWQoaW1wb3J0UGF0aClcblxuICAgICAgaWYgKCFleHRlbnNpb24gfHwgIWltcG9ydFBhdGguZW5kc1dpdGgoYC4ke2V4dGVuc2lvbn1gKSkge1xuICAgICAgICBjb25zdCBleHRlbnNpb25SZXF1aXJlZCA9IGlzVXNlT2ZFeHRlbnNpb25SZXF1aXJlZChleHRlbnNpb24sIGlzUGFja2FnZSlcbiAgICAgICAgY29uc3QgZXh0ZW5zaW9uRm9yYmlkZGVuID0gaXNVc2VPZkV4dGVuc2lvbkZvcmJpZGRlbihleHRlbnNpb24pXG4gICAgICAgIGlmIChleHRlbnNpb25SZXF1aXJlZCAmJiAhZXh0ZW5zaW9uRm9yYmlkZGVuKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgbm9kZTogc291cmNlLFxuICAgICAgICAgICAgbWVzc2FnZTpcbiAgICAgICAgICAgICAgYE1pc3NpbmcgZmlsZSBleHRlbnNpb24gJHtleHRlbnNpb24gPyBgXCIke2V4dGVuc2lvbn1cIiBgIDogJyd9Zm9yIFwiJHtpbXBvcnRQYXRoV2l0aFF1ZXJ5U3RyaW5nfVwiYCxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGV4dGVuc2lvbikge1xuICAgICAgICBpZiAoaXNVc2VPZkV4dGVuc2lvbkZvcmJpZGRlbihleHRlbnNpb24pICYmIGlzUmVzb2x2YWJsZVdpdGhvdXRFeHRlbnNpb24oaW1wb3J0UGF0aCkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlOiBzb3VyY2UsXG4gICAgICAgICAgICBtZXNzYWdlOiBgVW5leHBlY3RlZCB1c2Ugb2YgZmlsZSBleHRlbnNpb24gXCIke2V4dGVuc2lvbn1cIiBmb3IgXCIke2ltcG9ydFBhdGhXaXRoUXVlcnlTdHJpbmd9XCJgLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb246IGNoZWNrRmlsZUV4dGVuc2lvbixcbiAgICAgIEV4cG9ydE5hbWVkRGVjbGFyYXRpb246IGNoZWNrRmlsZUV4dGVuc2lvbixcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + ExportNamedDeclaration: checkFileExtension }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9leHRlbnNpb25zLmpzIl0sIm5hbWVzIjpbImVudW1WYWx1ZXMiLCJlbnVtIiwicGF0dGVyblByb3BlcnRpZXMiLCJ0eXBlIiwicHJvcGVydGllcyIsImJ1aWxkUHJvcGVydGllcyIsImNvbnRleHQiLCJyZXN1bHQiLCJkZWZhdWx0Q29uZmlnIiwicGF0dGVybiIsImlnbm9yZVBhY2thZ2VzIiwib3B0aW9ucyIsImZvckVhY2giLCJvYmoiLCJ1bmRlZmluZWQiLCJPYmplY3QiLCJhc3NpZ24iLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJhbnlPZiIsIml0ZW1zIiwiYWRkaXRpb25hbEl0ZW1zIiwiY3JlYXRlIiwicHJvcHMiLCJnZXRNb2RpZmllciIsImV4dGVuc2lvbiIsImlzVXNlT2ZFeHRlbnNpb25SZXF1aXJlZCIsImlzUGFja2FnZSIsImlzVXNlT2ZFeHRlbnNpb25Gb3JiaWRkZW4iLCJpc1Jlc29sdmFibGVXaXRob3V0RXh0ZW5zaW9uIiwiZmlsZSIsInBhdGgiLCJleHRuYW1lIiwiZmlsZVdpdGhvdXRFeHRlbnNpb24iLCJzbGljZSIsImxlbmd0aCIsInJlc29sdmVkRmlsZVdpdGhvdXRFeHRlbnNpb24iLCJpc0V4dGVybmFsUm9vdE1vZHVsZSIsInNsYXNoQ291bnQiLCJzcGxpdCIsImNoZWNrRmlsZUV4dGVuc2lvbiIsIm5vZGUiLCJzb3VyY2UiLCJpbXBvcnRQYXRoV2l0aFF1ZXJ5U3RyaW5nIiwidmFsdWUiLCJzZXR0aW5ncyIsImltcG9ydFBhdGgiLCJyZXBsYWNlIiwicmVzb2x2ZWRQYXRoIiwic3Vic3RyaW5nIiwiZW5kc1dpdGgiLCJleHRlbnNpb25SZXF1aXJlZCIsImV4dGVuc2lvbkZvcmJpZGRlbiIsInJlcG9ydCIsIm1lc3NhZ2UiLCJJbXBvcnREZWNsYXJhdGlvbiIsIkV4cG9ydE5hbWVkRGVjbGFyYXRpb24iXSwibWFwcGluZ3MiOiJhQUFBLDRCOztBQUVB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d0JoQixrQkFGbkIsRUFBUDs7QUFJRCxHQS9IYyxFQUFqQiIsImZpbGUiOiJleHRlbnNpb25zLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcblxuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IHsgaXNCdWlsdEluLCBpc0V4dGVybmFsTW9kdWxlLCBpc1Njb3BlZCwgaXNTY29wZWRNb2R1bGUgfSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5jb25zdCBlbnVtVmFsdWVzID0geyBlbnVtOiBbICdhbHdheXMnLCAnaWdub3JlUGFja2FnZXMnLCAnbmV2ZXInIF0gfVxuY29uc3QgcGF0dGVyblByb3BlcnRpZXMgPSB7XG4gIHR5cGU6ICdvYmplY3QnLFxuICBwYXR0ZXJuUHJvcGVydGllczogeyAnLionOiBlbnVtVmFsdWVzIH0sXG59XG5jb25zdCBwcm9wZXJ0aWVzID0ge1xuICB0eXBlOiAnb2JqZWN0JyxcbiAgcHJvcGVydGllczoge1xuICAgICdwYXR0ZXJuJzogcGF0dGVyblByb3BlcnRpZXMsXG4gICAgJ2lnbm9yZVBhY2thZ2VzJzogeyB0eXBlOiAnYm9vbGVhbicgfSxcbiAgfSxcbn1cblxuZnVuY3Rpb24gYnVpbGRQcm9wZXJ0aWVzKGNvbnRleHQpIHtcblxuICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgIGRlZmF1bHRDb25maWc6ICduZXZlcicsXG4gICAgICBwYXR0ZXJuOiB7fSxcbiAgICAgIGlnbm9yZVBhY2thZ2VzOiBmYWxzZSxcbiAgICB9XG5cbiAgICBjb250ZXh0Lm9wdGlvbnMuZm9yRWFjaChvYmogPT4ge1xuXG4gICAgICAvLyBJZiB0aGlzIGlzIGEgc3RyaW5nLCBzZXQgZGVmYXVsdENvbmZpZyB0byBpdHMgdmFsdWVcbiAgICAgIGlmICh0eXBlb2Ygb2JqID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXN1bHQuZGVmYXVsdENvbmZpZyA9IG9ialxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gSWYgdGhpcyBpcyBub3QgdGhlIG5ldyBzdHJ1Y3R1cmUsIHRyYW5zZmVyIGFsbCBwcm9wcyB0byByZXN1bHQucGF0dGVyblxuICAgICAgaWYgKG9iai5wYXR0ZXJuID09PSB1bmRlZmluZWQgJiYgb2JqLmlnbm9yZVBhY2thZ2VzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihyZXN1bHQucGF0dGVybiwgb2JqKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gSWYgcGF0dGVybiBpcyBwcm92aWRlZCwgdHJhbnNmZXIgYWxsIHByb3BzXG4gICAgICBpZiAob2JqLnBhdHRlcm4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBPYmplY3QuYXNzaWduKHJlc3VsdC5wYXR0ZXJuLCBvYmoucGF0dGVybilcbiAgICAgIH1cblxuICAgICAgLy8gSWYgaWdub3JlUGFja2FnZXMgaXMgcHJvdmlkZWQsIHRyYW5zZmVyIGl0IHRvIHJlc3VsdFxuICAgICAgaWYgKG9iai5pZ25vcmVQYWNrYWdlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJlc3VsdC5pZ25vcmVQYWNrYWdlcyA9IG9iai5pZ25vcmVQYWNrYWdlc1xuICAgICAgfVxuICAgIH0pXG5cbiAgICBpZiAocmVzdWx0LmRlZmF1bHRDb25maWcgPT09ICdpZ25vcmVQYWNrYWdlcycpIHtcbiAgICAgIHJlc3VsdC5kZWZhdWx0Q29uZmlnID0gJ2Fsd2F5cydcbiAgICAgIHJlc3VsdC5pZ25vcmVQYWNrYWdlcyA9IHRydWVcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnZXh0ZW5zaW9ucycpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IHtcbiAgICAgIGFueU9mOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiBbZW51bVZhbHVlc10sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaXRlbXM6IFtcbiAgICAgICAgICAgIGVudW1WYWx1ZXMsXG4gICAgICAgICAgICBwcm9wZXJ0aWVzLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaXRlbXM6IFtwcm9wZXJ0aWVzXSxcbiAgICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczogW3BhdHRlcm5Qcm9wZXJ0aWVzXSxcbiAgICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczogW1xuICAgICAgICAgICAgZW51bVZhbHVlcyxcbiAgICAgICAgICAgIHBhdHRlcm5Qcm9wZXJ0aWVzLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG5cbiAgICBjb25zdCBwcm9wcyA9IGJ1aWxkUHJvcGVydGllcyhjb250ZXh0KVxuXG4gICAgZnVuY3Rpb24gZ2V0TW9kaWZpZXIoZXh0ZW5zaW9uKSB7XG4gICAgICByZXR1cm4gcHJvcHMucGF0dGVybltleHRlbnNpb25dIHx8IHByb3BzLmRlZmF1bHRDb25maWdcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc1VzZU9mRXh0ZW5zaW9uUmVxdWlyZWQoZXh0ZW5zaW9uLCBpc1BhY2thZ2UpIHtcbiAgICAgIHJldHVybiBnZXRNb2RpZmllcihleHRlbnNpb24pID09PSAnYWx3YXlzJyAmJiAoIXByb3BzLmlnbm9yZVBhY2thZ2VzIHx8ICFpc1BhY2thZ2UpXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaXNVc2VPZkV4dGVuc2lvbkZvcmJpZGRlbihleHRlbnNpb24pIHtcbiAgICAgIHJldHVybiBnZXRNb2RpZmllcihleHRlbnNpb24pID09PSAnbmV2ZXInXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaXNSZXNvbHZhYmxlV2l0aG91dEV4dGVuc2lvbihmaWxlKSB7XG4gICAgICBjb25zdCBleHRlbnNpb24gPSBwYXRoLmV4dG5hbWUoZmlsZSlcbiAgICAgIGNvbnN0IGZpbGVXaXRob3V0RXh0ZW5zaW9uID0gZmlsZS5zbGljZSgwLCAtZXh0ZW5zaW9uLmxlbmd0aClcbiAgICAgIGNvbnN0IHJlc29sdmVkRmlsZVdpdGhvdXRFeHRlbnNpb24gPSByZXNvbHZlKGZpbGVXaXRob3V0RXh0ZW5zaW9uLCBjb250ZXh0KVxuXG4gICAgICByZXR1cm4gcmVzb2x2ZWRGaWxlV2l0aG91dEV4dGVuc2lvbiA9PT0gcmVzb2x2ZShmaWxlLCBjb250ZXh0KVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGlzRXh0ZXJuYWxSb290TW9kdWxlKGZpbGUpIHtcbiAgICAgIGNvbnN0IHNsYXNoQ291bnQgPSBmaWxlLnNwbGl0KCcvJykubGVuZ3RoIC0gMVxuXG4gICAgICBpZiAoaXNTY29wZWRNb2R1bGUoZmlsZSkgJiYgc2xhc2hDb3VudCA8PSAxKSByZXR1cm4gdHJ1ZVxuICAgICAgaWYgKGlzRXh0ZXJuYWxNb2R1bGUoZmlsZSwgY29udGV4dCwgcmVzb2x2ZShmaWxlLCBjb250ZXh0KSkgJiYgIXNsYXNoQ291bnQpIHJldHVybiB0cnVlXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjaGVja0ZpbGVFeHRlbnNpb24obm9kZSkge1xuICAgICAgY29uc3QgeyBzb3VyY2UgfSA9IG5vZGVcblxuICAgICAgLy8gYmFpbCBpZiB0aGUgZGVjbGFyYXRpb24gZG9lc24ndCBoYXZlIGEgc291cmNlLCBlLmcuIFwiZXhwb3J0IHsgZm9vIH07XCJcbiAgICAgIGlmICghc291cmNlKSByZXR1cm5cblxuICAgICAgY29uc3QgaW1wb3J0UGF0aFdpdGhRdWVyeVN0cmluZyA9IHNvdXJjZS52YWx1ZVxuXG4gICAgICAvLyBkb24ndCBlbmZvcmNlIGFueXRoaW5nIG9uIGJ1aWx0aW5zXG4gICAgICBpZiAoaXNCdWlsdEluKGltcG9ydFBhdGhXaXRoUXVlcnlTdHJpbmcsIGNvbnRleHQuc2V0dGluZ3MpKSByZXR1cm5cblxuICAgICAgY29uc3QgaW1wb3J0UGF0aCA9IGltcG9ydFBhdGhXaXRoUXVlcnlTdHJpbmcucmVwbGFjZSgvXFw/KC4qKSQvLCAnJylcblxuICAgICAgLy8gZG9uJ3QgZW5mb3JjZSBpbiByb290IGV4dGVybmFsIHBhY2thZ2VzIGFzIHRoZXkgbWF5IGhhdmUgbmFtZXMgd2l0aCBgLmpzYC5cbiAgICAgIC8vIExpa2UgYGltcG9ydCBEZWNpbWFsIGZyb20gZGVjaW1hbC5qc2ApXG4gICAgICBpZiAoaXNFeHRlcm5hbFJvb3RNb2R1bGUoaW1wb3J0UGF0aCkpIHJldHVyblxuXG4gICAgICBjb25zdCByZXNvbHZlZFBhdGggPSByZXNvbHZlKGltcG9ydFBhdGgsIGNvbnRleHQpXG5cbiAgICAgIC8vIGdldCBleHRlbnNpb24gZnJvbSByZXNvbHZlZCBwYXRoLCBpZiBwb3NzaWJsZS5cbiAgICAgIC8vIGZvciB1bnJlc29sdmVkLCB1c2Ugc291cmNlIHZhbHVlLlxuICAgICAgY29uc3QgZXh0ZW5zaW9uID0gcGF0aC5leHRuYW1lKHJlc29sdmVkUGF0aCB8fCBpbXBvcnRQYXRoKS5zdWJzdHJpbmcoMSlcblxuICAgICAgLy8gZGV0ZXJtaW5lIGlmIHRoaXMgaXMgYSBtb2R1bGVcbiAgICAgIGNvbnN0IGlzUGFja2FnZSA9IGlzRXh0ZXJuYWxNb2R1bGUoaW1wb3J0UGF0aCwgY29udGV4dC5zZXR0aW5ncylcbiAgICAgICAgfHwgaXNTY29wZWQoaW1wb3J0UGF0aClcblxuICAgICAgaWYgKCFleHRlbnNpb24gfHwgIWltcG9ydFBhdGguZW5kc1dpdGgoYC4ke2V4dGVuc2lvbn1gKSkge1xuICAgICAgICBjb25zdCBleHRlbnNpb25SZXF1aXJlZCA9IGlzVXNlT2ZFeHRlbnNpb25SZXF1aXJlZChleHRlbnNpb24sIGlzUGFja2FnZSlcbiAgICAgICAgY29uc3QgZXh0ZW5zaW9uRm9yYmlkZGVuID0gaXNVc2VPZkV4dGVuc2lvbkZvcmJpZGRlbihleHRlbnNpb24pXG4gICAgICAgIGlmIChleHRlbnNpb25SZXF1aXJlZCAmJiAhZXh0ZW5zaW9uRm9yYmlkZGVuKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgbm9kZTogc291cmNlLFxuICAgICAgICAgICAgbWVzc2FnZTpcbiAgICAgICAgICAgICAgYE1pc3NpbmcgZmlsZSBleHRlbnNpb24gJHtleHRlbnNpb24gPyBgXCIke2V4dGVuc2lvbn1cIiBgIDogJyd9Zm9yIFwiJHtpbXBvcnRQYXRoV2l0aFF1ZXJ5U3RyaW5nfVwiYCxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGV4dGVuc2lvbikge1xuICAgICAgICBpZiAoaXNVc2VPZkV4dGVuc2lvbkZvcmJpZGRlbihleHRlbnNpb24pICYmIGlzUmVzb2x2YWJsZVdpdGhvdXRFeHRlbnNpb24oaW1wb3J0UGF0aCkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlOiBzb3VyY2UsXG4gICAgICAgICAgICBtZXNzYWdlOiBgVW5leHBlY3RlZCB1c2Ugb2YgZmlsZSBleHRlbnNpb24gXCIke2V4dGVuc2lvbn1cIiBmb3IgXCIke2ltcG9ydFBhdGhXaXRoUXVlcnlTdHJpbmd9XCJgLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb246IGNoZWNrRmlsZUV4dGVuc2lvbixcbiAgICAgIEV4cG9ydE5hbWVkRGVjbGFyYXRpb246IGNoZWNrRmlsZUV4dGVuc2lvbixcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/first.js b/node_modules/eslint-plugin-import/lib/rules/first.js index cf24346e..02d8229c 100644 --- a/node_modules/eslint-plugin-import/lib/rules/first.js +++ b/node_modules/eslint-plugin-import/lib/rules/first.js @@ -1,43 +1,41 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('first') - }, + url: (0, _docsUrl2.default)('first') }, + fixable: 'code', - schema: [{ + schema: [ + { type: 'string', - enum: ['absolute-first'] - }] - }, + enum: ['absolute-first', 'disable-absolute-first'] }] }, + + + create: function (context) { function isPossibleDirective(node) { - return node.type === 'ExpressionStatement' && node.expression.type === 'Literal' && typeof node.expression.value === 'string'; + return node.type === 'ExpressionStatement' && + node.expression.type === 'Literal' && + typeof node.expression.value === 'string'; } return { 'Program': function (n) { const body = n.body, - absoluteFirst = context.options[0] === 'absolute-first', - message = 'Import in body of module; reorder to top.', - sourceCode = context.getSourceCode(), - originSourceCode = sourceCode.getText(); + absoluteFirst = context.options[0] === 'absolute-first', + message = 'Import in body of module; reorder to top.', + sourceCode = context.getSourceCode(), + originSourceCode = sourceCode.getText(); let nonImportCount = 0, - anyExpressions = false, - anyRelative = false, - lastLegalImp = null, - errorInfos = [], - shouldSort = true, - lastSortNodesIndex = 0; + anyExpressions = false, + anyRelative = false, + lastLegalImp = null, + errorInfos = [], + shouldSort = true, + lastSortNodesIndex = 0; body.forEach(function (node, index) { if (!anyExpressions && isPossibleDirective(node)) { return; @@ -52,8 +50,8 @@ module.exports = { } else if (anyRelative) { context.report({ node: node.source, - message: 'Absolute imports should come before relative imports.' - }); + message: 'Absolute imports should come before relative imports.' }); + } } if (nonImportCount > 0) { @@ -72,8 +70,8 @@ module.exports = { shouldSort && (lastSortNodesIndex = errorInfos.length); errorInfos.push({ node, - range: [body[index - 1].range[1], node.range[1]] - }); + range: [body[index - 1].range[1], node.range[1]] }); + } else { lastLegalImp = node; } @@ -84,10 +82,10 @@ module.exports = { if (!errorInfos.length) return; errorInfos.forEach(function (errorInfo, index) { const node = errorInfo.node, - infos = { + infos = { node, - message - }; + message }; + if (index < lastSortNodesIndex) { infos.fix = function (fixer) { return fixer.insertTextAfter(node, ''); @@ -98,31 +96,37 @@ module.exports = { const removeFixers = sortNodes.map(function (_errorInfo) { return fixer.removeRange(_errorInfo.range); }), - range = [0, removeFixers[removeFixers.length - 1].range[1]]; + range = [0, removeFixers[removeFixers.length - 1].range[1]]; let insertSourceCode = sortNodes.map(function (_errorInfo) { - const nodeSourceCode = String.prototype.slice.apply(originSourceCode, _errorInfo.range); + const nodeSourceCode = String.prototype.slice.apply( + originSourceCode, _errorInfo.range); + if (/\S/.test(nodeSourceCode[0])) { return '\n' + nodeSourceCode; } return nodeSourceCode; }).join(''), - insertFixer = null, - replaceSourceCode = ''; + insertFixer = null, + replaceSourceCode = ''; if (!lastLegalImp) { - insertSourceCode = insertSourceCode.trim() + insertSourceCode.match(/^(\s+)/)[0]; + insertSourceCode = + insertSourceCode.trim() + insertSourceCode.match(/^(\s+)/)[0]; } - insertFixer = lastLegalImp ? fixer.insertTextAfter(lastLegalImp, insertSourceCode) : fixer.insertTextBefore(body[0], insertSourceCode); + insertFixer = lastLegalImp ? + fixer.insertTextAfter(lastLegalImp, insertSourceCode) : + fixer.insertTextBefore(body[0], insertSourceCode); const fixers = [insertFixer].concat(removeFixers); fixers.forEach(function (computedFixer, i) { - replaceSourceCode += originSourceCode.slice(fixers[i - 1] ? fixers[i - 1].range[1] : 0, computedFixer.range[0]) + computedFixer.text; + replaceSourceCode += originSourceCode.slice( + fixers[i - 1] ? fixers[i - 1].range[1] : 0, computedFixer.range[0]) + + computedFixer.text; }); return fixer.replaceTextRange(range, replaceSourceCode); }; } context.report(infos); }); - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9maXJzdC5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwiZml4YWJsZSIsInNjaGVtYSIsImVudW0iLCJjcmVhdGUiLCJjb250ZXh0IiwiaXNQb3NzaWJsZURpcmVjdGl2ZSIsIm5vZGUiLCJleHByZXNzaW9uIiwidmFsdWUiLCJuIiwiYm9keSIsImFic29sdXRlRmlyc3QiLCJvcHRpb25zIiwibWVzc2FnZSIsInNvdXJjZUNvZGUiLCJnZXRTb3VyY2VDb2RlIiwib3JpZ2luU291cmNlQ29kZSIsImdldFRleHQiLCJub25JbXBvcnRDb3VudCIsImFueUV4cHJlc3Npb25zIiwiYW55UmVsYXRpdmUiLCJsYXN0TGVnYWxJbXAiLCJlcnJvckluZm9zIiwic2hvdWxkU29ydCIsImxhc3RTb3J0Tm9kZXNJbmRleCIsImZvckVhY2giLCJpbmRleCIsInRlc3QiLCJzb3VyY2UiLCJyZXBvcnQiLCJ2YXJpYWJsZSIsImdldERlY2xhcmVkVmFyaWFibGVzIiwicmVmZXJlbmNlcyIsImxlbmd0aCIsInJlZmVyZW5jZSIsImlkZW50aWZpZXIiLCJyYW5nZSIsInB1c2giLCJlcnJvckluZm8iLCJpbmZvcyIsImZpeCIsImZpeGVyIiwiaW5zZXJ0VGV4dEFmdGVyIiwic29ydE5vZGVzIiwic2xpY2UiLCJyZW1vdmVGaXhlcnMiLCJtYXAiLCJfZXJyb3JJbmZvIiwicmVtb3ZlUmFuZ2UiLCJpbnNlcnRTb3VyY2VDb2RlIiwibm9kZVNvdXJjZUNvZGUiLCJTdHJpbmciLCJwcm90b3R5cGUiLCJhcHBseSIsImpvaW4iLCJpbnNlcnRGaXhlciIsInJlcGxhY2VTb3VyY2VDb2RlIiwidHJpbSIsIm1hdGNoIiwiaW5zZXJ0VGV4dEJlZm9yZSIsImZpeGVycyIsImNvbmNhdCIsImNvbXB1dGVkRml4ZXIiLCJpIiwidGV4dCIsInJlcGxhY2VUZXh0UmFuZ2UiXSwibWFwcGluZ3MiOiI7O0FBQUE7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QUNELHVCQUFPQSxjQUFQO0FBQ0QsZUFSa0IsRUFRaEJJLElBUmdCLENBUVgsRUFSVyxDQUF2QjtBQUFBLGtCQVNJQyxjQUFjLElBVGxCO0FBQUEsa0JBVUlDLG9CQUFvQixFQVZ4QjtBQVdBLGtCQUFJLENBQUNuQyxZQUFMLEVBQW1CO0FBQ2Y0QixtQ0FDRUEsaUJBQWlCUSxJQUFqQixLQUEwQlIsaUJBQWlCUyxLQUFqQixDQUF1QixRQUF2QixFQUFpQyxDQUFqQyxDQUQ1QjtBQUVIO0FBQ0RILDRCQUFjbEMsZUFDQW9CLE1BQU1DLGVBQU4sQ0FBc0JyQixZQUF0QixFQUFvQzRCLGdCQUFwQyxDQURBLEdBRUFSLE1BQU1rQixnQkFBTixDQUF1QmpELEtBQUssQ0FBTCxDQUF2QixFQUFnQ3VDLGdCQUFoQyxDQUZkO0FBR0Esb0JBQU1XLFNBQVMsQ0FBQ0wsV0FBRCxFQUFjTSxNQUFkLENBQXFCaEIsWUFBckIsQ0FBZjtBQUNBZSxxQkFBT25DLE9BQVAsQ0FBZSxVQUFVcUMsYUFBVixFQUF5QkMsQ0FBekIsRUFBNEI7QUFDekNQLHFDQUFzQnhDLGlCQUFpQjRCLEtBQWpCLENBQ3BCZ0IsT0FBT0csSUFBSSxDQUFYLElBQWdCSCxPQUFPRyxJQUFJLENBQVgsRUFBYzNCLEtBQWQsQ0FBb0IsQ0FBcEIsQ0FBaEIsR0FBeUMsQ0FEckIsRUFDd0IwQixjQUFjMUIsS0FBZCxDQUFvQixDQUFwQixDQUR4QixJQUVsQjBCLGNBQWNFLElBRmxCO0FBR0QsZUFKRDtBQUtBLHFCQUFPdkIsTUFBTXdCLGdCQUFOLENBQXVCN0IsS0FBdkIsRUFBOEJvQixpQkFBOUIsQ0FBUDtBQUNELGFBOUJEO0FBK0JEO0FBQ0RwRCxrQkFBUXlCLE1BQVIsQ0FBZVUsS0FBZjtBQUNELFNBN0NEO0FBOENEO0FBeEdJLEtBQVA7QUEwR0Q7QUFoSWMsQ0FBakIiLCJmaWxlIjoiZmlyc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ2ZpcnN0JyksXG4gICAgfSxcbiAgICBmaXhhYmxlOiAnY29kZScsXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBlbnVtOiBbJ2Fic29sdXRlLWZpcnN0J10sXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGZ1bmN0aW9uIGlzUG9zc2libGVEaXJlY3RpdmUgKG5vZGUpIHtcbiAgICAgIHJldHVybiBub2RlLnR5cGUgPT09ICdFeHByZXNzaW9uU3RhdGVtZW50JyAmJlxuICAgICAgICBub2RlLmV4cHJlc3Npb24udHlwZSA9PT0gJ0xpdGVyYWwnICYmXG4gICAgICAgIHR5cGVvZiBub2RlLmV4cHJlc3Npb24udmFsdWUgPT09ICdzdHJpbmcnXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdQcm9ncmFtJzogZnVuY3Rpb24gKG4pIHtcbiAgICAgICAgY29uc3QgYm9keSA9IG4uYm9keVxuICAgICAgICAgICAgLCBhYnNvbHV0ZUZpcnN0ID0gY29udGV4dC5vcHRpb25zWzBdID09PSAnYWJzb2x1dGUtZmlyc3QnXG4gICAgICAgICAgICAsIG1lc3NhZ2UgPSAnSW1wb3J0IGluIGJvZHkgb2YgbW9kdWxlOyByZW9yZGVyIHRvIHRvcC4nXG4gICAgICAgICAgICAsIHNvdXJjZUNvZGUgPSBjb250ZXh0LmdldFNvdXJjZUNvZGUoKVxuICAgICAgICAgICAgLCBvcmlnaW5Tb3VyY2VDb2RlID0gc291cmNlQ29kZS5nZXRUZXh0KClcbiAgICAgICAgbGV0IG5vbkltcG9ydENvdW50ID0gMFxuICAgICAgICAgICwgYW55RXhwcmVzc2lvbnMgPSBmYWxzZVxuICAgICAgICAgICwgYW55UmVsYXRpdmUgPSBmYWxzZVxuICAgICAgICAgICwgbGFzdExlZ2FsSW1wID0gbnVsbFxuICAgICAgICAgICwgZXJyb3JJbmZvcyA9IFtdXG4gICAgICAgICAgLCBzaG91bGRTb3J0ID0gdHJ1ZVxuICAgICAgICAgICwgbGFzdFNvcnROb2Rlc0luZGV4ID0gMFxuICAgICAgICBib2R5LmZvckVhY2goZnVuY3Rpb24gKG5vZGUsIGluZGV4KXtcbiAgICAgICAgICBpZiAoIWFueUV4cHJlc3Npb25zICYmIGlzUG9zc2libGVEaXJlY3RpdmUobm9kZSkpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGFueUV4cHJlc3Npb25zID0gdHJ1ZVxuXG4gICAgICAgICAgaWYgKG5vZGUudHlwZSA9PT0gJ0ltcG9ydERlY2xhcmF0aW9uJykge1xuICAgICAgICAgICAgaWYgKGFic29sdXRlRmlyc3QpIHtcbiAgICAgICAgICAgICAgaWYgKC9eXFwuLy50ZXN0KG5vZGUuc291cmNlLnZhbHVlKSkge1xuICAgICAgICAgICAgICAgIGFueVJlbGF0aXZlID0gdHJ1ZVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGFueVJlbGF0aXZlKSB7XG4gICAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgICAgICAgbm9kZTogbm9kZS5zb3VyY2UsXG4gICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnQWJzb2x1dGUgaW1wb3J0cyBzaG91bGQgY29tZSBiZWZvcmUgcmVsYXRpdmUgaW1wb3J0cy4nLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChub25JbXBvcnRDb3VudCA+IDApIHtcbiAgICAgICAgICAgICAgZm9yIChsZXQgdmFyaWFibGUgb2YgY29udGV4dC5nZXREZWNsYXJlZFZhcmlhYmxlcyhub2RlKSkge1xuICAgICAgICAgICAgICAgIGlmICghc2hvdWxkU29ydCkgYnJlYWtcbiAgICAgICAgICAgICAgICBjb25zdCByZWZlcmVuY2VzID0gdmFyaWFibGUucmVmZXJlbmNlc1xuICAgICAgICAgICAgICAgIGlmIChyZWZlcmVuY2VzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgZm9yIChsZXQgcmVmZXJlbmNlIG9mIHJlZmVyZW5jZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlZmVyZW5jZS5pZGVudGlmaWVyLnJhbmdlWzBdIDwgbm9kZS5yYW5nZVsxXSkge1xuICAgICAgICAgICAgICAgICAgICAgIHNob3VsZFNvcnQgPSBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc2hvdWxkU29ydCAmJiAobGFzdFNvcnROb2Rlc0luZGV4ID0gZXJyb3JJbmZvcy5sZW5ndGgpXG4gICAgICAgICAgICAgIGVycm9ySW5mb3MucHVzaCh7XG4gICAgICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICAgICByYW5nZTogW2JvZHlbaW5kZXggLSAxXS5yYW5nZVsxXSwgbm9kZS5yYW5nZVsxXV0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBsYXN0TGVnYWxJbXAgPSBub2RlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5vbkltcG9ydENvdW50KytcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgIGlmICghZXJyb3JJbmZvcy5sZW5ndGgpIHJldHVyblxuICAgICAgICBlcnJvckluZm9zLmZvckVhY2goZnVuY3Rpb24gKGVycm9ySW5mbywgaW5kZXgpIHtcbiAgICAgICAgICBjb25zdCBub2RlID0gZXJyb3JJbmZvLm5vZGVcbiAgICAgICAgICAgICAgLCBpbmZvcyA9IHtcbiAgICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoaW5kZXggPCBsYXN0U29ydE5vZGVzSW5kZXgpIHtcbiAgICAgICAgICAgIGluZm9zLmZpeCA9IGZ1bmN0aW9uIChmaXhlcikge1xuICAgICAgICAgICAgICByZXR1cm4gZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKG5vZGUsICcnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSBpZiAoaW5kZXggPT09IGxhc3RTb3J0Tm9kZXNJbmRleCkge1xuICAgICAgICAgICAgY29uc3Qgc29ydE5vZGVzID0gZXJyb3JJbmZvcy5zbGljZSgwLCBsYXN0U29ydE5vZGVzSW5kZXggKyAxKVxuICAgICAgICAgICAgaW5mb3MuZml4ID0gZnVuY3Rpb24gKGZpeGVyKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHJlbW92ZUZpeGVycyA9IHNvcnROb2Rlcy5tYXAoZnVuY3Rpb24gKF9lcnJvckluZm8pIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpeGVyLnJlbW92ZVJhbmdlKF9lcnJvckluZm8ucmFuZ2UpXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgLCByYW5nZSA9IFswLCByZW1vdmVGaXhlcnNbcmVtb3ZlRml4ZXJzLmxlbmd0aCAtIDFdLnJhbmdlWzFdXVxuICAgICAgICAgICAgICBsZXQgaW5zZXJ0U291cmNlQ29kZSA9IHNvcnROb2Rlcy5tYXAoZnVuY3Rpb24gKF9lcnJvckluZm8pIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgbm9kZVNvdXJjZUNvZGUgPSBTdHJpbmcucHJvdG90eXBlLnNsaWNlLmFwcGx5KFxuICAgICAgICAgICAgICAgICAgICAgIG9yaWdpblNvdXJjZUNvZGUsIF9lcnJvckluZm8ucmFuZ2VcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBpZiAoL1xcUy8udGVzdChub2RlU291cmNlQ29kZVswXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ1xcbicgKyBub2RlU291cmNlQ29kZVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBub2RlU291cmNlQ29kZVxuICAgICAgICAgICAgICAgICAgfSkuam9pbignJylcbiAgICAgICAgICAgICAgICAsIGluc2VydEZpeGVyID0gbnVsbFxuICAgICAgICAgICAgICAgICwgcmVwbGFjZVNvdXJjZUNvZGUgPSAnJ1xuICAgICAgICAgICAgICBpZiAoIWxhc3RMZWdhbEltcCkge1xuICAgICAgICAgICAgICAgICAgaW5zZXJ0U291cmNlQ29kZSA9XG4gICAgICAgICAgICAgICAgICAgIGluc2VydFNvdXJjZUNvZGUudHJpbSgpICsgaW5zZXJ0U291cmNlQ29kZS5tYXRjaCgvXihcXHMrKS8pWzBdXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaW5zZXJ0Rml4ZXIgPSBsYXN0TGVnYWxJbXAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpeGVyLmluc2VydFRleHRBZnRlcihsYXN0TGVnYWxJbXAsIGluc2VydFNvdXJjZUNvZGUpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXhlci5pbnNlcnRUZXh0QmVmb3JlKGJvZHlbMF0sIGluc2VydFNvdXJjZUNvZGUpXG4gICAgICAgICAgICAgIGNvbnN0IGZpeGVycyA9IFtpbnNlcnRGaXhlcl0uY29uY2F0KHJlbW92ZUZpeGVycylcbiAgICAgICAgICAgICAgZml4ZXJzLmZvckVhY2goZnVuY3Rpb24gKGNvbXB1dGVkRml4ZXIsIGkpIHtcbiAgICAgICAgICAgICAgICByZXBsYWNlU291cmNlQ29kZSArPSAob3JpZ2luU291cmNlQ29kZS5zbGljZShcbiAgICAgICAgICAgICAgICAgIGZpeGVyc1tpIC0gMV0gPyBmaXhlcnNbaSAtIDFdLnJhbmdlWzFdIDogMCwgY29tcHV0ZWRGaXhlci5yYW5nZVswXVxuICAgICAgICAgICAgICAgICkgKyBjb21wdXRlZEZpeGVyLnRleHQpXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIHJldHVybiBmaXhlci5yZXBsYWNlVGV4dFJhbmdlKHJhbmdlLCByZXBsYWNlU291cmNlQ29kZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoaW5mb3MpXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9maXJzdC5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwiZml4YWJsZSIsInNjaGVtYSIsImVudW0iLCJjcmVhdGUiLCJjb250ZXh0IiwiaXNQb3NzaWJsZURpcmVjdGl2ZSIsIm5vZGUiLCJleHByZXNzaW9uIiwidmFsdWUiLCJuIiwiYm9keSIsImFic29sdXRlRmlyc3QiLCJvcHRpb25zIiwibWVzc2FnZSIsInNvdXJjZUNvZGUiLCJnZXRTb3VyY2VDb2RlIiwib3JpZ2luU291cmNlQ29kZSIsImdldFRleHQiLCJub25JbXBvcnRDb3VudCIsImFueUV4cHJlc3Npb25zIiwiYW55UmVsYXRpdmUiLCJsYXN0TGVnYWxJbXAiLCJlcnJvckluZm9zIiwic2hvdWxkU29ydCIsImxhc3RTb3J0Tm9kZXNJbmRleCIsImZvckVhY2giLCJpbmRleCIsInRlc3QiLCJzb3VyY2UiLCJyZXBvcnQiLCJ2YXJpYWJsZSIsImdldERlY2xhcmVkVmFyaWFibGVzIiwicmVmZXJlbmNlcyIsImxlbmd0aCIsInJlZmVyZW5jZSIsImlkZW50aWZpZXIiLCJyYW5nZSIsInB1c2giLCJlcnJvckluZm8iLCJpbmZvcyIsImZpeCIsImZpeGVyIiwiaW5zZXJ0VGV4dEFmdGVyIiwic29ydE5vZGVzIiwic2xpY2UiLCJyZW1vdmVGaXhlcnMiLCJtYXAiLCJfZXJyb3JJbmZvIiwicmVtb3ZlUmFuZ2UiLCJpbnNlcnRTb3VyY2VDb2RlIiwibm9kZVNvdXJjZUNvZGUiLCJTdHJpbmciLCJwcm90b3R5cGUiLCJhcHBseSIsImpvaW4iLCJpbnNlcnRGaXhlciIsInJlcGxhY2VTb3VyY2VDb2RlIiwidHJpbSIsIm1hdGNoIiwiaW5zZXJ0VGV4dEJlZm9yZSIsImZpeGVycyIsImNvbmNhdCIsImNvbXB1dGVkRml4ZXIiLCJpIiwidGV4dCIsInJlcGxhY2VUZXh0UmFuZ2UiXSwibWFwcGluZ3MiOiJhQUFBLHFD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QVJnQixDQVFYLEVBUlcsQ0FBdkI7QUFTSUMsNEJBQWMsSUFUbEI7QUFVSUMsa0NBQW9CLEVBVnhCO0FBV0Esa0JBQUksQ0FBQ25DLFlBQUwsRUFBbUI7QUFDZjRCO0FBQ0VBLGlDQUFpQlEsSUFBakIsS0FBMEJSLGlCQUFpQlMsS0FBakIsQ0FBdUIsUUFBdkIsRUFBaUMsQ0FBakMsQ0FENUI7QUFFSDtBQUNESCw0QkFBY2xDO0FBQ0FvQixvQkFBTUMsZUFBTixDQUFzQnJCLFlBQXRCLEVBQW9DNEIsZ0JBQXBDLENBREE7QUFFQVIsb0JBQU1rQixnQkFBTixDQUF1QmpELEtBQUssQ0FBTCxDQUF2QixFQUFnQ3VDLGdCQUFoQyxDQUZkO0FBR0Esb0JBQU1XLFNBQVMsQ0FBQ0wsV0FBRCxFQUFjTSxNQUFkLENBQXFCaEIsWUFBckIsQ0FBZjtBQUNBZSxxQkFBT25DLE9BQVAsQ0FBZSxVQUFVcUMsYUFBVixFQUF5QkMsQ0FBekIsRUFBNEI7QUFDekNQLHFDQUFzQnhDLGlCQUFpQjRCLEtBQWpCO0FBQ3BCZ0IsdUJBQU9HLElBQUksQ0FBWCxJQUFnQkgsT0FBT0csSUFBSSxDQUFYLEVBQWMzQixLQUFkLENBQW9CLENBQXBCLENBQWhCLEdBQXlDLENBRHJCLEVBQ3dCMEIsY0FBYzFCLEtBQWQsQ0FBb0IsQ0FBcEIsQ0FEeEI7QUFFbEIwQiw4QkFBY0UsSUFGbEI7QUFHRCxlQUpEO0FBS0EscUJBQU92QixNQUFNd0IsZ0JBQU4sQ0FBdUI3QixLQUF2QixFQUE4Qm9CLGlCQUE5QixDQUFQO0FBQ0QsYUE5QkQ7QUErQkQ7QUFDRHBELGtCQUFReUIsTUFBUixDQUFlVSxLQUFmO0FBQ0QsU0E3Q0Q7QUE4Q0QsT0F4R0ksRUFBUDs7QUEwR0QsR0FoSWMsRUFBakIiLCJmaWxlIjoiZmlyc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ2ZpcnN0JyksXG4gICAgfSxcbiAgICBmaXhhYmxlOiAnY29kZScsXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBlbnVtOiBbJ2Fic29sdXRlLWZpcnN0JywgJ2Rpc2FibGUtYWJzb2x1dGUtZmlyc3QnXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgZnVuY3Rpb24gaXNQb3NzaWJsZURpcmVjdGl2ZSAobm9kZSkge1xuICAgICAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ0V4cHJlc3Npb25TdGF0ZW1lbnQnICYmXG4gICAgICAgIG5vZGUuZXhwcmVzc2lvbi50eXBlID09PSAnTGl0ZXJhbCcgJiZcbiAgICAgICAgdHlwZW9mIG5vZGUuZXhwcmVzc2lvbi52YWx1ZSA9PT0gJ3N0cmluZydcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ1Byb2dyYW0nOiBmdW5jdGlvbiAobikge1xuICAgICAgICBjb25zdCBib2R5ID0gbi5ib2R5XG4gICAgICAgICAgICAsIGFic29sdXRlRmlyc3QgPSBjb250ZXh0Lm9wdGlvbnNbMF0gPT09ICdhYnNvbHV0ZS1maXJzdCdcbiAgICAgICAgICAgICwgbWVzc2FnZSA9ICdJbXBvcnQgaW4gYm9keSBvZiBtb2R1bGU7IHJlb3JkZXIgdG8gdG9wLidcbiAgICAgICAgICAgICwgc291cmNlQ29kZSA9IGNvbnRleHQuZ2V0U291cmNlQ29kZSgpXG4gICAgICAgICAgICAsIG9yaWdpblNvdXJjZUNvZGUgPSBzb3VyY2VDb2RlLmdldFRleHQoKVxuICAgICAgICBsZXQgbm9uSW1wb3J0Q291bnQgPSAwXG4gICAgICAgICAgLCBhbnlFeHByZXNzaW9ucyA9IGZhbHNlXG4gICAgICAgICAgLCBhbnlSZWxhdGl2ZSA9IGZhbHNlXG4gICAgICAgICAgLCBsYXN0TGVnYWxJbXAgPSBudWxsXG4gICAgICAgICAgLCBlcnJvckluZm9zID0gW11cbiAgICAgICAgICAsIHNob3VsZFNvcnQgPSB0cnVlXG4gICAgICAgICAgLCBsYXN0U29ydE5vZGVzSW5kZXggPSAwXG4gICAgICAgIGJvZHkuZm9yRWFjaChmdW5jdGlvbiAobm9kZSwgaW5kZXgpe1xuICAgICAgICAgIGlmICghYW55RXhwcmVzc2lvbnMgJiYgaXNQb3NzaWJsZURpcmVjdGl2ZShub2RlKSkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYW55RXhwcmVzc2lvbnMgPSB0cnVlXG5cbiAgICAgICAgICBpZiAobm9kZS50eXBlID09PSAnSW1wb3J0RGVjbGFyYXRpb24nKSB7XG4gICAgICAgICAgICBpZiAoYWJzb2x1dGVGaXJzdCkge1xuICAgICAgICAgICAgICBpZiAoL15cXC4vLnRlc3Qobm9kZS5zb3VyY2UudmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgYW55UmVsYXRpdmUgPSB0cnVlXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoYW55UmVsYXRpdmUpIHtcbiAgICAgICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICAgICAgICBub2RlOiBub2RlLnNvdXJjZSxcbiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdBYnNvbHV0ZSBpbXBvcnRzIHNob3VsZCBjb21lIGJlZm9yZSByZWxhdGl2ZSBpbXBvcnRzLicsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG5vbkltcG9ydENvdW50ID4gMCkge1xuICAgICAgICAgICAgICBmb3IgKGxldCB2YXJpYWJsZSBvZiBjb250ZXh0LmdldERlY2xhcmVkVmFyaWFibGVzKG5vZGUpKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFzaG91bGRTb3J0KSBicmVha1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlZmVyZW5jZXMgPSB2YXJpYWJsZS5yZWZlcmVuY2VzXG4gICAgICAgICAgICAgICAgaWYgKHJlZmVyZW5jZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICBmb3IgKGxldCByZWZlcmVuY2Ugb2YgcmVmZXJlbmNlcykge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVmZXJlbmNlLmlkZW50aWZpZXIucmFuZ2VbMF0gPCBub2RlLnJhbmdlWzFdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgc2hvdWxkU29ydCA9IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzaG91bGRTb3J0ICYmIChsYXN0U29ydE5vZGVzSW5kZXggPSBlcnJvckluZm9zLmxlbmd0aClcbiAgICAgICAgICAgICAgZXJyb3JJbmZvcy5wdXNoKHtcbiAgICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICAgIHJhbmdlOiBbYm9keVtpbmRleCAtIDFdLnJhbmdlWzFdLCBub2RlLnJhbmdlWzFdXSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGxhc3RMZWdhbEltcCA9IG5vZGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbm9uSW1wb3J0Q291bnQrK1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgaWYgKCFlcnJvckluZm9zLmxlbmd0aCkgcmV0dXJuXG4gICAgICAgIGVycm9ySW5mb3MuZm9yRWFjaChmdW5jdGlvbiAoZXJyb3JJbmZvLCBpbmRleCkge1xuICAgICAgICAgIGNvbnN0IG5vZGUgPSBlcnJvckluZm8ubm9kZVxuICAgICAgICAgICAgICAsIGluZm9zID0ge1xuICAgICAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIGlmIChpbmRleCA8IGxhc3RTb3J0Tm9kZXNJbmRleCkge1xuICAgICAgICAgICAgaW5mb3MuZml4ID0gZnVuY3Rpb24gKGZpeGVyKSB7XG4gICAgICAgICAgICAgIHJldHVybiBmaXhlci5pbnNlcnRUZXh0QWZ0ZXIobm9kZSwgJycpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIGlmIChpbmRleCA9PT0gbGFzdFNvcnROb2Rlc0luZGV4KSB7XG4gICAgICAgICAgICBjb25zdCBzb3J0Tm9kZXMgPSBlcnJvckluZm9zLnNsaWNlKDAsIGxhc3RTb3J0Tm9kZXNJbmRleCArIDEpXG4gICAgICAgICAgICBpbmZvcy5maXggPSBmdW5jdGlvbiAoZml4ZXIpIHtcbiAgICAgICAgICAgICAgY29uc3QgcmVtb3ZlRml4ZXJzID0gc29ydE5vZGVzLm1hcChmdW5jdGlvbiAoX2Vycm9ySW5mbykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZml4ZXIucmVtb3ZlUmFuZ2UoX2Vycm9ySW5mby5yYW5nZSlcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAsIHJhbmdlID0gWzAsIHJlbW92ZUZpeGVyc1tyZW1vdmVGaXhlcnMubGVuZ3RoIC0gMV0ucmFuZ2VbMV1dXG4gICAgICAgICAgICAgIGxldCBpbnNlcnRTb3VyY2VDb2RlID0gc29ydE5vZGVzLm1hcChmdW5jdGlvbiAoX2Vycm9ySW5mbykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBub2RlU291cmNlQ29kZSA9IFN0cmluZy5wcm90b3R5cGUuc2xpY2UuYXBwbHkoXG4gICAgICAgICAgICAgICAgICAgICAgb3JpZ2luU291cmNlQ29kZSwgX2Vycm9ySW5mby5yYW5nZVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIGlmICgvXFxTLy50ZXN0KG5vZGVTb3VyY2VDb2RlWzBdKSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnXFxuJyArIG5vZGVTb3VyY2VDb2RlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5vZGVTb3VyY2VDb2RlXG4gICAgICAgICAgICAgICAgICB9KS5qb2luKCcnKVxuICAgICAgICAgICAgICAgICwgaW5zZXJ0Rml4ZXIgPSBudWxsXG4gICAgICAgICAgICAgICAgLCByZXBsYWNlU291cmNlQ29kZSA9ICcnXG4gICAgICAgICAgICAgIGlmICghbGFzdExlZ2FsSW1wKSB7XG4gICAgICAgICAgICAgICAgICBpbnNlcnRTb3VyY2VDb2RlID1cbiAgICAgICAgICAgICAgICAgICAgaW5zZXJ0U291cmNlQ29kZS50cmltKCkgKyBpbnNlcnRTb3VyY2VDb2RlLm1hdGNoKC9eKFxccyspLylbMF1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpbnNlcnRGaXhlciA9IGxhc3RMZWdhbEltcCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKGxhc3RMZWdhbEltcCwgaW5zZXJ0U291cmNlQ29kZSkgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpeGVyLmluc2VydFRleHRCZWZvcmUoYm9keVswXSwgaW5zZXJ0U291cmNlQ29kZSlcbiAgICAgICAgICAgICAgY29uc3QgZml4ZXJzID0gW2luc2VydEZpeGVyXS5jb25jYXQocmVtb3ZlRml4ZXJzKVxuICAgICAgICAgICAgICBmaXhlcnMuZm9yRWFjaChmdW5jdGlvbiAoY29tcHV0ZWRGaXhlciwgaSkge1xuICAgICAgICAgICAgICAgIHJlcGxhY2VTb3VyY2VDb2RlICs9IChvcmlnaW5Tb3VyY2VDb2RlLnNsaWNlKFxuICAgICAgICAgICAgICAgICAgZml4ZXJzW2kgLSAxXSA/IGZpeGVyc1tpIC0gMV0ucmFuZ2VbMV0gOiAwLCBjb21wdXRlZEZpeGVyLnJhbmdlWzBdXG4gICAgICAgICAgICAgICAgKSArIGNvbXB1dGVkRml4ZXIudGV4dClcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgcmV0dXJuIGZpeGVyLnJlcGxhY2VUZXh0UmFuZ2UocmFuZ2UsIHJlcGxhY2VTb3VyY2VDb2RlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250ZXh0LnJlcG9ydChpbmZvcylcbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/group-exports.js b/node_modules/eslint-plugin-import/lib/rules/group-exports.js index fb2cf719..42f6b495 100644 --- a/node_modules/eslint-plugin-import/lib/rules/group-exports.js +++ b/node_modules/eslint-plugin-import/lib/rules/group-exports.js @@ -1,43 +1,33 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -var _object = require('object.values'); - -var _object2 = _interopRequireDefault(_object); - -var _arrayPrototype = require('array.prototype.flat'); - -var _arrayPrototype2 = _interopRequireDefault(_arrayPrototype); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); +var _object = require('object.values');var _object2 = _interopRequireDefault(_object); +var _arrayPrototype = require('array.prototype.flat');var _arrayPrototype2 = _interopRequireDefault(_arrayPrototype);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const meta = { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('group-exports') - } - /* eslint-disable max-len */ -};const errors = { + url: (0, _docsUrl2.default)('group-exports') } + + + /* eslint-disable max-len */ }; +const errors = { ExportNamedDeclaration: 'Multiple named export declarations; consolidate all named exports into a single export declaration', AssignmentExpression: 'Multiple CommonJS exports; consolidate all exports into a single assignment to `module.exports`' + /* eslint-enable max-len */ /** - * Returns an array with names of the properties in the accessor chain for MemberExpression nodes - * - * Example: - * - * `module.exports = {}` => ['module', 'exports'] - * `module.exports.property = true` => ['module', 'exports', 'property'] - * - * @param {Node} node AST Node (MemberExpression) - * @return {Array} Array with the property names in the chain - * @private - */ -};function accessorChain(node) { + * Returns an array with names of the properties in the accessor chain for MemberExpression nodes + * + * Example: + * + * `module.exports = {}` => ['module', 'exports'] + * `module.exports.property = true` => ['module', 'exports', 'property'] + * + * @param {Node} node AST Node (MemberExpression) + * @return {Array} Array with the property names in the chain + * @private + */ }; +function accessorChain(node) { const chain = []; do { @@ -56,19 +46,28 @@ const meta = { function create(context) { const nodes = { - modules: new Set(), - commonjs: new Set(), - sources: {} - }; + modules: { + set: new Set(), + sources: {} }, + + types: { + set: new Set(), + sources: {} }, + + commonjs: { + set: new Set() } }; + + return { ExportNamedDeclaration(node) { + let target = node.exportKind === 'type' ? nodes.types : nodes.modules; if (!node.source) { - nodes.modules.add(node); - } else if (Array.isArray(nodes.sources[node.source.value])) { - nodes.sources[node.source.value].push(node); + target.set.add(node); + } else if (Array.isArray(target.sources[node.source.value])) { + target.sources[node.source.value].push(node); } else { - nodes.sources[node.source.value] = [node]; + target.sources[node.source.value] = [node]; } }, @@ -83,51 +82,72 @@ function create(context) { // Deeper assignments are ignored since they just modify what's already being exported // (ie. module.exports.exported.prop = true is ignored) if (chain[0] === 'module' && chain[1] === 'exports' && chain.length <= 3) { - nodes.commonjs.add(node); + nodes.commonjs.set.add(node); return; } // Assignments to exports (exports.* = *) if (chain[0] === 'exports' && chain.length === 2) { - nodes.commonjs.add(node); + nodes.commonjs.set.add(node); return; } }, 'Program:exit': function onExit() { // Report multiple `export` declarations (ES2015 modules) - if (nodes.modules.size > 1) { - nodes.modules.forEach(node => { + if (nodes.modules.set.size > 1) { + nodes.modules.set.forEach(node => { context.report({ node, - message: errors[node.type] - }); + message: errors[node.type] }); + }); } // Report multiple `aggregated exports` from the same module (ES2015 modules) - (0, _arrayPrototype2.default)((0, _object2.default)(nodes.sources).filter(nodesWithSource => Array.isArray(nodesWithSource) && nodesWithSource.length > 1)).forEach(node => { + (0, _arrayPrototype2.default)((0, _object2.default)(nodes.modules.sources). + filter(nodesWithSource => Array.isArray(nodesWithSource) && nodesWithSource.length > 1)). + forEach(node => { context.report({ node, - message: errors[node.type] + message: errors[node.type] }); + + }); + + // Report multiple `export type` declarations (FLOW ES2015 modules) + if (nodes.types.set.size > 1) { + nodes.types.set.forEach(node => { + context.report({ + node, + message: errors[node.type] }); + }); + } + + // Report multiple `aggregated type exports` from the same module (FLOW ES2015 modules) + (0, _arrayPrototype2.default)((0, _object2.default)(nodes.types.sources). + filter(nodesWithSource => Array.isArray(nodesWithSource) && nodesWithSource.length > 1)). + forEach(node => { + context.report({ + node, + message: errors[node.type] }); + }); // Report multiple `module.exports` assignments (CommonJS) - if (nodes.commonjs.size > 1) { - nodes.commonjs.forEach(node => { + if (nodes.commonjs.set.size > 1) { + nodes.commonjs.set.forEach(node => { context.report({ node, - message: errors[node.type] - }); + message: errors[node.type] }); + }); } - } - }; + } }; + } module.exports = { meta, - create -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9ncm91cC1leHBvcnRzLmpzIl0sIm5hbWVzIjpbIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsImVycm9ycyIsIkV4cG9ydE5hbWVkRGVjbGFyYXRpb24iLCJBc3NpZ25tZW50RXhwcmVzc2lvbiIsImFjY2Vzc29yQ2hhaW4iLCJub2RlIiwiY2hhaW4iLCJ1bnNoaWZ0IiwicHJvcGVydHkiLCJuYW1lIiwib2JqZWN0IiwiY3JlYXRlIiwiY29udGV4dCIsIm5vZGVzIiwibW9kdWxlcyIsIlNldCIsImNvbW1vbmpzIiwic291cmNlcyIsInNvdXJjZSIsImFkZCIsIkFycmF5IiwiaXNBcnJheSIsInZhbHVlIiwicHVzaCIsImxlZnQiLCJsZW5ndGgiLCJvbkV4aXQiLCJzaXplIiwiZm9yRWFjaCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJmaWx0ZXIiLCJub2Rlc1dpdGhTb3VyY2UiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7O0FBRUEsTUFBTUEsT0FBTztBQUNYQyxRQUFNLFlBREs7QUFFWEMsUUFBTTtBQUNKQyxTQUFLLHVCQUFRLGVBQVI7QUFERDtBQUlSO0FBTmEsQ0FBYixDQU9BLE1BQU1DLFNBQVM7QUFDYkMsMEJBQXdCLG9HQURYO0FBRWJDLHdCQUFzQjtBQUV4Qjs7QUFFQTs7Ozs7Ozs7Ozs7O0FBTmUsQ0FBZixDQWtCQSxTQUFTQyxhQUFULENBQXVCQyxJQUF2QixFQUE2QjtBQUMzQixRQUFNQyxRQUFRLEVBQWQ7O0FBRUEsS0FBRztBQUNEQSxVQUFNQyxPQUFOLENBQWNGLEtBQUtHLFFBQUwsQ0FBY0MsSUFBNUI7O0FBRUEsUUFBSUosS0FBS0ssTUFBTCxDQUFZWixJQUFaLEtBQXFCLFlBQXpCLEVBQXVDO0FBQ3JDUSxZQUFNQyxPQUFOLENBQWNGLEtBQUtLLE1BQUwsQ0FBWUQsSUFBMUI7QUFDQTtBQUNEOztBQUVESixXQUFPQSxLQUFLSyxNQUFaO0FBQ0Qs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ICcuLi9kb2NzVXJsJ1xuaW1wb3J0IHZhbHVlcyBmcm9tICdvYmplY3QudmFsdWVzJ1xuaW1wb3J0IGZsYXQgZnJvbSAnYXJyYXkucHJvdG90eXBlLmZsYXQnXG5cbmNvbnN0IG1ldGEgPSB7XG4gIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgZG9jczoge1xuICAgIHVybDogZG9jc1VybCgnZ3JvdXAtZXhwb3J0cycpLFxuICB9LFxufVxuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuY29uc3QgZXJyb3JzID0ge1xuICBFeHBvcnROYW1lZERlY2xhcmF0aW9uOiAnTXVsdGlwbGUgbmFtZWQgZXhwb3J0IGRlY2xhcmF0aW9uczsgY29uc29saWRhdGUgYWxsIG5hbWVkIGV4cG9ydHMgaW50byBhIHNpbmdsZSBleHBvcnQgZGVjbGFyYXRpb24nLFxuICBBc3NpZ25tZW50RXhwcmVzc2lvbjogJ011bHRpcGxlIENvbW1vbkpTIGV4cG9ydHM7IGNvbnNvbGlkYXRlIGFsbCBleHBvcnRzIGludG8gYSBzaW5nbGUgYXNzaWdubWVudCB0byBgbW9kdWxlLmV4cG9ydHNgJyxcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiAqL1xuXG4vKipcbiAqIFJldHVybnMgYW4gYXJyYXkgd2l0aCBuYW1lcyBvZiB0aGUgcHJvcGVydGllcyBpbiB0aGUgYWNjZXNzb3IgY2hhaW4gZm9yIE1lbWJlckV4cHJlc3Npb24gbm9kZXNcbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBtb2R1bGUuZXhwb3J0cyA9IHt9YCA9PiBbJ21vZHVsZScsICdleHBvcnRzJ11cbiAqIGBtb2R1bGUuZXhwb3J0cy5wcm9wZXJ0eSA9IHRydWVgID0+IFsnbW9kdWxlJywgJ2V4cG9ydHMnLCAncHJvcGVydHknXVxuICpcbiAqIEBwYXJhbSAgICAge05vZGV9ICAgIG5vZGUgICAgQVNUIE5vZGUgKE1lbWJlckV4cHJlc3Npb24pXG4gKiBAcmV0dXJuICAgIHtBcnJheX0gICAgICAgICAgIEFycmF5IHdpdGggdGhlIHByb3BlcnR5IG5hbWVzIGluIHRoZSBjaGFpblxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gYWNjZXNzb3JDaGFpbihub2RlKSB7XG4gIGNvbnN0IGNoYWluID0gW11cblxuICBkbyB7XG4gICAgY2hhaW4udW5zaGlmdChub2RlLnByb3BlcnR5Lm5hbWUpXG5cbiAgICBpZiAobm9kZS5vYmplY3QudHlwZSA9PT0gJ0lkZW50aWZpZXInKSB7XG4gICAgICBjaGFpbi51bnNoaWZ0KG5vZGUub2JqZWN0Lm5hbWUpXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIG5vZGUgPSBub2RlLm9iamVjdFxuICB9IHdoaWxlIChub2RlLnR5cGUgPT09ICdNZW1iZXJFeHByZXNzaW9uJylcblxuICByZXR1cm4gY2hhaW5cbn1cblxuZnVuY3Rpb24gY3JlYXRlKGNvbnRleHQpIHtcbiAgY29uc3Qgbm9kZXMgPSB7XG4gICAgbW9kdWxlczogbmV3IFNldCgpLFxuICAgIGNvbW1vbmpzOiBuZXcgU2V0KCksXG4gICAgc291cmNlczoge30sXG4gIH1cblxuICByZXR1cm4ge1xuICAgIEV4cG9ydE5hbWVkRGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgaWYgKCFub2RlLnNvdXJjZSkge1xuICAgICAgICBub2Rlcy5tb2R1bGVzLmFkZChub2RlKVxuICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KG5vZGVzLnNvdXJjZXNbbm9kZS5zb3VyY2UudmFsdWVdKSkge1xuICAgICAgICBub2Rlcy5zb3VyY2VzW25vZGUuc291cmNlLnZhbHVlXS5wdXNoKG5vZGUpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBub2Rlcy5zb3VyY2VzW25vZGUuc291cmNlLnZhbHVlXSA9IFtub2RlXVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBBc3NpZ25tZW50RXhwcmVzc2lvbihub2RlKSB7XG4gICAgICBpZiAobm9kZS5sZWZ0LnR5cGUgIT09ICdNZW1iZXJFeHByZXNzaW9uJykge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgY29uc3QgY2hhaW4gPSBhY2Nlc3NvckNoYWluKG5vZGUubGVmdClcblxuICAgICAgLy8gQXNzaWdubWVudHMgdG8gbW9kdWxlLmV4cG9ydHNcbiAgICAgIC8vIERlZXBlciBhc3NpZ25tZW50cyBhcmUgaWdub3JlZCBzaW5jZSB0aGV5IGp1c3QgbW9kaWZ5IHdoYXQncyBhbHJlYWR5IGJlaW5nIGV4cG9ydGVkXG4gICAgICAvLyAoaWUuIG1vZHVsZS5leHBvcnRzLmV4cG9ydGVkLnByb3AgPSB0cnVlIGlzIGlnbm9yZWQpXG4gICAgICBpZiAoY2hhaW5bMF0gPT09ICdtb2R1bGUnICYmIGNoYWluWzFdID09PSAnZXhwb3J0cycgJiYgY2hhaW4ubGVuZ3RoIDw9IDMpIHtcbiAgICAgICAgbm9kZXMuY29tbW9uanMuYWRkKG5vZGUpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyBBc3NpZ25tZW50cyB0byBleHBvcnRzIChleHBvcnRzLiogPSAqKVxuICAgICAgaWYgKGNoYWluWzBdID09PSAnZXhwb3J0cycgJiYgY2hhaW4ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIG5vZGVzLmNvbW1vbmpzLmFkZChub2RlKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgJ1Byb2dyYW06ZXhpdCc6IGZ1bmN0aW9uIG9uRXhpdCgpIHtcbiAgICAgIC8vIFJlcG9ydCBtdWx0aXBsZSBgZXhwb3J0YCBkZWNsYXJhdGlvbnMgKEVTMjAxNSBtb2R1bGVzKVxuICAgICAgaWYgKG5vZGVzLm1vZHVsZXMuc2l6ZSA+IDEpIHtcbiAgICAgICAgbm9kZXMubW9kdWxlcy5mb3JFYWNoKG5vZGUgPT4ge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOiBlcnJvcnNbbm9kZS50eXBlXSxcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICAvLyBSZXBvcnQgbXVsdGlwbGUgYGFnZ3JlZ2F0ZWQgZXhwb3J0c2AgZnJvbSB0aGUgc2FtZSBtb2R1bGUgKEVTMjAxNSBtb2R1bGVzKVxuICAgICAgZmxhdCh2YWx1ZXMobm9kZXMuc291cmNlcylcbiAgICAgICAgLmZpbHRlcihub2Rlc1dpdGhTb3VyY2UgPT4gQXJyYXkuaXNBcnJheShub2Rlc1dpdGhTb3VyY2UpICYmIG5vZGVzV2l0aFNvdXJjZS5sZW5ndGggPiAxKSlcbiAgICAgICAgLmZvckVhY2goKG5vZGUpID0+IHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3JzW25vZGUudHlwZV0sXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcblxuICAgICAgLy8gUmVwb3J0IG11bHRpcGxlIGBtb2R1bGUuZXhwb3J0c2AgYXNzaWdubWVudHMgKENvbW1vbkpTKVxuICAgICAgaWYgKG5vZGVzLmNvbW1vbmpzLnNpemUgPiAxKSB7XG4gICAgICAgIG5vZGVzLmNvbW1vbmpzLmZvckVhY2gobm9kZSA9PiB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGVycm9yc1tub2RlLnR5cGVdLFxuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSxcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YSxcbiAgY3JlYXRlLFxufVxuIl19 \ No newline at end of file + create }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9ncm91cC1leHBvcnRzLmpzIl0sIm5hbWVzIjpbIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsImVycm9ycyIsIkV4cG9ydE5hbWVkRGVjbGFyYXRpb24iLCJBc3NpZ25tZW50RXhwcmVzc2lvbiIsImFjY2Vzc29yQ2hhaW4iLCJub2RlIiwiY2hhaW4iLCJ1bnNoaWZ0IiwicHJvcGVydHkiLCJuYW1lIiwib2JqZWN0IiwiY3JlYXRlIiwiY29udGV4dCIsIm5vZGVzIiwibW9kdWxlcyIsInNldCIsIlNldCIsInNvdXJjZXMiLCJ0eXBlcyIsImNvbW1vbmpzIiwidGFyZ2V0IiwiZXhwb3J0S2luZCIsInNvdXJjZSIsImFkZCIsIkFycmF5IiwiaXNBcnJheSIsInZhbHVlIiwicHVzaCIsImxlZnQiLCJsZW5ndGgiLCJvbkV4aXQiLCJzaXplIiwiZm9yRWFjaCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJmaWx0ZXIiLCJub2Rlc1dpdGhTb3VyY2UiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiYUFBQSxxQztBQUNBLHVDO0FBQ0Esc0Q7O0FBRUEsTUFBTUEsT0FBTztBQUNYQyxRQUFNLFlBREs7QUFFWEMsUUFBTTtBQUNKQyxTQUFLLHVCQUFRLGVBQVIsQ0FERDs7O0FBSVIsOEJBTmEsRUFBYjtBQU9BLE1BQU1DLFNBQVM7QUFDYkMsMEJBQXdCLG9HQURYO0FBRWJDLHdCQUFzQjs7QUFFeEI7O0FBRUE7Ozs7Ozs7Ozs7O2lDQU5lLEVBQWY7QUFrQkEsU0FBU0MsYUFBVCxDQUF1QkMsSUFBdkIsRUFBNkI7QUFDM0IsUUFBTUMsUUFBUSxFQUFkOztBQUVBLEtBQUc7QUFDREEsVUFBTUMsT0FBTixDQUFjRixLQUFLRyxRQUFMLENBQWNDLElBQTVCOztBQUVBLFFBQUlKLEtBQUtLLE1BQUwsQ0FBWVosSUFBWixLQUFxQixZQUF6QixFQUF1QztBQUNyQ1EsWUFBTUMsT0FBTixDQUFjRixLQUFLSyxNQUFMLENBQVlELElBQTFCO0FB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QixJQUFoQixHQUF1QixDQUEzQixFQUE4QjtBQUM1QmxCLGNBQU1LLEtBQU4sQ0FBWUgsR0FBWixDQUFnQmlCLE9BQWhCLENBQXdCM0IsUUFBUTtBQUM5Qk8sa0JBQVFxQixNQUFSLENBQWU7QUFDYjVCLGdCQURhO0FBRWI2QixxQkFBU2pDLE9BQU9JLEtBQUtQLElBQVosQ0FGSSxFQUFmOztBQUlELFNBTEQ7QUFNRDs7QUFFRDtBQUNBLG9DQUFLLHNCQUFPZSxNQUFNSyxLQUFOLENBQVlELE9BQW5CO0FBQ0ZrQixZQURFLENBQ0tDLG1CQUFtQlosTUFBTUMsT0FBTixDQUFjVyxlQUFkLEtBQWtDQSxnQkFBZ0JQLE1BQWhCLEdBQXlCLENBRG5GLENBQUw7QUFFR0csYUFGSCxDQUVZM0IsSUFBRCxJQUFVO0FBQ2pCTyxnQkFBUXFCLE1BQVIsQ0FBZTtBQUNiNUIsY0FEYTtBQUViNkIsbUJBQVNqQyxPQUFPSSxLQUFLUCxJQUFaLENBRkksRUFBZjs7QUFJRCxPQVBIOztBQVNBO0FBQ0EsVUFBSWUsTUFBTU0sUUFBTixDQUFlSixHQUFmLENBQW1CZ0IsSUFBbkIsR0FBMEIsQ0FBOUIsRUFBaUM7QUFDL0JsQixjQUFNTSxRQUFOLENBQWVKLEdBQWYsQ0FBbUJpQixPQUFuQixDQUEyQjNCLFFBQVE7QUFDakNPLGtCQUFRcUIsTUFBUixDQUFlO0FBQ2I1QixnQkFEYTtBQUViNkIscUJBQVNqQyxPQUFPSSxLQUFLUCxJQUFaLENBRkksRUFBZjs7QUFJRCxTQUxEO0FBTUQ7QUFDRixLQXBGSSxFQUFQOztBQXNGRDs7QUFFRHVDLE9BQU9DLE9BQVAsR0FBaUI7QUFDZnpDLE1BRGU7QUFFZmMsUUFGZSxFQUFqQiIsImZpbGUiOiJncm91cC1leHBvcnRzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcbmltcG9ydCB2YWx1ZXMgZnJvbSAnb2JqZWN0LnZhbHVlcydcbmltcG9ydCBmbGF0IGZyb20gJ2FycmF5LnByb3RvdHlwZS5mbGF0J1xuXG5jb25zdCBtZXRhID0ge1xuICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gIGRvY3M6IHtcbiAgICB1cmw6IGRvY3NVcmwoJ2dyb3VwLWV4cG9ydHMnKSxcbiAgfSxcbn1cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbmNvbnN0IGVycm9ycyA9IHtcbiAgRXhwb3J0TmFtZWREZWNsYXJhdGlvbjogJ011bHRpcGxlIG5hbWVkIGV4cG9ydCBkZWNsYXJhdGlvbnM7IGNvbnNvbGlkYXRlIGFsbCBuYW1lZCBleHBvcnRzIGludG8gYSBzaW5nbGUgZXhwb3J0IGRlY2xhcmF0aW9uJyxcbiAgQXNzaWdubWVudEV4cHJlc3Npb246ICdNdWx0aXBsZSBDb21tb25KUyBleHBvcnRzOyBjb25zb2xpZGF0ZSBhbGwgZXhwb3J0cyBpbnRvIGEgc2luZ2xlIGFzc2lnbm1lbnQgdG8gYG1vZHVsZS5leHBvcnRzYCcsXG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4gKi9cblxuLyoqXG4gKiBSZXR1cm5zIGFuIGFycmF5IHdpdGggbmFtZXMgb2YgdGhlIHByb3BlcnRpZXMgaW4gdGhlIGFjY2Vzc29yIGNoYWluIGZvciBNZW1iZXJFeHByZXNzaW9uIG5vZGVzXG4gKlxuICogRXhhbXBsZTpcbiAqXG4gKiBgbW9kdWxlLmV4cG9ydHMgPSB7fWAgPT4gWydtb2R1bGUnLCAnZXhwb3J0cyddXG4gKiBgbW9kdWxlLmV4cG9ydHMucHJvcGVydHkgPSB0cnVlYCA9PiBbJ21vZHVsZScsICdleHBvcnRzJywgJ3Byb3BlcnR5J11cbiAqXG4gKiBAcGFyYW0gICAgIHtOb2RlfSAgICBub2RlICAgIEFTVCBOb2RlIChNZW1iZXJFeHByZXNzaW9uKVxuICogQHJldHVybiAgICB7QXJyYXl9ICAgICAgICAgICBBcnJheSB3aXRoIHRoZSBwcm9wZXJ0eSBuYW1lcyBpbiB0aGUgY2hhaW5cbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIGFjY2Vzc29yQ2hhaW4obm9kZSkge1xuICBjb25zdCBjaGFpbiA9IFtdXG5cbiAgZG8ge1xuICAgIGNoYWluLnVuc2hpZnQobm9kZS5wcm9wZXJ0eS5uYW1lKVxuXG4gICAgaWYgKG5vZGUub2JqZWN0LnR5cGUgPT09ICdJZGVudGlmaWVyJykge1xuICAgICAgY2hhaW4udW5zaGlmdChub2RlLm9iamVjdC5uYW1lKVxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBub2RlID0gbm9kZS5vYmplY3RcbiAgfSB3aGlsZSAobm9kZS50eXBlID09PSAnTWVtYmVyRXhwcmVzc2lvbicpXG5cbiAgcmV0dXJuIGNoYWluXG59XG5cbmZ1bmN0aW9uIGNyZWF0ZShjb250ZXh0KSB7XG4gIGNvbnN0IG5vZGVzID0ge1xuICAgIG1vZHVsZXM6IHtcbiAgICAgIHNldDogbmV3IFNldCgpLFxuICAgICAgc291cmNlczoge30sXG4gICAgfSxcbiAgICB0eXBlczoge1xuICAgICAgc2V0OiBuZXcgU2V0KCksXG4gICAgICBzb3VyY2VzOiB7fSxcbiAgICB9LFxuICAgIGNvbW1vbmpzOiB7XG4gICAgICBzZXQ6IG5ldyBTZXQoKSxcbiAgICB9LFxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBFeHBvcnROYW1lZERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgIGxldCB0YXJnZXQgPSBub2RlLmV4cG9ydEtpbmQgPT09ICd0eXBlJyA/IG5vZGVzLnR5cGVzIDogbm9kZXMubW9kdWxlc1xuICAgICAgaWYgKCFub2RlLnNvdXJjZSkge1xuICAgICAgICB0YXJnZXQuc2V0LmFkZChub2RlKVxuICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHRhcmdldC5zb3VyY2VzW25vZGUuc291cmNlLnZhbHVlXSkpIHtcbiAgICAgICAgdGFyZ2V0LnNvdXJjZXNbbm9kZS5zb3VyY2UudmFsdWVdLnB1c2gobm9kZSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRhcmdldC5zb3VyY2VzW25vZGUuc291cmNlLnZhbHVlXSA9IFtub2RlXVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBBc3NpZ25tZW50RXhwcmVzc2lvbihub2RlKSB7XG4gICAgICBpZiAobm9kZS5sZWZ0LnR5cGUgIT09ICdNZW1iZXJFeHByZXNzaW9uJykge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgY29uc3QgY2hhaW4gPSBhY2Nlc3NvckNoYWluKG5vZGUubGVmdClcblxuICAgICAgLy8gQXNzaWdubWVudHMgdG8gbW9kdWxlLmV4cG9ydHNcbiAgICAgIC8vIERlZXBlciBhc3NpZ25tZW50cyBhcmUgaWdub3JlZCBzaW5jZSB0aGV5IGp1c3QgbW9kaWZ5IHdoYXQncyBhbHJlYWR5IGJlaW5nIGV4cG9ydGVkXG4gICAgICAvLyAoaWUuIG1vZHVsZS5leHBvcnRzLmV4cG9ydGVkLnByb3AgPSB0cnVlIGlzIGlnbm9yZWQpXG4gICAgICBpZiAoY2hhaW5bMF0gPT09ICdtb2R1bGUnICYmIGNoYWluWzFdID09PSAnZXhwb3J0cycgJiYgY2hhaW4ubGVuZ3RoIDw9IDMpIHtcbiAgICAgICAgbm9kZXMuY29tbW9uanMuc2V0LmFkZChub2RlKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gQXNzaWdubWVudHMgdG8gZXhwb3J0cyAoZXhwb3J0cy4qID0gKilcbiAgICAgIGlmIChjaGFpblswXSA9PT0gJ2V4cG9ydHMnICYmIGNoYWluLmxlbmd0aCA9PT0gMikge1xuICAgICAgICBub2Rlcy5jb21tb25qcy5zZXQuYWRkKG5vZGUpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgIH0sXG5cbiAgICAnUHJvZ3JhbTpleGl0JzogZnVuY3Rpb24gb25FeGl0KCkge1xuICAgICAgLy8gUmVwb3J0IG11bHRpcGxlIGBleHBvcnRgIGRlY2xhcmF0aW9ucyAoRVMyMDE1IG1vZHVsZXMpXG4gICAgICBpZiAobm9kZXMubW9kdWxlcy5zZXQuc2l6ZSA+IDEpIHtcbiAgICAgICAgbm9kZXMubW9kdWxlcy5zZXQuZm9yRWFjaChub2RlID0+IHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3JzW25vZGUudHlwZV0sXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgLy8gUmVwb3J0IG11bHRpcGxlIGBhZ2dyZWdhdGVkIGV4cG9ydHNgIGZyb20gdGhlIHNhbWUgbW9kdWxlIChFUzIwMTUgbW9kdWxlcylcbiAgICAgIGZsYXQodmFsdWVzKG5vZGVzLm1vZHVsZXMuc291cmNlcylcbiAgICAgICAgLmZpbHRlcihub2Rlc1dpdGhTb3VyY2UgPT4gQXJyYXkuaXNBcnJheShub2Rlc1dpdGhTb3VyY2UpICYmIG5vZGVzV2l0aFNvdXJjZS5sZW5ndGggPiAxKSlcbiAgICAgICAgLmZvckVhY2goKG5vZGUpID0+IHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3JzW25vZGUudHlwZV0sXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcblxuICAgICAgLy8gUmVwb3J0IG11bHRpcGxlIGBleHBvcnQgdHlwZWAgZGVjbGFyYXRpb25zIChGTE9XIEVTMjAxNSBtb2R1bGVzKVxuICAgICAgaWYgKG5vZGVzLnR5cGVzLnNldC5zaXplID4gMSkge1xuICAgICAgICBub2Rlcy50eXBlcy5zZXQuZm9yRWFjaChub2RlID0+IHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3JzW25vZGUudHlwZV0sXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgLy8gUmVwb3J0IG11bHRpcGxlIGBhZ2dyZWdhdGVkIHR5cGUgZXhwb3J0c2AgZnJvbSB0aGUgc2FtZSBtb2R1bGUgKEZMT1cgRVMyMDE1IG1vZHVsZXMpXG4gICAgICBmbGF0KHZhbHVlcyhub2Rlcy50eXBlcy5zb3VyY2VzKVxuICAgICAgICAuZmlsdGVyKG5vZGVzV2l0aFNvdXJjZSA9PiBBcnJheS5pc0FycmF5KG5vZGVzV2l0aFNvdXJjZSkgJiYgbm9kZXNXaXRoU291cmNlLmxlbmd0aCA+IDEpKVxuICAgICAgICAuZm9yRWFjaCgobm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOiBlcnJvcnNbbm9kZS50eXBlXSxcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuXG4gICAgICAvLyBSZXBvcnQgbXVsdGlwbGUgYG1vZHVsZS5leHBvcnRzYCBhc3NpZ25tZW50cyAoQ29tbW9uSlMpXG4gICAgICBpZiAobm9kZXMuY29tbW9uanMuc2V0LnNpemUgPiAxKSB7XG4gICAgICAgIG5vZGVzLmNvbW1vbmpzLnNldC5mb3JFYWNoKG5vZGUgPT4ge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOiBlcnJvcnNbbm9kZS50eXBlXSxcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0sXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGEsXG4gIGNyZWF0ZSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/imports-first.js b/node_modules/eslint-plugin-import/lib/rules/imports-first.js index 77fd18d7..7f6d199c 100644 --- a/node_modules/eslint-plugin-import/lib/rules/imports-first.js +++ b/node_modules/eslint-plugin-import/lib/rules/imports-first.js @@ -1,19 +1,13 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const first = require('./first'); const newMeta = Object.assign({}, first.meta, { deprecated: true, docs: { - url: (0, _docsUrl2.default)('imports-first', '7b25c1cb95ee18acc1531002fd343e1e6031f9ed') - } -}); + url: (0, _docsUrl2.default)('imports-first', '7b25c1cb95ee18acc1531002fd343e1e6031f9ed') } }); + + module.exports = Object.assign({}, first, { meta: newMeta }); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9pbXBvcnRzLWZpcnN0LmpzIl0sIm5hbWVzIjpbImZpcnN0IiwicmVxdWlyZSIsIm5ld01ldGEiLCJPYmplY3QiLCJhc3NpZ24iLCJtZXRhIiwiZGVwcmVjYXRlZCIsImRvY3MiLCJ1cmwiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOztBQUFBOzs7Ozs7QUFFQSxNQUFNQSxRQUFRQyxRQUFRLFNBQVIsQ0FBZDs7QUFFQSxNQUFNQyxVQUFVQyxPQUFPQyxNQUFQLENBQWMsRUFBZCxFQUFrQkosTUFBTUssSUFBeEIsRUFBOEI7QUFDNUNDLGNBQVksSUFEZ0M7QUFFNUNDLFFBQU07QUFDSkMsU0FBSyx1QkFBUSxlQUFSLEVBQXlCLDBDQUF6QjtBQUREO0FBRnNDLENBQTlCLENBQWhCOztBQU9BQyxPQUFPQyxPQUFQLEdBQWlCUCxPQUFPQyxNQUFQLENBQWMsRUFBZCxFQUFrQkosS0FBbEIsRUFBeUIsRUFBRUssTUFBTUgsT0FBUixFQUF6QixDQUFqQiIsImZpbGUiOiJpbXBvcnRzLWZpcnN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxuY29uc3QgZmlyc3QgPSByZXF1aXJlKCcuL2ZpcnN0JylcblxuY29uc3QgbmV3TWV0YSA9IE9iamVjdC5hc3NpZ24oe30sIGZpcnN0Lm1ldGEsIHtcbiAgZGVwcmVjYXRlZDogdHJ1ZSxcbiAgZG9jczoge1xuICAgIHVybDogZG9jc1VybCgnaW1wb3J0cy1maXJzdCcsICc3YjI1YzFjYjk1ZWUxOGFjYzE1MzEwMDJmZDM0M2UxZTYwMzFmOWVkJyksXG4gIH0sXG59KVxuXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdC5hc3NpZ24oe30sIGZpcnN0LCB7IG1ldGE6IG5ld01ldGEgfSlcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9pbXBvcnRzLWZpcnN0LmpzIl0sIm5hbWVzIjpbImZpcnN0IiwicmVxdWlyZSIsIm5ld01ldGEiLCJPYmplY3QiLCJhc3NpZ24iLCJtZXRhIiwiZGVwcmVjYXRlZCIsImRvY3MiLCJ1cmwiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiYUFBQSxxQzs7QUFFQSxNQUFNQSxRQUFRQyxRQUFRLFNBQVIsQ0FBZDs7QUFFQSxNQUFNQyxVQUFVQyxPQUFPQyxNQUFQLENBQWMsRUFBZCxFQUFrQkosTUFBTUssSUFBeEIsRUFBOEI7QUFDNUNDLGNBQVksSUFEZ0M7QUFFNUNDLFFBQU07QUFDSkMsU0FBSyx1QkFBUSxlQUFSLEVBQXlCLDBDQUF6QixDQURELEVBRnNDLEVBQTlCLENBQWhCOzs7O0FBT0FDLE9BQU9DLE9BQVAsR0FBaUJQLE9BQU9DLE1BQVAsQ0FBYyxFQUFkLEVBQWtCSixLQUFsQixFQUF5QixFQUFFSyxNQUFNSCxPQUFSLEVBQXpCLENBQWpCIiwiZmlsZSI6ImltcG9ydHMtZmlyc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5jb25zdCBmaXJzdCA9IHJlcXVpcmUoJy4vZmlyc3QnKVxuXG5jb25zdCBuZXdNZXRhID0gT2JqZWN0LmFzc2lnbih7fSwgZmlyc3QubWV0YSwge1xuICBkZXByZWNhdGVkOiB0cnVlLFxuICBkb2NzOiB7XG4gICAgdXJsOiBkb2NzVXJsKCdpbXBvcnRzLWZpcnN0JywgJzdiMjVjMWNiOTVlZTE4YWNjMTUzMTAwMmZkMzQzZTFlNjAzMWY5ZWQnKSxcbiAgfSxcbn0pXG5cbm1vZHVsZS5leHBvcnRzID0gT2JqZWN0LmFzc2lnbih7fSwgZmlyc3QsIHsgbWV0YTogbmV3TWV0YSB9KVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/max-dependencies.js b/node_modules/eslint-plugin-import/lib/rules/max-dependencies.js index d7f2f49a..83aaeeae 100644 --- a/node_modules/eslint-plugin-import/lib/rules/max-dependencies.js +++ b/node_modules/eslint-plugin-import/lib/rules/max-dependencies.js @@ -1,27 +1,16 @@ -'use strict'; - -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const DEFAULT_MAX = 10; -const countDependencies = (dependencies, lastNode, context) => { - var _ref = context.options[0] || { max: DEFAULT_MAX }; - - const max = _ref.max; - +const countDependencies = (dependencies, lastNode, context) => {var _ref = + context.options[0] || { max: DEFAULT_MAX };const max = _ref.max; if (dependencies.size > max) { - context.report(lastNode, `Maximum number of dependencies (${max}) exceeded.`); + context.report( + lastNode, + `Maximum number of dependencies (${max}) exceeded.`); + } }; @@ -29,17 +18,19 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('max-dependencies') - }, + url: (0, _docsUrl2.default)('max-dependencies') }, - schema: [{ + + schema: [ + { 'type': 'object', 'properties': { - 'max': { 'type': 'number' } - }, - 'additionalProperties': false - }] - }, + 'max': { 'type': 'number' } }, + + 'additionalProperties': false }] }, + + + create: context => { const dependencies = new Set(); // keep track of dependencies @@ -52,11 +43,8 @@ module.exports = { }, CallExpression(node) { - if ((0, _staticRequire2.default)(node)) { - var _node$arguments = _slicedToArray(node.arguments, 1); - - const requirePath = _node$arguments[0]; - + if ((0, _staticRequire2.default)(node)) {var _node$arguments = _slicedToArray( + node.arguments, 1);const requirePath = _node$arguments[0]; dependencies.add(requirePath.value); lastNode = node; } @@ -64,8 +52,7 @@ module.exports = { 'Program:exit': function () { countDependencies(dependencies, lastNode, context); - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9tYXgtZGVwZW5kZW5jaWVzLmpzIl0sIm5hbWVzIjpbIkRFRkFVTFRfTUFYIiwiY291bnREZXBlbmRlbmNpZXMiLCJkZXBlbmRlbmNpZXMiLCJsYXN0Tm9kZSIsImNvbnRleHQiLCJvcHRpb25zIiwibWF4Iiwic2l6ZSIsInJlcG9ydCIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJTZXQiLCJJbXBvcnREZWNsYXJhdGlvbiIsIm5vZGUiLCJhZGQiLCJzb3VyY2UiLCJ2YWx1ZSIsIkNhbGxFeHByZXNzaW9uIiwiYXJndW1lbnRzIiwicmVxdWlyZVBhdGgiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7QUFFQSxNQUFNQSxjQUFjLEVBQXBCOztBQUVBLE1BQU1DLG9CQUFvQixDQUFDQyxZQUFELEVBQWVDLFFBQWYsRUFBeUJDLE9BQXpCLEtBQXFDO0FBQUEsYUFDL0NBLFFBQVFDLE9BQVIsQ0FBZ0IsQ0FBaEIsS0FBc0IsRUFBRUMsS0FBS04sV0FBUCxFQUR5Qjs7QUFBQSxRQUN0RE0sR0FEc0QsUUFDdERBLEdBRHNEOzs7QUFHN0QsTUFBSUosYUFBYUssSUFBYixHQUFvQkQsR0FBeEIsRUFBNkI7QUFDM0JGLFlBQVFJLE1BQVIsQ0FDRUwsUUFERixFQUVHLG1DQUFrQ0csR0FBSSxhQUZ6QztBQUlEO0FBQ0YsQ0FURDs7QUFXQUcsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsa0JBQVI7QUFERCxLQUZGOztBQU1KQyxZQUFRLENBQ047QUFDRSxjQUFRLFFBRFY7QUFFRSxvQkFBYztBQUNaLGVBQU8sRUFBRSxRQUFRLFFBQVY7QUFESyxPQUZoQjtBQUtFLDhCQUF3QjtBQUwxQixLQURNO0FBTkosR0FEUzs7QUFrQmZDLFVBQVFaLFdBQVc7QUFDakIsVUFBTUYsZUFBZSxJQUFJZSxHQUFKLEVBQXJCLENBRGlCLENBQ2M7QUFDL0IsUUFBSWQsUUFBSixDQUZpQixDQUVKOztBQUViLFdBQU87QUFDTGUsd0JBQWtCQyxJQUFsQixFQUF3QjtBQUN0QmpCLHFCQUFha0IsR0FBYixDQUFpQkQsS0FBS0UsTUFBTCxDQUFZQyxLQUE3QjtBQUNBbkIsbUJBQVdnQixLQUFLRSxNQUFoQjtBQUNELE9BSkk7O0FBTUxFLHFCQUFlSixJQUFmLEVBQXFCO0FBQ25CLFlBQUksNkJBQWdCQSxJQUFoQixDQUFKLEVBQTJCO0FBQUEsK0NBQ0RBLEtBQUtLLFNBREo7O0FBQUEsZ0JBQ2pCQyxXQURpQjs7QUFFekJ2Qix1QkFBYWtCLEdBQWIsQ0FBaUJLLFlBQVlILEtBQTdCO0FBQ0FuQixxQkFBV2dCLElBQVg7QUFDRDtBQUNGLE9BWkk7O0FBY0wsc0JBQWdCLFlBQVk7QUFDMUJsQiwwQkFBa0JDLFlBQWxCLEVBQWdDQyxRQUFoQyxFQUEwQ0MsT0FBMUM7QUFDRDtBQWhCSSxLQUFQO0FBa0JEO0FBeENjLENBQWpCIiwiZmlsZSI6Im1heC1kZXBlbmRlbmNpZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaXNTdGF0aWNSZXF1aXJlIGZyb20gJy4uL2NvcmUvc3RhdGljUmVxdWlyZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmNvbnN0IERFRkFVTFRfTUFYID0gMTBcblxuY29uc3QgY291bnREZXBlbmRlbmNpZXMgPSAoZGVwZW5kZW5jaWVzLCBsYXN0Tm9kZSwgY29udGV4dCkgPT4ge1xuICBjb25zdCB7bWF4fSA9IGNvbnRleHQub3B0aW9uc1swXSB8fCB7IG1heDogREVGQVVMVF9NQVggfVxuXG4gIGlmIChkZXBlbmRlbmNpZXMuc2l6ZSA+IG1heCkge1xuICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgbGFzdE5vZGUsXG4gICAgICBgTWF4aW11bSBudW1iZXIgb2YgZGVwZW5kZW5jaWVzICgke21heH0pIGV4Y2VlZGVkLmBcbiAgICApXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCdtYXgtZGVwZW5kZW5jaWVzJyksXG4gICAgfSxcblxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICAndHlwZSc6ICdvYmplY3QnLFxuICAgICAgICAncHJvcGVydGllcyc6IHtcbiAgICAgICAgICAnbWF4JzogeyAndHlwZSc6ICdudW1iZXInIH0sXG4gICAgICAgIH0sXG4gICAgICAgICdhZGRpdGlvbmFsUHJvcGVydGllcyc6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogY29udGV4dCA9PiB7XG4gICAgY29uc3QgZGVwZW5kZW5jaWVzID0gbmV3IFNldCgpIC8vIGtlZXAgdHJhY2sgb2YgZGVwZW5kZW5jaWVzXG4gICAgbGV0IGxhc3ROb2RlIC8vIGtlZXAgdHJhY2sgb2YgdGhlIGxhc3Qgbm9kZSB0byByZXBvcnQgb25cblxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGRlcGVuZGVuY2llcy5hZGQobm9kZS5zb3VyY2UudmFsdWUpXG4gICAgICAgIGxhc3ROb2RlID0gbm9kZS5zb3VyY2VcbiAgICAgIH0sXG5cbiAgICAgIENhbGxFeHByZXNzaW9uKG5vZGUpIHtcbiAgICAgICAgaWYgKGlzU3RhdGljUmVxdWlyZShub2RlKSkge1xuICAgICAgICAgIGNvbnN0IFsgcmVxdWlyZVBhdGggXSA9IG5vZGUuYXJndW1lbnRzXG4gICAgICAgICAgZGVwZW5kZW5jaWVzLmFkZChyZXF1aXJlUGF0aC52YWx1ZSlcbiAgICAgICAgICBsYXN0Tm9kZSA9IG5vZGVcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgJ1Byb2dyYW06ZXhpdCc6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY291bnREZXBlbmRlbmNpZXMoZGVwZW5kZW5jaWVzLCBsYXN0Tm9kZSwgY29udGV4dClcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9tYXgtZGVwZW5kZW5jaWVzLmpzIl0sIm5hbWVzIjpbIkRFRkFVTFRfTUFYIiwiY291bnREZXBlbmRlbmNpZXMiLCJkZXBlbmRlbmNpZXMiLCJsYXN0Tm9kZSIsImNvbnRleHQiLCJvcHRpb25zIiwibWF4Iiwic2l6ZSIsInJlcG9ydCIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJTZXQiLCJJbXBvcnREZWNsYXJhdGlvbiIsIm5vZGUiLCJhZGQiLCJzb3VyY2UiLCJ2YWx1ZSIsIkNhbGxFeHByZXNzaW9uIiwiYXJndW1lbnRzIiwicmVxdWlyZVBhdGgiXSwibWFwcGluZ3MiOiJxb0JBQUEsc0Q7QUFDQSxxQzs7QUFFQSxNQUFNQSxjQUFjLEVBQXBCOztBQUVBLE1BQU1DLG9CQUFvQixDQUFDQyxZQUFELEVBQWVDLFFBQWYsRUFBeUJDLE9BQXpCLEtBQXFDO0FBQy9DQSxVQUFRQyxPQUFSLENBQWdCLENBQWhCLEtBQXNCLEVBQUVDLEtBQUtOLFdBQVAsRUFEeUIsT0FDdERNLEdBRHNELFFBQ3REQSxHQURzRDs7QUFHN0QsTUFBSUosYUFBYUssSUFBYixHQUFvQkQsR0FBeEIsRUFBNkI7QUFDM0JGLFlBQVFJLE1BQVI7QUFDRUwsWUFERjtBQUVHLHVDQUFrQ0csR0FBSSxhQUZ6Qzs7QUFJRDtBQUNGLENBVEQ7O0FBV0FHLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLGtCQUFSLENBREQsRUFGRjs7O0FBTUpDLFlBQVE7QUFDTjtBQUNFLGNBQVEsUUFEVjtBQUVFLG9CQUFjO0FBQ1osZUFBTyxFQUFFLFFBQVEsUUFBVixFQURLLEVBRmhCOztBQUtFLDhCQUF3QixLQUwxQixFQURNLENBTkosRUFEUzs7Ozs7QUFrQmZDLFVBQVFaLFdBQVc7QUFDakIsVUFBTUYsZUFBZSxJQUFJZSxHQUFKLEVBQXJCLENBRGlCLENBQ2M7QUFDL0IsUUFBSWQsUUFBSixDQUZpQixDQUVKOztBQUViLFdBQU87QUFDTGUsd0JBQWtCQyxJQUFsQixFQUF3QjtBQUN0QmpCLHFCQUFha0IsR0FBYixDQUFpQkQsS0FBS0UsTUFBTCxDQUFZQyxLQUE3QjtBQUNBbkIsbUJBQVdnQixLQUFLRSxNQUFoQjtBQUNELE9BSkk7O0FBTUxFLHFCQUFlSixJQUFmLEVBQXFCO0FBQ25CLFlBQUksNkJBQWdCQSxJQUFoQixDQUFKLEVBQTJCO0FBQ0RBLGVBQUtLLFNBREosV0FDakJDLFdBRGlCO0FBRXpCdkIsdUJBQWFrQixHQUFiLENBQWlCSyxZQUFZSCxLQUE3QjtBQUNBbkIscUJBQVdnQixJQUFYO0FBQ0Q7QUFDRixPQVpJOztBQWNMLHNCQUFnQixZQUFZO0FBQzFCbEIsMEJBQWtCQyxZQUFsQixFQUFnQ0MsUUFBaEMsRUFBMENDLE9BQTFDO0FBQ0QsT0FoQkksRUFBUDs7QUFrQkQsR0F4Q2MsRUFBakIiLCJmaWxlIjoibWF4LWRlcGVuZGVuY2llcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpc1N0YXRpY1JlcXVpcmUgZnJvbSAnLi4vY29yZS9zdGF0aWNSZXF1aXJlJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxuY29uc3QgREVGQVVMVF9NQVggPSAxMFxuXG5jb25zdCBjb3VudERlcGVuZGVuY2llcyA9IChkZXBlbmRlbmNpZXMsIGxhc3ROb2RlLCBjb250ZXh0KSA9PiB7XG4gIGNvbnN0IHttYXh9ID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHsgbWF4OiBERUZBVUxUX01BWCB9XG5cbiAgaWYgKGRlcGVuZGVuY2llcy5zaXplID4gbWF4KSB7XG4gICAgY29udGV4dC5yZXBvcnQoXG4gICAgICBsYXN0Tm9kZSxcbiAgICAgIGBNYXhpbXVtIG51bWJlciBvZiBkZXBlbmRlbmNpZXMgKCR7bWF4fSkgZXhjZWVkZWQuYFxuICAgIClcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ21heC1kZXBlbmRlbmNpZXMnKSxcbiAgICB9LFxuXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgICd0eXBlJzogJ29iamVjdCcsXG4gICAgICAgICdwcm9wZXJ0aWVzJzoge1xuICAgICAgICAgICdtYXgnOiB7ICd0eXBlJzogJ251bWJlcicgfSxcbiAgICAgICAgfSxcbiAgICAgICAgJ2FkZGl0aW9uYWxQcm9wZXJ0aWVzJzogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBjb250ZXh0ID0+IHtcbiAgICBjb25zdCBkZXBlbmRlbmNpZXMgPSBuZXcgU2V0KCkgLy8ga2VlcCB0cmFjayBvZiBkZXBlbmRlbmNpZXNcbiAgICBsZXQgbGFzdE5vZGUgLy8ga2VlcCB0cmFjayBvZiB0aGUgbGFzdCBub2RlIHRvIHJlcG9ydCBvblxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgZGVwZW5kZW5jaWVzLmFkZChub2RlLnNvdXJjZS52YWx1ZSlcbiAgICAgICAgbGFzdE5vZGUgPSBub2RlLnNvdXJjZVxuICAgICAgfSxcblxuICAgICAgQ2FsbEV4cHJlc3Npb24obm9kZSkge1xuICAgICAgICBpZiAoaXNTdGF0aWNSZXF1aXJlKG5vZGUpKSB7XG4gICAgICAgICAgY29uc3QgWyByZXF1aXJlUGF0aCBdID0gbm9kZS5hcmd1bWVudHNcbiAgICAgICAgICBkZXBlbmRlbmNpZXMuYWRkKHJlcXVpcmVQYXRoLnZhbHVlKVxuICAgICAgICAgIGxhc3ROb2RlID0gbm9kZVxuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICAnUHJvZ3JhbTpleGl0JzogZnVuY3Rpb24gKCkge1xuICAgICAgICBjb3VudERlcGVuZGVuY2llcyhkZXBlbmRlbmNpZXMsIGxhc3ROb2RlLCBjb250ZXh0KVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/named.js b/node_modules/eslint-plugin-import/lib/rules/named.js index 62dcb649..f2b51661 100644 --- a/node_modules/eslint-plugin-import/lib/rules/named.js +++ b/node_modules/eslint-plugin-import/lib/rules/named.js @@ -1,40 +1,26 @@ -'use strict'; - -var _path = require('path'); - -var path = _interopRequireWildcard(_path); - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } +'use strict';var _path = require('path');var path = _interopRequireWildcard(_path); +var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);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)) newObj[key] = obj[key];}}newObj.default = obj;return newObj;}} module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('named') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('named') }, + + schema: [] }, + create: function (context) { function checkSpecifiers(key, type, node) { // ignore local exports and type imports/exports - if (node.source == null || node.importKind === 'type' || node.importKind === 'typeof' || node.exportKind === 'type') { + if (node.source == null || node.importKind === 'type' || + node.importKind === 'typeof' || node.exportKind === 'type') { return; } - if (!node.specifiers.some(function (im) { - return im.type === type; - })) { + if (!node.specifiers. + some(function (im) {return im.type === type;})) { return; // no named imports/exports } @@ -56,21 +42,31 @@ module.exports = { if (!deepLookup.found) { if (deepLookup.path.length > 1) { - const deepPath = deepLookup.path.map(i => path.relative(path.dirname(context.getFilename()), i.path)).join(' -> '); + const deepPath = deepLookup.path. + map(i => path.relative(path.dirname(context.getFilename()), i.path)). + join(' -> '); - context.report(im[key], `${im[key].name} not found via ${deepPath}`); + context.report(im[key], + `${im[key].name} not found via ${deepPath}`); } else { - context.report(im[key], im[key].name + ' not found in \'' + node.source.value + '\''); + context.report(im[key], + im[key].name + ' not found in \'' + node.source.value + '\''); } } }); } return { - 'ImportDeclaration': checkSpecifiers.bind(null, 'imported', 'ImportSpecifier'), + 'ImportDeclaration': checkSpecifiers.bind(null, + 'imported', + 'ImportSpecifier'), - 'ExportNamedDeclaration': checkSpecifiers.bind(null, 'local', 'ExportSpecifier') - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uYW1lZC5qcyJdLCJuYW1lcyI6WyJwYXRoIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJjaGVja1NwZWNpZmllcnMiLCJrZXkiLCJub2RlIiwic291cmNlIiwiaW1wb3J0S2luZCIsImV4cG9ydEtpbmQiLCJzcGVjaWZpZXJzIiwic29tZSIsImltIiwiaW1wb3J0cyIsIkV4cG9ydHMiLCJnZXQiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsImZvckVhY2giLCJkZWVwTG9va3VwIiwiaGFzRGVlcCIsIm5hbWUiLCJmb3VuZCIsImRlZXBQYXRoIiwibWFwIiwiaSIsInJlbGF0aXZlIiwiZGlybmFtZSIsImdldEZpbGVuYW1lIiwiam9pbiIsInJlcG9ydCIsImJpbmQiXSwibWFwcGluZ3MiOiI7O0FBQUE7O0lBQVlBLEk7O0FBQ1o7Ozs7QUFDQTs7Ozs7Ozs7QUFFQUMsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sU0FERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsT0FBUjtBQURELEtBRkY7QUFLSkMsWUFBUTtBQUxKLEdBRFM7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixhQUFTQyxlQUFULENBQXlCQyxHQUF6QixFQUE4QlAsSUFBOUIsRUFBb0NRLElBQXBDLEVBQTBDO0FBQ3hDO0FBQ0EsVUFBSUEsS0FBS0MsTUFBTCxJQUFlLElBQWYsSUFBdUJELEtBQUtFLFVBQUwsS0FBb0IsTUFBM0MsSUFDQUYsS0FBS0UsVUFBTCxLQUFvQixRQURwQixJQUNpQ0YsS0FBS0csVUFBTCxLQUFvQixNQUR6RCxFQUNpRTtBQUMvRDtBQUNEOztBQUVELFVBQUksQ0FBQ0gsS0FBS0ksVUFBTCxDQUNFQyxJQURGLENBQ08sVUFBVUMsRUFBVixFQUFjO0FBQUUsZUFBT0EsR0FBR2QsSUFBSCxLQUFZQSxJQUFuQjtBQUF5QixPQURoRCxDQUFMLEVBQ3dEO0FBQ3RELGVBRHNELENBQy9DO0FBQ1I7O0FBRUQsWUFBTWUsVUFBVUMsb0JBQVFDLEdBQVIsQ0FBWVQsS0FBS0MsTUFBTCxDQUFZUyxLQUF4QixFQUErQmIsT0FBL0IsQ0FBaEI7QUFDQSxVQUFJVSxXQUFXLElBQWYsRUFBcUI7O0FBRXJCLFVBQUlBLFFBQVFJLE1BQVIsQ0FBZUMsTUFBbkIsRUFBMkI7QUFDekJMLGdCQUFRTSxZQUFSLENBQXFCaEIsT0FBckIsRUFBOEJHLElBQTlCO0FBQ0E7QUFDRDs7QUFFREEsV0FBS0ksVUFBTCxDQUFnQlUsT0FBaEIsQ0FBd0IsVUFBVVIsRUFBVixFQUFjO0FBQ3BDLFlBQUlBLEdBQUdkLElBQUgsS0FBWUEsSUFBaEIsRUFBc0I7O0FBRXRCO0FBQ0EsWUFBSWMsR0FBR0osVUFBSCxLQUFrQixNQUFsQixJQUE0QkksR0FBR0osVUFBSCxLQUFrQixRQUFsRCxFQUE0RDs7QUFFNUQsY0FBTWEsYUFBYVIsUUFBUVMsT0FBUixDQUFnQlYsR0FBR1AsR0FBSCxFQUFRa0IsSUFBeEIsQ0FBbkI7O0FBRUEsWUFBSSxDQUFDRixXQUFXRyxLQUFoQixFQUF1QjtBQUNyQixjQUFJSCxXQUFXM0IsSUFBWCxDQUFnQndCLE1BQWhCLEdBQXlCLENBQTdCLEVBQWdDO0FBQzlCLGtCQUFNTyxXQUFXSixXQUFXM0IsSUFBWCxDQUNkZ0MsR0FEYyxDQUNWQyxLQUFLakMsS0FBS2tDLFFBQUwsQ0FBY2xDLEtBQUttQyxPQUFMLENBQWExQixRQUFRMkIsV0FBUixFQUFiLENBQWQsRUFBbURILEVBQUVqQyxJQUFyRCxDQURLLEVBRWRxQyxJQUZjLENBRVQsTUFGUyxDQUFqQjs7QUFJQTVCLG9CQUFRNkIsTUFBUixDQUFlcEIsR0FBR1AsR0FBSCxDQUFmLEVBQ0csR0FBRU8sR0FBR1AsR0FBSCxFQUFRa0IsSUFBSyxrQkFBaUJFLFFBQVMsRUFENUM7QUFFRCxXQVBELE1BT087QUFDTHRCLG9CQUFRNkIsTUFBUixDQUFlcEIsR0FBR1AsR0FBSCxDQUFmLEVBQ0VPLEdBQUdQLEdBQUgsRUFBUWtCLElBQVIsR0FBZSxrQkFBZixHQUFvQ2pCLEtBQUtDLE1BQUwsQ0FBWVMsS0FBaEQsR0FBd0QsSUFEMUQ7QUFFRDtBQUNGO0FBQ0YsT0FyQkQ7QUFzQkQ7O0FBRUQsV0FBTztBQUNMLDJCQUFxQlosZ0JBQWdCNkIsSUFBaEIsQ0FBc0IsSUFBdEIsRUFDc0IsVUFEdEIsRUFFc0IsaUJBRnRCLENBRGhCOztBQU1MLGdDQUEwQjdCLGdCQUFnQjZCLElBQWhCLENBQXNCLElBQXRCLEVBQ3NCLE9BRHRCLEVBRXNCLGlCQUZ0QjtBQU5yQixLQUFQO0FBWUQ7QUFsRWMsQ0FBakIiLCJmaWxlIjoibmFtZWQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25hbWVkJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBmdW5jdGlvbiBjaGVja1NwZWNpZmllcnMoa2V5LCB0eXBlLCBub2RlKSB7XG4gICAgICAvLyBpZ25vcmUgbG9jYWwgZXhwb3J0cyBhbmQgdHlwZSBpbXBvcnRzL2V4cG9ydHNcbiAgICAgIGlmIChub2RlLnNvdXJjZSA9PSBudWxsIHx8IG5vZGUuaW1wb3J0S2luZCA9PT0gJ3R5cGUnIHx8XG4gICAgICAgICAgbm9kZS5pbXBvcnRLaW5kID09PSAndHlwZW9mJyAgfHwgbm9kZS5leHBvcnRLaW5kID09PSAndHlwZScpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGlmICghbm9kZS5zcGVjaWZpZXJzXG4gICAgICAgICAgICAuc29tZShmdW5jdGlvbiAoaW0pIHsgcmV0dXJuIGltLnR5cGUgPT09IHR5cGUgfSkpIHtcbiAgICAgICAgcmV0dXJuIC8vIG5vIG5hbWVkIGltcG9ydHMvZXhwb3J0c1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpbXBvcnRzID0gRXhwb3J0cy5nZXQobm9kZS5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSByZXR1cm5cblxuICAgICAgaWYgKGltcG9ydHMuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICBpbXBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBub2RlKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgbm9kZS5zcGVjaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKGltKSB7XG4gICAgICAgIGlmIChpbS50eXBlICE9PSB0eXBlKSByZXR1cm5cblxuICAgICAgICAvLyBpZ25vcmUgdHlwZSBpbXBvcnRzXG4gICAgICAgIGlmIChpbS5pbXBvcnRLaW5kID09PSAndHlwZScgfHwgaW0uaW1wb3J0S2luZCA9PT0gJ3R5cGVvZicpIHJldHVyblxuXG4gICAgICAgIGNvbnN0IGRlZXBMb29rdXAgPSBpbXBvcnRzLmhhc0RlZXAoaW1ba2V5XS5uYW1lKVxuXG4gICAgICAgIGlmICghZGVlcExvb2t1cC5mb3VuZCkge1xuICAgICAgICAgIGlmIChkZWVwTG9va3VwLnBhdGgubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgY29uc3QgZGVlcFBhdGggPSBkZWVwTG9va3VwLnBhdGhcbiAgICAgICAgICAgICAgLm1hcChpID0+IHBhdGgucmVsYXRpdmUocGF0aC5kaXJuYW1lKGNvbnRleHQuZ2V0RmlsZW5hbWUoKSksIGkucGF0aCkpXG4gICAgICAgICAgICAgIC5qb2luKCcgLT4gJylcblxuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoaW1ba2V5XSxcbiAgICAgICAgICAgICAgYCR7aW1ba2V5XS5uYW1lfSBub3QgZm91bmQgdmlhICR7ZGVlcFBhdGh9YClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoaW1ba2V5XSxcbiAgICAgICAgICAgICAgaW1ba2V5XS5uYW1lICsgJyBub3QgZm91bmQgaW4gXFwnJyArIG5vZGUuc291cmNlLnZhbHVlICsgJ1xcJycpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnSW1wb3J0RGVjbGFyYXRpb24nOiBjaGVja1NwZWNpZmllcnMuYmluZCggbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsICdpbXBvcnRlZCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAnSW1wb3J0U3BlY2lmaWVyJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuXG4gICAgICAnRXhwb3J0TmFtZWREZWNsYXJhdGlvbic6IGNoZWNrU3BlY2lmaWVycy5iaW5kKCBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAnbG9jYWwnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAnRXhwb3J0U3BlY2lmaWVyJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgfVxuXG4gIH0sXG59XG4iXX0= \ No newline at end of file + + 'ExportNamedDeclaration': checkSpecifiers.bind(null, + 'local', + 'ExportSpecifier') }; + + + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uYW1lZC5qcyJdLCJuYW1lcyI6WyJwYXRoIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJjaGVja1NwZWNpZmllcnMiLCJrZXkiLCJub2RlIiwic291cmNlIiwiaW1wb3J0S2luZCIsImV4cG9ydEtpbmQiLCJzcGVjaWZpZXJzIiwic29tZSIsImltIiwiaW1wb3J0cyIsIkV4cG9ydHMiLCJnZXQiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsImZvckVhY2giLCJkZWVwTG9va3VwIiwiaGFzRGVlcCIsIm5hbWUiLCJmb3VuZCIsImRlZXBQYXRoIiwibWFwIiwiaSIsInJlbGF0aXZlIiwiZGlybmFtZSIsImdldEZpbGVuYW1lIiwiam9pbiIsInJlcG9ydCIsImJpbmQiXSwibWFwcGluZ3MiOiJhQUFBLDRCLElBQVlBLEk7QUFDWix5QztBQUNBLHFDOztBQUVBQyxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxPQUFSLENBREQsRUFGRjs7QUFLSkMsWUFBUSxFQUxKLEVBRFM7OztBQVNmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7QUFDekIsYUFBU0MsZUFBVCxDQUF5QkMsR0FBekIsRUFBOEJQLElBQTlCLEVBQW9DUSxJQUFwQyxFQUEwQztBQUN4QztBQUNBLFVBQUlBLEtBQUtDLE1BQUwsSUFBZSxJQUFmLElBQXVCRCxLQUFLRSxVQUFMLEtBQW9CLE1BQTNDO0FBQ0FGLFdBQUtFLFVBQUwsS0FBb0IsUUFEcEIsSUFDaUNGLEtBQUtHLFVBQUwsS0FBb0IsTUFEekQsRUFDaUU7QUFDL0Q7QUFDRDs7QUFFRCxVQUFJLENBQUNILEtBQUtJLFVBQUw7QUFDRUMsVUFERixDQUNPLFVBQVVDLEVBQVYsRUFBYyxDQUFFLE9BQU9BLEdBQUdkLElBQUgsS0FBWUEsSUFBbkIsQ0FBeUIsQ0FEaEQsQ0FBTCxFQUN3RDtBQUN0RCxlQURzRCxDQUMvQztBQUNSOztBQUVELFlBQU1lLFVBQVVDLG9CQUFRQyxHQUFSLENBQVlULEtBQUtDLE1BQUwsQ0FBWVMsS0FBeEIsRUFBK0JiLE9BQS9CLENBQWhCO0FBQ0EsVUFBSVUsV0FBVyxJQUFmLEVBQXFCOztBQUVyQixVQUFJQSxRQUFRSSxNQUFSLENBQWVDLE1BQW5CLEVBQTJCO0FBQ3pCTCxnQkFBUU0sWUFBUixDQUFxQmhCLE9BQXJCLEVBQThCRyxJQUE5QjtBQUNBO0FBQ0Q7O0FBRURBLFdBQUtJLFVBQUwsQ0FBZ0JVLE9BQWhCLENBQXdCLFVBQVVSLEVBQVYsRUFBYztBQUNwQyxZQUFJQSxHQUFHZCxJQUFILEtBQVlBLElBQWhCLEVBQXNCOztBQUV0QjtBQUNBLFlBQUljLEdBQUdKLFVBQUgsS0FBa0IsTUFBbEIsSUFBNEJJLEdBQUdKLFVBQUgsS0FBa0IsUUFBbEQsRUFBNEQ7O0FBRTVELGNBQU1hLGFBQWFSLFFBQVFTLE9BQVIsQ0FBZ0JWLEdBQUdQLEdBQUgsRUFBUWtCLElBQXhCLENBQW5COztBQUVBLFlBQUksQ0FBQ0YsV0FBV0csS0FBaEIsRUFBdUI7QUFDckIsY0FBSUgsV0FBVzNCLElBQVgsQ0FBZ0J3QixNQUFoQixHQUF5QixDQUE3QixFQUFnQztBQUM5QixrQkFBTU8sV0FBV0osV0FBVzNCLElBQVg7QUFDZGdDLGVBRGMsQ0FDVkMsS0FBS2pDLEtBQUtrQyxRQUFMLENBQWNsQyxLQUFLbUMsT0FBTCxDQUFhMUIsUUFBUTJCLFdBQVIsRUFBYixDQUFkLEVBQW1ESCxFQUFFakMsSUFBckQsQ0FESztBQUVkcUMsZ0JBRmMsQ0FFVCxNQUZTLENBQWpCOztBQUlBNUIsb0JBQVE2QixNQUFSLENBQWVwQixHQUFHUCxHQUFILENBQWY7QUFDRyxlQUFFTyxHQUFHUCxHQUFILEVBQVFrQixJQUFLLGtCQUFpQkUsUUFBUyxFQUQ1QztBQUVELFdBUEQsTUFPTztBQUNMdEIsb0JBQVE2QixNQUFSLENBQWVwQixHQUFHUCxHQUFILENBQWY7QUFDRU8sZUFBR1AsR0FBSCxFQUFRa0IsSUFBUixHQUFlLGtCQUFmLEdBQW9DakIsS0FBS0MsTUFBTCxDQUFZUyxLQUFoRCxHQUF3RCxJQUQxRDtBQUVEO0FBQ0Y7QUFDRixPQXJCRDtBQXNCRDs7QUFFRCxXQUFPO0FBQ0wsMkJBQXFCWixnQkFBZ0I2QixJQUFoQixDQUFzQixJQUF0QjtBQUNzQixnQkFEdEI7QUFFc0IsdUJBRnRCLENBRGhCOzs7QUFNTCxnQ0FBMEI3QixnQkFBZ0I2QixJQUFoQixDQUFzQixJQUF0QjtBQUNzQixhQUR0QjtBQUVzQix1QkFGdEIsQ0FOckIsRUFBUDs7OztBQVlELEdBbEVjLEVBQWpCIiwiZmlsZSI6Im5hbWVkLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJ1xuaW1wb3J0IEV4cG9ydHMgZnJvbSAnLi4vRXhwb3J0TWFwJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduYW1lZCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgZnVuY3Rpb24gY2hlY2tTcGVjaWZpZXJzKGtleSwgdHlwZSwgbm9kZSkge1xuICAgICAgLy8gaWdub3JlIGxvY2FsIGV4cG9ydHMgYW5kIHR5cGUgaW1wb3J0cy9leHBvcnRzXG4gICAgICBpZiAobm9kZS5zb3VyY2UgPT0gbnVsbCB8fCBub2RlLmltcG9ydEtpbmQgPT09ICd0eXBlJyB8fFxuICAgICAgICAgIG5vZGUuaW1wb3J0S2luZCA9PT0gJ3R5cGVvZicgIHx8IG5vZGUuZXhwb3J0S2luZCA9PT0gJ3R5cGUnKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAoIW5vZGUuc3BlY2lmaWVyc1xuICAgICAgICAgICAgLnNvbWUoZnVuY3Rpb24gKGltKSB7IHJldHVybiBpbS50eXBlID09PSB0eXBlIH0pKSB7XG4gICAgICAgIHJldHVybiAvLyBubyBuYW1lZCBpbXBvcnRzL2V4cG9ydHNcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW1wb3J0cyA9IEV4cG9ydHMuZ2V0KG5vZGUuc291cmNlLnZhbHVlLCBjb250ZXh0KVxuICAgICAgaWYgKGltcG9ydHMgPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgaW1wb3J0cy5yZXBvcnRFcnJvcnMoY29udGV4dCwgbm9kZSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIG5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKGZ1bmN0aW9uIChpbSkge1xuICAgICAgICBpZiAoaW0udHlwZSAhPT0gdHlwZSkgcmV0dXJuXG5cbiAgICAgICAgLy8gaWdub3JlIHR5cGUgaW1wb3J0c1xuICAgICAgICBpZiAoaW0uaW1wb3J0S2luZCA9PT0gJ3R5cGUnIHx8IGltLmltcG9ydEtpbmQgPT09ICd0eXBlb2YnKSByZXR1cm5cblxuICAgICAgICBjb25zdCBkZWVwTG9va3VwID0gaW1wb3J0cy5oYXNEZWVwKGltW2tleV0ubmFtZSlcblxuICAgICAgICBpZiAoIWRlZXBMb29rdXAuZm91bmQpIHtcbiAgICAgICAgICBpZiAoZGVlcExvb2t1cC5wYXRoLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGNvbnN0IGRlZXBQYXRoID0gZGVlcExvb2t1cC5wYXRoXG4gICAgICAgICAgICAgIC5tYXAoaSA9PiBwYXRoLnJlbGF0aXZlKHBhdGguZGlybmFtZShjb250ZXh0LmdldEZpbGVuYW1lKCkpLCBpLnBhdGgpKVxuICAgICAgICAgICAgICAuam9pbignIC0+ICcpXG5cbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KGltW2tleV0sXG4gICAgICAgICAgICAgIGAke2ltW2tleV0ubmFtZX0gbm90IGZvdW5kIHZpYSAke2RlZXBQYXRofWApXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KGltW2tleV0sXG4gICAgICAgICAgICAgIGltW2tleV0ubmFtZSArICcgbm90IGZvdW5kIGluIFxcJycgKyBub2RlLnNvdXJjZS52YWx1ZSArICdcXCcnKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ0ltcG9ydERlY2xhcmF0aW9uJzogY2hlY2tTcGVjaWZpZXJzLmJpbmQoIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAnaW1wb3J0ZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgJ0ltcG9ydFNwZWNpZmllcidcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcblxuICAgICAgJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nOiBjaGVja1NwZWNpZmllcnMuYmluZCggbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgJ2xvY2FsJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgJ0V4cG9ydFNwZWNpZmllcidcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgIH1cblxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/namespace.js b/node_modules/eslint-plugin-import/lib/rules/namespace.js index 05541880..0b9abf82 100644 --- a/node_modules/eslint-plugin-import/lib/rules/namespace.js +++ b/node_modules/eslint-plugin-import/lib/rules/namespace.js @@ -1,64 +1,46 @@ -'use strict'; - -var _declaredScope = require('eslint-module-utils/declaredScope'); - -var _declaredScope2 = _interopRequireDefault(_declaredScope); - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _importDeclaration = require('../importDeclaration'); - -var _importDeclaration2 = _interopRequireDefault(_importDeclaration); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _declaredScope = require('eslint-module-utils/declaredScope');var _declaredScope2 = _interopRequireDefault(_declaredScope); +var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _importDeclaration = require('../importDeclaration');var _importDeclaration2 = _interopRequireDefault(_importDeclaration); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('namespace') - }, + url: (0, _docsUrl2.default)('namespace') }, + + + schema: [ + { + type: 'object', + properties: { + allowComputed: { + description: 'If `false`, will report computed (and thus, un-lintable) references to namespace members.', + type: 'boolean', + default: false } }, + + + additionalProperties: false }] }, + + - schema: [{ - 'type': 'object', - 'properties': { - 'allowComputed': { - 'description': 'If `false`, will report computed (and thus, un-lintable) references ' + 'to namespace members.', - 'type': 'boolean', - 'default': false - } - }, - 'additionalProperties': false - }] - }, create: function namespaceRule(context) { // read options - var _ref = context.options[0] || {}, - _ref$allowComputed = _ref.allowComputed; - - const allowComputed = _ref$allowComputed === undefined ? false : _ref$allowComputed; + var _ref = + context.options[0] || {},_ref$allowComputed = _ref.allowComputed;const allowComputed = _ref$allowComputed === undefined ? false : _ref$allowComputed; const namespaces = new Map(); function makeMessage(last, namepath) { - return `'${last.name}' not found in` + (namepath.length > 1 ? ' deeply ' : ' ') + `imported namespace '${namepath.join('.')}'.`; + return `'${last.name}' not found in ${namepath.length > 1 ? 'deeply ' : ''}imported namespace '${namepath.join('.')}'.`; } return { - // pick up all imports at body entry time, to properly respect hoisting - Program: function (_ref2) { - let body = _ref2.body; - + Program(_ref2) {let body = _ref2.body; function processBodyStatement(declaration) { if (declaration.type !== 'ImportDeclaration') return; @@ -76,28 +58,31 @@ module.exports = { switch (specifier.type) { case 'ImportNamespaceSpecifier': if (!imports.size) { - context.report(specifier, `No exported names found in module '${declaration.source.value}'.`); + context.report( + specifier, + `No exported names found in module '${declaration.source.value}'.`); + } namespaces.set(specifier.local.name, imports); break; case 'ImportDefaultSpecifier': - case 'ImportSpecifier': - { + case 'ImportSpecifier':{ const meta = imports.get( // default to 'default' for default http://i.imgur.com/nj6qAWy.jpg specifier.imported ? specifier.imported.name : 'default'); - if (!meta || !meta.namespace) break; + + if (!meta || !meta.namespace) {break;} namespaces.set(specifier.local.name, meta.namespace); break; - } - } + }} + } } body.forEach(processBodyStatement); }, // same as above, but does not add names to local map - ExportNamespaceSpecifier: function (namespace) { + ExportNamespaceSpecifier(namespace) { var declaration = (0, _importDeclaration2.default)(context); var imports = _ExportMap2.default.get(declaration.source.value, context); @@ -109,18 +94,25 @@ module.exports = { } if (!imports.size) { - context.report(namespace, `No exported names found in module '${declaration.source.value}'.`); + context.report( + namespace, + `No exported names found in module '${declaration.source.value}'.`); + } }, // todo: check for possible redefinition - MemberExpression: function (dereference) { + MemberExpression(dereference) { if (dereference.object.type !== 'Identifier') return; if (!namespaces.has(dereference.object.name)) return; + if ((0, _declaredScope2.default)(context, dereference.object.name) !== 'module') return; if (dereference.parent.type === 'AssignmentExpression' && dereference.parent.left === dereference) { - context.report(dereference.parent, `Assignment to member of namespace '${dereference.object.name}'.`); + context.report( + dereference.parent, + `Assignment to member of namespace '${dereference.object.name}'.`); + } // go deep @@ -131,13 +123,19 @@ module.exports = { if (dereference.computed) { if (!allowComputed) { - context.report(dereference.property, 'Unable to validate computed reference to imported namespace \'' + dereference.object.name + '\'.'); + context.report( + dereference.property, + `Unable to validate computed reference to imported namespace '${dereference.object.name}'.`); + } return; } if (!namespace.has(dereference.property.name)) { - context.report(dereference.property, makeMessage(dereference.property, namepath)); + context.report( + dereference.property, + makeMessage(dereference.property, namepath)); + break; } @@ -149,12 +147,10 @@ module.exports = { namespace = exported.namespace; dereference = dereference.parent; } + }, - VariableDeclarator: function (_ref3) { - let id = _ref3.id, - init = _ref3.init; - + VariableDeclarator(_ref3) {let id = _ref3.id,init = _ref3.init; if (init == null) return; if (init.type !== 'Identifier') return; if (!namespaces.has(init.name)) return; @@ -163,31 +159,33 @@ module.exports = { if ((0, _declaredScope2.default)(context, init.name) !== 'module') return; // DFS traverse child namespaces - function testKey(pattern, namespace) { - let path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [init.name]; - + function testKey(pattern, namespace) {let path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [init.name]; if (!(namespace instanceof _ExportMap2.default)) return; if (pattern.type !== 'ObjectPattern') return; for (const property of pattern.properties) { - if (property.type === 'ExperimentalRestProperty' || property.type === 'RestElement' || !property.key) { + if ( + property.type === 'ExperimentalRestProperty' || + property.type === 'RestElement' || + !property.key) + { continue; } if (property.key.type !== 'Identifier') { context.report({ node: property, - message: 'Only destructure top-level names.' - }); + message: 'Only destructure top-level names.' }); + continue; } if (!namespace.has(property.key.name)) { context.report({ node: property, - message: makeMessage(property.key, path) - }); + message: makeMessage(property.key, path) }); + continue; } @@ -204,20 +202,16 @@ module.exports = { testKey(id, namespaces.get(init.name)); }, - JSXMemberExpression: function (_ref4) { - let object = _ref4.object, - property = _ref4.property; - + JSXMemberExpression(_ref4) {let object = _ref4.object,property = _ref4.property; if (!namespaces.has(object.name)) return; var namespace = namespaces.get(object.name); if (!namespace.has(property.name)) { context.report({ node: property, - message: makeMessage(property, [object.name]) - }); + message: makeMessage(property, [object.name]) }); + } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uYW1lc3BhY2UuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsIm5hbWVzcGFjZVJ1bGUiLCJjb250ZXh0Iiwib3B0aW9ucyIsImFsbG93Q29tcHV0ZWQiLCJuYW1lc3BhY2VzIiwiTWFwIiwibWFrZU1lc3NhZ2UiLCJsYXN0IiwibmFtZXBhdGgiLCJuYW1lIiwibGVuZ3RoIiwiam9pbiIsIlByb2dyYW0iLCJib2R5IiwicHJvY2Vzc0JvZHlTdGF0ZW1lbnQiLCJkZWNsYXJhdGlvbiIsInNwZWNpZmllcnMiLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInNvdXJjZSIsInZhbHVlIiwiZXJyb3JzIiwicmVwb3J0RXJyb3JzIiwic3BlY2lmaWVyIiwic2l6ZSIsInJlcG9ydCIsInNldCIsImxvY2FsIiwiaW1wb3J0ZWQiLCJuYW1lc3BhY2UiLCJmb3JFYWNoIiwiRXhwb3J0TmFtZXNwYWNlU3BlY2lmaWVyIiwiTWVtYmVyRXhwcmVzc2lvbiIsImRlcmVmZXJlbmNlIiwib2JqZWN0IiwiaGFzIiwicGFyZW50IiwibGVmdCIsImNvbXB1dGVkIiwicHJvcGVydHkiLCJleHBvcnRlZCIsInB1c2giLCJWYXJpYWJsZURlY2xhcmF0b3IiLCJpZCIsImluaXQiLCJ0ZXN0S2V5IiwicGF0dGVybiIsInBhdGgiLCJwcm9wZXJ0aWVzIiwia2V5Iiwibm9kZSIsIm1lc3NhZ2UiLCJkZXBlbmRlbmN5RXhwb3J0TWFwIiwicG9wIiwiSlNYTWVtYmVyRXhwcmVzc2lvbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFNBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLFdBQVI7QUFERCxLQUZGOztBQU1KQyxZQUFRLENBQ047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QUF0QixDQUFoQjtBQUNBLFlBQUksQ0FBQ3FCLFVBQVVNLEdBQVYsQ0FBY0ksU0FBUy9CLElBQXZCLENBQUwsRUFBbUM7QUFDakNSLGtCQUFReUIsTUFBUixDQUFlO0FBQ2J5QixrQkFBTVgsUUFETztBQUViWSxxQkFBUzlDLFlBQVlrQyxRQUFaLEVBQXNCLENBQUNMLE9BQU8xQixJQUFSLENBQXRCO0FBRkksV0FBZjtBQUlEO0FBQ0g7QUF0S0ksS0FBUDtBQXdLRDtBQS9NYyxDQUFqQiIsImZpbGUiOiJuYW1lc3BhY2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGVjbGFyZWRTY29wZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL2RlY2xhcmVkU2NvcGUnXG5pbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgaW1wb3J0RGVjbGFyYXRpb24gZnJvbSAnLi4vaW1wb3J0RGVjbGFyYXRpb24nXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25hbWVzcGFjZScpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgJ3R5cGUnOiAnb2JqZWN0JyxcbiAgICAgICAgJ3Byb3BlcnRpZXMnOiB7XG4gICAgICAgICAgJ2FsbG93Q29tcHV0ZWQnOiB7XG4gICAgICAgICAgICAnZGVzY3JpcHRpb24nOlxuICAgICAgICAgICAgICAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgY29tcHV0ZWQgKGFuZCB0aHVzLCB1bi1saW50YWJsZSkgcmVmZXJlbmNlcyAnICtcbiAgICAgICAgICAgICAgJ3RvIG5hbWVzcGFjZSBtZW1iZXJzLicsXG4gICAgICAgICAgICAndHlwZSc6ICdib29sZWFuJyxcbiAgICAgICAgICAgICdkZWZhdWx0JzogZmFsc2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgJ2FkZGl0aW9uYWxQcm9wZXJ0aWVzJzogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiBuYW1lc3BhY2VSdWxlKGNvbnRleHQpIHtcblxuICAgIC8vIHJlYWQgb3B0aW9uc1xuICAgIGNvbnN0IHtcbiAgICAgIGFsbG93Q29tcHV0ZWQgPSBmYWxzZSxcbiAgICB9ID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG5cbiAgICBjb25zdCBuYW1lc3BhY2VzID0gbmV3IE1hcCgpXG5cbiAgICBmdW5jdGlvbiBtYWtlTWVzc2FnZShsYXN0LCBuYW1lcGF0aCkge1xuICAgICAgIHJldHVybiBgJyR7bGFzdC5uYW1lfScgbm90IGZvdW5kIGluYCArXG4gICAgICAgICAgICAgIChuYW1lcGF0aC5sZW5ndGggPiAxID8gJyBkZWVwbHkgJyA6ICcgJykgK1xuICAgICAgICAgICAgICBgaW1wb3J0ZWQgbmFtZXNwYWNlICcke25hbWVwYXRoLmpvaW4oJy4nKX0nLmBcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuXG4gICAgICAvLyBwaWNrIHVwIGFsbCBpbXBvcnRzIGF0IGJvZHkgZW50cnkgdGltZSwgdG8gcHJvcGVybHkgcmVzcGVjdCBob2lzdGluZ1xuICAgICAgUHJvZ3JhbTogZnVuY3Rpb24gKHsgYm9keSB9KSB7XG4gICAgICAgIGZ1bmN0aW9uIHByb2Nlc3NCb2R5U3RhdGVtZW50KGRlY2xhcmF0aW9uKSB7XG4gICAgICAgICAgaWYgKGRlY2xhcmF0aW9uLnR5cGUgIT09ICdJbXBvcnREZWNsYXJhdGlvbicpIHJldHVyblxuXG4gICAgICAgICAgaWYgKGRlY2xhcmF0aW9uLnNwZWNpZmllcnMubGVuZ3RoID09PSAwKSByZXR1cm5cblxuICAgICAgICAgIGNvbnN0IGltcG9ydHMgPSBFeHBvcnRzLmdldChkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICAgICAgaWYgKGltcG9ydHMgPT0gbnVsbCkgcmV0dXJuIG51bGxcblxuICAgICAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGltcG9ydHMucmVwb3J0RXJyb3JzKGNvbnRleHQsIGRlY2xhcmF0aW9uKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZm9yIChjb25zdCBzcGVjaWZpZXIgb2YgZGVjbGFyYXRpb24uc3BlY2lmaWVycykge1xuICAgICAgICAgICAgc3dpdGNoIChzcGVjaWZpZXIudHlwZSkge1xuICAgICAgICAgICAgICBjYXNlICdJbXBvcnROYW1lc3BhY2VTcGVjaWZpZXInOlxuICAgICAgICAgICAgICAgIGlmICghaW1wb3J0cy5zaXplKSB7XG4gICAgICAgICAgICAgICAgICBjb250ZXh0LnJlcG9ydChzcGVjaWZpZXIsXG4gICAgICAgICAgICAgICAgICAgIGBObyBleHBvcnRlZCBuYW1lcyBmb3VuZCBpbiBtb2R1bGUgJyR7ZGVjbGFyYXRpb24uc291cmNlLnZhbHVlfScuYClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbmFtZXNwYWNlcy5zZXQoc3BlY2lmaWVyLmxvY2FsLm5hbWUsIGltcG9ydHMpXG4gICAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgICAgY2FzZSAnSW1wb3J0RGVmYXVsdFNwZWNpZmllcic6XG4gICAgICAgICAgICAgIGNhc2UgJ0ltcG9ydFNwZWNpZmllcic6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtZXRhID0gaW1wb3J0cy5nZXQoXG4gICAgICAgICAgICAgICAgICAvLyBkZWZhdWx0IHRvICdkZWZhdWx0JyBmb3IgZGVmYXVsdCBodHRwOi8vaS5pbWd1ci5jb20vbmo2cUFXeS5qcGdcbiAgICAgICAgICAgICAgICAgIHNwZWNpZmllci5pbXBvcnRlZCA/IHNwZWNpZmllci5pbXBvcnRlZC5uYW1lIDogJ2RlZmF1bHQnKVxuICAgICAgICAgICAgICAgIGlmICghbWV0YSB8fCAhbWV0YS5uYW1lc3BhY2UpIGJyZWFrXG4gICAgICAgICAgICAgICAgbmFtZXNwYWNlcy5zZXQoc3BlY2lmaWVyLmxvY2FsLm5hbWUsIG1ldGEubmFtZXNwYWNlKVxuICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYm9keS5mb3JFYWNoKHByb2Nlc3NCb2R5U3RhdGVtZW50KVxuICAgICAgfSxcblxuICAgICAgLy8gc2FtZSBhcyBhYm92ZSwgYnV0IGRvZXMgbm90IGFkZCBuYW1lcyB0byBsb2NhbCBtYXBcbiAgICAgIEV4cG9ydE5hbWVzcGFjZVNwZWNpZmllcjogZnVuY3Rpb24gKG5hbWVzcGFjZSkge1xuICAgICAgICB2YXIgZGVjbGFyYXRpb24gPSBpbXBvcnREZWNsYXJhdGlvbihjb250ZXh0KVxuXG4gICAgICAgIHZhciBpbXBvcnRzID0gRXhwb3J0cy5nZXQoZGVjbGFyYXRpb24uc291cmNlLnZhbHVlLCBjb250ZXh0KVxuICAgICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSByZXR1cm4gbnVsbFxuXG4gICAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICBpbXBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBkZWNsYXJhdGlvbilcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaW1wb3J0cy5zaXplKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQobmFtZXNwYWNlLFxuICAgICAgICAgICAgYE5vIGV4cG9ydGVkIG5hbWVzIGZvdW5kIGluIG1vZHVsZSAnJHtkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWV9Jy5gKVxuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICAvLyB0b2RvOiBjaGVjayBmb3IgcG9zc2libGUgcmVkZWZpbml0aW9uXG5cbiAgICAgIE1lbWJlckV4cHJlc3Npb246IGZ1bmN0aW9uIChkZXJlZmVyZW5jZSkge1xuICAgICAgICBpZiAoZGVyZWZlcmVuY2Uub2JqZWN0LnR5cGUgIT09ICdJZGVudGlmaWVyJykgcmV0dXJuXG4gICAgICAgIGlmICghbmFtZXNwYWNlcy5oYXMoZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpKSByZXR1cm5cblxuICAgICAgICBpZiAoZGVyZWZlcmVuY2UucGFyZW50LnR5cGUgPT09ICdBc3NpZ25tZW50RXhwcmVzc2lvbicgJiZcbiAgICAgICAgICAgIGRlcmVmZXJlbmNlLnBhcmVudC5sZWZ0ID09PSBkZXJlZmVyZW5jZSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoZGVyZWZlcmVuY2UucGFyZW50LFxuICAgICAgICAgICAgICAgIGBBc3NpZ25tZW50IHRvIG1lbWJlciBvZiBuYW1lc3BhY2UgJyR7ZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWV9Jy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gZ28gZGVlcFxuICAgICAgICB2YXIgbmFtZXNwYWNlID0gbmFtZXNwYWNlcy5nZXQoZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpXG4gICAgICAgIHZhciBuYW1lcGF0aCA9IFtkZXJlZmVyZW5jZS5vYmplY3QubmFtZV1cbiAgICAgICAgLy8gd2hpbGUgcHJvcGVydHkgaXMgbmFtZXNwYWNlIGFuZCBwYXJlbnQgaXMgbWVtYmVyIGV4cHJlc3Npb24sIGtlZXAgdmFsaWRhdGluZ1xuICAgICAgICB3aGlsZSAobmFtZXNwYWNlIGluc3RhbmNlb2YgRXhwb3J0cyAmJlxuICAgICAgICAgICAgICAgZGVyZWZlcmVuY2UudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nKSB7XG5cbiAgICAgICAgICBpZiAoZGVyZWZlcmVuY2UuY29tcHV0ZWQpIHtcbiAgICAgICAgICAgIGlmICghYWxsb3dDb21wdXRlZCkge1xuICAgICAgICAgICAgICBjb250ZXh0LnJlcG9ydChkZXJlZmVyZW5jZS5wcm9wZXJ0eSxcbiAgICAgICAgICAgICAgICAnVW5hYmxlIHRvIHZhbGlkYXRlIGNvbXB1dGVkIHJlZmVyZW5jZSB0byBpbXBvcnRlZCBuYW1lc3BhY2UgXFwnJyArXG4gICAgICAgICAgICAgICAgZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUgKyAnXFwnLicpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIW5hbWVzcGFjZS5oYXMoZGVyZWZlcmVuY2UucHJvcGVydHkubmFtZSkpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgICAgICAgICBkZXJlZmVyZW5jZS5wcm9wZXJ0eSxcbiAgICAgICAgICAgICAgbWFrZU1lc3NhZ2UoZGVyZWZlcmVuY2UucHJvcGVydHksIG5hbWVwYXRoKSlcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgZXhwb3J0ZWQgPSBuYW1lc3BhY2UuZ2V0KGRlcmVmZXJlbmNlLnByb3BlcnR5Lm5hbWUpXG4gICAgICAgICAgaWYgKGV4cG9ydGVkID09IG51bGwpIHJldHVyblxuXG4gICAgICAgICAgLy8gc3Rhc2ggYW5kIHBvcFxuICAgICAgICAgIG5hbWVwYXRoLnB1c2goZGVyZWZlcmVuY2UucHJvcGVydHkubmFtZSlcbiAgICAgICAgICBuYW1lc3BhY2UgPSBleHBvcnRlZC5uYW1lc3BhY2VcbiAgICAgICAgICBkZXJlZmVyZW5jZSA9IGRlcmVmZXJlbmNlLnBhcmVudFxuICAgICAgICB9XG5cbiAgICAgIH0sXG5cbiAgICAgIFZhcmlhYmxlRGVjbGFyYXRvcjogZnVuY3Rpb24gKHsgaWQsIGluaXQgfSkge1xuICAgICAgICBpZiAoaW5pdCA9PSBudWxsKSByZXR1cm5cbiAgICAgICAgaWYgKGluaXQudHlwZSAhPT0gJ0lkZW50aWZpZXInKSByZXR1cm5cbiAgICAgICAgaWYgKCFuYW1lc3BhY2VzLmhhcyhpbml0Lm5hbWUpKSByZXR1cm5cblxuICAgICAgICAvLyBjaGVjayBmb3IgcmVkZWZpbml0aW9uIGluIGludGVybWVkaWF0ZSBzY29wZXNcbiAgICAgICAgaWYgKGRlY2xhcmVkU2NvcGUoY29udGV4dCwgaW5pdC5uYW1lKSAhPT0gJ21vZHVsZScpIHJldHVyblxuXG4gICAgICAgIC8vIERGUyB0cmF2ZXJzZSBjaGlsZCBuYW1lc3BhY2VzXG4gICAgICAgIGZ1bmN0aW9uIHRlc3RLZXkocGF0dGVybiwgbmFtZXNwYWNlLCBwYXRoID0gW2luaXQubmFtZV0pIHtcbiAgICAgICAgICBpZiAoIShuYW1lc3BhY2UgaW5zdGFuY2VvZiBFeHBvcnRzKSkgcmV0dXJuXG5cbiAgICAgICAgICBpZiAocGF0dGVybi50eXBlICE9PSAnT2JqZWN0UGF0dGVybicpIHJldHVyblxuXG4gICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBwYXR0ZXJuLnByb3BlcnRpZXMpIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgcHJvcGVydHkudHlwZSA9PT0gJ0V4cGVyaW1lbnRhbFJlc3RQcm9wZXJ0eSdcbiAgICAgICAgICAgICAgfHwgcHJvcGVydHkudHlwZSA9PT0gJ1Jlc3RFbGVtZW50J1xuICAgICAgICAgICAgICB8fCAhcHJvcGVydHkua2V5XG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHByb3BlcnR5LmtleS50eXBlICE9PSAnSWRlbnRpZmllcicpIHtcbiAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgICAgIG5vZGU6IHByb3BlcnR5LFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdPbmx5IGRlc3RydWN0dXJlIHRvcC1sZXZlbCBuYW1lcy4nLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIW5hbWVzcGFjZS5oYXMocHJvcGVydHkua2V5Lm5hbWUpKSB7XG4gICAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgICAgICBub2RlOiBwcm9wZXJ0eSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBtYWtlTWVzc2FnZShwcm9wZXJ0eS5rZXksIHBhdGgpLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYXRoLnB1c2gocHJvcGVydHkua2V5Lm5hbWUpXG4gICAgICAgICAgICBjb25zdCBkZXBlbmRlbmN5RXhwb3J0TWFwID0gbmFtZXNwYWNlLmdldChwcm9wZXJ0eS5rZXkubmFtZSlcbiAgICAgICAgICAgIC8vIGNvdWxkIGJlIG51bGwgd2hlbiBpZ25vcmVkIG9yIGFtYmlndW91c1xuICAgICAgICAgICAgaWYgKGRlcGVuZGVuY3lFeHBvcnRNYXAgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgdGVzdEtleShwcm9wZXJ0eS52YWx1ZSwgZGVwZW5kZW5jeUV4cG9ydE1hcC5uYW1lc3BhY2UsIHBhdGgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXRoLnBvcCgpXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGVzdEtleShpZCwgbmFtZXNwYWNlcy5nZXQoaW5pdC5uYW1lKSlcbiAgICAgIH0sXG5cbiAgICAgIEpTWE1lbWJlckV4cHJlc3Npb246IGZ1bmN0aW9uKHtvYmplY3QsIHByb3BlcnR5fSkge1xuICAgICAgICAgaWYgKCFuYW1lc3BhY2VzLmhhcyhvYmplY3QubmFtZSkpIHJldHVyblxuICAgICAgICAgdmFyIG5hbWVzcGFjZSA9IG5hbWVzcGFjZXMuZ2V0KG9iamVjdC5uYW1lKVxuICAgICAgICAgaWYgKCFuYW1lc3BhY2UuaGFzKHByb3BlcnR5Lm5hbWUpKSB7XG4gICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgICBub2RlOiBwcm9wZXJ0eSxcbiAgICAgICAgICAgICBtZXNzYWdlOiBtYWtlTWVzc2FnZShwcm9wZXJ0eSwgW29iamVjdC5uYW1lXSksXG4gICAgICAgICAgIH0pXG4gICAgICAgICB9XG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uYW1lc3BhY2UuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsInByb3BlcnRpZXMiLCJhbGxvd0NvbXB1dGVkIiwiZGVzY3JpcHRpb24iLCJkZWZhdWx0IiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjcmVhdGUiLCJuYW1lc3BhY2VSdWxlIiwiY29udGV4dCIsIm9wdGlvbnMiLCJuYW1lc3BhY2VzIiwiTWFwIiwibWFrZU1lc3NhZ2UiLCJsYXN0IiwibmFtZXBhdGgiLCJuYW1lIiwibGVuZ3RoIiwiam9pbiIsIlByb2dyYW0iLCJib2R5IiwicHJvY2Vzc0JvZHlTdGF0ZW1lbnQiLCJkZWNsYXJhdGlvbiIsInNwZWNpZmllcnMiLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInNvdXJjZSIsInZhbHVlIiwiZXJyb3JzIiwicmVwb3J0RXJyb3JzIiwic3BlY2lmaWVyIiwic2l6ZSIsInJlcG9ydCIsInNldCIsImxvY2FsIiwiaW1wb3J0ZWQiLCJuYW1lc3BhY2UiLCJmb3JFYWNoIiwiRXhwb3J0TmFtZXNwYWNlU3BlY2lmaWVyIiwiTWVtYmVyRXhwcmVzc2lvbiIsImRlcmVmZXJlbmNlIiwib2JqZWN0IiwiaGFzIiwicGFyZW50IiwibGVmdCIsImNvbXB1dGVkIiwicHJvcGVydHkiLCJleHBvcnRlZCIsInB1c2giLCJWYXJpYWJsZURlY2xhcmF0b3IiLCJpZCIsImluaXQiLCJ0ZXN0S2V5IiwicGF0dGVybiIsInBhdGgiLCJrZXkiLCJub2RlIiwibWVzc2FnZSIsImRlcGVuZGVuY3lFeHBvcnRNYXAiLCJwb3AiLCJKU1hNZW1iZXJFeHByZXNzaW9uIl0sIm1hcHBpbmdzIjoiYUFBQSxrRTtBQUNBLHlDO0FBQ0EseUQ7QUFDQSxxQzs7QUFFQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sU0FERjtBQUVKQyxVQUFNO0FBQ0pD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LElBQXRCLENBQUwsRUFBa0M7QUFDbEMsWUFBSXFCLFlBQVkxQixXQUFXZSxHQUFYLENBQWVnQixPQUFPMUIsSUFBdEIsQ0FBaEI7QUFDQSxZQUFJLENBQUNxQixVQUFVTSxHQUFWLENBQWNJLFNBQVMvQixJQUF2QixDQUFMLEVBQW1DO0FBQ2pDUCxrQkFBUXdCLE1BQVIsQ0FBZTtBQUNid0Isa0JBQU1WLFFBRE87QUFFYlcscUJBQVM3QyxZQUFZa0MsUUFBWixFQUFzQixDQUFDTCxPQUFPMUIsSUFBUixDQUF0QixDQUZJLEVBQWY7O0FBSUQ7QUFDSCxPQTdLSSxFQUFQOztBQStLRCxHQWxOYyxFQUFqQiIsImZpbGUiOiJuYW1lc3BhY2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGVjbGFyZWRTY29wZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL2RlY2xhcmVkU2NvcGUnXG5pbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgaW1wb3J0RGVjbGFyYXRpb24gZnJvbSAnLi4vaW1wb3J0RGVjbGFyYXRpb24nXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25hbWVzcGFjZScpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICBhbGxvd0NvbXB1dGVkOiB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGNvbXB1dGVkIChhbmQgdGh1cywgdW4tbGludGFibGUpIHJlZmVyZW5jZXMgdG8gbmFtZXNwYWNlIG1lbWJlcnMuJyxcbiAgICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIG5hbWVzcGFjZVJ1bGUoY29udGV4dCkge1xuXG4gICAgLy8gcmVhZCBvcHRpb25zXG4gICAgY29uc3Qge1xuICAgICAgYWxsb3dDb21wdXRlZCA9IGZhbHNlLFxuICAgIH0gPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cblxuICAgIGNvbnN0IG5hbWVzcGFjZXMgPSBuZXcgTWFwKClcblxuICAgIGZ1bmN0aW9uIG1ha2VNZXNzYWdlKGxhc3QsIG5hbWVwYXRoKSB7XG4gICAgICByZXR1cm4gYCcke2xhc3QubmFtZX0nIG5vdCBmb3VuZCBpbiAke25hbWVwYXRoLmxlbmd0aCA+IDEgPyAnZGVlcGx5ICcgOiAnJ31pbXBvcnRlZCBuYW1lc3BhY2UgJyR7bmFtZXBhdGguam9pbignLicpfScuYFxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAvLyBwaWNrIHVwIGFsbCBpbXBvcnRzIGF0IGJvZHkgZW50cnkgdGltZSwgdG8gcHJvcGVybHkgcmVzcGVjdCBob2lzdGluZ1xuICAgICAgUHJvZ3JhbSh7IGJvZHkgfSkge1xuICAgICAgICBmdW5jdGlvbiBwcm9jZXNzQm9keVN0YXRlbWVudChkZWNsYXJhdGlvbikge1xuICAgICAgICAgIGlmIChkZWNsYXJhdGlvbi50eXBlICE9PSAnSW1wb3J0RGVjbGFyYXRpb24nKSByZXR1cm5cblxuICAgICAgICAgIGlmIChkZWNsYXJhdGlvbi5zcGVjaWZpZXJzLmxlbmd0aCA9PT0gMCkgcmV0dXJuXG5cbiAgICAgICAgICBjb25zdCBpbXBvcnRzID0gRXhwb3J0cy5nZXQoZGVjbGFyYXRpb24uc291cmNlLnZhbHVlLCBjb250ZXh0KVxuICAgICAgICAgIGlmIChpbXBvcnRzID09IG51bGwpIHJldHVybiBudWxsXG5cbiAgICAgICAgICBpZiAoaW1wb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICBpbXBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBkZWNsYXJhdGlvbilcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGZvciAoY29uc3Qgc3BlY2lmaWVyIG9mIGRlY2xhcmF0aW9uLnNwZWNpZmllcnMpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoc3BlY2lmaWVyLnR5cGUpIHtcbiAgICAgICAgICAgICAgY2FzZSAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJzpcbiAgICAgICAgICAgICAgICBpZiAoIWltcG9ydHMuc2l6ZSkge1xuICAgICAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgICAgICAgICAgIHNwZWNpZmllcixcbiAgICAgICAgICAgICAgICAgICAgYE5vIGV4cG9ydGVkIG5hbWVzIGZvdW5kIGluIG1vZHVsZSAnJHtkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWV9Jy5gXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG5hbWVzcGFjZXMuc2V0KHNwZWNpZmllci5sb2NhbC5uYW1lLCBpbXBvcnRzKVxuICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgIGNhc2UgJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInOlxuICAgICAgICAgICAgICBjYXNlICdJbXBvcnRTcGVjaWZpZXInOiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWV0YSA9IGltcG9ydHMuZ2V0KFxuICAgICAgICAgICAgICAgICAgLy8gZGVmYXVsdCB0byAnZGVmYXVsdCcgZm9yIGRlZmF1bHQgaHR0cDovL2kuaW1ndXIuY29tL25qNnFBV3kuanBnXG4gICAgICAgICAgICAgICAgICBzcGVjaWZpZXIuaW1wb3J0ZWQgPyBzcGVjaWZpZXIuaW1wb3J0ZWQubmFtZSA6ICdkZWZhdWx0J1xuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICBpZiAoIW1ldGEgfHwgIW1ldGEubmFtZXNwYWNlKSB7IGJyZWFrIH1cbiAgICAgICAgICAgICAgICBuYW1lc3BhY2VzLnNldChzcGVjaWZpZXIubG9jYWwubmFtZSwgbWV0YS5uYW1lc3BhY2UpXG4gICAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBib2R5LmZvckVhY2gocHJvY2Vzc0JvZHlTdGF0ZW1lbnQpXG4gICAgICB9LFxuXG4gICAgICAvLyBzYW1lIGFzIGFib3ZlLCBidXQgZG9lcyBub3QgYWRkIG5hbWVzIHRvIGxvY2FsIG1hcFxuICAgICAgRXhwb3J0TmFtZXNwYWNlU3BlY2lmaWVyKG5hbWVzcGFjZSkge1xuICAgICAgICB2YXIgZGVjbGFyYXRpb24gPSBpbXBvcnREZWNsYXJhdGlvbihjb250ZXh0KVxuXG4gICAgICAgIHZhciBpbXBvcnRzID0gRXhwb3J0cy5nZXQoZGVjbGFyYXRpb24uc291cmNlLnZhbHVlLCBjb250ZXh0KVxuICAgICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSByZXR1cm4gbnVsbFxuXG4gICAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICBpbXBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBkZWNsYXJhdGlvbilcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaW1wb3J0cy5zaXplKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgICBuYW1lc3BhY2UsXG4gICAgICAgICAgICBgTm8gZXhwb3J0ZWQgbmFtZXMgZm91bmQgaW4gbW9kdWxlICcke2RlY2xhcmF0aW9uLnNvdXJjZS52YWx1ZX0nLmBcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIC8vIHRvZG86IGNoZWNrIGZvciBwb3NzaWJsZSByZWRlZmluaXRpb25cblxuICAgICAgTWVtYmVyRXhwcmVzc2lvbihkZXJlZmVyZW5jZSkge1xuICAgICAgICBpZiAoZGVyZWZlcmVuY2Uub2JqZWN0LnR5cGUgIT09ICdJZGVudGlmaWVyJykgcmV0dXJuXG4gICAgICAgIGlmICghbmFtZXNwYWNlcy5oYXMoZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpKSByZXR1cm5cbiAgICAgICAgaWYgKGRlY2xhcmVkU2NvcGUoY29udGV4dCwgZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpICE9PSAnbW9kdWxlJykgcmV0dXJuXG5cbiAgICAgICAgaWYgKGRlcmVmZXJlbmNlLnBhcmVudC50eXBlID09PSAnQXNzaWdubWVudEV4cHJlc3Npb24nICYmIGRlcmVmZXJlbmNlLnBhcmVudC5sZWZ0ID09PSBkZXJlZmVyZW5jZSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgICAgIGRlcmVmZXJlbmNlLnBhcmVudCxcbiAgICAgICAgICAgICAgYEFzc2lnbm1lbnQgdG8gbWVtYmVyIG9mIG5hbWVzcGFjZSAnJHtkZXJlZmVyZW5jZS5vYmplY3QubmFtZX0nLmBcbiAgICAgICAgICAgIClcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGdvIGRlZXBcbiAgICAgICAgdmFyIG5hbWVzcGFjZSA9IG5hbWVzcGFjZXMuZ2V0KGRlcmVmZXJlbmNlLm9iamVjdC5uYW1lKVxuICAgICAgICB2YXIgbmFtZXBhdGggPSBbZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWVdXG4gICAgICAgIC8vIHdoaWxlIHByb3BlcnR5IGlzIG5hbWVzcGFjZSBhbmQgcGFyZW50IGlzIG1lbWJlciBleHByZXNzaW9uLCBrZWVwIHZhbGlkYXRpbmdcbiAgICAgICAgd2hpbGUgKG5hbWVzcGFjZSBpbnN0YW5jZW9mIEV4cG9ydHMgJiYgZGVyZWZlcmVuY2UudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nKSB7XG5cbiAgICAgICAgICBpZiAoZGVyZWZlcmVuY2UuY29tcHV0ZWQpIHtcbiAgICAgICAgICAgIGlmICghYWxsb3dDb21wdXRlZCkge1xuICAgICAgICAgICAgICBjb250ZXh0LnJlcG9ydChcbiAgICAgICAgICAgICAgICBkZXJlZmVyZW5jZS5wcm9wZXJ0eSxcbiAgICAgICAgICAgICAgICBgVW5hYmxlIHRvIHZhbGlkYXRlIGNvbXB1dGVkIHJlZmVyZW5jZSB0byBpbXBvcnRlZCBuYW1lc3BhY2UgJyR7ZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWV9Jy5gXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghbmFtZXNwYWNlLmhhcyhkZXJlZmVyZW5jZS5wcm9wZXJ0eS5uYW1lKSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgICAgIGRlcmVmZXJlbmNlLnByb3BlcnR5LFxuICAgICAgICAgICAgICBtYWtlTWVzc2FnZShkZXJlZmVyZW5jZS5wcm9wZXJ0eSwgbmFtZXBhdGgpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGV4cG9ydGVkID0gbmFtZXNwYWNlLmdldChkZXJlZmVyZW5jZS5wcm9wZXJ0eS5uYW1lKVxuICAgICAgICAgIGlmIChleHBvcnRlZCA9PSBudWxsKSByZXR1cm5cblxuICAgICAgICAgIC8vIHN0YXNoIGFuZCBwb3BcbiAgICAgICAgICBuYW1lcGF0aC5wdXNoKGRlcmVmZXJlbmNlLnByb3BlcnR5Lm5hbWUpXG4gICAgICAgICAgbmFtZXNwYWNlID0gZXhwb3J0ZWQubmFtZXNwYWNlXG4gICAgICAgICAgZGVyZWZlcmVuY2UgPSBkZXJlZmVyZW5jZS5wYXJlbnRcbiAgICAgICAgfVxuXG4gICAgICB9LFxuXG4gICAgICBWYXJpYWJsZURlY2xhcmF0b3IoeyBpZCwgaW5pdCB9KSB7XG4gICAgICAgIGlmIChpbml0ID09IG51bGwpIHJldHVyblxuICAgICAgICBpZiAoaW5pdC50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAoIW5hbWVzcGFjZXMuaGFzKGluaXQubmFtZSkpIHJldHVyblxuXG4gICAgICAgIC8vIGNoZWNrIGZvciByZWRlZmluaXRpb24gaW4gaW50ZXJtZWRpYXRlIHNjb3Blc1xuICAgICAgICBpZiAoZGVjbGFyZWRTY29wZShjb250ZXh0LCBpbml0Lm5hbWUpICE9PSAnbW9kdWxlJykgcmV0dXJuXG5cbiAgICAgICAgLy8gREZTIHRyYXZlcnNlIGNoaWxkIG5hbWVzcGFjZXNcbiAgICAgICAgZnVuY3Rpb24gdGVzdEtleShwYXR0ZXJuLCBuYW1lc3BhY2UsIHBhdGggPSBbaW5pdC5uYW1lXSkge1xuICAgICAgICAgIGlmICghKG5hbWVzcGFjZSBpbnN0YW5jZW9mIEV4cG9ydHMpKSByZXR1cm5cblxuICAgICAgICAgIGlmIChwYXR0ZXJuLnR5cGUgIT09ICdPYmplY3RQYXR0ZXJuJykgcmV0dXJuXG5cbiAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IG9mIHBhdHRlcm4ucHJvcGVydGllcykge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICBwcm9wZXJ0eS50eXBlID09PSAnRXhwZXJpbWVudGFsUmVzdFByb3BlcnR5J1xuICAgICAgICAgICAgICB8fCBwcm9wZXJ0eS50eXBlID09PSAnUmVzdEVsZW1lbnQnXG4gICAgICAgICAgICAgIHx8ICFwcm9wZXJ0eS5rZXlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAocHJvcGVydHkua2V5LnR5cGUgIT09ICdJZGVudGlmaWVyJykge1xuICAgICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICAgICAgbm9kZTogcHJvcGVydHksXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogJ09ubHkgZGVzdHJ1Y3R1cmUgdG9wLWxldmVsIG5hbWVzLicsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghbmFtZXNwYWNlLmhhcyhwcm9wZXJ0eS5rZXkubmFtZSkpIHtcbiAgICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgICAgIG5vZGU6IHByb3BlcnR5LFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IG1ha2VNZXNzYWdlKHByb3BlcnR5LmtleSwgcGF0aCksXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBhdGgucHVzaChwcm9wZXJ0eS5rZXkubmFtZSlcbiAgICAgICAgICAgIGNvbnN0IGRlcGVuZGVuY3lFeHBvcnRNYXAgPSBuYW1lc3BhY2UuZ2V0KHByb3BlcnR5LmtleS5uYW1lKVxuICAgICAgICAgICAgLy8gY291bGQgYmUgbnVsbCB3aGVuIGlnbm9yZWQgb3IgYW1iaWd1b3VzXG4gICAgICAgICAgICBpZiAoZGVwZW5kZW5jeUV4cG9ydE1hcCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICB0ZXN0S2V5KHByb3BlcnR5LnZhbHVlLCBkZXBlbmRlbmN5RXhwb3J0TWFwLm5hbWVzcGFjZSwgcGF0aClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBhdGgucG9wKClcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ZXN0S2V5KGlkLCBuYW1lc3BhY2VzLmdldChpbml0Lm5hbWUpKVxuICAgICAgfSxcblxuICAgICAgSlNYTWVtYmVyRXhwcmVzc2lvbih7b2JqZWN0LCBwcm9wZXJ0eX0pIHtcbiAgICAgICAgIGlmICghbmFtZXNwYWNlcy5oYXMob2JqZWN0Lm5hbWUpKSByZXR1cm5cbiAgICAgICAgIHZhciBuYW1lc3BhY2UgPSBuYW1lc3BhY2VzLmdldChvYmplY3QubmFtZSlcbiAgICAgICAgIGlmICghbmFtZXNwYWNlLmhhcyhwcm9wZXJ0eS5uYW1lKSkge1xuICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICAgbm9kZTogcHJvcGVydHksXG4gICAgICAgICAgICAgbWVzc2FnZTogbWFrZU1lc3NhZ2UocHJvcGVydHksIFtvYmplY3QubmFtZV0pLFxuICAgICAgICAgICB9KVxuICAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/newline-after-import.js b/node_modules/eslint-plugin-import/lib/rules/newline-after-import.js index 75052994..d047a91e 100644 --- a/node_modules/eslint-plugin-import/lib/rules/newline-after-import.js +++ b/node_modules/eslint-plugin-import/lib/rules/newline-after-import.js @@ -1,42 +1,29 @@ 'use strict'; -var _staticRequire = require('../core/staticRequire'); -var _staticRequire2 = _interopRequireDefault(_staticRequire); -var _docsUrl = require('../docsUrl'); -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -var _debug = require('debug'); - -var _debug2 = _interopRequireDefault(_debug); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); +var _debug = require('debug');var _debug2 = _interopRequireDefault(_debug);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const log = (0, _debug2.default)('eslint-plugin-import:rules:newline-after-import'); //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ - /** * @fileoverview Rule to enforce new line after import not followed by another import. * @author Radek Benkel - */ - -function containsNodeOrEqual(outerNode, innerNode) { - return outerNode.range[0] <= innerNode.range[0] && outerNode.range[1] >= innerNode.range[1]; -} + */function containsNodeOrEqual(outerNode, innerNode) {return outerNode.range[0] <= innerNode.range[0] && outerNode.range[1] >= innerNode.range[1];} function getScopeBody(scope) { if (scope.block.type === 'SwitchStatement') { log('SwitchStatement scopes not supported'); return null; - } - - const body = scope.block.body; + }const + body = scope.block.body; if (body && body.type === 'BlockStatement') { return body.body; } @@ -56,30 +43,42 @@ function isClassWithDecorator(node) { return node.type === 'ClassDeclaration' && node.decorators && node.decorators.length; } +function isExportDefaultClass(node) { + return node.type === 'ExportDefaultDeclaration' && node.declaration.type === 'ClassDeclaration'; +} + module.exports = { meta: { type: 'layout', docs: { - url: (0, _docsUrl2.default)('newline-after-import') - }, + url: (0, _docsUrl2.default)('newline-after-import') }, + fixable: 'whitespace', - schema: [{ + schema: [ + { 'type': 'object', 'properties': { 'count': { 'type': 'integer', - 'minimum': 1 - } - }, - 'additionalProperties': false - }] - }, + 'minimum': 1 } }, + + + 'additionalProperties': false }] }, + + + create: function (context) { let level = 0; const requireCalls = []; function checkForNewLine(node, nextNode, type) { - if (isClassWithDecorator(nextNode)) { + if (isExportDefaultClass(nextNode)) { + let classNode = nextNode.declaration; + + if (isClassWithDecorator(classNode)) { + nextNode = classNode.decorators[0]; + } + } else if (isClassWithDecorator(nextNode)) { nextNode = nextNode.decorators[0]; } @@ -97,12 +96,15 @@ module.exports = { context.report({ loc: { line: node.loc.end.line, - column - }, + column }, + message: `Expected ${options.count} empty line${options.count > 1 ? 's' : ''} \ after ${type} statement not followed by another ${type}.`, - fix: fixer => fixer.insertTextAfter(node, '\n'.repeat(EXPECTED_LINE_DIFFERENCE - lineDifference)) - }); + fix: fixer => fixer.insertTextAfter( + node, + '\n'.repeat(EXPECTED_LINE_DIFFERENCE - lineDifference)) }); + + } } @@ -113,17 +115,24 @@ after ${type} statement not followed by another ${type}.`, level--; } + function checkImport(node) {const + parent = node.parent; + const nodePosition = parent.body.indexOf(node); + const nextNode = parent.body[nodePosition + 1]; + + // skip "export import"s + if (node.type === 'TSImportEqualsDeclaration' && node.isExport) { + return; + } + + if (nextNode && nextNode.type !== 'ImportDeclaration' && (nextNode.type !== 'TSImportEqualsDeclaration' || nextNode.isExport)) { + checkForNewLine(node, nextNode, 'import'); + } + } + return { - ImportDeclaration: function (node) { - const parent = node.parent; - - const nodePosition = parent.body.indexOf(node); - const nextNode = parent.body[nodePosition + 1]; - - if (nextNode && nextNode.type !== 'ImportDeclaration') { - checkForNewLine(node, nextNode, 'import'); - } - }, + ImportDeclaration: checkImport, + TSImportEqualsDeclaration: checkImport, CallExpression: function (node) { if ((0, _staticRequire2.default)(node) && level === 0) { requireCalls.push(node); @@ -146,7 +155,8 @@ after ${type} statement not followed by another ${type}.`, return; } - if (nextStatement && (!nextRequireCall || !containsNodeOrEqual(nextStatement, nextRequireCall))) { + if (nextStatement && ( + !nextRequireCall || !containsNodeOrEqual(nextStatement, nextRequireCall))) { checkForNewLine(statementWithRequireCall, nextStatement, 'require'); } @@ -163,8 +173,7 @@ after ${type} statement not followed by another ${type}.`, 'ArrowFunctionExpression:exit': decrementLevel, 'BlockStatement:exit': decrementLevel, 'ObjectExpression:exit': decrementLevel, - 'Decorator:exit': decrementLevel - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uZXdsaW5lLWFmdGVyLWltcG9ydC5qcyJdLCJuYW1lcyI6WyJsb2ciLCJjb250YWluc05vZGVPckVxdWFsIiwib3V0ZXJOb2RlIiwiaW5uZXJOb2RlIiwicmFuZ2UiLCJnZXRTY29wZUJvZHkiLCJzY29wZSIsImJsb2NrIiwidHlwZSIsImJvZHkiLCJmaW5kTm9kZUluZGV4SW5TY29wZUJvZHkiLCJub2RlVG9GaW5kIiwiZmluZEluZGV4Iiwibm9kZSIsImdldExpbmVEaWZmZXJlbmNlIiwibmV4dE5vZGUiLCJsb2MiLCJzdGFydCIsImxpbmUiLCJlbmQiLCJpc0NsYXNzV2l0aERlY29yYXRvciIsImRlY29yYXRvcnMiLCJsZW5ndGgiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJmaXhhYmxlIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImxldmVsIiwicmVxdWlyZUNhbGxzIiwiY2hlY2tGb3JOZXdMaW5lIiwib3B0aW9ucyIsImNvdW50IiwibGluZURpZmZlcmVuY2UiLCJFWFBFQ1RFRF9MSU5FX0RJRkZFUkVOQ0UiLCJjb2x1bW4iLCJyZXBvcnQiLCJtZXNzYWdlIiwiZml4IiwiZml4ZXIiLCJpbnNlcnRUZXh0QWZ0ZXIiLCJyZXBlYXQiLCJpbmNyZW1lbnRMZXZlbCIsImRlY3JlbWVudExldmVsIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJwYXJlbnQiLCJub2RlUG9zaXRpb24iLCJpbmRleE9mIiwiQ2FsbEV4cHJlc3Npb24iLCJwdXNoIiwiZ2V0RmlsZW5hbWUiLCJzY29wZUJvZHkiLCJnZXRTY29wZSIsImZvckVhY2giLCJpbmRleCIsInN0YXRlbWVudFdpdGhSZXF1aXJlQ2FsbCIsIm5leHRTdGF0ZW1lbnQiLCJuZXh0UmVxdWlyZUNhbGwiLCJGdW5jdGlvbkRlY2xhcmF0aW9uIiwiRnVuY3Rpb25FeHByZXNzaW9uIiwiQXJyb3dGdW5jdGlvbkV4cHJlc3Npb24iLCJCbG9ja1N0YXRl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QUFqQiIsImZpbGUiOiJuZXdsaW5lLWFmdGVyLWltcG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIGVuZm9yY2UgbmV3IGxpbmUgYWZ0ZXIgaW1wb3J0IG5vdCBmb2xsb3dlZCBieSBhbm90aGVyIGltcG9ydC5cbiAqIEBhdXRob3IgUmFkZWsgQmVua2VsXG4gKi9cblxuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnXG5jb25zdCBsb2cgPSBkZWJ1ZygnZXNsaW50LXBsdWdpbi1pbXBvcnQ6cnVsZXM6bmV3bGluZS1hZnRlci1pbXBvcnQnKVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUnVsZSBEZWZpbml0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5mdW5jdGlvbiBjb250YWluc05vZGVPckVxdWFsKG91dGVyTm9kZSwgaW5uZXJOb2RlKSB7XG4gICAgcmV0dXJuIG91dGVyTm9kZS5yYW5nZVswXSA8PSBpbm5lck5vZGUucmFuZ2VbMF0gJiYgb3V0ZXJOb2RlLnJhbmdlWzFdID49IGlubmVyTm9kZS5yYW5nZVsxXVxufVxuXG5mdW5jdGlvbiBnZXRTY29wZUJvZHkoc2NvcGUpIHtcbiAgICBpZiAoc2NvcGUuYmxvY2sudHlwZSA9PT0gJ1N3aXRjaFN0YXRlbWVudCcpIHtcbiAgICAgIGxvZygnU3dpdGNoU3RhdGVtZW50IHNjb3BlcyBub3Qgc3VwcG9ydGVkJylcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgY29uc3QgeyBib2R5IH0gPSBzY29wZS5ibG9ja1xuICAgIGlmIChib2R5ICYmIGJvZHkudHlwZSA9PT0gJ0Jsb2NrU3RhdGVtZW50Jykge1xuICAgICAgICByZXR1cm4gYm9keS5ib2R5XG4gICAgfVxuXG4gICAgcmV0dXJuIGJvZHlcbn1cblxuZnVuY3Rpb24gZmluZE5vZGVJbmRleEluU2NvcGVCb2R5KGJvZHksIG5vZGVUb0ZpbmQpIHtcbiAgICByZXR1cm4gYm9keS5maW5kSW5kZXgoKG5vZGUpID0+IGNvbnRhaW5zTm9kZU9yRXF1YWwobm9kZSwgbm9kZVRvRmluZCkpXG59XG5cbmZ1bmN0aW9uIGdldExpbmVEaWZmZXJlbmNlKG5vZGUsIG5leHROb2RlKSB7XG4gIHJldHVybiBuZXh0Tm9kZS5sb2Muc3RhcnQubGluZSAtIG5vZGUubG9jLmVuZC5saW5lXG59XG5cbmZ1bmN0aW9uIGlzQ2xhc3NXaXRoRGVjb3JhdG9yKG5vZGUpIHtcbiAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ0NsYXNzRGVjbGFyYXRpb24nICYmIG5vZGUuZGVjb3JhdG9ycyAmJiBub2RlLmRlY29yYXRvcnMubGVuZ3RoXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ2xheW91dCcsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduZXdsaW5lLWFmdGVyLWltcG9ydCcpLFxuICAgIH0sXG4gICAgZml4YWJsZTogJ3doaXRlc3BhY2UnLFxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICAndHlwZSc6ICdvYmplY3QnLFxuICAgICAgICAncHJvcGVydGllcyc6IHtcbiAgICAgICAgICAnY291bnQnOiB7XG4gICAgICAgICAgICAndHlwZSc6ICdpbnRlZ2VyJyxcbiAgICAgICAgICAgICdtaW5pbXVtJzogMSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICAnYWRkaXRpb25hbFByb3BlcnRpZXMnOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGxldCBsZXZlbCA9IDBcbiAgICBjb25zdCByZXF1aXJlQ2FsbHMgPSBbXVxuXG4gICAgZnVuY3Rpb24gY2hlY2tGb3JOZXdMaW5lKG5vZGUsIG5leHROb2RlLCB0eXBlKSB7XG4gICAgICBpZiAoaXNDbGFzc1dpdGhEZWNvcmF0b3IobmV4dE5vZGUpKSB7XG4gICAgICAgIG5leHROb2RlID0gbmV4dE5vZGUuZGVjb3JhdG9yc1swXVxuICAgICAgfVxuXG4gICAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHsgY291bnQ6IDEgfVxuICAgICAgY29uc3QgbGluZURpZmZlcmVuY2UgPSBnZXRMaW5lRGlmZmVyZW5jZShub2RlLCBuZXh0Tm9kZSlcbiAgICAgIGNvbnN0IEVYUEVDVEVEX0xJTkVfRElGRkVSRU5DRSA9IG9wdGlvbnMuY291bnQgKyAxXG5cbiAgICAgIGlmIChsaW5lRGlmZmVyZW5jZSA8IEVYUEVDVEVEX0xJTkVfRElGRkVSRU5DRSkge1xuICAgICAgICBsZXQgY29sdW1uID0gbm9kZS5sb2Muc3RhcnQuY29sdW1uXG5cbiAgICAgICAgaWYgKG5vZGUubG9jLnN0YXJ0LmxpbmUgIT09IG5vZGUubG9jLmVuZC5saW5lKSB7XG4gICAgICAgICAgY29sdW1uID0gMFxuICAgICAgICB9XG5cbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIGxvYzoge1xuICAgICAgICAgICAgbGluZTogbm9kZS5sb2MuZW5kLmxpbmUsXG4gICAgICAgICAgICBjb2x1bW4sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtZXNzYWdlOiBgRXhwZWN0ZWQgJHtvcHRpb25zLmNvdW50fSBlbXB0eSBsaW5lJHtvcHRpb25zLmNvdW50ID4gMSA/ICdzJyA6ICcnfSBcXFxuYWZ0ZXIgJHt0eXBlfSBzdGF0ZW1lbnQgbm90IGZvbGxvd2VkIGJ5IGFub3RoZXIgJHt0eXBlfS5gLFxuICAgICAgICAgIGZpeDogZml4ZXIgPT4gZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKFxuICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICdcXG4nLnJlcGVhdChFWFBFQ1RFRF9MSU5FX0RJRkZFUkVOQ0UgLSBsaW5lRGlmZmVyZW5jZSlcbiAgICAgICAgICApLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGluY3JlbWVudExldmVsKCkge1xuICAgICAgbGV2ZWwrK1xuICAgIH1cbiAgICBmdW5jdGlvbiBkZWNyZW1lbnRMZXZlbCgpIHtcbiAgICAgIGxldmVsLS1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb246IGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIGNvbnN0IHsgcGFyZW50IH0gPSBub2RlXG4gICAgICAgIGNvbnN0IG5vZGVQb3NpdGlvbiA9IHBhcmVudC5ib2R5LmluZGV4T2Yobm9kZSlcbiAgICAgICAgY29uc3QgbmV4dE5vZGUgPSBwYXJlbnQuYm9keVtub2RlUG9zaXRpb24gKyAxXVxuXG4gICAgICAgIGlmIChuZXh0Tm9kZSAmJiBuZXh0Tm9kZS50eXBlICE9PSAnSW1wb3J0RGVjbGFyYXRpb24nKSB7XG4gICAgICAgICAgY2hlY2tGb3JOZXdMaW5lKG5vZGUsIG5leHROb2RlLCAnaW1wb3J0JylcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIENhbGxFeHByZXNzaW9uOiBmdW5jdGlvbihub2RlKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY1JlcXVpcmUobm9kZSkgJiYgbGV2ZWwgPT09IDApIHtcbiAgICAgICAgICByZXF1aXJlQ2FsbHMucHVzaChub2RlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgJ1Byb2dyYW06ZXhpdCc6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbG9nKCdleGl0IHByb2Nlc3NpbmcgZm9yJywgY29udGV4dC5nZXRGaWxlbmFtZSgpKVxuICAgICAgICBjb25zdCBzY29wZUJvZHkgPSBnZXRTY29wZUJvZHkoY29udGV4dC5nZXRTY29wZSgpKVxuICAgICAgICBsb2coJ2dvdCBzY29wZTonLCBzY29wZUJvZHkpXG5cbiAgICAgICAgcmVxdWlyZUNhbGxzLmZvckVhY2goZnVuY3Rpb24gKG5vZGUsIGluZGV4KSB7XG4gICAgICAgICAgY29uc3Qgbm9kZVBvc2l0aW9uID0gZmluZE5vZGVJbmRleEluU2NvcGVCb2R5KHNjb3BlQm9keSwgbm9kZSlcbiAgICAgICAgICBsb2coJ25vZGUgcG9zaXRpb24gaW4gc2NvcGU6Jywgbm9kZVBvc2l0aW9uKVxuXG4gICAgICAgICAgY29uc3Qgc3RhdGVtZW50V2l0aFJlcXVpcmVDYWxsID0gc2NvcGVCb2R5W25vZGVQb3NpdGlvbl1cbiAgICAgICAgICBjb25zdCBuZXh0U3RhdGVtZW50ID0gc2NvcGVCb2R5W25vZGVQb3NpdGlvbiArIDFdXG4gICAgICAgICAgY29uc3QgbmV4dFJlcXVpcmVDYWxsID0gcmVxdWlyZUNhbGxzW2luZGV4ICsgMV1cblxuICAgICAgICAgIGlmIChuZXh0UmVxdWlyZUNhbGwgJiYgY29udGFpbnNOb2RlT3JFcXVhbChzdGF0ZW1lbnRXaXRoUmVxdWlyZUNhbGwsIG5leHRSZXF1aXJlQ2FsbCkpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChuZXh0U3RhdGVtZW50ICYmXG4gICAgICAgICAgICAgKCFuZXh0UmVxdWlyZUNhbGwgfHwgIWNvbnRhaW5zTm9kZU9yRXF1YWwobmV4dFN0YXRlbWVudCwgbmV4dFJlcXVpcmVDYWxsKSkpIHtcblxuICAgICAgICAgICAgY2hlY2tGb3JOZXdMaW5lKHN0YXRlbWVudFdpdGhSZXF1aXJlQ2FsbCwgbmV4dFN0YXRlbWVudCwgJ3JlcXVpcmUnKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgICBGdW5jdGlvbkRlY2xhcmF0aW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIEZ1bmN0aW9uRXhwcmVzc2lvbjogaW5jcmVtZW50TGV2ZWwsXG4gICAgICBBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbjogaW5jcmVtZW50TGV2ZWwsXG4gICAgICBCbG9ja1N0YXRlbWVudDogaW5jcmVtZW50TGV2ZWwsXG4gICAgICBPYmplY3RFeHByZXNzaW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIERlY29yYXRvcjogaW5jcmVtZW50TGV2ZWwsXG4gICAgICAnRnVuY3Rpb25EZWNsYXJhdGlvbjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgICAnRnVuY3Rpb25FeHByZXNzaW9uOmV4aXQnOiBkZWNyZW1lbnRMZXZlbCxcbiAgICAgICdBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgICAnQmxvY2tTdGF0ZW1lbnQ6ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ09iamVjdEV4cHJlc3Npb246ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ0RlY29yYXRvcjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + 'Decorator:exit': decrementLevel }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uZXdsaW5lLWFmdGVyLWltcG9ydC5qcyJdLCJuYW1lcyI6WyJsb2ciLCJjb250YWluc05vZGVPckVxdWFsIiwib3V0ZXJOb2RlIiwiaW5uZXJOb2RlIiwicmFuZ2UiLCJnZXRTY29wZUJvZHkiLCJzY29wZSIsImJsb2NrIiwidHlwZSIsImJvZHkiLCJmaW5kTm9kZUluZGV4SW5TY29wZUJvZHkiLCJub2RlVG9GaW5kIiwiZmluZEluZGV4Iiwibm9kZSIsImdldExpbmVEaWZmZXJlbmNlIiwibmV4dE5vZGUiLCJsb2MiLCJzdGFydCIsImxpbmUiLCJlbmQiLCJpc0NsYXNzV2l0aERlY29yYXRvciIsImRlY29yYXRvcnMiLCJsZW5ndGgiLCJpc0V4cG9ydERlZmF1bHRDbGFzcyIsImRlY2xhcmF0aW9uIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJkb2NzIiwidXJsIiwiZml4YWJsZSIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJsZXZlbCIsInJlcXVpcmVDYWxscyIsImNoZWNrRm9yTmV3TGluZSIsImNsYXNzTm9kZSIsIm9wdGlvbnMiLCJjb3VudCIsImxpbmVEaWZmZXJlbmNlIiwiRVhQRUNURURfTElORV9ESUZGRVJFTkNFIiwiY29sdW1uIiwicmVwb3J0IiwibWVzc2FnZSIsImZpeCIsImZpeGVyIiwiaW5zZXJ0VGV4dEFmdGVyIiwicmVwZWF0IiwiaW5jcmVtZW50TGV2ZWwiLCJkZWNyZW1lbnRMZXZlbCIsImNoZWNrSW1wb3J0IiwicGFyZW50Iiwibm9kZVBvc2l0aW9uIiwiaW5kZXhPZiIsImlzRXhwb3J0IiwiSW1wb3J0RGVjbGFyYXRpb24iLCJUU0ltcG9ydEVxdWFsc0RlY2xhcmF0aW9uIiwiQ2FsbEV4cHJlc3Npb24iLCJwdXNoIiwiZ2V0RmlsZW5hbWUiLCJzY29wZUJvZHkiLCJnZXRTY29wZSIsImZvckVhY2giLCJpbmRleCIsInN0YXRlbWVudFdpdGhSZXF1aXJlQ2FsbCIsIm5leHRTdGF0ZW1lbnQiLCJuZXh0UmVxdWlyZUNhbGwiLCJGdW5jdGlvbkRlY2xhcmF0aW9uIiwiRnVuY3Rpb25FeHByZXNzaW9uIiwiQXJyb3dGdW5jdGlvbkV4cHJlc3Npb24iLCJCbG9ja1N0YXRlbWVudCIsIk9iamVjdEV4cHJlc3Npb24iLCJEZWNvcmF0b3IiXSwibWFwcGluZ3MiOiI7Ozs7O0FBS0Esc0Q7QUFDQSxxQzs7QUFFQSw4QjtBQUNBLE1BQU1BLE1BQU0scUJBQU0saURBQU4sQ0FBWjs7QUFFQTtBQUNBO0FBQ0E7QUFiQTs7O0dBZUEsU0FBU0MsbUJBQVQsQ0FBNkJDLFNBQTdCLEVBQXdDQyxTQUF4QyxFQUFtRCxDQUMvQyxPQUFPRCxVQUFVRSxLQUFWLENBQWdCLENBQWhCLEtBQXNCRCxVQUFVQyxLQUFWLENBQWdCLENBQWhCLENBQXRCLElBQTRDRixVQUFVRSxLQUFWLENBQWdCLENBQWhCLEtBQXNCRCxVQUFVQyxLQUFWLENBQWdCLENBQWhCLENBQXpFLENBQ0g7O0FBRUQsU0FBU0MsWUFBVCxDQUFzQkMsS0FBdEIsRUFBNkI7QUFDekIsTUFBSUEsTUFBTUMsS0FBTixDQUFZQyxJQUFaLEtBQXFCLGlCQUF6QixFQUE0QztBQUMxQ1IsUUFBSSxzQ0FBSjtBQUNBLFdBQU8sSUFBUDtBQUNELEdBSndCOztBQU1qQlMsTUFOaUIsR0FNUkgsTUFBTUMsS0FORSxDQU1qQkUsSUFOaUI7QUFPekIsTUFBSUEsUUFBUUEsS0FBS0QsSUFBTCxLQUFjLGdCQUExQixFQUE0QztBQUN4QyxXQUFPQyxLQUFLQSxJQUFaO0FBQ0g7O0FBRUQsU0FBT0EsSUFBUDtBQUNIOztBQUVELFNBQVNDLHdCQUFULENBQWtDRCxJQUFsQyxFQUF3Q0UsVUFBeEMsRUFBb0Q7QUFDaEQsU0FBT0YsS0FBS0csU0FBTCxDQUFnQkMsSUFBRCxJQUFVWixvQkFBb0JZLElBQXBCLEVBQTBCRixVQUExQixDQUF6QixDQUFQO0FBQ0g7O0FBRUQsU0FBU0csaUJBQVQsQ0FBMkJELElBQTNCLEVBQWlDRSxRQUFqQyxFQUEyQztBQUN6QyxTQUFPQSxTQUFTQyxHQUFULENBQWFDLEtBQWIsQ0FBbUJDLElBQW5CLEdBQTBCTCxLQUFLRyxHQUFMLENBQVNHLEdBQVQsQ0FBYUQsSUFBOUM7QUFDRDs7QUFFRCxTQUFTRSxvQkFBVCxDQUE4QlAsSUFBOUIsRUFBb0M7QUFDbEMsU0FBT0EsS0FBS0wsSUFBTCxLQUFjLGtCQUFkLElBQW9DSyxLQUFLUSxVQUF6QyxJQUF1RFIsS0FBS1EsVUFBTCxDQUFnQkMsTUFBOUU7QUFDRDs7QUFFRCxTQUFTQyxvQkFBVCxDQUE4QlYsSUFBOUIsRUFBb0M7QUFDbEMsU0FBT0EsS0FBS0wsSUFBTCxLQUFjLDBCQUFkLElBQTRDSyxLQUFLVyxXQUFMLENBQWlCaEIsSUFBakIsS0FBMEIsa0JBQTdFO0FBQ0Q7O0FBRURpQixPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSm5CLFVBQU0sUUFERjtBQUVKb0IsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLHNCQUFSLENBREQsRUFGRjs7QUFLSkMsYUFBUyxZQUxMO0FBTUpDLFlBQVE7QUFDTjtBQUNFLGNBQVEsUUFEVjtBQUVFLG9CQUFjO0FBQ1osaUJBQVM7QUFDUCxrQkFBUSxTQUREO0FBRVAscUJBQVcsQ0FGSixFQURHLEVBRmhCOzs7QUFRRSw4QkFBd0IsS0FSMUIsRUFETSxDQU5KLEVBRFM7Ozs7QUFvQmZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixRQUFJQyxRQUFRLENBQVo7QUFDQSxVQUFNQyxlQUFlLEVBQXJCOztBQUVBLGFBQVNDLGVBQVQsQ0FBeUJ2QixJQUF6QixFQUErQkUsUUFBL0IsRUFBeUNQLElBQXpDLEVBQStDO0FBQzdDLFVBQUllLHFCQUFxQlIsUUFBckIsQ0FBSixFQUFvQztBQUNsQyxZQUFJc0IsWUFBWXRCLFNBQVNTLFdBQXpCOztBQUVBLFlBQUlKLHFCQUFxQmlCLFNBQXJCLENBQUosRUFBcUM7QUFDbkN0QixxQkFBV3NCLFVBQVVoQixVQUFWLENBQXFCLENBQXJCLENBQVg7QUFDRDtBQUNGLE9BTkQsTUFNTyxJQUFJRCxxQkFBcUJMLFFBQXJCLENBQUosRUFBb0M7QUFDekNBLG1CQUFXQSxTQUFTTSxVQUFULENBQW9CLENBQXBCLENBQVg7QUFDRDs7QUFFRCxZQUFNaUIsVUFBVUwsUUFBUUssT0FBUixDQUFnQixDQUFoQixLQUFzQixFQUFFQyxPQUFPLENBQVQsRUFBdEM7QUFDQSxZQUFNQyxpQkFBaUIxQixrQkFBa0JELElBQWxCLEVBQXdCRSxRQUF4QixDQUF2QjtBQUNBLFlBQU0wQiwyQkFBMkJILFFBQVFDLEtBQVIsR0FBZ0IsQ0FBakQ7O0FBRUEsVUFBSUMsaUJBQWlCQyx3QkFBckIsRUFBK0M7QUFDN0MsWUFBSUMsU0FBUzdCLEtBQUtHLEdBQUwsQ0FBU0MsS0FBVCxDQUFleUIsTUFBNUI7O0FBRUEsWUFBSTdCLEtBQUtHLEdBQUwsQ0FBU0MsS0FBVCxDQUFlQyxJQUFmLEtBQXdCTCxLQUFLRyxHQUFMLENBQVNHLEdBQVQsQ0FBYUQsSUFBekMsRUFBK0M7QUFDN0N3QixtQkFBUyxDQUFUO0FBQ0Q7O0FBRURULGdCQUFRVSxNQUFSLENBQWU7QUFDYjNCLGVBQUs7QUFDSEUsa0JBQU1MLEtBQUtHLEdBQUwsQ0FBU0csR0FBVCxDQUFhRCxJQURoQjtBQUVId0Isa0JBRkcsRUFEUTs7QUFLYkUsbUJBQVUsWUFBV04sUUFBUUMsS0FBTSxjQUFhRCxRQUFRQyxLQUFSLEdBQWdCLENBQWhCLEdBQW9CLEdBQXBCLEdBQTBCLEVBQUc7UUFDL0UvQixJQUFLLHNDQUFxQ0EsSUFBSyxHQU5oQztBQU9icUMsZUFBS0MsU0FBU0EsTUFBTUMsZUFBTjtBQUNabEMsY0FEWTtBQUVaLGVBQUttQyxNQUFMLENBQVlQLDJCQUEyQkQsY0FBdkMsQ0FGWSxDQVBELEVBQWY7OztBQVlEO0FBQ0Y7O0FBRUQsYUFBU1MsY0FBVCxHQUEwQjtBQUN4QmY7QUFDRDtBQUNELGFBQVNnQixjQUFULEdBQTBCO0FBQ3hCaEI7QUFDRDs7QUFFRCxhQUFTaUIsV0FBVCxDQUFxQnRDLElBQXJCLEVBQTJCO0FBQ2Z1QyxZQURlLEdBQ0p2QyxJQURJLENBQ2Z1QyxNQURlO0FBRXZCLFlBQU1DLGVBQWVELE9BQU8zQyxJQUFQLENBQVk2QyxPQUFaLENBQW9CekMsSUFBcEIsQ0FBckI7QUFDQSxZQUFNRSxXQUFXcUMsT0FBTzNDLElBQVAsQ0FBWTRDLGVBQWUsQ0FBM0IsQ0FBakI7O0FBRUE7QUFDQSxVQUFJeEMsS0FBS0wsSUFBTCxLQUFjLDJCQUFkLElBQTZDSyxLQUFLMEMsUUFBdEQsRUFBZ0U7QUFDOUQ7QUFDRDs7QUFFRCxVQUFJeEMsWUFBWUEsU0FBU1AsSUFBVCxLQUFrQixtQkFBOUIsS0FBc0RPLFNBQVNQLElBQVQsS0FBa0IsMkJBQWxCLElBQWlETyxTQUFTd0MsUUFBaEgsQ0FBSixFQUErSDtBQUM3SG5CLHdCQUFnQnZCLElBQWhCLEVBQXNCRSxRQUF0QixFQUFnQyxRQUFoQztBQUNEO0FBQ0o7O0FBRUQsV0FBTztBQUNMeUMseUJBQW1CTCxXQURkO0FBRUxNLGlDQUEyQk4sV0FGdEI7QUFHTE8sc0JBQWdCLFVBQVM3QyxJQUFULEVBQWU7QUFDN0IsWUFBSSw2QkFBZ0JBLElBQWhCLEtBQXlCcUIsVUFBVSxDQUF2QyxFQUEwQztBQUN4Q0MsdUJBQWF3QixJQUFiLENBQWtCOUMsSUFBbEI7QUFDRDtBQUNGLE9BUEk7QUFRTCxzQkFBZ0IsWUFBWTtBQUMxQmIsWUFBSSxxQkFBSixFQUEyQmlDLFFBQVEyQixXQUFSLEVBQTNCO0FBQ0EsY0FBTUMsWUFBWXhELGFBQWE0QixRQUFRNkIsUUFBUixFQUFiLENBQWxCO0FBQ0E5RCxZQUFJLFlBQUosRUFBa0I2RCxTQUFsQjs7QUFFQTFCLHFCQUFhNEIsT0FBYixDQUFxQixVQUFVbEQsSUFBVixFQUFnQm1ELEtBQWhCLEVBQXVCO0FBQzFDLGdCQUFNWCxlQUFlM0MseUJBQXlCbUQsU0FBekIsRUFBb0NoRCxJQUFwQyxDQUFyQjtBQUNBYixjQUFJLHlCQUFKLEVBQStCcUQsWUFBL0I7O0FBRUEsZ0JBQU1ZLDJCQUEyQkosVUFBVVIsWUFBVixDQUFqQztBQUNBLGdCQUFNYSxnQkFBZ0JMLFVBQVVSLGVBQWUsQ0FBekIsQ0FBdEI7QUFDQSxnQkFBTWMsa0JBQWtCaEMsYUFBYTZCLFFBQVEsQ0FBckIsQ0FBeEI7O0FBRUEsY0FBSUcsbUJBQW1CbEUsb0JBQW9CZ0Usd0JBQXBCLEVBQThDRSxlQUE5QyxDQUF2QixFQUF1RjtBQUNyRjtBQUNEOztBQUVELGNBQUlEO0FBQ0EsV0FBQ0MsZUFBRCxJQUFvQixDQUFDbEUsb0JBQW9CaUUsYUFBcEIsRUFBbUNDLGVBQW5DLENBRHJCLENBQUosRUFDK0U7O0FBRTdFL0IsNEJBQWdCNkIsd0JBQWhCLEVBQTBDQyxhQUExQyxFQUF5RCxTQUF6RDtBQUNEO0FBQ0YsU0FqQkQ7QUFrQkQsT0EvQkk7QUFnQ0xFLDJCQUFxQm5CLGNBaENoQjtBQWlDTG9CLDBCQUFvQnBCLGNBakNmO0FBa0NMcUIsK0JBQXlCckIsY0FsQ3BCO0FBbUNMc0Isc0JBQWdCdEIsY0FuQ1g7QUFvQ0x1Qix3QkFBa0J2QixjQXBDYjtBQXFDTHdCLGlCQUFXeEIsY0FyQ047QUFzQ0wsa0NBQTRCQyxjQXRDdkI7QUF1Q0wsaUNBQTJCQSxjQXZDdEI7QUF3Q0wsc0NBQWdDQSxjQXhDM0I7QUF5Q0wsNkJBQXVCQSxjQXpDbEI7QUEwQ0wsK0JBQXlCQSxjQTFDcEI7QUEyQ0wsd0JBQWtCQSxjQTNDYixFQUFQOztBQTZDRCxHQWhJYyxFQUFqQiIsImZpbGUiOiJuZXdsaW5lLWFmdGVyLWltcG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIGVuZm9yY2UgbmV3IGxpbmUgYWZ0ZXIgaW1wb3J0IG5vdCBmb2xsb3dlZCBieSBhbm90aGVyIGltcG9ydC5cbiAqIEBhdXRob3IgUmFkZWsgQmVua2VsXG4gKi9cblxuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnXG5jb25zdCBsb2cgPSBkZWJ1ZygnZXNsaW50LXBsdWdpbi1pbXBvcnQ6cnVsZXM6bmV3bGluZS1hZnRlci1pbXBvcnQnKVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUnVsZSBEZWZpbml0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5mdW5jdGlvbiBjb250YWluc05vZGVPckVxdWFsKG91dGVyTm9kZSwgaW5uZXJOb2RlKSB7XG4gICAgcmV0dXJuIG91dGVyTm9kZS5yYW5nZVswXSA8PSBpbm5lck5vZGUucmFuZ2VbMF0gJiYgb3V0ZXJOb2RlLnJhbmdlWzFdID49IGlubmVyTm9kZS5yYW5nZVsxXVxufVxuXG5mdW5jdGlvbiBnZXRTY29wZUJvZHkoc2NvcGUpIHtcbiAgICBpZiAoc2NvcGUuYmxvY2sudHlwZSA9PT0gJ1N3aXRjaFN0YXRlbWVudCcpIHtcbiAgICAgIGxvZygnU3dpdGNoU3RhdGVtZW50IHNjb3BlcyBub3Qgc3VwcG9ydGVkJylcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgY29uc3QgeyBib2R5IH0gPSBzY29wZS5ibG9ja1xuICAgIGlmIChib2R5ICYmIGJvZHkudHlwZSA9PT0gJ0Jsb2NrU3RhdGVtZW50Jykge1xuICAgICAgICByZXR1cm4gYm9keS5ib2R5XG4gICAgfVxuXG4gICAgcmV0dXJuIGJvZHlcbn1cblxuZnVuY3Rpb24gZmluZE5vZGVJbmRleEluU2NvcGVCb2R5KGJvZHksIG5vZGVUb0ZpbmQpIHtcbiAgICByZXR1cm4gYm9keS5maW5kSW5kZXgoKG5vZGUpID0+IGNvbnRhaW5zTm9kZU9yRXF1YWwobm9kZSwgbm9kZVRvRmluZCkpXG59XG5cbmZ1bmN0aW9uIGdldExpbmVEaWZmZXJlbmNlKG5vZGUsIG5leHROb2RlKSB7XG4gIHJldHVybiBuZXh0Tm9kZS5sb2Muc3RhcnQubGluZSAtIG5vZGUubG9jLmVuZC5saW5lXG59XG5cbmZ1bmN0aW9uIGlzQ2xhc3NXaXRoRGVjb3JhdG9yKG5vZGUpIHtcbiAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ0NsYXNzRGVjbGFyYXRpb24nICYmIG5vZGUuZGVjb3JhdG9ycyAmJiBub2RlLmRlY29yYXRvcnMubGVuZ3RoXG59XG5cbmZ1bmN0aW9uIGlzRXhwb3J0RGVmYXVsdENsYXNzKG5vZGUpIHtcbiAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ0V4cG9ydERlZmF1bHREZWNsYXJhdGlvbicgJiYgbm9kZS5kZWNsYXJhdGlvbi50eXBlID09PSAnQ2xhc3NEZWNsYXJhdGlvbidcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnbGF5b3V0JyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25ld2xpbmUtYWZ0ZXItaW1wb3J0JyksXG4gICAgfSxcbiAgICBmaXhhYmxlOiAnd2hpdGVzcGFjZScsXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgICd0eXBlJzogJ29iamVjdCcsXG4gICAgICAgICdwcm9wZXJ0aWVzJzoge1xuICAgICAgICAgICdjb3VudCc6IHtcbiAgICAgICAgICAgICd0eXBlJzogJ2ludGVnZXInLFxuICAgICAgICAgICAgJ21pbmltdW0nOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgICdhZGRpdGlvbmFsUHJvcGVydGllcyc6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgbGV0IGxldmVsID0gMFxuICAgIGNvbnN0IHJlcXVpcmVDYWxscyA9IFtdXG5cbiAgICBmdW5jdGlvbiBjaGVja0Zvck5ld0xpbmUobm9kZSwgbmV4dE5vZGUsIHR5cGUpIHtcbiAgICAgIGlmIChpc0V4cG9ydERlZmF1bHRDbGFzcyhuZXh0Tm9kZSkpIHtcbiAgICAgICAgbGV0IGNsYXNzTm9kZSA9IG5leHROb2RlLmRlY2xhcmF0aW9uXG5cbiAgICAgICAgaWYgKGlzQ2xhc3NXaXRoRGVjb3JhdG9yKGNsYXNzTm9kZSkpIHtcbiAgICAgICAgICBuZXh0Tm9kZSA9IGNsYXNzTm9kZS5kZWNvcmF0b3JzWzBdXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoaXNDbGFzc1dpdGhEZWNvcmF0b3IobmV4dE5vZGUpKSB7XG4gICAgICAgIG5leHROb2RlID0gbmV4dE5vZGUuZGVjb3JhdG9yc1swXVxuICAgICAgfVxuXG4gICAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHsgY291bnQ6IDEgfVxuICAgICAgY29uc3QgbGluZURpZmZlcmVuY2UgPSBnZXRMaW5lRGlmZmVyZW5jZShub2RlLCBuZXh0Tm9kZSlcbiAgICAgIGNvbnN0IEVYUEVDVEVEX0xJTkVfRElGRkVSRU5DRSA9IG9wdGlvbnMuY291bnQgKyAxXG5cbiAgICAgIGlmIChsaW5lRGlmZmVyZW5jZSA8IEVYUEVDVEVEX0xJTkVfRElGRkVSRU5DRSkge1xuICAgICAgICBsZXQgY29sdW1uID0gbm9kZS5sb2Muc3RhcnQuY29sdW1uXG5cbiAgICAgICAgaWYgKG5vZGUubG9jLnN0YXJ0LmxpbmUgIT09IG5vZGUubG9jLmVuZC5saW5lKSB7XG4gICAgICAgICAgY29sdW1uID0gMFxuICAgICAgICB9XG5cbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIGxvYzoge1xuICAgICAgICAgICAgbGluZTogbm9kZS5sb2MuZW5kLmxpbmUsXG4gICAgICAgICAgICBjb2x1bW4sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtZXNzYWdlOiBgRXhwZWN0ZWQgJHtvcHRpb25zLmNvdW50fSBlbXB0eSBsaW5lJHtvcHRpb25zLmNvdW50ID4gMSA/ICdzJyA6ICcnfSBcXFxuYWZ0ZXIgJHt0eXBlfSBzdGF0ZW1lbnQgbm90IGZvbGxvd2VkIGJ5IGFub3RoZXIgJHt0eXBlfS5gLFxuICAgICAgICAgIGZpeDogZml4ZXIgPT4gZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKFxuICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICdcXG4nLnJlcGVhdChFWFBFQ1RFRF9MSU5FX0RJRkZFUkVOQ0UgLSBsaW5lRGlmZmVyZW5jZSlcbiAgICAgICAgICApLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGluY3JlbWVudExldmVsKCkge1xuICAgICAgbGV2ZWwrK1xuICAgIH1cbiAgICBmdW5jdGlvbiBkZWNyZW1lbnRMZXZlbCgpIHtcbiAgICAgIGxldmVsLS1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjaGVja0ltcG9ydChub2RlKSB7XG4gICAgICAgIGNvbnN0IHsgcGFyZW50IH0gPSBub2RlXG4gICAgICAgIGNvbnN0IG5vZGVQb3NpdGlvbiA9IHBhcmVudC5ib2R5LmluZGV4T2Yobm9kZSlcbiAgICAgICAgY29uc3QgbmV4dE5vZGUgPSBwYXJlbnQuYm9keVtub2RlUG9zaXRpb24gKyAxXVxuICAgICAgICBcbiAgICAgICAgLy8gc2tpcCBcImV4cG9ydCBpbXBvcnRcInNcbiAgICAgICAgaWYgKG5vZGUudHlwZSA9PT0gJ1RTSW1wb3J0RXF1YWxzRGVjbGFyYXRpb24nICYmIG5vZGUuaXNFeHBvcnQpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuZXh0Tm9kZSAmJiBuZXh0Tm9kZS50eXBlICE9PSAnSW1wb3J0RGVjbGFyYXRpb24nICYmIChuZXh0Tm9kZS50eXBlICE9PSAnVFNJbXBvcnRFcXVhbHNEZWNsYXJhdGlvbicgfHwgbmV4dE5vZGUuaXNFeHBvcnQpKSB7XG4gICAgICAgICAgY2hlY2tGb3JOZXdMaW5lKG5vZGUsIG5leHROb2RlLCAnaW1wb3J0JylcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbjogY2hlY2tJbXBvcnQsXG4gICAgICBUU0ltcG9ydEVxdWFsc0RlY2xhcmF0aW9uOiBjaGVja0ltcG9ydCxcbiAgICAgIENhbGxFeHByZXNzaW9uOiBmdW5jdGlvbihub2RlKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY1JlcXVpcmUobm9kZSkgJiYgbGV2ZWwgPT09IDApIHtcbiAgICAgICAgICByZXF1aXJlQ2FsbHMucHVzaChub2RlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgJ1Byb2dyYW06ZXhpdCc6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbG9nKCdleGl0IHByb2Nlc3NpbmcgZm9yJywgY29udGV4dC5nZXRGaWxlbmFtZSgpKVxuICAgICAgICBjb25zdCBzY29wZUJvZHkgPSBnZXRTY29wZUJvZHkoY29udGV4dC5nZXRTY29wZSgpKVxuICAgICAgICBsb2coJ2dvdCBzY29wZTonLCBzY29wZUJvZHkpXG5cbiAgICAgICAgcmVxdWlyZUNhbGxzLmZvckVhY2goZnVuY3Rpb24gKG5vZGUsIGluZGV4KSB7XG4gICAgICAgICAgY29uc3Qgbm9kZVBvc2l0aW9uID0gZmluZE5vZGVJbmRleEluU2NvcGVCb2R5KHNjb3BlQm9keSwgbm9kZSlcbiAgICAgICAgICBsb2coJ25vZGUgcG9zaXRpb24gaW4gc2NvcGU6Jywgbm9kZVBvc2l0aW9uKVxuXG4gICAgICAgICAgY29uc3Qgc3RhdGVtZW50V2l0aFJlcXVpcmVDYWxsID0gc2NvcGVCb2R5W25vZGVQb3NpdGlvbl1cbiAgICAgICAgICBjb25zdCBuZXh0U3RhdGVtZW50ID0gc2NvcGVCb2R5W25vZGVQb3NpdGlvbiArIDFdXG4gICAgICAgICAgY29uc3QgbmV4dFJlcXVpcmVDYWxsID0gcmVxdWlyZUNhbGxzW2luZGV4ICsgMV1cblxuICAgICAgICAgIGlmIChuZXh0UmVxdWlyZUNhbGwgJiYgY29udGFpbnNOb2RlT3JFcXVhbChzdGF0ZW1lbnRXaXRoUmVxdWlyZUNhbGwsIG5leHRSZXF1aXJlQ2FsbCkpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChuZXh0U3RhdGVtZW50ICYmXG4gICAgICAgICAgICAgKCFuZXh0UmVxdWlyZUNhbGwgfHwgIWNvbnRhaW5zTm9kZU9yRXF1YWwobmV4dFN0YXRlbWVudCwgbmV4dFJlcXVpcmVDYWxsKSkpIHtcblxuICAgICAgICAgICAgY2hlY2tGb3JOZXdMaW5lKHN0YXRlbWVudFdpdGhSZXF1aXJlQ2FsbCwgbmV4dFN0YXRlbWVudCwgJ3JlcXVpcmUnKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgICBGdW5jdGlvbkRlY2xhcmF0aW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIEZ1bmN0aW9uRXhwcmVzc2lvbjogaW5jcmVtZW50TGV2ZWwsXG4gICAgICBBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbjogaW5jcmVtZW50TGV2ZWwsXG4gICAgICBCbG9ja1N0YXRlbWVudDogaW5jcmVtZW50TGV2ZWwsXG4gICAgICBPYmplY3RFeHByZXNzaW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIERlY29yYXRvcjogaW5jcmVtZW50TGV2ZWwsXG4gICAgICAnRnVuY3Rpb25EZWNsYXJhdGlvbjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgICAnRnVuY3Rpb25FeHByZXNzaW9uOmV4aXQnOiBkZWNyZW1lbnRMZXZlbCxcbiAgICAgICdBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgICAnQmxvY2tTdGF0ZW1lbnQ6ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ09iamVjdEV4cHJlc3Npb246ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ0RlY29yYXRvcjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-absolute-path.js b/node_modules/eslint-plugin-import/lib/rules/no-absolute-path.js index 3a920cd4..ff1cb22c 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-absolute-path.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-absolute-path.js @@ -1,25 +1,15 @@ -'use strict'; - -var _moduleVisitor = require('eslint-module-utils/moduleVisitor'); - -var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); - +'use strict';var _moduleVisitor = require('eslint-module-utils/moduleVisitor');var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); var _importType = require('../core/importType'); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-absolute-path') - }, - schema: [(0, _moduleVisitor.makeOptionsSchema)()] - }, + url: (0, _docsUrl2.default)('no-absolute-path') }, + + schema: [(0, _moduleVisitor.makeOptionsSchema)()] }, + create: function (context) { function reportIfAbsolute(source) { @@ -30,6 +20,5 @@ module.exports = { const options = Object.assign({ esmodule: true, commonjs: true }, context.options[0]); return (0, _moduleVisitor2.default)(reportIfAbsolute, options); - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1hYnNvbHV0ZS1wYXRoLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwicmVwb3J0SWZBYnNvbHV0ZSIsInNvdXJjZSIsInZhbHVlIiwicmVwb3J0Iiwib3B0aW9ucyIsIk9iamVjdCIsImFzc2lnbiIsImVzbW9kdWxlIiwiY29tbW9uanMiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7QUFDQTs7QUFDQTs7Ozs7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLGtCQUFSO0FBREQsS0FGRjtBQUtKQyxZQUFRLENBQUUsdUNBQUY7QUFMSixHQURTOztBQVNmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7QUFDekIsYUFBU0MsZ0JBQVQsQ0FBMEJDLE1BQTFCLEVBQWtDO0FBQ2hDLFVBQUksT0FBT0EsT0FBT0MsS0FBZCxLQUF3QixRQUF4QixJQUFvQyw0QkFBV0QsT0FBT0MsS0FBbEIsQ0FBeEMsRUFBa0U7QUFDaEVILGdCQUFRSSxNQUFSLENBQWVGLE1BQWYsRUFBdUIsOENBQXZCO0FBQ0Q7QUFDRjs7QUFFRCxVQUFNRyxVQUFVQyxPQUFPQyxNQUFQLENBQWMsRUFBRUMsVUFBVSxJQUFaLEVBQWtCQyxVQUFVLElBQTVCLEVBQWQsRUFBa0RULFFBQVFLLE9BQVIsQ0FBZ0IsQ0FBaEIsQ0FBbEQsQ0FBaEI7QUFDQSxXQUFPLDZCQUFjSixnQkFBZCxFQUFnQ0ksT0FBaEMsQ0FBUDtBQUNEO0FBbEJjLENBQWpCIiwiZmlsZSI6Im5vLWFic29sdXRlLXBhdGguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9kdWxlVmlzaXRvciwgeyBtYWtlT3B0aW9uc1NjaGVtYSB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvbW9kdWxlVmlzaXRvcidcbmltcG9ydCB7IGlzQWJzb2x1dGUgfSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWFic29sdXRlLXBhdGgnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogWyBtYWtlT3B0aW9uc1NjaGVtYSgpIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGZ1bmN0aW9uIHJlcG9ydElmQWJzb2x1dGUoc291cmNlKSB7XG4gICAgICBpZiAodHlwZW9mIHNvdXJjZS52YWx1ZSA9PT0gJ3N0cmluZycgJiYgaXNBYnNvbHV0ZShzb3VyY2UudmFsdWUpKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHNvdXJjZSwgJ0RvIG5vdCBpbXBvcnQgbW9kdWxlcyB1c2luZyBhbiBhYnNvbHV0ZSBwYXRoJylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7IGVzbW9kdWxlOiB0cnVlLCBjb21tb25qczogdHJ1ZSB9LCBjb250ZXh0Lm9wdGlvbnNbMF0pXG4gICAgcmV0dXJuIG1vZHVsZVZpc2l0b3IocmVwb3J0SWZBYnNvbHV0ZSwgb3B0aW9ucylcbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1hYnNvbHV0ZS1wYXRoLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwicmVwb3J0SWZBYnNvbHV0ZSIsInNvdXJjZSIsInZhbHVlIiwicmVwb3J0Iiwib3B0aW9ucyIsIk9iamVjdCIsImFzc2lnbiIsImVzbW9kdWxlIiwiY29tbW9uanMiXSwibWFwcGluZ3MiOiJhQUFBLGtFO0FBQ0E7QUFDQSxxQzs7QUFFQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsa0JBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLENBQUUsdUNBQUYsQ0FMSixFQURTOzs7QUFTZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLGFBQVNDLGdCQUFULENBQTBCQyxNQUExQixFQUFrQztBQUNoQyxVQUFJLE9BQU9BLE9BQU9DLEtBQWQsS0FBd0IsUUFBeEIsSUFBb0MsNEJBQVdELE9BQU9DLEtBQWxCLENBQXhDLEVBQWtFO0FBQ2hFSCxnQkFBUUksTUFBUixDQUFlRixNQUFmLEVBQXVCLDhDQUF2QjtBQUNEO0FBQ0Y7O0FBRUQsVUFBTUcsVUFBVUMsT0FBT0MsTUFBUCxDQUFjLEVBQUVDLFVBQVUsSUFBWixFQUFrQkMsVUFBVSxJQUE1QixFQUFkLEVBQWtEVCxRQUFRSyxPQUFSLENBQWdCLENBQWhCLENBQWxELENBQWhCO0FBQ0EsV0FBTyw2QkFBY0osZ0JBQWQsRUFBZ0NJLE9BQWhDLENBQVA7QUFDRCxHQWxCYyxFQUFqQiIsImZpbGUiOiJuby1hYnNvbHV0ZS1wYXRoLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1vZHVsZVZpc2l0b3IsIHsgbWFrZU9wdGlvbnNTY2hlbWEgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL21vZHVsZVZpc2l0b3InXG5pbXBvcnQgeyBpc0Fic29sdXRlIH0gZnJvbSAnLi4vY29yZS9pbXBvcnRUeXBlJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1hYnNvbHV0ZS1wYXRoJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFsgbWFrZU9wdGlvbnNTY2hlbWEoKSBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBmdW5jdGlvbiByZXBvcnRJZkFic29sdXRlKHNvdXJjZSkge1xuICAgICAgaWYgKHR5cGVvZiBzb3VyY2UudmFsdWUgPT09ICdzdHJpbmcnICYmIGlzQWJzb2x1dGUoc291cmNlLnZhbHVlKSkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydChzb3VyY2UsICdEbyBub3QgaW1wb3J0IG1vZHVsZXMgdXNpbmcgYW4gYWJzb2x1dGUgcGF0aCcpXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oeyBlc21vZHVsZTogdHJ1ZSwgY29tbW9uanM6IHRydWUgfSwgY29udGV4dC5vcHRpb25zWzBdKVxuICAgIHJldHVybiBtb2R1bGVWaXNpdG9yKHJlcG9ydElmQWJzb2x1dGUsIG9wdGlvbnMpXG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-amd.js b/node_modules/eslint-plugin-import/lib/rules/no-amd.js index 90897f1a..4eca3f46 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-amd.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-amd.js @@ -1,10 +1,9 @@ 'use strict'; -var _docsUrl = require('../docsUrl'); -var _docsUrl2 = _interopRequireDefault(_docsUrl); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} //------------------------------------------------------------------------------ // Rule Definition @@ -14,10 +13,10 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-amd') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-amd') }, + + schema: [] }, + create: function (context) { return { @@ -25,7 +24,8 @@ module.exports = { if (context.getScope().type !== 'module') return; if (node.callee.type !== 'Identifier') return; - if (node.callee.name !== 'require' && node.callee.name !== 'define') return; + if (node.callee.name !== 'require' && + node.callee.name !== 'define') return; // todo: capture define((require, module, exports) => {}) form? if (node.arguments.length !== 2) return; @@ -36,11 +36,11 @@ module.exports = { // todo: check second arg type? (identifier or callback) context.report(node, `Expected imports instead of AMD ${node.callee.name}().`); - } - }; - } -}; /** - * @fileoverview Rule to prefer imports to AMD - * @author Jamund Ferguson - */ -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1hbWQuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJub2RlIiwiZ2V0U2NvcGUiLCJjYWxsZWUiLCJuYW1lIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwibW9kdWxlcyIsInJlcG9ydCJdLCJtYXBwaW5ncyI6Ijs7QUFLQTs7Ozs7O0FBRUE7QUFDQTtBQUNBOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxRQUFSO0FBREQsS0FGRjtBQUtKQyxZQUFRO0FBTEosR0FEUzs7QUFTZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLFdBQU87QUFDTCx3QkFBa0IsVUFBVUMsSUFBVixFQUFnQjtBQUNoQyxZQUFJRCxRQUFRRSxRQUFSLEdBQW1CUCxJQUFuQixLQUE0QixRQUFoQyxFQUEwQzs7QUFFMUMsWUFBSU0sS0FBS0UsTUFBTCxDQUFZUixJQUFaLEtBQXFCLFlBQXpCLEVBQXVDO0FBQ3ZDLFlBQUlNLEtBQUtFLE1BQUwsQ0FBWUMsSUFBWixLQUFxQixTQUFyQixJQUNBSCxLQUFLRSxNQUFMLENBQVlDLElBQVosS0FBcUIsUUFEekIsRUFDbUM7O0FBRW5DO0FBQ0EsWUFBSUgsS0FBS0ksU0FBTCxDQUFlQyxNQUFmLEtBQTBCLENBQTlCLEVBQWlDOztBQUVqQyxjQUFNQyxVQUFVTixLQUFLSSxTQUFMLENBQWUsQ0FBZixDQUFoQjtBQUNBLFlBQUlFLFFBQVFaLElBQVIsS0FBaUIsaUJBQXJCLEVBQXdDOztBQUV4Qzs7QUFFQUssZ0JBQVFRLE1BQVIsQ0FBZVAsSUFBZixFQUFzQixtQ0FBa0NBLEtBQUtFLE1BQUwsQ0FBWUMsSUFBSyxLQUF6RTtBQUNEO0FBakJJLEtBQVA7QUFvQkQ7QUE5QmMsQ0FBakIsQyxDQVhBIiwiZmlsZSI6Im5vLWFtZC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIHByZWZlciBpbXBvcnRzIHRvIEFNRFxuICogQGF1dGhvciBKYW11bmQgRmVyZ3Vzb25cbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUnVsZSBEZWZpbml0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWFtZCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdDYWxsRXhwcmVzc2lvbic6IGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIGlmIChjb250ZXh0LmdldFNjb3BlKCkudHlwZSAhPT0gJ21vZHVsZScpIHJldHVyblxuXG4gICAgICAgIGlmIChub2RlLmNhbGxlZS50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAobm9kZS5jYWxsZWUubmFtZSAhPT0gJ3JlcXVpcmUnICYmXG4gICAgICAgICAgICBub2RlLmNhbGxlZS5uYW1lICE9PSAnZGVmaW5lJykgcmV0dXJuXG5cbiAgICAgICAgLy8gdG9kbzogY2FwdHVyZSBkZWZpbmUoKHJlcXVpcmUsIG1vZHVsZSwgZXhwb3J0cykgPT4ge30pIGZvcm0/XG4gICAgICAgIGlmIChub2RlLmFyZ3VtZW50cy5sZW5ndGggIT09IDIpIHJldHVyblxuXG4gICAgICAgIGNvbnN0IG1vZHVsZXMgPSBub2RlLmFyZ3VtZW50c1swXVxuICAgICAgICBpZiAobW9kdWxlcy50eXBlICE9PSAnQXJyYXlFeHByZXNzaW9uJykgcmV0dXJuXG5cbiAgICAgICAgLy8gdG9kbzogY2hlY2sgc2Vjb25kIGFyZyB0eXBlPyAoaWRlbnRpZmllciBvciBjYWxsYmFjaylcblxuICAgICAgICBjb250ZXh0LnJlcG9ydChub2RlLCBgRXhwZWN0ZWQgaW1wb3J0cyBpbnN0ZWFkIG9mIEFNRCAke25vZGUuY2FsbGVlLm5hbWV9KCkuYClcbiAgICAgIH0sXG4gICAgfVxuXG4gIH0sXG59XG4iXX0= \ No newline at end of file + } }; + + + } }; /** + * @fileoverview Rule to prefer imports to AMD + * @author Jamund Ferguson + */ +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1hbWQuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJub2RlIiwiZ2V0U2NvcGUiLCJjYWxsZWUiLCJuYW1lIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwibW9kdWxlcyIsInJlcG9ydCJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSxxQzs7QUFFQTtBQUNBO0FBQ0E7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLFFBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLEVBTEosRUFEUzs7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixXQUFPO0FBQ0wsd0JBQWtCLFVBQVVDLElBQVYsRUFBZ0I7QUFDaEMsWUFBSUQsUUFBUUUsUUFBUixHQUFtQlAsSUFBbkIsS0FBNEIsUUFBaEMsRUFBMEM7O0FBRTFDLFlBQUlNLEtBQUtFLE1BQUwsQ0FBWVIsSUFBWixLQUFxQixZQUF6QixFQUF1QztBQUN2QyxZQUFJTSxLQUFLRSxNQUFMLENBQVlDLElBQVosS0FBcUIsU0FBckI7QUFDQUgsYUFBS0UsTUFBTCxDQUFZQyxJQUFaLEtBQXFCLFFBRHpCLEVBQ21DOztBQUVuQztBQUNBLFlBQUlILEtBQUtJLFNBQUwsQ0FBZUMsTUFBZixLQUEwQixDQUE5QixFQUFpQzs7QUFFakMsY0FBTUMsVUFBVU4sS0FBS0ksU0FBTCxDQUFlLENBQWYsQ0FBaEI7QUFDQSxZQUFJRSxRQUFRWixJQUFSLEtBQWlCLGlCQUFyQixFQUF3Qzs7QUFFeEM7O0FBRUFLLGdCQUFRUSxNQUFSLENBQWVQLElBQWYsRUFBc0IsbUNBQWtDQSxLQUFLRSxNQUFMLENBQVlDLElBQUssS0FBekU7QUFDRCxPQWpCSSxFQUFQOzs7QUFvQkQsR0E5QmMsRUFBakIsQyxDQVhBIiwiZmlsZSI6Im5vLWFtZC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIHByZWZlciBpbXBvcnRzIHRvIEFNRFxuICogQGF1dGhvciBKYW11bmQgRmVyZ3Vzb25cbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUnVsZSBEZWZpbml0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWFtZCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdDYWxsRXhwcmVzc2lvbic6IGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIGlmIChjb250ZXh0LmdldFNjb3BlKCkudHlwZSAhPT0gJ21vZHVsZScpIHJldHVyblxuXG4gICAgICAgIGlmIChub2RlLmNhbGxlZS50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAobm9kZS5jYWxsZWUubmFtZSAhPT0gJ3JlcXVpcmUnICYmXG4gICAgICAgICAgICBub2RlLmNhbGxlZS5uYW1lICE9PSAnZGVmaW5lJykgcmV0dXJuXG5cbiAgICAgICAgLy8gdG9kbzogY2FwdHVyZSBkZWZpbmUoKHJlcXVpcmUsIG1vZHVsZSwgZXhwb3J0cykgPT4ge30pIGZvcm0/XG4gICAgICAgIGlmIChub2RlLmFyZ3VtZW50cy5sZW5ndGggIT09IDIpIHJldHVyblxuXG4gICAgICAgIGNvbnN0IG1vZHVsZXMgPSBub2RlLmFyZ3VtZW50c1swXVxuICAgICAgICBpZiAobW9kdWxlcy50eXBlICE9PSAnQXJyYXlFeHByZXNzaW9uJykgcmV0dXJuXG5cbiAgICAgICAgLy8gdG9kbzogY2hlY2sgc2Vjb25kIGFyZyB0eXBlPyAoaWRlbnRpZmllciBvciBjYWxsYmFjaylcblxuICAgICAgICBjb250ZXh0LnJlcG9ydChub2RlLCBgRXhwZWN0ZWQgaW1wb3J0cyBpbnN0ZWFkIG9mIEFNRCAke25vZGUuY2FsbGVlLm5hbWV9KCkuYClcbiAgICAgIH0sXG4gICAgfVxuXG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-anonymous-default-export.js b/node_modules/eslint-plugin-import/lib/rules/no-anonymous-default-export.js index f9ac0d0a..0c2b7dac 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-anonymous-default-export.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-anonymous-default-export.js @@ -1,76 +1,71 @@ 'use strict'; -var _docsUrl = require('../docsUrl'); -var _docsUrl2 = _interopRequireDefault(_docsUrl); -var _has = require('has'); -var _has2 = _interopRequireDefault(_has); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/** - * @fileoverview Rule to disallow anonymous default exports. - * @author Duncan Beevers - */ - -const defs = { - ArrayExpression: { +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); +var _has = require('has');var _has2 = _interopRequireDefault(_has);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} /** + * @fileoverview Rule to disallow anonymous default exports. + * @author Duncan Beevers + */const defs = { ArrayExpression: { option: 'allowArray', description: 'If `false`, will report default export of an array', - message: 'Assign array to a variable before exporting as module default' - }, + message: 'Assign array to a variable before exporting as module default' }, + ArrowFunctionExpression: { option: 'allowArrowFunction', description: 'If `false`, will report default export of an arrow function', - message: 'Assign arrow function to a variable before exporting as module default' - }, + message: 'Assign arrow function to a variable before exporting as module default' }, + CallExpression: { option: 'allowCallExpression', description: 'If `false`, will report default export of a function call', message: 'Assign call result to a variable before exporting as module default', - default: true - }, + default: true }, + ClassDeclaration: { option: 'allowAnonymousClass', description: 'If `false`, will report default export of an anonymous class', message: 'Unexpected default export of anonymous class', - forbid: node => !node.declaration.id - }, + forbid: node => !node.declaration.id }, + FunctionDeclaration: { option: 'allowAnonymousFunction', description: 'If `false`, will report default export of an anonymous function', message: 'Unexpected default export of anonymous function', - forbid: node => !node.declaration.id - }, + forbid: node => !node.declaration.id }, + Literal: { option: 'allowLiteral', description: 'If `false`, will report default export of a literal', - message: 'Assign literal to a variable before exporting as module default' - }, + message: 'Assign literal to a variable before exporting as module default' }, + ObjectExpression: { option: 'allowObject', description: 'If `false`, will report default export of an object expression', - message: 'Assign object to a variable before exporting as module default' - }, + message: 'Assign object to a variable before exporting as module default' }, + TemplateLiteral: { option: 'allowLiteral', description: 'If `false`, will report default export of a literal', - message: 'Assign literal to a variable before exporting as module default' - } -}; + message: 'Assign literal to a variable before exporting as module default' } }; -const schemaProperties = Object.keys(defs).map(key => defs[key]).reduce((acc, def) => { + + +const schemaProperties = Object.keys(defs). +map(key => defs[key]). +reduce((acc, def) => { acc[def.option] = { description: def.description, - type: 'boolean' - }; + type: 'boolean' }; + return acc; }, {}); -const defaults = Object.keys(defs).map(key => defs[key]).reduce((acc, def) => { +const defaults = Object.keys(defs). +map(key => defs[key]). +reduce((acc, def) => { acc[def.option] = (0, _has2.default)(def, 'default') ? def.default : false; return acc; }, {}); @@ -79,15 +74,17 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-anonymous-default-export') - }, + url: (0, _docsUrl2.default)('no-anonymous-default-export') }, - schema: [{ + + schema: [ + { type: 'object', properties: schemaProperties, - 'additionalProperties': false - }] - }, + 'additionalProperties': false }] }, + + + create: function (context) { const options = Object.assign({}, defaults, context.options[0]); @@ -101,8 +98,7 @@ module.exports = { if (def && !options[def.option] && (!def.forbid || def.forbid(node))) { context.report({ node, message: def.message }); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1hbm9ueW1vdXMtZGVmYXVsdC1leHBvcnQuanMiXSwibmFtZXMiOlsiZGVmcyIsIkFycmF5RXhwcmVzc2lvbiIsIm9wdGlvbiIsImRlc2NyaXB0aW9uIiwibWVzc2FnZSIsIkFycm93RnVuY3Rpb25FeHByZXNzaW9uIiwiQ2FsbEV4cHJlc3Npb24iLCJkZWZhdWx0IiwiQ2xhc3NEZWNsYXJhdGlvbiIsImZvcmJpZCIsIm5vZGUiLCJkZWNsYXJhdGlvbiIsImlkIiwiRnVuY3Rpb25EZWNsYXJhdGlvbiIsIkxpdGVyYWwiLCJPYmplY3RFeHByZXNzaW9uIiwiVGVtcGxhdGVMaXRlcmFsIiwic2NoZW1hUHJvcGVydGllcyIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJrZXkiLCJyZWR1Y2UiLCJhY2MiLCJkZWYiLCJ0eXBlIiwiZGVmYXVsdHMiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiY3JlYXRlIiwiY29udGV4dCIsIm9wdGlvbnMiLCJhc3NpZ24iLCJyZXBvcnQiXSwibWFwcGluZ3MiOiI7O0FBS0E7Ozs7QUFDQTs7Ozs7O0FBTkE7Ozs7O0FBUUEsTUFBTUEsT0FBTztBQUNYQyxtQkFBaUI7QUFDZkMsWUFBUSxZQURPO0FBRWZDLGlCQUFhLG9EQUZFO0FBR2ZDLGFBQVM7QUFITSxHQUROO0FBTVhDLDJCQUF5QjtBQUN2QkgsWUFBUSxvQkFEZTtBQUV2QkMsaUJBQWEsNkRBRlU7QUFHdkJDLGFBQVM7QUFIYyxHQU5kO0FBV1hFLGtCQUFnQjtBQUNkSixZQUFRLHFCQURNO0FBRWRDLGlCQUFhLDJEQUZDO0FBR2RDLGFBQVMscUVBSEs7QUFJZEcsYUFBUztBQUpLLEdBWEw7QUFpQlhDLG9CQUFrQjtBQUNoQk4sWUFBUSxxQkFEUTtBQUVoQkMsaUJBQWEsOERBRkc7QUFHaEJDLGFBQVMsOENBSE87QUFJaEJLLFlBQVNDLElBQUQsSUFBVSxDQUFDQSxLQUFLQyxXQUFMLENBQWlCQztBQUpwQixHQWpCUDtBQXVCWEMsdUJBQXFCO0FBQ25CWCxZQUFRLHdCQURXO0FBRW5CQyxpQkFBYSxpRUFGTTtBQUduQkMsYUFBUyxpREFIVTtBQUluQkssWUFBU0MsSUFBRCxJQUFVLENBQUNBLEtBQUtDLFdBQUwsQ0FBaUJDO0FBSmpCLEdBdkJWO0FBNkJYRSxXQUFTO0FBQ1BaLFlBQVEsY0FERDtBQUVQQyxpQkFBYSxxREFGTjtBQUdQQyxhQUFTO0FBSEYsR0E3QkU7QUFrQ1hXLG9CQUFrQjtBQUNoQmIsWUFBUSxhQURRO0FBRWhCQyxpQkFBYSxnRUFGRztBQUdoQkMsYUFBUztBQUhPLEdBbENQO0FBdUNYWSxtQkFBaUI7QUFDZmQsWUFBUSxjQURPO0FBRWZDLGlCQUFhLHFEQUZFO0FBR2ZDLGFBQVM7QUFITTtBQXZDTixDQUFiOztBQThDQSxNQUFNYSxtQkFBbUJDLE9BQU9DLElBQVAsQ0FBWW5CLElBQVosRUFDdEJvQixHQURzQixDQUNqQkMsR0FBRCxJQUFTckIsS0FBS3FCLEdBQUwsQ0FEUyxFQUV0QkMsTUFGc0IsQ0FFZixDQUFDQyxHQUFELEVBQU1DLEdBQU4sS0FBYztBQUNwQkQsTUFBSUMsSUFBSXRCLE1BQVIsSUFBa0I7QUFDaEJDLGlCQUFhcUIsSUFBSXJCLFdBREQ7QUFFaEJzQixVQUFNO0FBRlUsR0FBbEI7O0FBS0EsU0FBT0YsR0FBUDtBQUNELENBVHNCLEVBU3BCLEVBVG9CLENBQXpCOztBQVdBLE1BQU1HLFdBQVdSLE9BQU9DLElBQVAsQ0FBWW5CLElBQVosRUFDZG9CLEdBRGMsQ0FDVEMsR0FBRCxJQUFTckIsS0FBS3FCLEdBQUwsQ0FEQyxFQUVkQyxNQUZjLENBRVAsQ0FBQ0MsR0FBRCxFQUFNQyxHQUFOLEtBQWM7QUFDcEJELE1BQUlDLElBQUl0QixNQUFSLElBQWtCLG1CQUFJc0IsR0FBSixFQUFTLFNBQVQsSUFBc0JBLElBQUlqQixPQUExQixHQUFvQyxLQUF0RDtBQUNBLFNBQU9nQixHQUFQO0FBQ0QsQ0FMYyxFQUtaLEVBTFksQ0FBakI7O0FBT0FJLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKSixVQUFNLFlBREY7QUFFSkssVUFBTTtBQUNKQyxXQUFLLHVCQUFRLDZCQUFSO0FBREQsS0FGRjs7QUFNSkMsWUFBUSxDQUNOO0FBQ0VQLFlBQU0sUUFEUjtBQUVFUSxrQkFBWWhCLGdCQUZkO0FBR0UsOEJBQXdCO0FBSDFCLEtBRE07QUFOSixHQURTOztBQWdCZmlCLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixVQUFNQyxVQUFVbEIsT0FBT21CLE1BQVAsQ0FBYyxFQUFkLEVBQWtCWCxRQUFsQixFQUE0QlMsUUFBUUMsT0FBUixDQUFnQixDQUFoQixDQUE1QixDQUFoQjs7QUFFQSxXQUFPO0FBQ0wsa0NBQTZCMUIsSUFBRCxJQUFVO0FBQ3BDLGNBQU1jLE1BQU14QixLQUFLVSxLQUFLQyxXQUFMLENBQWlCYyxJQUF0QixDQUFaOztBQUVBO0FBQ0E7QUFDQSxZQUFJRCxPQUFPLENBQUNZLFFBQVFaLElBQUl0QixNQUFaLENBQVIsS0FBZ0MsQ0FBQ3NCLElBQUlmLE1BQUwsSUFBZWUsSUFBSWYsTUFBSixDQUFXQyxJQUFYLENBQS9DLENBQUosRUFBc0U7QUFDcEV5QixrQkFBUUcsTUFBUixDQUFlLEVBQUU1QixJQUFGLEVBQVFOLFNBQVNvQixJQUFJcEIsT0FBckIsRUFBZjtBQUNEO0FBQ0Y7QUFUSSxLQUFQO0FBV0Q7QUE5QmMsQ0FBakIiLCJmaWxlIjoibm8tYW5vbnltb3VzLWRlZmF1bHQtZXhwb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZW92ZXJ2aWV3IFJ1bGUgdG8gZGlzYWxsb3cgYW5vbnltb3VzIGRlZmF1bHQgZXhwb3J0cy5cbiAqIEBhdXRob3IgRHVuY2FuIEJlZXZlcnNcbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuaW1wb3J0IGhhcyBmcm9tICdoYXMnXG5cbmNvbnN0IGRlZnMgPSB7XG4gIEFycmF5RXhwcmVzc2lvbjoge1xuICAgIG9wdGlvbjogJ2FsbG93QXJyYXknLFxuICAgIGRlc2NyaXB0aW9uOiAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgZGVmYXVsdCBleHBvcnQgb2YgYW4gYXJyYXknLFxuICAgIG1lc3NhZ2U6ICdBc3NpZ24gYXJyYXkgdG8gYSB2YXJpYWJsZSBiZWZvcmUgZXhwb3J0aW5nIGFzIG1vZHVsZSBkZWZhdWx0JyxcbiAgfSxcbiAgQXJyb3dGdW5jdGlvbkV4cHJlc3Npb246IHtcbiAgICBvcHRpb246ICdhbGxvd0Fycm93RnVuY3Rpb24nLFxuICAgIGRlc2NyaXB0aW9uOiAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgZGVmYXVsdCBleHBvcnQgb2YgYW4gYXJyb3cgZnVuY3Rpb24nLFxuICAgIG1lc3NhZ2U6ICdBc3NpZ24gYXJyb3cgZnVuY3Rpb24gdG8gYSB2YXJpYWJsZSBiZWZvcmUgZXhwb3J0aW5nIGFzIG1vZHVsZSBkZWZhdWx0JyxcbiAgfSxcbiAgQ2FsbEV4cHJlc3Npb246IHtcbiAgICBvcHRpb246ICdhbGxvd0NhbGxFeHByZXNzaW9uJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGEgZnVuY3Rpb24gY2FsbCcsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBjYWxsIHJlc3VsdCB0byBhIHZhcmlhYmxlIGJlZm9yZSBleHBvcnRpbmcgYXMgbW9kdWxlIGRlZmF1bHQnLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIENsYXNzRGVjbGFyYXRpb246IHtcbiAgICBvcHRpb246ICdhbGxvd0Fub255bW91c0NsYXNzJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGFuIGFub255bW91cyBjbGFzcycsXG4gICAgbWVzc2FnZTogJ1VuZXhwZWN0ZWQgZGVmYXVsdCBleHBvcnQgb2YgYW5vbnltb3VzIGNsYXNzJyxcbiAgICBmb3JiaWQ6IChub2RlKSA9PiAhbm9kZS5kZWNsYXJhdGlvbi5pZCxcbiAgfSxcbiAgRnVuY3Rpb25EZWNsYXJhdGlvbjoge1xuICAgIG9wdGlvbjogJ2FsbG93QW5vbnltb3VzRnVuY3Rpb24nLFxuICAgIGRlc2NyaXB0aW9uOiAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgZGVmYXVsdCBleHBvcnQgb2YgYW4gYW5vbnltb3VzIGZ1bmN0aW9uJyxcbiAgICBtZXNzYWdlOiAnVW5leHBlY3RlZCBkZWZhdWx0IGV4cG9ydCBvZiBhbm9ueW1vdXMgZnVuY3Rpb24nLFxuICAgIGZvcmJpZDogKG5vZGUpID0+ICFub2RlLmRlY2xhcmF0aW9uLmlkLFxuICB9LFxuICBMaXRlcmFsOiB7XG4gICAgb3B0aW9uOiAnYWxsb3dMaXRlcmFsJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGEgbGl0ZXJhbCcsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBsaXRlcmFsIHRvIGEgdmFyaWFibGUgYmVmb3JlIGV4cG9ydGluZyBhcyBtb2R1bGUgZGVmYXVsdCcsXG4gIH0sXG4gIE9iamVjdEV4cHJlc3Npb246IHtcbiAgICBvcHRpb246ICdhbGxvd09iamVjdCcsXG4gICAgZGVzY3JpcHRpb246ICdJZiBgZmFsc2VgLCB3aWxsIHJlcG9ydCBkZWZhdWx0IGV4cG9ydCBvZiBhbiBvYmplY3QgZXhwcmVzc2lvbicsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBvYmplY3QgdG8gYSB2YXJpYWJsZSBiZWZvcmUgZXhwb3J0aW5nIGFzIG1vZHVsZSBkZWZhdWx0JyxcbiAgfSxcbiAgVGVtcGxhdGVMaXRlcmFsOiB7XG4gICAgb3B0aW9uOiAnYWxsb3dMaXRlcmFsJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGEgbGl0ZXJhbCcsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBsaXRlcmFsIHRvIGEgdmFyaWFibGUgYmVmb3JlIGV4cG9ydGluZyBhcyBtb2R1bGUgZGVmYXVsdCcsXG4gIH0sXG59XG5cbmNvbnN0IHNjaGVtYVByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyhkZWZzKVxuICAubWFwKChrZXkpID0+IGRlZnNba2V5XSlcbiAgLnJlZHVjZSgoYWNjLCBkZWYpID0+IHtcbiAgICBhY2NbZGVmLm9wdGlvbl0gPSB7XG4gICAgICBkZXNjcmlwdGlvbjogZGVmLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH1cblxuICAgIHJldHVybiBhY2NcbiAgfSwge30pXG5cbmNvbnN0IGRlZmF1bHRzID0gT2JqZWN0LmtleXMoZGVmcylcbiAgLm1hcCgoa2V5KSA9PiBkZWZzW2tleV0pXG4gIC5yZWR1Y2UoKGFjYywgZGVmKSA9PiB7XG4gICAgYWNjW2RlZi5vcHRpb25dID0gaGFzKGRlZiwgJ2RlZmF1bHQnKSA/IGRlZi5kZWZhdWx0IDogZmFsc2VcbiAgICByZXR1cm4gYWNjXG4gIH0sIHt9KVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWFub255bW91cy1kZWZhdWx0LWV4cG9ydCcpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgIHByb3BlcnRpZXM6IHNjaGVtYVByb3BlcnRpZXMsXG4gICAgICAgICdhZGRpdGlvbmFsUHJvcGVydGllcyc6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdHMsIGNvbnRleHQub3B0aW9uc1swXSlcblxuICAgIHJldHVybiB7XG4gICAgICAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJzogKG5vZGUpID0+IHtcbiAgICAgICAgY29uc3QgZGVmID0gZGVmc1tub2RlLmRlY2xhcmF0aW9uLnR5cGVdXG5cbiAgICAgICAgLy8gUmVjb2duaXplZCBub2RlIHR5cGUgYW5kIGFsbG93ZWQgYnkgY29uZmlndXJhdGlvbixcbiAgICAgICAgLy8gICBhbmQgaGFzIG5vIGZvcmJpZCBjaGVjaywgb3IgZm9yYmlkIGNoZWNrIHJldHVybiB2YWx1ZSBpcyB0cnV0aHlcbiAgICAgICAgaWYgKGRlZiAmJiAhb3B0aW9uc1tkZWYub3B0aW9uXSAmJiAoIWRlZi5mb3JiaWQgfHwgZGVmLmZvcmJpZChub2RlKSkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7IG5vZGUsIG1lc3NhZ2U6IGRlZi5tZXNzYWdlIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1hbm9ueW1vdXMtZGVmYXVsdC1leHBvcnQuanMiXSwibmFtZXMiOlsiZGVmcyIsIkFycmF5RXhwcmVzc2lvbiIsIm9wdGlvbiIsImRlc2NyaXB0aW9uIiwibWVzc2FnZSIsIkFycm93RnVuY3Rpb25FeHByZXNzaW9uIiwiQ2FsbEV4cHJlc3Npb24iLCJkZWZhdWx0IiwiQ2xhc3NEZWNsYXJhdGlvbiIsImZvcmJpZCIsIm5vZGUiLCJkZWNsYXJhdGlvbiIsImlkIiwiRnVuY3Rpb25EZWNsYXJhdGlvbiIsIkxpdGVyYWwiLCJPYmplY3RFeHByZXNzaW9uIiwiVGVtcGxhdGVMaXRlcmFsIiwic2NoZW1hUHJvcGVydGllcyIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJrZXkiLCJyZWR1Y2UiLCJhY2MiLCJkZWYiLCJ0eXBlIiwiZGVmYXVsdHMiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiY3JlYXRlIiwiY29udGV4dCIsIm9wdGlvbnMiLCJhc3NpZ24iLCJyZXBvcnQiXSwibWFwcGluZ3MiOiI7Ozs7O0FBS0EscUM7QUFDQSwwQix1SUFOQTs7O29LQVFBLE1BQU1BLE9BQU8sRUFDWEMsaUJBQWlCO0FBQ2ZDLFlBQVEsWUFETztBQUVmQyxpQkFBYSxvREFGRTtBQUdmQyxhQUFTLCtEQUhNLEVBRE47O0FBTVhDLDJCQUF5QjtBQUN2QkgsWUFBUSxvQkFEZTtBQUV2QkMsaUJBQWEsNkRBRlU7QUFHdkJDLGFBQVMsd0VBSGMsRUFOZDs7QUFXWEUsa0JBQWdCO0FBQ2RKLFlBQVEscUJBRE07QUFFZEMsaUJBQWEsMkRBRkM7QUFHZEMsYUFBUyxxRUFISztBQUlkRyxhQUFTLElBSkssRUFYTDs7QUFpQlhDLG9CQUFrQjtBQUNoQk4sWUFBUSxxQkFEUTtBQUVoQkMsaUJBQWEsOERBRkc7QUFHaEJDLGFBQVMsOENBSE87QUFJaEJLLFlBQVNDLElBQUQsSUFBVSxDQUFDQSxLQUFLQyxXQUFMLENBQWlCQyxFQUpwQixFQWpCUDs7QUF1QlhDLHVCQUFxQjtBQUNuQlgsWUFBUSx3QkFEVztBQUVuQkMsaUJBQWEsaUVBRk07QUFHbkJDLGFBQVMsaURBSFU7QUFJbkJLLFlBQVNDLElBQUQsSUFBVSxDQUFDQSxLQUFLQyxXQUFMLENBQWlCQyxFQUpqQixFQXZCVjs7QUE2QlhFLFdBQVM7QUFDUFosWUFBUSxjQUREO0FBRVBDLGlCQUFhLHFEQUZOO0FBR1BDLGFBQVMsaUVBSEYsRUE3QkU7O0FBa0NYVyxvQkFBa0I7QUFDaEJiLFlBQVEsYUFEUTtBQUVoQkMsaUJBQWEsZ0VBRkc7QUFHaEJDLGFBQVMsZ0VBSE8sRUFsQ1A7O0FBdUNYWSxtQkFBaUI7QUFDZmQsWUFBUSxjQURPO0FBRWZDLGlCQUFhLHFEQUZFO0FBR2ZDLGFBQVMsaUVBSE0sRUF2Q04sRUFBYjs7OztBQThDQSxNQUFNYSxtQkFBbUJDLE9BQU9DLElBQVAsQ0FBWW5CLElBQVo7QUFDdEJvQixHQURzQixDQUNqQkMsR0FBRCxJQUFTckIsS0FBS3FCLEdBQUwsQ0FEUztBQUV0QkMsTUFGc0IsQ0FFZixDQUFDQyxHQUFELEVBQU1DLEdBQU4sS0FBYztBQUNwQkQsTUFBSUMsSUFBSXRCLE1BQVIsSUFBa0I7QUFDaEJDLGlCQUFhcUIsSUFBSXJCLFdBREQ7QUFFaEJzQixVQUFNLFNBRlUsRUFBbEI7OztBQUtBLFNBQU9GLEdBQVA7QUFDRCxDQVRzQixFQVNwQixFQVRvQixDQUF6Qjs7QUFXQSxNQUFNRyxXQUFXUixPQUFPQyxJQUFQLENBQVluQixJQUFaO0FBQ2RvQixHQURjLENBQ1RDLEdBQUQsSUFBU3JCLEtBQUtxQixHQUFMLENBREM7QUFFZEMsTUFGYyxDQUVQLENBQUNDLEdBQUQsRUFBTUMsR0FBTixLQUFjO0FBQ3BCRCxNQUFJQyxJQUFJdEIsTUFBUixJQUFrQixtQkFBSXNCLEdBQUosRUFBUyxTQUFULElBQXNCQSxJQUFJakIsT0FBMUIsR0FBb0MsS0FBdEQ7QUFDQSxTQUFPZ0IsR0FBUDtBQUNELENBTGMsRUFLWixFQUxZLENBQWpCOztBQU9BSSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkosVUFBTSxZQURGO0FBRUpLLFVBQU07QUFDSkMsV0FBSyx1QkFBUSw2QkFBUixDQURELEVBRkY7OztBQU1KQyxZQUFRO0FBQ047QUFDRVAsWUFBTSxRQURSO0FBRUVRLGtCQUFZaEIsZ0JBRmQ7QUFHRSw4QkFBd0IsS0FIMUIsRUFETSxDQU5KLEVBRFM7Ozs7O0FBZ0JmaUIsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLFVBQU1DLFVBQVVsQixPQUFPbUIsTUFBUCxDQUFjLEVBQWQsRUFBa0JYLFFBQWxCLEVBQTRCUyxRQUFRQyxPQUFSLENBQWdCLENBQWhCLENBQTVCLENBQWhCOztBQUVBLFdBQU87QUFDTCxrQ0FBNkIxQixJQUFELElBQVU7QUFDcEMsY0FBTWMsTUFBTXhCLEtBQUtVLEtBQUtDLFdBQUwsQ0FBaUJjLElBQXRCLENBQVo7O0FBRUE7QUFDQTtBQUNBLFlBQUlELE9BQU8sQ0FBQ1ksUUFBUVosSUFBSXRCLE1BQVosQ0FBUixLQUFnQyxDQUFDc0IsSUFBSWYsTUFBTCxJQUFlZSxJQUFJZixNQUFKLENBQVdDLElBQVgsQ0FBL0MsQ0FBSixFQUFzRTtBQUNwRXlCLGtCQUFRRyxNQUFSLENBQWUsRUFBRTVCLElBQUYsRUFBUU4sU0FBU29CLElBQUlwQixPQUFyQixFQUFmO0FBQ0Q7QUFDRixPQVRJLEVBQVA7O0FBV0QsR0E5QmMsRUFBakIiLCJmaWxlIjoibm8tYW5vbnltb3VzLWRlZmF1bHQtZXhwb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZW92ZXJ2aWV3IFJ1bGUgdG8gZGlzYWxsb3cgYW5vbnltb3VzIGRlZmF1bHQgZXhwb3J0cy5cbiAqIEBhdXRob3IgRHVuY2FuIEJlZXZlcnNcbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuaW1wb3J0IGhhcyBmcm9tICdoYXMnXG5cbmNvbnN0IGRlZnMgPSB7XG4gIEFycmF5RXhwcmVzc2lvbjoge1xuICAgIG9wdGlvbjogJ2FsbG93QXJyYXknLFxuICAgIGRlc2NyaXB0aW9uOiAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgZGVmYXVsdCBleHBvcnQgb2YgYW4gYXJyYXknLFxuICAgIG1lc3NhZ2U6ICdBc3NpZ24gYXJyYXkgdG8gYSB2YXJpYWJsZSBiZWZvcmUgZXhwb3J0aW5nIGFzIG1vZHVsZSBkZWZhdWx0JyxcbiAgfSxcbiAgQXJyb3dGdW5jdGlvbkV4cHJlc3Npb246IHtcbiAgICBvcHRpb246ICdhbGxvd0Fycm93RnVuY3Rpb24nLFxuICAgIGRlc2NyaXB0aW9uOiAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgZGVmYXVsdCBleHBvcnQgb2YgYW4gYXJyb3cgZnVuY3Rpb24nLFxuICAgIG1lc3NhZ2U6ICdBc3NpZ24gYXJyb3cgZnVuY3Rpb24gdG8gYSB2YXJpYWJsZSBiZWZvcmUgZXhwb3J0aW5nIGFzIG1vZHVsZSBkZWZhdWx0JyxcbiAgfSxcbiAgQ2FsbEV4cHJlc3Npb246IHtcbiAgICBvcHRpb246ICdhbGxvd0NhbGxFeHByZXNzaW9uJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGEgZnVuY3Rpb24gY2FsbCcsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBjYWxsIHJlc3VsdCB0byBhIHZhcmlhYmxlIGJlZm9yZSBleHBvcnRpbmcgYXMgbW9kdWxlIGRlZmF1bHQnLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIENsYXNzRGVjbGFyYXRpb246IHtcbiAgICBvcHRpb246ICdhbGxvd0Fub255bW91c0NsYXNzJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGFuIGFub255bW91cyBjbGFzcycsXG4gICAgbWVzc2FnZTogJ1VuZXhwZWN0ZWQgZGVmYXVsdCBleHBvcnQgb2YgYW5vbnltb3VzIGNsYXNzJyxcbiAgICBmb3JiaWQ6IChub2RlKSA9PiAhbm9kZS5kZWNsYXJhdGlvbi5pZCxcbiAgfSxcbiAgRnVuY3Rpb25EZWNsYXJhdGlvbjoge1xuICAgIG9wdGlvbjogJ2FsbG93QW5vbnltb3VzRnVuY3Rpb24nLFxuICAgIGRlc2NyaXB0aW9uOiAnSWYgYGZhbHNlYCwgd2lsbCByZXBvcnQgZGVmYXVsdCBleHBvcnQgb2YgYW4gYW5vbnltb3VzIGZ1bmN0aW9uJyxcbiAgICBtZXNzYWdlOiAnVW5leHBlY3RlZCBkZWZhdWx0IGV4cG9ydCBvZiBhbm9ueW1vdXMgZnVuY3Rpb24nLFxuICAgIGZvcmJpZDogKG5vZGUpID0+ICFub2RlLmRlY2xhcmF0aW9uLmlkLFxuICB9LFxuICBMaXRlcmFsOiB7XG4gICAgb3B0aW9uOiAnYWxsb3dMaXRlcmFsJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGEgbGl0ZXJhbCcsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBsaXRlcmFsIHRvIGEgdmFyaWFibGUgYmVmb3JlIGV4cG9ydGluZyBhcyBtb2R1bGUgZGVmYXVsdCcsXG4gIH0sXG4gIE9iamVjdEV4cHJlc3Npb246IHtcbiAgICBvcHRpb246ICdhbGxvd09iamVjdCcsXG4gICAgZGVzY3JpcHRpb246ICdJZiBgZmFsc2VgLCB3aWxsIHJlcG9ydCBkZWZhdWx0IGV4cG9ydCBvZiBhbiBvYmplY3QgZXhwcmVzc2lvbicsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBvYmplY3QgdG8gYSB2YXJpYWJsZSBiZWZvcmUgZXhwb3J0aW5nIGFzIG1vZHVsZSBkZWZhdWx0JyxcbiAgfSxcbiAgVGVtcGxhdGVMaXRlcmFsOiB7XG4gICAgb3B0aW9uOiAnYWxsb3dMaXRlcmFsJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lmIGBmYWxzZWAsIHdpbGwgcmVwb3J0IGRlZmF1bHQgZXhwb3J0IG9mIGEgbGl0ZXJhbCcsXG4gICAgbWVzc2FnZTogJ0Fzc2lnbiBsaXRlcmFsIHRvIGEgdmFyaWFibGUgYmVmb3JlIGV4cG9ydGluZyBhcyBtb2R1bGUgZGVmYXVsdCcsXG4gIH0sXG59XG5cbmNvbnN0IHNjaGVtYVByb3BlcnRpZXMgPSBPYmplY3Qua2V5cyhkZWZzKVxuICAubWFwKChrZXkpID0+IGRlZnNba2V5XSlcbiAgLnJlZHVjZSgoYWNjLCBkZWYpID0+IHtcbiAgICBhY2NbZGVmLm9wdGlvbl0gPSB7XG4gICAgICBkZXNjcmlwdGlvbjogZGVmLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIH1cblxuICAgIHJldHVybiBhY2NcbiAgfSwge30pXG5cbmNvbnN0IGRlZmF1bHRzID0gT2JqZWN0LmtleXMoZGVmcylcbiAgLm1hcCgoa2V5KSA9PiBkZWZzW2tleV0pXG4gIC5yZWR1Y2UoKGFjYywgZGVmKSA9PiB7XG4gICAgYWNjW2RlZi5vcHRpb25dID0gaGFzKGRlZiwgJ2RlZmF1bHQnKSA/IGRlZi5kZWZhdWx0IDogZmFsc2VcbiAgICByZXR1cm4gYWNjXG4gIH0sIHt9KVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWFub255bW91cy1kZWZhdWx0LWV4cG9ydCcpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgIHByb3BlcnRpZXM6IHNjaGVtYVByb3BlcnRpZXMsXG4gICAgICAgICdhZGRpdGlvbmFsUHJvcGVydGllcyc6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdHMsIGNvbnRleHQub3B0aW9uc1swXSlcblxuICAgIHJldHVybiB7XG4gICAgICAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJzogKG5vZGUpID0+IHtcbiAgICAgICAgY29uc3QgZGVmID0gZGVmc1tub2RlLmRlY2xhcmF0aW9uLnR5cGVdXG5cbiAgICAgICAgLy8gUmVjb2duaXplZCBub2RlIHR5cGUgYW5kIGFsbG93ZWQgYnkgY29uZmlndXJhdGlvbixcbiAgICAgICAgLy8gICBhbmQgaGFzIG5vIGZvcmJpZCBjaGVjaywgb3IgZm9yYmlkIGNoZWNrIHJldHVybiB2YWx1ZSBpcyB0cnV0aHlcbiAgICAgICAgaWYgKGRlZiAmJiAhb3B0aW9uc1tkZWYub3B0aW9uXSAmJiAoIWRlZi5mb3JiaWQgfHwgZGVmLmZvcmJpZChub2RlKSkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7IG5vZGUsIG1lc3NhZ2U6IGRlZi5tZXNzYWdlIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-commonjs.js b/node_modules/eslint-plugin-import/lib/rules/no-commonjs.js index 848b7976..5fb56084 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-commonjs.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-commonjs.js @@ -1,19 +1,15 @@ 'use strict'; -var _docsUrl = require('../docsUrl'); -var _docsUrl2 = _interopRequireDefault(_docsUrl); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const EXPORT_MESSAGE = 'Expected "export" or "export default"', - IMPORT_MESSAGE = 'Expected "import" instead of "require()"'; /** - * @fileoverview Rule to prefer ES6 to CJS - * @author Jamund Ferguson - */ - -function normalizeLegacyOptions(options) { - if (options.indexOf('allow-primitive-modules') >= 0) { +IMPORT_MESSAGE = 'Expected "import" instead of "require()"'; /** + * @fileoverview Rule to prefer ES6 to CJS + * @author Jamund Ferguson + */function normalizeLegacyOptions(options) {if (options.indexOf('allow-primitive-modules') >= 0) { return { allowPrimitiveModules: true }; } return options[0] || {}; @@ -39,7 +35,12 @@ function validateScope(scope) { // https://github.com/estree/estree/blob/master/es5.md function isConditional(node) { - if (node.type === 'IfStatement' || node.type === 'TryStatement' || node.type === 'LogicalExpression' || node.type === 'ConditionalExpression') return true; + if ( + node.type === 'IfStatement' || + node.type === 'TryStatement' || + node.type === 'LogicalExpression' || + node.type === 'ConditionalExpression') + return true; if (node.parent) return isConditional(node.parent); return false; } @@ -54,30 +55,33 @@ const schemaObject = { properties: { allowPrimitiveModules: { 'type': 'boolean' }, allowRequire: { 'type': 'boolean' }, - allowConditionalRequire: { 'type': 'boolean' } - }, - additionalProperties: false -}; + allowConditionalRequire: { 'type': 'boolean' } }, + + additionalProperties: false }; + module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-commonjs') - }, + url: (0, _docsUrl2.default)('no-commonjs') }, + schema: { - anyOf: [{ + anyOf: [ + { type: 'array', items: [schemaString], - additionalItems: false - }, { + additionalItems: false }, + + { type: 'array', items: [schemaObject], - additionalItems: false - }] - } - }, + additionalItems: false }] } }, + + + + create: function (context) { const options = normalizeLegacyOptions(context.options); @@ -94,11 +98,14 @@ module.exports = { // exports. if (node.object.name === 'exports') { - const isInScope = context.getScope().variables.some(variable => variable.name === 'exports'); + const isInScope = context.getScope(). + variables. + some(variable => variable.name === 'exports'); if (!isInScope) { context.report({ node, message: EXPORT_MESSAGE }); } } + }, 'CallExpression': function (call) { if (!validateScope(context.getScope())) return; @@ -119,10 +126,10 @@ module.exports = { // keeping it simple: all 1-string-arg `require` calls are reported context.report({ node: call.callee, - message: IMPORT_MESSAGE - }); - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1jb21tb25qcy5qcyJdLCJuYW1lcyI6WyJFWFBPUlRfTUVTU0FHRSIsIklNUE9SVF9NRVNTQUdFIiwibm9ybWFsaXplTGVnYWN5T3B0aW9ucyIsIm9wdGlvbnMiLCJpbmRleE9mIiwiYWxsb3dQcmltaXRpdmVNb2R1bGVzIiwiYWxsb3dQcmltaXRpdmUiLCJub2RlIiwicGFyZW50IiwidHlwZSIsInJpZ2h0IiwiYWxsb3dSZXF1aXJlIiwiYWxsb3dDb25kaXRpb25hbFJlcXVpcmUiLCJ2YWxpZGF0ZVNjb3BlIiwic2NvcGUiLCJ2YXJpYWJsZVNjb3BlIiwiaXNDb25kaXRpb25hbCIsInNjaGVtYVN0cmluZyIsImVudW0iLCJzY2hlbWFPYmplY3QiLCJwcm9wZXJ0aWVzIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJhbnlPZiIsIml0ZW1zIiwiYWRkaXRpb25hbEl0ZW1zIiwiY3JlYXRlIiwiY29udGV4dCIsIm9iamVjdCIsIm5hbWUiLCJwcm9wZXJ0eSIsInJlcG9ydCIsIm1lc3NhZ2UiLCJpc0luU2NvcGUiLCJnZXRTY29wZSIsInZhcmlhYmxlcyIsInNvbWUiLCJ2YXJpYWJsZSIsImNhbGwiLCJjYWxsZWUiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ2YWx1ZSJdLCJtYXBwaW5ncyI6Ijs7QUFLQTs7Ozs7O0FBRUEsTUFBTUEsaUJBQWlCLHVDQUF2QjtBQUFBLE1BQ01DLGlCQUFpQiwwQ0FEdkIsQyxDQVBBOzs7OztBQVVBLFNBQVNDLHNCQUFULENBQWdDQyxPQUFoQyxFQUF5QztBQUN2QyxNQUFJQSxRQUFRQyxPQUFSLENBQWdCLHlCQUFoQixLQUE4QyxDQUFsRCxFQUFxRDtBQUNuRCxXQUFPLEVBQUVDLHVCQUF1QixJQUF6QixFQUFQO0FBQ0Q7QUFDRCxTQUFPRixRQUFRLENBQVIsS0FBYyxFQUFyQjtBQUNEOztBQUVELFNBQVNHLGNB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Y0FBakIsRUFBZjtBQUNEO0FBQ0Y7QUFFRixPQXBCSTtBQXFCTCx3QkFBa0IsVUFBVTJDLElBQVYsRUFBZ0I7QUFDaEMsWUFBSSxDQUFDOUIsY0FBY21CLFFBQVFPLFFBQVIsRUFBZCxDQUFMLEVBQXdDOztBQUV4QyxZQUFJSSxLQUFLQyxNQUFMLENBQVluQyxJQUFaLEtBQXFCLFlBQXpCLEVBQXVDO0FBQ3ZDLFlBQUlrQyxLQUFLQyxNQUFMLENBQVlWLElBQVosS0FBcUIsU0FBekIsRUFBb0M7O0FBRXBDLFlBQUlTLEtBQUtFLFNBQUwsQ0FBZUMsTUFBZixLQUEwQixDQUE5QixFQUFpQztBQUNqQyxZQUFJeEIsU0FBU3FCLEtBQUtFLFNBQUwsQ0FBZSxDQUFmLENBQWI7O0FBRUEsWUFBSXZCLE9BQU9iLElBQVAsS0FBZ0IsU0FBcEIsRUFBK0I7QUFDL0IsWUFBSSxPQUFPYSxPQUFPeUIsS0FBZCxLQUF3QixRQUE1QixFQUFzQzs7QUFFdEMsWUFBSXBDLGFBQWFnQyxJQUFiLEVBQW1CeEMsT0FBbkIsQ0FBSixFQUFpQzs7QUFFakMsWUFBSVMsd0JBQXdCK0IsSUFBeEIsRUFBOEJ4QyxPQUE5QixLQUEwQ2EsY0FBYzJCLEtBQUtuQyxNQUFuQixDQUE5QyxFQUEwRTs7QUFFMUU7QUFDQXdCLGdCQUFRSSxNQUFSLENBQWU7QUFDYjdCLGdCQUFNb0MsS0FBS0MsTUFERTtBQUViUCxtQkFBU3BDO0FBRkksU0FBZjtBQUlEO0FBMUNJLEtBQVA7QUE2Q0Q7QUF2RWMsQ0FBakIiLCJmaWxlIjoibm8tY29tbW9uanMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlb3ZlcnZpZXcgUnVsZSB0byBwcmVmZXIgRVM2IHRvIENKU1xuICogQGF1dGhvciBKYW11bmQgRmVyZ3Vzb25cbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5jb25zdCBFWFBPUlRfTUVTU0FHRSA9ICdFeHBlY3RlZCBcImV4cG9ydFwiIG9yIFwiZXhwb3J0IGRlZmF1bHRcIidcbiAgICAsIElNUE9SVF9NRVNTQUdFID0gJ0V4cGVjdGVkIFwiaW1wb3J0XCIgaW5zdGVhZCBvZiBcInJlcXVpcmUoKVwiJ1xuXG5mdW5jdGlvbiBub3JtYWxpemVMZWdhY3lPcHRpb25zKG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMuaW5kZXhPZignYWxsb3ctcHJpbWl0aXZlLW1vZHVsZXMnKSA+PSAwKSB7XG4gICAgcmV0dXJuIHsgYWxsb3dQcmltaXRpdmVNb2R1bGVzOiB0cnVlIH1cbiAgfVxuICByZXR1cm4gb3B0aW9uc1swXSB8fCB7fVxufVxuXG5mdW5jdGlvbiBhbGxvd1ByaW1pdGl2ZShub2RlLCBvcHRpb25zKSB7XG4gIGlmICghb3B0aW9ucy5hbGxvd1ByaW1pdGl2ZU1vZHVsZXMpIHJldHVybiBmYWxzZVxuICBpZiAobm9kZS5wYXJlbnQudHlwZSAhPT0gJ0Fzc2lnbm1lbnRFeHByZXNzaW9uJykgcmV0dXJuIGZhbHNlXG4gIHJldHVybiAobm9kZS5wYXJlbnQucmlnaHQudHlwZSAhPT0gJ09iamVjdEV4cHJlc3Npb24nKVxufVxuXG5mdW5jdGlvbiBhbGxvd1JlcXVpcmUobm9kZSwgb3B0aW9ucykge1xuICByZXR1cm4gb3B0aW9ucy5hbGxvd1JlcXVpcmVcbn1cblxuZnVuY3Rpb24gYWxsb3dDb25kaXRpb25hbFJlcXVpcmUobm9kZSwgb3B0aW9ucykge1xuICByZXR1cm4gb3B0aW9ucy5hbGxvd0NvbmRpdGlvbmFsUmVxdWlyZSAhPT0gZmFsc2Vcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVTY29wZShzY29wZSkge1xuICByZXR1cm4gc2NvcGUudmFyaWFibGVTY29wZS50eXBlID09PSAnbW9kdWxlJ1xufVxuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vZXN0cmVlL2VzdHJlZS9ibG9iL21hc3Rlci9lczUubWRcbmZ1bmN0aW9uIGlzQ29uZGl0aW9uYWwobm9kZSkge1xuICBpZiAoXG4gICAgbm9kZS50eXBlID09PSAnSWZTdGF0ZW1lbnQnXG4gICAgfHwgbm9kZS50eXBlID09PSAnVHJ5U3RhdGVtZW50J1xuICAgIHx8IG5vZGUudHlwZSA9PT0gJ0xvZ2ljYWxFeHByZXNzaW9uJ1xuICAgIHx8IG5vZGUudHlwZSA9PT0gJ0NvbmRpdGlvbmFsRXhwcmVzc2lvbidcbiAgKSByZXR1cm4gdHJ1ZVxuICBpZiAobm9kZS5wYXJlbnQpIHJldHVybiBpc0NvbmRpdGlvbmFsKG5vZGUucGFyZW50KVxuICByZXR1cm4gZmFsc2Vcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJ1bGUgRGVmaW5pdGlvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuY29uc3Qgc2NoZW1hU3RyaW5nID0geyBlbnVtOiBbJ2FsbG93LXByaW1pdGl2ZS1tb2R1bGVzJ10gfVxuY29uc3Qgc2NoZW1hT2JqZWN0ID0ge1xuICB0eXBlOiAnb2JqZWN0JyxcbiAgcHJvcGVydGllczoge1xuICAgIGFsbG93UHJpbWl0aXZlTW9kdWxlczogeyAndHlwZSc6ICdib29sZWFuJyB9LFxuICAgIGFsbG93UmVxdWlyZTogeyAndHlwZSc6ICdib29sZWFuJyB9LFxuICAgIGFsbG93Q29uZGl0aW9uYWxSZXF1aXJlOiB7ICd0eXBlJzogJ2Jvb2xlYW4nIH0sXG4gIH0sXG4gIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1jb21tb25qcycpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IHtcbiAgICAgIGFueU9mOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiBbc2NoZW1hU3RyaW5nXSxcbiAgICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczogW3NjaGVtYU9iamVjdF0sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IG5vcm1hbGl6ZUxlZ2FjeU9wdGlvbnMoY29udGV4dC5vcHRpb25zKVxuXG4gICAgcmV0dXJuIHtcblxuICAgICAgJ01lbWJlckV4cHJlc3Npb24nOiBmdW5jdGlvbiAobm9kZSkge1xuXG4gICAgICAgIC8vIG1vZHVsZS5leHBvcnRzXG4gICAgICAgIGlmIChub2RlLm9iamVjdC5uYW1lID09PSAnbW9kdWxlJyAmJiBub2RlLnByb3BlcnR5Lm5hbWUgPT09ICdleHBvcnRzJykge1xuICAgICAgICAgIGlmIChhbGxvd1ByaW1pdGl2ZShub2RlLCBvcHRpb25zKSkgcmV0dXJuXG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlLCBtZXNzYWdlOiBFWFBPUlRfTUVTU0FHRSB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gZXhwb3J0cy5cbiAgICAgICAgaWYgKG5vZGUub2JqZWN0Lm5hbWUgPT09ICdleHBvcnRzJykge1xuICAgICAgICAgIGNvbnN0IGlzSW5TY29wZSA9IGNvbnRleHQuZ2V0U2NvcGUoKVxuICAgICAgICAgICAgLnZhcmlhYmxlc1xuICAgICAgICAgICAgLnNvbWUodmFyaWFibGUgPT4gdmFyaWFibGUubmFtZSA9PT0gJ2V4cG9ydHMnKVxuICAgICAgICAgIGlmICghIGlzSW5TY29wZSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlLCBtZXNzYWdlOiBFWFBPUlRfTUVTU0FHRSB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9LFxuICAgICAgJ0NhbGxFeHByZXNzaW9uJzogZnVuY3Rpb24gKGNhbGwpIHtcbiAgICAgICAgaWYgKCF2YWxpZGF0ZVNjb3BlKGNvbnRleHQuZ2V0U2NvcGUoKSkpIHJldHVyblxuXG4gICAgICAgIGlmIChjYWxsLmNhbGxlZS50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAoY2FsbC5jYWxsZWUubmFtZSAhPT0gJ3JlcXVpcmUnKSByZXR1cm5cblxuICAgICAgICBpZiAoY2FsbC5hcmd1bWVudHMubGVuZ3RoICE9PSAxKSByZXR1cm5cbiAgICAgICAgdmFyIG1vZHVsZSA9IGNhbGwuYXJndW1lbnRzWzBdXG5cbiAgICAgICAgaWYgKG1vZHVsZS50eXBlICE9PSAnTGl0ZXJhbCcpIHJldHVyblxuICAgICAgICBpZiAodHlwZW9mIG1vZHVsZS52YWx1ZSAhPT0gJ3N0cmluZycpIHJldHVyblxuXG4gICAgICAgIGlmIChhbGxvd1JlcXVpcmUoY2FsbCwgb3B0aW9ucykpIHJldHVyblxuXG4gICAgICAgIGlmIChhbGxvd0NvbmRpdGlvbmFsUmVxdWlyZShjYWxsLCBvcHRpb25zKSAmJiBpc0NvbmRpdGlvbmFsKGNhbGwucGFyZW50KSkgcmV0dXJuXG5cbiAgICAgICAgLy8ga2VlcGluZyBpdCBzaW1wbGU6IGFsbCAxLXN0cmluZy1hcmcgYHJlcXVpcmVgIGNhbGxzIGFyZSByZXBvcnRlZFxuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZTogY2FsbC5jYWxsZWUsXG4gICAgICAgICAgbWVzc2FnZTogSU1QT1JUX01FU1NBR0UsXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgIH1cblxuICB9LFxufVxuIl19 \ No newline at end of file + message: IMPORT_MESSAGE }); + + } }; + + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1jb21tb25qcy5qcyJdLCJuYW1lcyI6WyJFWFBPUlRfTUVTU0FHRSIsIklNUE9SVF9NRVNTQUdFIiwibm9ybWFsaXplTGVnYWN5T3B0aW9ucyIsIm9wdGlvbnMiLCJpbmRleE9mIiwiYWxsb3dQcmltaXRpdmVNb2R1bGVzIiwiYWxsb3dQcmltaXRpdmUiLCJub2RlIiwicGFyZW50IiwidHlwZSIsInJpZ2h0IiwiYWxsb3dSZXF1aXJlIiwiYWxsb3dDb25kaXRpb25hbFJlcXVpcmUiLCJ2YWxpZGF0ZVNjb3BlIiwic2NvcGUiLCJ2YXJpYWJsZVNjb3BlIiwiaXNDb25kaXRpb25hbCIsInNjaGVtYVN0cmluZyIsImVudW0iLCJzY2hlbWFPYmplY3QiLCJwcm9wZXJ0aWVzIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJhbnlPZiIsIml0ZW1zIiwiYWRkaXRpb25hbEl0ZW1zIiwiY3JlYXRlIiwiY29udGV4dCIsIm9iamVjdCIsIm5hbWUiLCJwcm9wZXJ0eSIsInJlcG9ydCIsIm1lc3NhZ2UiLCJpc0luU2NvcGUiLCJnZXRTY29wZSIsInZhcmlhYmxlcyIsInNvbWUiLCJ2YXJpYWJsZSIsImNhbGwiLCJjYWxsZWUiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ2YWx1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSxxQzs7QUFFQSxNQUFNQSxpQkFBaUIsdUNBQXZCO0FBQ01DLGlCQUFpQiwwQ0FEdkIsQyxDQVBBOzs7Z0VBVUEsU0FBU0Msc0JBQVQsQ0FBZ0NDLE9BQWhDLEVBQXlDLENBQ3ZDLElBQUlBLFFBQVFDLE9BQVIsQ0FBZ0IseUJBQWhCLEtBQThDLENBQWxELEVBQXFEO0FBQ25ELFdBQU8sRUFBRUMsdUJBQXVCLElBQXpCLEVBQVA7QUFDRDtBQUNELFNBQU9GLFFBQVEsQ0FBUixLQUFjLEVBQXJCO0FBQ0Q7O0FBRUQsU0FBU0csY0FBVCxD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QVNyQyxjQUFqQixFQUFmO0FBQ0Q7QUFDRjs7QUFFRixPQXBCSTtBQXFCTCx3QkFBa0IsVUFBVTJDLElBQVYsRUFBZ0I7QUFDaEMsWUFBSSxDQUFDOUIsY0FBY21CLFFBQVFPLFFBQVIsRUFBZCxDQUFMLEVBQXdDOztBQUV4QyxZQUFJSSxLQUFLQyxNQUFMLENBQVluQyxJQUFaLEtBQXFCLFlBQXpCLEVBQXVDO0FBQ3ZDLFlBQUlrQyxLQUFLQyxNQUFMLENBQVlWLElBQVosS0FBcUIsU0FBekIsRUFBb0M7O0FBRXBDLFlBQUlTLEtBQUtFLFNBQUwsQ0FBZUMsTUFBZixLQUEwQixDQUE5QixFQUFpQztBQUNqQyxZQUFJeEIsU0FBU3FCLEtBQUtFLFNBQUwsQ0FBZSxDQUFmLENBQWI7O0FBRUEsWUFBSXZCLE9BQU9iLElBQVAsS0FBZ0IsU0FBcEIsRUFBK0I7QUFDL0IsWUFBSSxPQUFPYSxPQUFPeUIsS0FBZCxLQUF3QixRQUE1QixFQUFzQzs7QUFFdEMsWUFBSXBDLGFBQWFnQyxJQUFiLEVBQW1CeEMsT0FBbkIsQ0FBSixFQUFpQzs7QUFFakMsWUFBSVMsd0JBQXdCK0IsSUFBeEIsRUFBOEJ4QyxPQUE5QixLQUEwQ2EsY0FBYzJCLEtBQUtuQyxNQUFuQixDQUE5QyxFQUEwRTs7QUFFMUU7QUFDQXdCLGdCQUFRSSxNQUFSLENBQWU7QUFDYjdCLGdCQUFNb0MsS0FBS0MsTUFERTtBQUViUCxtQkFBU3BDLGNBRkksRUFBZjs7QUFJRCxPQTFDSSxFQUFQOzs7QUE2Q0QsR0F2RWMsRUFBakIiLCJmaWxlIjoibm8tY29tbW9uanMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlb3ZlcnZpZXcgUnVsZSB0byBwcmVmZXIgRVM2IHRvIENKU1xuICogQGF1dGhvciBKYW11bmQgRmVyZ3Vzb25cbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5jb25zdCBFWFBPUlRfTUVTU0FHRSA9ICdFeHBlY3RlZCBcImV4cG9ydFwiIG9yIFwiZXhwb3J0IGRlZmF1bHRcIidcbiAgICAsIElNUE9SVF9NRVNTQUdFID0gJ0V4cGVjdGVkIFwiaW1wb3J0XCIgaW5zdGVhZCBvZiBcInJlcXVpcmUoKVwiJ1xuXG5mdW5jdGlvbiBub3JtYWxpemVMZWdhY3lPcHRpb25zKG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMuaW5kZXhPZignYWxsb3ctcHJpbWl0aXZlLW1vZHVsZXMnKSA+PSAwKSB7XG4gICAgcmV0dXJuIHsgYWxsb3dQcmltaXRpdmVNb2R1bGVzOiB0cnVlIH1cbiAgfVxuICByZXR1cm4gb3B0aW9uc1swXSB8fCB7fVxufVxuXG5mdW5jdGlvbiBhbGxvd1ByaW1pdGl2ZShub2RlLCBvcHRpb25zKSB7XG4gIGlmICghb3B0aW9ucy5hbGxvd1ByaW1pdGl2ZU1vZHVsZXMpIHJldHVybiBmYWxzZVxuICBpZiAobm9kZS5wYXJlbnQudHlwZSAhPT0gJ0Fzc2lnbm1lbnRFeHByZXNzaW9uJykgcmV0dXJuIGZhbHNlXG4gIHJldHVybiAobm9kZS5wYXJlbnQucmlnaHQudHlwZSAhPT0gJ09iamVjdEV4cHJlc3Npb24nKVxufVxuXG5mdW5jdGlvbiBhbGxvd1JlcXVpcmUobm9kZSwgb3B0aW9ucykge1xuICByZXR1cm4gb3B0aW9ucy5hbGxvd1JlcXVpcmVcbn1cblxuZnVuY3Rpb24gYWxsb3dDb25kaXRpb25hbFJlcXVpcmUobm9kZSwgb3B0aW9ucykge1xuICByZXR1cm4gb3B0aW9ucy5hbGxvd0NvbmRpdGlvbmFsUmVxdWlyZSAhPT0gZmFsc2Vcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVTY29wZShzY29wZSkge1xuICByZXR1cm4gc2NvcGUudmFyaWFibGVTY29wZS50eXBlID09PSAnbW9kdWxlJ1xufVxuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vZXN0cmVlL2VzdHJlZS9ibG9iL21hc3Rlci9lczUubWRcbmZ1bmN0aW9uIGlzQ29uZGl0aW9uYWwobm9kZSkge1xuICBpZiAoXG4gICAgbm9kZS50eXBlID09PSAnSWZTdGF0ZW1lbnQnXG4gICAgfHwgbm9kZS50eXBlID09PSAnVHJ5U3RhdGVtZW50J1xuICAgIHx8IG5vZGUudHlwZSA9PT0gJ0xvZ2ljYWxFeHByZXNzaW9uJ1xuICAgIHx8IG5vZGUudHlwZSA9PT0gJ0NvbmRpdGlvbmFsRXhwcmVzc2lvbidcbiAgKSByZXR1cm4gdHJ1ZVxuICBpZiAobm9kZS5wYXJlbnQpIHJldHVybiBpc0NvbmRpdGlvbmFsKG5vZGUucGFyZW50KVxuICByZXR1cm4gZmFsc2Vcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJ1bGUgRGVmaW5pdGlvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuY29uc3Qgc2NoZW1hU3RyaW5nID0geyBlbnVtOiBbJ2FsbG93LXByaW1pdGl2ZS1tb2R1bGVzJ10gfVxuY29uc3Qgc2NoZW1hT2JqZWN0ID0ge1xuICB0eXBlOiAnb2JqZWN0JyxcbiAgcHJvcGVydGllczoge1xuICAgIGFsbG93UHJpbWl0aXZlTW9kdWxlczogeyAndHlwZSc6ICdib29sZWFuJyB9LFxuICAgIGFsbG93UmVxdWlyZTogeyAndHlwZSc6ICdib29sZWFuJyB9LFxuICAgIGFsbG93Q29uZGl0aW9uYWxSZXF1aXJlOiB7ICd0eXBlJzogJ2Jvb2xlYW4nIH0sXG4gIH0sXG4gIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1jb21tb25qcycpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IHtcbiAgICAgIGFueU9mOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiBbc2NoZW1hU3RyaW5nXSxcbiAgICAgICAgICBhZGRpdGlvbmFsSXRlbXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczogW3NjaGVtYU9iamVjdF0sXG4gICAgICAgICAgYWRkaXRpb25hbEl0ZW1zOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IG5vcm1hbGl6ZUxlZ2FjeU9wdGlvbnMoY29udGV4dC5vcHRpb25zKVxuXG4gICAgcmV0dXJuIHtcblxuICAgICAgJ01lbWJlckV4cHJlc3Npb24nOiBmdW5jdGlvbiAobm9kZSkge1xuXG4gICAgICAgIC8vIG1vZHVsZS5leHBvcnRzXG4gICAgICAgIGlmIChub2RlLm9iamVjdC5uYW1lID09PSAnbW9kdWxlJyAmJiBub2RlLnByb3BlcnR5Lm5hbWUgPT09ICdleHBvcnRzJykge1xuICAgICAgICAgIGlmIChhbGxvd1ByaW1pdGl2ZShub2RlLCBvcHRpb25zKSkgcmV0dXJuXG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlLCBtZXNzYWdlOiBFWFBPUlRfTUVTU0FHRSB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gZXhwb3J0cy5cbiAgICAgICAgaWYgKG5vZGUub2JqZWN0Lm5hbWUgPT09ICdleHBvcnRzJykge1xuICAgICAgICAgIGNvbnN0IGlzSW5TY29wZSA9IGNvbnRleHQuZ2V0U2NvcGUoKVxuICAgICAgICAgICAgLnZhcmlhYmxlc1xuICAgICAgICAgICAgLnNvbWUodmFyaWFibGUgPT4gdmFyaWFibGUubmFtZSA9PT0gJ2V4cG9ydHMnKVxuICAgICAgICAgIGlmICghIGlzSW5TY29wZSkge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlLCBtZXNzYWdlOiBFWFBPUlRfTUVTU0FHRSB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9LFxuICAgICAgJ0NhbGxFeHByZXNzaW9uJzogZnVuY3Rpb24gKGNhbGwpIHtcbiAgICAgICAgaWYgKCF2YWxpZGF0ZVNjb3BlKGNvbnRleHQuZ2V0U2NvcGUoKSkpIHJldHVyblxuXG4gICAgICAgIGlmIChjYWxsLmNhbGxlZS50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAoY2FsbC5jYWxsZWUubmFtZSAhPT0gJ3JlcXVpcmUnKSByZXR1cm5cblxuICAgICAgICBpZiAoY2FsbC5hcmd1bWVudHMubGVuZ3RoICE9PSAxKSByZXR1cm5cbiAgICAgICAgdmFyIG1vZHVsZSA9IGNhbGwuYXJndW1lbnRzWzBdXG5cbiAgICAgICAgaWYgKG1vZHVsZS50eXBlICE9PSAnTGl0ZXJhbCcpIHJldHVyblxuICAgICAgICBpZiAodHlwZW9mIG1vZHVsZS52YWx1ZSAhPT0gJ3N0cmluZycpIHJldHVyblxuXG4gICAgICAgIGlmIChhbGxvd1JlcXVpcmUoY2FsbCwgb3B0aW9ucykpIHJldHVyblxuXG4gICAgICAgIGlmIChhbGxvd0NvbmRpdGlvbmFsUmVxdWlyZShjYWxsLCBvcHRpb25zKSAmJiBpc0NvbmRpdGlvbmFsKGNhbGwucGFyZW50KSkgcmV0dXJuXG5cbiAgICAgICAgLy8ga2VlcGluZyBpdCBzaW1wbGU6IGFsbCAxLXN0cmluZy1hcmcgYHJlcXVpcmVgIGNhbGxzIGFyZSByZXBvcnRlZFxuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZTogY2FsbC5jYWxsZWUsXG4gICAgICAgICAgbWVzc2FnZTogSU1QT1JUX01FU1NBR0UsXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgIH1cblxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-cycle.js b/node_modules/eslint-plugin-import/lib/rules/no-cycle.js index 0327673c..84d05252 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-cycle.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-cycle.js @@ -1,23 +1,12 @@ -'use strict'; +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}(); /** + * @fileOverview Ensures that no imported module imports the linted module. + * @author Ben Mosher + */ -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); /** - * @fileOverview Ensures that no imported module imports the linted module. - * @author Ben Mosher - */ - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _moduleVisitor = require('eslint-module-utils/moduleVisitor'); - -var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _importType = require('../core/importType'); +var _moduleVisitor = require('eslint-module-utils/moduleVisitor');var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} // todo: cache cycles / deep relationships for faster repeat evaluation module.exports = { @@ -26,21 +15,39 @@ module.exports = { docs: { url: (0, _docsUrl2.default)('no-cycle') }, schema: [(0, _moduleVisitor.makeOptionsSchema)({ maxDepth: { - description: 'maximum dependency depth to traverse', - type: 'integer', - minimum: 1 - } - })] - }, + oneOf: [ + { + description: 'maximum dependency depth to traverse', + type: 'integer', + minimum: 1 }, + + { + enum: ['∞'], + type: 'string' }] }, + + + + ignoreExternal: { + description: 'ignore external modules', + type: 'boolean', + default: false } })] }, + + + create: function (context) { const myPath = context.getFilename(); if (myPath === '') return {}; // can't cycle-check a non-file const options = context.options[0] || {}; - const maxDepth = options.maxDepth || Infinity; + const maxDepth = typeof options.maxDepth === 'number' ? options.maxDepth : Infinity; + const ignoreModule = name => options.ignoreExternal ? (0, _importType.isExternalModule)(name) : false; function checkSourceValue(sourceNode, importer) { + if (ignoreModule(sourceNode.value)) { + return; // ignore external modules + } + const imported = _ExportMap2.default.get(sourceNode.value, context); if (importer.importKind === 'type') { @@ -57,30 +64,21 @@ module.exports = { const untraversed = [{ mget: () => imported, route: [] }]; const traversed = new Set(); - function detectCycle(_ref) { - let mget = _ref.mget, - route = _ref.route; - + function detectCycle(_ref) {let mget = _ref.mget,route = _ref.route; const m = mget(); if (m == null) return; if (traversed.has(m.path)) return; traversed.add(m.path); - for (let _ref2 of m.imports) { - var _ref3 = _slicedToArray(_ref2, 2); - - let path = _ref3[0]; - var _ref3$ = _ref3[1]; - let getter = _ref3$.getter; - let source = _ref3$.source; - + for (let _ref2 of m.imports) {var _ref3 = _slicedToArray(_ref2, 2);let path = _ref3[0];var _ref3$ = _ref3[1];let getter = _ref3$.getter;let source = _ref3$.source; if (path === myPath) return true; if (traversed.has(path)) continue; + if (ignoreModule(source.value)) continue; if (route.length + 1 < maxDepth) { untraversed.push({ mget: getter, - route: route.concat(source) - }); + route: route.concat(source) }); + } } } @@ -88,7 +86,9 @@ module.exports = { while (untraversed.length > 0) { const next = untraversed.shift(); // bfs! if (detectCycle(next)) { - const message = next.route.length > 0 ? `Dependency cycle via ${routeString(next.route)}` : 'Dependency cycle detected.'; + const message = next.route.length > 0 ? + `Dependency cycle via ${routeString(next.route)}` : + 'Dependency cycle detected.'; context.report(importer, message); return; } @@ -96,10 +96,10 @@ module.exports = { } return (0, _moduleVisitor2.default)(checkSourceValue, context.options[0]); - } -}; + } }; + function routeString(route) { return route.map(s => `${s.value}:${s.loc.start.line}`).join('=>'); } -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1jeWNsZS5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwibWF4RGVwdGgiLCJkZXNjcmlwdGlvbiIsIm1pbmltdW0iLCJjcmVhdGUiLCJjb250ZXh0IiwibXlQYXRoIiwiZ2V0RmlsZW5hbWUiLCJvcHRpb25zIiwiSW5maW5pdHkiLCJjaGVja1NvdXJjZVZhbHVlIiwic291cmNlTm9kZSIsImltcG9ydGVyIiwiaW1wb3J0ZWQiLCJFeHBvcnRzIiwiZ2V0IiwidmFsdWUiLCJpbXBvcnRLaW5kIiwicGF0aCIsInVudHJhdmVyc2VkIiwibWdldCIsInJvdXRlIiwidHJhdmVyc2VkIiwiU2V0IiwiZGV0ZWN0Q3ljbGUiLCJtIiwiaGFzIiwiYWRkIiwiaW1wb3J0cyIsImdldHRlciIsInNvdXJjZSIsImxlbmd0aCIsInB1c2giLCJjb25jYXQiLCJuZXh0Iiwic2hpZnQiLCJtZXNzYWdlIiwicm91dGVTdHJpbmciLCJyZXBvcnQiLCJtYXAiLCJzIiwibG9jIiwic3RhcnQiLCJsaW5lIiwiam9pbiJdLCJtYXBwaW5ncyI6Ijs7eXBCQUFBOzs7OztBQUtBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7O0FBRUE7QUFDQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNLEVBQUVDLEtBQUssdUJBQVEsVUFBUixDQUFQLEVBRkY7QUFHSkMsWUFBUSxDQUFDLHNDQUFrQjtBQUN6QkMsZ0JBQVM7QUFDUEMscUJBQWEsc0NBRE47QUFFUEwsY0FBTSxTQUZDO0FBR1BNLGlCQUFTO0FBSEY7QUFEZ0IsS0FBbEIsQ0FBRDtBQUhKLEdBRFM7O0FBYWZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixVQUFNQyxTQUFTRCxRQUFRRSxXQUFSLEVBQWY7QUFDQSxRQUFJRCxXQUFXLFFBQWYsRUFBeUIsT0FBTyxFQUFQLENBRkEsQ0FFVTs7QUFFbkMsVUFBTUUsVUFBVUgsUUFBUUcsT0FBUixDQUFnQixDQUFoQixLQUFzQixFQUF0QztBQUNBLFVBQU1QLFdBQVdPLFFBQVFQLFFBQVIsSUFBb0JRLFFBQXJDOztBQUVBLGFBQVNDLGdCQUFULENBQTBCQyxVQUExQixFQUFzQ0MsUUFBdEMsRUFBZ0Q7QUFDOUMsWUFBTUMsV0FBV0Msb0JBQVFDLEdBQVIsQ0FBWUosV0FBV0ssS0FBdkIsRUFBOEJYLE9BQTlCLENBQWpCOztBQUVBLFVBQUlPLFNBQVNLLFVBQVQsS0FBd0IsTUFBNUIsRUFBb0M7QUFDbEMsZUFEa0MsQ0FDM0I7QUFDUjs7QUFFRCxVQUFJSixZQUFZLElBQWhCLEVBQXNCO0FBQ3BCLGVBRG9CLENBQ1o7QUFDVDs7QUFFRCxVQUFJQSxTQUFTSyxJQUFULEtBQWtCWixNQUF0QixFQUE4QjtBQUM1QixlQUQ0QixDQUNwQjtBQUNUOztBQUVELFlBQU1hLGNBQWMsQ0FBQyxFQUFDQyxNQUFNLE1BQU1QLFFBQWIsRUFBdUJRLE9BQU0sRUFBN0IsRUFBRCxDQUFwQjtBQUNBLFlBQU1DLFlBQVksSUFBSUMsR0FBSixFQUFsQjtBQUNBLGVBQVNDLFdBQVQsT0FBb0M7QUFBQSxZQUFkSixJQUFjLFFBQWRBLElBQWM7QUFBQSxZQUFSQyxLQUFRLFFBQVJBLEtBQVE7O0FBQ2xDLGNBQU1JLElBQUlMLE1BQVY7QUFDQSxZQUFJSyxLQUFLLElBQVQsRUFBZTtBQUNmLFlBQUlILFVBQVVJLEdBQVYsQ0FBY0QsRUFBRVAsSUFBaEIsQ0FBSixFQUEyQjtBQUMzQkksa0JBQVVLLEdBQVYsQ0FBY0YsRUFBRVAsSUFBaEI7O0FBRUEsMEJBQXVDTyxFQUFFRyxPQUF6QyxFQUFrRDtBQUFBOztBQUFBLGNBQXhDVixJQUF3QztBQUFBO0FBQUEsY0FBaENXLE1BQWdDLFVBQWhDQSxNQUFnQztBQUFBLGNBQXhCQyxNQUF3QixVQUF4QkEsTUFBd0I7O0FBQ2hELGNBQUlaLFNBQVNaLE1BQWIsRUFBcUIsT0FBTyxJQUFQO0FBQ3JCLGNBQUlnQixVQUFVSSxHQUFWLENBQWNSLElBQWQsQ0FBSixFQUF5QjtBQUN6QixjQUFJRyxNQUFNVSxNQUFOLEdBQWUsQ0FBZixHQUFtQjlCLFFBQXZCLEVBQWlDO0FBQy9Ca0Isd0JBQVlhLElBQVosQ0FBaUI7QUFDZlosb0JBQU1TLE1BRFM7QUFFZlIscUJBQU9BLE1BQU1ZLE1BQU4sQ0FBYUgsTUFBYjtBQUZRLGFBQWpCO0FBSUQ7QUFDRjtBQUNGOztBQUVELGFBQU9YLFlBQVlZLE1BQVosR0FBcUIsQ0FBNUIsRUFBK0I7QUFDN0IsY0FBTUcsT0FBT2YsWUFBWWdCLEtBQVosRUFBYixDQUQ2QixDQUNJO0FBQ2pDLFlBQUlYLFlBQVlVLElBQVosQ0FBSixFQUF1QjtBQUNyQixnQkFBTUUsVUFBV0YsS0FBS2IsS0FBTCxDQUFXVSxNQUFYLEdBQW9CLENBQXBCLEdBQ1osd0JBQXVCTSxZQUFZSCxLQUFLYixLQUFqQixDQUF3QixFQURuQyxHQUViLDRCQUZKO0FBR0FoQixrQkFBUWlDLE1BQVIsQ0FBZTFCLFFBQWYsRUFBeUJ3QixPQUF6QjtBQUNBO0FBQ0Q7QUFDRjtBQUNGOztBQUVELFdBQU8sNkJBQWMxQixnQkFBZCxFQUFnQ0wsUUFBUUcsT0FBUixDQUFnQixDQUFoQixDQUFoQyxDQUFQO0FBQ0Q7QUFwRWMsQ0FBakI7O0FBdUVBLFNBQVM2QixXQUFULENBQXFCaEIsS0FBckIsRUFBNEI7QUFDMUIsU0FBT0EsTUFBTWtCLEdBQU4sQ0FBVUMsS0FBTSxHQUFFQSxFQUFFeEIsS0FBTSxJQUFHd0IsRUFBRUMsR0FBRixDQUFNQyxLQUFOLENBQVlDLElBQUssRUFBOUMsRUFBaURDLElBQWpELENBQXNELElBQXRELENBQVA7QUFDRCIsImZpbGUiOiJuby1jeWNsZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVPdmVydmlldyBFbnN1cmVzIHRoYXQgbm8gaW1wb3J0ZWQgbW9kdWxlIGltcG9ydHMgdGhlIGxpbnRlZCBtb2R1bGUuXG4gKiBAYXV0aG9yIEJlbiBNb3NoZXJcbiAqL1xuXG5pbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgbW9kdWxlVmlzaXRvciwgeyBtYWtlT3B0aW9uc1NjaGVtYSB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvbW9kdWxlVmlzaXRvcidcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbi8vIHRvZG86IGNhY2hlIGN5Y2xlcyAvIGRlZXAgcmVsYXRpb25zaGlwcyBmb3IgZmFzdGVyIHJlcGVhdCBldmFsdWF0aW9uXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7IHVybDogZG9jc1VybCgnbm8tY3ljbGUnKSB9LFxuICAgIHNjaGVtYTogW21ha2VPcHRpb25zU2NoZW1hKHtcbiAgICAgIG1heERlcHRoOntcbiAgICAgICAgZGVzY3JpcHRpb246ICdtYXhpbXVtIGRlcGVuZGVuY3kgZGVwdGggdG8gdHJhdmVyc2UnLFxuICAgICAgICB0eXBlOiAnaW50ZWdlcicsXG4gICAgICAgIG1pbmltdW06IDEsXG4gICAgICB9LFxuICAgIH0pXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgY29uc3QgbXlQYXRoID0gY29udGV4dC5nZXRGaWxlbmFtZSgpXG4gICAgaWYgKG15UGF0aCA9PT0gJzx0ZXh0PicpIHJldHVybiB7fSAvLyBjYW4ndCBjeWNsZS1jaGVjayBhIG5vbi1maWxlXG5cbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG4gICAgY29uc3QgbWF4RGVwdGggPSBvcHRpb25zLm1heERlcHRoIHx8IEluZmluaXR5XG5cbiAgICBmdW5jdGlvbiBjaGVja1NvdXJjZVZhbHVlKHNvdXJjZU5vZGUsIGltcG9ydGVyKSB7XG4gICAgICBjb25zdCBpbXBvcnRlZCA9IEV4cG9ydHMuZ2V0KHNvdXJjZU5vZGUudmFsdWUsIGNvbnRleHQpXG5cbiAgICAgIGlmIChpbXBvcnRlci5pbXBvcnRLaW5kID09PSAndHlwZScpIHtcbiAgICAgICAgcmV0dXJuIC8vIG5vIEZsb3cgaW1wb3J0IHJlc29sdXRpb25cbiAgICAgIH1cblxuICAgICAgaWYgKGltcG9ydGVkID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuICAvLyBuby11bnJlc29sdmVkIHRlcnJpdG9yeVxuICAgICAgfVxuXG4gICAgICBpZiAoaW1wb3J0ZWQucGF0aCA9PT0gbXlQYXRoKSB7XG4gICAgICAgIHJldHVybiAgLy8gbm8tc2VsZi1pbXBvcnQgdGVycml0b3J5XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHVudHJhdmVyc2VkID0gW3ttZ2V0OiAoKSA9PiBpbXBvcnRlZCwgcm91dGU6W119XVxuICAgICAgY29uc3QgdHJhdmVyc2VkID0gbmV3IFNldCgpXG4gICAgICBmdW5jdGlvbiBkZXRlY3RDeWNsZSh7bWdldCwgcm91dGV9KSB7XG4gICAgICAgIGNvbnN0IG0gPSBtZ2V0KClcbiAgICAgICAgaWYgKG0gPT0gbnVsbCkgcmV0dXJuXG4gICAgICAgIGlmICh0cmF2ZXJzZWQuaGFzKG0ucGF0aCkpIHJldHVyblxuICAgICAgICB0cmF2ZXJzZWQuYWRkKG0ucGF0aClcblxuICAgICAgICBmb3IgKGxldCBbcGF0aCwgeyBnZXR0ZXIsIHNvdXJjZSB9XSBvZiBtLmltcG9ydHMpIHtcbiAgICAgICAgICBpZiAocGF0aCA9PT0gbXlQYXRoKSByZXR1cm4gdHJ1ZVxuICAgICAgICAgIGlmICh0cmF2ZXJzZWQuaGFzKHBhdGgpKSBjb250aW51ZVxuICAgICAgICAgIGlmIChyb3V0ZS5sZW5ndGggKyAxIDwgbWF4RGVwdGgpIHtcbiAgICAgICAgICAgIHVudHJhdmVyc2VkLnB1c2goe1xuICAgICAgICAgICAgICBtZ2V0OiBnZXR0ZXIsXG4gICAgICAgICAgICAgIHJvdXRlOiByb3V0ZS5jb25jYXQoc291cmNlKSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHdoaWxlICh1bnRyYXZlcnNlZC5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IG5leHQgPSB1bnRyYXZlcnNlZC5zaGlmdCgpIC8vIGJmcyFcbiAgICAgICAgaWYgKGRldGVjdEN5Y2xlKG5leHQpKSB7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9IChuZXh0LnJvdXRlLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gYERlcGVuZGVuY3kgY3ljbGUgdmlhICR7cm91dGVTdHJpbmcobmV4dC5yb3V0ZSl9YFxuICAgICAgICAgICAgOiAnRGVwZW5kZW5jeSBjeWNsZSBkZXRlY3RlZC4nKVxuICAgICAgICAgIGNvbnRleHQucmVwb3J0KGltcG9ydGVyLCBtZXNzYWdlKVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1vZHVsZVZpc2l0b3IoY2hlY2tTb3VyY2VWYWx1ZSwgY29udGV4dC5vcHRpb25zWzBdKVxuICB9LFxufVxuXG5mdW5jdGlvbiByb3V0ZVN0cmluZyhyb3V0ZSkge1xuICByZXR1cm4gcm91dGUubWFwKHMgPT4gYCR7cy52YWx1ZX06JHtzLmxvYy5zdGFydC5saW5lfWApLmpvaW4oJz0+Jylcbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1jeWNsZS5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwibWF4RGVwdGgiLCJvbmVPZiIsImRlc2NyaXB0aW9uIiwibWluaW11bSIsImVudW0iLCJpZ25vcmVFeHRlcm5hbCIsImRlZmF1bHQiLCJjcmVhdGUiLCJjb250ZXh0IiwibXlQYXRoIiwiZ2V0RmlsZW5hbWUiLCJvcHRpb25zIiwiSW5maW5pdHkiLCJpZ25vcmVNb2R1bGUiLCJuYW1lIiwiY2hlY2tTb3VyY2VWYWx1ZSIsInNvdXJjZU5vZGUiLCJpbXBvcnRlciIsInZhbHVlIiwiaW1wb3J0ZWQiLCJFeHBvcnRzIiwiZ2V0IiwiaW1wb3J0S2luZCIsInBhdGgiLCJ1bnRyYXZlcnNlZCIsIm1nZXQiLCJyb3V0ZSIsInRyYXZlcnNlZCIsIlNldCIsImRldGVjdEN5Y2xlIiwibSIsImhhcyIsImFkZCIsImltcG9ydHMiLCJnZXR0ZXIiLCJzb3VyY2UiLCJsZW5ndGgiLCJwdXNoIiwiY29uY2F0IiwibmV4dCIsInNoaWZ0IiwibWVzc2FnZSIsInJvdXRlU3RyaW5nIiwicmVwb3J0IiwibWFwIiwicyIsImxvYyIsInN0YXJ0IiwibGluZSIsImpvaW4iXSwibWFwcGluZ3MiOiJzb0JBQUE7Ozs7O0FBS0EseUM7QUFDQTtBQUNBLGtFO0FBQ0EscUM7O0FBRUE7QUFDQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNLEVBQUVDLEtBQUssdUJBQVEsVUFBUixDQUFQLEVBRkY7QUFHSkMsWUFBUSxDQUFDLHNDQUFrQjtBQUN6QkMsZ0JBQVU7QUFDUkMsZUFBTztBQUNMO0FBQ0VDLHVCQUFhLHNDQURmO0FBRUVOLGdCQUFNLFNBRlI7QUFHRU8sbUJBQVMsQ0FIWCxFQURLOztBQU1MO0FBQ0VDLGdCQUFNLENBQUMsR0FBRCxDQURSO0FBRUVSLGdCQUFN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QkFBYzFCLGdCQUFkLEVBQWdDUCxRQUFRRyxPQUFSLENBQWdCLENBQWhCLENBQWhDLENBQVA7QUFDRCxHQXZGYyxFQUFqQjs7O0FBMEZBLFNBQVMrQixXQUFULENBQXFCaEIsS0FBckIsRUFBNEI7QUFDMUIsU0FBT0EsTUFBTWtCLEdBQU4sQ0FBVUMsS0FBTSxHQUFFQSxFQUFFM0IsS0FBTSxJQUFHMkIsRUFBRUMsR0FBRixDQUFNQyxLQUFOLENBQVlDLElBQUssRUFBOUMsRUFBaURDLElBQWpELENBQXNELElBQXRELENBQVA7QUFDRCIsImZpbGUiOiJuby1jeWNsZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVPdmVydmlldyBFbnN1cmVzIHRoYXQgbm8gaW1wb3J0ZWQgbW9kdWxlIGltcG9ydHMgdGhlIGxpbnRlZCBtb2R1bGUuXG4gKiBAYXV0aG9yIEJlbiBNb3NoZXJcbiAqL1xuXG5pbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgeyBpc0V4dGVybmFsTW9kdWxlIH0gZnJvbSAnLi4vY29yZS9pbXBvcnRUeXBlJ1xuaW1wb3J0IG1vZHVsZVZpc2l0b3IsIHsgbWFrZU9wdGlvbnNTY2hlbWEgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL21vZHVsZVZpc2l0b3InXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG4vLyB0b2RvOiBjYWNoZSBjeWNsZXMgLyBkZWVwIHJlbGF0aW9uc2hpcHMgZm9yIGZhc3RlciByZXBlYXQgZXZhbHVhdGlvblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczogeyB1cmw6IGRvY3NVcmwoJ25vLWN5Y2xlJykgfSxcbiAgICBzY2hlbWE6IFttYWtlT3B0aW9uc1NjaGVtYSh7XG4gICAgICBtYXhEZXB0aDoge1xuICAgICAgICBvbmVPZjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnbWF4aW11bSBkZXBlbmRlbmN5IGRlcHRoIHRvIHRyYXZlcnNlJyxcbiAgICAgICAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICAgICAgICAgIG1pbmltdW06IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBlbnVtOiBbJ+KIniddLFxuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBpZ25vcmVFeHRlcm5hbDoge1xuICAgICAgICBkZXNjcmlwdGlvbjogJ2lnbm9yZSBleHRlcm5hbCBtb2R1bGVzJyxcbiAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSldLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBteVBhdGggPSBjb250ZXh0LmdldEZpbGVuYW1lKClcbiAgICBpZiAobXlQYXRoID09PSAnPHRleHQ+JykgcmV0dXJuIHt9IC8vIGNhbid0IGN5Y2xlLWNoZWNrIGEgbm9uLWZpbGVcblxuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cbiAgICBjb25zdCBtYXhEZXB0aCA9IHR5cGVvZiBvcHRpb25zLm1heERlcHRoID09PSAnbnVtYmVyJyA/IG9wdGlvbnMubWF4RGVwdGggOiBJbmZpbml0eVxuICAgIGNvbnN0IGlnbm9yZU1vZHVsZSA9IChuYW1lKSA9PiBvcHRpb25zLmlnbm9yZUV4dGVybmFsID8gaXNFeHRlcm5hbE1vZHVsZShuYW1lKSA6IGZhbHNlXG5cbiAgICBmdW5jdGlvbiBjaGVja1NvdXJjZVZhbHVlKHNvdXJjZU5vZGUsIGltcG9ydGVyKSB7XG4gICAgICBpZiAoaWdub3JlTW9kdWxlKHNvdXJjZU5vZGUudmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAvLyBpZ25vcmUgZXh0ZXJuYWwgbW9kdWxlc1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpbXBvcnRlZCA9IEV4cG9ydHMuZ2V0KHNvdXJjZU5vZGUudmFsdWUsIGNvbnRleHQpXG5cbiAgICAgIGlmIChpbXBvcnRlci5pbXBvcnRLaW5kID09PSAndHlwZScpIHtcbiAgICAgICAgcmV0dXJuIC8vIG5vIEZsb3cgaW1wb3J0IHJlc29sdXRpb25cbiAgICAgIH1cblxuICAgICAgaWYgKGltcG9ydGVkID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuICAvLyBuby11bnJlc29sdmVkIHRlcnJpdG9yeVxuICAgICAgfVxuXG4gICAgICBpZiAoaW1wb3J0ZWQucGF0aCA9PT0gbXlQYXRoKSB7XG4gICAgICAgIHJldHVybiAgLy8gbm8tc2VsZi1pbXBvcnQgdGVycml0b3J5XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHVudHJhdmVyc2VkID0gW3ttZ2V0OiAoKSA9PiBpbXBvcnRlZCwgcm91dGU6W119XVxuICAgICAgY29uc3QgdHJhdmVyc2VkID0gbmV3IFNldCgpXG4gICAgICBmdW5jdGlvbiBkZXRlY3RDeWNsZSh7bWdldCwgcm91dGV9KSB7XG4gICAgICAgIGNvbnN0IG0gPSBtZ2V0KClcbiAgICAgICAgaWYgKG0gPT0gbnVsbCkgcmV0dXJuXG4gICAgICAgIGlmICh0cmF2ZXJzZWQuaGFzKG0ucGF0aCkpIHJldHVyblxuICAgICAgICB0cmF2ZXJzZWQuYWRkKG0ucGF0aClcblxuICAgICAgICBmb3IgKGxldCBbcGF0aCwgeyBnZXR0ZXIsIHNvdXJjZSB9XSBvZiBtLmltcG9ydHMpIHtcbiAgICAgICAgICBpZiAocGF0aCA9PT0gbXlQYXRoKSByZXR1cm4gdHJ1ZVxuICAgICAgICAgIGlmICh0cmF2ZXJzZWQuaGFzKHBhdGgpKSBjb250aW51ZVxuICAgICAgICAgIGlmIChpZ25vcmVNb2R1bGUoc291cmNlLnZhbHVlKSkgY29udGludWVcbiAgICAgICAgICBpZiAocm91dGUubGVuZ3RoICsgMSA8IG1heERlcHRoKSB7XG4gICAgICAgICAgICB1bnRyYXZlcnNlZC5wdXNoKHtcbiAgICAgICAgICAgICAgbWdldDogZ2V0dGVyLFxuICAgICAgICAgICAgICByb3V0ZTogcm91dGUuY29uY2F0KHNvdXJjZSksXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB3aGlsZSAodW50cmF2ZXJzZWQubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCBuZXh0ID0gdW50cmF2ZXJzZWQuc2hpZnQoKSAvLyBiZnMhXG4gICAgICAgIGlmIChkZXRlY3RDeWNsZShuZXh0KSkge1xuICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAobmV4dC5yb3V0ZS5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IGBEZXBlbmRlbmN5IGN5Y2xlIHZpYSAke3JvdXRlU3RyaW5nKG5leHQucm91dGUpfWBcbiAgICAgICAgICAgIDogJ0RlcGVuZGVuY3kgY3ljbGUgZGV0ZWN0ZWQuJylcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydChpbXBvcnRlciwgbWVzc2FnZSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtb2R1bGVWaXNpdG9yKGNoZWNrU291cmNlVmFsdWUsIGNvbnRleHQub3B0aW9uc1swXSlcbiAgfSxcbn1cblxuZnVuY3Rpb24gcm91dGVTdHJpbmcocm91dGUpIHtcbiAgcmV0dXJuIHJvdXRlLm1hcChzID0+IGAke3MudmFsdWV9OiR7cy5sb2Muc3RhcnQubGluZX1gKS5qb2luKCc9PicpXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-default-export.js b/node_modules/eslint-plugin-import/lib/rules/no-default-export.js index d9114e64..9434bcd1 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-default-export.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-default-export.js @@ -1,11 +1,13 @@ -'use strict'; +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', - docs: {}, - schema: [] - }, + docs: { + url: (0, _docsUrl2.default)('no-default-export') }, + + schema: [] }, + create(context) { // ignore non-modules @@ -14,10 +16,9 @@ module.exports = { } const preferNamed = 'Prefer named exports.'; - const noAliasDefault = (_ref) => { - let local = _ref.local; - return `Do not alias \`${local.name}\` as \`default\`. Just export ` + `\`${local.name}\` itself instead.`; - }; + const noAliasDefault = (_ref) => {let local = _ref.local;return ( + `Do not alias \`${local.name}\` as \`default\`. Just export ` + + `\`${local.name}\` itself instead.`);}; return { ExportDefaultDeclaration(node) { @@ -26,14 +27,15 @@ module.exports = { ExportNamedDeclaration(node) { node.specifiers.forEach(specifier => { - if (specifier.type === 'ExportDefaultSpecifier' && specifier.exported.name === 'default') { + if (specifier.type === 'ExportDefaultSpecifier' && + specifier.exported.name === 'default') { context.report({ node, message: preferNamed }); - } else if (specifier.type === 'ExportSpecifier' && specifier.exported.name === 'default') { + } else if (specifier.type === 'ExportSpecifier' && + specifier.exported.name === 'default') { context.report({ node, message: noAliasDefault(specifier) }); } }); - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1kZWZhdWx0LWV4cG9ydC5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsInBhcnNlck9wdGlvbnMiLCJzb3VyY2VUeXBlIiwicHJlZmVyTmFtZWQiLCJub0FsaWFzRGVmYXVsdCIsImxvY2FsIiwibmFtZSIsIkV4cG9ydERlZmF1bHREZWNsYXJhdGlvbiIsIm5vZGUiLCJyZXBvcnQiLCJtZXNzYWdlIiwiRXhwb3J0TmFtZWREZWNsYXJhdGlvbiIsInNwZWNpZmllcnMiLCJmb3JFYWNoIiwic3BlY2lmaWVyIiwiZXhwb3J0ZWQiXSwibWFwcGluZ3MiOiI7O0FBQUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTSxFQUZGO0FBR0pDLFlBQVE7QUFISixHQURTOztBQU9mQyxTQUFPQyxPQUFQLEVBQWdCO0FBQ2Q7QUFDQSxRQUFJQSxRQUFRQyxhQUFSLENBQXNCQyxVQUF0QixLQUFxQyxRQUF6QyxFQUFtRDtBQUNqRCxhQUFPLEVBQVA7QUFDRDs7QUFFRCxVQUFNQyxjQUFjLHVCQUFwQjtBQUNBLFVBQU1DLGlCQUFpQjtBQUFBLFVBQUVDLEtBQUYsUUFBRUEsS0FBRjtBQUFBLGFBQ3BCLGtCQUFpQkEsTUFBTUMsSUFBSyxpQ0FBN0IsR0FDQyxLQUFJRCxNQUFNQyxJQUFLLG9CQUZLO0FBQUEsS0FBdkI7O0FBSUEsV0FBTztBQUNMQywrQkFBeUJDLElBQXpCLEVBQStCO0FBQzdCUixnQkFBUVMsTUFBUixDQUFlLEVBQUNELElBQUQsRUFBT0UsU0FBU1AsV0FBaEIsRUFBZjtBQUNELE9BSEk7O0FBS0xRLDZCQUF1QkgsSUFBdkIsRUFBNkI7QUFDM0JBLGFBQUtJLFVBQUwsQ0FBZ0JDLE9BQWhCLENBQXdCQyxhQUFhO0FBQ25DLGNBQUlBLFVBQVVsQixJQUFWLEtBQW1CLHdCQUFuQixJQUNBa0IsVUFBVUMsUUFBVixDQUFtQlQsSUFBbkIsS0FBNEIsU0FEaEMsRUFDMkM7QUFDekNOLG9CQUFRUyxNQUFSLENBQWUsRUFBQ0QsSUFBRCxFQUFPRSxTQUFTUCxXQUFoQixFQUFmO0FBQ0QsV0FIRCxNQUdPLElBQUlXLFVBQVVsQixJQUFWLEtBQW1CLGlCQUFuQixJQUNQa0IsVUFBVUMsUUFBVixDQUFtQlQsSUFBbkIsS0FBNEIsU0FEekIsRUFDb0M7QUFDekNOLG9CQUFRUyxNQUFSLENBQWUsRUFBQ0QsSUFBRCxFQUFPRSxTQUFTTixlQUFlVSxTQUFmLENBQWhCLEVBQWY7QUFDRDtBQUNGLFNBUkQ7QUFTRDtBQWZJLEtBQVA7QUFpQkQ7QUFuQ2MsQ0FBakIiLCJmaWxlIjoibm8tZGVmYXVsdC1leHBvcnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7fSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZShjb250ZXh0KSB7XG4gICAgLy8gaWdub3JlIG5vbi1tb2R1bGVzXG4gICAgaWYgKGNvbnRleHQucGFyc2VyT3B0aW9ucy5zb3VyY2VUeXBlICE9PSAnbW9kdWxlJykge1xuICAgICAgcmV0dXJuIHt9XG4gICAgfVxuXG4gICAgY29uc3QgcHJlZmVyTmFtZWQgPSAnUHJlZmVyIG5hbWVkIGV4cG9ydHMuJ1xuICAgIGNvbnN0IG5vQWxpYXNEZWZhdWx0ID0gKHtsb2NhbH0pID0+XG4gICAgICBgRG8gbm90IGFsaWFzIFxcYCR7bG9jYWwubmFtZX1cXGAgYXMgXFxgZGVmYXVsdFxcYC4gSnVzdCBleHBvcnQgYCArXG4gICAgICBgXFxgJHtsb2NhbC5uYW1lfVxcYCBpdHNlbGYgaW5zdGVhZC5gXG5cbiAgICByZXR1cm4ge1xuICAgICAgRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe25vZGUsIG1lc3NhZ2U6IHByZWZlck5hbWVkfSlcbiAgICAgIH0sXG5cbiAgICAgIEV4cG9ydE5hbWVkRGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgICBub2RlLnNwZWNpZmllcnMuZm9yRWFjaChzcGVjaWZpZXIgPT4ge1xuICAgICAgICAgIGlmIChzcGVjaWZpZXIudHlwZSA9PT0gJ0V4cG9ydERlZmF1bHRTcGVjaWZpZXInICYmXG4gICAgICAgICAgICAgIHNwZWNpZmllci5leHBvcnRlZC5uYW1lID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtub2RlLCBtZXNzYWdlOiBwcmVmZXJOYW1lZH0pXG4gICAgICAgICAgfSBlbHNlIGlmIChzcGVjaWZpZXIudHlwZSA9PT0gJ0V4cG9ydFNwZWNpZmllcicgJiZcbiAgICAgICAgICAgICAgc3BlY2lmaWVyLmV4cG9ydGVkLm5hbWUgPT09ICdkZWZhdWx0Jykge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoe25vZGUsIG1lc3NhZ2U6IG5vQWxpYXNEZWZhdWx0KHNwZWNpZmllcil9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1kZWZhdWx0LWV4cG9ydC5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsInBhcnNlck9wdGlvbnMiLCJzb3VyY2VUeXBlIiwicHJlZmVyTmFtZWQiLCJub0FsaWFzRGVmYXVsdCIsImxvY2FsIiwibmFtZSIsIkV4cG9ydERlZmF1bHREZWNsYXJhdGlvbiIsIm5vZGUiLCJyZXBvcnQiLCJtZXNzYWdlIiwiRXhwb3J0TmFtZWREZWNsYXJhdGlvbiIsInNwZWNpZmllcnMiLCJmb3JFYWNoIiwic3BlY2lmaWVyIiwiZXhwb3J0ZWQiXSwibWFwcGluZ3MiOiJhQUFBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxtQkFBUixDQURELEVBRkY7O0FBS0pDLFlBQVEsRUFMSixFQURTOzs7QUFTZkMsU0FBT0MsT0FBUCxFQUFnQjtBQUNkO0FBQ0EsUUFBSUEsUUFBUUMsYUFBUixDQUFzQkMsVUFBdEIsS0FBcUMsUUFBekMsRUFBbUQ7QUFDakQsYUFBTyxFQUFQO0FBQ0Q7O0FBRUQsVUFBTUMsY0FBYyx1QkFBcEI7QUFDQSxVQUFNQyxpQkFBaUIsZUFBRUMsS0FBRixRQUFFQSxLQUFGO0FBQ3BCLDBCQUFpQkEsTUFBTUMsSUFBSyxpQ0FBN0I7QUFDQyxhQUFJRCxNQUFNQyxJQUFLLG9CQUZLLEdBQXZCOztBQUlBLFdBQU87QUFDTEMsK0JBQXlCQyxJQUF6QixFQUErQjtBQUM3QlIsZ0JBQVFTLE1BQVIsQ0FBZSxFQUFDRCxJQUFELEVBQU9FLFNBQVNQLFdBQWhCLEVBQWY7QUFDRCxPQUhJOztBQUtMUSw2QkFBdUJILElBQXZCLEVBQTZCO0FBQzNCQSxhQUFLSSxVQUFMLENBQWdCQyxPQUFoQixDQUF3QkMsYUFBYTtBQUNuQyxjQUFJQSxVQUFVbkIsSUFBVixLQUFtQix3QkFBbkI7QUFDQW1CLG9CQUFVQyxRQUFWLENBQW1CVCxJQUFuQixLQUE0QixTQURoQyxFQUMyQztBQUN6Q04sb0JBQVFTLE1BQVIsQ0FBZSxFQUFDRCxJQUFELEVBQU9FLFNBQVNQLFdBQWhCLEVBQWY7QUFDRCxXQUhELE1BR08sSUFBSVcsVUFBVW5CLElBQVYsS0FBbUIsaUJBQW5CO0FBQ1BtQixvQkFBVUMsUUFBVixDQUFtQlQsSUFBbkIsS0FBNEIsU0FEekIsRUFDb0M7QUFDekNOLG9CQUFRUyxNQUFSLENBQWUsRUFBQ0QsSUFBRCxFQUFPRSxTQUFTTixlQUFlVSxTQUFmLENBQWhCLEVBQWY7QUFDRDtBQUNGLFNBUkQ7QUFTRCxPQWZJLEVBQVA7O0FBaUJELEdBckNjLEVBQWpCIiwiZmlsZSI6Im5vLWRlZmF1bHQtZXhwb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1kZWZhdWx0LWV4cG9ydCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGUoY29udGV4dCkge1xuICAgIC8vIGlnbm9yZSBub24tbW9kdWxlc1xuICAgIGlmIChjb250ZXh0LnBhcnNlck9wdGlvbnMuc291cmNlVHlwZSAhPT0gJ21vZHVsZScpIHtcbiAgICAgIHJldHVybiB7fVxuICAgIH1cblxuICAgIGNvbnN0IHByZWZlck5hbWVkID0gJ1ByZWZlciBuYW1lZCBleHBvcnRzLidcbiAgICBjb25zdCBub0FsaWFzRGVmYXVsdCA9ICh7bG9jYWx9KSA9PlxuICAgICAgYERvIG5vdCBhbGlhcyBcXGAke2xvY2FsLm5hbWV9XFxgIGFzIFxcYGRlZmF1bHRcXGAuIEp1c3QgZXhwb3J0IGAgK1xuICAgICAgYFxcYCR7bG9jYWwubmFtZX1cXGAgaXRzZWxmIGluc3RlYWQuYFxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEV4cG9ydERlZmF1bHREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtub2RlLCBtZXNzYWdlOiBwcmVmZXJOYW1lZH0pXG4gICAgICB9LFxuXG4gICAgICBFeHBvcnROYW1lZERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgbm9kZS5zcGVjaWZpZXJzLmZvckVhY2goc3BlY2lmaWVyID0+IHtcbiAgICAgICAgICBpZiAoc3BlY2lmaWVyLnR5cGUgPT09ICdFeHBvcnREZWZhdWx0U3BlY2lmaWVyJyAmJlxuICAgICAgICAgICAgICBzcGVjaWZpZXIuZXhwb3J0ZWQubmFtZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7bm9kZSwgbWVzc2FnZTogcHJlZmVyTmFtZWR9KVxuICAgICAgICAgIH0gZWxzZSBpZiAoc3BlY2lmaWVyLnR5cGUgPT09ICdFeHBvcnRTcGVjaWZpZXInICYmXG4gICAgICAgICAgICAgIHNwZWNpZmllci5leHBvcnRlZC5uYW1lID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtub2RlLCBtZXNzYWdlOiBub0FsaWFzRGVmYXVsdChzcGVjaWZpZXIpfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-deprecated.js b/node_modules/eslint-plugin-import/lib/rules/no-deprecated.js index 954f595d..f641eadd 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-deprecated.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-deprecated.js @@ -1,18 +1,6 @@ -'use strict'; - -var _declaredScope = require('eslint-module-utils/declaredScope'); - -var _declaredScope2 = _interopRequireDefault(_declaredScope); - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _declaredScope = require('eslint-module-utils/declaredScope');var _declaredScope2 = _interopRequireDefault(_declaredScope); +var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} function message(deprecation) { return 'Deprecated' + (deprecation.description ? ': ' + deprecation.description : '.'); @@ -31,14 +19,14 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-deprecated') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-deprecated') }, + + schema: [] }, + create: function (context) { const deprecated = new Map(), - namespaces = new Map(); + namespaces = new Map(); function checkSpecifiers(node) { if (node.type !== 'ImportDeclaration') return; @@ -48,7 +36,8 @@ module.exports = { if (imports == null) return; let moduleDeprecation; - if (imports.doc && imports.doc.tags.some(t => t.title === 'deprecated' && (moduleDeprecation = t))) { + if (imports.doc && + imports.doc.tags.some(t => t.title === 'deprecated' && (moduleDeprecation = t))) { context.report({ node, message: message(moduleDeprecation) }); } @@ -61,8 +50,8 @@ module.exports = { let imported, local; switch (im.type) { - case 'ImportNamespaceSpecifier': - { + + case 'ImportNamespaceSpecifier':{ if (!imports.size) return; namespaces.set(im.local.name, imports); return; @@ -78,8 +67,7 @@ module.exports = { local = im.local.name; break; - default: - return; // can't handle this one + default:return; // can't handle this one } // unknown thing can't be deprecated @@ -95,14 +83,12 @@ module.exports = { context.report({ node: im, message: message(deprecation) }); deprecated.set(local, deprecation); + }); } return { - 'Program': (_ref) => { - let body = _ref.body; - return body.forEach(checkSpecifiers); - }, + 'Program': (_ref) => {let body = _ref.body;return body.forEach(checkSpecifiers);}, 'Identifier': function (node) { if (node.parent.type === 'MemberExpression' && node.parent.property === node) { @@ -117,8 +103,8 @@ module.exports = { if ((0, _declaredScope2.default)(context, node.name) !== 'module') return; context.report({ node, - message: message(deprecated.get(node.name)) - }); + message: message(deprecated.get(node.name)) }); + }, 'MemberExpression': function (dereference) { @@ -131,7 +117,8 @@ module.exports = { var namespace = namespaces.get(dereference.object.name); var namepath = [dereference.object.name]; // while property is namespace and parent is member expression, keep validating - while (namespace instanceof _ExportMap2.default && dereference.type === 'MemberExpression') { + while (namespace instanceof _ExportMap2.default && + dereference.type === 'MemberExpression') { // ignore computed parts for now if (dereference.computed) return; @@ -150,8 +137,7 @@ module.exports = { namespace = metadata.namespace; dereference = dereference.parent; } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1kZXByZWNhdGVkLmpzIl0sIm5hbWVzIjpbIm1lc3NhZ2UiLCJkZXByZWNhdGlvbiIsImRlc2NyaXB0aW9uIiwiZ2V0RGVwcmVjYXRpb24iLCJtZXRhZGF0YSIsImRvYyIsInRhZ3MiLCJzb21lIiwidCIsInRpdGxlIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJkZXByZWNhdGVkIiwiTWFwIiwibmFtZXNwYWNlcyIsImNoZWNrU3BlY2lmaWVycyIsIm5vZGUiLCJzb3VyY2UiLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInZhbHVlIiwibW9kdWxlRGVwcmVjYXRpb24iLCJyZXBvcnQiLCJlcnJvcnMiLCJsZW5ndGgiLCJyZXBvcnRFcnJvcnMiLCJzcGVjaWZpZXJzIiwiZm9yRWFjaCIsImltIiwiaW1wb3J0ZWQiLCJsb2NhbCIsInNpemUiLCJzZXQiLCJuYW1lIiwiZXhwb3J0ZWQiLCJuYW1lc3BhY2UiLCJib2R5IiwicGFyZW50IiwicHJvcGVydHkiLCJzbGljZSIsImhhcyIsImRlcmVmZXJlbmNlIiwib2JqZWN0IiwibmFtZXBhdGgiLCJjb21wdXRlZCIsInB1c2giXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQSxTQUFTQSxPQUFULENBQWlCQyxXQUFqQixFQUE4QjtBQUM1QixTQUFPLGdCQUFnQkEsWUFBWUMsV0FBWixHQUEwQixPQUFPRCxZQUFZQyxXQUE3QyxHQUEyRCxHQUEzRSxDQUFQO0FBQ0Q7O0FBRUQsU0FBU0MsY0FBVCxDQUF3QkMsUUFBeEIsRUFBa0M7QUFDaEMsTUFBSSxDQUFDQSxRQUFELElBQWEsQ0FBQ0EsU0FBU0MsR0FBM0IsRUFBZ0M7O0FBRWhDLE1BQUlKLFdBQUo7QUFDQSxNQUFJRyxTQUFTQyxHQUFULENBQWFDLElBQWIsQ0FBa0JDLElBQWxCLENBQXVCQyxLQUFL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QUFFOUM7QUFDQSxjQUFJb0MsWUFBWUcsUUFBaEIsRUFBMEI7O0FBRTFCLGdCQUFNaEQsV0FBV3VDLFVBQVVoQixHQUFWLENBQWNzQixZQUFZSCxRQUFaLENBQXFCTCxJQUFuQyxDQUFqQjs7QUFFQSxjQUFJLENBQUNyQyxRQUFMLEVBQWU7QUFDZixnQkFBTUgsY0FBY0UsZUFBZUMsUUFBZixDQUFwQjs7QUFFQSxjQUFJSCxXQUFKLEVBQWlCO0FBQ2ZpQixvQkFBUVksTUFBUixDQUFlLEVBQUVQLE1BQU0wQixZQUFZSCxRQUFwQixFQUE4QjlDLFNBQVNBLFFBQVFDLFdBQVIsQ0FBdkMsRUFBZjtBQUNEOztBQUVEO0FBQ0FrRCxtQkFBU0UsSUFBVCxDQUFjSixZQUFZSCxRQUFaLENBQXFCTCxJQUFuQztBQUNBRSxzQkFBWXZDLFNBQVN1QyxTQUFyQjtBQUNBTSx3QkFBY0EsWUFBWUosTUFBMUI7QUFDRDtBQUNGO0FBbERJLEtBQVA7QUFvREQ7QUE1SGMsQ0FBakIiLCJmaWxlIjoibm8tZGVwcmVjYXRlZC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkZWNsYXJlZFNjb3BlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvZGVjbGFyZWRTY29wZSdcbmltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIG1lc3NhZ2UoZGVwcmVjYXRpb24pIHtcbiAgcmV0dXJuICdEZXByZWNhdGVkJyArIChkZXByZWNhdGlvbi5kZXNjcmlwdGlvbiA/ICc6ICcgKyBkZXByZWNhdGlvbi5kZXNjcmlwdGlvbiA6ICcuJylcbn1cblxuZnVuY3Rpb24gZ2V0RGVwcmVjYXRpb24obWV0YWRhdGEpIHtcbiAgaWYgKCFtZXRhZGF0YSB8fCAhbWV0YWRhdGEuZG9jKSByZXR1cm5cblxuICBsZXQgZGVwcmVjYXRpb25cbiAgaWYgKG1ldGFkYXRhLmRvYy50YWdzLnNvbWUodCA9PiB0LnRpdGxlID09PSAnZGVwcmVjYXRlZCcgJiYgKGRlcHJlY2F0aW9uID0gdCkpKSB7XG4gICAgcmV0dXJuIGRlcHJlY2F0aW9uXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1kZXByZWNhdGVkJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBkZXByZWNhdGVkID0gbmV3IE1hcCgpXG4gICAgICAgICwgbmFtZXNwYWNlcyA9IG5ldyBNYXAoKVxuXG4gICAgZnVuY3Rpb24gY2hlY2tTcGVjaWZpZXJzKG5vZGUpIHtcbiAgICAgIGlmIChub2RlLnR5cGUgIT09ICdJbXBvcnREZWNsYXJhdGlvbicpIHJldHVyblxuICAgICAgaWYgKG5vZGUuc291cmNlID09IG51bGwpIHJldHVybiAvLyBsb2NhbCBleHBvcnQsIGlnbm9yZVxuXG4gICAgICBjb25zdCBpbXBvcnRzID0gRXhwb3J0cy5nZXQobm9kZS5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSByZXR1cm5cblxuICAgICAgbGV0IG1vZHVsZURlcHJlY2F0aW9uXG4gICAgICBpZiAoaW1wb3J0cy5kb2MgJiZcbiAgICAgICAgICBpbXBvcnRzLmRvYy50YWdzLnNvbWUodCA9PiB0LnRpdGxlID09PSAnZGVwcmVjYXRlZCcgJiYgKG1vZHVsZURlcHJlY2F0aW9uID0gdCkpKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHsgbm9kZSwgbWVzc2FnZTogbWVzc2FnZShtb2R1bGVEZXByZWNhdGlvbikgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKGltcG9ydHMuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICBpbXBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBub2RlKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgbm9kZS5zcGVjaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKGltKSB7XG4gICAgICAgIGxldCBpbXBvcnRlZCwgbG9jYWxcbiAgICAgICAgc3dpdGNoIChpbS50eXBlKSB7XG5cblxuICAgICAgICAgIGNhc2UgJ0ltcG9ydE5hbWVzcGFjZVNwZWNpZmllcic6e1xuICAgICAgICAgICAgaWYgKCFpbXBvcnRzLnNpemUpIHJldHVyblxuICAgICAgICAgICAgbmFtZXNwYWNlcy5zZXQoaW0ubG9jYWwubmFtZSwgaW1wb3J0cylcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInOlxuICAgICAgICAgICAgaW1wb3J0ZWQgPSAnZGVmYXVsdCdcbiAgICAgICAgICAgIGxvY2FsID0gaW0ubG9jYWwubmFtZVxuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGNhc2UgJ0ltcG9ydFNwZWNpZmllcic6XG4gICAgICAgICAgICBpbXBvcnRlZCA9IGltLmltcG9ydGVkLm5hbWVcbiAgICAgICAgICAgIGxvY2FsID0gaW0ubG9jYWwubmFtZVxuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGRlZmF1bHQ6IHJldHVybiAvLyBjYW4ndCBoYW5kbGUgdGhpcyBvbmVcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHVua25vd24gdGhpbmcgY2FuJ3QgYmUgZGVwcmVjYXRlZFxuICAgICAgICBjb25zdCBleHBvcnRlZCA9IGltcG9ydHMuZ2V0KGltcG9ydGVkKVxuICAgICAgICBpZiAoZXhwb3J0ZWQgPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgICAgLy8gY2FwdHVyZSBpbXBvcnQgb2YgZGVlcCBuYW1lc3BhY2VcbiAgICAgICAgaWYgKGV4cG9ydGVkLm5hbWVzcGFjZSkgbmFtZXNwYWNlcy5zZXQobG9jYWwsIGV4cG9ydGVkLm5hbWVzcGFjZSlcblxuICAgICAgICBjb25zdCBkZXByZWNhdGlvbiA9IGdldERlcHJlY2F0aW9uKGltcG9ydHMuZ2V0KGltcG9ydGVkKSlcbiAgICAgICAgaWYgKCFkZXByZWNhdGlvbikgcmV0dXJuXG5cbiAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlOiBpbSwgbWVzc2FnZTogbWVzc2FnZShkZXByZWNhdGlvbikgfSlcblxuICAgICAgICBkZXByZWNhdGVkLnNldChsb2NhbCwgZGVwcmVjYXRpb24pXG5cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdQcm9ncmFtJzogKHsgYm9keSB9KSA9PiBib2R5LmZvckVhY2goY2hlY2tTcGVjaWZpZXJzKSxcblxuICAgICAgJ0lkZW50aWZpZXInOiBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nICYmIG5vZGUucGFyZW50LnByb3BlcnR5ID09PSBub2RlKSB7XG4gICAgICAgICAgcmV0dXJuIC8vIGhhbmRsZWQgYnkgTWVtYmVyRXhwcmVzc2lvblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gaWdub3JlIHNwZWNpZmllciBpZGVudGlmaWVyc1xuICAgICAgICBpZiAobm9kZS5wYXJlbnQudHlwZS5zbGljZSgwLCA2KSA9PT0gJ0ltcG9ydCcpIHJldHVyblxuXG4gICAgICAgIGlmICghZGVwcmVjYXRlZC5oYXMobm9kZS5uYW1lKSkgcmV0dXJuXG5cbiAgICAgICAgaWYgKGRlY2xhcmVkU2NvcGUoY29udGV4dCwgbm9kZS5uYW1lKSAhPT0gJ21vZHVsZScpIHJldHVyblxuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgICBtZXNzYWdlOiBtZXNzYWdlKGRlcHJlY2F0ZWQuZ2V0KG5vZGUubmFtZSkpLFxuICAgICAgICB9KVxuICAgICAgfSxcblxuICAgICAgJ01lbWJlckV4cHJlc3Npb24nOiBmdW5jdGlvbiAoZGVyZWZlcmVuY2UpIHtcbiAgICAgICAgaWYgKGRlcmVmZXJlbmNlLm9iamVjdC50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAoIW5hbWVzcGFjZXMuaGFzKGRlcmVmZXJlbmNlLm9iamVjdC5uYW1lKSkgcmV0dXJuXG5cbiAgICAgICAgaWYgKGRlY2xhcmVkU2NvcGUoY29udGV4dCwgZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpICE9PSAnbW9kdWxlJykgcmV0dXJuXG5cbiAgICAgICAgLy8gZ28gZGVlcFxuICAgICAgICB2YXIgbmFtZXNwYWNlID0gbmFtZXNwYWNlcy5nZXQoZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpXG4gICAgICAgIHZhciBuYW1lcGF0aCA9IFtkZXJlZmVyZW5jZS5vYmplY3QubmFtZV1cbiAgICAgICAgLy8gd2hpbGUgcHJvcGVydHkgaXMgbmFtZXNwYWNlIGFuZCBwYXJlbnQgaXMgbWVtYmVyIGV4cHJlc3Npb24sIGtlZXAgdmFsaWRhdGluZ1xuICAgICAgICB3aGlsZSAobmFtZXNwYWNlIGluc3RhbmNlb2YgRXhwb3J0cyAmJlxuICAgICAgICAgICAgICAgZGVyZWZlcmVuY2UudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nKSB7XG5cbiAgICAgICAgICAvLyBpZ25vcmUgY29tcHV0ZWQgcGFydHMgZm9yIG5vd1xuICAgICAgICAgIGlmIChkZXJlZmVyZW5jZS5jb21wdXRlZCkgcmV0dXJuXG5cbiAgICAgICAgICBjb25zdCBtZXRhZGF0YSA9IG5hbWVzcGFjZS5nZXQoZGVyZWZlcmVuY2UucHJvcGVydHkubmFtZSlcblxuICAgICAgICAgIGlmICghbWV0YWRhdGEpIGJyZWFrXG4gICAgICAgICAgY29uc3QgZGVwcmVjYXRpb24gPSBnZXREZXByZWNhdGlvbihtZXRhZGF0YSlcblxuICAgICAgICAgIGlmIChkZXByZWNhdGlvbikge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlOiBkZXJlZmVyZW5jZS5wcm9wZXJ0eSwgbWVzc2FnZTogbWVzc2FnZShkZXByZWNhdGlvbikgfSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBzdGFzaCBhbmQgcG9wXG4gICAgICAgICAgbmFtZXBhdGgucHVzaChkZXJlZmVyZW5jZS5wcm9wZXJ0eS5uYW1lKVxuICAgICAgICAgIG5hbWVzcGFjZSA9IG1ldGFkYXRhLm5hbWVzcGFjZVxuICAgICAgICAgIGRlcmVmZXJlbmNlID0gZGVyZWZlcmVuY2UucGFyZW50XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1kZXByZWNhdGVkLmpzIl0sIm5hbWVzIjpbIm1lc3NhZ2UiLCJkZXByZWNhdGlvbiIsImRlc2NyaXB0aW9uIiwiZ2V0RGVwcmVjYXRpb24iLCJtZXRhZGF0YSIsImRvYyIsInRhZ3MiLCJzb21lIiwidCIsInRpdGxlIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJkZXByZWNhdGVkIiwiTWFwIiwibmFtZXNwYWNlcyIsImNoZWNrU3BlY2lmaWVycyIsIm5vZGUiLCJzb3VyY2UiLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInZhbHVlIiwibW9kdWxlRGVwcmVjYXRpb24iLCJyZXBvcnQiLCJlcnJvcnMiLCJsZW5ndGgiLCJyZXBvcnRFcnJvcnMiLCJzcGVjaWZpZXJzIiwiZm9yRWFjaCIsImltIiwiaW1wb3J0ZWQiLCJsb2NhbCIsInNpemUiLCJzZXQiLCJuYW1lIiwiZXhwb3J0ZWQiLCJuYW1lc3BhY2UiLCJib2R5IiwicGFyZW50IiwicHJvcGVydHkiLCJzbGljZSIsImhhcyIsImRlcmVmZXJlbmNlIiwib2JqZWN0IiwibmFtZXBhdGgiLCJjb21wdXRlZCIsInB1c2giXSwibWFwcGluZ3MiOiJhQUFBLGtFO0FBQ0EseUM7QUFDQSxxQzs7QUFFQSxTQUFTQSxPQUFULENBQWlCQyxXQUFqQixFQUE4QjtBQUM1QixTQUFPLGdCQUFnQkEsWUFBWUMsV0FBWixHQUEwQixPQUFPRCxZQUFZQyxXQUE3QyxHQUEyRCxHQUEzRSxDQUFQO0FBQ0Q7O0FBRUQsU0FBU0MsY0FBVCxDQUF3QkMsUUFBeEIsRUFBa0M7QUFDaEMsTUFBSSxDQUFDQSxRQUFELElBQWEsQ0FBQ0EsU0FBU0MsR0FBM0IsRUFBZ0M7O0FBRWhDLE1BQUlKLFdBQUo7QUFDQSxNQUFJRyxTQUFTQyxHQUFULENBQWFDLElBQWIsQ0FBa0JDLElBQWxCLENBQXVCQyxLQUFLQSxF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QyxZQUFZRyxRQUFoQixFQUEwQjs7QUFFMUIsZ0JBQU1oRCxXQUFXdUMsVUFBVWhCLEdBQVYsQ0FBY3NCLFlBQVlILFFBQVosQ0FBcUJMLElBQW5DLENBQWpCOztBQUVBLGNBQUksQ0FBQ3JDLFFBQUwsRUFBZTtBQUNmLGdCQUFNSCxjQUFjRSxlQUFlQyxRQUFmLENBQXBCOztBQUVBLGNBQUlILFdBQUosRUFBaUI7QUFDZmlCLG9CQUFRWSxNQUFSLENBQWUsRUFBRVAsTUFBTTBCLFlBQVlILFFBQXBCLEVBQThCOUMsU0FBU0EsUUFBUUMsV0FBUixDQUF2QyxFQUFmO0FBQ0Q7O0FBRUQ7QUFDQWtELG1CQUFTRSxJQUFULENBQWNKLFlBQVlILFFBQVosQ0FBcUJMLElBQW5DO0FBQ0FFLHNCQUFZdkMsU0FBU3VDLFNBQXJCO0FBQ0FNLHdCQUFjQSxZQUFZSixNQUExQjtBQUNEO0FBQ0YsT0FsREksRUFBUDs7QUFvREQsR0E1SGMsRUFBakIiLCJmaWxlIjoibm8tZGVwcmVjYXRlZC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkZWNsYXJlZFNjb3BlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvZGVjbGFyZWRTY29wZSdcbmltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIG1lc3NhZ2UoZGVwcmVjYXRpb24pIHtcbiAgcmV0dXJuICdEZXByZWNhdGVkJyArIChkZXByZWNhdGlvbi5kZXNjcmlwdGlvbiA/ICc6ICcgKyBkZXByZWNhdGlvbi5kZXNjcmlwdGlvbiA6ICcuJylcbn1cblxuZnVuY3Rpb24gZ2V0RGVwcmVjYXRpb24obWV0YWRhdGEpIHtcbiAgaWYgKCFtZXRhZGF0YSB8fCAhbWV0YWRhdGEuZG9jKSByZXR1cm5cblxuICBsZXQgZGVwcmVjYXRpb25cbiAgaWYgKG1ldGFkYXRhLmRvYy50YWdzLnNvbWUodCA9PiB0LnRpdGxlID09PSAnZGVwcmVjYXRlZCcgJiYgKGRlcHJlY2F0aW9uID0gdCkpKSB7XG4gICAgcmV0dXJuIGRlcHJlY2F0aW9uXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1kZXByZWNhdGVkJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBkZXByZWNhdGVkID0gbmV3IE1hcCgpXG4gICAgICAgICwgbmFtZXNwYWNlcyA9IG5ldyBNYXAoKVxuXG4gICAgZnVuY3Rpb24gY2hlY2tTcGVjaWZpZXJzKG5vZGUpIHtcbiAgICAgIGlmIChub2RlLnR5cGUgIT09ICdJbXBvcnREZWNsYXJhdGlvbicpIHJldHVyblxuICAgICAgaWYgKG5vZGUuc291cmNlID09IG51bGwpIHJldHVybiAvLyBsb2NhbCBleHBvcnQsIGlnbm9yZVxuXG4gICAgICBjb25zdCBpbXBvcnRzID0gRXhwb3J0cy5nZXQobm9kZS5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSByZXR1cm5cblxuICAgICAgbGV0IG1vZHVsZURlcHJlY2F0aW9uXG4gICAgICBpZiAoaW1wb3J0cy5kb2MgJiZcbiAgICAgICAgICBpbXBvcnRzLmRvYy50YWdzLnNvbWUodCA9PiB0LnRpdGxlID09PSAnZGVwcmVjYXRlZCcgJiYgKG1vZHVsZURlcHJlY2F0aW9uID0gdCkpKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHsgbm9kZSwgbWVzc2FnZTogbWVzc2FnZShtb2R1bGVEZXByZWNhdGlvbikgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKGltcG9ydHMuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICBpbXBvcnRzLnJlcG9ydEVycm9ycyhjb250ZXh0LCBub2RlKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgbm9kZS5zcGVjaWZpZXJzLmZvckVhY2goZnVuY3Rpb24gKGltKSB7XG4gICAgICAgIGxldCBpbXBvcnRlZCwgbG9jYWxcbiAgICAgICAgc3dpdGNoIChpbS50eXBlKSB7XG5cblxuICAgICAgICAgIGNhc2UgJ0ltcG9ydE5hbWVzcGFjZVNwZWNpZmllcic6e1xuICAgICAgICAgICAgaWYgKCFpbXBvcnRzLnNpemUpIHJldHVyblxuICAgICAgICAgICAgbmFtZXNwYWNlcy5zZXQoaW0ubG9jYWwubmFtZSwgaW1wb3J0cylcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInOlxuICAgICAgICAgICAgaW1wb3J0ZWQgPSAnZGVmYXVsdCdcbiAgICAgICAgICAgIGxvY2FsID0gaW0ubG9jYWwubmFtZVxuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGNhc2UgJ0ltcG9ydFNwZWNpZmllcic6XG4gICAgICAgICAgICBpbXBvcnRlZCA9IGltLmltcG9ydGVkLm5hbWVcbiAgICAgICAgICAgIGxvY2FsID0gaW0ubG9jYWwubmFtZVxuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGRlZmF1bHQ6IHJldHVybiAvLyBjYW4ndCBoYW5kbGUgdGhpcyBvbmVcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHVua25vd24gdGhpbmcgY2FuJ3QgYmUgZGVwcmVjYXRlZFxuICAgICAgICBjb25zdCBleHBvcnRlZCA9IGltcG9ydHMuZ2V0KGltcG9ydGVkKVxuICAgICAgICBpZiAoZXhwb3J0ZWQgPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgICAgLy8gY2FwdHVyZSBpbXBvcnQgb2YgZGVlcCBuYW1lc3BhY2VcbiAgICAgICAgaWYgKGV4cG9ydGVkLm5hbWVzcGFjZSkgbmFtZXNwYWNlcy5zZXQobG9jYWwsIGV4cG9ydGVkLm5hbWVzcGFjZSlcblxuICAgICAgICBjb25zdCBkZXByZWNhdGlvbiA9IGdldERlcHJlY2F0aW9uKGltcG9ydHMuZ2V0KGltcG9ydGVkKSlcbiAgICAgICAgaWYgKCFkZXByZWNhdGlvbikgcmV0dXJuXG5cbiAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlOiBpbSwgbWVzc2FnZTogbWVzc2FnZShkZXByZWNhdGlvbikgfSlcblxuICAgICAgICBkZXByZWNhdGVkLnNldChsb2NhbCwgZGVwcmVjYXRpb24pXG5cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdQcm9ncmFtJzogKHsgYm9keSB9KSA9PiBib2R5LmZvckVhY2goY2hlY2tTcGVjaWZpZXJzKSxcblxuICAgICAgJ0lkZW50aWZpZXInOiBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICBpZiAobm9kZS5wYXJlbnQudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nICYmIG5vZGUucGFyZW50LnByb3BlcnR5ID09PSBub2RlKSB7XG4gICAgICAgICAgcmV0dXJuIC8vIGhhbmRsZWQgYnkgTWVtYmVyRXhwcmVzc2lvblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gaWdub3JlIHNwZWNpZmllciBpZGVudGlmaWVyc1xuICAgICAgICBpZiAobm9kZS5wYXJlbnQudHlwZS5zbGljZSgwLCA2KSA9PT0gJ0ltcG9ydCcpIHJldHVyblxuXG4gICAgICAgIGlmICghZGVwcmVjYXRlZC5oYXMobm9kZS5uYW1lKSkgcmV0dXJuXG5cbiAgICAgICAgaWYgKGRlY2xhcmVkU2NvcGUoY29udGV4dCwgbm9kZS5uYW1lKSAhPT0gJ21vZHVsZScpIHJldHVyblxuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgICBtZXNzYWdlOiBtZXNzYWdlKGRlcHJlY2F0ZWQuZ2V0KG5vZGUubmFtZSkpLFxuICAgICAgICB9KVxuICAgICAgfSxcblxuICAgICAgJ01lbWJlckV4cHJlc3Npb24nOiBmdW5jdGlvbiAoZGVyZWZlcmVuY2UpIHtcbiAgICAgICAgaWYgKGRlcmVmZXJlbmNlLm9iamVjdC50eXBlICE9PSAnSWRlbnRpZmllcicpIHJldHVyblxuICAgICAgICBpZiAoIW5hbWVzcGFjZXMuaGFzKGRlcmVmZXJlbmNlLm9iamVjdC5uYW1lKSkgcmV0dXJuXG5cbiAgICAgICAgaWYgKGRlY2xhcmVkU2NvcGUoY29udGV4dCwgZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpICE9PSAnbW9kdWxlJykgcmV0dXJuXG5cbiAgICAgICAgLy8gZ28gZGVlcFxuICAgICAgICB2YXIgbmFtZXNwYWNlID0gbmFtZXNwYWNlcy5nZXQoZGVyZWZlcmVuY2Uub2JqZWN0Lm5hbWUpXG4gICAgICAgIHZhciBuYW1lcGF0aCA9IFtkZXJlZmVyZW5jZS5vYmplY3QubmFtZV1cbiAgICAgICAgLy8gd2hpbGUgcHJvcGVydHkgaXMgbmFtZXNwYWNlIGFuZCBwYXJlbnQgaXMgbWVtYmVyIGV4cHJlc3Npb24sIGtlZXAgdmFsaWRhdGluZ1xuICAgICAgICB3aGlsZSAobmFtZXNwYWNlIGluc3RhbmNlb2YgRXhwb3J0cyAmJlxuICAgICAgICAgICAgICAgZGVyZWZlcmVuY2UudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nKSB7XG5cbiAgICAgICAgICAvLyBpZ25vcmUgY29tcHV0ZWQgcGFydHMgZm9yIG5vd1xuICAgICAgICAgIGlmIChkZXJlZmVyZW5jZS5jb21wdXRlZCkgcmV0dXJuXG5cbiAgICAgICAgICBjb25zdCBtZXRhZGF0YSA9IG5hbWVzcGFjZS5nZXQoZGVyZWZlcmVuY2UucHJvcGVydHkubmFtZSlcblxuICAgICAgICAgIGlmICghbWV0YWRhdGEpIGJyZWFrXG4gICAgICAgICAgY29uc3QgZGVwcmVjYXRpb24gPSBnZXREZXByZWNhdGlvbihtZXRhZGF0YSlcblxuICAgICAgICAgIGlmIChkZXByZWNhdGlvbikge1xuICAgICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlOiBkZXJlZmVyZW5jZS5wcm9wZXJ0eSwgbWVzc2FnZTogbWVzc2FnZShkZXByZWNhdGlvbikgfSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBzdGFzaCBhbmQgcG9wXG4gICAgICAgICAgbmFtZXBhdGgucHVzaChkZXJlZmVyZW5jZS5wcm9wZXJ0eS5uYW1lKVxuICAgICAgICAgIG5hbWVzcGFjZSA9IG1ldGFkYXRhLm5hbWVzcGFjZVxuICAgICAgICAgIGRlcmVmZXJlbmNlID0gZGVyZWZlcmVuY2UucGFyZW50XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-duplicates.js b/node_modules/eslint-plugin-import/lib/rules/no-duplicates.js index a7cbae30..951f3b7f 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-duplicates.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-duplicates.js @@ -1,36 +1,11 @@ -'use strict'; - -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } } - -function _toArray(arr) { return Array.isArray(arr) ? arr : Array.from(arr); } +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];return arr2;} else {return Array.from(arr);}}function _toArray(arr) {return Array.isArray(arr) ? arr : Array.from(arr);} function checkImports(imported, context) { - for (const _ref of imported.entries()) { - var _ref2 = _slicedToArray(_ref, 2); - - const module = _ref2[0]; - const nodes = _ref2[1]; - + for (const _ref of imported.entries()) {var _ref2 = _slicedToArray(_ref, 2);const module = _ref2[0];const nodes = _ref2[1]; if (nodes.length > 1) { - const message = `'${module}' imported multiple times.`; - - var _nodes = _toArray(nodes); - - const first = _nodes[0], - rest = _nodes.slice(1); - + const message = `'${module}' imported multiple times.`;var _nodes = _toArray( + nodes);const first = _nodes[0],rest = _nodes.slice(1); const sourceCode = context.getSourceCode(); const fix = getFix(first, rest, sourceCode); @@ -43,8 +18,8 @@ function checkImports(imported, context) { for (const node of rest) { context.report({ node: node.source, - message - }); + message }); + } } } @@ -69,7 +44,9 @@ function getFix(first, rest, sourceCode) { return undefined; } - const defaultImportNames = new Set([first].concat(_toConsumableArray(rest)).map(getDefaultImportName).filter(Boolean)); + const defaultImportNames = new Set( + [first].concat(_toConsumableArray(rest)).map(getDefaultImportName).filter(Boolean)); + // Bail if there are multiple different default import names – it's up to the // user to choose which one to keep. @@ -79,9 +56,13 @@ function getFix(first, rest, sourceCode) { // Leave it to the user to handle comments. Also skip `import * as ns from // './foo'` imports, since they cannot be merged into another import. - const restWithoutComments = rest.filter(node => !(hasProblematicComments(node, sourceCode) || hasNamespace(node))); + const restWithoutComments = rest.filter(node => !( + hasProblematicComments(node, sourceCode) || + hasNamespace(node))); - const specifiers = restWithoutComments.map(node => { + + const specifiers = restWithoutComments. + map(node => { const tokens = sourceCode.getTokens(node); const openBrace = tokens.find(token => isPunctuator(token, '{')); const closeBrace = tokens.find(token => isPunctuator(token, '}')); @@ -94,11 +75,16 @@ function getFix(first, rest, sourceCode) { importNode: node, text: sourceCode.text.slice(openBrace.range[1], closeBrace.range[0]), hasTrailingComma: isPunctuator(sourceCode.getTokenBefore(closeBrace), ','), - isEmpty: !hasSpecifiers(node) - }; - }).filter(Boolean); + isEmpty: !hasSpecifiers(node) }; + + }). + filter(Boolean); + + const unnecessaryImports = restWithoutComments.filter(node => + !hasSpecifiers(node) && + !hasNamespace(node) && + !specifiers.some(specifier => specifier.importNode === node)); - const unnecessaryImports = restWithoutComments.filter(node => !hasSpecifiers(node) && !hasNamespace(node) && !specifiers.some(specifier => specifier.importNode === node)); const shouldAddDefault = getDefaultImportName(first) == null && defaultImportNames.size === 1; const shouldAddSpecifiers = specifiers.length > 0; @@ -112,34 +98,33 @@ function getFix(first, rest, sourceCode) { const tokens = sourceCode.getTokens(first); const openBrace = tokens.find(token => isPunctuator(token, '{')); const closeBrace = tokens.find(token => isPunctuator(token, '}')); - const firstToken = sourceCode.getFirstToken(first); + const firstToken = sourceCode.getFirstToken(first);var _defaultImportNames = _slicedToArray( + defaultImportNames, 1);const defaultImportName = _defaultImportNames[0]; - var _defaultImportNames = _slicedToArray(defaultImportNames, 1); + const firstHasTrailingComma = + closeBrace != null && + isPunctuator(sourceCode.getTokenBefore(closeBrace), ','); + const firstIsEmpty = !hasSpecifiers(first);var _specifiers$reduce = - const defaultImportName = _defaultImportNames[0]; + specifiers.reduce( + (_ref3, specifier) => {var _ref4 = _slicedToArray(_ref3, 2);let result = _ref4[0],needsComma = _ref4[1]; + return [ + needsComma && !specifier.isEmpty ? + `${result},${specifier.text}` : + `${result}${specifier.text}`, + specifier.isEmpty ? needsComma : true]; - - const firstHasTrailingComma = closeBrace != null && isPunctuator(sourceCode.getTokenBefore(closeBrace), ','); - const firstIsEmpty = !hasSpecifiers(first); - - var _specifiers$reduce = specifiers.reduce((_ref3, specifier) => { - var _ref4 = _slicedToArray(_ref3, 2); - - let result = _ref4[0], - needsComma = _ref4[1]; - - return [needsComma && !specifier.isEmpty ? `${result},${specifier.text}` : `${result}${specifier.text}`, specifier.isEmpty ? needsComma : true]; - }, ['', !firstHasTrailingComma && !firstIsEmpty]), - _specifiers$reduce2 = _slicedToArray(_specifiers$reduce, 1); - - const specifiersText = _specifiers$reduce2[0]; + }, + ['', !firstHasTrailingComma && !firstIsEmpty]),_specifiers$reduce2 = _slicedToArray(_specifiers$reduce, 1);const specifiersText = _specifiers$reduce2[0]; const fixes = []; if (shouldAddDefault && openBrace == null && shouldAddSpecifiers) { // `import './foo'` → `import def, {...} from './foo'` - fixes.push(fixer.insertTextAfter(firstToken, ` ${defaultImportName}, {${specifiersText}} from`)); + fixes.push( + fixer.insertTextAfter(firstToken, ` ${defaultImportName}, {${specifiersText}} from`)); + } else if (shouldAddDefault && openBrace == null && !shouldAddSpecifiers) { // `import './foo'` → `import def from './foo'` fixes.push(fixer.insertTextAfter(firstToken, ` ${defaultImportName} from`)); @@ -151,8 +136,13 @@ function getFix(first, rest, sourceCode) { fixes.push(fixer.insertTextBefore(closeBrace, specifiersText)); } } else if (!shouldAddDefault && openBrace == null && shouldAddSpecifiers) { - // `import './foo'` → `import {...} from './foo'` - fixes.push(fixer.insertTextAfter(firstToken, ` {${specifiersText}} from`)); + if (first.specifiers.length === 0) { + // `import './foo'` → `import {...} from './foo'` + fixes.push(fixer.insertTextAfter(firstToken, ` {${specifiersText}} from`)); + } else { + // `import def from './foo'` → `import def, {...} from './foo'` + fixes.push(fixer.insertTextAfter(first.specifiers[0], `, {${specifiersText}}`)); + } } else if (!shouldAddDefault && openBrace != null && closeBrace != null) { // `import {...} './foo'` → `import {..., ...} from './foo'` fixes.push(fixer.insertTextBefore(closeBrace, specifiersText)); @@ -180,38 +170,47 @@ function isPunctuator(node, value) { // Get the name of the default import of `node`, if any. function getDefaultImportName(node) { - const defaultSpecifier = node.specifiers.find(specifier => specifier.type === 'ImportDefaultSpecifier'); + const defaultSpecifier = node.specifiers. + find(specifier => specifier.type === 'ImportDefaultSpecifier'); return defaultSpecifier != null ? defaultSpecifier.local.name : undefined; } // Checks whether `node` has a namespace import. function hasNamespace(node) { - const specifiers = node.specifiers.filter(specifier => specifier.type === 'ImportNamespaceSpecifier'); + const specifiers = node.specifiers. + filter(specifier => specifier.type === 'ImportNamespaceSpecifier'); return specifiers.length > 0; } // Checks whether `node` has any non-default specifiers. function hasSpecifiers(node) { - const specifiers = node.specifiers.filter(specifier => specifier.type === 'ImportSpecifier'); + const specifiers = node.specifiers. + filter(specifier => specifier.type === 'ImportSpecifier'); return specifiers.length > 0; } // It's not obvious what the user wants to do with comments associated with // duplicate imports, so skip imports with comments when autofixing. function hasProblematicComments(node, sourceCode) { - return hasCommentBefore(node, sourceCode) || hasCommentAfter(node, sourceCode) || hasCommentInsideNonSpecifiers(node, sourceCode); + return ( + hasCommentBefore(node, sourceCode) || + hasCommentAfter(node, sourceCode) || + hasCommentInsideNonSpecifiers(node, sourceCode)); + } // Checks whether `node` has a comment (that ends) on the previous line or on // the same line as `node` (starts). function hasCommentBefore(node, sourceCode) { - return sourceCode.getCommentsBefore(node).some(comment => comment.loc.end.line >= node.loc.start.line - 1); + return sourceCode.getCommentsBefore(node). + some(comment => comment.loc.end.line >= node.loc.start.line - 1); } // Checks whether `node` has a comment (that starts) on the same line as `node` // (ends). function hasCommentAfter(node, sourceCode) { - return sourceCode.getCommentsAfter(node).some(comment => comment.loc.start.line === node.loc.end.line); + return sourceCode.getCommentsAfter(node). + some(comment => comment.loc.start.line === node.loc.end.line); } // Checks whether `node` has any comments _inside,_ except inside the `{...}` @@ -223,7 +222,9 @@ function hasCommentInsideNonSpecifiers(node, sourceCode) { // Slice away the first token, since we're no looking for comments _before_ // `node` (only inside). If there's a `{...}` part, look for comments before // the `{`, but not before the `}` (hence the `+1`s). - const someTokens = openBraceIndex >= 0 && closeBraceIndex >= 0 ? tokens.slice(1, openBraceIndex + 1).concat(tokens.slice(closeBraceIndex + 1)) : tokens.slice(1); + const someTokens = openBraceIndex >= 0 && closeBraceIndex >= 0 ? + tokens.slice(1, openBraceIndex + 1).concat(tokens.slice(closeBraceIndex + 1)) : + tokens.slice(1); return someTokens.some(token => sourceCode.getCommentsBefore(token).length > 0); } @@ -231,23 +232,26 @@ module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('no-duplicates') - }, + url: (0, _docsUrl2.default)('no-duplicates') }, + fixable: 'code', - schema: [{ + schema: [ + { type: 'object', properties: { considerQueryString: { - type: 'boolean' - } - }, - additionalProperties: false - }] - }, + type: 'boolean' } }, + + + additionalProperties: false }] }, + + + create: function (context) { // Prepare the resolver from options. - const considerQueryStringOption = context.options[0] && context.options[0]['considerQueryString']; + const considerQueryStringOption = context.options[0] && + context.options[0]['considerQueryString']; const defaultResolver = sourcePath => (0, _resolve2.default)(sourcePath, context) || sourcePath; const resolver = considerQueryStringOption ? sourcePath => { const parts = sourcePath.match(/^([^?]*)\?(.*)$/); @@ -264,7 +268,8 @@ module.exports = { 'ImportDeclaration': function (n) { // resolved path will cover aliased duplicates const resolvedPath = resolver(n.source.value); - const importMap = n.importKind === 'type' ? typesImported : hasNamespace(n) ? nsImported : imported; + const importMap = n.importKind === 'type' ? typesImported : + hasNamespace(n) ? nsImported : imported; if (importMap.has(resolvedPath)) { importMap.get(resolvedPath).push(n); @@ -277,8 +282,7 @@ module.exports = { checkImports(imported, context); checkImports(nsImported, context); checkImports(typesImported, context); - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1kdXBsaWNhdGVzLmpzIl0sIm5hbWVzIjpbImNoZWNrSW1wb3J0cyIsImltcG9ydGVkIiwiY29udGV4dCIsImVudHJpZXMiLCJtb2R1bGUiLCJub2RlcyIsImxlbmd0aCIsIm1lc3NhZ2UiLCJmaXJzdCIsInJlc3QiLCJzb3VyY2VDb2RlIiwiZ2V0U291cmNlQ29kZSIsImZpeCIsImdldEZpeCIsInJlcG9ydCIsIm5vZGUiLCJzb3VyY2UiLCJnZXRDb21tZW50c0JlZm9yZSIsInVuZGVmaW5lZCIsImhhc1Byb2JsZW1hdGljQ29tbWVudHMiLCJoYXNOYW1lc3BhY2UiLCJkZWZhdWx0SW1wb3J0TmFtZXMiLCJTZXQiLCJtYXAiLCJnZXREZWZhdWx0SW1wb3J0TmFtZSIsImZpbHRlciIsIkJvb2xlYW4iLCJzaXplIiwicmVzdFdpdGhvdXRDb21tZW50cyIsInNwZWNpZmllcnMiLCJ0b2tlbnMiLCJnZXRUb2tlbnMiLCJvcGVuQnJhY2UiLCJmaW5kIiwidG9rZW4iLCJpc1B1bmN0dWF0b3IiLCJjbG9zZUJyYWNlIiwiaW1wb3J0Tm9kZSIsInRleHQiLCJzbGljZSIsInJhbmdlIiwiaGFzVHJhaWxpbmdDb21tYSIsImdldFRva2VuQmVmb3JlIiwiaXNFbXB0eSIsImhhc1NwZWNpZmllcnMiLCJ1bm5lY2Vzc2FyeUltcG9ydHMiLCJzb21lIiwic3BlY2lmaWVyIiwic2hvdWxkQWRkRGVmYXVsdCIsInNob3VsZEFkZFNwZWNpZmllcnMiLCJzaG91bGRSZW1vdmVVbm5lY2Vzc2FyeSIsImZpeGVyIiwiZmlyc3RUb2tlbiIsImdldEZpcnN0VG9rZW4iLCJkZWZhdWx0SW1wb3J0TmFtZSIsImZpcnN0SGFzVHJhaWxpbmdDb21tYSIsImZpcnN0SXNFbXB0eSIsInJlZHVjZSIsInJlc3VsdCIsIm5lZWRzQ29tbWEiLCJzcGVjaWZpZXJzVGV4dCIsImZpeGVzIiwicHVzaCIsImluc2VydFRleHRBZnRlciIsImluc2VydFRleHRCZWZvcmUiLCJyZW1vdmUiLCJ2YWx1ZSIsInR5cGUiLCJkZWZhdWx0U3BlY2lmaWVyIiwibG9jYWwiLCJuYW1lIiwiaGFzQ29tbWVudEJlZm9yZSIsImhhc0NvbW1lbnRBZnRlciIsImhhc0NvbW1lbnRJbnNpZGVOb25TcGVjaWZpZXJzIiwiY29tbWVudCIsImxvYyIsImVuZCIsImxpbmUiLCJzdGFydCIsImdldENvbW1lbnRzQWZ0ZXIiLCJvcGVuQnJhY2VJbmRleCIsImZpbmRJbmRleCIsImNsb3NlQnJhY2VJbmRleCIsInNvbWVUb2tlbnMiLCJjb25jYXQiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJmaXhhYmxlIiwic2NoZW1hIiwicHJvcGVydGllcyIsImNvbnNpZGVyUXVlcnlTdHJpbmciLCJhZGRpdGlvbmFsUHJvcGVydGllcyIsImNyZWF0ZSIsImNvbnNpZGVyUXVlcnlTdHJpbmdPcHRpb24iLCJvcHRpb25zIiwiZGVmYXVsdFJlc29sdmVyIiwic291cmNlUGF0aCIsInJlc29sdmVyIiwicGFydHMiLCJtYXRjaCIsIk1hcCIsIm5zSW1wb3J0ZWQiLCJ0eXBlc0ltcG9ydGVkIiwibiIsInJlc29sdmVkUGF0aCIsImltcG9ydE1hcCIsImltcG9ydEtpbmQiLCJoYXMiLCJnZXQiLCJzZXQiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7Ozs7O0FBRUEsU0FBU0EsWUFBVCxDQUFzQkMsUUFBdEIsRUFBZ0NDLE9BQWhDLEVBQXlDO0FBQ3ZDLHFCQUE4QkQsU0FBU0UsT0FBVCxFQUE5QixFQUFrRDtBQUFBOztBQUFBLFVBQXRDQyxNQUFzQztBQUFBLFVBQTlCQyxLQUE4Qjs7QUFDaEQsUUFBSUEsTUFBTUMsTUFBTixHQUFlLENBQW5CLEVBQXNCO0FBQ3BCLFlBQU1DLFVBQVcsSUFBR0gsTUFBTyw0QkFBM0I7O0FBRG9CLDRCQUVLQyxLQUZMOztBQUFBLFlBRWJHLEtBRmE7QUFBQSxZQUVIQyxJQUZHOztBQUdwQixZQUFNQyxhQUFhUixRQUFRUyxhQUFSLEVBQW5CO0FBQ0EsWUFB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RyxNQUFNLENBQU4sQ0FBaEIsSUFBNEIsR0FBNUIsR0FBa0NBLE1BQU0sQ0FBTixDQUF6QztBQUNELEtBTmdCLEdBTVpILGVBTkw7O0FBUUEsVUFBTWhHLFdBQVcsSUFBSXFHLEdBQUosRUFBakI7QUFDQSxVQUFNQyxhQUFhLElBQUlELEdBQUosRUFBbkI7QUFDQSxVQUFNRSxnQkFBZ0IsSUFBSUYsR0FBSixFQUF0QjtBQUNBLFdBQU87QUFDTCwyQkFBcUIsVUFBVUcsQ0FBVixFQUFhO0FBQ2hDO0FBQ0EsY0FBTUMsZUFBZVAsU0FBU00sRUFBRXpGLE1BQUYsQ0FBU2tELEtBQWxCLENBQXJCO0FBQ0EsY0FBTXlDLFlBQVlGLEVBQUVHLFVBQUYsS0FBaUIsTUFBakIsR0FBMEJKLGFBQTFCLEdBQ2ZwRixhQUFhcUYsQ0FBYixJQUFrQkYsVUFBbEIsR0FBK0J0RyxRQURsQzs7QUFHQSxZQUFJMEcsVUFBVUUsR0FBVixDQUFjSCxZQUFkLENBQUosRUFBaUM7QUFDL0JDLG9CQUFVRyxHQUFWLENBQWNKLFlBQWQsRUFBNEI1QyxJQUE1QixDQUFpQzJDLENBQWpDO0FBQ0QsU0FGRCxNQUVPO0FBQ0xFLG9CQUFVSSxHQUFWLENBQWNMLFlBQWQsRUFBNEIsQ0FBQ0QsQ0FBRCxDQUE1QjtBQUNEO0FBQ0YsT0FaSTs7QUFjTCxzQkFBZ0IsWUFBWTtBQUMxQnpHLHFCQUFhQyxRQUFiLEVBQXVCQyxPQUF2QjtBQUNBRixxQkFBYXVHLFVBQWIsRUFBeUJyRyxPQUF6QjtBQUNBRixxQkFBYXdHLGFBQWIsRUFBNEJ0RyxPQUE1QjtBQUNEO0FBbEJJLEtBQVA7QUFvQkQ7QUF4RGMsQ0FBakIiLCJmaWxlIjoibm8tZHVwbGljYXRlcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIGNoZWNrSW1wb3J0cyhpbXBvcnRlZCwgY29udGV4dCkge1xuICBmb3IgKGNvbnN0IFttb2R1bGUsIG5vZGVzXSBvZiBpbXBvcnRlZC5lbnRyaWVzKCkpIHtcbiAgICBpZiAobm9kZXMubGVuZ3RoID4gMSkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGAnJHttb2R1bGV9JyBpbXBvcnRlZCBtdWx0aXBsZSB0aW1lcy5gXG4gICAgICBjb25zdCBbZmlyc3QsIC4uLnJlc3RdID0gbm9kZXNcbiAgICAgIGNvbnN0IHNvdXJjZUNvZGUgPSBjb250ZXh0LmdldFNvdXJjZUNvZGUoKVxuICAgICAgY29uc3QgZml4ID0gZ2V0Rml4KGZpcnN0LCByZXN0LCBzb3VyY2VDb2RlKVxuXG4gICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgIG5vZGU6IGZpcnN0LnNvdXJjZSxcbiAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgZml4LCAvLyBBdHRhY2ggdGhlIGF1dG9maXggKGlmIGFueSkgdG8gdGhlIGZpcnN0IGltcG9ydC5cbiAgICAgIH0pXG5cbiAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiByZXN0KSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlOiBub2RlLnNvdXJjZSxcbiAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGaXgoZmlyc3QsIHJlc3QsIHNvdXJjZUNvZGUpIHtcbiAgLy8gU29ycnkgRVNMaW50IDw9IDMgdXNlcnMsIG5vIGF1dG9maXggZm9yIHlvdS4gQXV0b2ZpeGluZyBkdXBsaWNhdGUgaW1wb3J0c1xuICAvLyByZXF1aXJlcyBtdWx0aXBsZSBgZml4ZXIud2hhdGV2ZXIoKWAgY2FsbHMgaW4gdGhlIGBmaXhgOiBXZSBib3RoIG5lZWQgdG9cbiAgLy8gdXBkYXRlIHRoZSBmaXJzdCBvbmUsIGFuZCByZW1vdmUgdGhlIHJlc3QuIFN1cHBvcnQgZm9yIG11bHRpcGxlXG4gIC8vIGBmaXhlci53aGF0ZXZlcigpYCBpbiBhIHNpbmdsZSBgZml4YCB3YXMgYWRkZWQgaW4gRVNMaW50IDQuMS5cbiAgLy8gYHNvdXJjZUNvZGUuZ2V0Q29tbWVudHNCZWZvcmVgIHdhcyBhZGRlZCBpbiA0LjAsIHNvIHRoYXQncyBhbiBlYXN5IHRoaW5nIHRvXG4gIC8vIGNoZWNrIGZvci5cbiAgaWYgKHR5cGVvZiBzb3VyY2VDb2RlLmdldENvbW1lbnRzQmVmb3JlICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG5cbiAgLy8gQWRqdXN0aW5nIHRoZSBmaXJzdCBpbXBvcnQgbWlnaHQgbWFrZSBpdCBtdWx0aWxpbmUsIHdoaWNoIGNvdWxkIGJyZWFrXG4gIC8vIGBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVgIGNvbW1lbnRzIGFuZCBzaW1pbGFyLCBzbyBiYWlsIGlmIHRoZSBmaXJzdFxuICAvLyBpbXBvcnQgaGFzIGNvbW1lbnRzLiBBbHNvLCBpZiB0aGUgZmlyc3QgaW1wb3J0IGlzIGBpbXBvcnQgKiBhcyBucyBmcm9tXG4gIC8vICcuL2ZvbydgIHRoZXJlJ3Mgbm90aGluZyB3ZSBjYW4gZG8uXG4gIGlmIChoYXNQcm9ibGVtYXRpY0NvbW1lbnRzKGZpcnN0LCBzb3VyY2VDb2RlKSB8fCBoYXNOYW1lc3BhY2UoZmlyc3QpKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG5cbiAgY29uc3QgZGVmYXVsdEltcG9ydE5hbWVzID0gbmV3IFNldChcbiAgICBbZmlyc3QsIC4uLnJlc3RdLm1hcChnZXREZWZhdWx0SW1wb3J0TmFtZSkuZmlsdGVyKEJvb2xlYW4pXG4gIClcblxuICAvLyBCYWlsIGlmIHRoZXJlIGFyZSBtdWx0aXBsZSBkaWZmZXJlbnQgZGVmYXVsdCBpbXBvcnQgbmFtZXMg4oCTIGl0J3MgdXAgdG8gdGhlXG4gIC8vIHVzZXIgdG8gY2hvb3NlIHdoaWNoIG9uZSB0byBrZWVwLlxuICBpZiAoZGVmYXVsdEltcG9ydE5hbWVzLnNpemUgPiAxKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG5cbiAgLy8gTGVhdmUgaXQgdG8gdGhlIHVzZXIgdG8gaGFuZGxlIGNvbW1lbnRzLiBBbHNvIHNraXAgYGltcG9ydCAqIGFzIG5zIGZyb21cbiAgLy8gJy4vZm9vJ2AgaW1wb3J0cywgc2luY2UgdGhleSBjYW5ub3QgYmUgbWVyZ2VkIGludG8gYW5vdGhlciBpbXBvcnQuXG4gIGNvbnN0IHJlc3RXaXRob3V0Q29tbWVudHMgPSByZXN0LmZpbHRlcihub2RlID0+ICEoXG4gICAgaGFzUHJvYmxlbWF0aWNDb21tZW50cyhub2RlLCBzb3VyY2VDb2RlKSB8fFxuICAgIGhhc05hbWVzcGFjZShub2RlKVxuICApKVxuXG4gIGNvbnN0IHNwZWNpZmllcnMgPSByZXN0V2l0aG91dENvbW1lbnRzXG4gICAgLm1hcChub2RlID0+IHtcbiAgICAgIGNvbnN0IHRva2VucyA9IHNvdXJjZUNvZGUuZ2V0VG9rZW5zKG5vZGUpXG4gICAgICBjb25zdCBvcGVuQnJhY2UgPSB0b2tlbnMuZmluZCh0b2tlbiA9PiBpc1B1bmN0dWF0b3IodG9rZW4sICd7JykpXG4gICAgICBjb25zdCBjbG9zZUJyYWNlID0gdG9rZW5zLmZpbmQodG9rZW4gPT4gaXNQdW5jdHVhdG9yKHRva2VuLCAnfScpKVxuXG4gICAgICBpZiAob3BlbkJyYWNlID09IG51bGwgfHwgY2xvc2VCcmFjZSA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaW1wb3J0Tm9kZTogbm9kZSxcbiAgICAgICAgdGV4dDogc291cmNlQ29kZS50ZXh0LnNsaWNlKG9wZW5CcmFjZS5yYW5nZVsxXSwgY2xvc2VCcmFjZS5yYW5nZVswXSksXG4gICAgICAgIGhhc1RyYWlsaW5nQ29tbWE6IGlzUHVuY3R1YXRvcihzb3VyY2VDb2RlLmdldFRva2VuQmVmb3JlKGNsb3NlQnJhY2UpLCAnLCcpLFxuICAgICAgICBpc0VtcHR5OiAhaGFzU3BlY2lmaWVycyhub2RlKSxcbiAgICAgIH1cbiAgICB9KVxuICAgIC5maWx0ZXIoQm9vbGVhbilcblxuICBjb25zdCB1bm5lY2Vzc2FyeUltcG9ydHMgPSByZXN0V2l0aG91dENvbW1lbnRzLmZpbHRlcihub2RlID0+XG4gICAgIWhhc1NwZWNpZmllcnMobm9kZSkgJiZcbiAgICAhaGFzTmFtZXNwYWNlKG5vZGUpICYmXG4gICAgIXNwZWNpZmllcnMuc29tZShzcGVjaWZpZXIgPT4gc3BlY2lmaWVyLmltcG9ydE5vZGUgPT09IG5vZGUpXG4gIClcblxuICBjb25zdCBzaG91bGRBZGREZWZhdWx0ID0gZ2V0RGVmYXVsdEltcG9ydE5hbWUoZmlyc3QpID09IG51bGwgJiYgZGVmYXVsdEltcG9ydE5hbWVzLnNpemUgPT09IDFcbiAgY29uc3Qgc2hvdWxkQWRkU3BlY2lmaWVycyA9IHNwZWNpZmllcnMubGVuZ3RoID4gMFxuICBjb25zdCBzaG91bGRSZW1vdmVVbm5lY2Vzc2FyeSA9IHVubmVjZXNzYXJ5SW1wb3J0cy5sZW5ndGggPiAwXG5cbiAgaWYgKCEoc2hvdWxkQWRkRGVmYXVsdCB8fCBzaG91bGRBZGRTcGVjaWZpZXJzIHx8IHNob3VsZFJlbW92ZVVubmVjZXNzYXJ5KSkge1xuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfVxuXG4gIHJldHVybiBmaXhlciA9PiB7XG4gICAgY29uc3QgdG9rZW5zID0gc291cmNlQ29kZS5nZXRUb2tlbnMoZmlyc3QpXG4gICAgY29uc3Qgb3BlbkJyYWNlID0gdG9rZW5zLmZpbmQodG9rZW4gPT4gaXNQdW5jdHVhdG9yKHRva2VuLCAneycpKVxuICAgIGNvbnN0IGNsb3NlQnJhY2UgPSB0b2tlbnMuZmluZCh0b2tlbiA9PiBpc1B1bmN0dWF0b3IodG9rZW4sICd9JykpXG4gICAgY29uc3QgZmlyc3RUb2tlbiA9IHNvdXJjZUNvZGUuZ2V0Rmlyc3RUb2tlbihmaXJzdClcbiAgICBjb25zdCBbZGVmYXVsdEltcG9ydE5hbWVdID0gZGVmYXVsdEltcG9ydE5hbWVzXG5cbiAgICBjb25zdCBmaXJzdEhhc1RyYWlsaW5nQ29tbWEgPVxuICAgICAgY2xvc2VCcmFjZSAhPSBudWxsICYmXG4gICAgICBpc1B1bmN0dWF0b3Ioc291cmNlQ29kZS5nZXRUb2tlbkJlZm9yZShjbG9zZUJyYWNlKSwgJywnKVxuICAgIGNvbnN0IGZpcnN0SXNFbXB0eSA9ICFoYXNTcGVjaWZpZXJzKGZpcnN0KVxuXG4gICAgY29uc3QgW3NwZWNpZmllcnNUZXh0XSA9IHNwZWNpZmllcnMucmVkdWNlKFxuICAgICAgKFtyZXN1bHQsIG5lZWRzQ29tbWFdLCBzcGVjaWZpZXIpID0+IHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBuZWVkc0NvbW1hICYmICFzcGVjaWZpZXIuaXNFbXB0eVxuICAgICAgICAgICAgPyBgJHtyZXN1bHR9LCR7c3BlY2lmaWVyLnRleHR9YFxuICAgICAgICAgICAgOiBgJHtyZXN1bHR9JHtzcGVjaWZpZXIudGV4dH1gLFxuICAgICAgICAgIHNwZWNpZmllci5pc0VtcHR5ID8gbmVlZHNDb21tYSA6IHRydWUsXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBbJycsICFmaXJzdEhhc1RyYWlsaW5nQ29tbWEgJiYgIWZpcnN0SXNFbXB0eV1cbiAgICApXG5cbiAgICBjb25zdCBmaXhlcyA9IFtdXG5cbiAgICBpZiAoc2hvdWxkQWRkRGVmYXVsdCAmJiBvcGVuQnJhY2UgPT0gbnVsbCAmJiBzaG91bGRBZGRTcGVjaWZpZXJzKSB7XG4gICAgICAvLyBgaW1wb3J0ICcuL2ZvbydgIOKGkiBgaW1wb3J0IGRlZiwgey4uLn0gZnJvbSAnLi9mb28nYFxuICAgICAgZml4ZXMucHVzaChcbiAgICAgICAgZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKGZpcnN0VG9rZW4sIGAgJHtkZWZhdWx0SW1wb3J0TmFtZX0sIHske3NwZWNpZmllcnNUZXh0fX0gZnJvbWApXG4gICAgICApXG4gICAgfSBlbHNlIGlmIChzaG91bGRBZGREZWZhdWx0ICYmIG9wZW5CcmFjZSA9PSBudWxsICYmICFzaG91bGRBZGRTcGVjaWZpZXJzKSB7XG4gICAgICAvLyBgaW1wb3J0ICcuL2ZvbydgIOKGkiBgaW1wb3J0IGRlZiBmcm9tICcuL2ZvbydgXG4gICAgICBmaXhlcy5wdXNoKGZpeGVyLmluc2VydFRleHRBZnRlcihmaXJzdFRva2VuLCBgICR7ZGVmYXVsdEltcG9ydE5hbWV9IGZyb21gKSlcbiAgICB9IGVsc2UgaWYgKHNob3VsZEFkZERlZmF1bHQgJiYgb3BlbkJyYWNlICE9IG51bGwgJiYgY2xvc2VCcmFjZSAhPSBudWxsKSB7XG4gICAgICAvLyBgaW1wb3J0IHsuLi59IGZyb20gJy4vZm9vJ2Ag4oaSIGBpbXBvcnQgZGVmLCB7Li4ufSBmcm9tICcuL2ZvbydgXG4gICAgICBmaXhlcy5wdXNoKGZpeGVyLmluc2VydFRleHRBZnRlcihmaXJzdFRva2VuLCBgICR7ZGVmYXVsdEltcG9ydE5hbWV9LGApKVxuICAgICAgaWYgKHNob3VsZEFkZFNwZWNpZmllcnMpIHtcbiAgICAgICAgLy8gYGltcG9ydCBkZWYsIHsuLi59IGZyb20gJy4vZm9vJ2Ag4oaSIGBpbXBvcnQgZGVmLCB7Li4uLCAuLi59IGZyb20gJy4vZm9vJ2BcbiAgICAgICAgZml4ZXMucHVzaChmaXhlci5pbnNlcnRUZXh0QmVmb3JlKGNsb3NlQnJhY2UsIHNwZWNpZmllcnNUZXh0KSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKCFzaG91bGRBZGREZWZhdWx0ICYmIG9wZW5CcmFjZSA9PSBudWxsICYmIHNob3VsZEFkZFNwZWNpZmllcnMpIHtcbiAgICAgIC8vIGBpbXBvcnQgJy4vZm9vJ2Ag4oaSIGBpbXBvcnQgey4uLn0gZnJvbSAnLi9mb28nYFxuICAgICAgZml4ZXMucHVzaChmaXhlci5pbnNlcnRUZXh0QWZ0ZXIoZmlyc3RUb2tlbiwgYCB7JHtzcGVjaWZpZXJzVGV4dH19IGZyb21gKSlcbiAgICB9IGVsc2UgaWYgKCFzaG91bGRBZGREZWZhdWx0ICYmIG9wZW5CcmFjZSAhPSBudWxsICYmIGNsb3NlQnJhY2UgIT0gbnVsbCkge1xuICAgICAgLy8gYGltcG9ydCB7Li4ufSAnLi9mb28nYCDihpIgYGltcG9ydCB7Li4uLCAuLi59IGZyb20gJy4vZm9vJ2BcbiAgICAgIGZpeGVzLnB1c2goZml4ZXIuaW5zZXJ0VGV4dEJlZm9yZShjbG9zZUJyYWNlLCBzcGVjaWZpZXJzVGV4dCkpXG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGltcG9ydHMgd2hvc2Ugc3BlY2lmaWVycyBoYXZlIGJlZW4gbW92ZWQgaW50byB0aGUgZmlyc3QgaW1wb3J0LlxuICAgIGZvciAoY29uc3Qgc3BlY2lmaWVyIG9mIHNwZWNpZmllcnMpIHtcbiAgICAgIGZpeGVzLnB1c2goZml4ZXIucmVtb3ZlKHNwZWNpZmllci5pbXBvcnROb2RlKSlcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgaW1wb3J0cyB3aG9zZSBkZWZhdWx0IGltcG9ydCBoYXMgYmVlbiBtb3ZlZCB0byB0aGUgZmlyc3QgaW1wb3J0LFxuICAgIC8vIGFuZCBzaWRlLWVmZmVjdC1vbmx5IGltcG9ydHMgdGhhdCBhcmUgdW5uZWNlc3NhcnkgZHVlIHRvIHRoZSBmaXJzdFxuICAgIC8vIGltcG9ydC5cbiAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdW5uZWNlc3NhcnlJbXBvcnRzKSB7XG4gICAgICBmaXhlcy5wdXNoKGZpeGVyLnJlbW92ZShub2RlKSlcbiAgICB9XG5cbiAgICByZXR1cm4gZml4ZXNcbiAgfVxufVxuXG5mdW5jdGlvbiBpc1B1bmN0dWF0b3Iobm9kZSwgdmFsdWUpIHtcbiAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ1B1bmN0dWF0b3InICYmIG5vZGUudmFsdWUgPT09IHZhbHVlXG59XG5cbi8vIEdldCB0aGUgbmFtZSBvZiB0aGUgZGVmYXVsdCBpbXBvcnQgb2YgYG5vZGVgLCBpZiBhbnkuXG5mdW5jdGlvbiBnZXREZWZhdWx0SW1wb3J0TmFtZShub2RlKSB7XG4gIGNvbnN0IGRlZmF1bHRTcGVjaWZpZXIgPSBub2RlLnNwZWNpZmllcnNcbiAgICAuZmluZChzcGVjaWZpZXIgPT4gc3BlY2lmaWVyLnR5cGUgPT09ICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJylcbiAgcmV0dXJuIGRlZmF1bHRTcGVjaWZpZXIgIT0gbnVsbCA/IGRlZmF1bHRTcGVjaWZpZXIubG9jYWwubmFtZSA6IHVuZGVmaW5lZFxufVxuXG4vLyBDaGVja3Mgd2hldGhlciBgbm9kZWAgaGFzIGEgbmFtZXNwYWNlIGltcG9ydC5cbmZ1bmN0aW9uIGhhc05hbWVzcGFjZShub2RlKSB7XG4gIGNvbnN0IHNwZWNpZmllcnMgPSBub2RlLnNwZWNpZmllcnNcbiAgICAuZmlsdGVyKHNwZWNpZmllciA9PiBzcGVjaWZpZXIudHlwZSA9PT0gJ0ltcG9ydE5hbWVzcGFjZVNwZWNpZmllcicpXG4gIHJldHVybiBzcGVjaWZpZXJzLmxlbmd0aCA+IDBcbn1cblxuLy8gQ2hlY2tzIHdoZXRoZXIgYG5vZGVgIGhhcyBhbnkgbm9uLWRlZmF1bHQgc3BlY2lmaWVycy5cbmZ1bmN0aW9uIGhhc1NwZWNpZmllcnMobm9kZSkge1xuICBjb25zdCBzcGVjaWZpZXJzID0gbm9kZS5zcGVjaWZpZXJzXG4gICAgLmZpbHRlcihzcGVjaWZpZXIgPT4gc3BlY2lmaWVyLnR5cGUgPT09ICdJbXBvcnRTcGVjaWZpZXInKVxuICByZXR1cm4gc3BlY2lmaWVycy5sZW5ndGggPiAwXG59XG5cbi8vIEl0J3Mgbm90IG9idmlvdXMgd2hhdCB0aGUgdXNlciB3YW50cyB0byBkbyB3aXRoIGNvbW1lbnRzIGFzc29jaWF0ZWQgd2l0aFxuLy8gZHVwbGljYXRlIGltcG9ydHMsIHNvIHNraXAgaW1wb3J0cyB3aXRoIGNvbW1lbnRzIHdoZW4gYXV0b2ZpeGluZy5cbmZ1bmN0aW9uIGhhc1Byb2JsZW1hdGljQ29tbWVudHMobm9kZSwgc291cmNlQ29kZSkge1xuICByZXR1cm4gKFxuICAgIGhhc0NvbW1lbnRCZWZvcmUobm9kZSwgc291cmNlQ29kZSkgfHxcbiAgICBoYXNDb21tZW50QWZ0ZXIobm9kZSwgc291cmNlQ29kZSkgfHxcbiAgICBoYXNDb21tZW50SW5zaWRlTm9uU3BlY2lmaWVycyhub2RlLCBzb3VyY2VDb2RlKVxuICApXG59XG5cbi8vIENoZWNrcyB3aGV0aGVyIGBub2RlYCBoYXMgYSBjb21tZW50ICh0aGF0IGVuZHMpIG9uIHRoZSBwcmV2aW91cyBsaW5lIG9yIG9uXG4vLyB0aGUgc2FtZSBsaW5lIGFzIGBub2RlYCAoc3RhcnRzKS5cbmZ1bmN0aW9uIGhhc0NvbW1lbnRCZWZvcmUobm9kZSwgc291cmNlQ29kZSkge1xuICByZXR1cm4gc291cmNlQ29kZS5nZXRDb21tZW50c0JlZm9yZShub2RlKVxuICAgIC5zb21lKGNvbW1lbnQgPT4gY29tbWVudC5sb2MuZW5kLmxpbmUgPj0gbm9kZS5sb2Muc3RhcnQubGluZSAtIDEpXG59XG5cbi8vIENoZWNrcyB3aGV0aGVyIGBub2RlYCBoYXMgYSBjb21tZW50ICh0aGF0IHN0YXJ0cykgb24gdGhlIHNhbWUgbGluZSBhcyBgbm9kZWBcbi8vIChlbmRzKS5cbmZ1bmN0aW9uIGhhc0NvbW1lbnRBZnRlcihub2RlLCBzb3VyY2VDb2RlKSB7XG4gIHJldHVybiBzb3VyY2VDb2RlLmdldENvbW1lbnRzQWZ0ZXIobm9kZSlcbiAgICAuc29tZShjb21tZW50ID0+IGNvbW1lbnQubG9jLnN0YXJ0LmxpbmUgPT09IG5vZGUubG9jLmVuZC5saW5lKVxufVxuXG4vLyBDaGVja3Mgd2hldGhlciBgbm9kZWAgaGFzIGFueSBjb21tZW50cyBfaW5zaWRlLF8gZXhjZXB0IGluc2lkZSB0aGUgYHsuLi59YFxuLy8gcGFydCAoaWYgYW55KS5cbmZ1bmN0aW9uIGhhc0NvbW1lbnRJbnNpZGVOb25TcGVjaWZpZXJzKG5vZGUsIHNvdXJjZUNvZGUpIHtcbiAgY29uc3QgdG9rZW5zID0gc291cmNlQ29kZS5nZXRUb2tlbnMobm9kZSlcbiAgY29uc3Qgb3BlbkJyYWNlSW5kZXggPSB0b2tlbnMuZmluZEluZGV4KHRva2VuID0+IGlzUHVuY3R1YXRvcih0b2tlbiwgJ3snKSlcbiAgY29uc3QgY2xvc2VCcmFjZUluZGV4ID0gdG9rZW5zLmZpbmRJbmRleCh0b2tlbiA9PiBpc1B1bmN0dWF0b3IodG9rZW4sICd9JykpXG4gIC8vIFNsaWNlIGF3YXkgdGhlIGZpcnN0IHRva2VuLCBzaW5jZSB3ZSdyZSBubyBsb29raW5nIGZvciBjb21tZW50cyBfYmVmb3JlX1xuICAvLyBgbm9kZWAgKG9ubHkgaW5zaWRlKS4gSWYgdGhlcmUncyBhIGB7Li4ufWAgcGFydCwgbG9vayBmb3IgY29tbWVudHMgYmVmb3JlXG4gIC8vIHRoZSBge2AsIGJ1dCBub3QgYmVmb3JlIHRoZSBgfWAgKGhlbmNlIHRoZSBgKzFgcykuXG4gIGNvbnN0IHNvbWVUb2tlbnMgPSBvcGVuQnJhY2VJbmRleCA+PSAwICYmIGNsb3NlQnJhY2VJbmRleCA+PSAwXG4gICAgPyB0b2tlbnMuc2xpY2UoMSwgb3BlbkJyYWNlSW5kZXggKyAxKS5jb25jYXQodG9rZW5zLnNsaWNlKGNsb3NlQnJhY2VJbmRleCArIDEpKVxuICAgIDogdG9rZW5zLnNsaWNlKDEpXG4gIHJldHVybiBzb21lVG9rZW5zLnNvbWUodG9rZW4gPT4gc291cmNlQ29kZS5nZXRDb21tZW50c0JlZm9yZSh0b2tlbikubGVuZ3RoID4gMClcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1kdXBsaWNhdGVzJyksXG4gICAgfSxcbiAgICBmaXhhYmxlOiAnY29kZScsXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgY29uc2lkZXJRdWVyeVN0cmluZzoge1xuICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgLy8gUHJlcGFyZSB0aGUgcmVzb2x2ZXIgZnJvbSBvcHRpb25zLlxuICAgIGNvbnN0IGNvbnNpZGVyUXVlcnlTdHJpbmdPcHRpb24gPSBjb250ZXh0Lm9wdGlvbnNbMF0gJiZcbiAgICAgIGNvbnRleHQub3B0aW9uc1swXVsnY29uc2lkZXJRdWVyeVN0cmluZyddXG4gICAgY29uc3QgZGVmYXVsdFJlc29sdmVyID0gc291cmNlUGF0aCA9PiByZXNvbHZlKHNvdXJjZVBhdGgsIGNvbnRleHQpIHx8IHNvdXJjZVBhdGhcbiAgICBjb25zdCByZXNvbHZlciA9IGNvbnNpZGVyUXVlcnlTdHJpbmdPcHRpb24gPyAoc291cmNlUGF0aCA9PiB7XG4gICAgICBjb25zdCBwYXJ0cyA9IHNvdXJjZVBhdGgubWF0Y2goL14oW14/XSopXFw/KC4qKSQvKVxuICAgICAgaWYgKCFwYXJ0cykge1xuICAgICAgICByZXR1cm4gZGVmYXVsdFJlc29sdmVyKHNvdXJjZVBhdGgpXG4gICAgICB9XG4gICAgICByZXR1cm4gZGVmYXVsdFJlc29sdmVyKHBhcnRzWzFdKSArICc/JyArIHBhcnRzWzJdXG4gICAgfSkgOiBkZWZhdWx0UmVzb2x2ZXJcblxuICAgIGNvbnN0IGltcG9ydGVkID0gbmV3IE1hcCgpXG4gICAgY29uc3QgbnNJbXBvcnRlZCA9IG5ldyBNYXAoKVxuICAgIGNvbnN0IHR5cGVzSW1wb3J0ZWQgPSBuZXcgTWFwKClcbiAgICByZXR1cm4ge1xuICAgICAgJ0ltcG9ydERlY2xhcmF0aW9uJzogZnVuY3Rpb24gKG4pIHtcbiAgICAgICAgLy8gcmVzb2x2ZWQgcGF0aCB3aWxsIGNvdmVyIGFsaWFzZWQgZHVwbGljYXRlc1xuICAgICAgICBjb25zdCByZXNvbHZlZFBhdGggPSByZXNvbHZlcihuLnNvdXJjZS52YWx1ZSlcbiAgICAgICAgY29uc3QgaW1wb3J0TWFwID0gbi5pbXBvcnRLaW5kID09PSAndHlwZScgPyB0eXBlc0ltcG9ydGVkIDpcbiAgICAgICAgICAoaGFzTmFtZXNwYWNlKG4pID8gbnNJbXBvcnRlZCA6IGltcG9ydGVkKVxuXG4gICAgICAgIGlmIChpbXBvcnRNYXAuaGFzKHJlc29sdmVkUGF0aCkpIHtcbiAgICAgICAgICBpbXBvcnRNYXAuZ2V0KHJlc29sdmVkUGF0aCkucHVzaChuKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGltcG9ydE1hcC5zZXQocmVzb2x2ZWRQYXRoLCBbbl0pXG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgICdQcm9ncmFtOmV4aXQnOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGNoZWNrSW1wb3J0cyhpbXBvcnRlZCwgY29udGV4dClcbiAgICAgICAgY2hlY2tJbXBvcnRzKG5zSW1wb3J0ZWQsIGNvbnRleHQpXG4gICAgICAgIGNoZWNrSW1wb3J0cyh0eXBlc0ltcG9ydGVkLCBjb250ZXh0KVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1kdXBsaWNhdGVzLmpzIl0sIm5hbWVzIjpbImNoZWNrSW1wb3J0cyIsImltcG9ydGVkIiwiY29udGV4dCIsImVudHJpZXMiLCJtb2R1bGUiLCJub2RlcyIsImxlbmd0aCIsIm1lc3NhZ2UiLCJmaXJzdCIsInJlc3QiLCJzb3VyY2VDb2RlIiwiZ2V0U291cmNlQ29kZSIsImZpeCIsImdldEZpeCIsInJlcG9ydCIsIm5vZGUiLCJzb3VyY2UiLCJnZXRDb21tZW50c0JlZm9yZSIsInVuZGVmaW5lZCIsImhhc1Byb2JsZW1hdGljQ29tbWVudHMiLCJoYXNOYW1lc3BhY2UiLCJkZWZhdWx0SW1wb3J0TmFtZXMiLCJTZXQiLCJtYXAiLCJnZXREZWZhdWx0SW1wb3J0TmFtZSIsImZpbHRlciIsIkJvb2xlYW4iLCJzaXplIiwicmVzdFdpdGhvdXRDb21tZW50cyIsInNwZWNpZmllcnMiLCJ0b2tlbnMiLCJnZXRUb2tlbnMiLCJvcGVuQnJhY2UiLCJmaW5kIiwidG9rZW4iLCJpc1B1bmN0dWF0b3IiLCJjbG9zZUJyYWNlIiwiaW1wb3J0Tm9kZSIsInRleHQiLCJzbGljZSIsInJhbmdlIiwiaGFzVHJhaWxpbmdDb21tYSIsImdldFRva2VuQmVmb3JlIiwiaXNFbXB0eSIsImhhc1NwZWNpZmllcnMiLCJ1bm5lY2Vzc2FyeUltcG9ydHMiLCJzb21lIiwic3BlY2lmaWVyIiwic2hvdWxkQWRkRGVmYXVsdCIsInNob3VsZEFkZFNwZWNpZmllcnMiLCJzaG91bGRSZW1vdmVVbm5lY2Vzc2FyeSIsImZpeGVyIiwiZmlyc3RUb2tlbiIsImdldEZpcnN0VG9rZW4iLCJkZWZhdWx0SW1wb3J0TmFtZSIsImZpcnN0SGFzVHJhaWxpbmdDb21tYSIsImZpcnN0SXNFbXB0eSIsInJlZHVjZSIsInJlc3VsdCIsIm5lZWRzQ29tbWEiLCJzcGVjaWZpZXJzVGV4dCIsImZpeGVzIiwicHVzaCIsImluc2VydFRleHRBZnRlciIsImluc2VydFRleHRCZWZvcmUiLCJyZW1vdmUiLCJ2YWx1ZSIsInR5cGUiLCJkZWZhdWx0U3BlY2lmaWVyIiwibG9jYWwiLCJuYW1lIiwiaGFzQ29tbWVudEJlZm9yZSIsImhhc0NvbW1lbnRBZnRlciIsImhhc0NvbW1lbnRJbnNpZGVOb25TcGVjaWZpZXJzIiwiY29tbWVudCIsImxvYyIsImVuZCIsImxpbmUiLCJzdGFydCIsImdldENvbW1lbnRzQWZ0ZXIiLCJvcGVuQnJhY2VJbmRleCIsImZpbmRJbmRleCIsImNsb3NlQnJhY2VJbmRleCIsInNvbWVUb2tlbnMiLCJjb25jYXQiLCJleHBvcnRzIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJmaXhhYmxlIiwic2NoZW1hIiwicHJvcGVydGllcyIsImNvbnNpZGVyUXVlcnlTdHJpbmciLCJhZGRpdGlvbmFsUHJvcGVydGllcyIsImNyZWF0ZSIsImNvbnNpZGVyUXVlcnlTdHJpbmdPcHRpb24iLCJvcHRpb25zIiwiZGVmYXVsdFJlc29sdmVyIiwic291cmNlUGF0aCIsInJlc29sdmVyIiwicGFydHMiLCJtYXRjaCIsIk1hcCIsIm5zSW1wb3J0ZWQiLCJ0eXBlc0ltcG9ydGVkIiwibiIsInJlc29sdmVkUGF0aCIsImltcG9ydE1hcCIsImltcG9ydEtpbmQiLCJoYXMiLCJnZXQiLCJzZXQiXSwibWFwcGluZ3MiOiJxb0JBQUEsc0Q7QUFDQSxxQzs7QUFFQSxTQUFTQSxZQUFULENBQXNCQyxRQUF0QixFQUFnQ0MsT0FBaEMsRUFBeUM7QUFDdkMscUJBQThCRCxTQUFTRSxPQUFULEVBQTlCLEVBQWtELDJDQUF0Q0MsTUFBc0Msa0JBQTlCQyxLQUE4QjtBQUNoRCxRQUFJQSxNQUFNQyxNQUFOLEdBQWUsQ0FBbkIsRUFBc0I7QUFDcEIsWUFBTUMsVUFBVyxJQUFHSCxNQUFPLDRCQUEzQixDQURvQjtBQUVLQyxXQUZMLFFBRWJHLEtBRmEsYUFFSEMsSUFGRztBQUdwQixZQUFNQyxhQUFhUixRQUFRUyxhQUFSLEVBQW5CO0FBQ0EsWUFBTUMsTUFBTUMsT0FBT0wsS0FBUCxFQUFjQyxJQUFkLEVBQW9C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c29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxuZnVuY3Rpb24gY2hlY2tJbXBvcnRzKGltcG9ydGVkLCBjb250ZXh0KSB7XG4gIGZvciAoY29uc3QgW21vZHVsZSwgbm9kZXNdIG9mIGltcG9ydGVkLmVudHJpZXMoKSkge1xuICAgIGlmIChub2Rlcy5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYCcke21vZHVsZX0nIGltcG9ydGVkIG11bHRpcGxlIHRpbWVzLmBcbiAgICAgIGNvbnN0IFtmaXJzdCwgLi4ucmVzdF0gPSBub2Rlc1xuICAgICAgY29uc3Qgc291cmNlQ29kZSA9IGNvbnRleHQuZ2V0U291cmNlQ29kZSgpXG4gICAgICBjb25zdCBmaXggPSBnZXRGaXgoZmlyc3QsIHJlc3QsIHNvdXJjZUNvZGUpXG5cbiAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgbm9kZTogZmlyc3Quc291cmNlLFxuICAgICAgICBtZXNzYWdlLFxuICAgICAgICBmaXgsIC8vIEF0dGFjaCB0aGUgYXV0b2ZpeCAoaWYgYW55KSB0byB0aGUgZmlyc3QgaW1wb3J0LlxuICAgICAgfSlcblxuICAgICAgZm9yIChjb25zdCBub2RlIG9mIHJlc3QpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIG5vZGU6IG5vZGUuc291cmNlLFxuICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGdldEZpeChmaXJzdCwgcmVzdCwgc291cmNlQ29kZSkge1xuICAvLyBTb3JyeSBFU0xpbnQgPD0gMyB1c2Vycywgbm8gYXV0b2ZpeCBmb3IgeW91LiBBdXRvZml4aW5nIGR1cGxpY2F0ZSBpbXBvcnRzXG4gIC8vIHJlcXVpcmVzIG11bHRpcGxlIGBmaXhlci53aGF0ZXZlcigpYCBjYWxscyBpbiB0aGUgYGZpeGA6IFdlIGJvdGggbmVlZCB0b1xuICAvLyB1cGRhdGUgdGhlIGZpcnN0IG9uZSwgYW5kIHJlbW92ZSB0aGUgcmVzdC4gU3VwcG9ydCBmb3IgbXVsdGlwbGVcbiAgLy8gYGZpeGVyLndoYXRldmVyKClgIGluIGEgc2luZ2xlIGBmaXhgIHdhcyBhZGRlZCBpbiBFU0xpbnQgNC4xLlxuICAvLyBgc291cmNlQ29kZS5nZXRDb21tZW50c0JlZm9yZWAgd2FzIGFkZGVkIGluIDQuMCwgc28gdGhhdCdzIGFuIGVhc3kgdGhpbmcgdG9cbiAgLy8gY2hlY2sgZm9yLlxuICBpZiAodHlwZW9mIHNvdXJjZUNvZGUuZ2V0Q29tbWVudHNCZWZvcmUgIT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkXG4gIH1cblxuICAvLyBBZGp1c3RpbmcgdGhlIGZpcnN0IGltcG9ydCBtaWdodCBtYWtlIGl0IG11bHRpbGluZSwgd2hpY2ggY291bGQgYnJlYWtcbiAgLy8gYGVzbGludC1kaXNhYmxlLW5leHQtbGluZWAgY29tbWVudHMgYW5kIHNpbWlsYXIsIHNvIGJhaWwgaWYgdGhlIGZpcnN0XG4gIC8vIGltcG9ydCBoYXMgY29tbWVudHMuIEFsc28sIGlmIHRoZSBmaXJzdCBpbXBvcnQgaXMgYGltcG9ydCAqIGFzIG5zIGZyb21cbiAgLy8gJy4vZm9vJ2AgdGhlcmUncyBub3RoaW5nIHdlIGNhbiBkby5cbiAgaWYgKGhhc1Byb2JsZW1hdGljQ29tbWVudHMoZmlyc3QsIHNvdXJjZUNvZGUpIHx8IGhhc05hbWVzcGFjZShmaXJzdCkpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkXG4gIH1cblxuICBjb25zdCBkZWZhdWx0SW1wb3J0TmFtZXMgPSBuZXcgU2V0KFxuICAgIFtmaXJzdCwgLi4ucmVzdF0ubWFwKGdldERlZmF1bHRJbXBvcnROYW1lKS5maWx0ZXIoQm9vbGVhbilcbiAgKVxuXG4gIC8vIEJhaWwgaWYgdGhlcmUgYXJlIG11bHRpcGxlIGRpZmZlcmVudCBkZWZhdWx0IGltcG9ydCBuYW1lcyDigJMgaXQncyB1cCB0byB0aGVcbiAgLy8gdXNlciB0byBjaG9vc2Ugd2hpY2ggb25lIHRvIGtlZXAuXG4gIGlmIChkZWZhdWx0SW1wb3J0TmFtZXMuc2l6ZSA+IDEpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkXG4gIH1cblxuICAvLyBMZWF2ZSBpdCB0byB0aGUgdXNlciB0byBoYW5kbGUgY29tbWVudHMuIEFsc28gc2tpcCBgaW1wb3J0ICogYXMgbnMgZnJvbVxuICAvLyAnLi9mb28nYCBpbXBvcnRzLCBzaW5jZSB0aGV5IGNhbm5vdCBiZSBtZXJnZWQgaW50byBhbm90aGVyIGltcG9ydC5cbiAgY29uc3QgcmVzdFdpdGhvdXRDb21tZW50cyA9IHJlc3QuZmlsdGVyKG5vZGUgPT4gIShcbiAgICBoYXNQcm9ibGVtYXRpY0NvbW1lbnRzKG5vZGUsIHNvdXJjZUNvZGUpIHx8XG4gICAgaGFzTmFtZXNwYWNlKG5vZGUpXG4gICkpXG5cbiAgY29uc3Qgc3BlY2lmaWVycyA9IHJlc3RXaXRob3V0Q29tbWVudHNcbiAgICAubWFwKG5vZGUgPT4ge1xuICAgICAgY29uc3QgdG9rZW5zID0gc291cmNlQ29kZS5nZXRUb2tlbnMobm9kZSlcbiAgICAgIGNvbnN0IG9wZW5CcmFjZSA9IHRva2Vucy5maW5kKHRva2VuID0+IGlzUHVuY3R1YXRvcih0b2tlbiwgJ3snKSlcbiAgICAgIGNvbnN0IGNsb3NlQnJhY2UgPSB0b2tlbnMuZmluZCh0b2tlbiA9PiBpc1B1bmN0dWF0b3IodG9rZW4sICd9JykpXG5cbiAgICAgIGlmIChvcGVuQnJhY2UgPT0gbnVsbCB8fCBjbG9zZUJyYWNlID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBpbXBvcnROb2RlOiBub2RlLFxuICAgICAgICB0ZXh0OiBzb3VyY2VDb2RlLnRleHQuc2xpY2Uob3BlbkJyYWNlLnJhbmdlWzFdLCBjbG9zZUJyYWNlLnJhbmdlWzBdKSxcbiAgICAgICAgaGFzVHJhaWxpbmdDb21tYTogaXNQdW5jdHVhdG9yKHNvdXJjZUNvZGUuZ2V0VG9rZW5CZWZvcmUoY2xvc2VCcmFjZSksICcsJyksXG4gICAgICAgIGlzRW1wdHk6ICFoYXNTcGVjaWZpZXJzKG5vZGUpLFxuICAgICAgfVxuICAgIH0pXG4gICAgLmZpbHRlcihCb29sZWFuKVxuXG4gIGNvbnN0IHVubmVjZXNzYXJ5SW1wb3J0cyA9IHJlc3RXaXRob3V0Q29tbWVudHMuZmlsdGVyKG5vZGUgPT5cbiAgICAhaGFzU3BlY2lmaWVycyhub2RlKSAmJlxuICAgICFoYXNOYW1lc3BhY2Uobm9kZSkgJiZcbiAgICAhc3BlY2lmaWVycy5zb21lKHNwZWNpZmllciA9PiBzcGVjaWZpZXIuaW1wb3J0Tm9kZSA9PT0gbm9kZSlcbiAgKVxuXG4gIGNvbnN0IHNob3VsZEFkZERlZmF1bHQgPSBnZXREZWZhdWx0SW1wb3J0TmFtZShmaXJzdCkgPT0gbnVsbCAmJiBkZWZhdWx0SW1wb3J0TmFtZXMuc2l6ZSA9PT0gMVxuICBjb25zdCBzaG91bGRBZGRTcGVjaWZpZXJzID0gc3BlY2lmaWVycy5sZW5ndGggPiAwXG4gIGNvbnN0IHNob3VsZFJlbW92ZVVubmVjZXNzYXJ5ID0gdW5uZWNlc3NhcnlJbXBvcnRzLmxlbmd0aCA+IDBcblxuICBpZiAoIShzaG91bGRBZGREZWZhdWx0IHx8IHNob3VsZEFkZFNwZWNpZmllcnMgfHwgc2hvdWxkUmVtb3ZlVW5uZWNlc3NhcnkpKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG5cbiAgcmV0dXJuIGZpeGVyID0+IHtcbiAgICBjb25zdCB0b2tlbnMgPSBzb3VyY2VDb2RlLmdldFRva2VucyhmaXJzdClcbiAgICBjb25zdCBvcGVuQnJhY2UgPSB0b2tlbnMuZmluZCh0b2tlbiA9PiBpc1B1bmN0dWF0b3IodG9rZW4sICd7JykpXG4gICAgY29uc3QgY2xvc2VCcmFjZSA9IHRva2Vucy5maW5kKHRva2VuID0+IGlzUHVuY3R1YXRvcih0b2tlbiwgJ30nKSlcbiAgICBjb25zdCBmaXJzdFRva2VuID0gc291cmNlQ29kZS5nZXRGaXJzdFRva2VuKGZpcnN0KVxuICAgIGNvbnN0IFtkZWZhdWx0SW1wb3J0TmFtZV0gPSBkZWZhdWx0SW1wb3J0TmFtZXNcblxuICAgIGNvbnN0IGZpcnN0SGFzVHJhaWxpbmdDb21tYSA9XG4gICAgICBjbG9zZUJyYWNlICE9IG51bGwgJiZcbiAgICAgIGlzUHVuY3R1YXRvcihzb3VyY2VDb2RlLmdldFRva2VuQmVmb3JlKGNsb3NlQnJhY2UpLCAnLCcpXG4gICAgY29uc3QgZmlyc3RJc0VtcHR5ID0gIWhhc1NwZWNpZmllcnMoZmlyc3QpXG5cbiAgICBjb25zdCBbc3BlY2lmaWVyc1RleHRdID0gc3BlY2lmaWVycy5yZWR1Y2UoXG4gICAgICAoW3Jlc3VsdCwgbmVlZHNDb21tYV0sIHNwZWNpZmllcikgPT4ge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgIG5lZWRzQ29tbWEgJiYgIXNwZWNpZmllci5pc0VtcHR5XG4gICAgICAgICAgICA/IGAke3Jlc3VsdH0sJHtzcGVjaWZpZXIudGV4dH1gXG4gICAgICAgICAgICA6IGAke3Jlc3VsdH0ke3NwZWNpZmllci50ZXh0fWAsXG4gICAgICAgICAgc3BlY2lmaWVyLmlzRW1wdHkgPyBuZWVkc0NvbW1hIDogdHJ1ZSxcbiAgICAgICAgXVxuICAgICAgfSxcbiAgICAgIFsnJywgIWZpcnN0SGFzVHJhaWxpbmdDb21tYSAmJiAhZmlyc3RJc0VtcHR5XVxuICAgIClcblxuICAgIGNvbnN0IGZpeGVzID0gW11cblxuICAgIGlmIChzaG91bGRBZGREZWZhdWx0ICYmIG9wZW5CcmFjZSA9PSBudWxsICYmIHNob3VsZEFkZFNwZWNpZmllcnMpIHtcbiAgICAgIC8vIGBpbXBvcnQgJy4vZm9vJ2Ag4oaSIGBpbXBvcnQgZGVmLCB7Li4ufSBmcm9tICcuL2ZvbydgXG4gICAgICBmaXhlcy5wdXNoKFxuICAgICAgICBmaXhlci5pbnNlcnRUZXh0QWZ0ZXIoZmlyc3RUb2tlbiwgYCAke2RlZmF1bHRJbXBvcnROYW1lfSwgeyR7c3BlY2lmaWVyc1RleHR9fSBmcm9tYClcbiAgICAgIClcbiAgICB9IGVsc2UgaWYgKHNob3VsZEFkZERlZmF1bHQgJiYgb3BlbkJyYWNlID09IG51bGwgJiYgIXNob3VsZEFkZFNwZWNpZmllcnMpIHtcbiAgICAgIC8vIGBpbXBvcnQgJy4vZm9vJ2Ag4oaSIGBpbXBvcnQgZGVmIGZyb20gJy4vZm9vJ2BcbiAgICAgIGZpeGVzLnB1c2goZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKGZpcnN0VG9rZW4sIGAgJHtkZWZhdWx0SW1wb3J0TmFtZX0gZnJvbWApKVxuICAgIH0gZWxzZSBpZiAoc2hvdWxkQWRkRGVmYXVsdCAmJiBvcGVuQnJhY2UgIT0gbnVsbCAmJiBjbG9zZUJyYWNlICE9IG51bGwpIHtcbiAgICAgIC8vIGBpbXBvcnQgey4uLn0gZnJvbSAnLi9mb28nYCDihpIgYGltcG9ydCBkZWYsIHsuLi59IGZyb20gJy4vZm9vJ2BcbiAgICAgIGZpeGVzLnB1c2goZml4ZXIuaW5zZXJ0VGV4dEFmdGVyKGZpcnN0VG9rZW4sIGAgJHtkZWZhdWx0SW1wb3J0TmFtZX0sYCkpXG4gICAgICBpZiAoc2hvdWxkQWRkU3BlY2lmaWVycykge1xuICAgICAgICAvLyBgaW1wb3J0IGRlZiwgey4uLn0gZnJvbSAnLi9mb28nYCDihpIgYGltcG9ydCBkZWYsIHsuLi4sIC4uLn0gZnJvbSAnLi9mb28nYFxuICAgICAgICBmaXhlcy5wdXNoKGZpeGVyLmluc2VydFRleHRCZWZvcmUoY2xvc2VCcmFjZSwgc3BlY2lmaWVyc1RleHQpKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoIXNob3VsZEFkZERlZmF1bHQgJiYgb3BlbkJyYWNlID09IG51bGwgJiYgc2hvdWxkQWRkU3BlY2lmaWVycykge1xuICAgICAgaWYgKGZpcnN0LnNwZWNpZmllcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIC8vIGBpbXBvcnQgJy4vZm9vJ2Ag4oaSIGBpbXBvcnQgey4uLn0gZnJvbSAnLi9mb28nYFxuICAgICAgICBmaXhlcy5wdXNoKGZpeGVyLmluc2VydFRleHRBZnRlcihmaXJzdFRva2VuLCBgIHske3NwZWNpZmllcnNUZXh0fX0gZnJvbWApKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gYGltcG9ydCBkZWYgZnJvbSAnLi9mb28nYCDihpIgYGltcG9ydCBkZWYsIHsuLi59IGZyb20gJy4vZm9vJ2BcbiAgICAgICAgZml4ZXMucHVzaChmaXhlci5pbnNlcnRUZXh0QWZ0ZXIoZmlyc3Quc3BlY2lmaWVyc1swXSwgYCwgeyR7c3BlY2lmaWVyc1RleHR9fWApKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoIXNob3VsZEFkZERlZmF1bHQgJiYgb3BlbkJyYWNlICE9IG51bGwgJiYgY2xvc2VCcmFjZSAhPSBudWxsKSB7XG4gICAgICAvLyBgaW1wb3J0IHsuLi59ICcuL2ZvbydgIOKGkiBgaW1wb3J0IHsuLi4sIC4uLn0gZnJvbSAnLi9mb28nYFxuICAgICAgZml4ZXMucHVzaChmaXhlci5pbnNlcnRUZXh0QmVmb3JlKGNsb3NlQnJhY2UsIHNwZWNpZmllcnNUZXh0KSlcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgaW1wb3J0cyB3aG9zZSBzcGVjaWZpZXJzIGhhdmUgYmVlbiBtb3ZlZCBpbnRvIHRoZSBmaXJzdCBpbXBvcnQuXG4gICAgZm9yIChjb25zdCBzcGVjaWZpZXIgb2Ygc3BlY2lmaWVycykge1xuICAgICAgZml4ZXMucHVzaChmaXhlci5yZW1vdmUoc3BlY2lmaWVyLmltcG9ydE5vZGUpKVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSBpbXBvcnRzIHdob3NlIGRlZmF1bHQgaW1wb3J0IGhhcyBiZWVuIG1vdmVkIHRvIHRoZSBmaXJzdCBpbXBvcnQsXG4gICAgLy8gYW5kIHNpZGUtZWZmZWN0LW9ubHkgaW1wb3J0cyB0aGF0IGFyZSB1bm5lY2Vzc2FyeSBkdWUgdG8gdGhlIGZpcnN0XG4gICAgLy8gaW1wb3J0LlxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiB1bm5lY2Vzc2FyeUltcG9ydHMpIHtcbiAgICAgIGZpeGVzLnB1c2goZml4ZXIucmVtb3ZlKG5vZGUpKVxuICAgIH1cblxuICAgIHJldHVybiBmaXhlc1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzUHVuY3R1YXRvcihub2RlLCB2YWx1ZSkge1xuICByZXR1cm4gbm9kZS50eXBlID09PSAnUHVuY3R1YXRvcicgJiYgbm9kZS52YWx1ZSA9PT0gdmFsdWVcbn1cblxuLy8gR2V0IHRoZSBuYW1lIG9mIHRoZSBkZWZhdWx0IGltcG9ydCBvZiBgbm9kZWAsIGlmIGFueS5cbmZ1bmN0aW9uIGdldERlZmF1bHRJbXBvcnROYW1lKG5vZGUpIHtcbiAgY29uc3QgZGVmYXVsdFNwZWNpZmllciA9IG5vZGUuc3BlY2lmaWVyc1xuICAgIC5maW5kKHNwZWNpZmllciA9PiBzcGVjaWZpZXIudHlwZSA9PT0gJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInKVxuICByZXR1cm4gZGVmYXVsdFNwZWNpZmllciAhPSBudWxsID8gZGVmYXVsdFNwZWNpZmllci5sb2NhbC5uYW1lIDogdW5kZWZpbmVkXG59XG5cbi8vIENoZWNrcyB3aGV0aGVyIGBub2RlYCBoYXMgYSBuYW1lc3BhY2UgaW1wb3J0LlxuZnVuY3Rpb24gaGFzTmFtZXNwYWNlKG5vZGUpIHtcbiAgY29uc3Qgc3BlY2lmaWVycyA9IG5vZGUuc3BlY2lmaWVyc1xuICAgIC5maWx0ZXIoc3BlY2lmaWVyID0+IHNwZWNpZmllci50eXBlID09PSAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJylcbiAgcmV0dXJuIHNwZWNpZmllcnMubGVuZ3RoID4gMFxufVxuXG4vLyBDaGVja3Mgd2hldGhlciBgbm9kZWAgaGFzIGFueSBub24tZGVmYXVsdCBzcGVjaWZpZXJzLlxuZnVuY3Rpb24gaGFzU3BlY2lmaWVycyhub2RlKSB7XG4gIGNvbnN0IHNwZWNpZmllcnMgPSBub2RlLnNwZWNpZmllcnNcbiAgICAuZmlsdGVyKHNwZWNpZmllciA9PiBzcGVjaWZpZXIudHlwZSA9PT0gJ0ltcG9ydFNwZWNpZmllcicpXG4gIHJldHVybiBzcGVjaWZpZXJzLmxlbmd0aCA+IDBcbn1cblxuLy8gSXQncyBub3Qgb2J2aW91cyB3aGF0IHRoZSB1c2VyIHdhbnRzIHRvIGRvIHdpdGggY29tbWVudHMgYXNzb2NpYXRlZCB3aXRoXG4vLyBkdXBsaWNhdGUgaW1wb3J0cywgc28gc2tpcCBpbXBvcnRzIHdpdGggY29tbWVudHMgd2hlbiBhdXRvZml4aW5nLlxuZnVuY3Rpb24gaGFzUHJvYmxlbWF0aWNDb21tZW50cyhub2RlLCBzb3VyY2VDb2RlKSB7XG4gIHJldHVybiAoXG4gICAgaGFzQ29tbWVudEJlZm9yZShub2RlLCBzb3VyY2VDb2RlKSB8fFxuICAgIGhhc0NvbW1lbnRBZnRlcihub2RlLCBzb3VyY2VDb2RlKSB8fFxuICAgIGhhc0NvbW1lbnRJbnNpZGVOb25TcGVjaWZpZXJzKG5vZGUsIHNvdXJjZUNvZGUpXG4gIClcbn1cblxuLy8gQ2hlY2tzIHdoZXRoZXIgYG5vZGVgIGhhcyBhIGNvbW1lbnQgKHRoYXQgZW5kcykgb24gdGhlIHByZXZpb3VzIGxpbmUgb3Igb25cbi8vIHRoZSBzYW1lIGxpbmUgYXMgYG5vZGVgIChzdGFydHMpLlxuZnVuY3Rpb24gaGFzQ29tbWVudEJlZm9yZShub2RlLCBzb3VyY2VDb2RlKSB7XG4gIHJldHVybiBzb3VyY2VDb2RlLmdldENvbW1lbnRzQmVmb3JlKG5vZGUpXG4gICAgLnNvbWUoY29tbWVudCA9PiBjb21tZW50LmxvYy5lbmQubGluZSA+PSBub2RlLmxvYy5zdGFydC5saW5lIC0gMSlcbn1cblxuLy8gQ2hlY2tzIHdoZXRoZXIgYG5vZGVgIGhhcyBhIGNvbW1lbnQgKHRoYXQgc3RhcnRzKSBvbiB0aGUgc2FtZSBsaW5lIGFzIGBub2RlYFxuLy8gKGVuZHMpLlxuZnVuY3Rpb24gaGFzQ29tbWVudEFmdGVyKG5vZGUsIHNvdXJjZUNvZGUpIHtcbiAgcmV0dXJuIHNvdXJjZUNvZGUuZ2V0Q29tbWVudHNBZnRlcihub2RlKVxuICAgIC5zb21lKGNvbW1lbnQgPT4gY29tbWVudC5sb2Muc3RhcnQubGluZSA9PT0gbm9kZS5sb2MuZW5kLmxpbmUpXG59XG5cbi8vIENoZWNrcyB3aGV0aGVyIGBub2RlYCBoYXMgYW55IGNvbW1lbnRzIF9pbnNpZGUsXyBleGNlcHQgaW5zaWRlIHRoZSBgey4uLn1gXG4vLyBwYXJ0IChpZiBhbnkpLlxuZnVuY3Rpb24gaGFzQ29tbWVudEluc2lkZU5vblNwZWNpZmllcnMobm9kZSwgc291cmNlQ29kZSkge1xuICBjb25zdCB0b2tlbnMgPSBzb3VyY2VDb2RlLmdldFRva2Vucyhub2RlKVxuICBjb25zdCBvcGVuQnJhY2VJbmRleCA9IHRva2Vucy5maW5kSW5kZXgodG9rZW4gPT4gaXNQdW5jdHVhdG9yKHRva2VuLCAneycpKVxuICBjb25zdCBjbG9zZUJyYWNlSW5kZXggPSB0b2tlbnMuZmluZEluZGV4KHRva2VuID0+IGlzUHVuY3R1YXRvcih0b2tlbiwgJ30nKSlcbiAgLy8gU2xpY2UgYXdheSB0aGUgZmlyc3QgdG9rZW4sIHNpbmNlIHdlJ3JlIG5vIGxvb2tpbmcgZm9yIGNvbW1lbnRzIF9iZWZvcmVfXG4gIC8vIGBub2RlYCAob25seSBpbnNpZGUpLiBJZiB0aGVyZSdzIGEgYHsuLi59YCBwYXJ0LCBsb29rIGZvciBjb21tZW50cyBiZWZvcmVcbiAgLy8gdGhlIGB7YCwgYnV0IG5vdCBiZWZvcmUgdGhlIGB9YCAoaGVuY2UgdGhlIGArMWBzKS5cbiAgY29uc3Qgc29tZVRva2VucyA9IG9wZW5CcmFjZUluZGV4ID49IDAgJiYgY2xvc2VCcmFjZUluZGV4ID49IDBcbiAgICA/IHRva2Vucy5zbGljZSgxLCBvcGVuQnJhY2VJbmRleCArIDEpLmNvbmNhdCh0b2tlbnMuc2xpY2UoY2xvc2VCcmFjZUluZGV4ICsgMSkpXG4gICAgOiB0b2tlbnMuc2xpY2UoMSlcbiAgcmV0dXJuIHNvbWVUb2tlbnMuc29tZSh0b2tlbiA9PiBzb3VyY2VDb2RlLmdldENvbW1lbnRzQmVmb3JlKHRva2VuKS5sZW5ndGggPiAwKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWR1cGxpY2F0ZXMnKSxcbiAgICB9LFxuICAgIGZpeGFibGU6ICdjb2RlJyxcbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICBjb25zaWRlclF1ZXJ5U3RyaW5nOiB7XG4gICAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICAvLyBQcmVwYXJlIHRoZSByZXNvbHZlciBmcm9tIG9wdGlvbnMuXG4gICAgY29uc3QgY29uc2lkZXJRdWVyeVN0cmluZ09wdGlvbiA9IGNvbnRleHQub3B0aW9uc1swXSAmJlxuICAgICAgY29udGV4dC5vcHRpb25zWzBdWydjb25zaWRlclF1ZXJ5U3RyaW5nJ11cbiAgICBjb25zdCBkZWZhdWx0UmVzb2x2ZXIgPSBzb3VyY2VQYXRoID0+IHJlc29sdmUoc291cmNlUGF0aCwgY29udGV4dCkgfHwgc291cmNlUGF0aFxuICAgIGNvbnN0IHJlc29sdmVyID0gY29uc2lkZXJRdWVyeVN0cmluZ09wdGlvbiA/IChzb3VyY2VQYXRoID0+IHtcbiAgICAgIGNvbnN0IHBhcnRzID0gc291cmNlUGF0aC5tYXRjaCgvXihbXj9dKilcXD8oLiopJC8pXG4gICAgICBpZiAoIXBhcnRzKSB7XG4gICAgICAgIHJldHVybiBkZWZhdWx0UmVzb2x2ZXIoc291cmNlUGF0aClcbiAgICAgIH1cbiAgICAgIHJldHVybiBkZWZhdWx0UmVzb2x2ZXIocGFydHNbMV0pICsgJz8nICsgcGFydHNbMl1cbiAgICB9KSA6IGRlZmF1bHRSZXNvbHZlclxuXG4gICAgY29uc3QgaW1wb3J0ZWQgPSBuZXcgTWFwKClcbiAgICBjb25zdCBuc0ltcG9ydGVkID0gbmV3IE1hcCgpXG4gICAgY29uc3QgdHlwZXNJbXBvcnRlZCA9IG5ldyBNYXAoKVxuICAgIHJldHVybiB7XG4gICAgICAnSW1wb3J0RGVjbGFyYXRpb24nOiBmdW5jdGlvbiAobikge1xuICAgICAgICAvLyByZXNvbHZlZCBwYXRoIHdpbGwgY292ZXIgYWxpYXNlZCBkdXBsaWNhdGVzXG4gICAgICAgIGNvbnN0IHJlc29sdmVkUGF0aCA9IHJlc29sdmVyKG4uc291cmNlLnZhbHVlKVxuICAgICAgICBjb25zdCBpbXBvcnRNYXAgPSBuLmltcG9ydEtpbmQgPT09ICd0eXBlJyA/IHR5cGVzSW1wb3J0ZWQgOlxuICAgICAgICAgIChoYXNOYW1lc3BhY2UobikgPyBuc0ltcG9ydGVkIDogaW1wb3J0ZWQpXG5cbiAgICAgICAgaWYgKGltcG9ydE1hcC5oYXMocmVzb2x2ZWRQYXRoKSkge1xuICAgICAgICAgIGltcG9ydE1hcC5nZXQocmVzb2x2ZWRQYXRoKS5wdXNoKG4pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaW1wb3J0TWFwLnNldChyZXNvbHZlZFBhdGgsIFtuXSlcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgJ1Byb2dyYW06ZXhpdCc6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY2hlY2tJbXBvcnRzKGltcG9ydGVkLCBjb250ZXh0KVxuICAgICAgICBjaGVja0ltcG9ydHMobnNJbXBvcnRlZCwgY29udGV4dClcbiAgICAgICAgY2hlY2tJbXBvcnRzKHR5cGVzSW1wb3J0ZWQsIGNvbnRleHQpXG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-dynamic-require.js b/node_modules/eslint-plugin-import/lib/rules/no-dynamic-require.js index c981ee2b..e63b3db1 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-dynamic-require.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-dynamic-require.js @@ -1,27 +1,26 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} function isRequire(node) { - return node && node.callee && node.callee.type === 'Identifier' && node.callee.name === 'require' && node.arguments.length >= 1; + return node && + node.callee && + node.callee.type === 'Identifier' && + node.callee.name === 'require' && + node.arguments.length >= 1; } function isStaticValue(arg) { - return arg.type === 'Literal' || arg.type === 'TemplateLiteral' && arg.expressions.length === 0; + return arg.type === 'Literal' || + arg.type === 'TemplateLiteral' && arg.expressions.length === 0; } module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-dynamic-require') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-dynamic-require') }, + + schema: [] }, + create: function (context) { return { @@ -29,11 +28,10 @@ module.exports = { if (isRequire(node) && !isStaticValue(node.arguments[0])) { context.report({ node, - message: 'Calls to require() should use string literals' - }); + message: 'Calls to require() should use string literals' }); + } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1keW5hbWljLXJlcXVpcmUuanMiXSwibmFtZXMiOlsiaXNSZXF1aXJlIiwibm9kZSIsImNhbGxlZSIsInR5cGUiLCJuYW1lIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiaXNTdGF0aWNWYWx1ZSIsImFyZyIsImV4cHJlc3Npb25zIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsIkNhbGxFeHByZXNzaW9uIiwicmVwb3J0IiwibWVzc2FnZSJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7Ozs7O0FBRUEsU0FBU0EsU0FBVCxDQUFtQkMsSUFBbkIsRUFBeUI7QUFDdkIsU0FBT0EsUUFDTEEsS0FBS0MsTUFEQSxJQUVMRCxLQUFLQyxNQUFMLENBQVlDLElBQVosS0FBcUIsWUFGaEIsSUFHTEYsS0FBS0MsTUFBTCxDQUFZRSxJQUFaLEtBQXFCLFNBSGhCLElBSUxILEtBQUtJLFNBQUwsQ0FBZUMsTUFBZixJQUF5QixDQUozQjtBQUtEOztBQUVELFNBQVNDLGFBQVQsQ0FBdUJDLEdBQXZCLEVBQTRCO0FBQzFCLFNBQU9BLElBQUlMLElBQUosS0FBYSxTQUFiLElBQ0pLLElBQUlMLElBQUosS0FBYSxpQkFBYixJQUFrQ0ssSUFBSUMsV0FBSixDQUFnQkgsTUFBaEIsS0FBMkIsQ0FEaEU7QUFFRDs7QUFFREksT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pULFVBQU0sWUFERjtBQUVKVSxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsb0JBQVI7QUFERCxLQUZGO0FBS0pDLFlBQVE7QUFMSixHQURTOztBQVNmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7QUFDekIsV0FBTztBQUNMQyxxQkFBZWpCLElBQWYsRUFBcUI7QUFDbkIsWUFBSUQsVUFBVUMsSUFBVixLQUFtQixDQUFDTSxjQUFjTixLQUFLSSxTQUFMLENBQWUsQ0FBZixDQUFkLENBQXhCLEVBQTBEO0FBQ3hEWSxrQkFBUUUsTUFBUixDQUFlO0FBQ2JsQixnQkFEYTtBQUVibUIscUJBQVM7QUFGSSxXQUFmO0FBSUQ7QUFDRjtBQVJJLEtBQVA7QUFVRDtBQXBCYyxDQUFqQiIsImZpbGUiOiJuby1keW5hbWljLXJlcXVpcmUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiBpc1JlcXVpcmUobm9kZSkge1xuICByZXR1cm4gbm9kZSAmJlxuICAgIG5vZGUuY2FsbGVlICYmXG4gICAgbm9kZS5jYWxsZWUudHlwZSA9PT0gJ0lkZW50aWZpZXInICYmXG4gICAgbm9kZS5jYWxsZWUubmFtZSA9PT0gJ3JlcXVpcmUnICYmXG4gICAgbm9kZS5hcmd1bWVudHMubGVuZ3RoID49IDFcbn1cblxuZnVuY3Rpb24gaXNTdGF0aWNWYWx1ZShhcmcpIHtcbiAgcmV0dXJuIGFyZy50eXBlID09PSAnTGl0ZXJhbCcgfHxcbiAgICAoYXJnLnR5cGUgPT09ICdUZW1wbGF0ZUxpdGVyYWwnICYmIGFyZy5leHByZXNzaW9ucy5sZW5ndGggPT09IDApXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tZHluYW1pYy1yZXF1aXJlJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgQ2FsbEV4cHJlc3Npb24obm9kZSkge1xuICAgICAgICBpZiAoaXNSZXF1aXJlKG5vZGUpICYmICFpc1N0YXRpY1ZhbHVlKG5vZGUuYXJndW1lbnRzWzBdKSkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOiAnQ2FsbHMgdG8gcmVxdWlyZSgpIHNob3VsZCB1c2Ugc3RyaW5nIGxpdGVyYWxzJyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1keW5hbWljLXJlcXVpcmUuanMiXSwibmFtZXMiOlsiaXNSZXF1aXJlIiwibm9kZSIsImNhbGxlZSIsInR5cGUiLCJuYW1lIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiaXNTdGF0aWNWYWx1ZSIsImFyZyIsImV4cHJlc3Npb25zIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsIkNhbGxFeHByZXNzaW9uIiwicmVwb3J0IiwibWVzc2FnZSJdLCJtYXBwaW5ncyI6ImFBQUEscUM7O0FBRUEsU0FBU0EsU0FBVCxDQUFtQkMsSUFBbkIsRUFBeUI7QUFDdkIsU0FBT0E7QUFDTEEsT0FBS0MsTUFEQTtBQUVMRCxPQUFLQyxNQUFMLENBQVlDLElBQVosS0FBcUIsWUFGaEI7QUFHTEYsT0FBS0MsTUFBTCxDQUFZRSxJQUFaLEtBQXFCLFNBSGhCO0FBSUxILE9BQUtJLFNBQUwsQ0FBZUMsTUFBZixJQUF5QixDQUozQjtBQUtEOztBQUVELFNBQVNDLGFBQVQsQ0FBdUJDLEdBQXZCLEVBQTRCO0FBQzFCLFNBQU9BLElBQUlMLElBQUosS0FBYSxTQUFiO0FBQ0pLLE1BQUlMLElBQUosS0FBYSxpQkFBYixJQUFrQ0ssSUFBSUMsV0FBSixDQUFnQkgsTUFBaEIsS0FBMkIsQ0FEaEU7QUFFRDs7QUFFREksT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pULFVBQU0sWUFERjtBQUVKVSxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsb0JBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLEVBTEosRUFEUzs7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixXQUFPO0FBQ0xDLHFCQUFlakIsSUFBZixFQUFxQjtBQUNuQixZQUFJRCxVQUFVQyxJQUFWLEtBQW1CLENBQUNNLGNBQWNOLEtBQUtJLFNBQUwsQ0FBZSxDQUFmLENBQWQsQ0FBeEIsRUFBMEQ7QUFDeERZLGtCQUFRRSxNQUFSLENBQWU7QUFDYmxCLGdCQURhO0FBRWJtQixxQkFBUywrQ0FGSSxFQUFmOztBQUlEO0FBQ0YsT0FSSSxFQUFQOztBQVVELEdBcEJjLEVBQWpCIiwiZmlsZSI6Im5vLWR5bmFtaWMtcmVxdWlyZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIGlzUmVxdWlyZShub2RlKSB7XG4gIHJldHVybiBub2RlICYmXG4gICAgbm9kZS5jYWxsZWUgJiZcbiAgICBub2RlLmNhbGxlZS50eXBlID09PSAnSWRlbnRpZmllcicgJiZcbiAgICBub2RlLmNhbGxlZS5uYW1lID09PSAncmVxdWlyZScgJiZcbiAgICBub2RlLmFyZ3VtZW50cy5sZW5ndGggPj0gMVxufVxuXG5mdW5jdGlvbiBpc1N0YXRpY1ZhbHVlKGFyZykge1xuICByZXR1cm4gYXJnLnR5cGUgPT09ICdMaXRlcmFsJyB8fFxuICAgIChhcmcudHlwZSA9PT0gJ1RlbXBsYXRlTGl0ZXJhbCcgJiYgYXJnLmV4cHJlc3Npb25zLmxlbmd0aCA9PT0gMClcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1keW5hbWljLXJlcXVpcmUnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIHJldHVybiB7XG4gICAgICBDYWxsRXhwcmVzc2lvbihub2RlKSB7XG4gICAgICAgIGlmIChpc1JlcXVpcmUobm9kZSkgJiYgIWlzU3RhdGljVmFsdWUobm9kZS5hcmd1bWVudHNbMF0pKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdDYWxscyB0byByZXF1aXJlKCkgc2hvdWxkIHVzZSBzdHJpbmcgbGl0ZXJhbHMnLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-extraneous-dependencies.js b/node_modules/eslint-plugin-import/lib/rules/no-extraneous-dependencies.js index 91499e35..b8d89184 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-extraneous-dependencies.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-extraneous-dependencies.js @@ -1,42 +1,13 @@ -'use strict'; - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _fs = require('fs'); - -var _fs2 = _interopRequireDefault(_fs); - -var _readPkgUp = require('read-pkg-up'); - -var _readPkgUp2 = _interopRequireDefault(_readPkgUp); - -var _minimatch = require('minimatch'); - -var _minimatch2 = _interopRequireDefault(_minimatch); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _importType = require('../core/importType'); - -var _importType2 = _interopRequireDefault(_importType); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function hasKeys() { - let obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; +'use strict';var _path = require('path');var _path2 = _interopRequireDefault(_path); +var _fs = require('fs');var _fs2 = _interopRequireDefault(_fs); +var _readPkgUp = require('read-pkg-up');var _readPkgUp2 = _interopRequireDefault(_readPkgUp); +var _minimatch = require('minimatch');var _minimatch2 = _interopRequireDefault(_minimatch); +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _moduleVisitor = require('eslint-module-utils/moduleVisitor');var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); +var _importType = require('../core/importType');var _importType2 = _interopRequireDefault(_importType); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} +function hasKeys() {let obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return Object.keys(obj).length > 0; } @@ -52,8 +23,8 @@ function extractDepFields(pkg) { peerDependencies: pkg.peerDependencies || {}, // BundledDeps should be in the form of an array, but object notation is also supported by // `npm`, so we convert it to an array if it is an object - bundledDependencies: arrayOrKeys(pkg.bundleDependencies || pkg.bundledDependencies || []) - }; + bundledDependencies: arrayOrKeys(pkg.bundleDependencies || pkg.bundledDependencies || []) }; + } function getDependencies(context, packageDir) { @@ -64,8 +35,8 @@ function getDependencies(context, packageDir) { devDependencies: {}, optionalDependencies: {}, peerDependencies: {}, - bundledDependencies: [] - }; + bundledDependencies: [] }; + if (packageDir && packageDir.length > 0) { if (!Array.isArray(packageDir)) { @@ -78,15 +49,30 @@ function getDependencies(context, packageDir) { if (paths.length > 0) { // use rule config to find package.json paths.forEach(dir => { - const _packageContent = extractDepFields(JSON.parse(_fs2.default.readFileSync(_path2.default.join(dir, 'package.json'), 'utf8'))); - Object.keys(packageContent).forEach(depsKey => Object.assign(packageContent[depsKey], _packageContent[depsKey])); + const _packageContent = extractDepFields( + JSON.parse(_fs2.default.readFileSync(_path2.default.join(dir, 'package.json'), 'utf8'))); + + Object.keys(packageContent).forEach(depsKey => + Object.assign(packageContent[depsKey], _packageContent[depsKey])); + }); } else { // use closest package.json - Object.assign(packageContent, extractDepFields(_readPkgUp2.default.sync({ cwd: context.getFilename(), normalize: false }).pkg)); + Object.assign( + packageContent, + extractDepFields( + _readPkgUp2.default.sync({ cwd: context.getFilename(), normalize: false }).pkg)); + + } - if (![packageContent.dependencies, packageContent.devDependencies, packageContent.optionalDependencies, packageContent.peerDependencies, packageContent.bundledDependencies].some(hasKeys)) { + if (![ + packageContent.dependencies, + packageContent.devDependencies, + packageContent.optionalDependencies, + packageContent.peerDependencies, + packageContent.bundledDependencies]. + some(hasKeys)) { return null; } @@ -95,14 +81,14 @@ function getDependencies(context, packageDir) { if (paths.length > 0 && e.code === 'ENOENT') { context.report({ message: 'The package.json file could not be found.', - loc: { line: 0, column: 0 } - }); + loc: { line: 0, column: 0 } }); + } if (e.name === 'JSONError' || e instanceof SyntaxError) { context.report({ message: 'The package.json file could not be parsed: ' + e.message, - loc: { line: 0, column: 0 } - }); + loc: { line: 0, column: 0 } }); + } return null; @@ -110,7 +96,8 @@ function getDependencies(context, packageDir) { } function missingErrorMessage(packageName) { - return `'${packageName}' should be listed in the project's dependencies. ` + `Run 'npm i -S ${packageName}' to add it`; + return `'${packageName}' should be listed in the project's dependencies. ` + + `Run 'npm i -S ${packageName}' to add it`; } function devDepErrorMessage(packageName) { @@ -118,12 +105,13 @@ function devDepErrorMessage(packageName) { } function optDepErrorMessage(packageName) { - return `'${packageName}' should be listed in the project's dependencies, ` + `not optionalDependencies.`; + return `'${packageName}' should be listed in the project's dependencies, ` + + `not optionalDependencies.`; } function reportIfMissing(context, deps, depsOptions, node, name) { // Do not report when importing types - if (node.importKind === 'type') { + if (node.importKind === 'type' || node.parent && node.parent.importKind === 'type') { return; } @@ -132,19 +120,24 @@ function reportIfMissing(context, deps, depsOptions, node, name) { } const resolved = (0, _resolve2.default)(name, context); - if (!resolved) { - return; - } + if (!resolved) {return;} const splitName = name.split('/'); - const packageName = splitName[0][0] === '@' ? splitName.slice(0, 2).join('/') : splitName[0]; + const packageName = splitName[0][0] === '@' ? + splitName.slice(0, 2).join('/') : + splitName[0]; const isInDeps = deps.dependencies[packageName] !== undefined; const isInDevDeps = deps.devDependencies[packageName] !== undefined; const isInOptDeps = deps.optionalDependencies[packageName] !== undefined; const isInPeerDeps = deps.peerDependencies[packageName] !== undefined; const isInBundledDeps = deps.bundledDependencies.indexOf(packageName) !== -1; - if (isInDeps || depsOptions.allowDevDeps && isInDevDeps || depsOptions.allowPeerDeps && isInPeerDeps || depsOptions.allowOptDeps && isInOptDeps || depsOptions.allowBundledDeps && isInBundledDeps) { + if (isInDeps || + depsOptions.allowDevDeps && isInDevDeps || + depsOptions.allowPeerDeps && isInPeerDeps || + depsOptions.allowOptDeps && isInOptDeps || + depsOptions.allowBundledDeps && isInBundledDeps) + { return; } @@ -167,28 +160,33 @@ function testConfig(config, filename) { return config; } // Array of globs. - return config.some(c => (0, _minimatch2.default)(filename, c) || (0, _minimatch2.default)(filename, _path2.default.join(process.cwd(), c))); + return config.some(c => + (0, _minimatch2.default)(filename, c) || + (0, _minimatch2.default)(filename, _path2.default.join(process.cwd(), c))); + } module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('no-extraneous-dependencies') - }, + url: (0, _docsUrl2.default)('no-extraneous-dependencies') }, - schema: [{ + + schema: [ + { 'type': 'object', 'properties': { 'devDependencies': { 'type': ['boolean', 'array'] }, 'optionalDependencies': { 'type': ['boolean', 'array'] }, 'peerDependencies': { 'type': ['boolean', 'array'] }, 'bundledDependencies': { 'type': ['boolean', 'array'] }, - 'packageDir': { 'type': ['string', 'array'] } - }, - 'additionalProperties': false - }] - }, + 'packageDir': { 'type': ['string', 'array'] } }, + + 'additionalProperties': false }] }, + + + create: function (context) { const options = context.options[0] || {}; @@ -199,31 +197,11 @@ module.exports = { allowDevDeps: testConfig(options.devDependencies, filename) !== false, allowOptDeps: testConfig(options.optionalDependencies, filename) !== false, allowPeerDeps: testConfig(options.peerDependencies, filename) !== false, - allowBundledDeps: testConfig(options.bundledDependencies, filename) !== false + allowBundledDeps: testConfig(options.bundledDependencies, filename) !== false }; - // todo: use module visitor from module-utils core - };return { - ImportDeclaration: function (node) { - if (node.source) { - reportIfMissing(context, deps, depsOptions, node, node.source.value); - } - }, - ExportNamedDeclaration: function (node) { - if (node.source) { - reportIfMissing(context, deps, depsOptions, node, node.source.value); - } - }, - ExportAllDeclaration: function (node) { - if (node.source) { - reportIfMissing(context, deps, depsOptions, node, node.source.value); - } - }, - CallExpression: function handleRequires(node) { - if ((0, _staticRequire2.default)(node)) { - reportIfMissing(context, deps, depsOptions, node, node.arguments[0].value); - } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcy5qcyJdLCJuYW1lcyI6WyJoYXNLZXlzIiwib2JqIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImFycmF5T3JLZXlzIiwiYXJyYXlPck9iamVjdCIsIkFycmF5IiwiaXNBcnJheSIsImV4dHJhY3REZXBGaWVsZHMiLCJwa2ciLCJkZXBlbmRlbmNpZXMiLCJkZXZEZXBlbmRlbmNpZXMiLCJvcHRpb25hbERlcGVuZGVuY2llcyIsInBlZXJEZXBlbmRlbmNpZXMiLCJidW5kbGVkRGVwZW5kZW5jaWVzIiwiYnVuZGxlRGVwZW5kZW5jaWVzIiwiZ2V0RGVwZW5kZW5jaWVzIiwiY29udGV4dCIsInBhY2thZ2VEaXIiLCJwYXRocyIsInBhY2thZ2VDb250ZW50IiwicGF0aCIsInJlc29sdmUiLCJtYXAiLCJkaXIiLCJmb3JFYWNoIiwiX3BhY2thZ2VDb250ZW50IiwiSlNPTiIsInBhcnNlIiwiZnMiLCJyZWFkRmlsZVN5bmMiLCJqb2luIiwiZGVwc0tleSIsImFzc2lnbiIsInJlYWRQa2dVcCIsInN5bmMiLCJjd2QiLCJnZXRGaWxlbmFtZSIsIm5vcm1hbGl6ZSIsInNvbWUiLCJlIiwiY29kZSIsInJlcG9ydCIsIm1lc3NhZ2UiLCJsb2MiLCJsaW5lIiwiY29sdW1uIiwibmFtZSIsIlN5bnRheEVycm9yIiwibWlzc2luZ0Vycm9yTWVzc2FnZSIsInBhY2thZ2VOYW1lIiwiZGV2RGVwRXJyb3JNZXNzYWdlIiwib3B0RGVwRXJyb3JNZXNzYWdlIiwicmVwb3J0SWZNaXNzaW5nIiwiZGVwcyIsImRlcHNPcHRpb25zIiwibm9kZSIsImltcG9ydEtpbmQiLCJyZXNvbHZlZCIsInNwbGl0TmFtZSIsInNwbGl0Iiwic2xpY2UiLCJpc0luRGVwcyIsInVuZGVmaW5lZCIsImlzSW5EZXZEZXBzIiwiaXNJbk9wdERlcHMiLCJpc0luUGVlckRlcHMiLCJpc0luQnVuZGxlZERlcHMiLCJpbmRleE9mIiwiYWxsb3dEZXZEZXBzIiwiYWxsb3dQZWVyRGVwcyIsImFsbG93T3B0RGVwcyIsImFsbG93QnVuZGxlZERlcHMiLCJ0ZXN0Q29uZmlnIiwiY29uZmlnIiwiZmlsZW5hbWUiLCJjIiwicHJvY2VzcyIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJvcHRpb25zIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJzb3VyY2UiLCJ2YWx1ZSIsIkV4cG9ydE5hbWVkRGVjbGFyYXRpb24iLCJFeHBvcnRBbGxEZWNsYXJhdGlvbiIsIkNhbGxFeHByZXNzaW9uIiwiaGFuZGxlUmVxdWlyZXMiLCJhcmd1bWVudHMiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7O0FBRUEsU0FBU0EsT0FBVCxHQUEyQjtBQUFBLE1BQVZDLEdBQVUsdUVBQUosRUFBSTs7QUFDekIsU0FBT0MsT0FBT0MsSUFBUCxDQUFZRixHQUFaLEVBQWlCRyxNQUFqQixHQUEwQixDQUFqQztBQUNEOztBQUVELFNBQVNDLFdBQVQsQ0FBcUJDLGFBQXJCLEVBQW9DO0FBQ2xDLFNBQU9DLE1BQU1DLE9BQU4sQ0FBY0YsYUFBZCxJQUErQkEsYUFBL0IsR0FBK0NKLE9BQU9DLElBQVAsQ0FBWUcsYUFBWixDQUF0RDtBQUNEOztBQUVELFNBQVNHLGdCQUFULENBQTBCQyxHQUExQixFQUErQjtBQUM3QixTQUFPO0FBQ0xDLGtCQUFjRCxJQUFJQyxZQUFKLElBQW9CLEVBRDdCO0FBRUxDLHFCQUFpQkYsSUFBSUUsZUFBSixJQUF1QixFQUZuQztBQUdMQywwQkFBc0JILElBQUlHLG9CQUFKLElBQTRCLEVBSDdDO0FBSUxDLHNCQUFrQkosSUFBSUksZ0JBQUosSUFBd0IsRUFKckM7QUFLTDtBQUNBO0FBQ0FDLHlCQUFxQlYsWUFBWUssSUFBSU0sa0JBQUosSUFBMEJOLElBQUlLLG1CQUE5QixJQUFxRCxFQUFqRTtBQVBoQixHQUFQO0FBU0Q7O0FBRUQsU0FBU0UsZUFBVCxDQUF5QkMsT0FBekIsRUFBa0NDLFVBQWxDLEVBQThDO0FBQzVDLE1BQUlDLFFBQVEsRUFBWjtBQUNBLE1BQUk7QUFDRixVQUFNQyxpQkFBaUI7QUFDckJWLG9CQUFjLEVBRE87QUFFckJDLHVCQUFpQixFQUZJO0FBR3JCQyw0QkFBc0IsRUFIRDtBQUlyQkMsd0JBQWtCLEVBSkc7QUFLckJDLDJCQUFxQjtBQUxBLEtBQXZCOztBQVFBLFFBQUlJLGNBQWNBLFdBQVdmLE1BQVgsR0FBb0IsQ0FBdEMsRUFBeUM7QUFDdkMsVUFBSSxDQUFDRyxNQUFNQyxPQUFOLENBQWNXLFVBQWQsQ0FBTCxFQUFnQztBQUM5QkMsZ0JBQVEsQ0FBQ0UsZUFBS0MsT0FBTCxDQUFhSixVQUFiLENBQUQsQ0FBUjtBQUNELE9BRkQsTUFFTztBQUNMQyxnQkFBUUQsV0FBV0ssR0FBWCxDQUFlQyxPQUFPSCxlQUFLQyxPQUFMLENBQWFFLEdBQWIsQ0FBdEIsQ0FBUjtBQUNEO0FBQ0Y7O0FBRUQsUUFBSUwsTUFBTWhCLE1BQU4sR0FBZSxDQUFuQixFQUFzQjtBQUNwQjtBQUNBZ0IsWUFBTU0sT0FBTixDQUFjRCxPQUFPO0FBQ25CLGNBQU1FLGtCQUFrQmxCLGlCQUN0Qm1CLEtBQUtDLEtBQUwsQ0FBV0MsYUFBR0MsWUFBSCxDQUFnQlQsZUFBS1UsSUFBTCxDQUFVUCxHQUFWLEVBQWUsY0FBZixDQUFoQixFQUFnRCxNQUFoRCxDQUFYLENBRHNCLENBQXhCO0FBR0F2QixlQUFPQyxJQUFQLENBQVlrQixjQUFaLEVBQTRCSyxPQUE1QixDQUFvQ08sV0FDbEMvQixPQUFPZ0MsTUFBUCxDQUFjYixlQUFlWSxPQUFmLENBQWQsRUFBdUNOLGdCQUFnQk0sT0FBaEIsQ0FBdkMsQ0FERjtBQUdELE9BUEQ7QUFRRCxLQVZELE1BVU87QUFDTDtBQUNBL0IsYUFBT2dDLE1BQVAsQ0FDRWIsY0FERixFQUVFWixpQkFDRTBCLG9CQUFVQyxJQUFWLENBQWUsRUFBQ0MsS0FBS25CLFFBQVFvQixXQUFSLEVBQU4sRUFBNkJDLFdBQVcsS0FBeEMsRUFBZixFQUErRDdCLEdBRGpFLENBRkY7QUFNRDs7QUFFRCxRQUFJLENBQUMsQ0FDSFcsZUFBZVYsWUFEWixFQUVIVSxlQUFlVCxlQUZaLEVBR0hTLGVBQWVSLG9CQUhaLEVBSUhRLGVBQWVQLGdCQUpaLEVBS0hPLGVBQWVOLG1CQUxaLEVBTUh5QixJQU5HLENBTUV4QyxPQU5GLENBQUwsRUFNaUI7QUFDZixhQUFPLElBQVA7QUFDRDs7QUFFRCxXQUFPcUIsY0FBUDtBQUNELEdBaERELENBZ0RFLE9BQU9vQixDQUFQLEVBQVU7QUFDVixRQUFJckIsTUFBTWhCLE1BQU4sR0FBZSxDQUFmLElBQW9CcUMsRUFBRUMsSUFBRixLQUFXLFFBQW5DLEVBQTZDO0FBQzNDeEIsY0FBUXlCLE1BQVIsQ0FBZTtBQUNiQyxpQkFBUywyQ0FESTtBQUViQyxhQUFLLEVBQUVDLE1BQU0sQ0FBUixFQUFXQyxRQUFRLENBQW5CO0FBRlEsT0FBZjtBQUlEO0FBQ0QsUUFBSU4sRUFBRU8sSUFBRixLQUFXLFdBQVgsSUFBMEJQLGFBQWFRLFdBQTNDLEVBQXdEO0FBQ3REL0IsY0FBUXlCLE1BQVIsQ0FBZTtBQUNiQyxpQkFBUyxnREFBZ0RILEVBQUVHLE9BRDlDO0FBRWJDLGFBQUssRUFBRUMsTUFBTSxDQUFSLEVBQVdDLFFBQVEsQ0FBbkI7QUFGUSxPQUFmO0FBSUQ7O0FBRUQsV0FBTyxJQUFQO0FBQ0Q7QUFDRjs7QUFFRCxTQUFTRyxtQkFBVCxDQUE2QkMsV0FBN0IsRUFBMEM7QUFDeEMsU0FBUSxJQUFHQSxXQUFZLG9EQUFoQixHQUNKLGlCQUFnQkEsV0FBWSxhQUQvQjtBQUVEOztBQUVELFNBQVNDLGtCQUFULENBQTRCRCxXQUE1QixFQUF5QztBQUN2QyxTQUFRLElBQUdBLFdBQVksd0VBQXZCO0FBQ0Q7O0FBRUQsU0FBU0Usa0JBQVQsQ0FBNEJGLFdBQTVCLEVBQXlDO0FBQ3ZDLFNBQVEsSUFBR0EsV0FBWSxvREFBaEIsR0FDSiwyQkFESDtBQUVEOztBQUVELFNBQVNHLGVBQVQsQ0FBeUJwQyxPQUF6QixFQUFrQ3FDLElBQWxDLEVBQXdDQyxXQUF4QyxFQUFxREMsSUFBckQsRUFBMkRULElBQTNELEVBQWlFO0FBQy9EO0FBQ0EsTUFBSVMsS0FBS0MsVUFBTCxLQUFvQixNQUF4QixFQUFnQztBQUM5QjtBQUNEOztBQUVELE1BQUksMEJBQVdWLElBQVgsRUFBaUI5QixPQUFqQixNQUE4QixVQUFsQyxFQUE4QztBQUM1QztBQUNEOztBQUVELFFBQU15QyxXQUFXLHVCQUFRWCxJQUFSLEVBQWM5QixPQUFkLENBQWpCO0FBQ0EsTUFBSSxDQUFDeUMsUUFBTCxFQUFlO0FBQUU7QUFBUTs7QUFFekIsUUFBTUMsWUFBWVosS0FBS2EsS0FBTCxDQUFXLEdBQVgsQ0FBbEI7QUFDQSxRQUFNVixjQUFjUyxVQUFVLENBQVYsRUFBYSxDQUFiLE1BQW9CLEdBQXBCLEdBQ2hCQSxVQUFVRSxLQUFWLENBQWdCLENBQWhCLEVBQW1CLENBQW5CLEVBQXNCOUIsSUFBdEIsQ0FBMkIsR0FBM0IsQ0FEZ0IsR0FFaEI0QixVQUFVLENBQVYsQ0FGSjtBQUdBLFFBQU1HLFdBQVdSLEtBQUs1QyxZQUFMLENBQWtCd0MsV0FBbEIsTUFBbUNhLFNBQXBEO0FBQ0EsUUFBTUMsY0FBY1YsS0FBSzNDLGVBQUwsQ0FBcUJ1QyxXQUFyQixNQUFzQ2EsU0FBMUQ7QUFDQSxRQUFNRSxjQUFjWCxLQUFLMUMsb0JBQUwsQ0FBMEJzQyxXQUExQixNQUEyQ2EsU0FBL0Q7QUFDQSxRQUFNRyxlQUFlWixLQUFLekMsZ0JBQUwsQ0FBc0JxQyxXQUF0QixNQUF1Q2EsU0FBNUQ7QUFDQSxRQUFNSSxrQkFBa0JiLEtBQUt4QyxtQkFBTCxDQUF5QnNELE9BQXpCLENBQWlDbEIsV0FBakMsTUFBa0QsQ0FBQyxDQUEzRTs7QUFFQSxNQUFJWSxZQUNEUCxZQUFZYyxZQUFaLElBQTRCTCxXQUQzQixJQUVEVCxZQUFZZSxhQUFaLElBQTZCSixZQUY1QixJQUdEWCxZQUFZZ0IsWUFBWixJQUE0Qk4sV0FIM0IsSUFJRFYsWUFBWWlCLGdCQUFaLElBQWdDTCxlQUpuQyxFQUtFO0FBQ0E7QUFDRDs7QUFFRCxNQUFJSCxlQUFlLENBQUNULFlBQVljLFlBQWhDLEVBQThDO0FBQzVDcEQsWUFBUXlCLE1BQVIsQ0FBZWMsSUFBZixFQUFxQkwsbUJBQW1CRCxXQUFuQixDQUFyQjtBQUNBO0FBQ0Q7O0FBRUQsTUFBSWUsZUFBZSxDQUFDVixZQUFZZ0IsWUFBaEMsRUFBOEM7QUFDNUN0RCxZQUFReUIsTUFBUixDQUFlYyxJQUFmLEVBQXFCSixtQkFBbUJGLFdBQW5CLENBQXJCO0FBQ0E7QUFDRDs7QUFFRGpDLFVBQVF5QixNQUFSLENBQWVjLElBQWYsRUFBcUJQLG9CQUFvQkMsV0FBcEIsQ0FBckI7QUFDRDs7QUFFRCxTQUFTdUIsVUFBVCxDQUFvQkMsTUFBcEIsRUFBNEJDLFFBQTVCLEVBQXNDO0FBQ3BDO0FBQ0EsTUFBSSxPQUFPRCxNQUFQLEtBQWtCLFNBQWxCLElBQStCLE9BQU9BLE1BQVAsS0FBa0IsV0FBckQsRUFBa0U7QUFDaEUsV0FBT0EsTUFBUDtBQUNEO0FBQ0Q7QUFDQSxTQUFPQSxPQUFPbkMsSUFBUCxDQUFZcUMsS0FDakIseUJBQVVELFFBQVYsRUFBb0JDLENBQXBCLEtBQ0EseUJBQVVELFFBQVYsRUFBb0J0RCxlQUFLVSxJQUFMLENBQVU4QyxRQUFRekMsR0FBUixFQUFWLEVBQXlCd0MsQ0FBekIsQ0FBcEIsQ0FGSyxDQUFQO0FBSUQ7O0FBRURFLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFNBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLDRCQUFSO0FBREQsS0FGRjs7QUFNSkMsWUFBUSxDQUNOO0FBQ0UsY0FBUSxRQURWO0FBRUUsb0JBQWM7QUFDWiwyQkFBbUIsRUFBRSxRQUFRLENBQUMsU0FBRCxFQUFZLE9BQVosQ0FBVixFQURQO0FBRVosZ0NBQXdCLEVBQUUsUUFBUSxDQUFDLFNBQUQsRUFBWSxPQUFaLENBQVYsRUFGWjtBQUdaLDRCQUFvQixFQUFFLFFBQVEsQ0FBQyxTQUFELEVBQVksT0FBWixDQUFWLEVBSFI7QUFJWiwrQkFBdUIsRUFBRSxRQUFRLENBQUMsU0FBRCxFQUFZLE9BQVosQ0FBVixFQUpYO0FBS1osc0JBQWMsRUFBRSxRQUFRLENBQUMsUUFBRCxFQUFXLE9BQVgsQ0FBVjtBQUxGLE9BRmhCO0FBU0UsOEJBQXdCO0FBVDFCLEtBRE07QUFOSixHQURTOztBQXNCZkMsVUFBUSxVQUFVcEUsT0FBVixFQUFtQjtBQUN6QixVQUFNcUUsVUFBVXJFLFFBQVFxRSxPQUFSLENBQWdCLENBQWhCLEtBQXNCLEVBQXRDO0FBQ0EsVUFBTVgsV0FBVzFELFFBQVFvQixXQUFSLEVBQWpCO0FBQ0EsVUFBTWlCLE9BQU90QyxnQkFBZ0JDLE9BQWhCLEVBQXlCcUUsUUFBUXBFLFVBQWpDLEtBQWdEVixpQkFBaUIsRUFBakIsQ0FBN0Q7O0FBRUEsVUFBTStDLGNBQWM7QUFDbEJjLG9CQUFjSSxXQUFXYSxRQUFRM0UsZUFBbkIsRUFBb0NnRSxRQUFwQyxNQUFrRCxLQUQ5QztBQUVsQkosb0JBQWNFLFdBQVdhLFFBQVExRSxvQkFBbkIsRUFBeUMrRCxRQUF6QyxNQUF1RCxLQUZuRDtBQUdsQkwscUJBQWVHLFdBQVdhLFFBQVF6RSxnQkFBbkIsRUFBcUM4RCxRQUFyQyxNQUFtRCxLQUhoRDtBQUlsQkgsd0JBQWtCQyxXQUFXYSxRQUFReEUsbUJBQW5CLEVBQXdDNkQsUUFBeEMsTUFBc0Q7O0FBRzFFO0FBUG9CLEtBQXBCLENBUUEsT0FBTztBQUNMWSx5QkFBbUIsVUFBVS9CLElBQVYsRUFBZ0I7QUFDakMsWUFBSUEsS0FBS2dDLE1BQVQsRUFBaUI7QUFDZm5DLDBCQUFnQnBDLE9BQWhCLEVBQXlCcUMsSUFBekIsRUFBK0JDLFdBQS9CLEVBQTRDQyxJQUE1QyxFQUFrREEsS0FBS2dDLE1BQUwsQ0FBWUMsS0FBOUQ7QUFDRDtBQUNGLE9BTEk7QUFNTEMsOEJBQXdCLFVBQVVsQyxJQUFWLEVBQWdCO0FBQ3RDLFlBQUlBLEtBQUtnQyxNQUFULEVBQWlCO0FBQ2ZuQywwQkFBZ0JwQyxPQUFoQixFQUF5QnFDLElBQXpCLEVBQStCQyxXQUEvQixFQUE0Q0MsSUFBNUMsRUFBa0RBLEtBQUtnQyxNQUFMLENBQVlDLEtBQTlEO0FBQ0Q7QUFDRixPQVZJO0FBV0xFLDRCQUFzQixVQUFVbkMsSUFBVixFQUFnQjtBQUNwQyxZQUFJQSxLQUFLZ0MsTUFBVCxFQUFpQjtBQUNmbkMsMEJBQWdCcEMsT0FBaEIsRUFBeUJxQyxJQUF6QixFQUErQkMsV0FBL0IsRUFBNENDLElBQTVDLEVBQWtEQSxLQUFLZ0MsTUFBTCxDQUFZQyxLQUE5RDtBQUNEO0FBQ0YsT0FmSTtBQWdCTEcsc0JBQWdCLFNBQVNDLGNBQVQsQ0FBd0JyQyxJQUF4QixFQUE4QjtBQUM1QyxZQUFJLDZCQUFnQkEsSUFBaEIsQ0FBSixFQUEyQjtBQUN6QkgsMEJBQWdCcEMsT0FBaEIsRUFBeUJxQyxJQUF6QixFQUErQkMsV0FBL0IsRUFBNENDLElBQTVDLEVBQWtEQSxLQUFLc0MsU0FBTCxDQUFlLENBQWYsRUFBa0JMLEtBQXBFO0FBQ0Q7QUFDRjtBQXBCSSxLQUFQO0FBc0JEO0FBekRjLENBQWpCIiwiZmlsZSI6Im5vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCBmcyBmcm9tICdmcydcbmltcG9ydCByZWFkUGtnVXAgZnJvbSAncmVhZC1wa2ctdXAnXG5pbXBvcnQgbWluaW1hdGNoIGZyb20gJ21pbmltYXRjaCdcbmltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcbmltcG9ydCBpbXBvcnRUeXBlIGZyb20gJy4uL2NvcmUvaW1wb3J0VHlwZSdcbmltcG9ydCBpc1N0YXRpY1JlcXVpcmUgZnJvbSAnLi4vY29yZS9zdGF0aWNSZXF1aXJlJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxuZnVuY3Rpb24gaGFzS2V5cyhvYmogPSB7fSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPiAwXG59XG5cbmZ1bmN0aW9uIGFycmF5T3JLZXlzKGFycmF5T3JPYmplY3QpIHtcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkoYXJyYXlPck9iamVjdCkgPyBhcnJheU9yT2JqZWN0IDogT2JqZWN0LmtleXMoYXJyYXlPck9iamVjdClcbn1cblxuZnVuY3Rpb24gZXh0cmFjdERlcEZpZWxkcyhwa2cpIHtcbiAgcmV0dXJuIHtcbiAgICBkZXBlbmRlbmNpZXM6IHBrZy5kZXBlbmRlbmNpZXMgfHwge30sXG4gICAgZGV2RGVwZW5kZW5jaWVzOiBwa2cuZGV2RGVwZW5kZW5jaWVzIHx8IHt9LFxuICAgIG9wdGlvbmFsRGVwZW5kZW5jaWVzOiBwa2cub3B0aW9uYWxEZXBlbmRlbmNpZXMgfHwge30sXG4gICAgcGVlckRlcGVuZGVuY2llczogcGtnLnBlZXJEZXBlbmRlbmNpZXMgfHwge30sXG4gICAgLy8gQnVuZGxlZERlcHMgc2hvdWxkIGJlIGluIHRoZSBmb3JtIG9mIGFuIGFycmF5LCBidXQgb2JqZWN0IG5vdGF0aW9uIGlzIGFsc28gc3VwcG9ydGVkIGJ5XG4gICAgLy8gYG5wbWAsIHNvIHdlIGNvbnZlcnQgaXQgdG8gYW4gYXJyYXkgaWYgaXQgaXMgYW4gb2JqZWN0XG4gICAgYnVuZGxlZERlcGVuZGVuY2llczogYXJyYXlPcktleXMocGtnLmJ1bmRsZURlcGVuZGVuY2llcyB8fCBwa2cuYnVuZGxlZERlcGVuZGVuY2llcyB8fCBbXSksXG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0RGVwZW5kZW5jaWVzKGNvbnRleHQsIHBhY2thZ2VEaXIpIHtcbiAgbGV0IHBhdGhzID0gW11cbiAgdHJ5IHtcbiAgICBjb25zdCBwYWNrYWdlQ29udGVudCA9IHtcbiAgICAgIGRlcGVuZGVuY2llczoge30sXG4gICAgICBkZXZEZXBlbmRlbmNpZXM6IHt9LFxuICAgICAgb3B0aW9uYWxEZXBlbmRlbmNpZXM6IHt9LFxuICAgICAgcGVlckRlcGVuZGVuY2llczoge30sXG4gICAgICBidW5kbGVkRGVwZW5kZW5jaWVzOiBbXSxcbiAgICB9XG5cbiAgICBpZiAocGFja2FnZURpciAmJiBwYWNrYWdlRGlyLmxlbmd0aCA+IDApIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheShwYWNrYWdlRGlyKSkge1xuICAgICAgICBwYXRocyA9IFtwYXRoLnJlc29sdmUocGFja2FnZURpcildXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwYXRocyA9IHBhY2thZ2VEaXIubWFwKGRpciA9PiBwYXRoLnJlc29sdmUoZGlyKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocGF0aHMubGVuZ3RoID4gMCkge1xuICAgICAgLy8gdXNlIHJ1bGUgY29uZmlnIHRvIGZpbmQgcGFja2FnZS5qc29uXG4gICAgICBwYXRocy5mb3JFYWNoKGRpciA9PiB7XG4gICAgICAgIGNvbnN0IF9wYWNrYWdlQ29udGVudCA9IGV4dHJhY3REZXBGaWVsZHMoXG4gICAgICAgICAgSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKGRpciwgJ3BhY2thZ2UuanNvbicpLCAndXRmOCcpKVxuICAgICAgICApXG4gICAgICAgIE9iamVjdC5rZXlzKHBhY2thZ2VDb250ZW50KS5mb3JFYWNoKGRlcHNLZXkgPT5cbiAgICAgICAgICBPYmplY3QuYXNzaWduKHBhY2thZ2VDb250ZW50W2RlcHNLZXldLCBfcGFja2FnZUNvbnRlbnRbZGVwc0tleV0pXG4gICAgICAgIClcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHVzZSBjbG9zZXN0IHBhY2thZ2UuanNvblxuICAgICAgT2JqZWN0LmFzc2lnbihcbiAgICAgICAgcGFja2FnZUNvbnRlbnQsXG4gICAgICAgIGV4dHJhY3REZXBGaWVsZHMoXG4gICAgICAgICAgcmVhZFBrZ1VwLnN5bmMoe2N3ZDogY29udGV4dC5nZXRGaWxlbmFtZSgpLCBub3JtYWxpemU6IGZhbHNlfSkucGtnXG4gICAgICAgIClcbiAgICAgIClcbiAgICB9XG5cbiAgICBpZiAoIVtcbiAgICAgIHBhY2thZ2VDb250ZW50LmRlcGVuZGVuY2llcyxcbiAgICAgIHBhY2thZ2VDb250ZW50LmRldkRlcGVuZGVuY2llcyxcbiAgICAgIHBhY2thZ2VDb250ZW50Lm9wdGlvbmFsRGVwZW5kZW5jaWVzLFxuICAgICAgcGFja2FnZUNvbnRlbnQucGVlckRlcGVuZGVuY2llcyxcbiAgICAgIHBhY2thZ2VDb250ZW50LmJ1bmRsZWREZXBlbmRlbmNpZXMsXG4gICAgXS5zb21lKGhhc0tleXMpKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIHJldHVybiBwYWNrYWdlQ29udGVudFxuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKHBhdGhzLmxlbmd0aCA+IDAgJiYgZS5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICBtZXNzYWdlOiAnVGhlIHBhY2thZ2UuanNvbiBmaWxlIGNvdWxkIG5vdCBiZSBmb3VuZC4nLFxuICAgICAgICBsb2M6IHsgbGluZTogMCwgY29sdW1uOiAwIH0sXG4gICAgICB9KVxuICAgIH1cbiAgICBpZiAoZS5uYW1lID09PSAnSlNPTkVycm9yJyB8fCBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IpIHtcbiAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgbWVzc2FnZTogJ1RoZSBwYWNrYWdlLmpzb24gZmlsZSBjb3VsZCBub3QgYmUgcGFyc2VkOiAnICsgZS5tZXNzYWdlLFxuICAgICAgICBsb2M6IHsgbGluZTogMCwgY29sdW1uOiAwIH0sXG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuZnVuY3Rpb24gbWlzc2luZ0Vycm9yTWVzc2FnZShwYWNrYWdlTmFtZSkge1xuICByZXR1cm4gYCcke3BhY2thZ2VOYW1lfScgc2hvdWxkIGJlIGxpc3RlZCBpbiB0aGUgcHJvamVjdCdzIGRlcGVuZGVuY2llcy4gYCArXG4gICAgYFJ1biAnbnBtIGkgLVMgJHtwYWNrYWdlTmFtZX0nIHRvIGFkZCBpdGBcbn1cblxuZnVuY3Rpb24gZGV2RGVwRXJyb3JNZXNzYWdlKHBhY2thZ2VOYW1lKSB7XG4gIHJldHVybiBgJyR7cGFja2FnZU5hbWV9JyBzaG91bGQgYmUgbGlzdGVkIGluIHRoZSBwcm9qZWN0J3MgZGVwZW5kZW5jaWVzLCBub3QgZGV2RGVwZW5kZW5jaWVzLmBcbn1cblxuZnVuY3Rpb24gb3B0RGVwRXJyb3JNZXNzYWdlKHBhY2thZ2VOYW1lKSB7XG4gIHJldHVybiBgJyR7cGFja2FnZU5hbWV9JyBzaG91bGQgYmUgbGlzdGVkIGluIHRoZSBwcm9qZWN0J3MgZGVwZW5kZW5jaWVzLCBgICtcbiAgICBgbm90IG9wdGlvbmFsRGVwZW5kZW5jaWVzLmBcbn1cblxuZnVuY3Rpb24gcmVwb3J0SWZNaXNzaW5nKGNvbnRleHQsIGRlcHMsIGRlcHNPcHRpb25zLCBub2RlLCBuYW1lKSB7XG4gIC8vIERvIG5vdCByZXBvcnQgd2hlbiBpbXBvcnRpbmcgdHlwZXNcbiAgaWYgKG5vZGUuaW1wb3J0S2luZCA9PT0gJ3R5cGUnKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoaW1wb3J0VHlwZShuYW1lLCBjb250ZXh0KSAhPT0gJ2V4dGVybmFsJykge1xuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlKG5hbWUsIGNvbnRleHQpXG4gIGlmICghcmVzb2x2ZWQpIHsgcmV0dXJuIH1cblxuICBjb25zdCBzcGxpdE5hbWUgPSBuYW1lLnNwbGl0KCcvJylcbiAgY29uc3QgcGFja2FnZU5hbWUgPSBzcGxpdE5hbWVbMF1bMF0gPT09ICdAJ1xuICAgID8gc3BsaXROYW1lLnNsaWNlKDAsIDIpLmpvaW4oJy8nKVxuICAgIDogc3BsaXROYW1lWzBdXG4gIGNvbnN0IGlzSW5EZXBzID0gZGVwcy5kZXBlbmRlbmNpZXNbcGFja2FnZU5hbWVdICE9PSB1bmRlZmluZWRcbiAgY29uc3QgaXNJbkRldkRlcHMgPSBkZXBzLmRldkRlcGVuZGVuY2llc1twYWNrYWdlTmFtZV0gIT09IHVuZGVmaW5lZFxuICBjb25zdCBpc0luT3B0RGVwcyA9IGRlcHMub3B0aW9uYWxEZXBlbmRlbmNpZXNbcGFja2FnZU5hbWVdICE9PSB1bmRlZmluZWRcbiAgY29uc3QgaXNJblBlZXJEZXBzID0gZGVwcy5wZWVyRGVwZW5kZW5jaWVzW3BhY2thZ2VOYW1lXSAhPT0gdW5kZWZpbmVkXG4gIGNvbnN0IGlzSW5CdW5kbGVkRGVwcyA9IGRlcHMuYnVuZGxlZERlcGVuZGVuY2llcy5pbmRleE9mKHBhY2thZ2VOYW1lKSAhPT0gLTFcblxuICBpZiAoaXNJbkRlcHMgfHxcbiAgICAoZGVwc09wdGlvbnMuYWxsb3dEZXZEZXBzICYmIGlzSW5EZXZEZXBzKSB8fFxuICAgIChkZXBzT3B0aW9ucy5hbGxvd1BlZXJEZXBzICYmIGlzSW5QZWVyRGVwcykgfHxcbiAgICAoZGVwc09wdGlvbnMuYWxsb3dPcHREZXBzICYmIGlzSW5PcHREZXBzKSB8fFxuICAgIChkZXBzT3B0aW9ucy5hbGxvd0J1bmRsZWREZXBzICYmIGlzSW5CdW5kbGVkRGVwcylcbiAgKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoaXNJbkRldkRlcHMgJiYgIWRlcHNPcHRpb25zLmFsbG93RGV2RGVwcykge1xuICAgIGNvbnRleHQucmVwb3J0KG5vZGUsIGRldkRlcEVycm9yTWVzc2FnZShwYWNrYWdlTmFtZSkpXG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoaXNJbk9wdERlcHMgJiYgIWRlcHNPcHRpb25zLmFsbG93T3B0RGVwcykge1xuICAgIGNvbnRleHQucmVwb3J0KG5vZGUsIG9wdERlcEVycm9yTWVzc2FnZShwYWNrYWdlTmFtZSkpXG4gICAgcmV0dXJuXG4gIH1cblxuICBjb250ZXh0LnJlcG9ydChub2RlLCBtaXNzaW5nRXJyb3JNZXNzYWdlKHBhY2thZ2VOYW1lKSlcbn1cblxuZnVuY3Rpb24gdGVzdENvbmZpZyhjb25maWcsIGZpbGVuYW1lKSB7XG4gIC8vIFNpbXBsZXN0IGNvbmZpZ3VyYXRpb24gZmlyc3QsIGVpdGhlciBhIGJvb2xlYW4gb3Igbm90aGluZy5cbiAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdib29sZWFuJyB8fCB0eXBlb2YgY29uZmlnID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBjb25maWdcbiAgfVxuICAvLyBBcnJheSBvZiBnbG9icy5cbiAgcmV0dXJuIGNvbmZpZy5zb21lKGMgPT4gKFxuICAgIG1pbmltYXRjaChmaWxlbmFtZSwgYykgfHxcbiAgICBtaW5pbWF0Y2goZmlsZW5hbWUsIHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBjKSlcbiAgKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcycpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgJ3R5cGUnOiAnb2JqZWN0JyxcbiAgICAgICAgJ3Byb3BlcnRpZXMnOiB7XG4gICAgICAgICAgJ2RldkRlcGVuZGVuY2llcyc6IHsgJ3R5cGUnOiBbJ2Jvb2xlYW4nLCAnYXJyYXknXSB9LFxuICAgICAgICAgICdvcHRpb25hbERlcGVuZGVuY2llcyc6IHsgJ3R5cGUnOiBbJ2Jvb2xlYW4nLCAnYXJyYXknXSB9LFxuICAgICAgICAgICdwZWVyRGVwZW5kZW5jaWVzJzogeyAndHlwZSc6IFsnYm9vbGVhbicsICdhcnJheSddIH0sXG4gICAgICAgICAgJ2J1bmRsZWREZXBlbmRlbmNpZXMnOiB7ICd0eXBlJzogWydib29sZWFuJywgJ2FycmF5J10gfSxcbiAgICAgICAgICAncGFja2FnZURpcic6IHsgJ3R5cGUnOiBbJ3N0cmluZycsICdhcnJheSddIH0sXG4gICAgICAgIH0sXG4gICAgICAgICdhZGRpdGlvbmFsUHJvcGVydGllcyc6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG4gICAgY29uc3QgZmlsZW5hbWUgPSBjb250ZXh0LmdldEZpbGVuYW1lKClcbiAgICBjb25zdCBkZXBzID0gZ2V0RGVwZW5kZW5jaWVzKGNvbnRleHQsIG9wdGlvbnMucGFja2FnZURpcikgfHwgZXh0cmFjdERlcEZpZWxkcyh7fSlcblxuICAgIGNvbnN0IGRlcHNPcHRpb25zID0ge1xuICAgICAgYWxsb3dEZXZEZXBzOiB0ZXN0Q29uZmlnKG9wdGlvbnMuZGV2RGVwZW5kZW5jaWVzLCBmaWxlbmFtZSkgIT09IGZhbHNlLFxuICAgICAgYWxsb3dPcHREZXBzOiB0ZXN0Q29uZmlnKG9wdGlvbnMub3B0aW9uYWxEZXBlbmRlbmNpZXMsIGZpbGVuYW1lKSAhPT0gZmFsc2UsXG4gICAgICBhbGxvd1BlZXJEZXBzOiB0ZXN0Q29uZmlnKG9wdGlvbnMucGVlckRlcGVuZGVuY2llcywgZmlsZW5hbWUpICE9PSBmYWxzZSxcbiAgICAgIGFsbG93QnVuZGxlZERlcHM6IHRlc3RDb25maWcob3B0aW9ucy5idW5kbGVkRGVwZW5kZW5jaWVzLCBmaWxlbmFtZSkgIT09IGZhbHNlLFxuICAgIH1cblxuICAgIC8vIHRvZG86IHVzZSBtb2R1bGUgdmlzaXRvciBmcm9tIG1vZHVsZS11dGlscyBjb3JlXG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlY2xhcmF0aW9uOiBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICBpZiAobm9kZS5zb3VyY2UpIHtcbiAgICAgICAgICByZXBvcnRJZk1pc3NpbmcoY29udGV4dCwgZGVwcywgZGVwc09wdGlvbnMsIG5vZGUsIG5vZGUuc291cmNlLnZhbHVlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgRXhwb3J0TmFtZWREZWNsYXJhdGlvbjogZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgICAgaWYgKG5vZGUuc291cmNlKSB7XG4gICAgICAgICAgcmVwb3J0SWZNaXNzaW5nKGNvbnRleHQsIGRlcHMsIGRlcHNPcHRpb25zLCBub2RlLCBub2RlLnNvdXJjZS52YWx1ZSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIEV4cG9ydEFsbERlY2xhcmF0aW9uOiBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICBpZiAobm9kZS5zb3VyY2UpIHtcbiAgICAgICAgICByZXBvcnRJZk1pc3NpbmcoY29udGV4dCwgZGVwcywgZGVwc09wdGlvbnMsIG5vZGUsIG5vZGUuc291cmNlLnZhbHVlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQ2FsbEV4cHJlc3Npb246IGZ1bmN0aW9uIGhhbmRsZVJlcXVpcmVzKG5vZGUpIHtcbiAgICAgICAgaWYgKGlzU3RhdGljUmVxdWlyZShub2RlKSkge1xuICAgICAgICAgIHJlcG9ydElmTWlzc2luZyhjb250ZXh0LCBkZXBzLCBkZXBzT3B0aW9ucywgbm9kZSwgbm9kZS5hcmd1bWVudHNbMF0udmFsdWUpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + + return (0, _moduleVisitor2.default)(node => { + reportIfMissing(context, deps, depsOptions, node, node.value); + }, { commonjs: true }); + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcy5qcyJdLCJuYW1lcyI6WyJoYXNLZXlzIiwib2JqIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImFycmF5T3JLZXlzIiwiYXJyYXlPck9iamVjdCIsIkFycmF5IiwiaXNBcnJheSIsImV4dHJhY3REZXBGaWVsZHMiLCJwa2ciLCJkZXBlbmRlbmNpZXMiLCJkZXZEZXBlbmRlbmNpZXMiLCJvcHRpb25hbERlcGVuZGVuY2llcyIsInBlZXJEZXBlbmRlbmNpZXMiLCJidW5kbGVkRGVwZW5kZW5jaWVzIiwiYnVuZGxlRGVwZW5kZW5jaWVzIiwiZ2V0RGVwZW5kZW5jaWVzIiwiY29udGV4dCIsInBhY2thZ2VEaXIiLCJwYXRocyIsInBhY2thZ2VDb250ZW50IiwicGF0aCIsInJlc29sdmUiLCJtYXAiLCJkaXIiLCJmb3JFYWNoIiwiX3BhY2thZ2VDb250ZW50IiwiSlNPTiIsInBhcnNlIiwiZnMiLCJyZWFkRmlsZVN5bmMiLCJqb2luIiwiZGVwc0tleSIsImFzc2lnbiIsInJlYWRQa2dVcCIsInN5bmMiLCJjd2QiLCJnZXRGaWxlbmFtZSIsIm5vcm1hbGl6ZSIsInNvbWUiLCJlIiwiY29kZSIsInJlcG9ydCIsIm1lc3NhZ2UiLCJsb2MiLCJsaW5lIiwiY29sdW1uIiwibmFtZSIsIlN5bnRheEVycm9yIiwibWlzc2luZ0Vycm9yTWVzc2FnZSIsInBhY2thZ2VOYW1lIiwiZGV2RGVwRXJyb3JNZXNzYWdlIiwib3B0RGVwRXJyb3JNZXNzYWdlIiwicmVwb3J0SWZNaXNzaW5nIiwiZGVwcyIsImRlcHNPcHRpb25zIiwibm9kZSIsImltcG9ydEtpbmQiLCJwYXJlbnQiLCJyZXNvbHZlZCIsInNwbGl0TmFtZSIsInNwbGl0Iiwic2xpY2UiLCJpc0luRGVwcyIsInVuZGVmaW5lZCIsImlzSW5EZXZEZXBzIiwiaXNJbk9wdERlcHMiLCJpc0luUGVlckRlcHMiLCJpc0luQnVuZGxlZERlcHMiLCJpbmRleE9mIiwiYWxsb3dEZXZEZXBzIiwiYWxsb3dQZWVyRGVwcyIsImFsbG93T3B0RGVwcyIsImFsbG93QnVuZGxlZERlcHMiLCJ0ZXN0Q29uZmlnIiwiY29uZmlnIiwiZmlsZW5hbWUiLCJjIiwicHJvY2VzcyIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJvcHRpb25zIiwidmFsdWUiLCJjb21tb25qcyJdLCJtYXBwaW5ncyI6ImFBQUEsNEI7QUFDQSx3QjtBQUNBLHdDO0FBQ0Esc0M7QUFDQSxzRDtBQUNBLGtFO0FBQ0EsZ0Q7QUFDQSxxQzs7QUFFQSxTQUFTQSxPQUFULEdBQTJCLEtBQVZDLEdBQVUsdUVBQUosRUFBSTtBQUN6QixTQUFPQyxPQUFPQyxJQUFQLENBQVlGLEdBQVosRUFBaUJHLE1BQWpCLEdBQTBCLENBQWpDO0FBQ0Q7O0FBRUQsU0FBU0MsV0FBVCxDQUFxQkMsYUFBckIsRUFBb0M7QUFDbEMsU0FBT0MsTUFBTUMsT0FBTixDQUFjRixhQUFkLElBQStCQSxhQUEvQixHQUErQ0osT0FBT0MsSUFBUCxDQUFZRyxhQUFaLENBQXREO0FBQ0Q7O0FBRUQsU0FBU0csZ0JBQVQsQ0FBMEJDLEdBQTFCLEVBQStCO0FBQzdCLFNBQU87QUFDTEMsa0JBQWNELElBQUlDLFlBQUosSUFBb0IsRUFEN0I7QUFFTEMscUJBQWlCRixJQUFJRSxlQUFKLElBQXVCLEVBRm5DO0FBR0xDLDBCQUFzQkgsSUFBSUcsb0JBQUosSUFBNEIsRUFIN0M7QUFJTEMsc0JBQWtCSixJQUFJSSxnQkFBSixJQUF3QixFQUpyQztBQUtMO0FBQ0E7QUFDQUMseUJBQXFCVixZQUFZSyxJQUFJTSxrQkFBSixJQUEwQk4sSUFBSUssbUJBQTlCLElBQXFELEVBQWpFLENBUGhCLEVBQVA7O0FBU0Q7O0FBRUQsU0FBU0UsZUFBVCxDQUF5QkMsT0FBekIsRUFBa0NDLFVBQWxDLEVBQThDO0FBQzVDLE1BQUlDLFFBQVEsRUFBWjtBQUNBLE1BQUk7QUFDRixVQUFN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USxDQUFDLFNBQUQsRUFBWSxPQUFaLENBQVYsRUFKWDtBQUtaLHNCQUFjLEVBQUUsUUFBUSxDQUFDLFFBQUQsRUFBVyxPQUFYLENBQVYsRUFMRixFQUZoQjs7QUFTRSw4QkFBd0IsS0FUMUIsRUFETSxDQU5KLEVBRFM7Ozs7O0FBc0JmQyxVQUFRLFVBQVVyRSxPQUFWLEVBQW1CO0FBQ3pCLFVBQU1zRSxVQUFVdEUsUUFBUXNFLE9BQVIsQ0FBZ0IsQ0FBaEIsS0FBc0IsRUFBdEM7QUFDQSxVQUFNWCxXQUFXM0QsUUFBUW9CLFdBQVIsRUFBakI7QUFDQSxVQUFNaUIsT0FBT3RDLGdCQUFnQkMsT0FBaEIsRUFBeUJzRSxRQUFRckUsVUFBakMsS0FBZ0RWLGlCQUFpQixFQUFqQixDQUE3RDs7QUFFQSxVQUFNK0MsY0FBYztBQUNsQmUsb0JBQWNJLFdBQVdhLFFBQVE1RSxlQUFuQixFQUFvQ2lFLFFBQXBDLE1BQWtELEtBRDlDO0FBRWxCSixvQkFBY0UsV0FBV2EsUUFBUTNFLG9CQUFuQixFQUF5Q2dFLFFBQXpDLE1BQXVELEtBRm5EO0FBR2xCTCxxQkFBZUcsV0FBV2EsUUFBUTFFLGdCQUFuQixFQUFxQytELFFBQXJDLE1BQW1ELEtBSGhEO0FBSWxCSCx3QkFBa0JDLFdBQVdhLFFBQVF6RSxtQkFBbkIsRUFBd0M4RCxRQUF4QyxNQUFzRCxLQUp0RCxFQUFwQjs7O0FBT0EsV0FBTyw2QkFBY3BCLFFBQVE7QUFDM0JILHNCQUFnQnBDLE9BQWhCLEVBQXlCcUMsSUFBekIsRUFBK0JDLFdBQS9CLEVBQTRDQyxJQUE1QyxFQUFrREEsS0FBS2dDLEtBQXZEO0FBQ0QsS0FGTSxFQUVKLEVBQUNDLFVBQVUsSUFBWCxFQUZJLENBQVA7QUFHRCxHQXJDYyxFQUFqQiIsImZpbGUiOiJuby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgZnMgZnJvbSAnZnMnXG5pbXBvcnQgcmVhZFBrZ1VwIGZyb20gJ3JlYWQtcGtnLXVwJ1xuaW1wb3J0IG1pbmltYXRjaCBmcm9tICdtaW5pbWF0Y2gnXG5pbXBvcnQgcmVzb2x2ZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3Jlc29sdmUnXG5pbXBvcnQgbW9kdWxlVmlzaXRvciBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL21vZHVsZVZpc2l0b3InXG5pbXBvcnQgaW1wb3J0VHlwZSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiBoYXNLZXlzKG9iaiA9IHt9KSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhvYmopLmxlbmd0aCA+IDBcbn1cblxuZnVuY3Rpb24gYXJyYXlPcktleXMoYXJyYXlPck9iamVjdCkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheShhcnJheU9yT2JqZWN0KSA/IGFycmF5T3JPYmplY3QgOiBPYmplY3Qua2V5cyhhcnJheU9yT2JqZWN0KVxufVxuXG5mdW5jdGlvbiBleHRyYWN0RGVwRmllbGRzKHBrZykge1xuICByZXR1cm4ge1xuICAgIGRlcGVuZGVuY2llczogcGtnLmRlcGVuZGVuY2llcyB8fCB7fSxcbiAgICBkZXZEZXBlbmRlbmNpZXM6IHBrZy5kZXZEZXBlbmRlbmNpZXMgfHwge30sXG4gICAgb3B0aW9uYWxEZXBlbmRlbmNpZXM6IHBrZy5vcHRpb25hbERlcGVuZGVuY2llcyB8fCB7fSxcbiAgICBwZWVyRGVwZW5kZW5jaWVzOiBwa2cucGVlckRlcGVuZGVuY2llcyB8fCB7fSxcbiAgICAvLyBCdW5kbGVkRGVwcyBzaG91bGQgYmUgaW4gdGhlIGZvcm0gb2YgYW4gYXJyYXksIGJ1dCBvYmplY3Qgbm90YXRpb24gaXMgYWxzbyBzdXBwb3J0ZWQgYnlcbiAgICAvLyBgbnBtYCwgc28gd2UgY29udmVydCBpdCB0byBhbiBhcnJheSBpZiBpdCBpcyBhbiBvYmplY3RcbiAgICBidW5kbGVkRGVwZW5kZW5jaWVzOiBhcnJheU9yS2V5cyhwa2cuYnVuZGxlRGVwZW5kZW5jaWVzIHx8IHBrZy5idW5kbGVkRGVwZW5kZW5jaWVzIHx8IFtdKSxcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZXBlbmRlbmNpZXMoY29udGV4dCwgcGFja2FnZURpcikge1xuICBsZXQgcGF0aHMgPSBbXVxuICB0cnkge1xuICAgIGNvbnN0IHBhY2thZ2VDb250ZW50ID0ge1xuICAgICAgZGVwZW5kZW5jaWVzOiB7fSxcbiAgICAgIGRldkRlcGVuZGVuY2llczoge30sXG4gICAgICBvcHRpb25hbERlcGVuZGVuY2llczoge30sXG4gICAgICBwZWVyRGVwZW5kZW5jaWVzOiB7fSxcbiAgICAgIGJ1bmRsZWREZXBlbmRlbmNpZXM6IFtdLFxuICAgIH1cblxuICAgIGlmIChwYWNrYWdlRGlyICYmIHBhY2thZ2VEaXIubGVuZ3RoID4gMCkge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhY2thZ2VEaXIpKSB7XG4gICAgICAgIHBhdGhzID0gW3BhdGgucmVzb2x2ZShwYWNrYWdlRGlyKV1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhdGhzID0gcGFja2FnZURpci5tYXAoZGlyID0+IHBhdGgucmVzb2x2ZShkaXIpKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXRocy5sZW5ndGggPiAwKSB7XG4gICAgICAvLyB1c2UgcnVsZSBjb25maWcgdG8gZmluZCBwYWNrYWdlLmpzb25cbiAgICAgIHBhdGhzLmZvckVhY2goZGlyID0+IHtcbiAgICAgICAgY29uc3QgX3BhY2thZ2VDb250ZW50ID0gZXh0cmFjdERlcEZpZWxkcyhcbiAgICAgICAgICBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oZGlyLCAncGFja2FnZS5qc29uJyksICd1dGY4JykpXG4gICAgICAgIClcbiAgICAgICAgT2JqZWN0LmtleXMocGFja2FnZUNvbnRlbnQpLmZvckVhY2goZGVwc0tleSA9PlxuICAgICAgICAgIE9iamVjdC5hc3NpZ24ocGFja2FnZUNvbnRlbnRbZGVwc0tleV0sIF9wYWNrYWdlQ29udGVudFtkZXBzS2V5XSlcbiAgICAgICAgKVxuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdXNlIGNsb3Nlc3QgcGFja2FnZS5qc29uXG4gICAgICBPYmplY3QuYXNzaWduKFxuICAgICAgICBwYWNrYWdlQ29udGVudCxcbiAgICAgICAgZXh0cmFjdERlcEZpZWxkcyhcbiAgICAgICAgICByZWFkUGtnVXAuc3luYyh7Y3dkOiBjb250ZXh0LmdldEZpbGVuYW1lKCksIG5vcm1hbGl6ZTogZmFsc2V9KS5wa2dcbiAgICAgICAgKVxuICAgICAgKVxuICAgIH1cblxuICAgIGlmICghW1xuICAgICAgcGFja2FnZUNvbnRlbnQuZGVwZW5kZW5jaWVzLFxuICAgICAgcGFja2FnZUNvbnRlbnQuZGV2RGVwZW5kZW5jaWVzLFxuICAgICAgcGFja2FnZUNvbnRlbnQub3B0aW9uYWxEZXBlbmRlbmNpZXMsXG4gICAgICBwYWNrYWdlQ29udGVudC5wZWVyRGVwZW5kZW5jaWVzLFxuICAgICAgcGFja2FnZUNvbnRlbnQuYnVuZGxlZERlcGVuZGVuY2llcyxcbiAgICBdLnNvbWUoaGFzS2V5cykpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgcmV0dXJuIHBhY2thZ2VDb250ZW50XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAocGF0aHMubGVuZ3RoID4gMCAmJiBlLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgIG1lc3NhZ2U6ICdUaGUgcGFja2FnZS5qc29uIGZpbGUgY291bGQgbm90IGJlIGZvdW5kLicsXG4gICAgICAgIGxvYzogeyBsaW5lOiAwLCBjb2x1bW46IDAgfSxcbiAgICAgIH0pXG4gICAgfVxuICAgIGlmIChlLm5hbWUgPT09ICdKU09ORXJyb3InIHx8IGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikge1xuICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICBtZXNzYWdlOiAnVGhlIHBhY2thZ2UuanNvbiBmaWxlIGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICcgKyBlLm1lc3NhZ2UsXG4gICAgICAgIGxvYzogeyBsaW5lOiAwLCBjb2x1bW46IDAgfSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGxcbiAgfVxufVxuXG5mdW5jdGlvbiBtaXNzaW5nRXJyb3JNZXNzYWdlKHBhY2thZ2VOYW1lKSB7XG4gIHJldHVybiBgJyR7cGFja2FnZU5hbWV9JyBzaG91bGQgYmUgbGlzdGVkIGluIHRoZSBwcm9qZWN0J3MgZGVwZW5kZW5jaWVzLiBgICtcbiAgICBgUnVuICducG0gaSAtUyAke3BhY2thZ2VOYW1lfScgdG8gYWRkIGl0YFxufVxuXG5mdW5jdGlvbiBkZXZEZXBFcnJvck1lc3NhZ2UocGFja2FnZU5hbWUpIHtcbiAgcmV0dXJuIGAnJHtwYWNrYWdlTmFtZX0nIHNob3VsZCBiZSBsaXN0ZWQgaW4gdGhlIHByb2plY3QncyBkZXBlbmRlbmNpZXMsIG5vdCBkZXZEZXBlbmRlbmNpZXMuYFxufVxuXG5mdW5jdGlvbiBvcHREZXBFcnJvck1lc3NhZ2UocGFja2FnZU5hbWUpIHtcbiAgcmV0dXJuIGAnJHtwYWNrYWdlTmFtZX0nIHNob3VsZCBiZSBsaXN0ZWQgaW4gdGhlIHByb2plY3QncyBkZXBlbmRlbmNpZXMsIGAgK1xuICAgIGBub3Qgb3B0aW9uYWxEZXBlbmRlbmNpZXMuYFxufVxuXG5mdW5jdGlvbiByZXBvcnRJZk1pc3NpbmcoY29udGV4dCwgZGVwcywgZGVwc09wdGlvbnMsIG5vZGUsIG5hbWUpIHtcbiAgLy8gRG8gbm90IHJlcG9ydCB3aGVuIGltcG9ydGluZyB0eXBlc1xuICBpZiAobm9kZS5pbXBvcnRLaW5kID09PSAndHlwZScgfHwgKG5vZGUucGFyZW50ICYmIG5vZGUucGFyZW50LmltcG9ydEtpbmQgPT09ICd0eXBlJykpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChpbXBvcnRUeXBlKG5hbWUsIGNvbnRleHQpICE9PSAnZXh0ZXJuYWwnKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCByZXNvbHZlZCA9IHJlc29sdmUobmFtZSwgY29udGV4dClcbiAgaWYgKCFyZXNvbHZlZCkgeyByZXR1cm4gfVxuXG4gIGNvbnN0IHNwbGl0TmFtZSA9IG5hbWUuc3BsaXQoJy8nKVxuICBjb25zdCBwYWNrYWdlTmFtZSA9IHNwbGl0TmFtZVswXVswXSA9PT0gJ0AnXG4gICAgPyBzcGxpdE5hbWUuc2xpY2UoMCwgMikuam9pbignLycpXG4gICAgOiBzcGxpdE5hbWVbMF1cbiAgY29uc3QgaXNJbkRlcHMgPSBkZXBzLmRlcGVuZGVuY2llc1twYWNrYWdlTmFtZV0gIT09IHVuZGVmaW5lZFxuICBjb25zdCBpc0luRGV2RGVwcyA9IGRlcHMuZGV2RGVwZW5kZW5jaWVzW3BhY2thZ2VOYW1lXSAhPT0gdW5kZWZpbmVkXG4gIGNvbnN0IGlzSW5PcHREZXBzID0gZGVwcy5vcHRpb25hbERlcGVuZGVuY2llc1twYWNrYWdlTmFtZV0gIT09IHVuZGVmaW5lZFxuICBjb25zdCBpc0luUGVlckRlcHMgPSBkZXBzLnBlZXJEZXBlbmRlbmNpZXNbcGFja2FnZU5hbWVdICE9PSB1bmRlZmluZWRcbiAgY29uc3QgaXNJbkJ1bmRsZWREZXBzID0gZGVwcy5idW5kbGVkRGVwZW5kZW5jaWVzLmluZGV4T2YocGFja2FnZU5hbWUpICE9PSAtMVxuXG4gIGlmIChpc0luRGVwcyB8fFxuICAgIChkZXBzT3B0aW9ucy5hbGxvd0RldkRlcHMgJiYgaXNJbkRldkRlcHMpIHx8XG4gICAgKGRlcHNPcHRpb25zLmFsbG93UGVlckRlcHMgJiYgaXNJblBlZXJEZXBzKSB8fFxuICAgIChkZXBzT3B0aW9ucy5hbGxvd09wdERlcHMgJiYgaXNJbk9wdERlcHMpIHx8XG4gICAgKGRlcHNPcHRpb25zLmFsbG93QnVuZGxlZERlcHMgJiYgaXNJbkJ1bmRsZWREZXBzKVxuICApIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChpc0luRGV2RGVwcyAmJiAhZGVwc09wdGlvbnMuYWxsb3dEZXZEZXBzKSB7XG4gICAgY29udGV4dC5yZXBvcnQobm9kZSwgZGV2RGVwRXJyb3JNZXNzYWdlKHBhY2thZ2VOYW1lKSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChpc0luT3B0RGVwcyAmJiAhZGVwc09wdGlvbnMuYWxsb3dPcHREZXBzKSB7XG4gICAgY29udGV4dC5yZXBvcnQobm9kZSwgb3B0RGVwRXJyb3JNZXNzYWdlKHBhY2thZ2VOYW1lKSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIGNvbnRleHQucmVwb3J0KG5vZGUsIG1pc3NpbmdFcnJvck1lc3NhZ2UocGFja2FnZU5hbWUpKVxufVxuXG5mdW5jdGlvbiB0ZXN0Q29uZmlnKGNvbmZpZywgZmlsZW5hbWUpIHtcbiAgLy8gU2ltcGxlc3QgY29uZmlndXJhdGlvbiBmaXJzdCwgZWl0aGVyIGEgYm9vbGVhbiBvciBub3RoaW5nLlxuICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ2Jvb2xlYW4nIHx8IHR5cGVvZiBjb25maWcgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuIGNvbmZpZ1xuICB9XG4gIC8vIEFycmF5IG9mIGdsb2JzLlxuICByZXR1cm4gY29uZmlnLnNvbWUoYyA9PiAoXG4gICAgbWluaW1hdGNoKGZpbGVuYW1lLCBjKSB8fFxuICAgIG1pbmltYXRjaChmaWxlbmFtZSwgcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIGMpKVxuICApKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzJyksXG4gICAgfSxcblxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICAndHlwZSc6ICdvYmplY3QnLFxuICAgICAgICAncHJvcGVydGllcyc6IHtcbiAgICAgICAgICAnZGV2RGVwZW5kZW5jaWVzJzogeyAndHlwZSc6IFsnYm9vbGVhbicsICdhcnJheSddIH0sXG4gICAgICAgICAgJ29wdGlvbmFsRGVwZW5kZW5jaWVzJzogeyAndHlwZSc6IFsnYm9vbGVhbicsICdhcnJheSddIH0sXG4gICAgICAgICAgJ3BlZXJEZXBlbmRlbmNpZXMnOiB7ICd0eXBlJzogWydib29sZWFuJywgJ2FycmF5J10gfSxcbiAgICAgICAgICAnYnVuZGxlZERlcGVuZGVuY2llcyc6IHsgJ3R5cGUnOiBbJ2Jvb2xlYW4nLCAnYXJyYXknXSB9LFxuICAgICAgICAgICdwYWNrYWdlRGlyJzogeyAndHlwZSc6IFsnc3RyaW5nJywgJ2FycmF5J10gfSxcbiAgICAgICAgfSxcbiAgICAgICAgJ2FkZGl0aW9uYWxQcm9wZXJ0aWVzJzogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cbiAgICBjb25zdCBmaWxlbmFtZSA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKVxuICAgIGNvbnN0IGRlcHMgPSBnZXREZXBlbmRlbmNpZXMoY29udGV4dCwgb3B0aW9ucy5wYWNrYWdlRGlyKSB8fCBleHRyYWN0RGVwRmllbGRzKHt9KVxuXG4gICAgY29uc3QgZGVwc09wdGlvbnMgPSB7XG4gICAgICBhbGxvd0RldkRlcHM6IHRlc3RDb25maWcob3B0aW9ucy5kZXZEZXBlbmRlbmNpZXMsIGZpbGVuYW1lKSAhPT0gZmFsc2UsXG4gICAgICBhbGxvd09wdERlcHM6IHRlc3RDb25maWcob3B0aW9ucy5vcHRpb25hbERlcGVuZGVuY2llcywgZmlsZW5hbWUpICE9PSBmYWxzZSxcbiAgICAgIGFsbG93UGVlckRlcHM6IHRlc3RDb25maWcob3B0aW9ucy5wZWVyRGVwZW5kZW5jaWVzLCBmaWxlbmFtZSkgIT09IGZhbHNlLFxuICAgICAgYWxsb3dCdW5kbGVkRGVwczogdGVzdENvbmZpZyhvcHRpb25zLmJ1bmRsZWREZXBlbmRlbmNpZXMsIGZpbGVuYW1lKSAhPT0gZmFsc2UsXG4gICAgfVxuXG4gICAgcmV0dXJuIG1vZHVsZVZpc2l0b3Iobm9kZSA9PiB7XG4gICAgICByZXBvcnRJZk1pc3NpbmcoY29udGV4dCwgZGVwcywgZGVwc09wdGlvbnMsIG5vZGUsIG5vZGUudmFsdWUpXG4gICAgfSwge2NvbW1vbmpzOiB0cnVlfSlcbiAgfSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-internal-modules.js b/node_modules/eslint-plugin-import/lib/rules/no-internal-modules.js index 43d6b282..32d90d18 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-internal-modules.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-internal-modules.js @@ -1,49 +1,32 @@ -'use strict'; +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _minimatch = require('minimatch');var _minimatch2 = _interopRequireDefault(_minimatch); -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _minimatch = require('minimatch'); - -var _minimatch2 = _interopRequireDefault(_minimatch); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _importType = require('../core/importType'); - -var _importType2 = _interopRequireDefault(_importType); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _importType = require('../core/importType');var _importType2 = _interopRequireDefault(_importType); +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-internal-modules') - }, + url: (0, _docsUrl2.default)('no-internal-modules') }, - schema: [{ + + schema: [ + { type: 'object', properties: { allow: { type: 'array', items: { - type: 'string' - } - } - }, - additionalProperties: false - }] - }, + type: 'string' } } }, + + + + additionalProperties: false }] }, + + + create: function noReachingInside(context) { const options = context.options[0] || {}; @@ -62,7 +45,9 @@ module.exports = { // find a directory that is being reached into, but which shouldn't be function isReachViolation(importPath) { - const steps = normalizeSep(importPath).split('/').reduce((acc, step) => { + const steps = normalizeSep(importPath). + split('/'). + reduce((acc, step) => { if (!step || step === '.') { return acc; } else if (step === '..') { @@ -92,11 +77,13 @@ module.exports = { function checkImportForReaching(importPath, node) { const potentialViolationTypes = ['parent', 'index', 'sibling', 'external', 'internal']; - if (potentialViolationTypes.indexOf((0, _importType2.default)(importPath, context)) !== -1 && isReachViolation(importPath)) { + if (potentialViolationTypes.indexOf((0, _importType2.default)(importPath, context)) !== -1 && + isReachViolation(importPath)) + { context.report({ node, - message: `Reaching to "${importPath}" is not allowed.` - }); + message: `Reaching to "${importPath}" is not allowed.` }); + } } @@ -104,16 +91,20 @@ module.exports = { ImportDeclaration(node) { checkImportForReaching(node.source.value, node.source); }, + ExportAllDeclaration(node) { + checkImportForReaching(node.source.value, node.source); + }, + ExportNamedDeclaration(node) { + if (node.source) { + checkImportForReaching(node.source.value, node.source); + } + }, CallExpression(node) { - if ((0, _staticRequire2.default)(node)) { - var _node$arguments = _slicedToArray(node.arguments, 1); - - const firstArgument = _node$arguments[0]; - + if ((0, _staticRequire2.default)(node)) {var _node$arguments = _slicedToArray( + node.arguments, 1);const firstArgument = _node$arguments[0]; checkImportForReaching(firstArgument.value, firstArgument); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1pbnRlcm5hbC1tb2R1bGVzLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiYWxsb3ciLCJpdGVtcyIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiY3JlYXRlIiwibm9SZWFjaGluZ0luc2lkZSIsImNvbnRleHQiLCJvcHRpb25zIiwiYWxsb3dSZWdleHBzIiwibWFwIiwicCIsIm1pbmltYXRjaCIsIm1ha2VSZSIsInJlYWNoaW5nQWxsb3dlZCIsImltcG9ydFBhdGgiLCJzb21lIiwicmUiLCJ0ZXN0Iiwibm9ybWFsaXplU2VwIiwic29tZVBhdGgiLCJzcGxpdCIsImpvaW4iLCJpc1JlYWNoVmlvbGF0aW9uIiwic3RlcHMiLCJyZWR1Y2UiLCJhY2MiLCJzdGVwIiwic2xpY2UiLCJjb25jYXQiLCJub25TY29wZVN0ZXBzIiwiZmlsdGVyIiwiaW5kZXhPZiIsImxlbmd0aCIsImp1c3RTdGVwcyIsInJlc29sdmVkIiwiY2hlY2tJbXBvcnRGb3JSZWFjaGluZyIsIm5vZGUiLCJwb3RlbnRpYWxWaW9sYXRpb25UeXBlcyIsInJlcG9ydCIsIm1lc3NhZ2UiLCJJbXBvcnREZWNsYXJhdGlvbiIsInNvdXJjZSIsInZhbHVlIiwiQ2FsbEV4cHJlc3Npb24iLCJhcmd1bWVudHMiLCJmaXJzdEFyZ3VtZW50Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7QUFFQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLHFCQUFSO0FBREQsS0FGRjs7QUFNSkMsWUFBUSxDQUNOO0FBQ0VILFlBQU0sUUFEUjtBQUVFSSxrQkFBWTtBQUNWQyxlQUFPO0FBQ0xMLGdCQUFNLE9BREQ7QUFFTE0saUJBQU87QUFDTE4sa0JBQU07QUFERDtBQUZGO0FBREcsT0FGZDtBQVVFTyw0QkFBc0I7QUFWeEIsS0FETTtBQU5KLEdBRFM7O0FBdUJmQyxVQUFRLFNBQVNDLGdCQUFULENBQTBCQyxPQUExQixFQUFtQztBQUN6QyxVQUFNQyxVQUFVRCxRQUFRQyxPQUFSLENBQWdCLENBQWhCLEtBQXNCLEVBQXRDO0FBQ0EsVUFBTUMsZUFBZSxDQUFDRCxRQUFRTixLQUFSLElBQWlCLEVBQWxCLEVBQXNCUSxHQUF0QixDQUEwQkMsS0FBS0Msb0JBQVVDLE1BQVYsQ0FBaUJGLENBQWpCLENBQS9CLENBQXJCOztBQUVBO0FBQ0EsYUFBU0csZUFBVCxDQUF5QkMsVUFBekIsRUFBcUM7QUFDbkMsYUFBT04sYUFBYU8sSUFBYixDQUFrQkMsTUFBTUEsR0FBR0MsSUFBSCxDQUFRSCxVQUFSLENBQXhCLENBQVA7QUFDRDs7QUFFRDtBQUNBO0FBQ0EsYUFBU0ksWUFBVCxDQUFzQkMsUUFBdEIsRUFBZ0M7QUFDOUIsYUFBT0EsU0FBU0MsS0FBVCxDQUFlLElBQWYsRUFBcUJDLElBQXJCLENBQTBCLEdBQTFCLENBQVA7QUFDRDs7QUFFRDtBQUNBLGFBQVNDLGdCQUFULENBQTBCUixVQUExQixFQUFzQztBQUNwQyxZQUFNUyxRQUFRTCxhQUFhSixVQUFiLEVBQ1hNLEtBRFcsQ0FDTCxHQURLLEVBRVhJLE1BRlcsQ0FFSixDQUFDQyxHQUFELEVBQU1DLElBQU4sS0FBZTtBQUNyQixZQUFJLENBQUNBLElBQUQsSUFBU0EsU0FBUyxHQUF0QixFQUEyQjtBQUN6QixpQkFBT0QsR0FBUDtBQUNELFNBRkQsTUFFTyxJQUFJQyxTQUFTLElBQWIsRUFBbUI7QUFDeEIsaUJBQU9ELElBQUlFLEtBQUosQ0FBVSxDQUFWLEVBQWEsQ0FBQyxDQUFkLENBQVA7QUFDRCxTQUZNLE1BRUE7QUFDTCxpQkFBT0YsSUFBSUcsTUFBSixDQUFXRixJQUFYLENBQVA7QUFDRDtBQUNGLE9BVlcsRUFVVCxFQVZTLENBQWQ7O0FBWUEsWUFBTUcsZ0JBQWdCTixNQUFNTyxNQUFOLENBQWFKLFFBQVFBLEtBQUtLLE9BQUwsQ0FBYSxHQUFiLE1BQXNCLENBQTNDLENBQXRCO0FBQ0EsVUFBSUYsY0FBY0csTUFBZCxJQUF3QixDQUE1QixFQUErQixPQUFPLEtBQVA7O0FBRS9CO0FBQ0E7QUFDQSxZQUFNQyxZQUFZVixNQUFNRixJQUFOLENBQVcsR0FBWCxDQUFsQjtBQUNBLFVBQUlSLGdCQUFnQm9CLFNBQWhCLEtBQThCcEIsZ0JBQWlCLElBQUdvQixTQUFVLEVBQTlCLENBQWxDLEVBQW9FLE9BQU8sS0FBUDs7QUFFcEU7QUFDQTtBQUNBLFlBQU1DLFdBQVcsdUJBQVFwQixVQUFSLEVBQW9CUixPQUFwQixDQUFqQjtBQUNBLFVBQUksQ0FBQzRCLFFBQUQsSUFBYXJCLGdCQUFnQkssYUFBYWdCLFFBQWIsQ0FBaEIsQ0FBakIsRUFBMEQsT0FBTyxLQUFQOztBQUUxRDtBQUNBO0FBQ0EsYUFBTyxJQUFQO0FBQ0Q7O0FBRUQsYUFBU0Msc0JBQVQsQ0FBZ0NyQixVQUFoQyxFQUE0Q3NCLElBQTVDLEVBQWtEO0FBQ2hELFlBQU1DLDBCQUEwQixDQUFDLFFBQUQsRUFBVyxPQUFYLEVBQW9CLFNBQXBCLEVBQStCLFVBQS9CLEVBQTJDLFVBQTNDLENBQWhDO0FBQ0EsVUFBSUEsd0JBQXdCTixPQUF4QixDQUFnQywwQkFBV2pCLFVBQVgsRUFBdUJSLE9BQXZCLENBQWhDLE1BQXFFLENBQUMsQ0FBdEUsSUFDRmdCLGlCQUFpQlIsVUFBakIsQ0FERixFQUVFO0FBQ0FSLGdCQUFRZ0MsTUFBUixDQUFlO0FBQ2JGLGNBRGE7QUFFYkcsbUJBQVUsZ0JBQWV6QixVQUFXO0FBRnZCLFNBQWY7QUFJRDtBQUNGOztBQUVELFdBQU87QUFDTDBCLHdCQUFrQkosSUFBbEIsRUFBd0I7QUFDdEJELCtCQUF1QkMsS0FBS0ssTUFBTCxDQUFZQyxLQUFuQyxFQUEwQ04sS0FBS0ssTUFBL0M7QUFDRCxPQUhJO0FBSUxFLHFCQUFlUCxJQUFmLEVBQXFCO0FBQ25CLFlBQUksNkJBQWdCQSxJQUFoQixDQUFKLEVBQTJCO0FBQUEsK0NBQ0NBLEtBQUtRLFNBRE47O0FBQUEsZ0JBQ2pCQyxhQURpQjs7QUFFekJWLGlDQUF1QlUsY0FBY0gsS0FBckMsRUFBNENHLGFBQTVDO0FBQ0Q7QUFDRjtBQVRJLEtBQVA7QUFXRDtBQTdGYyxDQUFqQiIsImZpbGUiOiJuby1pbnRlcm5hbC1tb2R1bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1pbmltYXRjaCBmcm9tICdtaW5pbWF0Y2gnXG5cbmltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcbmltcG9ydCBpbXBvcnRUeXBlIGZyb20gJy4uL2NvcmUvaW1wb3J0VHlwZSdcbmltcG9ydCBpc1N0YXRpY1JlcXVpcmUgZnJvbSAnLi4vY29yZS9zdGF0aWNSZXF1aXJlJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1pbnRlcm5hbC1tb2R1bGVzJyksXG4gICAgfSxcblxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGFsbG93OiB7XG4gICAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIG5vUmVhY2hpbmdJbnNpZGUoY29udGV4dCkge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cbiAgICBjb25zdCBhbGxvd1JlZ2V4cHMgPSAob3B0aW9ucy5hbGxvdyB8fCBbXSkubWFwKHAgPT4gbWluaW1hdGNoLm1ha2VSZShwKSlcblxuICAgIC8vIHRlc3QgaWYgcmVhY2hpbmcgdG8gdGhpcyBkZXN0aW5hdGlvbiBpcyBhbGxvd2VkXG4gICAgZnVuY3Rpb24gcmVhY2hpbmdBbGxvd2VkKGltcG9ydFBhdGgpIHtcbiAgICAgIHJldHVybiBhbGxvd1JlZ2V4cHMuc29tZShyZSA9PiByZS50ZXN0KGltcG9ydFBhdGgpKVxuICAgIH1cblxuICAgIC8vIG1pbmltYXRjaCBwYXR0ZXJucyBhcmUgZXhwZWN0ZWQgdG8gdXNlIC8gcGF0aCBzZXBhcmF0b3JzLCBsaWtlIGltcG9ydFxuICAgIC8vIHN0YXRlbWVudHMsIHNvIG5vcm1hbGl6ZSBwYXRocyB0byB1c2UgdGhlIHNhbWVcbiAgICBmdW5jdGlvbiBub3JtYWxpemVTZXAoc29tZVBhdGgpIHtcbiAgICAgIHJldHVybiBzb21lUGF0aC5zcGxpdCgnXFxcXCcpLmpvaW4oJy8nKVxuICAgIH1cblxuICAgIC8vIGZpbmQgYSBkaXJlY3RvcnkgdGhhdCBpcyBiZWluZyByZWFjaGVkIGludG8sIGJ1dCB3aGljaCBzaG91bGRuJ3QgYmVcbiAgICBmdW5jdGlvbiBpc1JlYWNoVmlvbGF0aW9uKGltcG9ydFBhdGgpIHtcbiAgICAgIGNvbnN0IHN0ZXBzID0gbm9ybWFsaXplU2VwKGltcG9ydFBhdGgpXG4gICAgICAgIC5zcGxpdCgnLycpXG4gICAgICAgIC5yZWR1Y2UoKGFjYywgc3RlcCkgPT4ge1xuICAgICAgICAgIGlmICghc3RlcCB8fCBzdGVwID09PSAnLicpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgICB9IGVsc2UgaWYgKHN0ZXAgPT09ICcuLicpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2Muc2xpY2UoMCwgLTEpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBhY2MuY29uY2F0KHN0ZXApXG4gICAgICAgICAgfVxuICAgICAgICB9LCBbXSlcblxuICAgICAgY29uc3Qgbm9uU2NvcGVTdGVwcyA9IHN0ZXBzLmZpbHRlcihzdGVwID0+IHN0ZXAuaW5kZXhPZignQCcpICE9PSAwKVxuICAgICAgaWYgKG5vblNjb3BlU3RlcHMubGVuZ3RoIDw9IDEpIHJldHVybiBmYWxzZVxuXG4gICAgICAvLyBiZWZvcmUgdHJ5aW5nIHRvIHJlc29sdmUsIHNlZSBpZiB0aGUgcmF3IGltcG9ydCAod2l0aCByZWxhdGl2ZVxuICAgICAgLy8gc2VnbWVudHMgcmVzb2x2ZWQpIG1hdGNoZXMgYW4gYWxsb3dlZCBwYXR0ZXJuXG4gICAgICBjb25zdCBqdXN0U3RlcHMgPSBzdGVwcy5qb2luKCcvJylcbiAgICAgIGlmIChyZWFjaGluZ0FsbG93ZWQoanVzdFN0ZXBzKSB8fCByZWFjaGluZ0FsbG93ZWQoYC8ke2p1c3RTdGVwc31gKSkgcmV0dXJuIGZhbHNlXG5cbiAgICAgIC8vIGlmIHRoZSBpbXBvcnQgc3RhdGVtZW50IGRvZXNuJ3QgbWF0Y2ggZGlyZWN0bHksIHRyeSB0byBtYXRjaCB0aGVcbiAgICAgIC8vIHJlc29sdmVkIHBhdGggaWYgdGhlIGltcG9ydCBpcyByZXNvbHZhYmxlXG4gICAgICBjb25zdCByZXNvbHZlZCA9IHJlc29sdmUoaW1wb3J0UGF0aCwgY29udGV4dClcbiAgICAgIGlmICghcmVzb2x2ZWQgfHwgcmVhY2hpbmdBbGxvd2VkKG5vcm1hbGl6ZVNlcChyZXNvbHZlZCkpKSByZXR1cm4gZmFsc2VcblxuICAgICAgLy8gdGhpcyBpbXBvcnQgd2FzIG5vdCBhbGxvd2VkIGJ5IHRoZSBhbGxvd2VkIHBhdGhzLCBhbmQgcmVhY2hlc1xuICAgICAgLy8gc28gaXQgaXMgYSB2aW9sYXRpb25cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY2hlY2tJbXBvcnRGb3JSZWFjaGluZyhpbXBvcnRQYXRoLCBub2RlKSB7XG4gICAgICBjb25zdCBwb3RlbnRpYWxWaW9sYXRpb25UeXBlcyA9IFsncGFyZW50JywgJ2luZGV4JywgJ3NpYmxpbmcnLCAnZXh0ZXJuYWwnLCAnaW50ZXJuYWwnXVxuICAgICAgaWYgKHBvdGVudGlhbFZpb2xhdGlvblR5cGVzLmluZGV4T2YoaW1wb3J0VHlwZShpbXBvcnRQYXRoLCBjb250ZXh0KSkgIT09IC0xICYmXG4gICAgICAgIGlzUmVhY2hWaW9sYXRpb24oaW1wb3J0UGF0aClcbiAgICAgICkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgICBtZXNzYWdlOiBgUmVhY2hpbmcgdG8gXCIke2ltcG9ydFBhdGh9XCIgaXMgbm90IGFsbG93ZWQuYCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgICBjaGVja0ltcG9ydEZvclJlYWNoaW5nKG5vZGUuc291cmNlLnZhbHVlLCBub2RlLnNvdXJjZSlcbiAgICAgIH0sXG4gICAgICBDYWxsRXhwcmVzc2lvbihub2RlKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY1JlcXVpcmUobm9kZSkpIHtcbiAgICAgICAgICBjb25zdCBbIGZpcnN0QXJndW1lbnQgXSA9IG5vZGUuYXJndW1lbnRzXG4gICAgICAgICAgY2hlY2tJbXBvcnRGb3JSZWFjaGluZyhmaXJzdEFyZ3VtZW50LnZhbHVlLCBmaXJzdEFyZ3VtZW50KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1pbnRlcm5hbC1tb2R1bGVzLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiYWxsb3ciLCJpdGVtcyIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiY3JlYXRlIiwibm9SZWFjaGluZ0luc2lkZSIsImNvbnRleHQiLCJvcHRpb25zIiwiYWxsb3dSZWdleHBzIiwibWFwIiwicCIsIm1pbmltYXRjaCIsIm1ha2VSZSIsInJlYWNoaW5nQWxsb3dlZCIsImltcG9ydFBhdGgiLCJzb21lIiwicmUiLCJ0ZXN0Iiwibm9ybWFsaXplU2VwIiwic29tZVBhdGgiLCJzcGxpdCIsImpvaW4iLCJpc1JlYWNoVmlvbGF0aW9uIiwic3RlcHMiLCJyZWR1Y2UiLCJhY2MiLCJzdGVwIiwic2xpY2UiLCJjb25jYXQiLCJub25TY29wZVN0ZXBzIiwiZmlsdGVyIiwiaW5kZXhPZiIsImxlbmd0aCIsImp1c3RTdGVwcyIsInJlc29sdmVkIiwiY2hlY2tJbXBvcnRGb3JSZWFjaGluZyIsIm5vZGUiLCJwb3RlbnRpYWxWaW9sYXRpb25UeXBlcyIsInJlcG9ydCIsIm1lc3NhZ2UiLCJJbXBvcnREZWNsYXJhdGlvbiIsInNvdXJjZSIsInZhbHVlIiwiRXhwb3J0QWxsRGVjbGFyYXRpb24iLCJFeHBvcnROYW1lZERlY2xhcmF0aW9uIiwiQ2FsbEV4cHJlc3Npb24iLCJhcmd1bWVudHMiLCJmaXJzdEFyZ3VtZW50Il0sIm1hcHBpbmdzIjoicW9CQUFBLHNDOztBQUVBLHNEO0FBQ0EsZ0Q7QUFDQSxzRDtBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxxQkFBUixDQURELEVBRkY7OztBQU1KQyxZQUFRO0FBQ047QUFDRUgsWUFBTSxRQURSO0FBRUVJLGtC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QkFBcUJQLElBQXJCLEVBQTJCO0FBQ3pCRCwrQkFBdUJDLEtBQUtLLE1BQUwsQ0FBWUMsS0FBbkMsRUFBMENOLEtBQUtLLE1BQS9DO0FBQ0QsT0FOSTtBQU9MRyw2QkFBdUJSLElBQXZCLEVBQTZCO0FBQzNCLFlBQUlBLEtBQUtLLE1BQVQsRUFBaUI7QUFDZk4saUNBQXVCQyxLQUFLSyxNQUFMLENBQVlDLEtBQW5DLEVBQTBDTixLQUFLSyxNQUEvQztBQUNEO0FBQ0YsT0FYSTtBQVlMSSxxQkFBZVQsSUFBZixFQUFxQjtBQUNuQixZQUFJLDZCQUFnQkEsSUFBaEIsQ0FBSixFQUEyQjtBQUNDQSxlQUFLVSxTQUROLFdBQ2pCQyxhQURpQjtBQUV6QlosaUNBQXVCWSxjQUFjTCxLQUFyQyxFQUE0Q0ssYUFBNUM7QUFDRDtBQUNGLE9BakJJLEVBQVA7O0FBbUJELEdBckdjLEVBQWpCIiwiZmlsZSI6Im5vLWludGVybmFsLW1vZHVsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbWluaW1hdGNoIGZyb20gJ21pbmltYXRjaCdcblxuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IGltcG9ydFR5cGUgZnJvbSAnLi4vY29yZS9pbXBvcnRUeXBlJ1xuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLWludGVybmFsLW1vZHVsZXMnKSxcbiAgICB9LFxuXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgYWxsb3c6IHtcbiAgICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gbm9SZWFjaGluZ0luc2lkZShjb250ZXh0KSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQub3B0aW9uc1swXSB8fCB7fVxuICAgIGNvbnN0IGFsbG93UmVnZXhwcyA9IChvcHRpb25zLmFsbG93IHx8IFtdKS5tYXAocCA9PiBtaW5pbWF0Y2gubWFrZVJlKHApKVxuXG4gICAgLy8gdGVzdCBpZiByZWFjaGluZyB0byB0aGlzIGRlc3RpbmF0aW9uIGlzIGFsbG93ZWRcbiAgICBmdW5jdGlvbiByZWFjaGluZ0FsbG93ZWQoaW1wb3J0UGF0aCkge1xuICAgICAgcmV0dXJuIGFsbG93UmVnZXhwcy5zb21lKHJlID0+IHJlLnRlc3QoaW1wb3J0UGF0aCkpXG4gICAgfVxuXG4gICAgLy8gbWluaW1hdGNoIHBhdHRlcm5zIGFyZSBleHBlY3RlZCB0byB1c2UgLyBwYXRoIHNlcGFyYXRvcnMsIGxpa2UgaW1wb3J0XG4gICAgLy8gc3RhdGVtZW50cywgc28gbm9ybWFsaXplIHBhdGhzIHRvIHVzZSB0aGUgc2FtZVxuICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZVNlcChzb21lUGF0aCkge1xuICAgICAgcmV0dXJuIHNvbWVQYXRoLnNwbGl0KCdcXFxcJykuam9pbignLycpXG4gICAgfVxuXG4gICAgLy8gZmluZCBhIGRpcmVjdG9yeSB0aGF0IGlzIGJlaW5nIHJlYWNoZWQgaW50bywgYnV0IHdoaWNoIHNob3VsZG4ndCBiZVxuICAgIGZ1bmN0aW9uIGlzUmVhY2hWaW9sYXRpb24oaW1wb3J0UGF0aCkge1xuICAgICAgY29uc3Qgc3RlcHMgPSBub3JtYWxpemVTZXAoaW1wb3J0UGF0aClcbiAgICAgICAgLnNwbGl0KCcvJylcbiAgICAgICAgLnJlZHVjZSgoYWNjLCBzdGVwKSA9PiB7XG4gICAgICAgICAgaWYgKCFzdGVwIHx8IHN0ZXAgPT09ICcuJykge1xuICAgICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICAgIH0gZWxzZSBpZiAoc3RlcCA9PT0gJy4uJykge1xuICAgICAgICAgICAgcmV0dXJuIGFjYy5zbGljZSgwLCAtMSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjYy5jb25jYXQoc3RlcClcbiAgICAgICAgICB9XG4gICAgICAgIH0sIFtdKVxuXG4gICAgICBjb25zdCBub25TY29wZVN0ZXBzID0gc3RlcHMuZmlsdGVyKHN0ZXAgPT4gc3RlcC5pbmRleE9mKCdAJykgIT09IDApXG4gICAgICBpZiAobm9uU2NvcGVTdGVwcy5sZW5ndGggPD0gMSkgcmV0dXJuIGZhbHNlXG5cbiAgICAgIC8vIGJlZm9yZSB0cnlpbmcgdG8gcmVzb2x2ZSwgc2VlIGlmIHRoZSByYXcgaW1wb3J0ICh3aXRoIHJlbGF0aXZlXG4gICAgICAvLyBzZWdtZW50cyByZXNvbHZlZCkgbWF0Y2hlcyBhbiBhbGxvd2VkIHBhdHRlcm5cbiAgICAgIGNvbnN0IGp1c3RTdGVwcyA9IHN0ZXBzLmpvaW4oJy8nKVxuICAgICAgaWYgKHJlYWNoaW5nQWxsb3dlZChqdXN0U3RlcHMpIHx8IHJlYWNoaW5nQWxsb3dlZChgLyR7anVzdFN0ZXBzfWApKSByZXR1cm4gZmFsc2VcblxuICAgICAgLy8gaWYgdGhlIGltcG9ydCBzdGF0ZW1lbnQgZG9lc24ndCBtYXRjaCBkaXJlY3RseSwgdHJ5IHRvIG1hdGNoIHRoZVxuICAgICAgLy8gcmVzb2x2ZWQgcGF0aCBpZiB0aGUgaW1wb3J0IGlzIHJlc29sdmFibGVcbiAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVzb2x2ZShpbXBvcnRQYXRoLCBjb250ZXh0KVxuICAgICAgaWYgKCFyZXNvbHZlZCB8fCByZWFjaGluZ0FsbG93ZWQobm9ybWFsaXplU2VwKHJlc29sdmVkKSkpIHJldHVybiBmYWxzZVxuXG4gICAgICAvLyB0aGlzIGltcG9ydCB3YXMgbm90IGFsbG93ZWQgYnkgdGhlIGFsbG93ZWQgcGF0aHMsIGFuZCByZWFjaGVzXG4gICAgICAvLyBzbyBpdCBpcyBhIHZpb2xhdGlvblxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjaGVja0ltcG9ydEZvclJlYWNoaW5nKGltcG9ydFBhdGgsIG5vZGUpIHtcbiAgICAgIGNvbnN0IHBvdGVudGlhbFZpb2xhdGlvblR5cGVzID0gWydwYXJlbnQnLCAnaW5kZXgnLCAnc2libGluZycsICdleHRlcm5hbCcsICdpbnRlcm5hbCddXG4gICAgICBpZiAocG90ZW50aWFsVmlvbGF0aW9uVHlwZXMuaW5kZXhPZihpbXBvcnRUeXBlKGltcG9ydFBhdGgsIGNvbnRleHQpKSAhPT0gLTEgJiZcbiAgICAgICAgaXNSZWFjaFZpb2xhdGlvbihpbXBvcnRQYXRoKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIG1lc3NhZ2U6IGBSZWFjaGluZyB0byBcIiR7aW1wb3J0UGF0aH1cIiBpcyBub3QgYWxsb3dlZC5gLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGNoZWNrSW1wb3J0Rm9yUmVhY2hpbmcobm9kZS5zb3VyY2UudmFsdWUsIG5vZGUuc291cmNlKVxuICAgICAgfSxcbiAgICAgIEV4cG9ydEFsbERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgY2hlY2tJbXBvcnRGb3JSZWFjaGluZyhub2RlLnNvdXJjZS52YWx1ZSwgbm9kZS5zb3VyY2UpXG4gICAgICB9LFxuICAgICAgRXhwb3J0TmFtZWREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGlmIChub2RlLnNvdXJjZSkge1xuICAgICAgICAgIGNoZWNrSW1wb3J0Rm9yUmVhY2hpbmcobm9kZS5zb3VyY2UudmFsdWUsIG5vZGUuc291cmNlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQ2FsbEV4cHJlc3Npb24obm9kZSkge1xuICAgICAgICBpZiAoaXNTdGF0aWNSZXF1aXJlKG5vZGUpKSB7XG4gICAgICAgICAgY29uc3QgWyBmaXJzdEFyZ3VtZW50IF0gPSBub2RlLmFyZ3VtZW50c1xuICAgICAgICAgIGNoZWNrSW1wb3J0Rm9yUmVhY2hpbmcoZmlyc3RBcmd1bWVudC52YWx1ZSwgZmlyc3RBcmd1bWVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-mutable-exports.js b/node_modules/eslint-plugin-import/lib/rules/no-mutable-exports.js index b7039774..30a9effc 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-mutable-exports.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-mutable-exports.js @@ -1,32 +1,23 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-mutable-exports') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-mutable-exports') }, + + schema: [] }, + create: function (context) { - function checkDeclaration(node) { - const kind = node.kind; - + function checkDeclaration(node) {const + kind = node.kind; if (kind === 'var' || kind === 'let') { context.report(node, `Exporting mutable '${kind}' binding, use 'const' instead.`); } } - function checkDeclarationsInScope(_ref, name) { - let variables = _ref.variables; - + function checkDeclarationsInScope(_ref, name) {let variables = _ref.variables; for (let variable of variables) { if (variable.name === name) { for (let def of variable.defs) { @@ -60,8 +51,7 @@ module.exports = { return { 'ExportDefaultDeclaration': handleExportDefault, - 'ExportNamedDeclaration': handleExportNamed - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1tdXRhYmxlLWV4cG9ydHMuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJjaGVja0RlY2xhcmF0aW9uIiwibm9kZSIsImtpbmQiLCJyZXBvcnQiLCJjaGVja0RlY2xhcmF0aW9uc0luU2NvcGUiLCJuYW1lIiwidmFyaWFibGVzIiwidmFyaWFibGUiLCJkZWYiLCJkZWZzIiwicGFyZW50IiwiaGFuZGxlRXhwb3J0RGVmYXVsdCIsInNjb3BlIiwiZ2V0U2NvcGUiLCJkZWNsYXJhdGlvbiIsImhhbmRsZUV4cG9ydE5hbWVkIiwic291cmNlIiwic3BlY2lmaWVyIiwic3BlY2lmaWVycyIsImxvY2FsIl0sIm1hcHBpbmdzIjoiOztBQUFBOzs7Ozs7QUFFQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsb0JBQVI7QUFERCxLQUZGO0FBS0pDLFlBQVE7QUFMSixHQURTOztBQVNmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7QUFDekIsYUFBU0MsZ0JBQVQsQ0FBMEJDLElBQTFCLEVBQWdDO0FBQUEsWUFDdkJDLElBRHVCLEdBQ2ZELElBRGUsQ0FDdkJDLElBRHVCOztBQUU5QixVQUFJQSxTQUFTLEtBQVQsSUFBa0JBLFNBQVMsS0FBL0IsRUFBc0M7QUFDcENILGdCQUFRSSxNQUFSLENBQWVGLElBQWYsRUFBc0Isc0JBQXFCQyxJQUFLLGlDQUFoRDtBQUNEO0FBQ0Y7O0FBRUQsYUFBU0Usd0JBQVQsT0FBK0NDLElBQS9DLEVBQXFEO0FBQUEsVUFBbEJDLFNBQWtCLFFBQWxCQSxTQUFrQjs7QUFDbkQsV0FBSyxJQUFJQyxRQUFULElBQXFCRCxTQUFyQixFQUFnQztBQUM5QixZQUFJQyxTQUFTRixJQUFULEtBQWtCQSxJQUF0QixFQUE0QjtBQUMxQixlQUFLLElBQUlHLEdBQVQsSUFBZ0JELFNBQVNFLElBQXpCLEVBQStCO0FBQzdCLGdCQUFJRCxJQUFJZCxJQUFKLEtBQWEsVUFBYixJQUEyQmMsSUFBSUUsTUFBbkMsRUFBMkM7QUFDekNWLCtCQUFpQlEsSUFBSUUsTUFBckI7QUFDRDtBQUNGO0FBQ0Y7QUFDRjtBQUNGOztBQUVELGFBQVNDLG1CQUFULENBQTZCVixJQUE3QixFQUFtQztBQUNqQyxZQUFNVyxRQUFRYixRQUFRYyxRQUFSLEVBQWQ7O0FBRUEsVUFBSVosS0FBS2EsV0FBTCxDQUFpQlQsSUFBckIsRUFBMkI7QUFDekJELGlDQUF5QlEsS0FBekIsRUFBZ0NYLEtBQUthLFdBQUwsQ0FBaUJULElBQWpEO0FBQ0Q7QUFDRjs7QUFFRCxhQUFTVSxpQkFBVCxDQUEyQmQsSUFBM0IsRUFBaUM7QUFDL0IsWUFBTVcsUUFBUWIsUUFBUWMsUUFBUixFQUFkOztBQUVBLFVBQUlaLEtBQUthLFdBQVQsRUFBdUI7QUFDckJkLHlCQUFpQkMsS0FBS2EsV0FBdEI7QUFDRCxPQUZELE1BRU8sSUFBSSxDQUFDYixLQUFLZSxNQUFWLEVBQWtCO0FBQ3ZCLGFBQUssSUFBSUMsU0FBVCxJQUFzQmhCLEtBQUtpQixVQUEzQixFQUF1QztBQUNyQ2QsbUNBQXlCUSxLQUF6QixFQUFnQ0ssVUFBVUUsS0FBVixDQUFnQmQsSUFBaEQ7QUFDRDtBQUNGO0FBQ0Y7O0FBRUQsV0FBTztBQUNMLGtDQUE0Qk0sbUJBRHZCO0FBRUwsZ0NBQTBCSTtBQUZyQixLQUFQO0FBSUQ7QUFyRGMsQ0FBakIiLCJmaWxlIjoibm8tbXV0YWJsZS1leHBvcnRzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1tdXRhYmxlLWV4cG9ydHMnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGZ1bmN0aW9uIGNoZWNrRGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgY29uc3Qge2tpbmR9ID0gbm9kZVxuICAgICAgaWYgKGtpbmQgPT09ICd2YXInIHx8IGtpbmQgPT09ICdsZXQnKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KG5vZGUsIGBFeHBvcnRpbmcgbXV0YWJsZSAnJHtraW5kfScgYmluZGluZywgdXNlICdjb25zdCcgaW5zdGVhZC5gKVxuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNoZWNrRGVjbGFyYXRpb25zSW5TY29wZSh7dmFyaWFibGVzfSwgbmFtZSkge1xuICAgICAgZm9yIChsZXQgdmFyaWFibGUgb2YgdmFyaWFibGVzKSB7XG4gICAgICAgIGlmICh2YXJpYWJsZS5uYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgZm9yIChsZXQgZGVmIG9mIHZhcmlhYmxlLmRlZnMpIHtcbiAgICAgICAgICAgIGlmIChkZWYudHlwZSA9PT0gJ1ZhcmlhYmxlJyAmJiBkZWYucGFyZW50KSB7XG4gICAgICAgICAgICAgIGNoZWNrRGVjbGFyYXRpb24oZGVmLnBhcmVudClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVFeHBvcnREZWZhdWx0KG5vZGUpIHtcbiAgICAgIGNvbnN0IHNjb3BlID0gY29udGV4dC5nZXRTY29wZSgpXG5cbiAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uLm5hbWUpIHtcbiAgICAgICAgY2hlY2tEZWNsYXJhdGlvbnNJblNjb3BlKHNjb3BlLCBub2RlLmRlY2xhcmF0aW9uLm5hbWUpXG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaGFuZGxlRXhwb3J0TmFtZWQobm9kZSkge1xuICAgICAgY29uc3Qgc2NvcGUgPSBjb250ZXh0LmdldFNjb3BlKClcblxuICAgICAgaWYgKG5vZGUuZGVjbGFyYXRpb24pICB7XG4gICAgICAgIGNoZWNrRGVjbGFyYXRpb24obm9kZS5kZWNsYXJhdGlvbilcbiAgICAgIH0gZWxzZSBpZiAoIW5vZGUuc291cmNlKSB7XG4gICAgICAgIGZvciAobGV0IHNwZWNpZmllciBvZiBub2RlLnNwZWNpZmllcnMpIHtcbiAgICAgICAgICBjaGVja0RlY2xhcmF0aW9uc0luU2NvcGUoc2NvcGUsIHNwZWNpZmllci5sb2NhbC5uYW1lKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdFeHBvcnREZWZhdWx0RGVjbGFyYXRpb24nOiBoYW5kbGVFeHBvcnREZWZhdWx0LFxuICAgICAgJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nOiBoYW5kbGVFeHBvcnROYW1lZCxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + 'ExportNamedDeclaration': handleExportNamed }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1tdXRhYmxlLWV4cG9ydHMuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJjaGVja0RlY2xhcmF0aW9uIiwibm9kZSIsImtpbmQiLCJyZXBvcnQiLCJjaGVja0RlY2xhcmF0aW9uc0luU2NvcGUiLCJuYW1lIiwidmFyaWFibGVzIiwidmFyaWFibGUiLCJkZWYiLCJkZWZzIiwicGFyZW50IiwiaGFuZGxlRXhwb3J0RGVmYXVsdCIsInNjb3BlIiwiZ2V0U2NvcGUiLCJkZWNsYXJhdGlvbiIsImhhbmRsZUV4cG9ydE5hbWVkIiwic291cmNlIiwic3BlY2lmaWVyIiwic3BlY2lmaWVycyIsImxvY2FsIl0sIm1hcHBpbmdzIjoiYUFBQSxxQzs7QUFFQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsb0JBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLEVBTEosRUFEUzs7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixhQUFTQyxnQkFBVCxDQUEwQkMsSUFBMUIsRUFBZ0M7QUFDdkJDLFVBRHVCLEdBQ2ZELElBRGUsQ0FDdkJDLElBRHVCO0FBRTlCLFVBQUlBLFNBQVMsS0FBVCxJQUFrQkEsU0FBUyxLQUEvQixFQUFzQztBQUNwQ0gsZ0JBQVFJLE1BQVIsQ0FBZUYsSUFBZixFQUFzQixzQkFBcUJDLElBQUssaUNBQWhEO0FBQ0Q7QUFDRjs7QUFFRCxhQUFTRSx3QkFBVCxPQUErQ0MsSUFBL0MsRUFBcUQsS0FBbEJDLFNBQWtCLFFBQWxCQSxTQUFrQjtBQUNuRCxXQUFLLElBQUlDLFFBQVQsSUFBcUJELFNBQXJCLEVBQWdDO0FBQzlCLFlBQUlDLFNBQVNGLElBQVQsS0FBa0JBLElBQXRCLEVBQTRCO0FBQzFCLGVBQUssSUFBSUcsR0FBVCxJQUFnQkQsU0FBU0UsSUFBekIsRUFBK0I7QUFDN0IsZ0JBQUlELElBQUlkLElBQUosS0FBYSxVQUFiLElBQTJCYyxJQUFJRSxNQUFuQyxFQUEyQztBQUN6Q1YsK0JBQWlCUSxJQUFJRSxNQUFyQjtBQUNEO0FBQ0Y7QUFDRjtBQUNGO0FBQ0Y7O0FBRUQsYUFBU0MsbUJBQVQsQ0FBNkJWLElBQTdCLEVBQW1DO0FBQ2pDLFlBQU1XLFFBQVFiLFFBQVFjLFFBQVIsRUFBZDs7QUFFQSxVQUFJWixLQUFLYSxXQUFMLENBQWlCVCxJQUFyQixFQUEyQjtBQUN6QkQsaUNBQXlCUSxLQUF6QixFQUFnQ1gsS0FBS2EsV0FBTCxDQUFpQlQsSUFBakQ7QUFDRDtBQUNGOztBQUVELGFBQVNVLGlCQUFULENBQTJCZCxJQUEzQixFQUFpQztBQUMvQixZQUFNVyxRQUFRYixRQUFRYyxRQUFSLEVBQWQ7O0FBRUEsVUFBSVosS0FBS2EsV0FBVCxFQUF1QjtBQUNyQmQseUJBQWlCQyxLQUFLYSxXQUF0QjtBQUNELE9BRkQsTUFFTyxJQUFJLENBQUNiLEtBQUtlLE1BQVYsRUFBa0I7QUFDdkIsYUFBSyxJQUFJQyxTQUFULElBQXNCaEIsS0FBS2lCLFVBQTNCLEVBQXVDO0FBQ3JDZCxtQ0FBeUJRLEtBQXpCLEVBQWdDSyxVQUFVRSxLQUFWLENBQWdCZCxJQUFoRDtBQUNEO0FBQ0Y7QUFDRjs7QUFFRCxXQUFPO0FBQ0wsa0NBQTRCTSxtQkFEdkI7QUFFTCxnQ0FBMEJJLGlCQUZyQixFQUFQOztBQUlELEdBckRjLEVBQWpCIiwiZmlsZSI6Im5vLW11dGFibGUtZXhwb3J0cy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbXV0YWJsZS1leHBvcnRzJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBmdW5jdGlvbiBjaGVja0RlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgIGNvbnN0IHtraW5kfSA9IG5vZGVcbiAgICAgIGlmIChraW5kID09PSAndmFyJyB8fCBraW5kID09PSAnbGV0Jykge1xuICAgICAgICBjb250ZXh0LnJlcG9ydChub2RlLCBgRXhwb3J0aW5nIG11dGFibGUgJyR7a2luZH0nIGJpbmRpbmcsIHVzZSAnY29uc3QnIGluc3RlYWQuYClcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjaGVja0RlY2xhcmF0aW9uc0luU2NvcGUoe3ZhcmlhYmxlc30sIG5hbWUpIHtcbiAgICAgIGZvciAobGV0IHZhcmlhYmxlIG9mIHZhcmlhYmxlcykge1xuICAgICAgICBpZiAodmFyaWFibGUubmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgIGZvciAobGV0IGRlZiBvZiB2YXJpYWJsZS5kZWZzKSB7XG4gICAgICAgICAgICBpZiAoZGVmLnR5cGUgPT09ICdWYXJpYWJsZScgJiYgZGVmLnBhcmVudCkge1xuICAgICAgICAgICAgICBjaGVja0RlY2xhcmF0aW9uKGRlZi5wYXJlbnQpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaGFuZGxlRXhwb3J0RGVmYXVsdChub2RlKSB7XG4gICAgICBjb25zdCBzY29wZSA9IGNvbnRleHQuZ2V0U2NvcGUoKVxuXG4gICAgICBpZiAobm9kZS5kZWNsYXJhdGlvbi5uYW1lKSB7XG4gICAgICAgIGNoZWNrRGVjbGFyYXRpb25zSW5TY29wZShzY29wZSwgbm9kZS5kZWNsYXJhdGlvbi5uYW1lKVxuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGhhbmRsZUV4cG9ydE5hbWVkKG5vZGUpIHtcbiAgICAgIGNvbnN0IHNjb3BlID0gY29udGV4dC5nZXRTY29wZSgpXG5cbiAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uKSAge1xuICAgICAgICBjaGVja0RlY2xhcmF0aW9uKG5vZGUuZGVjbGFyYXRpb24pXG4gICAgICB9IGVsc2UgaWYgKCFub2RlLnNvdXJjZSkge1xuICAgICAgICBmb3IgKGxldCBzcGVjaWZpZXIgb2Ygbm9kZS5zcGVjaWZpZXJzKSB7XG4gICAgICAgICAgY2hlY2tEZWNsYXJhdGlvbnNJblNjb3BlKHNjb3BlLCBzcGVjaWZpZXIubG9jYWwubmFtZSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJzogaGFuZGxlRXhwb3J0RGVmYXVsdCxcbiAgICAgICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJzogaGFuZGxlRXhwb3J0TmFtZWQsXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-named-as-default-member.js b/node_modules/eslint-plugin-import/lib/rules/no-named-as-default-member.js index 27394b35..4ef823f1 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-named-as-default-member.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-named-as-default-member.js @@ -1,18 +1,12 @@ 'use strict'; -var _ExportMap = require('../ExportMap'); -var _ExportMap2 = _interopRequireDefault(_ExportMap); -var _importDeclaration = require('../importDeclaration'); -var _importDeclaration2 = _interopRequireDefault(_importDeclaration); -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _importDeclaration = require('../importDeclaration');var _importDeclaration2 = _interopRequireDefault(_importDeclaration); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} //------------------------------------------------------------------------------ // Rule Definition @@ -22,10 +16,10 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-named-as-default-member') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-named-as-default-member') }, + + schema: [] }, + create: function (context) { @@ -44,8 +38,8 @@ module.exports = { fileImports.set(node.local.name, { exportMap, - sourcePath: declaration.source.value - }); + sourcePath: declaration.source.value }); + } function storePropertyLookup(objectName, propName, node) { @@ -61,13 +55,15 @@ module.exports = { } function handleDestructuringAssignment(node) { - const isDestructure = node.id.type === 'ObjectPattern' && node.init != null && node.init.type === 'Identifier'; + const isDestructure = + node.id.type === 'ObjectPattern' && + node.init != null && + node.init.type === 'Identifier'; + if (!isDestructure) return; const objectName = node.init.name; - for (const _ref of node.id.properties) { - const key = _ref.key; - + for (const _ref of node.id.properties) {const key = _ref.key; if (key == null) continue; // true for rest properties storePropertyLookup(objectName, key.name, key); } @@ -78,18 +74,20 @@ module.exports = { const fileImport = fileImports.get(objectName); if (fileImport == null) return; - for (const _ref2 of lookups) { - const propName = _ref2.propName; - const node = _ref2.node; - + for (const _ref2 of lookups) {const propName = _ref2.propName;const node = _ref2.node; // the default import can have a "default" property if (propName === 'default') continue; if (!fileImport.exportMap.namespace.has(propName)) continue; context.report({ node, - message: `Caution: \`${objectName}\` also has a named export ` + `\`${propName}\`. Check if you meant to write ` + `\`import {${propName}} from '${fileImport.sourcePath}'\` ` + 'instead.' - }); + message: + `Caution: \`${objectName}\` also has a named export ` + + `\`${propName}\`. Check if you meant to write ` + + `\`import {${propName}} from '${fileImport.sourcePath}'\` ` + + 'instead.' }); + + } }); } @@ -98,13 +96,12 @@ module.exports = { 'ImportDefaultSpecifier': handleImportDefault, 'MemberExpression': handlePropLookup, 'VariableDeclarator': handleDestructuringAssignment, - 'Program:exit': handleProgramExit - }; - } -}; /** - * @fileoverview Rule to warn about potentially confused use of name exports - * @author Desmond Brand - * @copyright 2016 Desmond Brand. All rights reserved. - * See LICENSE in root directory for full license. - */ -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LW1lbWJlci5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImZpbGVJbXBvcnRzIiwiTWFwIiwiYWxsUHJvcGVydHlMb29rdXBzIiwiaGFuZGxlSW1wb3J0RGVmYXVsdCIsIm5vZGUiLCJkZWNsYXJhdGlvbiIsImV4cG9ydE1hcCIsIkV4cG9ydHMiLCJnZXQiLCJzb3VyY2UiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsInNldCIsImxvY2FsIiwibmFtZSIsInNvdXJjZVBhdGgiLCJzdG9yZVByb3BlcnR5TG9va3VwIiwib2JqZWN0TmFtZSIsInByb3BOYW1lIiwibG9va3VwcyIsInB1c2giLCJoYW5kbGVQcm9wTG9va3VwIiwib2JqZWN0IiwicHJvcGVydHkiLCJoYW5kbGVEZXN0cnVjdHVyaW5nQXNzaWdubWVudCIsImlzRGVzdHJ1Y3R1cmUiLCJpZCIsImluaXQiLCJwcm9wZXJ0aWVzIiwia2V5IiwiaGFuZGxlUHJvZ3JhbUV4aXQiLCJmb3JFYWNoIiwiZmlsZUltcG9ydCIsIm5hbWVzcGFjZSIsImhhcyIsInJlcG9ydCIsIm1lc3NhZ2UiXSwibWFwcGluZ3MiOiI7O0FBTUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQTtBQUNBO0FBQ0E7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLDRCQUFSO0FBREQsS0FGRjtBQUtKQyxZQUFRO0FBTEosR0FEUzs7QUFTZkMsVUFBUSxVQUFTQyxPQUFULEVBQWtCOztBQUV4QixVQUFNQyxjQUFjLElBQUlDLEdBQUosRUFBcEI7QUFDQSxVQUFNQyxxQkFBcUIsSUFBSUQsR0FBSixFQUEzQjs7QUFFQSxhQUFTRSxtQkFBVCxDQUE2QkMsSUFBN0IsRUFBbUM7QUFDakMsWUFBTUMsY0FBYyxpQ0FBa0JOLE9BQWxCLENBQXBCO0FBQ0EsWUFBTU8sWUFBWUMsb0JBQVFDLEdBQVIsQ0FBWUgsWUFBWUksTUFBWixDQUFtQkMsS0FBL0IsRUFBc0NYLE9BQXRDLENBQWxCO0FBQ0EsVUFBSU8sYUFBYSxJQUFqQixFQUF1Qjs7QUFFdkIsVUFBSUEsVUFBVUssTUFBVixDQUFpQkMsTUFBckIsRUFBNkI7QUFDM0JOLGtCQUFVTyxZQUFWLENBQXVCZCxPQUF2QixFQUFnQ00sV0FBaEM7QUFDQTtBQUNEOztBQUVETCxrQkFBWWMsR0FBWixDQUFnQlYsS0FBS1csS0FBTCxDQUFXQyxJQUEzQixFQUFpQztBQUMvQlYsaUJBRCtCO0FBRS9CVyxvQkFBWVosWUFBWUksTUFBWixDQUFtQkM7QUFGQSxPQUFqQztBQUlEOztBQUVELGFBQVNRLG1CQUFULENBQTZCQyxVQUE3QixFQUF5Q0MsUUFBekMsRUFBbURoQixJQUFuRCxFQUF5RDtBQUN2RCxZQUFNaUIsVUFBVW5CLG1CQUFtQk0sR0FBbkIsQ0FBdUJXLFVBQXZCLEtBQXNDLEVBQXREO0FBQ0FFLGNBQVFDLElBQVIsQ0FBYSxFQUFDbEIsSUFBRCxFQUFPZ0IsUUFBUCxFQUFiO0FBQ0FsQix5QkFBbUJZLEdBQW5CLENBQXVCSyxVQUF2QixFQUFtQ0UsT0FBbkM7QUFDRDs7QUFFRCxhQUFTRSxnQkFBVCxDQUEwQm5CLElBQTFCLEVBQWdDO0FBQzlCLFlBQU1lLGFBQWFmLEtBQUtvQixNQUFMLENBQVlSLElBQS9CO0FBQ0EsWUFBTUksV0FBV2hCLEtBQUtxQixRQUFMLENBQWNULElBQS9CO0FBQ0FFLDBCQUFvQkMsVUFBcEIsRUFBZ0NDLFFBQWhDLEVBQTBDaEIsSUFBMUM7QUFDRDs7QUFFRCxhQUFTc0IsNkJBQVQsQ0FBdUN0QixJQUF2QyxFQUE2QztBQUMzQyxZQUFNdUIsZ0JBQ0p2QixLQUFLd0IsRUFBTCxDQUFRbEMsSUFBUixLQUFpQixlQUFqQixJQUNBVSxLQUFLeUIsSUFBTCxJQUFhLElBRGIsSUFFQXpCLEtBQUt5QixJQUFMLENBQVVuQyxJQUFWLEtBQW1CLFlBSHJCO0FBS0EsVUFBSSxDQUFDaUMsYUFBTCxFQUFvQjs7QUFFcEIsWUFBTVIsYUFBYWYsS0FBS3lCLElBQUwsQ0FBVWIsSUFBN0I7QUFDQSx5QkFBc0JaLEtBQUt3QixFQUFMLENBQVFFLFVBQTlCLEVBQTBDO0FBQUEsY0FBN0JDLEdBQTZCLFFBQTdCQSxHQUE2Qjs7QUFDeEMsWUFBSUEsT0FBTyxJQUFYLEVBQWlCLFNBRHVCLENBQ2I7QUFDM0JiLDRCQUFvQkMsVUFBcEIsRUFBZ0NZLElBQUlmLElBQXBDLEVBQTBDZSxHQUExQztBQUNEO0FBQ0Y7O0FBRUQsYUFBU0MsaUJBQVQsR0FBNkI7QUFDM0I5Qix5QkFBbUIrQixPQUFuQixDQUEyQixDQUFDWixPQUFELEVBQVVGLFVBQVYsS0FBeUI7QUFDbEQsY0FBTWUsYUFBYWxDLFlBQVlRLEdBQVosQ0FBZ0JXLFVBQWhCLENBQW5CO0FBQ0EsWUFBSWUsY0FBYyxJQUFsQixFQUF3Qjs7QUFFeEIsNEJBQStCYixPQUEvQixFQUF3QztBQUFBLGdCQUE1QkQsUUFBNEIsU0FBNUJBLFFBQTRCO0FBQUEsZ0JBQWxCaEIsSUFBa0IsU0FBbEJBLElBQWtCOztBQUN0QztBQUNBLGNBQUlnQixhQUFhLFNBQWpCLEVBQTRCO0FBQzVCLGNBQUksQ0FBQ2MsV0FBVzVCLFNBQVgsQ0FBcUI2QixTQUFyQixDQUErQkMsR0FBL0IsQ0FBbUNoQixRQUFuQyxDQUFMLEVBQW1EOztBQUVuRHJCLGtCQUFRc0MsTUFBUixDQUFlO0FBQ2JqQyxnQkFEYTtBQUVia0MscUJBQ0csY0FBYW5CLFVBQVcsNkJBQXpCLEdBQ0MsS0FBSUMsUUFBUyxrQ0FEZCxHQUVDLGFBQVlBLFFBQVMsV0FBVWMsV0FBV2pCLFVBQVcsTUFGdEQsR0FHQTtBQU5XLFdBQWY7QUFTRDtBQUNGLE9BbkJEO0FBb0JEOztBQUVELFdBQU87QUFDTCxnQ0FBMEJkLG1CQURyQjtBQUVMLDBCQUFvQm9CLGdCQUZmO0FBR0wsNEJBQXNCRyw2QkFIakI7QUFJTCxzQkFBZ0JNO0FBSlgsS0FBUDtBQU1EO0FBdEZjLENBQWpCLEMsQ0FkQSIsImZpbGUiOiJuby1uYW1lZC1hcy1kZWZhdWx0LW1lbWJlci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIHdhcm4gYWJvdXQgcG90ZW50aWFsbHkgY29uZnVzZWQgdXNlIG9mIG5hbWUgZXhwb3J0c1xuICogQGF1dGhvciBEZXNtb25kIEJyYW5kXG4gKiBAY29weXJpZ2h0IDIwMTYgRGVzbW9uZCBCcmFuZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIFNlZSBMSUNFTlNFIGluIHJvb3QgZGlyZWN0b3J5IGZvciBmdWxsIGxpY2Vuc2UuXG4gKi9cbmltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBpbXBvcnREZWNsYXJhdGlvbiBmcm9tICcuLi9pbXBvcnREZWNsYXJhdGlvbidcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSdWxlIERlZmluaXRpb25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbmFtZWQtYXMtZGVmYXVsdC1tZW1iZXInKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbihjb250ZXh0KSB7XG5cbiAgICBjb25zdCBmaWxlSW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgIGNvbnN0IGFsbFByb3BlcnR5TG9va3VwcyA9IG5ldyBNYXAoKVxuXG4gICAgZnVuY3Rpb24gaGFuZGxlSW1wb3J0RGVmYXVsdChub2RlKSB7XG4gICAgICBjb25zdCBkZWNsYXJhdGlvbiA9IGltcG9ydERlY2xhcmF0aW9uKGNvbnRleHQpXG4gICAgICBjb25zdCBleHBvcnRNYXAgPSBFeHBvcnRzLmdldChkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICBpZiAoZXhwb3J0TWFwID09IG51bGwpIHJldHVyblxuXG4gICAgICBpZiAoZXhwb3J0TWFwLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgZXhwb3J0TWFwLnJlcG9ydEVycm9ycyhjb250ZXh0LCBkZWNsYXJhdGlvbilcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGZpbGVJbXBvcnRzLnNldChub2RlLmxvY2FsLm5hbWUsIHtcbiAgICAgICAgZXhwb3J0TWFwLFxuICAgICAgICBzb3VyY2VQYXRoOiBkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHN0b3JlUHJvcGVydHlMb29rdXAob2JqZWN0TmFtZSwgcHJvcE5hbWUsIG5vZGUpIHtcbiAgICAgIGNvbnN0IGxvb2t1cHMgPSBhbGxQcm9wZXJ0eUxvb2t1cHMuZ2V0KG9iamVjdE5hbWUpIHx8IFtdXG4gICAgICBsb29rdXBzLnB1c2goe25vZGUsIHByb3BOYW1lfSlcbiAgICAgIGFsbFByb3BlcnR5TG9va3Vwcy5zZXQob2JqZWN0TmFtZSwgbG9va3VwcylcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVQcm9wTG9va3VwKG5vZGUpIHtcbiAgICAgIGNvbnN0IG9iamVjdE5hbWUgPSBub2RlLm9iamVjdC5uYW1lXG4gICAgICBjb25zdCBwcm9wTmFtZSA9IG5vZGUucHJvcGVydHkubmFtZVxuICAgICAgc3RvcmVQcm9wZXJ0eUxvb2t1cChvYmplY3ROYW1lLCBwcm9wTmFtZSwgbm9kZSlcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVEZXN0cnVjdHVyaW5nQXNzaWdubWVudChub2RlKSB7XG4gICAgICBjb25zdCBpc0Rlc3RydWN0dXJlID0gKFxuICAgICAgICBub2RlLmlkLnR5cGUgPT09ICdPYmplY3RQYXR0ZXJuJyAmJlxuICAgICAgICBub2RlLmluaXQgIT0gbnVsbCAmJlxuICAgICAgICBub2RlLmluaXQudHlwZSA9PT0gJ0lkZW50aWZpZXInXG4gICAgICApXG4gICAgICBpZiAoIWlzRGVzdHJ1Y3R1cmUpIHJldHVyblxuXG4gICAgICBjb25zdCBvYmplY3ROYW1lID0gbm9kZS5pbml0Lm5hbWVcbiAgICAgIGZvciAoY29uc3QgeyBrZXkgfSBvZiBub2RlLmlkLnByb3BlcnRpZXMpIHtcbiAgICAgICAgaWYgKGtleSA9PSBudWxsKSBjb250aW51ZSAgLy8gdHJ1ZSBmb3IgcmVzdCBwcm9wZXJ0aWVzXG4gICAgICAgIHN0b3JlUHJvcGVydHlMb29rdXAob2JqZWN0TmFtZSwga2V5Lm5hbWUsIGtleSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVQcm9ncmFtRXhpdCgpIHtcbiAgICAgIGFsbFByb3BlcnR5TG9va3Vwcy5mb3JFYWNoKChsb29rdXBzLCBvYmplY3ROYW1lKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpbGVJbXBvcnQgPSBmaWxlSW1wb3J0cy5nZXQob2JqZWN0TmFtZSlcbiAgICAgICAgaWYgKGZpbGVJbXBvcnQgPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgICAgZm9yIChjb25zdCB7cHJvcE5hbWUsIG5vZGV9IG9mIGxvb2t1cHMpIHtcbiAgICAgICAgICAvLyB0aGUgZGVmYXVsdCBpbXBvcnQgY2FuIGhhdmUgYSBcImRlZmF1bHRcIiBwcm9wZXJ0eVxuICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ2RlZmF1bHQnKSBjb250aW51ZVxuICAgICAgICAgIGlmICghZmlsZUltcG9ydC5leHBvcnRNYXAubmFtZXNwYWNlLmhhcyhwcm9wTmFtZSkpIGNvbnRpbnVlXG5cbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICBgQ2F1dGlvbjogXFxgJHtvYmplY3ROYW1lfVxcYCBhbHNvIGhhcyBhIG5hbWVkIGV4cG9ydCBgICtcbiAgICAgICAgICAgICAgYFxcYCR7cHJvcE5hbWV9XFxgLiBDaGVjayBpZiB5b3UgbWVhbnQgdG8gd3JpdGUgYCArXG4gICAgICAgICAgICAgIGBcXGBpbXBvcnQgeyR7cHJvcE5hbWV9fSBmcm9tICcke2ZpbGVJbXBvcnQuc291cmNlUGF0aH0nXFxgIGAgK1xuICAgICAgICAgICAgICAnaW5zdGVhZC4nXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJzogaGFuZGxlSW1wb3J0RGVmYXVsdCxcbiAgICAgICdNZW1iZXJFeHByZXNzaW9uJzogaGFuZGxlUHJvcExvb2t1cCxcbiAgICAgICdWYXJpYWJsZURlY2xhcmF0b3InOiBoYW5kbGVEZXN0cnVjdHVyaW5nQXNzaWdubWVudCxcbiAgICAgICdQcm9ncmFtOmV4aXQnOiBoYW5kbGVQcm9ncmFtRXhpdCxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + 'Program:exit': handleProgramExit }; + + } }; /** + * @fileoverview Rule to warn about potentially confused use of name exports + * @author Desmond Brand + * @copyright 2016 Desmond Brand. All rights reserved. + * See LICENSE in root directory for full license. + */ +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LW1lbWJlci5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImZpbGVJbXBvcnRzIiwiTWFwIiwiYWxsUHJvcGVydHlMb29rdXBzIiwiaGFuZGxlSW1wb3J0RGVmYXVsdCIsIm5vZGUiLCJkZWNsYXJhdGlvbiIsImV4cG9ydE1hcCIsIkV4cG9ydHMiLCJnZXQiLCJzb3VyY2UiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsInNldCIsImxvY2FsIiwibmFtZSIsInNvdXJjZVBhdGgiLCJzdG9yZVByb3BlcnR5TG9va3VwIiwib2JqZWN0TmFtZSIsInByb3BOYW1lIiwibG9va3VwcyIsInB1c2giLCJoYW5kbGVQcm9wTG9va3VwIiwib2JqZWN0IiwicHJvcGVydHkiLCJoYW5kbGVEZXN0cnVjdHVyaW5nQXNzaWdubWVudCIsImlzRGVzdHJ1Y3R1cmUiLCJpZCIsImluaXQiLCJwcm9wZXJ0aWVzIiwia2V5IiwiaGFuZGxlUHJvZ3JhbUV4aXQiLCJmb3JFYWNoIiwiZmlsZUltcG9ydCIsIm5hbWVzcGFjZSIsImhhcyIsInJlcG9ydCIsIm1lc3NhZ2UiXSwibWFwcGluZ3MiOiI7Ozs7OztBQU1BLHlDO0FBQ0EseUQ7QUFDQSxxQzs7QUFFQTtBQUNBO0FBQ0E7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLDRCQUFSLENBREQsRUFGRjs7QUFLSkMsWUFBUSxFQUxKLEVBRFM7OztBQVNmQyxVQUFRLFVBQVNDLE9BQVQsRUFBa0I7O0FBRXhCLFVBQU1DLGNBQWMsSUFBSUMsR0FBSixFQUFwQjtBQUNBLFVBQU1DLHFCQUFxQixJQUFJRCxHQUFKLEVBQTNCOztBQUVBLGFBQVNF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c0JBQWdCTSxpQkFKWCxFQUFQOztBQU1ELEdBdEZjLEVBQWpCLEMsQ0FkQSIsImZpbGUiOiJuby1uYW1lZC1hcy1kZWZhdWx0LW1lbWJlci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIHdhcm4gYWJvdXQgcG90ZW50aWFsbHkgY29uZnVzZWQgdXNlIG9mIG5hbWUgZXhwb3J0c1xuICogQGF1dGhvciBEZXNtb25kIEJyYW5kXG4gKiBAY29weXJpZ2h0IDIwMTYgRGVzbW9uZCBCcmFuZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIFNlZSBMSUNFTlNFIGluIHJvb3QgZGlyZWN0b3J5IGZvciBmdWxsIGxpY2Vuc2UuXG4gKi9cbmltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBpbXBvcnREZWNsYXJhdGlvbiBmcm9tICcuLi9pbXBvcnREZWNsYXJhdGlvbidcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSdWxlIERlZmluaXRpb25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbmFtZWQtYXMtZGVmYXVsdC1tZW1iZXInKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbihjb250ZXh0KSB7XG5cbiAgICBjb25zdCBmaWxlSW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgIGNvbnN0IGFsbFByb3BlcnR5TG9va3VwcyA9IG5ldyBNYXAoKVxuXG4gICAgZnVuY3Rpb24gaGFuZGxlSW1wb3J0RGVmYXVsdChub2RlKSB7XG4gICAgICBjb25zdCBkZWNsYXJhdGlvbiA9IGltcG9ydERlY2xhcmF0aW9uKGNvbnRleHQpXG4gICAgICBjb25zdCBleHBvcnRNYXAgPSBFeHBvcnRzLmdldChkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUsIGNvbnRleHQpXG4gICAgICBpZiAoZXhwb3J0TWFwID09IG51bGwpIHJldHVyblxuXG4gICAgICBpZiAoZXhwb3J0TWFwLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgZXhwb3J0TWFwLnJlcG9ydEVycm9ycyhjb250ZXh0LCBkZWNsYXJhdGlvbilcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGZpbGVJbXBvcnRzLnNldChub2RlLmxvY2FsLm5hbWUsIHtcbiAgICAgICAgZXhwb3J0TWFwLFxuICAgICAgICBzb3VyY2VQYXRoOiBkZWNsYXJhdGlvbi5zb3VyY2UudmFsdWUsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHN0b3JlUHJvcGVydHlMb29rdXAob2JqZWN0TmFtZSwgcHJvcE5hbWUsIG5vZGUpIHtcbiAgICAgIGNvbnN0IGxvb2t1cHMgPSBhbGxQcm9wZXJ0eUxvb2t1cHMuZ2V0KG9iamVjdE5hbWUpIHx8IFtdXG4gICAgICBsb29rdXBzLnB1c2goe25vZGUsIHByb3BOYW1lfSlcbiAgICAgIGFsbFByb3BlcnR5TG9va3Vwcy5zZXQob2JqZWN0TmFtZSwgbG9va3VwcylcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVQcm9wTG9va3VwKG5vZGUpIHtcbiAgICAgIGNvbnN0IG9iamVjdE5hbWUgPSBub2RlLm9iamVjdC5uYW1lXG4gICAgICBjb25zdCBwcm9wTmFtZSA9IG5vZGUucHJvcGVydHkubmFtZVxuICAgICAgc3RvcmVQcm9wZXJ0eUxvb2t1cChvYmplY3ROYW1lLCBwcm9wTmFtZSwgbm9kZSlcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVEZXN0cnVjdHVyaW5nQXNzaWdubWVudChub2RlKSB7XG4gICAgICBjb25zdCBpc0Rlc3RydWN0dXJlID0gKFxuICAgICAgICBub2RlLmlkLnR5cGUgPT09ICdPYmplY3RQYXR0ZXJuJyAmJlxuICAgICAgICBub2RlLmluaXQgIT0gbnVsbCAmJlxuICAgICAgICBub2RlLmluaXQudHlwZSA9PT0gJ0lkZW50aWZpZXInXG4gICAgICApXG4gICAgICBpZiAoIWlzRGVzdHJ1Y3R1cmUpIHJldHVyblxuXG4gICAgICBjb25zdCBvYmplY3ROYW1lID0gbm9kZS5pbml0Lm5hbWVcbiAgICAgIGZvciAoY29uc3QgeyBrZXkgfSBvZiBub2RlLmlkLnByb3BlcnRpZXMpIHtcbiAgICAgICAgaWYgKGtleSA9PSBudWxsKSBjb250aW51ZSAgLy8gdHJ1ZSBmb3IgcmVzdCBwcm9wZXJ0aWVzXG4gICAgICAgIHN0b3JlUHJvcGVydHlMb29rdXAob2JqZWN0TmFtZSwga2V5Lm5hbWUsIGtleSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBoYW5kbGVQcm9ncmFtRXhpdCgpIHtcbiAgICAgIGFsbFByb3BlcnR5TG9va3Vwcy5mb3JFYWNoKChsb29rdXBzLCBvYmplY3ROYW1lKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpbGVJbXBvcnQgPSBmaWxlSW1wb3J0cy5nZXQob2JqZWN0TmFtZSlcbiAgICAgICAgaWYgKGZpbGVJbXBvcnQgPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgICAgZm9yIChjb25zdCB7cHJvcE5hbWUsIG5vZGV9IG9mIGxvb2t1cHMpIHtcbiAgICAgICAgICAvLyB0aGUgZGVmYXVsdCBpbXBvcnQgY2FuIGhhdmUgYSBcImRlZmF1bHRcIiBwcm9wZXJ0eVxuICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ2RlZmF1bHQnKSBjb250aW51ZVxuICAgICAgICAgIGlmICghZmlsZUltcG9ydC5leHBvcnRNYXAubmFtZXNwYWNlLmhhcyhwcm9wTmFtZSkpIGNvbnRpbnVlXG5cbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICBgQ2F1dGlvbjogXFxgJHtvYmplY3ROYW1lfVxcYCBhbHNvIGhhcyBhIG5hbWVkIGV4cG9ydCBgICtcbiAgICAgICAgICAgICAgYFxcYCR7cHJvcE5hbWV9XFxgLiBDaGVjayBpZiB5b3UgbWVhbnQgdG8gd3JpdGUgYCArXG4gICAgICAgICAgICAgIGBcXGBpbXBvcnQgeyR7cHJvcE5hbWV9fSBmcm9tICcke2ZpbGVJbXBvcnQuc291cmNlUGF0aH0nXFxgIGAgK1xuICAgICAgICAgICAgICAnaW5zdGVhZC4nXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJzogaGFuZGxlSW1wb3J0RGVmYXVsdCxcbiAgICAgICdNZW1iZXJFeHByZXNzaW9uJzogaGFuZGxlUHJvcExvb2t1cCxcbiAgICAgICdWYXJpYWJsZURlY2xhcmF0b3InOiBoYW5kbGVEZXN0cnVjdHVyaW5nQXNzaWdubWVudCxcbiAgICAgICdQcm9ncmFtOmV4aXQnOiBoYW5kbGVQcm9ncmFtRXhpdCxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-named-as-default.js b/node_modules/eslint-plugin-import/lib/rules/no-named-as-default.js index 8376f9dc..0b8d213c 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-named-as-default.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-named-as-default.js @@ -1,27 +1,15 @@ -'use strict'; - -var _ExportMap = require('../ExportMap'); - -var _ExportMap2 = _interopRequireDefault(_ExportMap); - -var _importDeclaration = require('../importDeclaration'); - -var _importDeclaration2 = _interopRequireDefault(_importDeclaration); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); +var _importDeclaration = require('../importDeclaration');var _importDeclaration2 = _interopRequireDefault(_importDeclaration); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('no-named-as-default') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-named-as-default') }, + + schema: [] }, + create: function (context) { function checkDefault(nameKey, defaultSpecifier) { @@ -38,15 +26,18 @@ module.exports = { return; } - if (imports.has('default') && imports.has(defaultSpecifier[nameKey].name)) { + if (imports.has('default') && + imports.has(defaultSpecifier[nameKey].name)) { + + context.report(defaultSpecifier, + 'Using exported name \'' + defaultSpecifier[nameKey].name + + '\' as identifier for default export.'); - context.report(defaultSpecifier, 'Using exported name \'' + defaultSpecifier[nameKey].name + '\' as identifier for default export.'); } } return { 'ImportDefaultSpecifier': checkDefault.bind(null, 'local'), - 'ExportDefaultSpecifier': checkDefault.bind(null, 'exported') - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwiY2hlY2tEZWZhdWx0IiwibmFtZUtleSIsImRlZmF1bHRTcGVjaWZpZXIiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInNvdXJjZSIsInZhbHVlIiwiZXJyb3JzIiwibGVuZ3RoIiwicmVwb3J0RXJyb3JzIiwiaGFzIiwicmVwb3J0IiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7Ozs7OztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxxQkFBUjtBQURELEtBRkY7QUFLSkMsWUFBUTtBQUxKLEdBRFM7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixhQUFTQyxZQUFULENBQXNCQyxPQUF0QixFQUErQkMsZ0JBQS9CLEVBQWlEO0FBQy9DO0FBQ0EsVUFBSUEsaUJBQWlCRCxPQUFqQixFQUEwQkUsSUFBMUIsS0FBbUMsU0FBdkMsRUFBa0Q7O0FBRWxELFVBQUlDLGNBQWMsaUNBQWtCTCxPQUFsQixDQUFsQjs7QUFFQSxVQUFJTSxVQUFVQyxvQkFBUUMsR0FBUixDQUFZSCxZQUFZSSxNQUFaLENBQW1CQyxLQUEvQixFQUFzQ1YsT0FBdEMsQ0FBZDtBQUNBLFVBQUlNLFdBQVcsSUFBZixFQUFxQjs7QUFFckIsVUFBSUEsUUFBUUssTUFBUixDQUFlQyxNQUFuQixFQUEyQjtBQUN6Qk4sZ0JBQVFPLFlBQVIsQ0FBcUJiLE9BQXJCLEVBQThCSyxXQUE5QjtBQUNBO0FBQ0Q7O0FBRUQsVUFBSUMsUUFBUVEsR0FBUixDQUFZLFNBQVosS0FDQVIsUUFBUVEsR0FBUixDQUFZWCxpQkFBaUJELE9BQWpCLEVBQTBCRSxJQUF0QyxDQURKLEVBQ2lEOztBQUUvQ0osZ0JBQVFlLE1BQVIsQ0FBZVosZ0JBQWYsRUFDRSwyQkFBMkJBLGlCQUFpQkQsT0FBakIsRUFBMEJFLElBQXJELEdBQ0Esc0NBRkY7QUFJRDtBQUNGO0FBQ0QsV0FBTztBQUNMLGdDQUEwQkgsYUFBYWUsSUFBYixDQUFrQixJQUFsQixFQUF3QixPQUF4QixDQURyQjtBQUVMLGdDQUEwQmYsYUFBYWUsSUFBYixDQUFrQixJQUFsQixFQUF3QixVQUF4QjtBQUZyQixLQUFQO0FBSUQ7QUFyQ2MsQ0FBakIiLCJmaWxlIjoibm8tbmFtZWQtYXMtZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCBpbXBvcnREZWNsYXJhdGlvbiBmcm9tICcuLi9pbXBvcnREZWNsYXJhdGlvbidcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbmFtZWQtYXMtZGVmYXVsdCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgZnVuY3Rpb24gY2hlY2tEZWZhdWx0KG5hbWVLZXksIGRlZmF1bHRTcGVjaWZpZXIpIHtcbiAgICAgIC8vICM1NjY6IGRlZmF1bHQgaXMgYSB2YWxpZCBzcGVjaWZpZXJcbiAgICAgIGlmIChkZWZhdWx0U3BlY2lmaWVyW25hbWVLZXldLm5hbWUgPT09ICdkZWZhdWx0JykgcmV0dXJuXG5cbiAgICAgIHZhciBkZWNsYXJhdGlvbiA9IGltcG9ydERlY2xhcmF0aW9uKGNvbnRleHQpXG5cbiAgICAgIHZhciBpbXBvcnRzID0gRXhwb3J0cy5nZXQoZGVjbGFyYXRpb24uc291cmNlLnZhbHVlLCBjb250ZXh0KVxuICAgICAgaWYgKGltcG9ydHMgPT0gbnVsbCkgcmV0dXJuXG5cbiAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgaW1wb3J0cy5yZXBvcnRFcnJvcnMoY29udGV4dCwgZGVjbGFyYXRpb24pXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAoaW1wb3J0cy5oYXMoJ2RlZmF1bHQnKSAmJlxuICAgICAgICAgIGltcG9ydHMuaGFzKGRlZmF1bHRTcGVjaWZpZXJbbmFtZUtleV0ubmFtZSkpIHtcblxuICAgICAgICBjb250ZXh0LnJlcG9ydChkZWZhdWx0U3BlY2lmaWVyLFxuICAgICAgICAgICdVc2luZyBleHBvcnRlZCBuYW1lIFxcJycgKyBkZWZhdWx0U3BlY2lmaWVyW25hbWVLZXldLm5hbWUgK1xuICAgICAgICAgICdcXCcgYXMgaWRlbnRpZmllciBmb3IgZGVmYXVsdCBleHBvcnQuJylcblxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnbG9jYWwnKSxcbiAgICAgICdFeHBvcnREZWZhdWx0U3BlY2lmaWVyJzogY2hlY2tEZWZhdWx0LmJpbmQobnVsbCwgJ2V4cG9ydGVkJyksXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + 'ExportDefaultSpecifier': checkDefault.bind(null, 'exported') }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0IiwiY2hlY2tEZWZhdWx0IiwibmFtZUtleSIsImRlZmF1bHRTcGVjaWZpZXIiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJpbXBvcnRzIiwiRXhwb3J0cyIsImdldCIsInNvdXJjZSIsInZhbHVlIiwiZXJyb3JzIiwibGVuZ3RoIiwicmVwb3J0RXJyb3JzIiwiaGFzIiwicmVwb3J0IiwiYmluZCJdLCJtYXBwaW5ncyI6ImFBQUEseUM7QUFDQSx5RDtBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxxQkFBUixDQURELEVBRkY7O0FBS0pDLFlBQVEsRUFMSixFQURTOzs7QUFTZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLGFBQVNDLFlBQVQsQ0FBc0JDLE9BQXRCLEVBQStCQyxnQkFBL0IsRUFBaUQ7QUFDL0M7QUFDQSxVQUFJQSxpQkFBaUJELE9BQWpCLEVBQTBCRSxJQUExQixLQUFtQyxTQUF2QyxFQUFrRDs7QUFFbEQsVUFBSUMsY0FBYyxpQ0FBa0JMLE9BQWxCLENBQWxCOztBQUVBLFVBQUlNLFVBQVVDLG9CQUFRQyxHQUFSLENBQVlILFlBQVlJLE1BQVosQ0FBbUJDLEtBQS9CLEVBQXNDVixPQUF0QyxDQUFkO0FBQ0EsVUFBSU0sV0FBVyxJQUFmLEVBQXFCOztBQUVyQixVQUFJQSxRQUFRSyxNQUFSLENBQWVDLE1BQW5CLEVBQTJCO0FBQ3pCTixnQkFBUU8sWUFBUixDQUFxQmIsT0FBckIsRUFBOEJLLFdBQTlCO0FBQ0E7QUFDRDs7QUFFRCxVQUFJQyxRQUFRUSxHQUFSLENBQVksU0FBWjtBQUNBUixjQUFRUSxHQUFSLENBQVlYLGlCQUFpQkQsT0FBakIsRUFBMEJFLElBQXRDLENBREosRUFDaUQ7O0FBRS9DSixnQkFBUWUsTUFBUixDQUFlWixnQkFBZjtBQUNFLG1DQUEyQkEsaUJBQWlCRCxPQUFqQixFQUEwQkUsSUFBckQ7QUFDQSw4Q0FGRjs7QUFJRDtBQUNGO0FBQ0QsV0FBTztBQUNMLGdDQUEwQkgsYUFBYWUsSUFBYixDQUFrQixJQUFsQixFQUF3QixPQUF4QixDQURyQjtBQUVMLGdDQUEwQmYsYUFBYWUsSUFBYixDQUFrQixJQUFsQixFQUF3QixVQUF4QixDQUZyQixFQUFQOztBQUlELEdBckNjLEVBQWpCIiwiZmlsZSI6Im5vLW5hbWVkLWFzLWRlZmF1bHQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnXG5pbXBvcnQgaW1wb3J0RGVjbGFyYXRpb24gZnJvbSAnLi4vaW1wb3J0RGVjbGFyYXRpb24nXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLW5hbWVkLWFzLWRlZmF1bHQnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGZ1bmN0aW9uIGNoZWNrRGVmYXVsdChuYW1lS2V5LCBkZWZhdWx0U3BlY2lmaWVyKSB7XG4gICAgICAvLyAjNTY2OiBkZWZhdWx0IGlzIGEgdmFsaWQgc3BlY2lmaWVyXG4gICAgICBpZiAoZGVmYXVsdFNwZWNpZmllcltuYW1lS2V5XS5uYW1lID09PSAnZGVmYXVsdCcpIHJldHVyblxuXG4gICAgICB2YXIgZGVjbGFyYXRpb24gPSBpbXBvcnREZWNsYXJhdGlvbihjb250ZXh0KVxuXG4gICAgICB2YXIgaW1wb3J0cyA9IEV4cG9ydHMuZ2V0KGRlY2xhcmF0aW9uLnNvdXJjZS52YWx1ZSwgY29udGV4dClcbiAgICAgIGlmIChpbXBvcnRzID09IG51bGwpIHJldHVyblxuXG4gICAgICBpZiAoaW1wb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGltcG9ydHMucmVwb3J0RXJyb3JzKGNvbnRleHQsIGRlY2xhcmF0aW9uKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKGltcG9ydHMuaGFzKCdkZWZhdWx0JykgJiZcbiAgICAgICAgICBpbXBvcnRzLmhhcyhkZWZhdWx0U3BlY2lmaWVyW25hbWVLZXldLm5hbWUpKSB7XG5cbiAgICAgICAgY29udGV4dC5yZXBvcnQoZGVmYXVsdFNwZWNpZmllcixcbiAgICAgICAgICAnVXNpbmcgZXhwb3J0ZWQgbmFtZSBcXCcnICsgZGVmYXVsdFNwZWNpZmllcltuYW1lS2V5XS5uYW1lICtcbiAgICAgICAgICAnXFwnIGFzIGlkZW50aWZpZXIgZm9yIGRlZmF1bHQgZXhwb3J0LicpXG5cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJzogY2hlY2tEZWZhdWx0LmJpbmQobnVsbCwgJ2xvY2FsJyksXG4gICAgICAnRXhwb3J0RGVmYXVsdFNwZWNpZmllcic6IGNoZWNrRGVmYXVsdC5iaW5kKG51bGwsICdleHBvcnRlZCcpLFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-named-default.js b/node_modules/eslint-plugin-import/lib/rules/no-named-default.js index 63565dfa..e877c7b3 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-named-default.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-named-default.js @@ -1,19 +1,13 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-named-default') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-named-default') }, + + schema: [] }, + create: function (context) { return { @@ -25,8 +19,7 @@ module.exports = { message: `Use default import syntax to import '${im.local.name}'.` }); } }); - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0Iiwibm9kZSIsInNwZWNpZmllcnMiLCJmb3JFYWNoIiwiaW0iLCJpbXBvcnRlZCIsIm5hbWUiLCJyZXBvcnQiLCJsb2NhbCIsIm1lc3NhZ2UiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7OztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxrQkFBUjtBQURELEtBRkY7QUFLSkMsWUFBUTtBQUxKLEdBRFM7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QixXQUFPO0FBQ0wsMkJBQXFCLFVBQVVDLElBQVYsRUFBZ0I7QUFDbkNBLGFBQUtDLFVBQUwsQ0FBZ0JDLE9BQWhCLENBQXdCLFVBQVVDLEVBQVYsRUFBYztBQUNwQyxjQUFJQSxHQUFHVCxJQUFILEtBQVksaUJBQVosSUFBaUNTLEdBQUdDLFFBQUgsQ0FBWUMsSUFBWixLQUFxQixTQUExRCxFQUFxRTtBQUNuRU4sb0JBQVFPLE1BQVIsQ0FBZTtBQUNiTixvQkFBTUcsR0FBR0ksS0FESTtBQUViQyx1QkFBVSx3Q0FBdUNMLEdBQUdJLEtBQUgsQ0FBU0YsSUFBSyxJQUZsRCxFQUFmO0FBR0Q7QUFDRixTQU5EO0FBT0Q7QUFUSSxLQUFQO0FBV0Q7QUFyQmMsQ0FBakIiLCJmaWxlIjoibm8tbmFtZWQtZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbmFtZWQtZGVmYXVsdCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdJbXBvcnREZWNsYXJhdGlvbic6IGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIG5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKGZ1bmN0aW9uIChpbSkge1xuICAgICAgICAgIGlmIChpbS50eXBlID09PSAnSW1wb3J0U3BlY2lmaWVyJyAmJiBpbS5pbXBvcnRlZC5uYW1lID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgICAgbm9kZTogaW0ubG9jYWwsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGBVc2UgZGVmYXVsdCBpbXBvcnQgc3ludGF4IHRvIGltcG9ydCAnJHtpbS5sb2NhbC5uYW1lfScuYCB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0Iiwibm9kZSIsInNwZWNpZmllcnMiLCJmb3JFYWNoIiwiaW0iLCJpbXBvcnRlZCIsIm5hbWUiLCJyZXBvcnQiLCJsb2NhbCIsIm1lc3NhZ2UiXSwibWFwcGluZ3MiOiJhQUFBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSxrQkFBUixDQURELEVBRkY7O0FBS0pDLFlBQVEsRUFMSixFQURTOzs7QUFTZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLFdBQU87QUFDTCwyQkFBcUIsVUFBVUMsSUFBVixFQUFnQjtBQUNuQ0EsYUFBS0MsVUFBTCxDQUFnQkMsT0FBaEIsQ0FBd0IsVUFBVUMsRUFBVixFQUFjO0FBQ3BDLGNBQUlBLEdBQUdULElBQUgsS0FBWSxpQkFBWixJQUFpQ1MsR0FBR0MsUUFBSCxDQUFZQyxJQUFaLEtBQXFCLFNBQTFELEVBQXFFO0FBQ25FTixvQkFBUU8sTUFBUixDQUFlO0FBQ2JOLG9CQUFNRyxHQUFHSSxLQURJO0FBRWJDLHVCQUFVLHdDQUF1Q0wsR0FBR0ksS0FBSCxDQUFTRixJQUFLLElBRmxELEVBQWY7QUFHRDtBQUNGLFNBTkQ7QUFPRCxPQVRJLEVBQVA7O0FBV0QsR0FyQmMsRUFBakIiLCJmaWxlIjoibm8tbmFtZWQtZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbmFtZWQtZGVmYXVsdCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdJbXBvcnREZWNsYXJhdGlvbic6IGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIG5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKGZ1bmN0aW9uIChpbSkge1xuICAgICAgICAgIGlmIChpbS50eXBlID09PSAnSW1wb3J0U3BlY2lmaWVyJyAmJiBpbS5pbXBvcnRlZC5uYW1lID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgICAgbm9kZTogaW0ubG9jYWwsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGBVc2UgZGVmYXVsdCBpbXBvcnQgc3ludGF4IHRvIGltcG9ydCAnJHtpbS5sb2NhbC5uYW1lfScuYCB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-named-export.js b/node_modules/eslint-plugin-import/lib/rules/no-named-export.js index b9ec45b3..8139a6b9 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-named-export.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-named-export.js @@ -1,17 +1,11 @@ -'use strict'; - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { url: (0, _docsUrl2.default)('no-named-export') }, - schema: [] - }, + schema: [] }, + create(context) { // ignore non-modules @@ -35,8 +29,7 @@ module.exports = { if (someNamed) { context.report({ node, message }); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1leHBvcnQuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJwYXJzZXJPcHRpb25zIiwic291cmNlVHlwZSIsIm1lc3NhZ2UiLCJFeHBvcnRBbGxEZWNsYXJhdGlvbiIsIm5vZGUiLCJyZXBvcnQiLCJFeHBvcnROYW1lZERlY2xhcmF0aW9uIiwic3BlY2lmaWVycyIsImxlbmd0aCIsInNvbWVOYW1lZCIsInNvbWUiLCJzcGVjaWZpZXIiLCJleHBvcnRlZCIsIm5hbWUiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7OztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU0sRUFBRUMsS0FBSyx1QkFBUSxpQkFBUixDQUFQLEVBRkY7QUFHSkMsWUFBUTtBQUhKLEdBRFM7O0FBT2ZDLFNBQU9DLE9BQVAsRUFBZ0I7QUFDZDtBQUNBLFFBQUlBLFFBQVFDLGFBQVIsQ0FBc0JDLFVBQXRCLEtBQXFDLFFBQXpDLEVBQW1EO0FBQ2pELGFBQU8sRUFBUDtBQUNEOztBQUVELFVBQU1DLFVBQVUsZ0NBQWhCOztBQUVBLFdBQU87QUFDTEMsMkJBQXFCQyxJQUFyQixFQUEyQjtBQUN6QkwsZ0JBQVFNLE1BQVIsQ0FBZSxFQUFDRCxJQUFELEVBQU9GLE9BQVAsRUFBZjtBQUNELE9BSEk7O0FBS0xJLDZCQUF1QkYsSUFBdkIsRUFBNkI7QUFDM0IsWUFBSUEsS0FBS0csVUFBTCxDQUFnQkMsTUFBaEIsS0FBMkIsQ0FBL0IsRUFBa0M7QUFDaEMsaUJBQU9ULFFBQVFNLE1BQVIsQ0FBZSxFQUFDRCxJQUFELEVBQU9GLE9BQVAsRUFBZixDQUFQO0FBQ0Q7O0FBRUQsY0FBTU8sWUFBWUwsS0FBS0csVUFBTCxDQUFnQkcsSUFBaEIsQ0FBcUJDLGFBQWFBLFVBQVVDLFFBQVYsQ0FBbUJDLElBQW5CLEtBQTRCLFNBQTlELENBQWxCO0FBQ0EsWUFBSUosU0FBSixFQUFlO0FBQ2JWLGtCQUFRTSxNQUFSLENBQWUsRUFBQ0QsSUFBRCxFQUFPRixPQUFQLEVBQWY7QUFDRDtBQUNGO0FBZEksS0FBUDtBQWdCRDtBQS9CYyxDQUFqQiIsImZpbGUiOiJuby1uYW1lZC1leHBvcnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7IHVybDogZG9jc1VybCgnbm8tbmFtZWQtZXhwb3J0JykgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZShjb250ZXh0KSB7XG4gICAgLy8gaWdub3JlIG5vbi1tb2R1bGVzXG4gICAgaWYgKGNvbnRleHQucGFyc2VyT3B0aW9ucy5zb3VyY2VUeXBlICE9PSAnbW9kdWxlJykge1xuICAgICAgcmV0dXJuIHt9XG4gICAgfVxuXG4gICAgY29uc3QgbWVzc2FnZSA9ICdOYW1lZCBleHBvcnRzIGFyZSBub3QgYWxsb3dlZC4nXG5cbiAgICByZXR1cm4ge1xuICAgICAgRXhwb3J0QWxsRGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7bm9kZSwgbWVzc2FnZX0pXG4gICAgICB9LFxuXG4gICAgICBFeHBvcnROYW1lZERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgaWYgKG5vZGUuc3BlY2lmaWVycy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICByZXR1cm4gY29udGV4dC5yZXBvcnQoe25vZGUsIG1lc3NhZ2V9KVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc29tZU5hbWVkID0gbm9kZS5zcGVjaWZpZXJzLnNvbWUoc3BlY2lmaWVyID0+IHNwZWNpZmllci5leHBvcnRlZC5uYW1lICE9PSAnZGVmYXVsdCcpXG4gICAgICAgIGlmIChzb21lTmFtZWQpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7bm9kZSwgbWVzc2FnZX0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1leHBvcnQuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJwYXJzZXJPcHRpb25zIiwic291cmNlVHlwZSIsIm1lc3NhZ2UiLCJFeHBvcnRBbGxEZWNsYXJhdGlvbiIsIm5vZGUiLCJyZXBvcnQiLCJFeHBvcnROYW1lZERlY2xhcmF0aW9uIiwic3BlY2lmaWVycyIsImxlbmd0aCIsInNvbWVOYW1lZCIsInNvbWUiLCJzcGVjaWZpZXIiLCJleHBvcnRlZCIsIm5hbWUiXSwibWFwcGluZ3MiOiJhQUFBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxZQURGO0FBRUpDLFVBQU0sRUFBRUMsS0FBSyx1QkFBUSxpQkFBUixDQUFQLEVBRkY7QUFHSkMsWUFBUSxFQUhKLEVBRFM7OztBQU9mQyxTQUFPQyxPQUFQLEVBQWdCO0FBQ2Q7QUFDQSxRQUFJQSxRQUFRQyxhQUFSLENBQXNCQyxVQUF0QixLQUFxQyxRQUF6QyxFQUFtRDtBQUNqRCxhQUFPLEVBQVA7QUFDRDs7QUFFRCxVQUFNQyxVQUFVLGdDQUFoQjs7QUFFQSxXQUFPO0FBQ0xDLDJCQUFxQkMsSUFBckIsRUFBMkI7QUFDekJMLGdCQUFRTSxNQUFSLENBQWUsRUFBQ0QsSUFBRCxFQUFPRixPQUFQLEVBQWY7QUFDRCxPQUhJOztBQUtMSSw2QkFBdUJGLElBQXZCLEVBQTZCO0FBQzNCLFlBQUlBLEtBQUtHLFVBQUwsQ0FBZ0JDLE1BQWhCLEtBQTJCLENBQS9CLEVBQWtDO0FBQ2hDLGlCQUFPVCxRQUFRTSxNQUFSLENBQWUsRUFBQ0QsSUFBRCxFQUFPRixPQUFQLEVBQWYsQ0FBUDtBQUNEOztBQUVELGNBQU1PLFlBQVlMLEtBQUtHLFVBQUwsQ0FBZ0JHLElBQWhCLENBQXFCQyxhQUFhQSxVQUFVQyxRQUFWLENBQW1CQyxJQUFuQixLQUE0QixTQUE5RCxDQUFsQjtBQUNBLFlBQUlKLFNBQUosRUFBZTtBQUNiVixrQkFBUU0sTUFBUixDQUFlLEVBQUNELElBQUQsRUFBT0YsT0FBUCxFQUFmO0FBQ0Q7QUFDRixPQWRJLEVBQVA7O0FBZ0JELEdBL0JjLEVBQWpCIiwiZmlsZSI6Im5vLW5hbWVkLWV4cG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHsgdXJsOiBkb2NzVXJsKCduby1uYW1lZC1leHBvcnQnKSB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlKGNvbnRleHQpIHtcbiAgICAvLyBpZ25vcmUgbm9uLW1vZHVsZXNcbiAgICBpZiAoY29udGV4dC5wYXJzZXJPcHRpb25zLnNvdXJjZVR5cGUgIT09ICdtb2R1bGUnKSB7XG4gICAgICByZXR1cm4ge31cbiAgICB9XG5cbiAgICBjb25zdCBtZXNzYWdlID0gJ05hbWVkIGV4cG9ydHMgYXJlIG5vdCBhbGxvd2VkLidcblxuICAgIHJldHVybiB7XG4gICAgICBFeHBvcnRBbGxEZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtub2RlLCBtZXNzYWdlfSlcbiAgICAgIH0sXG5cbiAgICAgIEV4cG9ydE5hbWVkRGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgICBpZiAobm9kZS5zcGVjaWZpZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIHJldHVybiBjb250ZXh0LnJlcG9ydCh7bm9kZSwgbWVzc2FnZX0pXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzb21lTmFtZWQgPSBub2RlLnNwZWNpZmllcnMuc29tZShzcGVjaWZpZXIgPT4gc3BlY2lmaWVyLmV4cG9ydGVkLm5hbWUgIT09ICdkZWZhdWx0JylcbiAgICAgICAgaWYgKHNvbWVOYW1lZCkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtub2RlLCBtZXNzYWdlfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-namespace.js b/node_modules/eslint-plugin-import/lib/rules/no-namespace.js index b25a26e1..2a24bf8c 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-namespace.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-namespace.js @@ -1,36 +1,32 @@ 'use strict'; -var _docsUrl = require('../docsUrl'); -var _docsUrl2 = _interopRequireDefault(_docsUrl); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } } /** - * @fileoverview Rule to disallow namespace import - * @author Radek Benkel - */ - -//------------------------------------------------------------------------------ +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];return arr2;} else {return Array.from(arr);}} /** + * @fileoverview Rule to disallow namespace import + * @author Radek Benkel + */ //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ - module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-namespace') - }, + url: (0, _docsUrl2.default)('no-namespace') }, + fixable: 'code', - schema: [] - }, + schema: [] }, + create: function (context) { return { 'ImportNamespaceSpecifier': function (node) { const scopeVariables = context.getScope().variables; - const namespaceVariable = scopeVariables.find(variable => variable.defs[0].node === node); + const namespaceVariable = scopeVariables.find(variable => + variable.defs[0].node === node); + const namespaceReferences = namespaceVariable.references; const namespaceIdentifiers = namespaceReferences.map(reference => reference.identifier); const canFix = namespaceIdentifiers.length > 0 && !usesNamespaceAsObject(namespaceIdentifiers); @@ -60,10 +56,18 @@ module.exports = { // Choose new names for each import const importNames = Object.keys(importNameConflicts); - const importLocalNames = generateLocalNames(importNames, importNameConflicts, namespaceVariable.name); + const importLocalNames = generateLocalNames( + importNames, + importNameConflicts, + namespaceVariable.name); + // Replace the ImportNamespaceSpecifier with a list of ImportSpecifiers - const namedImportSpecifiers = importNames.map(importName => importName === importLocalNames[importName] ? importName : `${importName} as ${importLocalNames[importName]}`); + const namedImportSpecifiers = importNames.map(importName => + importName === importLocalNames[importName] ? + importName : + `${importName} as ${importLocalNames[importName]}`); + fixes.push(fixer.replaceText(node, `{ ${namedImportSpecifiers.join(', ')} }`)); // Pass 2: Replace references to the namespace with references to the named imports @@ -76,38 +80,44 @@ module.exports = { }); return fixes; - }) - }); - } - }; + }) }); + + } }; + } + /** - * @param {Identifier[]} namespaceIdentifiers - * @returns {boolean} `true` if the namespace variable is more than just a glorified constant - */ -};function usesNamespaceAsObject(namespaceIdentifiers) { + * @param {Identifier[]} namespaceIdentifiers + * @returns {boolean} `true` if the namespace variable is more than just a glorified constant + */ }; +function usesNamespaceAsObject(namespaceIdentifiers) { return !namespaceIdentifiers.every(identifier => { const parent = identifier.parent; // `namespace.x` or `namespace['x']` - return parent && parent.type === 'MemberExpression' && (parent.property.type === 'Identifier' || parent.property.type === 'Literal'); + return ( + parent && parent.type === 'MemberExpression' && ( + parent.property.type === 'Identifier' || parent.property.type === 'Literal')); + }); } /** - * @param {MemberExpression} memberExpression - * @returns {string} the name of the member in the object expression, e.g. the `x` in `namespace.x` - */ + * @param {MemberExpression} memberExpression + * @returns {string} the name of the member in the object expression, e.g. the `x` in `namespace.x` + */ function getMemberPropertyName(memberExpression) { - return memberExpression.property.type === 'Identifier' ? memberExpression.property.name : memberExpression.property.value; + return memberExpression.property.type === 'Identifier' ? + memberExpression.property.name : + memberExpression.property.value; } /** - * @param {ScopeManager} scopeManager - * @param {ASTNode} node - * @return {Set} - */ + * @param {ScopeManager} scopeManager + * @param {ASTNode} node + * @return {Set} + */ function getVariableNamesInScope(scopeManager, node) { let currentNode = node; let scope = scopeManager.acquire(currentNode); @@ -115,15 +125,18 @@ function getVariableNamesInScope(scopeManager, node) { currentNode = currentNode.parent; scope = scopeManager.acquire(currentNode, true); } - return new Set([].concat(_toConsumableArray(scope.variables.map(variable => variable.name)), _toConsumableArray(scope.upper.variables.map(variable => variable.name)))); + return new Set([].concat(_toConsumableArray( + scope.variables.map(variable => variable.name)), _toConsumableArray( + scope.upper.variables.map(variable => variable.name)))); + } /** - * - * @param {*} names - * @param {*} nameConflicts - * @param {*} namespaceName - */ + * + * @param {*} names + * @param {*} nameConflicts + * @param {*} namespaceName + */ function generateLocalNames(names, nameConflicts, namespaceName) { const localNames = {}; names.forEach(name => { @@ -144,4 +157,4 @@ function generateLocalNames(names, nameConflicts, namespaceName) { }); return localNames; } -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lc3BhY2UuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsImZpeGFibGUiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0Iiwibm9kZSIsInNjb3BlVmFyaWFibGVzIiwiZ2V0U2NvcGUiLCJ2YXJpYWJsZXMiLCJuYW1lc3BhY2VWYXJpYWJsZSIsImZpbmQiLCJ2YXJpYWJsZSIsImRlZnMiLCJuYW1lc3BhY2VSZWZlcmVuY2VzIiwicmVmZXJlbmNlcyIsIm5hbWVzcGFjZUlkZW50aWZpZXJzIiwibWFwIiwicmVmZXJlbmNlIiwiaWRlbnRpZmllciIsImNhbkZpeCIsImxlbmd0aCIsInVzZXNOYW1lc3BhY2VBc09iamVjdCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJmaXgiLCJmaXhlciIsInNjb3BlTWFuYWdlciIsImdldFNvdXJjZUNvZGUiLCJmaXhlcyIsImltcG9ydE5hbWVDb25mbGljdHMiLCJmb3JFYWNoIiwicGFyZW50IiwiaW1wb3J0TmFtZSIsImdldE1lbWJlclByb3BlcnR5TmFtZSIsImxvY2FsQ29uZmxpY3RzIiwiZ2V0VmFyaWFibGVOYW1lc0luU2NvcGUiLCJjIiwiYWRkIiwiaW1wb3J0TmFtZXMiLCJPYmplY3QiLCJrZXlzIiwiaW1wb3J0TG9jYWxOYW1lcyIsImdlbmVyYXRlTG9jYWxOYW1lcyIsIm5hbWUiLCJuYW1lZEltcG9ydFNwZWNpZmllcnMiLCJwdXNoIiwicmVwbGFjZVRleHQiLCJqb2luIiwiZXZlcnkiLCJwcm9wZXJ0eSIsIm1lbWJlckV4cHJlc3Npb24iLCJ2YWx1ZSIsImN1cnJlbnROb2RlIiwic2NvcGUiLCJhY3F1aXJlIiwiU2V0IiwidXBwZXIiLCJuYW1lcyIsIm5hbWVDb25mbGljdHMiLCJuYW1lc3BhY2VOYW1lIiwibG9jYWxOYW1lcyIsImxvY2FsTmFtZSIsImhhcyIsImkiLCJJbmZpbml0eSJdLCJtYXBwaW5ncyI6Ijs7QUFLQTs7Ozs7O2dNQUxBOzs7OztBQU9BO0FBQ0E7QUFDQTs7O0FBR0FBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLGNBQVI7QUFERCxLQUZGO0FBS0pDLGFBQVMsTUFMTDtBQU1KQyxZQUFRO0FBTkosR0FEUzs7QUFVZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCLFdBQU87QUFDTCxrQ0FBNEIsVUFBVUMsSUFBVixFQUFnQjtBQUMxQyxjQUFNQyxpQkFBaUJGLFFBQVFHLFFBQVIsR0FBbUJDLFNBQTFDO0FBQ0EsY0FBTUMsb0JBQW9CSCxlQUFlSSxJQUFmLENBQXFCQyxRQUFELElBQzVDQSxTQUFTQyxJQUFULENBQWMsQ0FBZCxFQUFpQlAsSUFBakIsS0FBMEJBLElBREYsQ0FBMUI7QUFHQSxjQUFNUSxzQkFBc0JKLGtCQUFrQkssVUFBOUM7QUFDQSxjQUFNQyx1QkFBdUJGLG9CQUFvQkcsR0FBcEIsQ0FBd0JDLGFBQWFBLFVBQVVDLFVBQS9DLENBQTdCO0FBQ0EsY0FBTUMsU0FBU0oscUJBQXFCSyxNQUFyQixHQUE4QixDQUE5QixJQUFtQyxDQUFDQyxzQkFBc0JOLG9CQUF0QixDQUFuRDs7QUFFQVgsZ0JBQVFrQixNQUFSLENBQWU7QUFDYmpCLGNBRGE7QUFFYmtCLG1CQUFVLDhCQUZHO0FBR2JDLGVBQUtMLFdBQVdNLFNBQVM7QUFDdkIsa0JBQU1DLGVBQWV0QixRQUFRdUIsYUFBUixHQUF3QkQsWUFBN0M7QUFDQSxrQkFBTUUsUUFBUSxFQUFkOztBQUVBO0FBQ0E7QUFDQSxrQkFBTUMsc0JBQXNCLEVBQTVCO0FBQ0FkLGlDQUFxQmUsT0FBckIsQ0FBOEJaLFVBQUQsSUFBZ0I7QUFDM0Msb0JBQU1hLFNBQVNiLFdBQVdhLE1BQTFCO0FBQ0Esa0JBQUlBLFVBQVVBLE9BQU9qQyxJQUFQLEtBQWdCLGtCQUE5QixFQUFrRDtBQUNoRCxzQkFBTWtDLGFBQWFDLHNCQUFzQkYsTUFBdEIsQ0FBbkI7QUFDQSxzQkFBTUcsaUJBQWlCQyx3QkFBd0JULFlBQXhCLEVBQXNDSyxNQUF0QyxDQUF2QjtBQUNBLG9CQUFJLENBQUNGLG9CQUFvQkcsVUFBcEIsQ0FBTCxFQUFzQztBQUNwQ0gsc0NBQW9CRyxVQUFwQixJQUFrQ0UsY0FBbEM7QUFDRCxpQkFGRCxNQUVPO0FBQ0xBLGlDQUFlSixPQUFmLENBQXdCTSxDQUFELElBQU9QLG9CQUFvQkcsVUFBcEIsRUFBZ0NLLEdBQWhDLENBQW9DRCxDQUFwQyxDQUE5QjtBQUNEO0FBQ0Y7QUFDRixhQVhEOztBQWFBO0FBQ0Esa0JBQU1FLGNBQWNDLE9BQU9DLElBQVAsQ0FBWVgsbUJBQVosQ0FBcEI7QUFDQSxrQkFBTVksbUJBQW1CQyxtQkFDdkJKLFdBRHVCLEVBRXZCVCxtQkFGdUIsRUFHdkJwQixrQkFBa0JrQyxJQUhLLENBQXpCOztBQU1BO0FBQ0Esa0JBQU1DLHdCQUF3Qk4sWUFBWXRCLEdBQVosQ0FBaUJnQixVQUFELElBQzVDQSxlQUFlUyxpQkFBaUJULFVBQWpCLENBQWYsR0FDSUEsVUFESixHQUVLLEdBQUVBLFVBQVcsT0FBTVMsaUJBQWlCVCxVQUFqQixDQUE2QixFQUh6QixDQUE5QjtBQUtBSixrQkFBTWlCLElBQU4sQ0FBV3BCLE1BQU1xQixXQUFOLENBQWtCekMsSUFBbEIsRUFBeUIsS0FBSXVDLHNCQUFzQkcsSUFBdEIsQ0FBMkIsSUFBM0IsQ0FBaUMsSUFBOUQsQ0FBWDs7QUFFQTtBQUNBaEMsaUNBQXFCZSxPQUFyQixDQUE4QlosVUFBRCxJQUFnQjtBQUMzQyxvQkFBTWEsU0FBU2IsV0FBV2EsTUFBMUI7QUFDQSxrQkFBSUEsVUFBVUEsT0FBT2pDLElBQVAsS0FBZ0Isa0JBQTlCLEVBQWtEO0FBQ2hELHNCQUFNa0MsYUFBYUMsc0JBQXNCRixNQUF0QixDQUFuQjtBQUNBSCxzQkFBTWlCLElBQU4sQ0FBV3BCLE1BQU1xQixXQUFOLENBQWtCZixNQUFsQixFQUEwQlUsaUJBQWlCVCxVQUFqQixDQUExQixDQUFYO0FBQ0Q7QUFDRixhQU5EOztBQVFBLG1CQUFPSixLQUFQO0FBQ0QsV0E5Q0k7QUFIUSxTQUFmO0FBbUREO0FBN0RJLEtBQVA7QUErREQ7O0FBR0g7Ozs7QUE3RWlCLENBQWpCLENBaUZBLFNBQVNQLHFCQUFULENBQStCTixvQkFBL0IsRUFBcUQ7QUFDbkQsU0FBTyxDQUFDQSxxQkFBcUJpQyxLQUFyQixDQUE0QjlCLFVBQUQsSUFBZ0I7QUFDakQsVUFBTWEsU0FBU2IsV0FBV2EsTUFBMUI7O0FBRUE7QUFDQSxXQUNFQSxVQUFVQSxPQUFPakMsSUFBUCxLQUFnQixrQkFBMUIsS0FDQ2lDLE9BQU9rQixRQUFQLENBQWdCbkQsSUFBaEIsS0FBeUIsWUFBekIsSUFBeUNpQyxPQUFPa0IsUUFBUCxDQUFnQm5ELElBQWhCLEtBQXlCLFNBRG5FLENBREY7QUFJRCxHQVJPLENBQVI7QUFTRDs7QUFFRDs7OztBQUlBLFNBQVNtQyxxQkFBVCxDQUErQmlCLGdCQUEvQixFQUFpRDtBQUMvQyxTQUFPQSxpQkFBaUJELFFBQWpCLENBQTBCbkQsSUFBMUIsS0FBbUMsWUFBbkMsR0FDSG9ELGlCQUFpQkQsUUFBakIsQ0FBMEJOLElBRHZCLEdBRUhPLGlCQUFpQkQsUUFBakIsQ0FBMEJFLEtBRjlCO0FBR0Q7O0FBRUQ7Ozs7O0FBS0EsU0FBU2hCLHVCQUFULENBQWlDVCxZQUFqQyxFQUErQ3JCLElBQS9DLEVBQXFEO0FBQ25ELE1BQUkrQyxjQUFjL0MsSUFBbEI7QUFDQSxNQUFJZ0QsUUFBUTNCLGFBQWE0QixPQUFiLENBQXFCRixXQUFyQixDQUFaO0FBQ0EsU0FBT0MsU0FBUyxJQUFoQixFQUFzQjtBQUNwQkQsa0JBQWNBLFlBQVlyQixNQUExQjtBQUNBc0IsWUFBUTNCLGFBQWE0QixPQUFiLENBQXFCRixXQUFyQixFQUFrQyxJQUFsQyxDQUFSO0FBQ0Q7QUFDRCxTQUFPLElBQUlHLEdBQUosOEJBQ0ZGLE1BQU03QyxTQUFOLENBQWdCUSxHQUFoQixDQUFvQkwsWUFBWUEsU0FBU2dDLElBQXpDLENBREUsc0JBRUZVLE1BQU1HLEtBQU4sQ0FBWWhELFNBQVosQ0FBc0JRLEdBQXRCLENBQTBCTCxZQUFZQSxTQUFTZ0MsSUFBL0MsQ0FGRSxHQUFQO0FBSUQ7O0FBRUQ7Ozs7OztBQU1BLFNBQVNELGtCQUFULENBQTRCZSxLQUE1QixFQUFtQ0MsYUFBbkMsRUFBa0RDLGFBQWxELEVBQWlFO0FBQy9ELFFBQU1DLGFBQWEsRUFBbkI7QUFDQUgsUUFBTTNCLE9BQU4sQ0FBZWEsSUFBRCxJQUFVO0FBQ3RCLFFBQUlrQixTQUFKO0FBQ0EsUUFBSSxDQUFDSCxjQUFjZixJQUFkLEVBQW9CbUIsR0FBcEIsQ0FBd0JuQixJQUF4QixDQUFMLEVBQW9DO0FBQ2xDa0Isa0JBQVlsQixJQUFaO0FBQ0QsS0FGRCxNQUVPLElBQUksQ0FBQ2UsY0FBY2YsSUFBZCxFQUFvQm1CLEdBQXBCLENBQXlCLEdBQUVILGFBQWMsSUFBR2hCLElBQUssRUFBakQsQ0FBTCxFQUEwRDtBQUMvRGtCLGtCQUFhLEdBQUVGLGFBQWMsSUFBR2hCLElBQUssRUFBckM7QUFDRCxLQUZNLE1BRUE7QUFDTCxXQUFLLElBQUlvQixJQUFJLENBQWIsRUFBZ0JBLElBQUlDLFFBQXBCLEVBQThCRCxHQUE5QixFQUFtQztBQUNqQyxZQUFJLENBQUNMLGNBQWNmLElBQWQsRUFBb0JtQixHQUFwQixDQUF5QixHQUFFSCxhQUFjLElBQUdoQixJQUFLLElBQUdvQixDQUFFLEVBQXRELENBQUwsRUFBK0Q7QUFDN0RGLHNCQUFhLEdBQUVGLGFBQWMsSUFBR2hCLElBQUssSUFBR29CLENBQUUsRUFBMUM7QUFDQTtBQUNEO0FBQ0Y7QUFDRjtBQUNESCxlQUFXakIsSUFBWCxJQUFtQmtCLFNBQW5CO0FBQ0QsR0FmRDtBQWdCQSxTQUFPRCxVQUFQO0FBQ0QiLCJmaWxlIjoibm8tbmFtZXNwYWNlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZW92ZXJ2aWV3IFJ1bGUgdG8gZGlzYWxsb3cgbmFtZXNwYWNlIGltcG9ydFxuICogQGF1dGhvciBSYWRlayBCZW5rZWxcbiAqL1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUnVsZSBEZWZpbml0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbmFtZXNwYWNlJyksXG4gICAgfSxcbiAgICBmaXhhYmxlOiAnY29kZScsXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdJbXBvcnROYW1lc3BhY2VTcGVjaWZpZXInOiBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICBjb25zdCBzY29wZVZhcmlhYmxlcyA9IGNvbnRleHQuZ2V0U2NvcGUoKS52YXJpYWJsZXNcbiAgICAgICAgY29uc3QgbmFtZXNwYWNlVmFyaWFibGUgPSBzY29wZVZhcmlhYmxlcy5maW5kKCh2YXJpYWJsZSkgPT5cbiAgICAgICAgICB2YXJpYWJsZS5kZWZzWzBdLm5vZGUgPT09IG5vZGVcbiAgICAgICAgKVxuICAgICAgICBjb25zdCBuYW1lc3BhY2VSZWZlcmVuY2VzID0gbmFtZXNwYWNlVmFyaWFibGUucmVmZXJlbmNlc1xuICAgICAgICBjb25zdCBuYW1lc3BhY2VJZGVudGlmaWVycyA9IG5hbWVzcGFjZVJlZmVyZW5jZXMubWFwKHJlZmVyZW5jZSA9PiByZWZlcmVuY2UuaWRlbnRpZmllcilcbiAgICAgICAgY29uc3QgY2FuRml4ID0gbmFtZXNwYWNlSWRlbnRpZmllcnMubGVuZ3RoID4gMCAmJiAhdXNlc05hbWVzcGFjZUFzT2JqZWN0KG5hbWVzcGFjZUlkZW50aWZpZXJzKVxuXG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIG1lc3NhZ2U6IGBVbmV4cGVjdGVkIG5hbWVzcGFjZSBpbXBvcnQuYCxcbiAgICAgICAgICBmaXg6IGNhbkZpeCAmJiAoZml4ZXIgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc2NvcGVNYW5hZ2VyID0gY29udGV4dC5nZXRTb3VyY2VDb2RlKCkuc2NvcGVNYW5hZ2VyXG4gICAgICAgICAgICBjb25zdCBmaXhlcyA9IFtdXG5cbiAgICAgICAgICAgIC8vIFBhc3MgMTogQ29sbGVjdCB2YXJpYWJsZSBuYW1lcyB0aGF0IGFyZSBhbHJlYWR5IGluIHNjb3BlIGZvciBlYWNoIHJlZmVyZW5jZSB3ZSB3YW50XG4gICAgICAgICAgICAvLyB0byB0cmFuc2Zvcm0sIHNvIHRoYXQgd2UgY2FuIGJlIHN1cmUgdGhhdCB3ZSBjaG9vc2Ugbm9uLWNvbmZsaWN0aW5nIGltcG9ydCBuYW1lc1xuICAgICAgICAgICAgY29uc3QgaW1wb3J0TmFtZUNvbmZsaWN0cyA9IHt9XG4gICAgICAgICAgICBuYW1lc3BhY2VJZGVudGlmaWVycy5mb3JFYWNoKChpZGVudGlmaWVyKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHBhcmVudCA9IGlkZW50aWZpZXIucGFyZW50XG4gICAgICAgICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50LnR5cGUgPT09ICdNZW1iZXJFeHByZXNzaW9uJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGltcG9ydE5hbWUgPSBnZXRNZW1iZXJQcm9wZXJ0eU5hbWUocGFyZW50KVxuICAgICAgICAgICAgICAgIGNvbnN0IGxvY2FsQ29uZmxpY3RzID0gZ2V0VmFyaWFibGVOYW1lc0luU2NvcGUoc2NvcGVNYW5hZ2VyLCBwYXJlbnQpXG4gICAgICAgICAgICAgICAgaWYgKCFpbXBvcnROYW1lQ29uZmxpY3RzW2ltcG9ydE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgICBpbXBvcnROYW1lQ29uZmxpY3RzW2ltcG9ydE5hbWVdID0gbG9jYWxDb25mbGljdHNcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgbG9jYWxDb25mbGljdHMuZm9yRWFjaCgoYykgPT4gaW1wb3J0TmFtZUNvbmZsaWN0c1tpbXBvcnROYW1lXS5hZGQoYykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICAvLyBDaG9vc2UgbmV3IG5hbWVzIGZvciBlYWNoIGltcG9ydFxuICAgICAgICAgICAgY29uc3QgaW1wb3J0TmFtZXMgPSBPYmplY3Qua2V5cyhpbXBvcnROYW1lQ29uZmxpY3RzKVxuICAgICAgICAgICAgY29uc3QgaW1wb3J0TG9jYWxOYW1lcyA9IGdlbmVyYXRlTG9jYWxOYW1lcyhcbiAgICAgICAgICAgICAgaW1wb3J0TmFtZXMsXG4gICAgICAgICAgICAgIGltcG9ydE5hbWVDb25mbGljdHMsXG4gICAgICAgICAgICAgIG5hbWVzcGFjZVZhcmlhYmxlLm5hbWVcbiAgICAgICAgICAgIClcblxuICAgICAgICAgICAgLy8gUmVwbGFjZSB0aGUgSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyIHdpdGggYSBsaXN0IG9mIEltcG9ydFNwZWNpZmllcnNcbiAgICAgICAgICAgIGNvbnN0IG5hbWVkSW1wb3J0U3BlY2lmaWVycyA9IGltcG9ydE5hbWVzLm1hcCgoaW1wb3J0TmFtZSkgPT5cbiAgICAgICAgICAgICAgaW1wb3J0TmFtZSA9PT0gaW1wb3J0TG9jYWxOYW1lc1tpbXBvcnROYW1lXVxuICAgICAgICAgICAgICAgID8gaW1wb3J0TmFtZVxuICAgICAgICAgICAgICAgIDogYCR7aW1wb3J0TmFtZX0gYXMgJHtpbXBvcnRMb2NhbE5hbWVzW2ltcG9ydE5hbWVdfWBcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGZpeGVzLnB1c2goZml4ZXIucmVwbGFjZVRleHQobm9kZSwgYHsgJHtuYW1lZEltcG9ydFNwZWNpZmllcnMuam9pbignLCAnKX0gfWApKVxuXG4gICAgICAgICAgICAvLyBQYXNzIDI6IFJlcGxhY2UgcmVmZXJlbmNlcyB0byB0aGUgbmFtZXNwYWNlIHdpdGggcmVmZXJlbmNlcyB0byB0aGUgbmFtZWQgaW1wb3J0c1xuICAgICAgICAgICAgbmFtZXNwYWNlSWRlbnRpZmllcnMuZm9yRWFjaCgoaWRlbnRpZmllcikgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBwYXJlbnQgPSBpZGVudGlmaWVyLnBhcmVudFxuICAgICAgICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC50eXBlID09PSAnTWVtYmVyRXhwcmVzc2lvbicpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbXBvcnROYW1lID0gZ2V0TWVtYmVyUHJvcGVydHlOYW1lKHBhcmVudClcbiAgICAgICAgICAgICAgICBmaXhlcy5wdXNoKGZpeGVyLnJlcGxhY2VUZXh0KHBhcmVudCwgaW1wb3J0TG9jYWxOYW1lc1tpbXBvcnROYW1lXSkpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIHJldHVybiBmaXhlc1xuICAgICAgICAgIH0pLFxuICAgICAgICB9KVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG5cbi8qKlxuICogQHBhcmFtIHtJZGVudGlmaWVyW119IG5hbWVzcGFjZUlkZW50aWZpZXJzXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gYHRydWVgIGlmIHRoZSBuYW1lc3BhY2UgdmFyaWFibGUgaXMgbW9yZSB0aGFuIGp1c3QgYSBnbG9yaWZpZWQgY29uc3RhbnRcbiAqL1xuZnVuY3Rpb24gdXNlc05hbWVzcGFjZUFzT2JqZWN0KG5hbWVzcGFjZUlkZW50aWZpZXJzKSB7XG4gIHJldHVybiAhbmFtZXNwYWNlSWRlbnRpZmllcnMuZXZlcnkoKGlkZW50aWZpZXIpID0+IHtcbiAgICBjb25zdCBwYXJlbnQgPSBpZGVudGlmaWVyLnBhcmVudFxuXG4gICAgLy8gYG5hbWVzcGFjZS54YCBvciBgbmFtZXNwYWNlWyd4J11gXG4gICAgcmV0dXJuIChcbiAgICAgIHBhcmVudCAmJiBwYXJlbnQudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nICYmXG4gICAgICAocGFyZW50LnByb3BlcnR5LnR5cGUgPT09ICdJZGVudGlmaWVyJyB8fCBwYXJlbnQucHJvcGVydHkudHlwZSA9PT0gJ0xpdGVyYWwnKVxuICAgIClcbiAgfSlcbn1cblxuLyoqXG4gKiBAcGFyYW0ge01lbWJlckV4cHJlc3Npb259IG1lbWJlckV4cHJlc3Npb25cbiAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSBuYW1lIG9mIHRoZSBtZW1iZXIgaW4gdGhlIG9iamVjdCBleHByZXNzaW9uLCBlLmcuIHRoZSBgeGAgaW4gYG5hbWVzcGFjZS54YFxuICovXG5mdW5jdGlvbiBnZXRNZW1iZXJQcm9wZXJ0eU5hbWUobWVtYmVyRXhwcmVzc2lvbikge1xuICByZXR1cm4gbWVtYmVyRXhwcmVzc2lvbi5wcm9wZXJ0eS50eXBlID09PSAnSWRlbnRpZmllcidcbiAgICA/IG1lbWJlckV4cHJlc3Npb24ucHJvcGVydHkubmFtZVxuICAgIDogbWVtYmVyRXhwcmVzc2lvbi5wcm9wZXJ0eS52YWx1ZVxufVxuXG4vKipcbiAqIEBwYXJhbSB7U2NvcGVNYW5hZ2VyfSBzY29wZU1hbmFnZXJcbiAqIEBwYXJhbSB7QVNUTm9kZX0gbm9kZVxuICogQHJldHVybiB7U2V0PHN0cmluZz59XG4gKi9cbmZ1bmN0aW9uIGdldFZhcmlhYmxlTmFtZXNJblNjb3BlKHNjb3BlTWFuYWdlciwgbm9kZSkge1xuICBsZXQgY3VycmVudE5vZGUgPSBub2RlXG4gIGxldCBzY29wZSA9IHNjb3BlTWFuYWdlci5hY3F1aXJlKGN1cnJlbnROb2RlKVxuICB3aGlsZSAoc2NvcGUgPT0gbnVsbCkge1xuICAgIGN1cnJlbnROb2RlID0gY3VycmVudE5vZGUucGFyZW50XG4gICAgc2NvcGUgPSBzY29wZU1hbmFnZXIuYWNxdWlyZShjdXJyZW50Tm9kZSwgdHJ1ZSlcbiAgfVxuICByZXR1cm4gbmV3IFNldChbXG4gICAgLi4uc2NvcGUudmFyaWFibGVzLm1hcCh2YXJpYWJsZSA9PiB2YXJpYWJsZS5uYW1lKSxcbiAgICAuLi5zY29wZS51cHBlci52YXJpYWJsZXMubWFwKHZhcmlhYmxlID0+IHZhcmlhYmxlLm5hbWUpLFxuICBdKVxufVxuXG4vKipcbiAqXG4gKiBAcGFyYW0geyp9IG5hbWVzXG4gKiBAcGFyYW0geyp9IG5hbWVDb25mbGljdHNcbiAqIEBwYXJhbSB7Kn0gbmFtZXNwYWNlTmFtZVxuICovXG5mdW5jdGlvbiBnZW5lcmF0ZUxvY2FsTmFtZXMobmFtZXMsIG5hbWVDb25mbGljdHMsIG5hbWVzcGFjZU5hbWUpIHtcbiAgY29uc3QgbG9jYWxOYW1lcyA9IHt9XG4gIG5hbWVzLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICBsZXQgbG9jYWxOYW1lXG4gICAgaWYgKCFuYW1lQ29uZmxpY3RzW25hbWVdLmhhcyhuYW1lKSkge1xuICAgICAgbG9jYWxOYW1lID0gbmFtZVxuICAgIH0gZWxzZSBpZiAoIW5hbWVDb25mbGljdHNbbmFtZV0uaGFzKGAke25hbWVzcGFjZU5hbWV9XyR7bmFtZX1gKSkge1xuICAgICAgbG9jYWxOYW1lID0gYCR7bmFtZXNwYWNlTmFtZX1fJHtuYW1lfWBcbiAgICB9IGVsc2Uge1xuICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBJbmZpbml0eTsgaSsrKSB7XG4gICAgICAgIGlmICghbmFtZUNvbmZsaWN0c1tuYW1lXS5oYXMoYCR7bmFtZXNwYWNlTmFtZX1fJHtuYW1lfV8ke2l9YCkpIHtcbiAgICAgICAgICBsb2NhbE5hbWUgPSBgJHtuYW1lc3BhY2VOYW1lfV8ke25hbWV9XyR7aX1gXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBsb2NhbE5hbWVzW25hbWVdID0gbG9jYWxOYW1lXG4gIH0pXG4gIHJldHVybiBsb2NhbE5hbWVzXG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lc3BhY2UuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsImZpeGFibGUiLCJzY2hlbWEiLCJjcmVhdGUiLCJjb250ZXh0Iiwibm9kZSIsInNjb3BlVmFyaWFibGVzIiwiZ2V0U2NvcGUiLCJ2YXJpYWJsZXMiLCJuYW1lc3BhY2VWYXJpYWJsZSIsImZpbmQiLCJ2YXJpYWJsZSIsImRlZnMiLCJuYW1lc3BhY2VSZWZlcmVuY2VzIiwicmVmZXJlbmNlcyIsIm5hbWVzcGFjZUlkZW50aWZpZXJzIiwibWFwIiwicmVmZXJlbmNlIiwiaWRlbnRpZmllciIsImNhbkZpeCIsImxlbmd0aCIsInVzZXNOYW1lc3BhY2VBc09iamVjdCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJmaXgiLCJmaXhlciIsInNjb3BlTWFuYWdlciIsImdldFNvdXJjZUNvZGUiLCJmaXhlcyIsImltcG9ydE5hbWVDb25mbGljdHMiLCJmb3JFYWNoIiwicGFyZW50IiwiaW1wb3J0TmFtZSIsImdldE1lbWJlclByb3BlcnR5TmFtZSIsImxvY2FsQ29uZmxpY3RzIiwiZ2V0VmFyaWFibGVOYW1lc0luU2NvcGUiLCJjIiwiYWRkIiwiaW1wb3J0TmFtZXMiLCJPYmplY3QiLCJrZXlzIiwiaW1wb3J0TG9jYWxOYW1lcyIsImdlbmVyYXRlTG9jYWxOYW1lcyIsIm5hbWUiLCJuYW1lZEltcG9ydFNwZWNpZmllcnMiLCJwdXNoIiwicmVwbGFjZVRleHQiLCJqb2luIiwiZXZlcnkiLCJwcm9wZXJ0eSIsIm1lbWJlckV4cHJlc3Npb24iLCJ2YWx1ZSIsImN1cnJlbnROb2RlIiwic2NvcGUiLCJhY3F1aXJlIiwiU2V0IiwidXBwZXIiLCJuYW1lcyIsIm5hbWVDb25mbGljdHMiLCJuYW1lc3BhY2VOYW1lIiwibG9jYWxOYW1lcyIsImxvY2FsTmFtZSIsImhhcyIsImkiLCJJbmZpbml0eSJdLCJtYXBwaW5ncyI6Ijs7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QVosQ0FBc0JRLEdBQXRCLENBQTBCTCxZQUFZQSxTQUFTZ0MsSUFBL0MsQ0FGRSxHQUFQOztBQUlEOztBQUVEOzs7Ozs7QUFNQSxTQUFTRCxrQkFBVCxDQUE0QmUsS0FBNUIsRUFBbUNDLGFBQW5DLEVBQWtEQyxhQUFsRCxFQUFpRTtBQUMvRCxRQUFNQyxhQUFhLEVBQW5CO0FBQ0FILFFBQU0zQixPQUFOLENBQWVhLElBQUQsSUFBVTtBQUN0QixRQUFJa0IsU0FBSjtBQUNBLFFBQUksQ0FBQ0gsY0FBY2YsSUFBZCxFQUFvQm1CLEdBQXBCLENBQXdCbkIsSUFBeEIsQ0FBTCxFQUFvQztBQUNsQ2tCLGtCQUFZbEIsSUFBWjtBQUNELEtBRkQsTUFFTyxJQUFJLENBQUNlLGNBQWNmLElBQWQsRUFBb0JtQixHQUFwQixDQUF5QixHQUFFSCxhQUFjLElBQUdoQixJQUFLLEVBQWpELENBQUwsRUFBMEQ7QUFDL0RrQixrQkFBYSxHQUFFRixhQUFjLElBQUdoQixJQUFLLEVBQXJDO0FBQ0QsS0FGTSxNQUVBO0FBQ0wsV0FBSyxJQUFJb0IsSUFBSSxDQUFiLEVBQWdCQSxJQUFJQyxRQUFwQixFQUE4QkQsR0FBOUIsRUFBbUM7QUFDakMsWUFBSSxDQUFDTCxjQUFjZixJQUFkLEVBQW9CbUIsR0FBcEIsQ0FBeUIsR0FBRUgsYUFBYyxJQUFHaEIsSUFBSyxJQUFHb0IsQ0FBRSxFQUF0RCxDQUFMLEVBQStEO0FBQzdERixzQkFBYSxHQUFFRixhQUFjLElBQUdoQixJQUFLLElBQUdvQixDQUFFLEVBQTFDO0FBQ0E7QUFDRDtBQUNGO0FBQ0Y7QUFDREgsZUFBV2pCLElBQVgsSUFBbUJrQixTQUFuQjtBQUNELEdBZkQ7QUFnQkEsU0FBT0QsVUFBUDtBQUNEIiwiZmlsZSI6Im5vLW5hbWVzcGFjZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVvdmVydmlldyBSdWxlIHRvIGRpc2FsbG93IG5hbWVzcGFjZSBpbXBvcnRcbiAqIEBhdXRob3IgUmFkZWsgQmVua2VsXG4gKi9cblxuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJ1bGUgRGVmaW5pdGlvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLW5hbWVzcGFjZScpLFxuICAgIH0sXG4gICAgZml4YWJsZTogJ2NvZGUnLFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIHJldHVybiB7XG4gICAgICAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJzogZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgICAgY29uc3Qgc2NvcGVWYXJpYWJsZXMgPSBjb250ZXh0LmdldFNjb3BlKCkudmFyaWFibGVzXG4gICAgICAgIGNvbnN0IG5hbWVzcGFjZVZhcmlhYmxlID0gc2NvcGVWYXJpYWJsZXMuZmluZCgodmFyaWFibGUpID0+XG4gICAgICAgICAgdmFyaWFibGUuZGVmc1swXS5ub2RlID09PSBub2RlXG4gICAgICAgIClcbiAgICAgICAgY29uc3QgbmFtZXNwYWNlUmVmZXJlbmNlcyA9IG5hbWVzcGFjZVZhcmlhYmxlLnJlZmVyZW5jZXNcbiAgICAgICAgY29uc3QgbmFtZXNwYWNlSWRlbnRpZmllcnMgPSBuYW1lc3BhY2VSZWZlcmVuY2VzLm1hcChyZWZlcmVuY2UgPT4gcmVmZXJlbmNlLmlkZW50aWZpZXIpXG4gICAgICAgIGNvbnN0IGNhbkZpeCA9IG5hbWVzcGFjZUlkZW50aWZpZXJzLmxlbmd0aCA+IDAgJiYgIXVzZXNOYW1lc3BhY2VBc09iamVjdChuYW1lc3BhY2VJZGVudGlmaWVycylcblxuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZSxcbiAgICAgICAgICBtZXNzYWdlOiBgVW5leHBlY3RlZCBuYW1lc3BhY2UgaW1wb3J0LmAsXG4gICAgICAgICAgZml4OiBjYW5GaXggJiYgKGZpeGVyID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNjb3BlTWFuYWdlciA9IGNvbnRleHQuZ2V0U291cmNlQ29kZSgpLnNjb3BlTWFuYWdlclxuICAgICAgICAgICAgY29uc3QgZml4ZXMgPSBbXVxuXG4gICAgICAgICAgICAvLyBQYXNzIDE6IENvbGxlY3QgdmFyaWFibGUgbmFtZXMgdGhhdCBhcmUgYWxyZWFkeSBpbiBzY29wZSBmb3IgZWFjaCByZWZlcmVuY2Ugd2Ugd2FudFxuICAgICAgICAgICAgLy8gdG8gdHJhbnNmb3JtLCBzbyB0aGF0IHdlIGNhbiBiZSBzdXJlIHRoYXQgd2UgY2hvb3NlIG5vbi1jb25mbGljdGluZyBpbXBvcnQgbmFtZXNcbiAgICAgICAgICAgIGNvbnN0IGltcG9ydE5hbWVDb25mbGljdHMgPSB7fVxuICAgICAgICAgICAgbmFtZXNwYWNlSWRlbnRpZmllcnMuZm9yRWFjaCgoaWRlbnRpZmllcikgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBwYXJlbnQgPSBpZGVudGlmaWVyLnBhcmVudFxuICAgICAgICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC50eXBlID09PSAnTWVtYmVyRXhwcmVzc2lvbicpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbXBvcnROYW1lID0gZ2V0TWVtYmVyUHJvcGVydHlOYW1lKHBhcmVudClcbiAgICAgICAgICAgICAgICBjb25zdCBsb2NhbENvbmZsaWN0cyA9IGdldFZhcmlhYmxlTmFtZXNJblNjb3BlKHNjb3BlTWFuYWdlciwgcGFyZW50KVxuICAgICAgICAgICAgICAgIGlmICghaW1wb3J0TmFtZUNvbmZsaWN0c1tpbXBvcnROYW1lXSkge1xuICAgICAgICAgICAgICAgICAgaW1wb3J0TmFtZUNvbmZsaWN0c1tpbXBvcnROYW1lXSA9IGxvY2FsQ29uZmxpY3RzXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIGxvY2FsQ29uZmxpY3RzLmZvckVhY2goKGMpID0+IGltcG9ydE5hbWVDb25mbGljdHNbaW1wb3J0TmFtZV0uYWRkKGMpKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgLy8gQ2hvb3NlIG5ldyBuYW1lcyBmb3IgZWFjaCBpbXBvcnRcbiAgICAgICAgICAgIGNvbnN0IGltcG9ydE5hbWVzID0gT2JqZWN0LmtleXMoaW1wb3J0TmFtZUNvbmZsaWN0cylcbiAgICAgICAgICAgIGNvbnN0IGltcG9ydExvY2FsTmFtZXMgPSBnZW5lcmF0ZUxvY2FsTmFtZXMoXG4gICAgICAgICAgICAgIGltcG9ydE5hbWVzLFxuICAgICAgICAgICAgICBpbXBvcnROYW1lQ29uZmxpY3RzLFxuICAgICAgICAgICAgICBuYW1lc3BhY2VWYXJpYWJsZS5uYW1lXG4gICAgICAgICAgICApXG5cbiAgICAgICAgICAgIC8vIFJlcGxhY2UgdGhlIEltcG9ydE5hbWVzcGFjZVNwZWNpZmllciB3aXRoIGEgbGlzdCBvZiBJbXBvcnRTcGVjaWZpZXJzXG4gICAgICAgICAgICBjb25zdCBuYW1lZEltcG9ydFNwZWNpZmllcnMgPSBpbXBvcnROYW1lcy5tYXAoKGltcG9ydE5hbWUpID0+XG4gICAgICAgICAgICAgIGltcG9ydE5hbWUgPT09IGltcG9ydExvY2FsTmFtZXNbaW1wb3J0TmFtZV1cbiAgICAgICAgICAgICAgICA/IGltcG9ydE5hbWVcbiAgICAgICAgICAgICAgICA6IGAke2ltcG9ydE5hbWV9IGFzICR7aW1wb3J0TG9jYWxOYW1lc1tpbXBvcnROYW1lXX1gXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBmaXhlcy5wdXNoKGZpeGVyLnJlcGxhY2VUZXh0KG5vZGUsIGB7ICR7bmFtZWRJbXBvcnRTcGVjaWZpZXJzLmpvaW4oJywgJyl9IH1gKSlcblxuICAgICAgICAgICAgLy8gUGFzcyAyOiBSZXBsYWNlIHJlZmVyZW5jZXMgdG8gdGhlIG5hbWVzcGFjZSB3aXRoIHJlZmVyZW5jZXMgdG8gdGhlIG5hbWVkIGltcG9ydHNcbiAgICAgICAgICAgIG5hbWVzcGFjZUlkZW50aWZpZXJzLmZvckVhY2goKGlkZW50aWZpZXIpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gaWRlbnRpZmllci5wYXJlbnRcbiAgICAgICAgICAgICAgaWYgKHBhcmVudCAmJiBwYXJlbnQudHlwZSA9PT0gJ01lbWJlckV4cHJlc3Npb24nKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW1wb3J0TmFtZSA9IGdldE1lbWJlclByb3BlcnR5TmFtZShwYXJlbnQpXG4gICAgICAgICAgICAgICAgZml4ZXMucHVzaChmaXhlci5yZXBsYWNlVGV4dChwYXJlbnQsIGltcG9ydExvY2FsTmFtZXNbaW1wb3J0TmFtZV0pKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICByZXR1cm4gZml4ZXNcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuXG4vKipcbiAqIEBwYXJhbSB7SWRlbnRpZmllcltdfSBuYW1lc3BhY2VJZGVudGlmaWVyc1xuICogQHJldHVybnMge2Jvb2xlYW59IGB0cnVlYCBpZiB0aGUgbmFtZXNwYWNlIHZhcmlhYmxlIGlzIG1vcmUgdGhhbiBqdXN0IGEgZ2xvcmlmaWVkIGNvbnN0YW50XG4gKi9cbmZ1bmN0aW9uIHVzZXNOYW1lc3BhY2VBc09iamVjdChuYW1lc3BhY2VJZGVudGlmaWVycykge1xuICByZXR1cm4gIW5hbWVzcGFjZUlkZW50aWZpZXJzLmV2ZXJ5KChpZGVudGlmaWVyKSA9PiB7XG4gICAgY29uc3QgcGFyZW50ID0gaWRlbnRpZmllci5wYXJlbnRcblxuICAgIC8vIGBuYW1lc3BhY2UueGAgb3IgYG5hbWVzcGFjZVsneCddYFxuICAgIHJldHVybiAoXG4gICAgICBwYXJlbnQgJiYgcGFyZW50LnR5cGUgPT09ICdNZW1iZXJFeHByZXNzaW9uJyAmJlxuICAgICAgKHBhcmVudC5wcm9wZXJ0eS50eXBlID09PSAnSWRlbnRpZmllcicgfHwgcGFyZW50LnByb3BlcnR5LnR5cGUgPT09ICdMaXRlcmFsJylcbiAgICApXG4gIH0pXG59XG5cbi8qKlxuICogQHBhcmFtIHtNZW1iZXJFeHByZXNzaW9ufSBtZW1iZXJFeHByZXNzaW9uXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgbmFtZSBvZiB0aGUgbWVtYmVyIGluIHRoZSBvYmplY3QgZXhwcmVzc2lvbiwgZS5nLiB0aGUgYHhgIGluIGBuYW1lc3BhY2UueGBcbiAqL1xuZnVuY3Rpb24gZ2V0TWVtYmVyUHJvcGVydHlOYW1lKG1lbWJlckV4cHJlc3Npb24pIHtcbiAgcmV0dXJuIG1lbWJlckV4cHJlc3Npb24ucHJvcGVydHkudHlwZSA9PT0gJ0lkZW50aWZpZXInXG4gICAgPyBtZW1iZXJFeHByZXNzaW9uLnByb3BlcnR5Lm5hbWVcbiAgICA6IG1lbWJlckV4cHJlc3Npb24ucHJvcGVydHkudmFsdWVcbn1cblxuLyoqXG4gKiBAcGFyYW0ge1Njb3BlTWFuYWdlcn0gc2NvcGVNYW5hZ2VyXG4gKiBAcGFyYW0ge0FTVE5vZGV9IG5vZGVcbiAqIEByZXR1cm4ge1NldDxzdHJpbmc+fVxuICovXG5mdW5jdGlvbiBnZXRWYXJpYWJsZU5hbWVzSW5TY29wZShzY29wZU1hbmFnZXIsIG5vZGUpIHtcbiAgbGV0IGN1cnJlbnROb2RlID0gbm9kZVxuICBsZXQgc2NvcGUgPSBzY29wZU1hbmFnZXIuYWNxdWlyZShjdXJyZW50Tm9kZSlcbiAgd2hpbGUgKHNjb3BlID09IG51bGwpIHtcbiAgICBjdXJyZW50Tm9kZSA9IGN1cnJlbnROb2RlLnBhcmVudFxuICAgIHNjb3BlID0gc2NvcGVNYW5hZ2VyLmFjcXVpcmUoY3VycmVudE5vZGUsIHRydWUpXG4gIH1cbiAgcmV0dXJuIG5ldyBTZXQoW1xuICAgIC4uLnNjb3BlLnZhcmlhYmxlcy5tYXAodmFyaWFibGUgPT4gdmFyaWFibGUubmFtZSksXG4gICAgLi4uc2NvcGUudXBwZXIudmFyaWFibGVzLm1hcCh2YXJpYWJsZSA9PiB2YXJpYWJsZS5uYW1lKSxcbiAgXSlcbn1cblxuLyoqXG4gKlxuICogQHBhcmFtIHsqfSBuYW1lc1xuICogQHBhcmFtIHsqfSBuYW1lQ29uZmxpY3RzXG4gKiBAcGFyYW0geyp9IG5hbWVzcGFjZU5hbWVcbiAqL1xuZnVuY3Rpb24gZ2VuZXJhdGVMb2NhbE5hbWVzKG5hbWVzLCBuYW1lQ29uZmxpY3RzLCBuYW1lc3BhY2VOYW1lKSB7XG4gIGNvbnN0IGxvY2FsTmFtZXMgPSB7fVxuICBuYW1lcy5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgbGV0IGxvY2FsTmFtZVxuICAgIGlmICghbmFtZUNvbmZsaWN0c1tuYW1lXS5oYXMobmFtZSkpIHtcbiAgICAgIGxvY2FsTmFtZSA9IG5hbWVcbiAgICB9IGVsc2UgaWYgKCFuYW1lQ29uZmxpY3RzW25hbWVdLmhhcyhgJHtuYW1lc3BhY2VOYW1lfV8ke25hbWV9YCkpIHtcbiAgICAgIGxvY2FsTmFtZSA9IGAke25hbWVzcGFjZU5hbWV9XyR7bmFtZX1gXG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgSW5maW5pdHk7IGkrKykge1xuICAgICAgICBpZiAoIW5hbWVDb25mbGljdHNbbmFtZV0uaGFzKGAke25hbWVzcGFjZU5hbWV9XyR7bmFtZX1fJHtpfWApKSB7XG4gICAgICAgICAgbG9jYWxOYW1lID0gYCR7bmFtZXNwYWNlTmFtZX1fJHtuYW1lfV8ke2l9YFxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgbG9jYWxOYW1lc1tuYW1lXSA9IGxvY2FsTmFtZVxuICB9KVxuICByZXR1cm4gbG9jYWxOYW1lc1xufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-nodejs-modules.js b/node_modules/eslint-plugin-import/lib/rules/no-nodejs-modules.js index 584f4dc6..811adece 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-nodejs-modules.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-nodejs-modules.js @@ -1,18 +1,6 @@ -'use strict'; - -var _importType = require('../core/importType'); - -var _importType2 = _interopRequireDefault(_importType); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _importType = require('../core/importType');var _importType2 = _interopRequireDefault(_importType); +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} function reportIfMissing(context, node, allowed, name) { if (allowed.indexOf(name) === -1 && (0, _importType2.default)(name, context) === 'builtin') { @@ -24,22 +12,24 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-nodejs-modules') - }, - schema: [{ + url: (0, _docsUrl2.default)('no-nodejs-modules') }, + + schema: [ + { type: 'object', properties: { allow: { type: 'array', uniqueItems: true, items: { - type: 'string' - } - } - }, - additionalProperties: false - }] - }, + type: 'string' } } }, + + + + additionalProperties: false }] }, + + + create: function (context) { const options = context.options[0] || {}; @@ -53,8 +43,7 @@ module.exports = { if ((0, _staticRequire2.default)(node)) { reportIfMissing(context, node, allowed, node.arguments[0].value); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1ub2RlanMtbW9kdWxlcy5qcyJdLCJuYW1lcyI6WyJyZXBvcnRJZk1pc3NpbmciLCJjb250ZXh0Iiwibm9kZSIsImFsbG93ZWQiLCJuYW1lIiwiaW5kZXhPZiIsInJlcG9ydCIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiYWxsb3ciLCJ1bmlxdWVJdGVtcyIsIml0ZW1zIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjcmVhdGUiLCJvcHRpb25zIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJoYW5kbGVJbXBvcnRzIiwic291cmNlIiwidmFsdWUiLCJDYWxsRXhwcmVzc2lvbiIsImhhbmRsZVJlcXVpcmVzIiwiYXJndW1lbnRzIl0sIm1hcHBpbmdzIjoiOztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7O0FBRUEsU0FBU0EsZUFBVCxDQUF5QkMsT0FBekIsRUFBa0NDLElBQWxDLEVBQXdDQyxPQUF4QyxFQUFpREMsSUFBakQsRUFBdUQ7QUFDckQsTUFBSUQsUUFBUUUsT0FBUixDQUFnQkQsSUFBaEIsTUFBMEIsQ0FBQyxDQUEzQixJQUFnQywwQkFBV0EsSUFBWCxFQUFpQkgsT0FBakIsTUFBOEIsU0FBbEUsRUFBNkU7QUFDM0VBLFlBQVFLLE1BQVIsQ0FBZUosSUFBZixFQUFxQiwyQ0FBMkNFLElBQTNDLEdBQWtELEdBQXZFO0FBQ0Q7QUFDRjs7QUFFREcsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsbUJBQVI7QUFERCxLQUZGO0FBS0pDLFlBQVEsQ0FDTjtBQUNFSCxZQUFNLFFBRFI7QUFFRUksa0JBQVk7QUFDVkMsZUFBTztBQUNMTCxnQkFBTSxPQUREO0FBRUxNLHVCQUFhLElBRlI7QUFHTEMsaUJBQU87QUFDTFAsa0JBQU07QUFERDtBQUhGO0FBREcsT0FGZDtBQVdFUSw0QkFBc0I7QUFYeEIsS0FETTtBQUxKLEdBRFM7O0FBdUJmQyxVQUFRLFVBQVVsQixPQUFWLEVBQW1CO0FBQ3pCLFVBQU1tQixVQUFVbkIsUUFBUW1CLE9BQVIsQ0FBZ0IsQ0FBaEIsS0FBc0IsRUFBdEM7QUFDQSxVQUFNakIsVUFBVWlCLFFBQVFMLEtBQVIsSUFBaUIsRUFBakM7O0FBRUEsV0FBTztBQUNMTSx5QkFBbUIsU0FBU0MsYUFBVCxDQUF1QnBCLElBQXZCLEVBQTZCO0FBQzlDRix3QkFBZ0JDLE9BQWhCLEVBQXlCQyxJQUF6QixFQUErQkMsT0FBL0IsRUFBd0NELEtBQUtxQixNQUFMLENBQVlDLEtBQXBEO0FBQ0QsT0FISTtBQUlMQyxzQkFBZ0IsU0FBU0MsY0FBVCxDQUF3QnhCLElBQXhCLEVBQThCO0FBQzVDLFlBQUksNkJBQWdCQSxJQUFoQixDQUFKLEVBQTJCO0FBQ3pCRiwwQkFBZ0JDLE9BQWhCLEVBQXlCQyxJQUF6QixFQUErQkMsT0FBL0IsRUFBd0NELEtBQUt5QixTQUFMLENBQWUsQ0FBZixFQUFrQkgsS0FBMUQ7QUFDRDtBQUNGO0FBUkksS0FBUDtBQVVEO0FBckNjLENBQWpCIiwiZmlsZSI6Im5vLW5vZGVqcy1tb2R1bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGltcG9ydFR5cGUgZnJvbSAnLi4vY29yZS9pbXBvcnRUeXBlJ1xuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiByZXBvcnRJZk1pc3NpbmcoY29udGV4dCwgbm9kZSwgYWxsb3dlZCwgbmFtZSkge1xuICBpZiAoYWxsb3dlZC5pbmRleE9mKG5hbWUpID09PSAtMSAmJiBpbXBvcnRUeXBlKG5hbWUsIGNvbnRleHQpID09PSAnYnVpbHRpbicpIHtcbiAgICBjb250ZXh0LnJlcG9ydChub2RlLCAnRG8gbm90IGltcG9ydCBOb2RlLmpzIGJ1aWx0aW4gbW9kdWxlIFwiJyArIG5hbWUgKyAnXCInKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tbm9kZWpzLW1vZHVsZXMnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGFsbG93OiB7XG4gICAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgICAgdW5pcXVlSXRlbXM6IHRydWUsXG4gICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG4gICAgY29uc3QgYWxsb3dlZCA9IG9wdGlvbnMuYWxsb3cgfHwgW11cblxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbjogZnVuY3Rpb24gaGFuZGxlSW1wb3J0cyhub2RlKSB7XG4gICAgICAgIHJlcG9ydElmTWlzc2luZyhjb250ZXh0LCBub2RlLCBhbGxvd2VkLCBub2RlLnNvdXJjZS52YWx1ZSlcbiAgICAgIH0sXG4gICAgICBDYWxsRXhwcmVzc2lvbjogZnVuY3Rpb24gaGFuZGxlUmVxdWlyZXMobm9kZSkge1xuICAgICAgICBpZiAoaXNTdGF0aWNSZXF1aXJlKG5vZGUpKSB7XG4gICAgICAgICAgcmVwb3J0SWZNaXNzaW5nKGNvbnRleHQsIG5vZGUsIGFsbG93ZWQsIG5vZGUuYXJndW1lbnRzWzBdLnZhbHVlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH1cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1ub2RlanMtbW9kdWxlcy5qcyJdLCJuYW1lcyI6WyJyZXBvcnRJZk1pc3NpbmciLCJjb250ZXh0Iiwibm9kZSIsImFsbG93ZWQiLCJuYW1lIiwiaW5kZXhPZiIsInJlcG9ydCIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiYWxsb3ciLCJ1bmlxdWVJdGVtcyIsIml0ZW1zIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjcmVhdGUiLCJvcHRpb25zIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJoYW5kbGVJbXBvcnRzIiwic291cmNlIiwidmFsdWUiLCJDYWxsRXhwcmVzc2lvbiIsImhhbmRsZVJlcXVpcmVzIiwiYXJndW1lbnRzIl0sIm1hcHBpbmdzIjoiYUFBQSxnRDtBQUNBLHNEO0FBQ0EscUM7O0FBRUEsU0FBU0EsZUFBVCxDQUF5QkMsT0FBekIsRUFBa0NDLElBQWxDLEVBQXdDQyxPQUF4QyxFQUFpREMsSUFBakQsRUFBdUQ7QUFDckQsTUFBSUQsUUFBUUUsT0FBUixDQUFnQkQsSUFBaEIsTUFBMEIsQ0FBQyxDQUEzQixJQUFnQywwQkFBV0EsSUFBWCxFQUFpQkgsT0FBakIsTUFBOEIsU0FBbEUsRUFBNkU7QUFDM0VBLFlBQVFLLE1BQVIsQ0FBZUosSUFBZixFQUFxQiwyQ0FBMkNFLElBQTNDLEdBQWtELEdBQXZFO0FBQ0Q7QUFDRjs7QUFFREcsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsbUJBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRO0FBQ047QUFDRUgsWUFBTSxRQURSO0FBRUVJLGtCQUFZO0FBQ1ZDLGVBQU87QUFDTEwsZ0JBQU0sT0FERDtBQUVMTSx1QkFBYSxJQUZSO0FBR0xDLGlCQUFPO0FBQ0xQLGtCQUFNLFFBREQsRUFIRixFQURHLEVBRmQ7Ozs7QUFXRVEsNEJBQXNCLEtBWHhCLEVBRE0sQ0FMSixFQURTOzs7OztBQXVCZkMsVUFBUSxVQUFVbEIsT0FBVixFQUFtQjtBQUN6QixVQUFNbUIsVUFBVW5CLFFBQVFtQixPQUFSLENBQWdCLENBQWhCLEtBQXNCLEVBQXRDO0FBQ0EsVUFBTWpCLFVBQVVpQixRQUFRTCxLQUFSLElBQWlCLEVBQWpDOztBQUVBLFdBQU87QUFDTE0seUJBQW1CLFNBQVNDLGFBQVQsQ0FBdUJwQixJQUF2QixFQUE2QjtBQUM5Q0Ysd0JBQWdCQyxPQUFoQixFQUF5QkMsSUFBekIsRUFBK0JDLE9BQS9CLEVBQXdDRCxLQUFLcUIsTUFBTCxDQUFZQyxLQUFwRDtBQUNELE9BSEk7QUFJTEMsc0JBQWdCLFNBQVNDLGNBQVQsQ0FBd0J4QixJQUF4QixFQUE4QjtBQUM1QyxZQUFJLDZCQUFnQkEsSUFBaEIsQ0FBSixFQUEyQjtBQUN6QkYsMEJBQWdCQyxPQUFoQixFQUF5QkMsSUFBekIsRUFBK0JDLE9BQS9CLEVBQXdDRCxLQUFLeUIsU0FBTCxDQUFlLENBQWYsRUFBa0JILEtBQTFEO0FBQ0Q7QUFDRixPQVJJLEVBQVA7O0FBVUQsR0FyQ2MsRUFBakIiLCJmaWxlIjoibm8tbm9kZWpzLW1vZHVsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaW1wb3J0VHlwZSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5pbXBvcnQgaXNTdGF0aWNSZXF1aXJlIGZyb20gJy4uL2NvcmUvc3RhdGljUmVxdWlyZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIHJlcG9ydElmTWlzc2luZyhjb250ZXh0LCBub2RlLCBhbGxvd2VkLCBuYW1lKSB7XG4gIGlmIChhbGxvd2VkLmluZGV4T2YobmFtZSkgPT09IC0xICYmIGltcG9ydFR5cGUobmFtZSwgY29udGV4dCkgPT09ICdidWlsdGluJykge1xuICAgIGNvbnRleHQucmVwb3J0KG5vZGUsICdEbyBub3QgaW1wb3J0IE5vZGUuanMgYnVpbHRpbiBtb2R1bGUgXCInICsgbmFtZSArICdcIicpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1ub2RlanMtbW9kdWxlcycpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgYWxsb3c6IHtcbiAgICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZSxcbiAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cbiAgICBjb25zdCBhbGxvd2VkID0gb3B0aW9ucy5hbGxvdyB8fCBbXVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlY2xhcmF0aW9uOiBmdW5jdGlvbiBoYW5kbGVJbXBvcnRzKG5vZGUpIHtcbiAgICAgICAgcmVwb3J0SWZNaXNzaW5nKGNvbnRleHQsIG5vZGUsIGFsbG93ZWQsIG5vZGUuc291cmNlLnZhbHVlKVxuICAgICAgfSxcbiAgICAgIENhbGxFeHByZXNzaW9uOiBmdW5jdGlvbiBoYW5kbGVSZXF1aXJlcyhub2RlKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY1JlcXVpcmUobm9kZSkpIHtcbiAgICAgICAgICByZXBvcnRJZk1pc3NpbmcoY29udGV4dCwgbm9kZSwgYWxsb3dlZCwgbm9kZS5hcmd1bWVudHNbMF0udmFsdWUpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-relative-parent-imports.js b/node_modules/eslint-plugin-import/lib/rules/no-relative-parent-imports.js index 8563a906..13695c1b 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-relative-parent-imports.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-relative-parent-imports.js @@ -1,33 +1,18 @@ -'use strict'; - -var _moduleVisitor = require('eslint-module-utils/moduleVisitor'); - -var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - +'use strict';var _moduleVisitor = require('eslint-module-utils/moduleVisitor');var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); var _path = require('path'); +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _importType = require('../core/importType'); - -var _importType2 = _interopRequireDefault(_importType); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _importType = require('../core/importType');var _importType2 = _interopRequireDefault(_importType);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-relative-parent-imports') - }, - schema: [(0, _moduleVisitor.makeOptionsSchema)()] - }, + url: (0, _docsUrl2.default)('no-relative-parent-imports') }, + + schema: [(0, _moduleVisitor.makeOptionsSchema)()] }, + create: function noRelativePackages(context) { const myPath = context.getFilename(); @@ -36,15 +21,13 @@ module.exports = { function checkSourceValue(sourceNode) { const depPath = sourceNode.value; - if ((0, _importType2.default)(depPath, context) === 'external') { - // ignore packages + if ((0, _importType2.default)(depPath, context) === 'external') {// ignore packages return; } const absDepPath = (0, _resolve2.default)(depPath, context); - if (!absDepPath) { - // unable to resolve path + if (!absDepPath) {// unable to resolve path return; } @@ -53,12 +36,14 @@ module.exports = { if ((0, _importType2.default)(relDepPath, context) === 'parent') { context.report({ node: sourceNode, - message: 'Relative imports from parent directories are not allowed. ' + `Please either pass what you're importing through at runtime ` + `(dependency injection), move \`${(0, _path.basename)(myPath)}\` to same ` + `directory as \`${depPath}\` or consider making \`${depPath}\` a package.` - }); + message: 'Relative imports from parent directories are not allowed. ' + + `Please either pass what you're importing through at runtime ` + + `(dependency injection), move \`${(0, _path.basename)(myPath)}\` to same ` + + `directory as \`${depPath}\` or consider making \`${depPath}\` a package.` }); + } } return (0, _moduleVisitor2.default)(checkSourceValue, context.options[0]); - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1yZWxhdGl2ZS1wYXJlbnQtaW1wb3J0cy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwibm9SZWxhdGl2ZVBhY2thZ2VzIiwiY29udGV4dCIsIm15UGF0aCIsImdldEZpbGVuYW1lIiwiY2hlY2tTb3VyY2VWYWx1ZSIsInNvdXJjZU5vZGUiLCJkZXBQYXRoIiwidmFsdWUiLCJhYnNEZXBQYXRoIiwicmVsRGVwUGF0aCIsInJlcG9ydCIsIm5vZGUiLCJtZXNzYWdlIiwib3B0aW9ucyJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7O0FBQ0E7Ozs7QUFFQTs7Ozs7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLDRCQUFSO0FBREQsS0FGRjtBQUtKQyxZQUFRLENBQUMsdUNBQUQ7QUFMSixHQURTOztBQVNmQyxVQUFRLFNBQVNDLGtCQUFULENBQTRCQyxPQUE1QixFQUFxQztBQUMzQyxVQUFNQyxTQUFTRCxRQUFRRSxXQUFSLEVBQWY7QUFDQSxRQUFJRCxXQUFXLFFBQWYsRUFBeUIsT0FBTyxFQUFQLENBRmtCLENBRVI7O0FBRW5DLGFBQVNFLGdCQUFULENBQTBCQyxVQUExQixFQUFzQztBQUNwQyxZQUFNQyxVQUFVRCxXQUFXRSxLQUEzQjs7QUFFQSxVQUFJLDBCQUFXRCxPQUFYLEVBQW9CTCxPQUFwQixNQUFpQyxVQUFyQyxFQUFpRDtBQUFFO0FBQ2pEO0FBQ0Q7O0FBRUQsWUFBTU8sYUFBYSx1QkFBUUYsT0FBUixFQUFpQkwsT0FBakIsQ0FBbkI7O0FBRUEsVUFBSSxDQUFDTyxVQUFMLEVBQWlCO0FBQUU7QUFDakI7QUFDRDs7QUFFRCxZQUFNQyxhQUFhLG9CQUFTLG1CQUFRUCxNQUFSLENBQVQsRUFBMEJNLFVBQTFCLENBQW5COztBQUVBLFVBQUksMEJBQVdDLFVBQVgsRUFBdUJSLE9BQXZCLE1BQW9DLFFBQXhDLEVBQWtEO0FBQ2hEQSxnQkFBUVMsTUFBUixDQUFlO0FBQ2JDLGdCQUFNTixVQURPO0FBRWJPLG1CQUFTLCtEQUNOLDhEQURNLEdBRU4sa0NBQWlDLG9CQUFTVixNQUFULENBQWlCLGFBRjVDLEdBR04sa0JBQWlCSSxPQUFRLDJCQUEwQkEsT0FBUTtBQUxqRCxTQUFmO0FBT0Q7QUFDRjs7QUFFRCxXQUFPLDZCQUFjRixnQkFBZCxFQUFnQ0gsUUFBUVksT0FBUixDQUFnQixDQUFoQixDQUFoQyxDQUFQO0FBQ0Q7QUF4Q2MsQ0FBakIiLCJmaWxlIjoibm8tcmVsYXRpdmUtcGFyZW50LWltcG9ydHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9kdWxlVmlzaXRvciwgeyBtYWtlT3B0aW9uc1NjaGVtYSB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvbW9kdWxlVmlzaXRvcidcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5pbXBvcnQgeyBiYXNlbmFtZSwgZGlybmFtZSwgcmVsYXRpdmUgfSBmcm9tICdwYXRoJ1xuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuXG5pbXBvcnQgaW1wb3J0VHlwZSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tcmVsYXRpdmUtcGFyZW50LWltcG9ydHMnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW21ha2VPcHRpb25zU2NoZW1hKCldLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gbm9SZWxhdGl2ZVBhY2thZ2VzKGNvbnRleHQpIHtcbiAgICBjb25zdCBteVBhdGggPSBjb250ZXh0LmdldEZpbGVuYW1lKClcbiAgICBpZiAobXlQYXRoID09PSAnPHRleHQ+JykgcmV0dXJuIHt9IC8vIGNhbid0IGNoZWNrIGEgbm9uLWZpbGVcblxuICAgIGZ1bmN0aW9uIGNoZWNrU291cmNlVmFsdWUoc291cmNlTm9kZSkge1xuICAgICAgY29uc3QgZGVwUGF0aCA9IHNvdXJjZU5vZGUudmFsdWVcblxuICAgICAgaWYgKGltcG9ydFR5cGUoZGVwUGF0aCwgY29udGV4dCkgPT09ICdleHRlcm5hbCcpIHsgLy8gaWdub3JlIHBhY2thZ2VzXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCBhYnNEZXBQYXRoID0gcmVzb2x2ZShkZXBQYXRoLCBjb250ZXh0KVxuXG4gICAgICBpZiAoIWFic0RlcFBhdGgpIHsgLy8gdW5hYmxlIHRvIHJlc29sdmUgcGF0aFxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVsRGVwUGF0aCA9IHJlbGF0aXZlKGRpcm5hbWUobXlQYXRoKSwgYWJzRGVwUGF0aClcblxuICAgICAgaWYgKGltcG9ydFR5cGUocmVsRGVwUGF0aCwgY29udGV4dCkgPT09ICdwYXJlbnQnKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlOiBzb3VyY2VOb2RlLFxuICAgICAgICAgIG1lc3NhZ2U6ICdSZWxhdGl2ZSBpbXBvcnRzIGZyb20gcGFyZW50IGRpcmVjdG9yaWVzIGFyZSBub3QgYWxsb3dlZC4gJyArXG4gICAgICAgICAgICBgUGxlYXNlIGVpdGhlciBwYXNzIHdoYXQgeW91J3JlIGltcG9ydGluZyB0aHJvdWdoIGF0IHJ1bnRpbWUgYCArXG4gICAgICAgICAgICBgKGRlcGVuZGVuY3kgaW5qZWN0aW9uKSwgbW92ZSBcXGAke2Jhc2VuYW1lKG15UGF0aCl9XFxgIHRvIHNhbWUgYCArXG4gICAgICAgICAgICBgZGlyZWN0b3J5IGFzIFxcYCR7ZGVwUGF0aH1cXGAgb3IgY29uc2lkZXIgbWFraW5nIFxcYCR7ZGVwUGF0aH1cXGAgYSBwYWNrYWdlLmAsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1vZHVsZVZpc2l0b3IoY2hlY2tTb3VyY2VWYWx1ZSwgY29udGV4dC5vcHRpb25zWzBdKVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1yZWxhdGl2ZS1wYXJlbnQtaW1wb3J0cy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwibm9SZWxhdGl2ZVBhY2thZ2VzIiwiY29udGV4dCIsIm15UGF0aCIsImdldEZpbGVuYW1lIiwiY2hlY2tTb3VyY2VWYWx1ZSIsInNvdXJjZU5vZGUiLCJkZXBQYXRoIiwidmFsdWUiLCJhYnNEZXBQYXRoIiwicmVsRGVwUGF0aCIsInJlcG9ydCIsIm5vZGUiLCJtZXNzYWdlIiwib3B0aW9ucyJdLCJtYXBwaW5ncyI6ImFBQUEsa0U7QUFDQSxxQztBQUNBO0FBQ0Esc0Q7O0FBRUEsZ0Q7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLDRCQUFSLENBREQsRUFGRjs7QUFLSkMsWUFBUSxDQUFDLHVDQUFELENBTEosRUFEUzs7O0FBU2ZDLFVBQVEsU0FBU0Msa0JBQVQsQ0FBNEJDLE9BQTVCLEVBQXFDO0FBQzNDLFVBQU1DLFNBQVNELFFBQVFFLFdBQVIsRUFBZjtBQUNBLFFBQUlELFdBQVcsUUFBZixFQUF5QixPQUFPLEVBQVAsQ0FGa0IsQ0FFUjs7QUFFbkMsYUFBU0UsZ0JBQVQsQ0FBMEJDLFVBQTFCLEVBQXNDO0FBQ3BDLFlBQU1DLFVBQVVELFdBQVdFLEtBQTNCOztBQUVBLFVBQUksMEJBQVdELE9BQVgsRUFBb0JMLE9BQXBCLE1BQWlDLFVBQXJDLEVBQWlELENBQUU7QUFDakQ7QUFDRDs7QUFFRCxZQUFNTyxhQUFhLHVCQUFRRixPQUFSLEVBQWlCTCxPQUFqQixDQUFuQjs7QUFFQSxVQUFJLENBQUNPLFVBQUwsRUFBaUIsQ0FBRTtBQUNqQjtBQUNEOztBQUVELFlBQU1DLGFBQWEsb0JBQVMsbUJBQVFQLE1BQVIsQ0FBVCxFQUEwQk0sVUFBMUIsQ0FBbkI7O0FBRUEsVUFBSSwwQkFBV0MsVUFBWCxFQUF1QlIsT0FBdkIsTUFBb0MsUUFBeEMsRUFBa0Q7QUFDaERBLGdCQUFRUyxNQUFSLENBQWU7QUFDYkMsZ0JBQU1OLFVBRE87QUFFYk8sbUJBQVM7QUFDTix3RUFETTtBQUVOLDRDQUFpQyxvQkFBU1YsTUFBVCxDQUFpQixhQUY1QztBQUdOLDRCQUFpQkksT0FBUSwyQkFBMEJBLE9BQVEsZUFMakQsRUFBZjs7QUFPRDtBQUNGOztBQUVELFdBQU8sNkJBQWNGLGdCQUFkLEVBQWdDSCxRQUFRWSxPQUFSLENBQWdCLENBQWhCLENBQWhDLENBQVA7QUFDRCxHQXhDYyxFQUFqQiIsImZpbGUiOiJuby1yZWxhdGl2ZS1wYXJlbnQtaW1wb3J0cy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2R1bGVWaXNpdG9yLCB7IG1ha2VPcHRpb25zU2NoZW1hIH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9tb2R1bGVWaXNpdG9yJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcbmltcG9ydCB7IGJhc2VuYW1lLCBkaXJuYW1lLCByZWxhdGl2ZSB9IGZyb20gJ3BhdGgnXG5pbXBvcnQgcmVzb2x2ZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3Jlc29sdmUnXG5cbmltcG9ydCBpbXBvcnRUeXBlIGZyb20gJy4uL2NvcmUvaW1wb3J0VHlwZSdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1yZWxhdGl2ZS1wYXJlbnQtaW1wb3J0cycpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbbWFrZU9wdGlvbnNTY2hlbWEoKV0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiBub1JlbGF0aXZlUGFja2FnZXMoY29udGV4dCkge1xuICAgIGNvbnN0IG15UGF0aCA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKVxuICAgIGlmIChteVBhdGggPT09ICc8dGV4dD4nKSByZXR1cm4ge30gLy8gY2FuJ3QgY2hlY2sgYSBub24tZmlsZVxuXG4gICAgZnVuY3Rpb24gY2hlY2tTb3VyY2VWYWx1ZShzb3VyY2VOb2RlKSB7XG4gICAgICBjb25zdCBkZXBQYXRoID0gc291cmNlTm9kZS52YWx1ZVxuXG4gICAgICBpZiAoaW1wb3J0VHlwZShkZXBQYXRoLCBjb250ZXh0KSA9PT0gJ2V4dGVybmFsJykgeyAvLyBpZ25vcmUgcGFja2FnZXNcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFic0RlcFBhdGggPSByZXNvbHZlKGRlcFBhdGgsIGNvbnRleHQpXG5cbiAgICAgIGlmICghYWJzRGVwUGF0aCkgeyAvLyB1bmFibGUgdG8gcmVzb2x2ZSBwYXRoXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCByZWxEZXBQYXRoID0gcmVsYXRpdmUoZGlybmFtZShteVBhdGgpLCBhYnNEZXBQYXRoKVxuXG4gICAgICBpZiAoaW1wb3J0VHlwZShyZWxEZXBQYXRoLCBjb250ZXh0KSA9PT0gJ3BhcmVudCcpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIG5vZGU6IHNvdXJjZU5vZGUsXG4gICAgICAgICAgbWVzc2FnZTogJ1JlbGF0aXZlIGltcG9ydHMgZnJvbSBwYXJlbnQgZGlyZWN0b3JpZXMgYXJlIG5vdCBhbGxvd2VkLiAnICtcbiAgICAgICAgICAgIGBQbGVhc2UgZWl0aGVyIHBhc3Mgd2hhdCB5b3UncmUgaW1wb3J0aW5nIHRocm91Z2ggYXQgcnVudGltZSBgICtcbiAgICAgICAgICAgIGAoZGVwZW5kZW5jeSBpbmplY3Rpb24pLCBtb3ZlIFxcYCR7YmFzZW5hbWUobXlQYXRoKX1cXGAgdG8gc2FtZSBgICtcbiAgICAgICAgICAgIGBkaXJlY3RvcnkgYXMgXFxgJHtkZXBQYXRofVxcYCBvciBjb25zaWRlciBtYWtpbmcgXFxgJHtkZXBQYXRofVxcYCBhIHBhY2thZ2UuYCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbW9kdWxlVmlzaXRvcihjaGVja1NvdXJjZVZhbHVlLCBjb250ZXh0Lm9wdGlvbnNbMF0pXG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-restricted-paths.js b/node_modules/eslint-plugin-import/lib/rules/no-restricted-paths.js index 4e836e57..d318e408 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-restricted-paths.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-restricted-paths.js @@ -1,41 +1,20 @@ -'use strict'; +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}();var _containsPath = require('contains-path');var _containsPath2 = _interopRequireDefault(_containsPath); +var _path = require('path');var _path2 = _interopRequireDefault(_path); -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _containsPath = require('contains-path'); - -var _containsPath2 = _interopRequireDefault(_containsPath); - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -var _importType = require('../core/importType'); - -var _importType2 = _interopRequireDefault(_importType); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); +var _importType = require('../core/importType');var _importType2 = _interopRequireDefault(_importType);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('no-restricted-paths') - }, + url: (0, _docsUrl2.default)('no-restricted-paths') }, - schema: [{ + + schema: [ + { type: 'object', properties: { zones: { @@ -49,19 +28,21 @@ module.exports = { except: { type: 'array', items: { - type: 'string' - }, - uniqueItems: true - } - }, - additionalProperties: false - } - }, - basePath: { type: 'string' } - }, - additionalProperties: false - }] - }, + type: 'string' }, + + uniqueItems: true }, + + message: { type: 'string' } }, + + additionalProperties: false } }, + + + basePath: { type: 'string' } }, + + additionalProperties: false }] }, + + + create: function noRestrictedPaths(context) { const options = context.options[0] || {}; @@ -83,8 +64,8 @@ module.exports = { function reportInvalidExceptionPath(node) { context.report({ node, - message: 'Restricted path exceptions must be descendants of the configured `from` path for that zone.' - }); + message: 'Restricted path exceptions must be descendants of the configured `from` path for that zone.' }); + } function checkForRestrictedImportPath(importPath, node) { @@ -102,15 +83,19 @@ module.exports = { return; } - const absoluteExceptionPaths = exceptionPaths.map(exceptionPath => _path2.default.resolve(absoluteFrom, exceptionPath)); - const hasValidExceptionPaths = absoluteExceptionPaths.every(absoluteExceptionPath => isValidExceptionPath(absoluteFrom, absoluteExceptionPath)); + const absoluteExceptionPaths = exceptionPaths.map(exceptionPath => + _path2.default.resolve(absoluteFrom, exceptionPath)); + + const hasValidExceptionPaths = absoluteExceptionPaths. + every(absoluteExceptionPath => isValidExceptionPath(absoluteFrom, absoluteExceptionPath)); if (!hasValidExceptionPaths) { reportInvalidExceptionPath(node); return; } - const pathIsExcepted = absoluteExceptionPaths.some(absoluteExceptionPath => (0, _containsPath2.default)(absoluteImportPath, absoluteExceptionPath)); + const pathIsExcepted = absoluteExceptionPaths. + some(absoluteExceptionPath => (0, _containsPath2.default)(absoluteImportPath, absoluteExceptionPath)); if (pathIsExcepted) { return; @@ -118,9 +103,9 @@ module.exports = { context.report({ node, - message: `Unexpected path "{{importPath}}" imported in restricted zone.`, - data: { importPath } - }); + message: `Unexpected path "{{importPath}}" imported in restricted zone.${zone.message ? ` ${zone.message}` : ''}`, + data: { importPath } }); + }); } @@ -129,16 +114,12 @@ module.exports = { checkForRestrictedImportPath(node.source.value, node.source); }, CallExpression(node) { - if ((0, _staticRequire2.default)(node)) { - var _node$arguments = _slicedToArray(node.arguments, 1); - - const firstArgument = _node$arguments[0]; - + if ((0, _staticRequire2.default)(node)) {var _node$arguments = _slicedToArray( + node.arguments, 1);const firstArgument = _node$arguments[0]; checkForRestrictedImportPath(firstArgument.value, firstArgument); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1yZXN0cmljdGVkLXBhdGhzLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiem9uZXMiLCJtaW5JdGVtcyIsIml0ZW1zIiwidGFyZ2V0IiwiZnJvbSIsImV4Y2VwdCIsInVuaXF1ZUl0ZW1zIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJiYXNlUGF0aCIsImNyZWF0ZSIsIm5vUmVzdHJpY3RlZFBhdGhzIiwiY29udGV4dCIsIm9wdGlvbnMiLCJyZXN0cmljdGVkUGF0aHMiLCJwcm9jZXNzIiwiY3dkIiwiY3VycmVudEZpbGVuYW1lIiwiZ2V0RmlsZW5hbWUiLCJtYXRjaGluZ1pvbmVzIiwiZmlsdGVyIiwiem9uZSIsInRhcmdldFBhdGgiLCJwYXRoIiwicmVzb2x2ZSIsImlzVmFsaWRFeGNlcHRpb25QYXRoIiwiYWJzb2x1dGVGcm9tUGF0aCIsImFic29sdXRlRXhjZXB0aW9uUGF0aCIsInJlbGF0aXZlRXhjZXB0aW9uUGF0aCIsInJlbGF0aXZlIiwicmVwb3J0SW52YWxpZEV4Y2VwdGlvblBhdGgiLCJub2RlIiwicmVwb3J0IiwibWVzc2FnZSIsImNoZWNrRm9yUmVzdHJpY3RlZEltcG9ydFBhdGgiLCJpbXBvcnRQYXRoIiwiYWJzb2x1dGVJbXBvcnRQYXRoIiwiZm9yRWFjaCIsImV4Y2VwdGlvblBhdGhzIiwiYWJzb2x1dGVGcm9tIiwiYWJzb2x1dGVFeGNlcHRpb25QYXRocyIsIm1hcCIsImV4Y2VwdGlvblBhdGgiLCJoYXNWYWxpZEV4Y2VwdGlvblBhdGhzIiwiZXZlcnkiLCJwYXRoSXNFeGNlcHRlZCIsInNvbWUiLCJkYXRhIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJzb3VyY2UiLCJ2YWx1ZSIsIkNhbGxFeHByZXNzaW9uIiwiYXJndW1lbnRzIiwiZmlyc3RBcmd1bWVudCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOzs7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O0FBQ0E7QUFDRDs7QUFFRCxjQUFNYyxpQkFBaUJMLHVCQUNwQk0sSUFEb0IsQ0FDZG5CLHFCQUFELElBQTJCLDRCQUFhUyxrQkFBYixFQUFpQ1QscUJBQWpDLENBRFosQ0FBdkI7O0FBR0EsWUFBSWtCLGNBQUosRUFBb0I7QUFDbEI7QUFDRDs7QUFFRGpDLGdCQUFRb0IsTUFBUixDQUFlO0FBQ2JELGNBRGE7QUFFYkUsbUJBQVUsK0RBRkc7QUFHYmMsZ0JBQU0sRUFBRVosVUFBRjtBQUhPLFNBQWY7QUFLRCxPQS9CRDtBQWdDSDs7QUFFRCxXQUFPO0FBQ0xhLHdCQUFrQmpCLElBQWxCLEVBQXdCO0FBQ3RCRyxxQ0FBNkJILEtBQUtrQixNQUFMLENBQVlDLEtBQXpDLEVBQWdEbkIsS0FBS2tCLE1BQXJEO0FBQ0QsT0FISTtBQUlMRSxxQkFBZXBCLElBQWYsRUFBcUI7QUFDbkIsWUFBSSw2QkFBZ0JBLElBQWhCLENBQUosRUFBMkI7QUFBQSwrQ0FDQ0EsS0FBS3FCLFNBRE47O0FBQUEsZ0JBQ2pCQyxhQURpQjs7O0FBR3pCbkIsdUNBQTZCbUIsY0FBY0gsS0FBM0MsRUFBa0RHLGFBQWxEO0FBQ0Q7QUFDRjtBQVZJLEtBQVA7QUFZRDtBQWxIYyxDQUFqQiIsImZpbGUiOiJuby1yZXN0cmljdGVkLXBhdGhzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbnRhaW5zUGF0aCBmcm9tICdjb250YWlucy1wYXRoJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcblxuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuaW1wb3J0IGltcG9ydFR5cGUgZnJvbSAnLi4vY29yZS9pbXBvcnRUeXBlJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLXJlc3RyaWN0ZWQtcGF0aHMnKSxcbiAgICB9LFxuXG4gICAgc2NoZW1hOiBbXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgem9uZXM6IHtcbiAgICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgICBtaW5JdGVtczogMSxcbiAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgdGFyZ2V0OiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICAgICAgZnJvbTogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgICAgIGV4Y2VwdDoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBiYXNlUGF0aDogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICB9LFxuICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiBub1Jlc3RyaWN0ZWRQYXRocyhjb250ZXh0KSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQub3B0aW9uc1swXSB8fCB7fVxuICAgIGNvbnN0IHJlc3RyaWN0ZWRQYXRocyA9IG9wdGlvbnMuem9uZXMgfHwgW11cbiAgICBjb25zdCBiYXNlUGF0aCA9IG9wdGlvbnMuYmFzZVBhdGggfHwgcHJvY2Vzcy5jd2QoKVxuICAgIGNvbnN0IGN1cnJlbnRGaWxlbmFtZSA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKVxuICAgIGNvbnN0IG1hdGNoaW5nWm9uZXMgPSByZXN0cmljdGVkUGF0aHMuZmlsdGVyKCh6b25lKSA9PiB7XG4gICAgICBjb25zdCB0YXJnZXRQYXRoID0gcGF0aC5yZXNvbHZlKGJhc2VQYXRoLCB6b25lLnRhcmdldClcblxuICAgICAgcmV0dXJuIGNvbnRhaW5zUGF0aChjdXJyZW50RmlsZW5hbWUsIHRhcmdldFBhdGgpXG4gICAgfSlcblxuICAgIGZ1bmN0aW9uIGlzVmFsaWRFeGNlcHRpb25QYXRoKGFic29sdXRlRnJvbVBhdGgsIGFic29sdXRlRXhjZXB0aW9uUGF0aCkge1xuICAgICAgY29uc3QgcmVsYXRpdmVFeGNlcHRpb25QYXRoID0gcGF0aC5yZWxhdGl2ZShhYnNvbHV0ZUZyb21QYXRoLCBhYnNvbHV0ZUV4Y2VwdGlvblBhdGgpXG5cbiAgICAgIHJldHVybiBpbXBvcnRUeXBlKHJlbGF0aXZlRXhjZXB0aW9uUGF0aCwgY29udGV4dCkgIT09ICdwYXJlbnQnXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmVwb3J0SW52YWxpZEV4Y2VwdGlvblBhdGgobm9kZSkge1xuICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICBub2RlLFxuICAgICAgICBtZXNzYWdlOiAnUmVzdHJpY3RlZCBwYXRoIGV4Y2VwdGlvbnMgbXVzdCBiZSBkZXNjZW5kYW50cyBvZiB0aGUgY29uZmlndXJlZCBgZnJvbWAgcGF0aCBmb3IgdGhhdCB6b25lLicsXG4gICAgICB9KVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNoZWNrRm9yUmVzdHJpY3RlZEltcG9ydFBhdGgoaW1wb3J0UGF0aCwgbm9kZSkge1xuICAgICAgICBjb25zdCBhYnNvbHV0ZUltcG9ydFBhdGggPSByZXNvbHZlKGltcG9ydFBhdGgsIGNvbnRleHQpXG5cbiAgICAgICAgaWYgKCFhYnNvbHV0ZUltcG9ydFBhdGgpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIG1hdGNoaW5nWm9uZXMuZm9yRWFjaCgoem9uZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGV4Y2VwdGlvblBhdGhzID0gem9uZS5leGNlcHQgfHwgW11cbiAgICAgICAgICBjb25zdCBhYnNvbHV0ZUZyb20gPSBwYXRoLnJlc29sdmUoYmFzZVBhdGgsIHpvbmUuZnJvbSlcblxuICAgICAgICAgIGlmICghY29udGFpbnNQYXRoKGFic29sdXRlSW1wb3J0UGF0aCwgYWJzb2x1dGVGcm9tKSkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYWJzb2x1dGVFeGNlcHRpb25QYXRocyA9IGV4Y2VwdGlvblBhdGhzLm1hcCgoZXhjZXB0aW9uUGF0aCkgPT5cbiAgICAgICAgICAgIHBhdGgucmVzb2x2ZShhYnNvbHV0ZUZyb20sIGV4Y2VwdGlvblBhdGgpXG4gICAgICAgICAgKVxuICAgICAgICAgIGNvbnN0IGhhc1ZhbGlkRXhjZXB0aW9uUGF0aHMgPSBhYnNvbHV0ZUV4Y2VwdGlvblBhdGhzXG4gICAgICAgICAgICAuZXZlcnkoKGFic29sdXRlRXhjZXB0aW9uUGF0aCkgPT4gaXNWYWxpZEV4Y2VwdGlvblBhdGgoYWJzb2x1dGVGcm9tLCBhYnNvbHV0ZUV4Y2VwdGlvblBhdGgpKVxuXG4gICAgICAgICAgaWYgKCFoYXNWYWxpZEV4Y2VwdGlvblBhdGhzKSB7XG4gICAgICAgICAgICByZXBvcnRJbnZhbGlkRXhjZXB0aW9uUGF0aChub2RlKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgcGF0aElzRXhjZXB0ZWQgPSBhYnNvbHV0ZUV4Y2VwdGlvblBhdGhzXG4gICAgICAgICAgICAuc29tZSgoYWJzb2x1dGVFeGNlcHRpb25QYXRoKSA9PiBjb250YWluc1BhdGgoYWJzb2x1dGVJbXBvcnRQYXRoLCBhYnNvbHV0ZUV4Y2VwdGlvblBhdGgpKVxuXG4gICAgICAgICAgaWYgKHBhdGhJc0V4Y2VwdGVkKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWVzc2FnZTogYFVuZXhwZWN0ZWQgcGF0aCBcInt7aW1wb3J0UGF0aH19XCIgaW1wb3J0ZWQgaW4gcmVzdHJpY3RlZCB6b25lLmAsXG4gICAgICAgICAgICBkYXRhOiB7IGltcG9ydFBhdGggfSxcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGNoZWNrRm9yUmVzdHJpY3RlZEltcG9ydFBhdGgobm9kZS5zb3VyY2UudmFsdWUsIG5vZGUuc291cmNlKVxuICAgICAgfSxcbiAgICAgIENhbGxFeHByZXNzaW9uKG5vZGUpIHtcbiAgICAgICAgaWYgKGlzU3RhdGljUmVxdWlyZShub2RlKSkge1xuICAgICAgICAgIGNvbnN0IFsgZmlyc3RBcmd1bWVudCBdID0gbm9kZS5hcmd1bWVudHNcblxuICAgICAgICAgIGNoZWNrRm9yUmVzdHJpY3RlZEltcG9ydFBhdGgoZmlyc3RBcmd1bWVudC52YWx1ZSwgZmlyc3RBcmd1bWVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1yZXN0cmljdGVkLXBhdGhzLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiem9uZXMiLCJtaW5JdGVtcyIsIml0ZW1zIiwidGFyZ2V0IiwiZnJvbSIsImV4Y2VwdCIsInVuaXF1ZUl0ZW1zIiwibWVzc2FnZSIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiYmFzZVBhdGgiLCJjcmVhdGUiLCJub1Jlc3RyaWN0ZWRQYXRocyIsImNvbnRleHQiLCJvcHRpb25zIiwicmVzdHJpY3RlZFBhdGhzIiwicHJvY2VzcyIsImN3ZCIsImN1cnJlbnRGaWxlbmFtZSIsImdldEZpbGVuYW1lIiwibWF0Y2hpbmdab25lcyIsImZpbHRlciIsInpvbmUiLCJ0YXJnZXRQYXRoIiwicGF0aCIsInJlc29sdmUiLCJpc1ZhbGlkRXhjZXB0aW9uUGF0aCIsImFic29sdXRlRnJvbVBhdGgiLCJhYnNvbHV0ZUV4Y2VwdGlvblBhdGgiLCJyZWxhdGl2ZUV4Y2VwdGlvblBhdGgiLCJyZWxhdGl2ZSIsInJlcG9ydEludmFsaWRFeGNlcHRpb25QYXRoIiwibm9kZSIsInJlcG9ydCIsImNoZWNrRm9yUmVzdHJpY3RlZEltcG9ydFBhdGgiLCJpbXBvcnRQYXRoIiwiYWJzb2x1dGVJbXBvcnRQYXRoIiwiZm9yRWFjaCIsImV4Y2VwdGlvblBhdGhzIiwiYWJzb2x1dGVGcm9tIiwiYWJzb2x1dGVFeGNlcHRpb25QYXRocyIsIm1hcCIsImV4Y2VwdGlvblBhdGgiLCJoYXNWYWxpZEV4Y2VwdGlvblBhdGhzIiwiZXZlcnkiLCJwYXRoSXNFeGNlcHRlZCIsInNvbWUiLCJkYXRhIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJzb3VyY2UiLCJ2YWx1ZSIsIkNhbGxFeHByZXNzaW9uIiwiYXJndW1lbnRzIiwiZmlyc3RBcmd1bWVudCJdLCJtYXBwaW5ncyI6InFvQkFBQSw2QztB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WUFBSSxDQUFDZSxzQkFBTCxFQUE2QjtBQUMzQloscUNBQTJCQyxJQUEzQjtBQUNBO0FBQ0Q7O0FBRUQsY0FBTWEsaUJBQWlCTDtBQUNwQk0sWUFEb0IsQ0FDZGxCLHFCQUFELElBQTJCLDRCQUFhUSxrQkFBYixFQUFpQ1IscUJBQWpDLENBRFosQ0FBdkI7O0FBR0EsWUFBSWlCLGNBQUosRUFBb0I7QUFDbEI7QUFDRDs7QUFFRGhDLGdCQUFRb0IsTUFBUixDQUFlO0FBQ2JELGNBRGE7QUFFYnhCLG1CQUFVLGdFQUErRGMsS0FBS2QsT0FBTCxHQUFnQixJQUFHYyxLQUFLZCxPQUFRLEVBQWhDLEdBQW9DLEVBQUcsRUFGbkc7QUFHYnVDLGdCQUFNLEVBQUVaLFVBQUYsRUFITyxFQUFmOztBQUtELE9BL0JEO0FBZ0NIOztBQUVELFdBQU87QUFDTGEsd0JBQWtCaEIsSUFBbEIsRUFBd0I7QUFDdEJFLHFDQUE2QkYsS0FBS2lCLE1BQUwsQ0FBWUMsS0FBekMsRUFBZ0RsQixLQUFLaUIsTUFBckQ7QUFDRCxPQUhJO0FBSUxFLHFCQUFlbkIsSUFBZixFQUFxQjtBQUNuQixZQUFJLDZCQUFnQkEsSUFBaEIsQ0FBSixFQUEyQjtBQUNDQSxlQUFLb0IsU0FETixXQUNqQkMsYUFEaUI7O0FBR3pCbkIsdUNBQTZCbUIsY0FBY0gsS0FBM0MsRUFBa0RHLGFBQWxEO0FBQ0Q7QUFDRixPQVZJLEVBQVA7O0FBWUQsR0FuSGMsRUFBakIiLCJmaWxlIjoibm8tcmVzdHJpY3RlZC1wYXRocy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjb250YWluc1BhdGggZnJvbSAnY29udGFpbnMtcGF0aCdcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5cbmltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcbmltcG9ydCBpc1N0YXRpY1JlcXVpcmUgZnJvbSAnLi4vY29yZS9zdGF0aWNSZXF1aXJlJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcbmltcG9ydCBpbXBvcnRUeXBlIGZyb20gJy4uL2NvcmUvaW1wb3J0VHlwZSdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby1yZXN0cmljdGVkLXBhdGhzJyksXG4gICAgfSxcblxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIHpvbmVzOiB7XG4gICAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgICAgbWluSXRlbXM6IDEsXG4gICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgIHRhcmdldDogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgICAgIGZyb206IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgICAgICBleGNlcHQ6IHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGJhc2VQYXRoOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIG5vUmVzdHJpY3RlZFBhdGhzKGNvbnRleHQpIHtcbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG4gICAgY29uc3QgcmVzdHJpY3RlZFBhdGhzID0gb3B0aW9ucy56b25lcyB8fCBbXVxuICAgIGNvbnN0IGJhc2VQYXRoID0gb3B0aW9ucy5iYXNlUGF0aCB8fCBwcm9jZXNzLmN3ZCgpXG4gICAgY29uc3QgY3VycmVudEZpbGVuYW1lID0gY29udGV4dC5nZXRGaWxlbmFtZSgpXG4gICAgY29uc3QgbWF0Y2hpbmdab25lcyA9IHJlc3RyaWN0ZWRQYXRocy5maWx0ZXIoKHpvbmUpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldFBhdGggPSBwYXRoLnJlc29sdmUoYmFzZVBhdGgsIHpvbmUudGFyZ2V0KVxuXG4gICAgICByZXR1cm4gY29udGFpbnNQYXRoKGN1cnJlbnRGaWxlbmFtZSwgdGFyZ2V0UGF0aClcbiAgICB9KVxuXG4gICAgZnVuY3Rpb24gaXNWYWxpZEV4Y2VwdGlvblBhdGgoYWJzb2x1dGVGcm9tUGF0aCwgYWJzb2x1dGVFeGNlcHRpb25QYXRoKSB7XG4gICAgICBjb25zdCByZWxhdGl2ZUV4Y2VwdGlvblBhdGggPSBwYXRoLnJlbGF0aXZlKGFic29sdXRlRnJvbVBhdGgsIGFic29sdXRlRXhjZXB0aW9uUGF0aClcblxuICAgICAgcmV0dXJuIGltcG9ydFR5cGUocmVsYXRpdmVFeGNlcHRpb25QYXRoLCBjb250ZXh0KSAhPT0gJ3BhcmVudCdcbiAgICB9XG5cbiAgICBmdW5jdGlvbiByZXBvcnRJbnZhbGlkRXhjZXB0aW9uUGF0aChub2RlKSB7XG4gICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgIG5vZGUsXG4gICAgICAgIG1lc3NhZ2U6ICdSZXN0cmljdGVkIHBhdGggZXhjZXB0aW9ucyBtdXN0IGJlIGRlc2NlbmRhbnRzIG9mIHRoZSBjb25maWd1cmVkIGBmcm9tYCBwYXRoIGZvciB0aGF0IHpvbmUuJyxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY2hlY2tGb3JSZXN0cmljdGVkSW1wb3J0UGF0aChpbXBvcnRQYXRoLCBub2RlKSB7XG4gICAgICAgIGNvbnN0IGFic29sdXRlSW1wb3J0UGF0aCA9IHJlc29sdmUoaW1wb3J0UGF0aCwgY29udGV4dClcblxuICAgICAgICBpZiAoIWFic29sdXRlSW1wb3J0UGF0aCkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgbWF0Y2hpbmdab25lcy5mb3JFYWNoKCh6b25lKSA9PiB7XG4gICAgICAgICAgY29uc3QgZXhjZXB0aW9uUGF0aHMgPSB6b25lLmV4Y2VwdCB8fCBbXVxuICAgICAgICAgIGNvbnN0IGFic29sdXRlRnJvbSA9IHBhdGgucmVzb2x2ZShiYXNlUGF0aCwgem9uZS5mcm9tKVxuXG4gICAgICAgICAgaWYgKCFjb250YWluc1BhdGgoYWJzb2x1dGVJbXBvcnRQYXRoLCBhYnNvbHV0ZUZyb20pKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBhYnNvbHV0ZUV4Y2VwdGlvblBhdGhzID0gZXhjZXB0aW9uUGF0aHMubWFwKChleGNlcHRpb25QYXRoKSA9PlxuICAgICAgICAgICAgcGF0aC5yZXNvbHZlKGFic29sdXRlRnJvbSwgZXhjZXB0aW9uUGF0aClcbiAgICAgICAgICApXG4gICAgICAgICAgY29uc3QgaGFzVmFsaWRFeGNlcHRpb25QYXRocyA9IGFic29sdXRlRXhjZXB0aW9uUGF0aHNcbiAgICAgICAgICAgIC5ldmVyeSgoYWJzb2x1dGVFeGNlcHRpb25QYXRoKSA9PiBpc1ZhbGlkRXhjZXB0aW9uUGF0aChhYnNvbHV0ZUZyb20sIGFic29sdXRlRXhjZXB0aW9uUGF0aCkpXG5cbiAgICAgICAgICBpZiAoIWhhc1ZhbGlkRXhjZXB0aW9uUGF0aHMpIHtcbiAgICAgICAgICAgIHJlcG9ydEludmFsaWRFeGNlcHRpb25QYXRoKG5vZGUpXG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwYXRoSXNFeGNlcHRlZCA9IGFic29sdXRlRXhjZXB0aW9uUGF0aHNcbiAgICAgICAgICAgIC5zb21lKChhYnNvbHV0ZUV4Y2VwdGlvblBhdGgpID0+IGNvbnRhaW5zUGF0aChhYnNvbHV0ZUltcG9ydFBhdGgsIGFic29sdXRlRXhjZXB0aW9uUGF0aCkpXG5cbiAgICAgICAgICBpZiAocGF0aElzRXhjZXB0ZWQpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBtZXNzYWdlOiBgVW5leHBlY3RlZCBwYXRoIFwie3tpbXBvcnRQYXRofX1cIiBpbXBvcnRlZCBpbiByZXN0cmljdGVkIHpvbmUuJHt6b25lLm1lc3NhZ2UgPyBgICR7em9uZS5tZXNzYWdlfWAgOiAnJ31gLFxuICAgICAgICAgICAgZGF0YTogeyBpbXBvcnRQYXRoIH0sXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgICBjaGVja0ZvclJlc3RyaWN0ZWRJbXBvcnRQYXRoKG5vZGUuc291cmNlLnZhbHVlLCBub2RlLnNvdXJjZSlcbiAgICAgIH0sXG4gICAgICBDYWxsRXhwcmVzc2lvbihub2RlKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY1JlcXVpcmUobm9kZSkpIHtcbiAgICAgICAgICBjb25zdCBbIGZpcnN0QXJndW1lbnQgXSA9IG5vZGUuYXJndW1lbnRzXG5cbiAgICAgICAgICBjaGVja0ZvclJlc3RyaWN0ZWRJbXBvcnRQYXRoKGZpcnN0QXJndW1lbnQudmFsdWUsIGZpcnN0QXJndW1lbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-self-import.js b/node_modules/eslint-plugin-import/lib/rules/no-self-import.js index 068833a1..50951630 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-self-import.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-self-import.js @@ -1,18 +1,11 @@ 'use strict'; -var _resolve = require('eslint-module-utils/resolve'); -var _resolve2 = _interopRequireDefault(_resolve); -var _staticRequire = require('../core/staticRequire'); -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} function isImportingSelf(context, node, requireName) { const filePath = context.getFilename(); @@ -21,25 +14,22 @@ function isImportingSelf(context, node, requireName) { if (filePath !== '' && filePath === (0, _resolve2.default)(requireName, context)) { context.report({ node, - message: 'Module imports itself.' - }); + message: 'Module imports itself.' }); + } } /** * @fileOverview Forbids a module from importing itself * @author Gio d'Amelio - */ - -module.exports = { - meta: { + */module.exports = { meta: { type: 'problem', docs: { description: 'Forbid a module from importing itself', recommended: true, - url: (0, _docsUrl2.default)('no-self-import') - }, + url: (0, _docsUrl2.default)('no-self-import') }, + + + schema: [] }, - schema: [] - }, create: function (context) { return { ImportDeclaration(node) { @@ -49,8 +39,7 @@ module.exports = { if ((0, _staticRequire2.default)(node)) { isImportingSelf(context, node, node.arguments[0].value); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1zZWxmLWltcG9ydC5qcyJdLCJuYW1lcyI6WyJpc0ltcG9ydGluZ1NlbGYiLCJjb250ZXh0Iiwibm9kZSIsInJlcXVpcmVOYW1lIiwiZmlsZVBhdGgiLCJnZXRGaWxlbmFtZSIsInJlcG9ydCIsIm1lc3NhZ2UiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwiZGVzY3JpcHRpb24iLCJyZWNvbW1lbmRlZCIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsIkltcG9ydERlY2xhcmF0aW9uIiwic291cmNlIiwidmFsdWUiLCJDYWxsRXhwcmVzc2lvbiIsImFyZ3VtZW50cyJdLCJtYXBwaW5ncyI6Ijs7QUFLQTs7OztBQUNBOzs7O0FBQ0E7Ozs7OztBQUVBLFNBQVNBLGVBQVQsQ0FBeUJDLE9BQXpCLEVBQWtDQyxJQUFsQyxFQUF3Q0MsV0FBeEMsRUFBcUQ7QUFDbkQsUUFBTUMsV0FBV0gsUUFBUUksV0FBUixFQUFqQjs7QUFFQTtBQUNBLE1BQUlELGFBQWEsUUFBYixJQUF5QkEsYUFBYSx1QkFBUUQsV0FBUixFQUFxQkYsT0FBckIsQ0FBMUMsRUFBeUU7QUFDdkVBLFlBQVFLLE1BQVIsQ0FBZTtBQUNYSixVQURXO0FBRVhLLGVBQVM7QUFGRSxLQUFmO0FBSUQ7QUFDRixDLENBbkJEOzs7OztBQXFCQUMsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sU0FERjtBQUVKQyxVQUFNO0FBQ0pDLG1CQUFhLHVDQURUO0FBRUpDLG1CQUFhLElBRlQ7QUFHSkMsV0FBSyx1QkFBUSxnQkFBUjtBQUhELEtBRkY7O0FBUUpDLFlBQVE7QUFSSixHQURTO0FBV2ZDLFVBQVEsVUFBVWhCLE9BQVYsRUFBbUI7QUFDekIsV0FBTztBQUNMaUIsd0JBQWtCaEIsSUFBbEIsRUFBd0I7QUFDdEJGLHdCQUFnQkMsT0FBaEIsRUFBeUJDLElBQXpCLEVBQStCQSxLQUFLaUIsTUFBTCxDQUFZQyxLQUEzQztBQUNELE9BSEk7QUFJTEMscUJBQWVuQixJQUFmLEVBQXFCO0FBQ25CLFlBQUksNkJBQWdCQSxJQUFoQixDQUFKLEVBQTJCO0FBQ3pCRiwwQkFBZ0JDLE9BQWhCLEVBQXlCQyxJQUF6QixFQUErQkEsS0FBS29CLFNBQUwsQ0FBZSxDQUFmLEVBQWtCRixLQUFqRDtBQUNEO0FBQ0Y7QUFSSSxLQUFQO0FBVUQ7QUF0QmMsQ0FBakIiLCJmaWxlIjoibm8tc2VsZi1pbXBvcnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlT3ZlcnZpZXcgRm9yYmlkcyBhIG1vZHVsZSBmcm9tIGltcG9ydGluZyBpdHNlbGZcbiAqIEBhdXRob3IgR2lvIGQnQW1lbGlvXG4gKi9cblxuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiBpc0ltcG9ydGluZ1NlbGYoY29udGV4dCwgbm9kZSwgcmVxdWlyZU5hbWUpIHtcbiAgY29uc3QgZmlsZVBhdGggPSBjb250ZXh0LmdldEZpbGVuYW1lKClcblxuICAvLyBJZiB0aGUgaW5wdXQgaXMgZnJvbSBzdGRpbiwgdGhpcyB0ZXN0IGNhbid0IGZhaWxcbiAgaWYgKGZpbGVQYXRoICE9PSAnPHRleHQ+JyAmJiBmaWxlUGF0aCA9PT0gcmVzb2x2ZShyZXF1aXJlTmFtZSwgY29udGV4dCkpIHtcbiAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgIG5vZGUsXG4gICAgICAgIG1lc3NhZ2U6ICdNb2R1bGUgaW1wb3J0cyBpdHNlbGYuJyxcbiAgICB9KVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnRm9yYmlkIGEgbW9kdWxlIGZyb20gaW1wb3J0aW5nIGl0c2VsZicsXG4gICAgICByZWNvbW1lbmRlZDogdHJ1ZSxcbiAgICAgIHVybDogZG9jc1VybCgnbm8tc2VsZi1pbXBvcnQnKSxcbiAgICB9LFxuXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICAgIGlzSW1wb3J0aW5nU2VsZihjb250ZXh0LCBub2RlLCBub2RlLnNvdXJjZS52YWx1ZSlcbiAgICAgIH0sXG4gICAgICBDYWxsRXhwcmVzc2lvbihub2RlKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY1JlcXVpcmUobm9kZSkpIHtcbiAgICAgICAgICBpc0ltcG9ydGluZ1NlbGYoY29udGV4dCwgbm9kZSwgbm9kZS5hcmd1bWVudHNbMF0udmFsdWUpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1zZWxmLWltcG9ydC5qcyJdLCJuYW1lcyI6WyJpc0ltcG9ydGluZ1NlbGYiLCJjb250ZXh0Iiwibm9kZSIsInJlcXVpcmVOYW1lIiwiZmlsZVBhdGgiLCJnZXRGaWxlbmFtZSIsInJlcG9ydCIsIm1lc3NhZ2UiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwiZGVzY3JpcHRpb24iLCJyZWNvbW1lbmRlZCIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsIkltcG9ydERlY2xhcmF0aW9uIiwic291cmNlIiwidmFsdWUiLCJDYWxsRXhwcmVzc2lvbiIsImFyZ3VtZW50cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSxzRDtBQUNBLHNEO0FBQ0EscUM7O0FBRUEsU0FBU0EsZUFBVCxDQUF5QkMsT0FBekIsRUFBa0NDLElBQWxDLEVBQXdDQyxXQUF4QyxFQUFxRDtBQUNuRCxRQUFNQyxXQUFXSCxRQUFRSSxXQUFSLEVBQWpCOztBQUVBO0FBQ0EsTUFBSUQsYUFBYSxRQUFiLElBQXlCQSxhQUFhLHVCQUFRRCxXQUFSLEVBQXFCRixPQUFyQixDQUExQyxFQUF5RTtBQUN2RUEsWUFBUUssTUFBUixDQUFlO0FBQ1hKLFVBRFc7QUFFWEssZUFBUyx3QkFGRSxFQUFmOztBQUlEO0FBQ0YsQyxDQW5CRDs7O0tBcUJBQyxPQUFPQyxPQUFQLEdBQWlCLEVBQ2ZDLE1BQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsbUJBQWEsdUNBRFQ7QUFFSkMsbUJBQWEsSUFGVDtBQUdKQyxXQUFLLHVCQUFRLGdCQUFSLENBSEQsRUFGRjs7O0FBUUpDLFlBQVEsRUFSSixFQURTOztBQVdmQyxVQUFRLFVBQVVoQixPQUFWLEVBQW1CO0FBQ3pCLFdBQU87QUFDTGlCLHdCQUFrQmhCLElBQWxCLEVBQXdCO0FBQ3RCRix3QkFBZ0JDLE9BQWhCLEVBQXlCQyxJQUF6QixFQUErQkEsS0FBS2lCLE1BQUwsQ0FBWUMsS0FBM0M7QUFDRCxPQUhJO0FBSUxDLHFCQUFlbkIsSUFBZixFQUFxQjtBQUNuQixZQUFJLDZCQUFnQkEsSUFBaEIsQ0FBSixFQUEyQjtBQUN6QkYsMEJBQWdCQyxPQUFoQixFQUF5QkMsSUFBekIsRUFBK0JBLEtBQUtvQixTQUFMLENBQWUsQ0FBZixFQUFrQkYsS0FBakQ7QUFDRDtBQUNGLE9BUkksRUFBUDs7QUFVRCxHQXRCYyxFQUFqQiIsImZpbGUiOiJuby1zZWxmLWltcG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVPdmVydmlldyBGb3JiaWRzIGEgbW9kdWxlIGZyb20gaW1wb3J0aW5nIGl0c2VsZlxuICogQGF1dGhvciBHaW8gZCdBbWVsaW9cbiAqL1xuXG5pbXBvcnQgcmVzb2x2ZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3Jlc29sdmUnXG5pbXBvcnQgaXNTdGF0aWNSZXF1aXJlIGZyb20gJy4uL2NvcmUvc3RhdGljUmVxdWlyZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIGlzSW1wb3J0aW5nU2VsZihjb250ZXh0LCBub2RlLCByZXF1aXJlTmFtZSkge1xuICBjb25zdCBmaWxlUGF0aCA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKVxuXG4gIC8vIElmIHRoZSBpbnB1dCBpcyBmcm9tIHN0ZGluLCB0aGlzIHRlc3QgY2FuJ3QgZmFpbFxuICBpZiAoZmlsZVBhdGggIT09ICc8dGV4dD4nICYmIGZpbGVQYXRoID09PSByZXNvbHZlKHJlcXVpcmVOYW1lLCBjb250ZXh0KSkge1xuICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgbm9kZSxcbiAgICAgICAgbWVzc2FnZTogJ01vZHVsZSBpbXBvcnRzIGl0c2VsZi4nLFxuICAgIH0pXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgZGVzY3JpcHRpb246ICdGb3JiaWQgYSBtb2R1bGUgZnJvbSBpbXBvcnRpbmcgaXRzZWxmJyxcbiAgICAgIHJlY29tbWVuZGVkOiB0cnVlLFxuICAgICAgdXJsOiBkb2NzVXJsKCduby1zZWxmLWltcG9ydCcpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgaXNJbXBvcnRpbmdTZWxmKGNvbnRleHQsIG5vZGUsIG5vZGUuc291cmNlLnZhbHVlKVxuICAgICAgfSxcbiAgICAgIENhbGxFeHByZXNzaW9uKG5vZGUpIHtcbiAgICAgICAgaWYgKGlzU3RhdGljUmVxdWlyZShub2RlKSkge1xuICAgICAgICAgIGlzSW1wb3J0aW5nU2VsZihjb250ZXh0LCBub2RlLCBub2RlLmFyZ3VtZW50c1swXS52YWx1ZSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-unassigned-import.js b/node_modules/eslint-plugin-import/lib/rules/no-unassigned-import.js index 65250b82..1d6d3f36 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-unassigned-import.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-unassigned-import.js @@ -1,28 +1,14 @@ -'use strict'; +'use strict';var _path = require('path');var _path2 = _interopRequireDefault(_path); +var _minimatch = require('minimatch');var _minimatch2 = _interopRequireDefault(_minimatch); -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _minimatch = require('minimatch'); - -var _minimatch2 = _interopRequireDefault(_minimatch); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} function report(context, node) { context.report({ node, - message: 'Imported module should be assigned' - }); + message: 'Imported module should be assigned' }); + } function testIsAllow(globs, filename, source) { @@ -32,14 +18,16 @@ function testIsAllow(globs, filename, source) { let filePath; - if (source[0] !== '.' && source[0] !== '/') { - // a node module + if (source[0] !== '.' && source[0] !== '/') {// a node module filePath = source; } else { filePath = _path2.default.resolve(_path2.default.dirname(filename), source); // get source absolute path } - return globs.find(glob => (0, _minimatch2.default)(filePath, glob) || (0, _minimatch2.default)(filePath, _path2.default.join(process.cwd(), glob))) !== undefined; + return globs.find(glob => + (0, _minimatch2.default)(filePath, glob) || + (0, _minimatch2.default)(filePath, _path2.default.join(process.cwd(), glob))) !== + undefined; } function create(context) { @@ -54,11 +42,13 @@ function create(context) { } }, ExpressionStatement(node) { - if (node.expression.type === 'CallExpression' && (0, _staticRequire2.default)(node.expression) && !isAllow(node.expression.arguments[0].value)) { + if (node.expression.type === 'CallExpression' && + (0, _staticRequire2.default)(node.expression) && + !isAllow(node.expression.arguments[0].value)) { report(context, node.expression); } - } - }; + } }; + } module.exports = { @@ -66,9 +56,10 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-unassigned-import') - }, - schema: [{ + url: (0, _docsUrl2.default)('no-unassigned-import') }, + + schema: [ + { 'type': 'object', 'properties': { 'devDependencies': { 'type': ['boolean', 'array'] }, @@ -77,12 +68,9 @@ module.exports = { 'allow': { 'type': 'array', 'items': { - 'type': 'string' - } - } - }, - 'additionalProperties': false - }] - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bmFzc2lnbmVkLWltcG9ydC5qcyJdLCJuYW1lcyI6WyJyZXBvcnQiLCJjb250ZXh0Iiwibm9kZSIsIm1lc3NhZ2UiLCJ0ZXN0SXNBbGxvdyIsImdsb2JzIiwiZmlsZW5hbWUiLCJzb3VyY2UiLCJBcnJheSIsImlzQXJyYXkiLCJmaWxlUGF0aCIsInBhdGgiLCJyZXNvbHZlIiwiZGlybmFtZSIsImZpbmQiLCJnbG9iIiwiam9pbiIsInByb2Nlc3MiLCJjd2QiLCJ1bmRlZmluZWQiLCJjcmVhdGUiLCJvcHRpb25zIiwiZ2V0RmlsZW5hbWUiLCJpc0FsbG93IiwiYWxsb3ciLCJJbXBvcnREZWNsYXJhdGlvbiIsInNwZWNpZmllcnMiLCJsZW5ndGgiLCJ2YWx1ZSIsIkV4cHJlc3Npb25TdGF0ZW1lbnQiLCJleHByZXNzaW9uIiwidHlwZSIsImFyZ3VtZW50cyIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwiZG9jcyIsInVybCIsInNjaGVtYSJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7OztBQUNBOzs7O0FBRUE7Ozs7QUFDQTs7Ozs7O0FBRUEsU0FBU0EsTUFBVCxDQUFnQkMsT0FBaEIsRUFBeUJDLElBQXpCLEVBQStCO0FBQzdCRCxVQUFRRCxNQUFSLENBQWU7QUFDYkUsUUFEYTtBQUViQyxhQUFTO0FBRkksR0FBZjtBQUlEOztBQUVELFNBQVNDLFdBQVQsQ0FBcUJDLEtBQXJCLEVBQTRCQyxRQUE1QixFQUFzQ0MsTUFBdEMsRUFBOEM7QUFDNUMsTUFBSSxDQUFDQyxNQUFNQyxPQUFOLENBQWNKLEtBQWQsQ0FBTCxFQUEyQjtBQUN6QixXQUFPLEtBQVAsQ0FEeUIsQ0FDWjtBQUNkOztBQUVELE1BQUlLLFFBQUo7O0FBRUEsTUFBSUgsT0FBTyxDQUFQLE1BQWMsR0FBZCxJQUFxQkEsT0FBTyxDQUFQLE1BQWMsR0FBdkMsRUFBNEM7QUFBRTtBQUM1Q0csZUFBV0gsTUFBWDtBQUNELEdBRkQsTUFFTztBQUNMRyxlQUFXQyxlQUFLQyxPQUFMLENBQWFELGVBQUtFLE9BQUwsQ0FBYVAsUUFBYixDQUFiLEVBQXFDQyxNQUFyQyxDQUFYLENBREssQ0FDbUQ7QUFDekQ7O0FBRUQsU0FBT0YsTUFBTVMsSUFBTixDQUFXQyxRQUNoQix5QkFBVUwsUUFBVixFQUFvQkssSUFBcEIsS0FDQSx5QkFBVUwsUUFBVixFQUFvQkMsZUFBS0ssSUFBTCxDQUFVQyxRQUFRQyxHQUFSLEVBQVYsRUFBeUJILElBQXpCLENBQXBCLENBRkssTUFHQUksU0FIUDtBQUlEOztBQUVELFNBQVNDLE1BQVQsQ0FBZ0JuQixPQUFoQixFQUF5QjtBQUN2QixRQUFNb0IsVUFBVXBCLFFBQVFvQixPQUFSLENBQWdCLENBQWhCLEtBQXNCLEVBQXRDO0FBQ0EsUUFBTWYsV0FBV0wsUUFBUXFCLFdBQVIsRUFBakI7QUFDQSxRQUFNQyxVQUFVaEIsVUFBVUgsWUFBWWlCLFFBQVFHLEtBQXBCLEVBQTJCbEIsUUFBM0IsRUFBcUNDLE1BQXJDLENBQTFCOztBQUVBLFNBQU87QUFDTGtCLHNCQUFrQnZCLElBQWxCLEVBQXdCO0FBQ3RCLFVBQUlBLEtBQUt3QixVQUFMLENBQWdCQyxNQUFoQixLQUEyQixDQUEzQixJQUFnQyxDQUFDSixRQUFRckIsS0FBS0ssTUFBTCxDQUFZcUIsS0FBcEIsQ0FBckMsRUFBaUU7QUFDL0Q1QixlQUFPQyxPQUFQLEVBQWdCQyxJQUFoQjtBQUNEO0FBQ0YsS0FMSTtBQU1MMkIsd0JBQW9CM0IsSUFBcEIsRUFBMEI7QUFDeEIsVUFBSUEsS0FBSzRCLFVBQUwsQ0FBZ0JDLElBQWhCLEtBQXlCLGdCQUF6QixJQUNGLDZCQUFnQjdCLEtBQUs0QixVQUFyQixDQURFLElBRUYsQ0FBQ1AsUUFBUXJCLEtBQUs0QixVQUFMLENBQWdCRSxTQUFoQixDQUEwQixDQUExQixFQUE2QkosS0FBckMsQ0FGSCxFQUVnRDtBQUM5QzVCLGVBQU9DLE9BQVAsRUFBZ0JDLEtBQUs0QixVQUFyQjtBQUNEO0FBQ0Y7QUFaSSxHQUFQO0FBY0Q7O0FBRURHLE9BQU9DLE9BQVAsR0FBaUI7QUFDZmQsUUFEZTtBQUVmZSxRQUFNO0FBQ0pKLFVBQU0sWUFERjtBQUVKSyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsc0JBQVI7QUFERCxLQUZGO0FBS0pDLFlBQVEsQ0FDTjtBQUNFLGNBQVEsUUFEVjtBQUVFLG9CQUFjO0FBQ1osMkJBQW1CLEVBQUUsUUFBUSxDQUFDLFNBQUQsRUFBWSxPQUFaLENBQVYsRUFEUDtBQUVaLGdDQUF3QixFQUFFLFFBQVEsQ0FBQyxTQUFELEVBQVksT0FBWixDQUFWLEVBRlo7QUFHWiw0QkFBb0IsRUFBRSxRQUFRLENBQUMsU0FBRCxFQUFZLE9BQVosQ0FBVixFQUhSO0FBSVosaUJBQVM7QUFDUCxrQkFBUSxPQUREO0FBRVAsbUJBQVM7QUFDUCxvQkFBUTtBQUREO0FBRkY7QUFKRyxPQUZoQjtBQWFFLDhCQUF3QjtBQWIxQixLQURNO0FBTEo7QUFGUyxDQUFqQiIsImZpbGUiOiJuby11bmFzc2lnbmVkLWltcG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgbWluaW1hdGNoIGZyb20gJ21pbmltYXRjaCdcblxuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiByZXBvcnQoY29udGV4dCwgbm9kZSkge1xuICBjb250ZXh0LnJlcG9ydCh7XG4gICAgbm9kZSxcbiAgICBtZXNzYWdlOiAnSW1wb3J0ZWQgbW9kdWxlIHNob3VsZCBiZSBhc3NpZ25lZCcsXG4gIH0pXG59XG5cbmZ1bmN0aW9uIHRlc3RJc0FsbG93KGdsb2JzLCBmaWxlbmFtZSwgc291cmNlKSB7XG4gIGlmICghQXJyYXkuaXNBcnJheShnbG9icykpIHtcbiAgICByZXR1cm4gZmFsc2UgLy8gZGVmYXVsdCBkb2Vzbid0IGFsbG93IGFueSBwYXR0ZXJuc1xuICB9XG5cbiAgbGV0IGZpbGVQYXRoXG5cbiAgaWYgKHNvdXJjZVswXSAhPT0gJy4nICYmIHNvdXJjZVswXSAhPT0gJy8nKSB7IC8vIGEgbm9kZSBtb2R1bGVcbiAgICBmaWxlUGF0aCA9IHNvdXJjZVxuICB9IGVsc2Uge1xuICAgIGZpbGVQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguZGlybmFtZShmaWxlbmFtZSksIHNvdXJjZSkgLy8gZ2V0IHNvdXJjZSBhYnNvbHV0ZSBwYXRoXG4gIH1cblxuICByZXR1cm4gZ2xvYnMuZmluZChnbG9iID0+IChcbiAgICBtaW5pbWF0Y2goZmlsZVBhdGgsIGdsb2IpIHx8XG4gICAgbWluaW1hdGNoKGZpbGVQYXRoLCBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgZ2xvYikpXG4gICkpICE9PSB1bmRlZmluZWRcbn1cblxuZnVuY3Rpb24gY3JlYXRlKGNvbnRleHQpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQub3B0aW9uc1swXSB8fCB7fVxuICBjb25zdCBmaWxlbmFtZSA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKVxuICBjb25zdCBpc0FsbG93ID0gc291cmNlID0+IHRlc3RJc0FsbG93KG9wdGlvbnMuYWxsb3csIGZpbGVuYW1lLCBzb3VyY2UpXG5cbiAgcmV0dXJuIHtcbiAgICBJbXBvcnREZWNsYXJhdGlvbihub2RlKSB7XG4gICAgICBpZiAobm9kZS5zcGVjaWZpZXJzLmxlbmd0aCA9PT0gMCAmJiAhaXNBbGxvdyhub2RlLnNvdXJjZS52YWx1ZSkpIHtcbiAgICAgICAgcmVwb3J0KGNvbnRleHQsIG5vZGUpXG4gICAgICB9XG4gICAgfSxcbiAgICBFeHByZXNzaW9uU3RhdGVtZW50KG5vZGUpIHtcbiAgICAgIGlmIChub2RlLmV4cHJlc3Npb24udHlwZSA9PT0gJ0NhbGxFeHByZXNzaW9uJyAmJlxuICAgICAgICBpc1N0YXRpY1JlcXVpcmUobm9kZS5leHByZXNzaW9uKSAmJlxuICAgICAgICAhaXNBbGxvdyhub2RlLmV4cHJlc3Npb24uYXJndW1lbnRzWzBdLnZhbHVlKSkge1xuICAgICAgICByZXBvcnQoY29udGV4dCwgbm9kZS5leHByZXNzaW9uKVxuICAgICAgfVxuICAgIH0sXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGNyZWF0ZSxcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLXVuYXNzaWduZWQtaW1wb3J0JyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgJ3R5cGUnOiAnb2JqZWN0JyxcbiAgICAgICAgJ3Byb3BlcnRpZXMnOiB7XG4gICAgICAgICAgJ2RldkRlcGVuZGVuY2llcyc6IHsgJ3R5cGUnOiBbJ2Jvb2xlYW4nLCAnYXJyYXknXSB9LFxuICAgICAgICAgICdvcHRpb25hbERlcGVuZGVuY2llcyc6IHsgJ3R5cGUnOiBbJ2Jvb2xlYW4nLCAnYXJyYXknXSB9LFxuICAgICAgICAgICdwZWVyRGVwZW5kZW5jaWVzJzogeyAndHlwZSc6IFsnYm9vbGVhbicsICdhcnJheSddIH0sXG4gICAgICAgICAgJ2FsbG93Jzoge1xuICAgICAgICAgICAgJ3R5cGUnOiAnYXJyYXknLFxuICAgICAgICAgICAgJ2l0ZW1zJzoge1xuICAgICAgICAgICAgICAndHlwZSc6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICAnYWRkaXRpb25hbFByb3BlcnRpZXMnOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + 'type': 'string' } } }, + + + + 'additionalProperties': false }] } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bmFzc2lnbmVkLWltcG9ydC5qcyJdLCJuYW1lcyI6WyJyZXBvcnQiLCJjb250ZXh0Iiwibm9kZSIsIm1lc3NhZ2UiLCJ0ZXN0SXNBbGxvdyIsImdsb2JzIiwiZmlsZW5hbWUiLCJzb3VyY2UiLCJBcnJheSIsImlzQXJyYXkiLCJmaWxlUGF0aCIsInBhdGgiLCJyZXNvbHZlIiwiZGlybmFtZSIsImZpbmQiLCJnbG9iIiwiam9pbiIsInByb2Nlc3MiLCJjd2QiLCJ1bmRlZmluZWQiLCJjcmVhdGUiLCJvcHRpb25zIiwiZ2V0RmlsZW5hbWUiLCJpc0FsbG93IiwiYWxsb3ciLCJJbXBvcnREZWNsYXJhdGlvbiIsInNwZWNpZmllcnMiLCJsZW5ndGgiLCJ2YWx1ZSIsIkV4cHJlc3Npb25TdGF0ZW1lbnQiLCJleHByZXNzaW9uIiwidHlwZSIsImFyZ3VtZW50cyIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwiZG9jcyIsInVybCIsInNjaGVtYSJdLCJtYXBwaW5ncyI6ImFBQUEsNEI7QUFDQSxzQzs7QUFFQSxzRDtBQUNBLHFDOztBQUVBLFNBQVNBLE1BQVQsQ0FBZ0JDLE9BQWhCLEVBQXlCQyxJQUF6QixFQUErQjtBQUM3QkQsVUFBUUQsTUFBUixDQUFlO0FBQ2JFLFFBRGE7QUFFYkMsYUFBUyxvQ0FGSSxFQUFmOztBQUlEOztBQUVELFNBQVNDLFdBQVQsQ0FBcUJDLEtBQXJCLEVBQTRCQyxRQUE1QixFQUFzQ0MsTUFBdEMsRUFBOEM7QUFDNUMsTUFBSSxDQUFDQyxNQUFNQyxPQUFOLENBQWNKLEtBQWQsQ0FBTCxFQUEyQjtBQUN6QixXQUFPLEtBQVAsQ0FEeUIsQ0FDWjtBQUNkOztBQUVELE1BQUlLLFFBQUo7O0FBRUEsTUFBSUgsT0FBTyxDQUFQLE1BQWMsR0FBZCxJQUFxQkEsT0FBTyxDQUFQLE1BQWMsR0FBdkMsRUFBNEMsQ0FBRTtBQUM1Q0csZUFBV0gsTUFBWDtBQUNELEdBRkQsTUFFTztBQUNMRyxlQUFXQyxlQUFLQyxPQUFMLENBQWFELGVBQUtFLE9BQUwsQ0FBYVAsUUFBYixDQUFiLEVBQXFDQyxNQUFyQyxDQUFYLENBREssQ0FDbUQ7QUFDekQ7O0FBRUQsU0FBT0YsTUFBTVMsSUFBTixDQUFXQztBQUNoQiwyQkFBVUwsUUFBVixFQUFvQkssSUFBcEI7QUFDQSwyQkFBVUwsUUFBVixFQUFvQkMsZUFBS0ssSUFBTCxDQUFVQyxRQUFRQyxHQUFSLEVBQVYsRUFBeUJILElBQXpCLENBQXBCLENBRks7QUFHQUksV0FIUDtBQUlEOztBQUVELFNBQVNDLE1BQVQsQ0FBZ0JuQixPQUFoQixFQUF5QjtBQUN2QixRQUFNb0IsVUFBVXBCLFFBQVFvQixPQUFSLENBQWdCLENBQWhCLEtBQXNCLEVBQXRDO0FBQ0EsUUFBTWYsV0FBV0wsUUFBUXFCLFdBQVIsRUFBakI7QUFDQSxRQUFNQyxVQUFVaEIsVUFBVUgsWUFBWWlCLFFBQVFHLEtBQXBCLEVBQTJCbEIsUUFBM0IsRUFBcUNDLE1BQXJDLENBQTFCOztBQUVBLFNBQU87QUFDTGtCLHNCQUFrQnZCLElBQWxCLEVBQXdCO0FBQ3RCLFVBQUlBLEtBQUt3QixVQUFMLENBQWdCQyxNQUFoQixLQUEyQixDQUEzQixJQUFnQyxDQUFDSixRQUFRckIsS0FBS0ssTUFBTCxDQUFZcUIsS0FBcEIsQ0FBckMsRUFBaUU7QUFDL0Q1QixlQUFPQyxPQUFQLEVBQWdCQyxJQUFoQjtBQUNEO0FBQ0YsS0FMSTtBQU1MMkIsd0JBQW9CM0IsSUFBcEIsRUFBMEI7QUFDeEIsVUFBSUEsS0FBSzRCLFVBQUwsQ0FBZ0JDLElBQWhCLEtBQXlCLGdCQUF6QjtBQUNGLG1DQUFnQjdCLEtBQUs0QixVQUFyQixDQURFO0FBRUYsT0FBQ1AsUUFBUXJCLEtBQUs0QixVQUFMLENBQWdCRSxTQUFoQixDQUEwQixDQUExQixFQUE2QkosS0FBckMsQ0FGSCxFQUVnRDtBQUM5QzVCLGVBQU9DLE9BQVAsRUFBZ0JDLEtBQUs0QixVQUFyQjtBQUNEO0FBQ0YsS0FaSSxFQUFQOztBQWNEOztBQUVERyxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZkLFFBRGU7QUFFZmUsUUFBTTtBQUNKSixVQUFNLFlBREY7QUFFSkssVUFBTTtBQUNKQyxXQUFLLHVCQUFRLHNCQUFSLENBREQsRUFGRjs7QUFLSkMsWUFBUTtBQUNOO0FBQ0UsY0FBUSxRQURWO0FBRUUsb0JBQWM7QUFDWiwyQkFBbUIsRUFBRSxRQUFRLENBQUMsU0FBRCxFQUFZLE9BQVosQ0FBVixFQURQO0FBRVosZ0NBQXdCLEVBQUUsUUFBUSxDQUFDLFNBQUQsRUFBWSxPQUFaLENBQVYsRUFGWjtBQUdaLDRCQUFvQixFQUFFLFFBQVEsQ0FBQyxTQUFELEVBQVksT0FBWixDQUFWLEVBSFI7QUFJWixpQkFBUztBQUNQLGtCQUFRLE9BREQ7QUFFUCxtQkFBUztBQUNQLG9CQUFRLFFBREQsRUFGRixFQUpHLEVBRmhCOzs7O0FBYUUsOEJBQXdCLEtBYjFCLEVBRE0sQ0FMSixFQUZTLEVBQWpCIiwiZmlsZSI6Im5vLXVuYXNzaWduZWQtaW1wb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCBtaW5pbWF0Y2ggZnJvbSAnbWluaW1hdGNoJ1xuXG5pbXBvcnQgaXNTdGF0aWNSZXF1aXJlIGZyb20gJy4uL2NvcmUvc3RhdGljUmVxdWlyZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIHJlcG9ydChjb250ZXh0LCBub2RlKSB7XG4gIGNvbnRleHQucmVwb3J0KHtcbiAgICBub2RlLFxuICAgIG1lc3NhZ2U6ICdJbXBvcnRlZCBtb2R1bGUgc2hvdWxkIGJlIGFzc2lnbmVkJyxcbiAgfSlcbn1cblxuZnVuY3Rpb24gdGVzdElzQWxsb3coZ2xvYnMsIGZpbGVuYW1lLCBzb3VyY2UpIHtcbiAgaWYgKCFBcnJheS5pc0FycmF5KGdsb2JzKSkge1xuICAgIHJldHVybiBmYWxzZSAvLyBkZWZhdWx0IGRvZXNuJ3QgYWxsb3cgYW55IHBhdHRlcm5zXG4gIH1cblxuICBsZXQgZmlsZVBhdGhcblxuICBpZiAoc291cmNlWzBdICE9PSAnLicgJiYgc291cmNlWzBdICE9PSAnLycpIHsgLy8gYSBub2RlIG1vZHVsZVxuICAgIGZpbGVQYXRoID0gc291cmNlXG4gIH0gZWxzZSB7XG4gICAgZmlsZVBhdGggPSBwYXRoLnJlc29sdmUocGF0aC5kaXJuYW1lKGZpbGVuYW1lKSwgc291cmNlKSAvLyBnZXQgc291cmNlIGFic29sdXRlIHBhdGhcbiAgfVxuXG4gIHJldHVybiBnbG9icy5maW5kKGdsb2IgPT4gKFxuICAgIG1pbmltYXRjaChmaWxlUGF0aCwgZ2xvYikgfHxcbiAgICBtaW5pbWF0Y2goZmlsZVBhdGgsIHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBnbG9iKSlcbiAgKSkgIT09IHVuZGVmaW5lZFxufVxuXG5mdW5jdGlvbiBjcmVhdGUoY29udGV4dCkge1xuICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG4gIGNvbnN0IGZpbGVuYW1lID0gY29udGV4dC5nZXRGaWxlbmFtZSgpXG4gIGNvbnN0IGlzQWxsb3cgPSBzb3VyY2UgPT4gdGVzdElzQWxsb3cob3B0aW9ucy5hbGxvdywgZmlsZW5hbWUsIHNvdXJjZSlcblxuICByZXR1cm4ge1xuICAgIEltcG9ydERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgIGlmIChub2RlLnNwZWNpZmllcnMubGVuZ3RoID09PSAwICYmICFpc0FsbG93KG5vZGUuc291cmNlLnZhbHVlKSkge1xuICAgICAgICByZXBvcnQoY29udGV4dCwgbm9kZSlcbiAgICAgIH1cbiAgICB9LFxuICAgIEV4cHJlc3Npb25TdGF0ZW1lbnQobm9kZSkge1xuICAgICAgaWYgKG5vZGUuZXhwcmVzc2lvbi50eXBlID09PSAnQ2FsbEV4cHJlc3Npb24nICYmXG4gICAgICAgIGlzU3RhdGljUmVxdWlyZShub2RlLmV4cHJlc3Npb24pICYmXG4gICAgICAgICFpc0FsbG93KG5vZGUuZXhwcmVzc2lvbi5hcmd1bWVudHNbMF0udmFsdWUpKSB7XG4gICAgICAgIHJlcG9ydChjb250ZXh0LCBub2RlLmV4cHJlc3Npb24pXG4gICAgICB9XG4gICAgfSxcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgY3JlYXRlLFxuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tdW5hc3NpZ25lZC1pbXBvcnQnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICAndHlwZSc6ICdvYmplY3QnLFxuICAgICAgICAncHJvcGVydGllcyc6IHtcbiAgICAgICAgICAnZGV2RGVwZW5kZW5jaWVzJzogeyAndHlwZSc6IFsnYm9vbGVhbicsICdhcnJheSddIH0sXG4gICAgICAgICAgJ29wdGlvbmFsRGVwZW5kZW5jaWVzJzogeyAndHlwZSc6IFsnYm9vbGVhbicsICdhcnJheSddIH0sXG4gICAgICAgICAgJ3BlZXJEZXBlbmRlbmNpZXMnOiB7ICd0eXBlJzogWydib29sZWFuJywgJ2FycmF5J10gfSxcbiAgICAgICAgICAnYWxsb3cnOiB7XG4gICAgICAgICAgICAndHlwZSc6ICdhcnJheScsXG4gICAgICAgICAgICAnaXRlbXMnOiB7XG4gICAgICAgICAgICAgICd0eXBlJzogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgICdhZGRpdGlvbmFsUHJvcGVydGllcyc6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-unresolved.js b/node_modules/eslint-plugin-import/lib/rules/no-unresolved.js index 5f675c47..a3f65be4 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-unresolved.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-unresolved.js @@ -1,58 +1,49 @@ 'use strict'; -var _resolve = require('eslint-module-utils/resolve'); -var _resolve2 = _interopRequireDefault(_resolve); -var _ModuleCache = require('eslint-module-utils/ModuleCache'); -var _ModuleCache2 = _interopRequireDefault(_ModuleCache); - -var _moduleVisitor = require('eslint-module-utils/moduleVisitor'); - -var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/** - * @fileOverview Ensures that an imported path exists, given resolution rules. - * @author Ben Mosher - */ - -module.exports = { - meta: { +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _ModuleCache = require('eslint-module-utils/ModuleCache');var _ModuleCache2 = _interopRequireDefault(_ModuleCache); +var _moduleVisitor = require('eslint-module-utils/moduleVisitor');var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} /** + * @fileOverview Ensures that an imported path exists, given resolution rules. + * @author Ben Mosher + */module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('no-unresolved') - }, + url: (0, _docsUrl2.default)('no-unresolved') }, + schema: [(0, _moduleVisitor.makeOptionsSchema)({ - caseSensitive: { type: 'boolean', default: true } - })] - }, + caseSensitive: { type: 'boolean', default: true } })] }, + + create: function (context) { function checkSourceValue(source) { - const shouldCheckCase = !_resolve.CASE_SENSITIVE_FS && (!context.options[0] || context.options[0].caseSensitive !== false); + const shouldCheckCase = !_resolve.CASE_SENSITIVE_FS && ( + !context.options[0] || context.options[0].caseSensitive !== false); const resolvedPath = (0, _resolve2.default)(source.value, context); if (resolvedPath === undefined) { - context.report(source, `Unable to resolve path to module '${source.value}'.`); - } else if (shouldCheckCase) { + context.report(source, + `Unable to resolve path to module '${source.value}'.`); + } else + + if (shouldCheckCase) { const cacheSettings = _ModuleCache2.default.getSettings(context.settings); if (!(0, _resolve.fileExistsWithCaseSync)(resolvedPath, cacheSettings)) { - context.report(source, `Casing of ${source.value} does not match the underlying filesystem.`); + context.report(source, + `Casing of ${source.value} does not match the underlying filesystem.`); } + } } return (0, _moduleVisitor2.default)(checkSourceValue, context.options[0]); - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bnJlc29sdmVkLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjYXNlU2Vuc2l0aXZlIiwiZGVmYXVsdCIsImNyZWF0ZSIsImNvbnRleHQiLCJjaGVja1NvdXJjZVZhbHVlIiwic291cmNlIiwic2hvdWxkQ2hlY2tDYXNlIiwiQ0FTRV9TRU5TSVRJVkVfRlMiLCJvcHRpb25zIiwicmVzb2x2ZWRQYXRoIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJyZXBvcnQiLCJjYWNoZVNldHRpbmdzIiwiTW9kdWxlQ2FjaGUiLCJnZXRTZXR0aW5ncyIsInNldHRpbmdzIl0sIm1hcHBpbmdzIjoiOztBQUtBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFSQTs7Ozs7QUFVQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sU0FERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsZUFBUjtBQURELEtBRkY7O0FBTUpDLFlBQVEsQ0FBRSxzQ0FBa0I7QUFDMUJDLHFCQUFlLEVBQUVKLE1BQU0sU0FBUixFQUFtQkssU0FBUyxJQUE1QjtBQURXLEtBQWxCLENBQUY7QUFOSixHQURTOztBQVlmQyxVQUFRLFVBQVVDLE9BQVYsRUFBbUI7O0FBRXpCLGFBQVNDLGdCQUFULENBQTBCQyxNQUExQixFQUFrQztBQUNoQyxZQUFNQyxrQkFBa0IsQ0FBQ0MsMEJBQUQsS0FDckIsQ0FBQ0osUUFBUUssT0FBUixDQUFnQixDQUFoQixDQUFELElBQXVCTCxRQUFRSyxPQUFSLENBQWdCLENBQWhCLEVBQW1CUixhQUFuQixLQUFxQyxLQUR2QyxDQUF4Qjs7QUFHQSxZQUFNUyxlQUFlLHVCQUFRSixPQUFPSyxLQUFmLEVBQXNCUCxPQUF0QixDQUFyQjs7QUFFQSxVQUFJTSxpQkFBaUJFLFNBQXJCLEVBQWdDO0FBQzlCUixnQkFBUVMsTUFBUixDQUFlUCxNQUFmLEVBQ0cscUNBQW9DQSxPQUFPSyxLQUFNLElBRHBEO0FBRUQsT0FIRCxNQUtLLElBQUlKLGVBQUosRUFBcUI7QUFDeEIsY0FBTU8sZ0JBQWdCQyxzQkFBWUMsV0FBWixDQUF3QlosUUFBUWEsUUFBaEMsQ0FBdEI7QUFDQSxZQUFJLENBQUMscUNBQXVCUCxZQUF2QixFQUFxQ0ksYUFBckMsQ0FBTCxFQUEwRDtBQUN4RFYsa0JBQVFTLE1BQVIsQ0FBZVAsTUFBZixFQUNHLGFBQVlBLE9BQU9LLEtBQU0sNENBRDVCO0FBRUQ7QUFFRjtBQUNGOztBQUVELFdBQU8sNkJBQWNOLGdCQUFkLEVBQWdDRCxRQUFRSyxPQUFSLENBQWdCLENBQWhCLENBQWhDLENBQVA7QUFFRDtBQXJDYyxDQUFqQiIsImZpbGUiOiJuby11bnJlc29sdmVkLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZU92ZXJ2aWV3IEVuc3VyZXMgdGhhdCBhbiBpbXBvcnRlZCBwYXRoIGV4aXN0cywgZ2l2ZW4gcmVzb2x1dGlvbiBydWxlcy5cbiAqIEBhdXRob3IgQmVuIE1vc2hlclxuICovXG5cbmltcG9ydCByZXNvbHZlLCB7IENBU0VfU0VOU0lUSVZFX0ZTLCBmaWxlRXhpc3RzV2l0aENhc2VTeW5jIH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IE1vZHVsZUNhY2hlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvTW9kdWxlQ2FjaGUnXG5pbXBvcnQgbW9kdWxlVmlzaXRvciwgeyBtYWtlT3B0aW9uc1NjaGVtYSB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvbW9kdWxlVmlzaXRvcidcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tdW5yZXNvbHZlZCcpLFxuICAgIH0sXG5cbiAgICBzY2hlbWE6IFsgbWFrZU9wdGlvbnNTY2hlbWEoe1xuICAgICAgY2FzZVNlbnNpdGl2ZTogeyB0eXBlOiAnYm9vbGVhbicsIGRlZmF1bHQ6IHRydWUgfSxcbiAgICB9KV0sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuXG4gICAgZnVuY3Rpb24gY2hlY2tTb3VyY2VWYWx1ZShzb3VyY2UpIHtcbiAgICAgIGNvbnN0IHNob3VsZENoZWNrQ2FzZSA9ICFDQVNFX1NFTlNJVElWRV9GUyAmJlxuICAgICAgICAoIWNvbnRleHQub3B0aW9uc1swXSB8fCBjb250ZXh0Lm9wdGlvbnNbMF0uY2FzZVNlbnNpdGl2ZSAhPT0gZmFsc2UpXG5cbiAgICAgIGNvbnN0IHJlc29sdmVkUGF0aCA9IHJlc29sdmUoc291cmNlLnZhbHVlLCBjb250ZXh0KVxuXG4gICAgICBpZiAocmVzb2x2ZWRQYXRoID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoc291cmNlLFxuICAgICAgICAgIGBVbmFibGUgdG8gcmVzb2x2ZSBwYXRoIHRvIG1vZHVsZSAnJHtzb3VyY2UudmFsdWV9Jy5gKVxuICAgICAgfVxuXG4gICAgICBlbHNlIGlmIChzaG91bGRDaGVja0Nhc2UpIHtcbiAgICAgICAgY29uc3QgY2FjaGVTZXR0aW5ncyA9IE1vZHVsZUNhY2hlLmdldFNldHRpbmdzKGNvbnRleHQuc2V0dGluZ3MpXG4gICAgICAgIGlmICghZmlsZUV4aXN0c1dpdGhDYXNlU3luYyhyZXNvbHZlZFBhdGgsIGNhY2hlU2V0dGluZ3MpKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoc291cmNlLFxuICAgICAgICAgICAgYENhc2luZyBvZiAke3NvdXJjZS52YWx1ZX0gZG9lcyBub3QgbWF0Y2ggdGhlIHVuZGVybHlpbmcgZmlsZXN5c3RlbS5gKVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbW9kdWxlVmlzaXRvcihjaGVja1NvdXJjZVZhbHVlLCBjb250ZXh0Lm9wdGlvbnNbMF0pXG5cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bnJlc29sdmVkLmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJjYXNlU2Vuc2l0aXZlIiwiZGVmYXVsdCIsImNyZWF0ZSIsImNvbnRleHQiLCJjaGVja1NvdXJjZVZhbHVlIiwic291cmNlIiwic2hvdWxkQ2hlY2tDYXNlIiwiQ0FTRV9TRU5TSVRJVkVfRlMiLCJvcHRpb25zIiwicmVzb2x2ZWRQYXRoIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJyZXBvcnQiLCJjYWNoZVNldHRpbmdzIiwiTW9kdWxlQ2FjaGUiLCJnZXRTZXR0aW5ncyIsInNldHRpbmdzIl0sIm1hcHBpbmdzIjoiOzs7OztBQUtBLHNEO0FBQ0EsOEQ7QUFDQSxrRTtBQUNBLHFDLCtJQVJBOzs7dUxBVUFBLE9BQU9DLE9BQVAsR0FBaUIsRUFDZkMsTUFBTTtBQUNKQyxVQUFNLFNBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLGVBQVIsQ0FERCxFQUZGOzs7QUFNSkMsWUFBUSxDQUFFLHNDQUFrQjtBQUMxQkMscUJBQWUsRUFBRUosTUFBTSxTQUFSLEVBQW1CSyxTQUFTLElBQTVCLEVBRFcsRUFBbEIsQ0FBRixDQU5KLEVBRFM7Ozs7QUFZZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1COztBQUV6QixhQUFTQyxnQkFBVCxDQUEwQkMsTUFBMUIsRUFBa0M7QUFDaEMsWUFBTUMsa0JBQWtCLENBQUNDLDBCQUFEO0FBQ3JCLE9BQUNKLFFBQVFLLE9BQVIsQ0FBZ0IsQ0FBaEIsQ0FBRCxJQUF1QkwsUUFBUUssT0FBUixDQUFnQixDQUFoQixFQUFtQlIsYUFBbkIsS0FBcUMsS0FEdkMsQ0FBeEI7O0FBR0EsWUFBTVMsZUFBZSx1QkFBUUosT0FBT0ssS0FBZixFQUFzQlAsT0FBdEIsQ0FBckI7O0FBRUEsVUFBSU0saUJBQWlCRSxTQUFyQixFQUFnQztBQUM5QlIsZ0JBQVFTLE1BQVIsQ0FBZVAsTUFBZjtBQUNHLDZDQUFvQ0EsT0FBT0ssS0FBTSxJQURwRDtBQUVELE9BSEQ7O0FBS0ssVUFBSUosZUFBSixFQUFxQjtBQUN4QixjQUFNTyxnQkFBZ0JDLHNCQUFZQyxXQUFaLENBQXdCWixRQUFRYSxRQUFoQyxDQUF0QjtBQUNBLFlBQUksQ0FBQyxxQ0FBdUJQLFlBQXZCLEVBQXFDSSxhQUFyQyxDQUFMLEVBQTBEO0FBQ3hEVixrQkFBUVMsTUFBUixDQUFlUCxNQUFmO0FBQ0csdUJBQVlBLE9BQU9LLEtBQU0sNENBRDVCO0FBRUQ7O0FBRUY7QUFDRjs7QUFFRCxXQUFPLDZCQUFjTixnQkFBZCxFQUFnQ0QsUUFBUUssT0FBUixDQUFnQixDQUFoQixDQUFoQyxDQUFQOztBQUVELEdBckNjLEVBQWpCIiwiZmlsZSI6Im5vLXVucmVzb2x2ZWQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlT3ZlcnZpZXcgRW5zdXJlcyB0aGF0IGFuIGltcG9ydGVkIHBhdGggZXhpc3RzLCBnaXZlbiByZXNvbHV0aW9uIHJ1bGVzLlxuICogQGF1dGhvciBCZW4gTW9zaGVyXG4gKi9cblxuaW1wb3J0IHJlc29sdmUsIHsgQ0FTRV9TRU5TSVRJVkVfRlMsIGZpbGVFeGlzdHNXaXRoQ2FzZVN5bmMgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3Jlc29sdmUnXG5pbXBvcnQgTW9kdWxlQ2FjaGUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9Nb2R1bGVDYWNoZSdcbmltcG9ydCBtb2R1bGVWaXNpdG9yLCB7IG1ha2VPcHRpb25zU2NoZW1hIH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9tb2R1bGVWaXNpdG9yJ1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby11bnJlc29sdmVkJyksXG4gICAgfSxcblxuICAgIHNjaGVtYTogWyBtYWtlT3B0aW9uc1NjaGVtYSh7XG4gICAgICBjYXNlU2Vuc2l0aXZlOiB7IHR5cGU6ICdib29sZWFuJywgZGVmYXVsdDogdHJ1ZSB9LFxuICAgIH0pXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG5cbiAgICBmdW5jdGlvbiBjaGVja1NvdXJjZVZhbHVlKHNvdXJjZSkge1xuICAgICAgY29uc3Qgc2hvdWxkQ2hlY2tDYXNlID0gIUNBU0VfU0VOU0lUSVZFX0ZTICYmXG4gICAgICAgICghY29udGV4dC5vcHRpb25zWzBdIHx8IGNvbnRleHQub3B0aW9uc1swXS5jYXNlU2Vuc2l0aXZlICE9PSBmYWxzZSlcblxuICAgICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShzb3VyY2UudmFsdWUsIGNvbnRleHQpXG5cbiAgICAgIGlmIChyZXNvbHZlZFBhdGggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydChzb3VyY2UsXG4gICAgICAgICAgYFVuYWJsZSB0byByZXNvbHZlIHBhdGggdG8gbW9kdWxlICcke3NvdXJjZS52YWx1ZX0nLmApXG4gICAgICB9XG5cbiAgICAgIGVsc2UgaWYgKHNob3VsZENoZWNrQ2FzZSkge1xuICAgICAgICBjb25zdCBjYWNoZVNldHRpbmdzID0gTW9kdWxlQ2FjaGUuZ2V0U2V0dGluZ3MoY29udGV4dC5zZXR0aW5ncylcbiAgICAgICAgaWYgKCFmaWxlRXhpc3RzV2l0aENhc2VTeW5jKHJlc29sdmVkUGF0aCwgY2FjaGVTZXR0aW5ncykpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydChzb3VyY2UsXG4gICAgICAgICAgICBgQ2FzaW5nIG9mICR7c291cmNlLnZhbHVlfSBkb2VzIG5vdCBtYXRjaCB0aGUgdW5kZXJseWluZyBmaWxlc3lzdGVtLmApXG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtb2R1bGVWaXNpdG9yKGNoZWNrU291cmNlVmFsdWUsIGNvbnRleHQub3B0aW9uc1swXSlcblxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js b/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js index 08ed26e9..d75c7ef1 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js @@ -1,58 +1,31 @@ 'use strict'; -var _ExportMap = require('../ExportMap'); -var _ExportMap2 = _interopRequireDefault(_ExportMap); + + +var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap); var _ignore = require('eslint-module-utils/ignore'); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl); var _path = require('path'); - -var _readPkgUp = require('read-pkg-up'); - -var _readPkgUp2 = _interopRequireDefault(_readPkgUp); - -var _object = require('object.values'); - -var _object2 = _interopRequireDefault(_object); - -var _arrayIncludes = require('array-includes'); - -var _arrayIncludes2 = _interopRequireDefault(_arrayIncludes); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } } /** - * @fileOverview Ensures that modules contain exports and/or all - * modules are consumed within other modules. - * @author René Fermann - */ - -// eslint/lib/util/glob-util has been moved to eslint/lib/util/glob-utils with version 5.3 +var _readPkgUp = require('read-pkg-up');var _readPkgUp2 = _interopRequireDefault(_readPkgUp); +var _object = require('object.values');var _object2 = _interopRequireDefault(_object); +var _arrayIncludes = require('array-includes');var _arrayIncludes2 = _interopRequireDefault(_arrayIncludes);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];return arr2;} else {return Array.from(arr);}} /** + * @fileOverview Ensures that modules contain exports and/or all + * modules are consumed within other modules. + * @author René Fermann + */ // eslint/lib/util/glob-util has been moved to eslint/lib/util/glob-utils with version 5.3 // and has been moved to eslint/lib/cli-engine/file-enumerator in version 6 -let listFilesToProcess; -try { - const FileEnumerator = require('eslint/lib/cli-engine/file-enumerator').FileEnumerator; +let listFilesToProcess;try {const FileEnumerator = require('eslint/lib/cli-engine/file-enumerator').FileEnumerator; listFilesToProcess = function (src, extensions) { const e = new FileEnumerator({ - extensions: extensions - }); - return Array.from(e.iterateFiles(src), (_ref) => { - let filePath = _ref.filePath, - ignored = _ref.ignored; - return { + extensions: extensions }); + + return Array.from(e.iterateFiles(src), (_ref) => {let filePath = _ref.filePath,ignored = _ref.ignored;return { ignored, - filename: filePath - }; - }); + filename: filePath };}); + }; } catch (e1) { // Prevent passing invalid options (extensions array) to old versions of the function. @@ -63,8 +36,8 @@ try { originalListFilesToProcess = require('eslint/lib/util/glob-utils').listFilesToProcess; listFilesToProcess = function (src, extensions) { return originalListFilesToProcess(src, { - extensions: extensions - }); + extensions: extensions }); + }; } catch (e2) { originalListFilesToProcess = require('eslint/lib/util/glob-util').listFilesToProcess; @@ -72,8 +45,7 @@ try { listFilesToProcess = function (src, extensions) { const patterns = src.reduce((carry, pattern) => { return carry.concat(extensions.map(extension => { - return (/\*\*|\*\./.test(pattern) ? pattern : `${pattern}/**/*${extension}` - ); + return (/\*\*|\*\./.test(pattern) ? pattern : `${pattern}/**/*${extension}`); })); }, src.slice()); @@ -91,24 +63,93 @@ const IMPORT_DEFAULT_SPECIFIER = 'ImportDefaultSpecifier'; const VARIABLE_DECLARATION = 'VariableDeclaration'; const FUNCTION_DECLARATION = 'FunctionDeclaration'; const CLASS_DECLARATION = 'ClassDeclaration'; -const DEFAULT = 'default'; +const INTERFACE_DECLARATION = 'InterfaceDeclaration'; const TYPE_ALIAS = 'TypeAlias'; +const TS_INTERFACE_DECLARATION = 'TSInterfaceDeclaration'; +const TS_TYPE_ALIAS_DECLARATION = 'TSTypeAliasDeclaration'; +const TS_ENUM_DECLARATION = 'TSEnumDeclaration'; +const DEFAULT = 'default'; +function forEachDeclarationIdentifier(declaration, cb) { + if (declaration) { + if ( + declaration.type === FUNCTION_DECLARATION || + declaration.type === CLASS_DECLARATION || + declaration.type === INTERFACE_DECLARATION || + declaration.type === TYPE_ALIAS || + declaration.type === TS_INTERFACE_DECLARATION || + declaration.type === TS_TYPE_ALIAS_DECLARATION || + declaration.type === TS_ENUM_DECLARATION) + { + cb(declaration.id.name); + } else if (declaration.type === VARIABLE_DECLARATION) { + declaration.declarations.forEach((_ref2) => {let id = _ref2.id; + cb(id.name); + }); + } + } +} + +/** + * List of imports per file. + * + * Represented by a two-level Map to a Set of identifiers. The upper-level Map + * keys are the paths to the modules containing the imports, while the + * lower-level Map keys are the paths to the files which are being imported + * from. Lastly, the Set of identifiers contains either names being imported + * or a special AST node name listed above (e.g ImportDefaultSpecifier). + * + * For example, if we have a file named foo.js containing: + * + * import { o2 } from './bar.js'; + * + * Then we will have a structure that looks like: + * + * Map { 'foo.js' => Map { 'bar.js' => Set { 'o2' } } } + * + * @type {Map>>} + */ const importList = new Map(); + +/** + * List of exports per file. + * + * Represented by a two-level Map to an object of metadata. The upper-level Map + * keys are the paths to the modules containing the exports, while the + * lower-level Map keys are the specific identifiers or special AST node names + * being exported. The leaf-level metadata object at the moment only contains a + * `whereUsed` propoerty, which contains a Set of paths to modules that import + * the name. + * + * For example, if we have a file named bar.js containing the following exports: + * + * const o2 = 'bar'; + * export { o2 }; + * + * And a file named foo.js containing the following import: + * + * import { o2 } from './bar.js'; + * + * Then we will have a structure that looks like: + * + * Map { 'bar.js' => Map { 'o2' => { whereUsed: Set { 'foo.js' } } } } + * + * @type {Map>} + */ const exportList = new Map(); + const ignoredFiles = new Set(); const filesOutsideSrc = new Set(); const isNodeModule = path => { - return (/\/(node_modules)\//.test(path) - ); + return (/\/(node_modules)\//.test(path)); }; /** - * read all files matching the patterns in src and ignoreExports - * - * return all files matching src pattern, which are not matching the ignoreExports pattern - */ + * read all files matching the patterns in src and ignoreExports + * + * return all files matching src pattern, which are not matching the ignoreExports pattern + */ const resolveFiles = (src, ignoreExports, context) => { const extensions = Array.from((0, _ignore.getFileExtensions)(context.settings)); @@ -117,40 +158,28 @@ const resolveFiles = (src, ignoreExports, context) => { // prepare list of ignored files const ignoredFilesList = listFilesToProcess(ignoreExports, extensions); - ignoredFilesList.forEach((_ref2) => { - let filename = _ref2.filename; - return ignoredFiles.add(filename); - }); + ignoredFilesList.forEach((_ref3) => {let filename = _ref3.filename;return ignoredFiles.add(filename);}); // prepare list of source files, don't consider files from node_modules - srcFileList.filter((_ref3) => { - let filename = _ref3.filename; - return !isNodeModule(filename); - }).forEach((_ref4) => { - let filename = _ref4.filename; - + srcFileList.filter((_ref4) => {let filename = _ref4.filename;return !isNodeModule(filename);}).forEach((_ref5) => {let filename = _ref5.filename; srcFiles.add(filename); }); return srcFiles; }; /** - * parse all source files and build up 2 maps containing the existing imports and exports - */ + * parse all source files and build up 2 maps containing the existing imports and exports + */ const prepareImportsAndExports = (srcFiles, context) => { const exportAll = new Map(); srcFiles.forEach(file => { const exports = new Map(); const imports = new Map(); const currentExports = _ExportMap2.default.get(file, context); - if (currentExports) { - const dependencies = currentExports.dependencies, - reexports = currentExports.reexports, - localImportList = currentExports.imports, - namespace = currentExports.namespace; + if (currentExports) {const + dependencies = currentExports.dependencies,reexports = currentExports.reexports,localImportList = currentExports.imports,namespace = currentExports.namespace; // dependencies === export * from - const currentExportAll = new Set(); dependencies.forEach(getDependency => { const dependency = getDependency(); @@ -191,7 +220,13 @@ const prepareImportsAndExports = (srcFiles, context) => { if (isNodeModule(key)) { return; } - imports.set(key, value.importedSpecifiers); + let localImport = imports.get(key); + if (typeof localImport !== 'undefined') { + localImport = new Set([].concat(_toConsumableArray(localImport), _toConsumableArray(value.importedSpecifiers))); + } else { + localImport = value.importedSpecifiers; + } + imports.set(key, localImport); }); importList.set(file, imports); @@ -221,9 +256,9 @@ const prepareImportsAndExports = (srcFiles, context) => { }; /** - * traverse through all imports and add the respective path to the whereUsed-list - * of the corresponding export - */ + * traverse through all imports and add the respective path to the whereUsed-list + * of the corresponding export + */ const determineUsage = () => { importList.forEach((listValue, listKey) => { listValue.forEach((value, key) => { @@ -240,9 +275,8 @@ const determineUsage = () => { } if (typeof specifier !== 'undefined') { const exportStatement = exports.get(specifier); - if (typeof exportStatement !== 'undefined') { - const whereUsed = exportStatement.whereUsed; - + if (typeof exportStatement !== 'undefined') {const + whereUsed = exportStatement.whereUsed; whereUsed.add(listKey); exports.set(specifier, { whereUsed }); } @@ -261,17 +295,17 @@ const getSrc = src => { }; /** - * prepare the lists of existing imports and exports - should only be executed once at - * the start of a new eslint run - */ + * prepare the lists of existing imports and exports - should only be executed once at + * the start of a new eslint run + */ let srcFiles; let lastPrepareKey; const doPreparation = (src, ignoreExports, context) => { const prepareKey = JSON.stringify({ src: (src || []).sort(), ignoreExports: (ignoreExports || []).sort(), - extensions: Array.from((0, _ignore.getFileExtensions)(context.settings)).sort() - }); + extensions: Array.from((0, _ignore.getFileExtensions)(context.settings)).sort() }); + if (prepareKey === lastPrepareKey) { return; } @@ -287,22 +321,14 @@ const doPreparation = (src, ignoreExports, context) => { lastPrepareKey = prepareKey; }; -const newNamespaceImportExists = specifiers => specifiers.some((_ref5) => { - let type = _ref5.type; - return type === IMPORT_NAMESPACE_SPECIFIER; -}); +const newNamespaceImportExists = specifiers => +specifiers.some((_ref6) => {let type = _ref6.type;return type === IMPORT_NAMESPACE_SPECIFIER;}); -const newDefaultImportExists = specifiers => specifiers.some((_ref6) => { - let type = _ref6.type; - return type === IMPORT_DEFAULT_SPECIFIER; -}); - -const fileIsInPkg = file => { - var _readPkgUp$sync = _readPkgUp2.default.sync({ cwd: file, normalize: false }); - - const path = _readPkgUp$sync.path, - pkg = _readPkgUp$sync.pkg; +const newDefaultImportExists = specifiers => +specifiers.some((_ref7) => {let type = _ref7.type;return type === IMPORT_DEFAULT_SPECIFIER;}); +const fileIsInPkg = file => {var _readPkgUp$sync = + _readPkgUp2.default.sync({ cwd: file, normalize: false });const path = _readPkgUp$sync.path,pkg = _readPkgUp$sync.pkg; const basePath = (0, _path.dirname)(path); const checkPkgFieldString = pkgField => { @@ -365,71 +391,70 @@ module.exports = { minItems: 1, items: { type: 'string', - minLength: 1 - } - }, + minLength: 1 } }, + + ignoreExports: { - description: 'files/paths for which unused exports will not be reported (e.g module entry points)', + description: + 'files/paths for which unused exports will not be reported (e.g module entry points)', type: 'array', minItems: 1, items: { type: 'string', - minLength: 1 - } - }, + minLength: 1 } }, + + missingExports: { description: 'report modules without any exports', - type: 'boolean' - }, + type: 'boolean' }, + unusedExports: { description: 'report exports without any usage', - type: 'boolean' - } - }, + type: 'boolean' } }, + + not: { properties: { unusedExports: { enum: [false] }, - missingExports: { enum: [false] } - } - }, + missingExports: { enum: [false] } } }, + + anyOf: [{ not: { properties: { - unusedExports: { enum: [true] } - } - }, - required: ['missingExports'] - }, { + unusedExports: { enum: [true] } } }, + + + required: ['missingExports'] }, + { not: { properties: { - missingExports: { enum: [true] } - } - }, - required: ['unusedExports'] - }, { + missingExports: { enum: [true] } } }, + + + required: ['unusedExports'] }, + { properties: { - unusedExports: { enum: [true] } - }, - required: ['unusedExports'] - }, { + unusedExports: { enum: [true] } }, + + required: ['unusedExports'] }, + { properties: { - missingExports: { enum: [true] } - }, - required: ['missingExports'] - }] - }] - }, + missingExports: { enum: [true] } }, - create: context => { - var _ref7 = context.options[0] || {}; + required: ['missingExports'] }] }] }, - const src = _ref7.src; - var _ref7$ignoreExports = _ref7.ignoreExports; - const ignoreExports = _ref7$ignoreExports === undefined ? [] : _ref7$ignoreExports, - missingExports = _ref7.missingExports, - unusedExports = _ref7.unusedExports; + + create: context => {var _ref8 = + + + + + + context.options[0] || {};const src = _ref8.src;var _ref8$ignoreExports = _ref8.ignoreExports;const ignoreExports = _ref8$ignoreExports === undefined ? [] : _ref8$ignoreExports,missingExports = _ref8.missingExports,unusedExports = _ref8.unusedExports; + if (unusedExports) { doPreparation(src, ignoreExports, context); } @@ -504,24 +529,33 @@ module.exports = { } } - const exportStatement = exports.get(exportedValue); + // exportsList will always map any imported value of 'default' to 'ImportDefaultSpecifier' + const exportsKey = exportedValue === DEFAULT ? IMPORT_DEFAULT_SPECIFIER : exportedValue; - const value = exportedValue === IMPORT_DEFAULT_SPECIFIER ? DEFAULT : exportedValue; + const exportStatement = exports.get(exportsKey); + + const value = exportsKey === IMPORT_DEFAULT_SPECIFIER ? DEFAULT : exportsKey; if (typeof exportStatement !== 'undefined') { if (exportStatement.whereUsed.size < 1) { - context.report(node, `exported declaration '${value}' not used within other modules`); + context.report( + node, + `exported declaration '${value}' not used within other modules`); + } } else { - context.report(node, `exported declaration '${value}' not used within other modules`); + context.report( + node, + `exported declaration '${value}' not used within other modules`); + } }; /** - * only useful for tools like vscode-eslint - * - * update lists of existing exports during runtime - */ + * only useful for tools like vscode-eslint + * + * update lists of existing exports during runtime + */ const updateExportUsage = node => { if (ignoredFiles.has(file)) { return; @@ -538,11 +572,7 @@ module.exports = { const newExports = new Map(); const newExportIdentifiers = new Set(); - node.body.forEach((_ref8) => { - let type = _ref8.type, - declaration = _ref8.declaration, - specifiers = _ref8.specifiers; - + node.body.forEach((_ref9) => {let type = _ref9.type,declaration = _ref9.declaration,specifiers = _ref9.specifiers; if (type === EXPORT_DEFAULT_DECLARATION) { newExportIdentifiers.add(IMPORT_DEFAULT_SPECIFIER); } @@ -554,18 +584,9 @@ module.exports = { } }); } - if (declaration) { - if (declaration.type === FUNCTION_DECLARATION || declaration.type === CLASS_DECLARATION || declaration.type === TYPE_ALIAS) { - newExportIdentifiers.add(declaration.id.name); - } - if (declaration.type === VARIABLE_DECLARATION) { - declaration.declarations.forEach((_ref9) => { - let id = _ref9.id; - - newExportIdentifiers.add(id.name); - }); - } - } + forEachDeclarationIdentifier(declaration, name => { + newExportIdentifiers.add(name); + }); } }); @@ -597,10 +618,10 @@ module.exports = { }; /** - * only useful for tools like vscode-eslint - * - * update lists of existing imports during runtime - */ + * only useful for tools like vscode-eslint + * + * update lists of existing imports during runtime + */ const updateImportUsage = node => { if (!unusedExports) { return; @@ -633,7 +654,8 @@ module.exports = { oldDefaultImports.add(key); } value.forEach(val => { - if (val !== IMPORT_NAMESPACE_SPECIFIER && val !== IMPORT_DEFAULT_SPECIFIER) { + if (val !== IMPORT_NAMESPACE_SPECIFIER && + val !== IMPORT_DEFAULT_SPECIFIER) { oldImports.set(val, key); } }); @@ -647,13 +669,12 @@ module.exports = { if (astNode.source) { resolvedPath = (0, _resolve2.default)(astNode.source.raw.replace(/('|")/g, ''), context); astNode.specifiers.forEach(specifier => { - let name; - if (specifier.exported.name === DEFAULT) { - name = IMPORT_DEFAULT_SPECIFIER; + const name = specifier.local.name; + if (specifier.local.name === DEFAULT) { + newDefaultImports.add(resolvedPath); } else { - name = specifier.local.name; + newImports.set(name, resolvedPath); } - newImports.set(name, resolvedPath); }); } } @@ -682,7 +703,8 @@ module.exports = { } astNode.specifiers.forEach(specifier => { - if (specifier.type === IMPORT_DEFAULT_SPECIFIER || specifier.type === IMPORT_NAMESPACE_SPECIFIER) { + if (specifier.type === IMPORT_DEFAULT_SPECIFIER || + specifier.type === IMPORT_NAMESPACE_SPECIFIER) { return; } newImports.set(specifier.imported.name, resolvedPath); @@ -876,18 +898,10 @@ module.exports = { node.specifiers.forEach(specifier => { checkUsage(node, specifier.exported.name); }); - if (node.declaration) { - if (node.declaration.type === FUNCTION_DECLARATION || node.declaration.type === CLASS_DECLARATION || node.declaration.type === TYPE_ALIAS) { - checkUsage(node, node.declaration.id.name); - } - if (node.declaration.type === VARIABLE_DECLARATION) { - node.declaration.declarations.forEach(declaration => { - checkUsage(node, declaration.id.name); - }); - } - } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bnVzZWQtbW9kdWxlcy5qcyJdLCJuYW1lcyI6WyJsaXN0RmlsZXNUb1Byb2Nlc3MiLCJGaWxlRW51bWVyYXRvciIsInJlcXVpcmUiLCJzcmMiLCJleHRlbnNpb25zIiwiZSIsIkFycmF5IiwiZnJvbSIsIml0ZXJhdGVGaWxlcyIsImZpbGVQYXRoIiwiaWdub3JlZCIsImZpbGVuYW1lIiwiZTEiLCJvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyIsImUyIiwicGF0dGVybnMiLCJyZWR1Y2UiLCJjYXJyeSIsInBhdHRlcm4iLCJjb25jYXQiLCJtYXAiLCJleHRlbnNpb24iLCJ0ZXN0Iiwic2xpY2UiLCJFWFBPUlRfREVGQVVMVF9ERUNMQVJBVElPTiIsIkVYUE9SVF9OQU1FRF9ERUNMQVJBVElPTiIsIkVYUE9SVF9BTExfREVDTEFSQVRJT04iLCJJTVBPUlRfREVDTEFSQVRJT04iLCJJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiIsIklNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiIsIlZBUklBQkxFX0RFQ0xBUkFUSU9OIiwiRlVOQ1RJT05fREVDTEFSQVRJT04iLCJDTEFTU19ERUNMQVJBVElPTiIsIkRFRkFVTFQiLCJUWVBFX0FMSUFTIiwiaW1wb3J0TGlzdCIsIk1hcCIsImV4cG9ydExpc3QiLCJpZ25vcmVkRmlsZXMiLCJTZXQiLCJmaWxlc091dHNpZGVTcmMiLCJpc05vZGVNb2R1bGUiLCJwYXRoIiwicmVzb2x2ZUZpbGVzIiwiaWdub3JlRXhwb3J0cyIsImNvbnRleHQiLCJzZXR0aW5ncyIsInNyY0ZpbGVzIiwic3JjRmlsZUxpc3QiLCJpZ25vcmVkRmlsZXNMaXN0IiwiZm9yRWFjaCIsImFkZCIsImZpbHRlciIsInByZXBhcmVJbXBvcnRzQW5kRXhwb3J0cyIsImV4cG9ydEFsbCIsImZpbGUiLCJleHBvcnRzIiwiaW1wb3J0cyIsImN1cnJlbnRFeHBvcnRzIiwiRXhwb3J0cyIsImdldCIsImRlcGVuZGVuY2llcyIsInJlZXhwb3J0cyIsImxvY2FsSW1wb3J0TGlzdCIsIm5hbWVzcGFjZSIsImN1cnJlbnRFeHBvcnRBbGwiLCJnZXREZXBlbmRlbmN5IiwiZGVwZW5kZW5jeSIsInNldCIsInZhbHVlIiwia2V5Iiwid2hlcmVVc2VkIiwicmVleHBvcnQiLCJnZXRJbXBvcnQiLCJsb2NhbEltcG9ydCIsImN1cnJlbnRWYWx1ZSIsImxvY2FsIiwiaW1wb3J0ZWRTcGVjaWZpZXJzIiwiaGFzIiwidmFsIiwiY3VycmVudEV4cG9ydCIsImRldGVybWluZVVzYWdlIiwibGlzdFZhbHVlIiwibGlzdEtleSIsImN1cnJlbnRJbXBvcnQiLCJzcGVjaWZpZXIiLCJleHBvcnRTdGF0ZW1lbnQiLCJnZXRTcmMiLCJwcm9jZXNzIiwiY3dkIiwibGFzdFByZXBhcmVLZXkiLCJkb1ByZXBhcmF0aW9uIiwicHJlcGFyZUtleSIsIkpTT04iLCJzdHJpbmdpZnkiLCJzb3J0IiwiY2xlYXIiLCJuZXdOYW1lc3BhY2VJbXBvcnRFeGlzdHMiLCJzcGVjaWZpZXJzIiwic29tZSIsInR5cGUiLCJuZXdEZWZhdWx0SW1wb3J0RXhpc3RzIiwiZmlsZUlzSW5Qa2ciLCJyZWFkUGtnVXAiLCJzeW5jIiwibm9ybWFsaXplIiwicGtnIiwiYmFzZVBhdGgiLCJjaGVja1BrZ0ZpZWxkU3RyaW5nIiwicGtnRmllbGQiLCJjaGVja1BrZ0ZpZWxkT2JqZWN0IiwicGtnRmllbGRGaWxlcyIsImNoZWNrUGtnRmllbGQiLCJwcml2YXRlIiwiYmluIiwiYnJvd3NlciIsIm1haW4iLCJtb2R1bGUiLCJtZXRhIiwiZG9jcyIsInVybCIsInNjaGVtYSIsInByb3BlcnRpZXMiLCJkZXNjcmlwdGlvbiIsIm1pbkl0ZW1zIiwiaXRlbXMiLCJtaW5MZW5ndGgiLCJtaXNzaW5nRXhwb3J0cyIsInVudXNlZEV4cG9ydHMiLCJub3QiLCJlbnVtIiwiYW55T2YiLCJyZXF1aXJlZCIsImNyZWF0ZSIsIm9wdGlvbnMiLCJnZXRGaWxlbmFtZSIsImNoZWNrRXhwb3J0UHJlc2VuY2UiLCJub2RlIiwiZXhwb3J0Q291bnQiLCJuYW1lc3BhY2VJbXBvcnRzIiwiZGVsZXRlIiwic2l6ZSIsInJlcG9ydCIsImJvZHkiLCJjaGVja1VzYWdlIiwiZXhwb3J0ZWRWYWx1ZSIsInVwZGF0ZUV4cG9ydFVzYWdlIiwibmV3RXhwb3J0cyIsIm5ld0V4cG9ydElkZW50aWZpZXJzIiwiZGVjbGFyYXRpb24iLCJsZW5ndGgiLCJleHBvcnRlZCIsIm5hbWUiLCJpZCIsImRlY2xhcmF0aW9ucyIsInVwZGF0ZUltcG9ydFVzYWdlIiwib2xkSW1wb3J0UGF0aHMiLCJvbGROYW1lc3BhY2VJbXBvcnRzIiwibmV3TmFtZXNwYWNlSW1wb3J0cyIsIm9sZEV4cG9ydEFsbCIsIm5ld0V4cG9ydEFsbCIsIm9sZERlZmF1bHRJbXBvcnRzIiwibmV3RGVmYXVsdEltcG9ydHMiLCJvbGRJbXBvcnRzIiwibmV3SW1wb3J0cyIsImFzdE5vZGUiLCJyZXNvbHZlZFBhdGgiLCJzb3VyY2UiLCJyYXciLCJyZXBsYWNlIiwiaW1wb3J0ZWQiXSwibWFwcGluZ3MiOiI7O0FBTUE7Ozs7QUFDQTs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7Z01BYkE7Ozs7OztBQWVBO0FBQ0E7QUFDQSxJQUFJQSxrQkFBSjtBQUNBLElBQUk7QUFDRixRQUFNQyxpQkFBaUJDLFFBQVEsdUNBQVIsRUFBaURELGNBQXhFO0FBQ0FELHVCQUFxQixVQUFVRyxHQUFWLEVBQWVDLFVBQWYsRUFBMkI7QUFDOUMsVUFBTUMsSUFBSSxJQUFJSixjQUFKLENBQW1CO0FBQzNCRyxrQkFBWUE7QUFEZSxLQUFuQixDQUFWO0FBR0EsV0FBT0UsTUFBTUMsSUFBTixDQUFXRixFQUFFRyxZQUFGLENBQWVMLEdBQWYsQ0FBWCxFQUFnQztBQUFBLFVBQUdNLFFBQUgsUUFBR0EsUUFBSDtBQUFBLFVBQWFDLE9BQWIsUUFBYUEsT0FBYjtBQUFBLGFBQTRCO0FBQ2pFQSxlQURpRTtBQUVqRUMsa0JBQVVGO0FBRnVELE9BQTVCO0FBQUEsS0FBaEMsQ0FBUDtBQUlELEdBUkQ7QUFTRCxDQVhELENBV0UsT0FBT0csRUFBUCxFQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0EsTUFBSUMsMEJBQUo7QUFDQSxNQUFJO0FBQ0ZBLGlDQUE2QlgsUUFBUSw0QkFBUixFQUFzQ0Ysa0JBQW5FO0FBQ0FBLHlCQUFxQixVQUFVRyxHQUFWLEVBQWVDLFVBQWYsRUFBMkI7QUFDOUMsYUFBT1MsMkJBQTJCVixHQUEzQixFQUFnQztBQUNyQ0Msb0JBQVlBO0FBRHlCLE9BQWhDLENBQVA7QUFHRCxLQUpEO0FBS0QsR0FQRCxDQU9FLE9BQU9VLEVBQVAsRUFBVztBQUNYRCxpQ0FBNkJYLFFBQVEsMkJBQVIsRUFBcUNGLGtCQUFsRTs7QUFFQUEseUJBQXFCLFVBQVVHLEdBQVYsRUFBZUMsVUFBZixFQUEyQjtBQUM5QyxZQUFNVyxXQUFXWixJQUFJYSxNQUFKLENBQVcsQ0FBQ0MsS0FBRCxFQUFRQyxPQUFSLEtBQW9CO0FBQzlDLGVBQU9ELE1BQU1FLE1BQU4sQ0FBYWYsV0FBV2dCLEdBQVgsQ0FBZ0JDLFNBQUQsSUFBZTtBQUNoRCxpQkFBTyxhQUFZQyxJQUFaLENBQWlCSixPQUFqQixJQUE0QkEsT0FBNUIsR0FBdUMsR0FBRUEsT0FBUSxRQUFPRyxTQUFVO0FBQXpFO0FBQ0QsU0FGbUIsQ0FBYixDQUFQO0FBR0QsT0FKZ0IsRUFJZGxCLElBQUlvQixLQUFKLEVBSmMsQ0FBakI7O0FBTUEsYUFBT1YsMkJBQTJCRSxRQUEzQixDQUFQO0FBQ0QsS0FSRDtBQVNEO0FBQ0Y7O0FBRUQsTUFBTVMsNkJBQTZCLDBCQUFuQztBQUNBLE1BQU1DLDJCQUEyQix3QkFBakM7QUFDQSxNQUFNQyx5QkFBeUIsc0JBQS9CO0FBQ0EsTUFBTUMscUJBQXFCLG1CQUEzQjtBQUNBLE1BQU1DLDZCQUE2QiwwQkFBbkM7QUFDQSxNQUFNQywyQkFBMkIsd0JBQWpDO0FBQ0EsTUFBTUMsdUJBQXVCLHFCQUE3QjtBQUNBLE1BQU1DLHVCQUF1QixxQkFBN0I7QUFDQSxNQUFNQyxvQkFBb0Isa0JBQTFCO0FBQ0EsTUFBTUMsVUFBVSxTQUFoQjtBQUNBLE1BQU1DLGFBQWEsV0FBbkI7O0FBRUEsTUFBTUMsYUFBYSxJQUFJQyxHQUFKLEVBQW5CO0FBQ0EsTUFBTUMsYUFBYSxJQUFJRCxHQUFKLEVBQW5CO0FBQ0EsTUFBTUUsZUFBZSxJQUFJQyxHQUFKLEVBQXJCO0FBQ0EsTUFBTUMsa0JBQWtCLElBQUlELEdBQUosRUFBeEI7O0FBRUEsTUFBTUUsZUFBZUMsUUFBUTtBQUMzQixTQUFPLHNCQUFxQnBCLElBQXJCLENBQTBCb0IsSUFBMUI7QUFBUDtBQUNELENBRkQ7O0FBSUE7Ozs7O0FBS0EsTUFBTUMsZUFBZSxDQUFDeEMsR0FBRCxFQUFNeUMsYUFBTixFQUFxQkMsT0FBckIsS0FBaUM7QUFDcEQsUUFBTXpDLGFBQWFFLE1BQU1DLElBQU4sQ0FBVywrQkFBa0JzQyxRQUFRQyxRQUExQixDQUFYLENBQW5COztBQUVBLFFBQU1DLFdBQVcsSUFBSVIsR0FBSixFQUFqQjtBQUNBLFFBQU1TLGNBQWNoRCxtQkFBbUJHLEdBQW5CLEVBQXdCQyxVQUF4QixDQUFwQjs7QUFFQTtBQUNBLFFBQU02QyxtQkFBb0JqRCxtQkFBbUI0QyxhQUFuQixFQUFrQ3hDLFVBQWxDLENBQTFCO0FBQ0E2QyxtQkFBaUJDLE9BQWpCLENBQXlCO0FBQUEsUUFBR3ZDLFFBQUgsU0FBR0EsUUFBSDtBQUFBLFdBQWtCMkIsYUFBYWEsR0FBYixDQUFpQnhDLFFBQWpCLENBQWxCO0FBQUEsR0FBekI7O0FBRUE7QUFDQXFDLGNBQVlJLE1BQVosQ0FBbUI7QUFBQSxRQUFHekMsUUFBSCxTQUFHQSxRQUFIO0FBQUEsV0FBa0IsQ0FBQzhCLGFBQWE5QixRQUFiLENBQW5CO0FBQUEsR0FBbkIsRUFBOER1QyxPQUE5RCxDQUFzRSxXQUFrQjtBQUFBLFFBQWZ2QyxRQUFlLFNBQWZBLFFBQWU7O0FBQ3RGb0MsYUFBU0ksR0FBVCxDQUFheEMsUUFBYjtBQUNELEdBRkQ7QUFHQSxTQUFPb0MsUUFBUDtBQUNELENBZkQ7O0FBaUJBOzs7QUFHQSxNQUFNTSwyQkFBMkIsQ0FBQ04sUUFBRCxFQUFXRixPQUFYLEtBQXVCO0FBQ3RELFFBQU1TLFlBQVksSUFBSWxCLEdBQUosRUFBbEI7QUFDQVcsV0FBU0csT0FBVCxDQUFpQkssUUFBUTtBQUN2QixVQUFNQyxVQUFVLElBQUlwQixHQUFKLEVBQWhCO0FBQ0EsVUFBTXFCLFVBQVUsSUFBSXJCLEdBQUosRUFBaEI7QUFDQSxVQUFNc0IsaUJBQWlCQyxvQkFBUUMsR0FBUixDQUFZTCxJQUFaLEVBQWtCVixPQUFsQixDQUF2QjtBQUNBLFFBQUlhLGNBQUosRUFBb0I7QUFBQSxZQUNWRyxZQURVLEdBQ3dESCxjQUR4RCxDQUNWRyxZQURVO0FBQUEsWUFDSUMsU0FESixHQUN3REosY0FEeEQsQ0FDSUksU0FESjtBQUFBLFlBQ3dCQyxlQUR4QixHQUN3REwsY0FEeEQsQ0FDZUQsT0FEZjtBQUFBLFlBQ3lDTyxTQUR6QyxHQUN3RE4sY0FEeEQsQ0FDeUNNLFNBRHpDOztBQUdsQjs7QUFDQSxZQUFNQyxtQkFBbUIsSUFBSTFCLEdBQUosRUFBekI7QUFDQXNCLG1CQUFhWCxPQUFiLENBQXFCZ0IsaUJBQWlCO0FBQ3BDLGNBQU1DLGFBQWFELGVBQW5CO0FBQ0EsWUFBSUMsZUFBZSxJQUFuQixFQUF5QjtBQUN2QjtBQUNEOztBQUVERix5QkFBaUJkLEdBQWpCLENBQXFCZ0IsV0FBV3pCLElBQWhDO0FBQ0QsT0FQRDtBQVFBWSxnQkFBVWMsR0FBVixDQUFjYixJQUFkLEVBQW9CVSxnQkFBcEI7O0FBRUFILGdCQUFVWixPQUFWLENBQWtCLENBQUNtQixLQUFELEVBQVFDLEdBQVIsS0FBZ0I7QUFDaEMsWUFBSUEsUUFBUXJDLE9BQVosRUFBcUI7QUFDbkJ1QixrQkFBUVksR0FBUixDQUFZdkMsd0JBQVosRUFBc0MsRUFBRTBDLFdBQVcsSUFBSWhDLEdBQUosRUFBYixFQUF0QztBQUNELFNBRkQsTUFFTztBQUNMaUIsa0JBQVFZLEdBQVIsQ0FBWUUsR0FBWixFQUFpQixFQUFFQyxXQUFXLElBQUloQyxHQUFKLEVBQWIsRUFBakI7QUFDRDtBQUNELGNBQU1pQyxXQUFZSCxNQUFNSSxTQUFOLEVBQWxCO0FBQ0EsWUFBSSxDQUFDRCxRQUFMLEVBQWU7QUFDYjtBQUNEO0FBQ0QsWUFBSUUsY0FBY2pCLFFBQVFHLEdBQVIsQ0FBWVksU0FBUzlCLElBQXJCLENBQWxCO0FBQ0EsWUFBSWlDLFlBQUo7QUFDQSxZQUFJTixNQUFNTyxLQUFOLEtBQWdCM0MsT0FBcEIsRUFBNkI7QUFDM0IwQyx5QkFBZTlDLHdCQUFmO0FBQ0QsU0FGRCxNQUVPO0FBQ0w4Qyx5QkFBZU4sTUFBTU8sS0FBckI7QUFDRDtBQUNELFlBQUksT0FBT0YsV0FBUCxLQUF1QixXQUEzQixFQUF3QztBQUN0Q0Esd0JBQWMsSUFBSW5DLEdBQUosOEJBQVltQyxXQUFaLElBQXlCQyxZQUF6QixHQUFkO0FBQ0QsU0FGRCxNQUVPO0FBQ0xELHdCQUFjLElBQUluQyxHQUFKLENBQVEsQ0FBQ29DLFlBQUQsQ0FBUixDQUFkO0FBQ0Q7QUFDRGxCLGdCQUFRVyxHQUFSLENBQVlJLFNBQVM5QixJQUFyQixFQUEyQmdDLFdBQTNCO0FBQ0QsT0F2QkQ7O0FBeUJBWCxzQkFBZ0JiLE9BQWhCLENBQXdCLENBQUNtQixLQUFELEVBQVFDLEdBQVIsS0FBZ0I7QUFDdEMsWUFBSTdCLGFBQWE2QixHQUFiLENBQUosRUFBdUI7QUFDckI7QUFDRDtBQUNEYixnQkFBUVcsR0FBUixDQUFZRSxHQUFaLEVBQWlCRCxNQUFNUSxrQkFBdkI7QUFDRCxPQUxEO0FBTUExQyxpQkFBV2lDLEdBQVgsQ0FBZWIsSUFBZixFQUFxQkUsT0FBckI7O0FBRUE7QUFDQSxVQUFJbkIsYUFBYXdDLEdBQWIsQ0FBaUJ2QixJQUFqQixDQUFKLEVBQTRCO0FBQzFCO0FBQ0Q7QUFDRFMsZ0JBQVVkLE9BQVYsQ0FBa0IsQ0FBQ21CLEtBQUQsRUFBUUMsR0FBUixLQUFnQjtBQUNoQyxZQUFJQSxRQUFRckMsT0FBWixFQUFxQjtBQUNuQnVCLGtCQUFRWSxHQUFSLENBQVl2Qyx3QkFBWixFQUFzQyxFQUFFMEMsV0FBVyxJQUFJaEMsR0FBSixFQUFiLEVBQXRDO0FBQ0QsU0FGRCxNQUVPO0FBQ0xpQixrQkFBUVksR0FBUixDQUFZRSxHQUFaLEVBQWlCLEVBQUVDLFdBQVcsSUFBSWhDLEdBQUosRUFBYixFQUFqQjtBQUNEO0FBQ0YsT0FORDtBQU9EO0FBQ0RpQixZQUFRWSxHQUFSLENBQVkxQyxzQkFBWixFQUFvQyxFQUFFNkMsV0FBVyxJQUFJaEMsR0FBSixFQUFiLEVBQXBDO0FBQ0FpQixZQUFRWSxHQUFSLENBQVl4QywwQkFBWixFQUF3QyxFQUFFMkMsV0FBVyxJQUFJaEMsR0FBSixFQUFiLEVBQXhDO0FBQ0FGLGVBQVcrQixHQUFYLENBQWViLElBQWYsRUFBcUJDLE9BQXJCO0FBQ0QsR0FuRUQ7QUFvRUFGLFlBQVVKLE9BQVYsQ0FBa0IsQ0FBQ21CLEtBQUQsRUFBUUMsR0FBUixLQUFnQjtBQUNoQ0QsVUFBTW5CLE9BQU4sQ0FBYzZCLE9BQU87QUFDbkIsWUFBTXJCLGlCQUFpQnJCLFdBQVd1QixHQUFYLENBQWVtQixHQUFmLENBQXZCO0FBQ0EsWUFBTUMsZ0JBQWdCdEIsZUFBZUUsR0FBZixDQUFtQmxDLHNCQUFuQixDQUF0QjtBQUNBc0Qsb0JBQWNULFNBQWQsQ0FBd0JwQixHQUF4QixDQUE0Qm1CLEdBQTVCO0FBQ0QsS0FKRDtBQUtELEdBTkQ7QUFPRCxDQTdFRDs7QUErRUE7Ozs7QUFJQSxNQUFNVyxpQkFBaUIsTUFBTTtBQUMzQjlDLGFBQVdlLE9BQVgsQ0FBbUIsQ0FBQ2dDLFNBQUQsRUFBWUMsT0FBWixLQUF3QjtBQUN6Q0QsY0FBVWhDLE9BQVYsQ0FBa0IsQ0FBQ21CLEtBQUQsRUFBUUMsR0FBUixLQUFnQjtBQUNoQyxZQUFNZCxVQUFVbkIsV0FBV3VCLEdBQVgsQ0FBZVUsR0FBZixDQUFoQjtBQUNBLFVBQUksT0FBT2QsT0FBUCxLQUFtQixXQUF2QixFQUFvQztBQUNsQ2EsY0FBTW5CLE9BQU4sQ0FBY2tDLGlCQUFpQjtBQUM3QixjQUFJQyxTQUFKO0FBQ0EsY0FBSUQsa0JBQWtCeEQsMEJBQXRCLEVBQWtEO0FBQ2hEeUQsd0JBQVl6RCwwQkFBWjtBQUNELFdBRkQsTUFFTyxJQUFJd0Qsa0JBQWtCdkQsd0JBQXRCLEVBQWdEO0FBQ3JEd0Qsd0JBQVl4RCx3QkFBWjtBQUNELFdBRk0sTUFFQTtBQUNMd0Qsd0JBQVlELGFBQVo7QUFDRDtBQUNELGNBQUksT0FBT0MsU0FBUCxLQUFxQixXQUF6QixFQUFzQztBQUNwQyxrQkFBTUMsa0JBQWtCOUIsUUFBUUksR0FBUixDQUFZeUIsU0FBWixDQUF4QjtBQUNBLGdCQUFJLE9BQU9DLGVBQVAsS0FBMkIsV0FBL0IsRUFBNEM7QUFBQSxvQkFDbENmLFNBRGtDLEdBQ3BCZSxlQURvQixDQUNsQ2YsU0FEa0M7O0FBRTFDQSx3QkFBVXBCLEdBQVYsQ0FBY2dDLE9BQWQ7QUFDQTNCLHNCQUFRWSxHQUFSLENBQVlpQixTQUFaLEVBQXVCLEVBQUVkLFNBQUYsRUFBdkI7QUFDRDtBQUNGO0FBQ0YsU0FqQkQ7QUFrQkQ7QUFDRixLQXRCRDtBQXVCRCxHQXhCRDtBQXlCRCxDQTFCRDs7QUE0QkEsTUFBTWdCLFNBQVNwRixPQUFPO0FBQ3BCLE1BQUlBLEdBQUosRUFBUztBQUNQLFdBQU9BLEdBQVA7QUFDRDtBQUNELFNBQU8sQ0FBQ3FGLFFBQVFDLEdBQVIsRUFBRCxDQUFQO0FBQ0QsQ0FMRDs7QUFPQTs7OztBQUlBLElBQUkxQyxRQUFKO0FBQ0EsSUFBSTJDLGNBQUo7QUFDQSxNQUFNQyxnQkFBZ0IsQ0FBQ3hGLEdBQUQsRUFBTXlDLGFBQU4sRUFBcUJDLE9BQXJCLEtBQWlDO0FBQ3JELFFBQU0rQyxhQUFhQyxLQUFLQyxTQUFMLENBQWU7QUFDaEMzRixTQUFLLENBQUNBLE9BQU8sRUFBUixFQUFZNEYsSUFBWixFQUQyQjtBQUVoQ25ELG1CQUFlLENBQUNBLGlCQUFpQixFQUFsQixFQUFzQm1ELElBQXRCLEVBRmlCO0FBR2hDM0YsZ0JBQVlFLE1BQU1DLElBQU4sQ0FBVywrQkFBa0JzQyxRQUFRQyxRQUExQixDQUFYLEVBQWdEaUQsSUFBaEQ7QUFIb0IsR0FBZixDQUFuQjtBQUtBLE1BQUlILGVBQWVGLGNBQW5CLEVBQW1DO0FBQ2pDO0FBQ0Q7O0FBRUR2RCxhQUFXNkQsS0FBWDtBQUNBM0QsYUFBVzJELEtBQVg7QUFDQTFELGVBQWEwRCxLQUFiO0FBQ0F4RCxrQkFBZ0J3RCxLQUFoQjs7QUFFQWpELGFBQVdKLGFBQWE0QyxPQUFPcEYsR0FBUCxDQUFiLEVBQTBCeUMsYUFBMUIsRUFBeUNDLE9BQXpDLENBQVg7QUFDQVEsMkJBQXlCTixRQUF6QixFQUFtQ0YsT0FBbkM7QUFDQW9DO0FBQ0FTLG1CQUFpQkUsVUFBakI7QUFDRCxDQW5CRDs7QUFxQkEsTUFBTUssMkJBQTJCQyxjQUMvQkEsV0FBV0MsSUFBWCxDQUFnQjtBQUFBLE1BQUdDLElBQUgsU0FBR0EsSUFBSDtBQUFBLFNBQWNBLFNBQVN4RSwwQkFBdkI7QUFBQSxDQUFoQixDQURGOztBQUdBLE1BQU15RSx5QkFBeUJILGNBQzdCQSxXQUFXQyxJQUFYLENBQWdCO0FBQUEsTUFBR0MsSUFBSCxTQUFHQSxJQUFIO0FBQUEsU0FBY0EsU0FBU3ZFLHdCQUF2QjtBQUFBLENBQWhCLENBREY7O0FBR0EsTUFBTXlFLGNBQWMvQyxRQUFRO0FBQUEsd0JBQ0pnRCxvQkFBVUMsSUFBVixDQUFlLEVBQUNmLEtBQUtsQyxJQUFOLEVBQVlrRCxXQUFXLEtBQXZCLEVBQWYsQ0FESTs7QUFBQSxRQUNsQi9ELElBRGtCLG1CQUNsQkEsSUFEa0I7QUFBQSxRQUNaZ0UsR0FEWSxtQkFDWkEsR0FEWTs7QUFFMUIsUUFBTUMsV0FBVyxtQkFBUWpFLElBQVIsQ0FBakI7O0FBRUEsUUFBTWtFLHNCQUFzQkMsWUFBWTtBQUN0QyxRQUFJLGdCQUFLRixRQUFMLEVBQWVFLFFBQWYsTUFBNkJ0RCxJQUFqQyxFQUF1QztBQUNuQyxhQUFPLElBQVA7QUFDRDtBQUNKLEdBSkQ7O0FBTUEsUUFBTXVELHNCQUFzQkQsWUFBWTtBQUNwQyxVQUFNRSxnQkFBZ0Isc0JBQU9GLFFBQVAsRUFBaUJ6RixHQUFqQixDQUFxQmlELFNBQVMsZ0JBQUtzQyxRQUFMLEVBQWV0QyxLQUFmLENBQTlCLENBQXRCO0FBQ0EsUUFBSSw2QkFBUzBDLGFBQVQsRUFBd0J4RCxJQUF4QixDQUFKLEVBQW1DO0FBQ2pDLGFBQU8sSUFBUDtBQUNEO0FBQ0osR0FMRDs7QUFPQSxRQUFNeUQsZ0JBQWdCSCxZQUFZO0FBQ2hDLFFBQUksT0FBT0EsUUFBUCxLQUFvQixRQUF4QixFQUFrQztBQUNoQyxhQUFPRCxvQkFBb0JDLFFBQXBCLENBQVA7QUFDRDs7QUFFRCxRQUFJLE9BQU9BLFFBQVAsS0FBb0IsUUFBeEIsRUFBa0M7QUFDaEMsYUFBT0Msb0JBQW9CRCxRQUFwQixDQUFQO0FBQ0Q7QUFDRixHQVJEOztBQVVBLE1BQUlILElBQUlPLE9BQUosS0FBZ0IsSUFBcEIsRUFBMEI7QUFDeEIsV0FBTyxLQUFQO0FBQ0Q7O0FBRUQsTUFBSVAsSUFBSVEsR0FBUixFQUFhO0FBQ1gsUUFBSUYsY0FBY04sSUFBSVEsR0FBbEIsQ0FBSixFQUE0QjtBQUMxQixhQUFPLElBQVA7QUFDRDtBQUNGOztBQUVELE1BQUlSLElBQUlTLE9BQVIsRUFBaUI7QUFDZixRQUFJSCxjQUFjTixJQUFJUyxPQUFsQixDQUFKLEVBQWdDO0FBQzlCLGFBQU8sSUFBUDtBQUNEO0FBQ0Y7O0FBRUQsTUFBSVQsSUFBSVUsSUFBUixFQUFjO0FBQ1osUUFBSVIsb0JBQW9CRixJQUFJVSxJQUF4QixDQUFKLEVBQW1DO0FBQ2pDLGFBQU8sSUFBUDtBQUNEO0FBQ0Y7O0FBRUQsU0FBTyxLQUFQO0FBQ0QsQ0FsREQ7O0FBb0RBQyxPQUFPN0QsT0FBUCxHQUFpQjtBQUNmOEQsUUFBTTtBQUNKbEIsVUFBTSxZQURGO0FBRUptQixVQUFNLEVBQUVDLEtBQUssdUJBQVEsbUJBQVIsQ0FBUCxFQUZGO0FBR0pDLFlBQVEsQ0FBQztBQUNQQyxrQkFBWTtBQUNWdkgsYUFBSztBQUNId0gsdUJBQWEsc0RBRFY7QUFFSHZCLGdCQUFNLE9BRkg7QUFHSHdCLG9CQUFVLENBSFA7QUFJSEMsaUJBQU87QUFDTHpCLGtCQUFNLFFBREQ7QUFFTDBCLHVCQUFXO0FBRk47QUFKSixTQURLO0FBVVZsRix1QkFBZTtBQUNiK0UsdUJBQ0UscUZBRlc7QUFHYnZCLGdCQUFNLE9BSE87QUFJYndCLG9CQUFVLENBSkc7QUFLYkMsaUJBQU87QUFDTHpCLGtCQUFNLFFBREQ7QUFFTDBCLHVCQUFXO0FBRk47QUFMTSxTQVZMO0FBb0JWQyx3QkFBZ0I7QUFDZEosdUJBQWEsb0NBREM7QUFFZHZCLGdCQUFNO0FBRlEsU0FwQk47QUF3QlY0Qix1QkFBZTtBQUNiTCx1QkFBYSxrQ0FEQTtBQUVidkIsZ0JBQU07QUFGTztBQXhCTCxPQURMO0FBOEJQNkIsV0FBSztBQUNIUCxvQkFBWTtBQUNWTSx5QkFBZSxFQUFFRSxNQUFNLENBQUMsS0FBRCxDQUFSLEVBREw7QUFFVkgsMEJBQWdCLEVBQUVHLE1BQU0sQ0FBQyxLQUFELENBQVI7QUFGTjtBQURULE9BOUJFO0FBb0NQQyxhQUFNLENBQUM7QUFDTEYsYUFBSztBQUNIUCxzQkFBWTtBQUNWTSwyQkFBZSxFQUFFRSxNQUFNLENBQUMsSUFBRCxDQUFSO0FBREw7QUFEVCxTQURBO0FBTUxFLGtCQUFVLENBQUMsZ0JBQUQ7QUFOTCxPQUFELEVBT0g7QUFDREgsYUFBSztBQUNIUCxzQkFBWTtBQUNWSyw0QkFBZ0IsRUFBRUcsTUFBTSxDQUFDLElBQUQsQ0FBUjtBQUROO0FBRFQsU0FESjtBQU1ERSxrQkFBVSxDQUFDLGVBQUQ7QUFOVCxPQVBHLEVBY0g7QUFDRFYsb0JBQVk7QUFDVk0seUJBQWUsRUFBRUUsTUFBTSxDQUFDLElBQUQsQ0FBUjtBQURMLFNBRFg7QUFJREUsa0JBQVUsQ0FBQyxlQUFEO0FBSlQsT0FkRyxFQW1CSDtBQUNEVixvQkFBWTtBQUNWSywwQkFBZ0IsRUFBRUcsTUFBTSxDQUFDLElBQUQsQ0FBUjtBQUROLFNBRFg7QUFJREUsa0JBQVUsQ0FBQyxnQkFBRDtBQUpULE9BbkJHO0FBcENDLEtBQUQ7QUFISixHQURTOztBQW9FZkMsVUFBUXhGLFdBQVc7QUFBQSxnQkFNYkEsUUFBUXlGLE9BQVIsQ0FBZ0IsQ0FBaEIsS0FBc0IsRUFOVDs7QUFBQSxVQUVmbkksR0FGZSxTQUVmQSxHQUZlO0FBQUEsb0NBR2Z5QyxhQUhlO0FBQUEsVUFHZkEsYUFIZSx1Q0FHQyxFQUhEO0FBQUEsVUFJZm1GLGNBSmUsU0FJZkEsY0FKZTtBQUFBLFVBS2ZDLGFBTGUsU0FLZkEsYUFMZTs7O0FBUWpCLFFBQUlBLGFBQUosRUFBbUI7QUFDakJyQyxvQkFBY3hGLEdBQWQsRUFBbUJ5QyxhQUFuQixFQUFrQ0MsT0FBbEM7QUFDRDs7QUFFRCxVQUFNVSxPQUFPVixRQUFRMEYsV0FBUixFQUFiOztBQUVBLFVBQU1DLHNCQUFzQkMsUUFBUTtBQUNsQyxVQUFJLENBQUNWLGNBQUwsRUFBcUI7QUFDbkI7QUFDRDs7QUFFRCxVQUFJekYsYUFBYXdDLEdBQWIsQ0FBaUJ2QixJQUFqQixDQUFKLEVBQTRCO0FBQzFCO0FBQ0Q7O0FBRUQsWUFBTW1GLGNBQWNyRyxXQUFXdUIsR0FBWCxDQUFlTCxJQUFmLENBQXBCO0FBQ0EsWUFBTUQsWUFBWW9GLFlBQVk5RSxHQUFaLENBQWdCbEMsc0JBQWhCLENBQWxCO0FBQ0EsWUFBTWlILG1CQUFtQkQsWUFBWTlFLEdBQVosQ0FBZ0JoQywwQkFBaEIsQ0FBekI7O0FBRUE4RyxrQkFBWUUsTUFBWixDQUFtQmxILHNCQUFuQjtBQUNBZ0gsa0JBQVlFLE1BQVosQ0FBbUJoSCwwQkFBbkI7QUFDQSxVQUFJOEcsWUFBWUcsSUFBWixHQUFtQixDQUF2QixFQUEwQjtBQUN4QjtBQUNBO0FBQ0FoRyxnQkFBUWlHLE1BQVIsQ0FBZUwsS0FBS00sSUFBTCxDQUFVLENBQVYsSUFBZU4sS0FBS00sSUFBTCxDQUFVLENBQVYsQ0FBZixHQUE4Qk4sSUFBN0MsRUFBbUQsa0JBQW5EO0FBQ0Q7QUFDREMsa0JBQVl0RSxHQUFaLENBQWdCMUMsc0JBQWhCLEVBQXdDNEIsU0FBeEM7QUFDQW9GLGtCQUFZdEUsR0FBWixDQUFnQnhDLDBCQUFoQixFQUE0QytHLGdCQUE1QztBQUNELEtBdEJEOztBQXdCQSxVQUFNSyxhQUFhLENBQUNQLElBQUQsRUFBT1EsYUFBUCxLQUF5QjtBQUMxQyxVQUFJLENBQUNqQixhQUFMLEVBQW9CO0FBQ2xCO0FBQ0Q7O0FBRUQsVUFBSTFGLGFBQWF3QyxHQUFiLENBQWlCdkIsSUFBakIsQ0FBSixFQUE0QjtBQUMxQjtBQUNEOztBQUVELFVBQUkrQyxZQUFZL0MsSUFBWixDQUFKLEVBQXVCO0FBQ3JCO0FBQ0Q7O0FBRUQsVUFBSWYsZ0JBQWdCc0MsR0FBaEIsQ0FBb0J2QixJQUFwQixDQUFKLEVBQStCO0FBQzdCO0FBQ0Q7O0FBRUQ7QUFDQSxVQUFJLENBQUNSLFNBQVMrQixHQUFULENBQWF2QixJQUFiLENBQUwsRUFBeUI7QUFDdkJSLG1CQUFXSixhQUFhNEMsT0FBT3BGLEdBQVAsQ0FBYixFQUEwQnlDLGFBQTFCLEVBQXlDQyxPQUF6QyxDQUFYO0FBQ0EsWUFBSSxDQUFDRSxTQUFTK0IsR0FBVCxDQUFhdkIsSUFBYixDQUFMLEVBQXlCO0FBQ3ZCZiwwQkFBZ0JXLEdBQWhCLENBQW9CSSxJQUFwQjtBQUNBO0FBQ0Q7QUFDRjs7QUFFREMsZ0JBQVVuQixXQUFXdUIsR0FBWCxDQUFlTCxJQUFmLENBQVY7O0FBRUE7QUFDQSxZQUFNRCxZQUFZRSxRQUFRSSxHQUFSLENBQVlsQyxzQkFBWixDQUFsQjtBQUNBLFVBQUksT0FBTzRCLFNBQVAsS0FBcUIsV0FBckIsSUFBb0MyRixrQkFBa0JwSCx3QkFBMUQsRUFBb0Y7QUFDbEYsWUFBSXlCLFVBQVVpQixTQUFWLENBQW9Cc0UsSUFBcEIsR0FBMkIsQ0FBL0IsRUFBa0M7QUFDaEM7QUFDRDtBQUNGOztBQUVEO0FBQ0EsWUFBTUYsbUJBQW1CbkYsUUFBUUksR0FBUixDQUFZaEMsMEJBQVosQ0FBekI7QUFDQSxVQUFJLE9BQU8rRyxnQkFBUCxLQUE0QixXQUFoQyxFQUE2QztBQUMzQyxZQUFJQSxpQkFBaUJwRSxTQUFqQixDQUEyQnNFLElBQTNCLEdBQWtDLENBQXRDLEVBQXlDO0FBQ3ZDO0FBQ0Q7QUFDRjs7QUFFRCxZQUFNdkQsa0JBQWtCOUIsUUFBUUksR0FBUixDQUFZcUYsYUFBWixDQUF4Qjs7QUFFQSxZQUFNNUUsUUFBUTRFLGtCQUFrQnBILHdCQUFsQixHQUE2Q0ksT0FBN0MsR0FBdURnSCxhQUFyRTs7QUFFQSxVQUFJLE9BQU8zRCxlQUFQLEtBQTJCLFdBQS9CLEVBQTJDO0FBQ3pDLFlBQUlBLGdCQUFnQmYsU0FBaEIsQ0FBMEJzRSxJQUExQixHQUFpQyxDQUFyQyxFQUF3QztBQUN0Q2hHLGtCQUFRaUcsTUFBUixDQUNFTCxJQURGLEVBRUcseUJBQXdCcEUsS0FBTSxpQ0FGakM7QUFJRDtBQUNGLE9BUEQsTUFPTztBQUNMeEIsZ0JBQVFpRyxNQUFSLENBQ0VMLElBREYsRUFFRyx5QkFBd0JwRSxLQUFNLGlDQUZqQztBQUlEO0FBQ0YsS0E3REQ7O0FBK0RBOzs7OztBQUtBLFVBQU02RSxvQkFBb0JULFFBQVE7QUFDaEMsVUFBSW5HLGFBQWF3QyxHQUFiLENBQWlCdkIsSUFBakIsQ0FBSixFQUE0QjtBQUMxQjtBQUNEOztBQUVELFVBQUlDLFVBQVVuQixXQUFXdUIsR0FBWCxDQUFlTCxJQUFmLENBQWQ7O0FBRUE7QUFDQTtBQUNBLFVBQUksT0FBT0MsT0FBUCxLQUFtQixXQUF2QixFQUFvQztBQUNsQ0Esa0JBQVUsSUFBSXBCLEdBQUosRUFBVjtBQUNEOztBQUVELFlBQU0rRyxhQUFhLElBQUkvRyxHQUFKLEVBQW5CO0FBQ0EsWUFBTWdILHVCQUF1QixJQUFJN0csR0FBSixFQUE3Qjs7QUFFQWtHLFdBQUtNLElBQUwsQ0FBVTdGLE9BQVYsQ0FBa0IsV0FBdUM7QUFBQSxZQUFwQ2tELElBQW9DLFNBQXBDQSxJQUFvQztBQUFBLFlBQTlCaUQsV0FBOEIsU0FBOUJBLFdBQThCO0FBQUEsWUFBakJuRCxVQUFpQixTQUFqQkEsVUFBaUI7O0FBQ3ZELFlBQUlFLFNBQVM1RSwwQkFBYixFQUF5QztBQUN2QzRILCtCQUFxQmpHLEdBQXJCLENBQXlCdEIsd0JBQXpCO0FBQ0Q7QUFDRCxZQUFJdUUsU0FBUzNFLHdCQUFiLEVBQXVDO0FBQ3JDLGNBQUl5RSxXQUFXb0QsTUFBWCxHQUFvQixDQUF4QixFQUEyQjtBQUN6QnBELHVCQUFXaEQsT0FBWCxDQUFtQm1DLGFBQWE7QUFDOUIsa0JBQUlBLFVBQVVrRSxRQUFkLEVBQXdCO0FBQ3RCSCxxQ0FBcUJqRyxHQUFyQixDQUF5QmtDLFVBQVVrRSxRQUFWLENBQW1CQyxJQUE1QztBQUNEO0FBQ0YsYUFKRDtBQUtEO0FBQ0QsY0FBSUgsV0FBSixFQUFpQjtBQUNmLGdCQUNFQSxZQUFZakQsSUFBWixLQUFxQnJFLG9CQUFyQixJQUNBc0gsWUFBWWpELElBQVosS0FBcUJwRSxpQkFEckIsSUFFQXFILFlBQVlqRCxJQUFaLEtBQXFCbEUsVUFIdkIsRUFJRTtBQUNBa0gsbUNBQXFCakcsR0FBckIsQ0FBeUJrRyxZQUFZSSxFQUFaLENBQWVELElBQXhDO0FBQ0Q7QUFDRCxnQkFBSUgsWUFBWWpELElBQVosS0FBcUJ0RSxvQkFBekIsRUFBK0M7QUFDN0N1SCwwQkFBWUssWUFBWixDQUF5QnhHLE9BQXpCLENBQWlDLFdBQVk7QUFBQSxvQkFBVHVHLEVBQVMsU0FBVEEsRUFBUzs7QUFDM0NMLHFDQUFxQmpHLEdBQXJCLENBQXlCc0csR0FBR0QsSUFBNUI7QUFDRCxlQUZEO0FBR0Q7QUFDRjtBQUNGO0FBQ0YsT0EzQkQ7O0FBNkJBO0FBQ0FoRyxjQUFRTixPQUFSLENBQWdCLENBQUNtQixLQUFELEVBQVFDLEdBQVIsS0FBZ0I7QUFDOUIsWUFBSThFLHFCQUFxQnRFLEdBQXJCLENBQXlCUixHQUF6QixDQUFKLEVBQW1DO0FBQ2pDNkUscUJBQVcvRSxHQUFYLENBQWVFLEdBQWYsRUFBb0JELEtBQXBCO0FBQ0Q7QUFDRixPQUpEOztBQU1BO0FBQ0ErRSwyQkFBcUJsRyxPQUFyQixDQUE2Qm9CLE9BQU87QUFDbEMsWUFBSSxDQUFDZCxRQUFRc0IsR0FBUixDQUFZUixHQUFaLENBQUwsRUFBdUI7QUFDckI2RSxxQkFBVy9FLEdBQVgsQ0FBZUUsR0FBZixFQUFvQixFQUFFQyxXQUFXLElBQUloQyxHQUFKLEVBQWIsRUFBcEI7QUFDRDtBQUNGLE9BSkQ7O0FBTUE7QUFDQSxVQUFJZSxZQUFZRSxRQUFRSSxHQUFSLENBQVlsQyxzQkFBWixDQUFoQjtBQUNBLFVBQUlpSCxtQkFBbUJuRixRQUFRSSxHQUFSLENBQVloQywwQkFBWixDQUF2Qjs7QUFFQSxVQUFJLE9BQU8rRyxnQkFBUCxLQUE0QixXQUFoQyxFQUE2QztBQUMzQ0EsMkJBQW1CLEVBQUVwRSxXQUFXLElBQUloQyxHQUFKLEVBQWIsRUFBbkI7QUFDRDs7QUFFRDRHLGlCQUFXL0UsR0FBWCxDQUFlMUMsc0JBQWYsRUFBdUM0QixTQUF2QztBQUNBNkYsaUJBQVcvRSxHQUFYLENBQWV4QywwQkFBZixFQUEyQytHLGdCQUEzQztBQUNBdEcsaUJBQVcrQixHQUFYLENBQWViLElBQWYsRUFBcUI0RixVQUFyQjtBQUNELEtBdEVEOztBQXdFQTs7Ozs7QUFLQSxVQUFNUSxvQkFBb0JsQixRQUFRO0FBQ2hDLFVBQUksQ0FBQ1QsYUFBTCxFQUFvQjtBQUNsQjtBQUNEOztBQUVELFVBQUk0QixpQkFBaUJ6SCxXQUFXeUIsR0FBWCxDQUFlTCxJQUFmLENBQXJCO0FBQ0EsVUFBSSxPQUFPcUcsY0FBUCxLQUEwQixXQUE5QixFQUEyQztBQUN6Q0EseUJBQWlCLElBQUl4SCxHQUFKLEVBQWpCO0FBQ0Q7O0FBRUQsWUFBTXlILHNCQUFzQixJQUFJdEgsR0FBSixFQUE1QjtBQUNBLFlBQU11SCxzQkFBc0IsSUFBSXZILEdBQUosRUFBNUI7O0FBRUEsWUFBTXdILGVBQWUsSUFBSXhILEdBQUosRUFBckI7QUFDQSxZQUFNeUgsZUFBZSxJQUFJekgsR0FBSixFQUFyQjs7QUFFQSxZQUFNMEgsb0JBQW9CLElBQUkxSCxHQUFKLEVBQTFCO0FBQ0EsWUFBTTJILG9CQUFvQixJQUFJM0gsR0FBSixFQUExQjs7QUFFQSxZQUFNNEgsYUFBYSxJQUFJL0gsR0FBSixFQUFuQjtBQUNBLFlBQU1nSSxhQUFhLElBQUloSSxHQUFKLEVBQW5CO0FBQ0F3SCxxQkFBZTFHLE9BQWYsQ0FBdUIsQ0FBQ21CLEtBQUQsRUFBUUMsR0FBUixLQUFnQjtBQUNyQyxZQUFJRCxNQUFNUyxHQUFOLENBQVVwRCxzQkFBVixDQUFKLEVBQXVDO0FBQ3JDcUksdUJBQWE1RyxHQUFiLENBQWlCbUIsR0FBakI7QUFDRDtBQUNELFlBQUlELE1BQU1TLEdBQU4sQ0FBVWxELDBCQUFWLENBQUosRUFBMkM7QUFDekNpSSw4QkFBb0IxRyxHQUFwQixDQUF3Qm1CLEdBQXhCO0FBQ0Q7QUFDRCxZQUFJRCxNQUFNUyxHQUFOLENBQVVqRCx3QkFBVixDQUFKLEVBQXlDO0FBQ3ZDb0ksNEJBQWtCOUcsR0FBbEIsQ0FBc0JtQixHQUF0QjtBQUNEO0FBQ0RELGNBQU1uQixPQUFOLENBQWM2QixPQUFPO0FBQ25CLGNBQUlBLFFBQVFuRCwwQkFBUixJQUNBbUQsUUFBUWxELHdCQURaLEVBQ3NDO0FBQ2pDc0ksdUJBQVcvRixHQUFYLENBQWVXLEdBQWYsRUFBb0JULEdBQXBCO0FBQ0Q7QUFDTCxTQUxEO0FBTUQsT0FoQkQ7O0FBa0JBbUUsV0FBS00sSUFBTCxDQUFVN0YsT0FBVixDQUFrQm1ILFdBQVc7QUFDM0IsWUFBSUMsWUFBSjs7QUFFQTtBQUNBLFlBQUlELFFBQVFqRSxJQUFSLEtBQWlCM0Usd0JBQXJCLEVBQStDO0FBQzdDLGNBQUk0SSxRQUFRRSxNQUFaLEVBQW9CO0FBQ2xCRCwyQkFBZSx1QkFBUUQsUUFBUUUsTUFBUixDQUFlQyxHQUFmLENBQW1CQyxPQUFuQixDQUEyQixRQUEzQixFQUFxQyxFQUFyQyxDQUFSLEVBQWtENUgsT0FBbEQsQ0FBZjtBQUNBd0gsb0JBQVFuRSxVQUFSLENBQW1CaEQsT0FBbkIsQ0FBMkJtQyxhQUFhO0FBQ3RDLGtCQUFJbUUsSUFBSjtBQUNBLGtCQUFJbkUsVUFBVWtFLFFBQVYsQ0FBbUJDLElBQW5CLEtBQTRCdkgsT0FBaEMsRUFBeUM7QUFDdkN1SCx1QkFBTzNILHdCQUFQO0FBQ0QsZUFGRCxNQUVPO0FBQ0wySCx1QkFBT25FLFVBQVVULEtBQVYsQ0FBZ0I0RSxJQUF2QjtBQUNEO0FBQ0RZLHlCQUFXaEcsR0FBWCxDQUFlb0YsSUFBZixFQUFxQmMsWUFBckI7QUFDRCxhQVJEO0FBU0Q7QUFDRjs7QUFFRCxZQUFJRCxRQUFRakUsSUFBUixLQUFpQjFFLHNCQUFyQixFQUE2QztBQUMzQzRJLHlCQUFlLHVCQUFRRCxRQUFRRSxNQUFSLENBQWVDLEdBQWYsQ0FBbUJDLE9BQW5CLENBQTJCLFFBQTNCLEVBQXFDLEVBQXJDLENBQVIsRUFBa0Q1SCxPQUFsRCxDQUFmO0FBQ0FtSCx1QkFBYTdHLEdBQWIsQ0FBaUJtSCxZQUFqQjtBQUNEOztBQUVELFlBQUlELFFBQVFqRSxJQUFSLEtBQWlCekUsa0JBQXJCLEVBQXlDO0FBQ3ZDMkkseUJBQWUsdUJBQVFELFFBQVFFLE1BQVIsQ0FBZUMsR0FBZixDQUFtQkMsT0FBbkIsQ0FBMkIsUUFBM0IsRUFBcUMsRUFBckMsQ0FBUixFQUFrRDVILE9BQWxELENBQWY7QUFDQSxjQUFJLENBQUN5SCxZQUFMLEVBQW1CO0FBQ2pCO0FBQ0Q7O0FBRUQsY0FBSTdILGFBQWE2SCxZQUFiLENBQUosRUFBZ0M7QUFDOUI7QUFDRDs7QUFFRCxjQUFJckUseUJBQXlCb0UsUUFBUW5FLFVBQWpDLENBQUosRUFBa0Q7QUFDaEQ0RCxnQ0FBb0IzRyxHQUFwQixDQUF3Qm1ILFlBQXhCO0FBQ0Q7O0FBRUQsY0FBSWpFLHVCQUF1QmdFLFFBQVFuRSxVQUEvQixDQUFKLEVBQWdEO0FBQzlDZ0UsOEJBQWtCL0csR0FBbEIsQ0FBc0JtSCxZQUF0QjtBQUNEOztBQUVERCxrQkFBUW5FLFVBQVIsQ0FBbUJoRCxPQUFuQixDQUEyQm1DLGFBQWE7QUFDdEMsZ0JBQUlBLFVBQVVlLElBQVYsS0FBbUJ2RSx3QkFBbkIsSUFDQXdELFVBQVVlLElBQVYsS0FBbUJ4RSwwQkFEdkIsRUFDbUQ7QUFDakQ7QUFDRDtBQUNEd0ksdUJBQVdoRyxHQUFYLENBQWVpQixVQUFVcUYsUUFBVixDQUFtQmxCLElBQWxDLEVBQXdDYyxZQUF4QztBQUNELFdBTkQ7QUFPRDtBQUNGLE9BbEREOztBQW9EQU4sbUJBQWE5RyxPQUFiLENBQXFCbUIsU0FBUztBQUM1QixZQUFJLENBQUMwRixhQUFhakYsR0FBYixDQUFpQlQsS0FBakIsQ0FBTCxFQUE4QjtBQUM1QixjQUFJWixVQUFVbUcsZUFBZWhHLEdBQWYsQ0FBbUJTLEtBQW5CLENBQWQ7QUFDQSxjQUFJLE9BQU9aLE9BQVAsS0FBbUIsV0FBdkIsRUFBb0M7QUFDbENBLHNCQUFVLElBQUlsQixHQUFKLEVBQVY7QUFDRDtBQUNEa0Isa0JBQVFOLEdBQVIsQ0FBWXpCLHNCQUFaO0FBQ0FrSSx5QkFBZXhGLEdBQWYsQ0FBbUJDLEtBQW5CLEVBQTBCWixPQUExQjs7QUFFQSxjQUFJRCxVQUFVbkIsV0FBV3VCLEdBQVgsQ0FBZVMsS0FBZixDQUFkO0FBQ0EsY0FBSVcsYUFBSjtBQUNBLGNBQUksT0FBT3hCLE9BQVAsS0FBbUIsV0FBdkIsRUFBb0M7QUFDbEN3Qiw0QkFBZ0J4QixRQUFRSSxHQUFSLENBQVlsQyxzQkFBWixDQUFoQjtBQUNELFdBRkQsTUFFTztBQUNMOEIsc0JBQVUsSUFBSXBCLEdBQUosRUFBVjtBQUNBQyx1QkFBVytCLEdBQVgsQ0FBZUMsS0FBZixFQUFzQmIsT0FBdEI7QUFDRDs7QUFFRCxjQUFJLE9BQU93QixhQUFQLEtBQXlCLFdBQTdCLEVBQTBDO0FBQ3hDQSwwQkFBY1QsU0FBZCxDQUF3QnBCLEdBQXhCLENBQTRCSSxJQUE1QjtBQUNELFdBRkQsTUFFTztBQUNMLGtCQUFNZ0IsWUFBWSxJQUFJaEMsR0FBSixFQUFsQjtBQUNBZ0Msc0JBQVVwQixHQUFWLENBQWNJLElBQWQ7QUFDQUMsb0JBQVFZLEdBQVIsQ0FBWTFDLHNCQUFaLEVBQW9DLEVBQUU2QyxTQUFGLEVBQXBDO0FBQ0Q7QUFDRjtBQUNGLE9BMUJEOztBQTRCQXdGLG1CQUFhN0csT0FBYixDQUFxQm1CLFNBQVM7QUFDNUIsWUFBSSxDQUFDMkYsYUFBYWxGLEdBQWIsQ0FBaUJULEtBQWpCLENBQUwsRUFBOEI7QUFDNUIsZ0JBQU1aLFVBQVVtRyxlQUFlaEcsR0FBZixDQUFtQlMsS0FBbkIsQ0FBaEI7QUFDQVosa0JBQVFtRixNQUFSLENBQWVsSCxzQkFBZjs7QUFFQSxnQkFBTThCLFVBQVVuQixXQUFXdUIsR0FBWCxDQUFlUyxLQUFmLENBQWhCO0FBQ0EsY0FBSSxPQUFPYixPQUFQLEtBQW1CLFdBQXZCLEVBQW9DO0FBQ2xDLGtCQUFNd0IsZ0JBQWdCeEIsUUFBUUksR0FBUixDQUFZbEMsc0JBQVosQ0FBdEI7QUFDQSxnQkFBSSxPQUFPc0QsYUFBUCxLQUF5QixXQUE3QixFQUEwQztBQUN4Q0EsNEJBQWNULFNBQWQsQ0FBd0JxRSxNQUF4QixDQUErQnJGLElBQS9CO0FBQ0Q7QUFDRjtBQUNGO0FBQ0YsT0FiRDs7QUFlQTJHLHdCQUFrQmhILE9BQWxCLENBQTBCbUIsU0FBUztBQUNqQyxZQUFJLENBQUM0RixrQkFBa0JuRixHQUFsQixDQUFzQlQsS0FBdEIsQ0FBTCxFQUFtQztBQUNqQyxjQUFJWixVQUFVbUcsZUFBZWhHLEdBQWYsQ0FBbUJTLEtBQW5CLENBQWQ7QUFDQSxjQUFJLE9BQU9aLE9BQVAsS0FBbUIsV0FBdkIsRUFBb0M7QUFDbENBLHNCQUFVLElBQUlsQixHQUFKLEVBQVY7QUFDRDtBQUNEa0Isa0JBQVFOLEdBQVIsQ0FBWXRCLHdCQUFaO0FBQ0ErSCx5QkFBZXhGLEdBQWYsQ0FBbUJDLEtBQW5CLEVBQTBCWixPQUExQjs7QUFFQSxjQUFJRCxVQUFVbkIsV0FBV3VCLEdBQVgsQ0FBZVMsS0FBZixDQUFkO0FBQ0EsY0FBSVcsYUFBSjtBQUNBLGNBQUksT0FBT3hCLE9BQVAsS0FBbUIsV0FBdkIsRUFBb0M7QUFDbEN3Qiw0QkFBZ0J4QixRQUFRSSxHQUFSLENBQVkvQix3QkFBWixDQUFoQjtBQUNELFdBRkQsTUFFTztBQUNMMkIsc0JBQVUsSUFBSXBCLEdBQUosRUFBVjtBQUNBQyx1QkFBVytCLEdBQVgsQ0FBZUMsS0FBZixFQUFzQmIsT0FBdEI7QUFDRDs7QUFFRCxjQUFJLE9BQU93QixhQUFQLEtBQXlCLFdBQTdCLEVBQTBDO0FBQ3hDQSwwQkFBY1QsU0FBZCxDQUF3QnBCLEdBQXhCLENBQTRCSSxJQUE1QjtBQUNELFdBRkQsTUFFTztBQUNMLGtCQUFNZ0IsWUFBWSxJQUFJaEMsR0FBSixFQUFsQjtBQUNBZ0Msc0JBQVVwQixHQUFWLENBQWNJLElBQWQ7QUFDQUMsb0JBQVFZLEdBQVIsQ0FBWXZDLHdCQUFaLEVBQXNDLEVBQUUwQyxTQUFGLEVBQXRDO0FBQ0Q7QUFDRjtBQUNGLE9BMUJEOztBQTRCQTBGLHdCQUFrQi9HLE9BQWxCLENBQTBCbUIsU0FBUztBQUNqQyxZQUFJLENBQUM2RixrQkFBa0JwRixHQUFsQixDQUFzQlQsS0FBdEIsQ0FBTCxFQUFtQztBQUNqQyxnQkFBTVosVUFBVW1HLGVBQWVoRyxHQUFmLENBQW1CUyxLQUFuQixDQUFoQjtBQUNBWixrQkFBUW1GLE1BQVIsQ0FBZS9HLHdCQUFmOztBQUVBLGdCQUFNMkIsVUFBVW5CLFdBQVd1QixHQUFYLENBQWVTLEtBQWYsQ0FBaEI7QUFDQSxjQUFJLE9BQU9iLE9BQVAsS0FBbUIsV0FBdkIsRUFBb0M7QUFDbEMsa0JBQU13QixnQkFBZ0J4QixRQUFRSSxHQUFSLENBQVkvQix3QkFBWixDQUF0QjtBQUNBLGdCQUFJLE9BQU9tRCxhQUFQLEtBQXlCLFdBQTdCLEVBQTBDO0FBQ3hDQSw0QkFBY1QsU0FBZCxDQUF3QnFFLE1BQXhCLENBQStCckYsSUFBL0I7QUFDRDtBQUNGO0FBQ0Y7QUFDRixPQWJEOztBQWVBdUcsMEJBQW9CNUcsT0FBcEIsQ0FBNEJtQixTQUFTO0FBQ25DLFlBQUksQ0FBQ3dGLG9CQUFvQi9FLEdBQXBCLENBQXdCVCxLQUF4QixDQUFMLEVBQXFDO0FBQ25DLGNBQUlaLFVBQVVtRyxlQUFlaEcsR0FBZixDQUFtQlMsS0FBbkIsQ0FBZDtBQUNBLGNBQUksT0FBT1osT0FBUCxLQUFtQixXQUF2QixFQUFvQztBQUNsQ0Esc0JBQVUsSUFBSWxCLEdBQUosRUFBVjtBQUNEO0FBQ0RrQixrQkFBUU4sR0FBUixDQUFZdkIsMEJBQVo7QUFDQWdJLHlCQUFleEYsR0FBZixDQUFtQkMsS0FBbkIsRUFBMEJaLE9BQTFCOztBQUVBLGNBQUlELFVBQVVuQixXQUFXdUIsR0FBWCxDQUFlUyxLQUFmLENBQWQ7QUFDQSxjQUFJVyxhQUFKO0FBQ0EsY0FBSSxPQUFPeEIsT0FBUCxLQUFtQixXQUF2QixFQUFvQztBQUNsQ3dCLDRCQUFnQnhCLFFBQVFJLEdBQVIsQ0FBWWhDLDBCQUFaLENBQWhCO0FBQ0QsV0FGRCxNQUVPO0FBQ0w0QixzQkFBVSxJQUFJcEIsR0FBSixFQUFWO0FBQ0FDLHVCQUFXK0IsR0FBWCxDQUFlQyxLQUFmLEVBQXNCYixPQUF0QjtBQUNEOztBQUVELGNBQUksT0FBT3dCLGFBQVAsS0FBeUIsV0FBN0IsRUFBMEM7QUFDeENBLDBCQUFjVCxTQUFkLENBQXdCcEIsR0FBeEIsQ0FBNEJJLElBQTVCO0FBQ0QsV0FGRCxNQUVPO0FBQ0wsa0JBQU1nQixZQUFZLElBQUloQyxHQUFKLEVBQWxCO0FBQ0FnQyxzQkFBVXBCLEdBQVYsQ0FBY0ksSUFBZDtBQUNBQyxvQkFBUVksR0FBUixDQUFZeEMsMEJBQVosRUFBd0MsRUFBRTJDLFNBQUYsRUFBeEM7QUFDRDtBQUNGO0FBQ0YsT0ExQkQ7O0FBNEJBc0YsMEJBQW9CM0csT0FBcEIsQ0FBNEJtQixTQUFTO0FBQ25DLFlBQUksQ0FBQ3lGLG9CQUFvQmhGLEdBQXBCLENBQXdCVCxLQUF4QixDQUFMLEVBQXFDO0FBQ25DLGdCQUFNWixVQUFVbUcsZUFBZWhHLEdBQWYsQ0FBbUJTLEtBQW5CLENBQWhCO0FBQ0FaLGtCQUFRbUYsTUFBUixDQUFlaEgsMEJBQWY7O0FBRUEsZ0JBQU00QixVQUFVbkIsV0FBV3VCLEdBQVgsQ0FBZVMsS0FBZixDQUFoQjtBQUNBLGNBQUksT0FBT2IsT0FBUCxLQUFtQixXQUF2QixFQUFvQztBQUNsQyxrQkFBTXdCLGdCQUFnQnhCLFFBQVFJLEdBQVIsQ0FBWWhDLDBCQUFaLENBQXRCO0FBQ0EsZ0JBQUksT0FBT29ELGFBQVAsS0FBeUIsV0FBN0IsRUFBMEM7QUFDeENBLDRCQUFjVCxTQUFkLENBQXdCcUUsTUFBeEIsQ0FBK0JyRixJQUEvQjtBQUNEO0FBQ0Y7QUFDRjtBQUNGLE9BYkQ7O0FBZUE2RyxpQkFBV2xILE9BQVgsQ0FBbUIsQ0FBQ21CLEtBQUQsRUFBUUMsR0FBUixLQUFnQjtBQUNqQyxZQUFJLENBQUM2RixXQUFXckYsR0FBWCxDQUFlUixHQUFmLENBQUwsRUFBMEI7QUFDeEIsY0FBSWIsVUFBVW1HLGVBQWVoRyxHQUFmLENBQW1CUyxLQUFuQixDQUFkO0FBQ0EsY0FBSSxPQUFPWixPQUFQLEtBQW1CLFdBQXZCLEVBQW9DO0FBQ2xDQSxzQkFBVSxJQUFJbEIsR0FBSixFQUFWO0FBQ0Q7QUFDRGtCLGtCQUFRTixHQUFSLENBQVltQixHQUFaO0FBQ0FzRix5QkFBZXhGLEdBQWYsQ0FBbUJDLEtBQW5CLEVBQTBCWixPQUExQjs7QUFFQSxjQUFJRCxVQUFVbkIsV0FBV3VCLEdBQVgsQ0FBZVMsS0FBZixDQUFkO0FBQ0EsY0FBSVcsYUFBSjtBQUNBLGNBQUksT0FBT3hCLE9BQVAsS0FBbUIsV0FBdkIsRUFBb0M7QUFDbEN3Qiw0QkFBZ0J4QixRQUFRSSxHQUFSLENBQVlVLEdBQVosQ0FBaEI7QUFDRCxXQUZELE1BRU87QUFDTGQsc0JBQVUsSUFBSXBCLEdBQUosRUFBVjtBQUNBQyx1QkFBVytCLEdBQVgsQ0FBZUMsS0FBZixFQUFzQmIsT0FBdEI7QUFDRDs7QUFFRCxjQUFJLE9BQU93QixhQUFQLEtBQXlCLFdBQTdCLEVBQTBDO0FBQ3hDQSwwQkFBY1QsU0FBZCxDQUF3QnBCLEdBQXhCLENBQTRCSSxJQUE1QjtBQUNELFdBRkQsTUFFTztBQUNMLGtCQUFNZ0IsWUFBWSxJQUFJaEMsR0FBSixFQUFsQjtBQUNBZ0Msc0JBQVVwQixHQUFWLENBQWNJLElBQWQ7QUFDQUMsb0JBQVFZLEdBQVIsQ0FBWUUsR0FBWixFQUFpQixFQUFFQyxTQUFGLEVBQWpCO0FBQ0Q7QUFDRjtBQUNGLE9BMUJEOztBQTRCQTRGLGlCQUFXakgsT0FBWCxDQUFtQixDQUFDbUIsS0FBRCxFQUFRQyxHQUFSLEtBQWdCO0FBQ2pDLFlBQUksQ0FBQzhGLFdBQVd0RixHQUFYLENBQWVSLEdBQWYsQ0FBTCxFQUEwQjtBQUN4QixnQkFBTWIsVUFBVW1HLGVBQWVoRyxHQUFmLENBQW1CUyxLQUFuQixDQUFoQjtBQUNBWixrQkFBUW1GLE1BQVIsQ0FBZXRFLEdBQWY7O0FBRUEsZ0JBQU1kLFVBQVVuQixXQUFXdUIsR0FBWCxDQUFlUyxLQUFmLENBQWhCO0FBQ0EsY0FBSSxPQUFPYixPQUFQLEtBQW1CLFdBQXZCLEVBQW9DO0FBQ2xDLGtCQUFNd0IsZ0JBQWdCeEIsUUFBUUksR0FBUixDQUFZVSxHQUFaLENBQXRCO0FBQ0EsZ0JBQUksT0FBT1UsYUFBUCxLQUF5QixXQUE3QixFQUEwQztBQUN4Q0EsNEJBQWNULFNBQWQsQ0FBd0JxRSxNQUF4QixDQUErQnJGLElBQS9CO0FBQ0Q7QUFDRjtBQUNGO0FBQ0YsT0FiRDtBQWNELEtBdFFEOztBQXdRQSxXQUFPO0FBQ0wsc0JBQWdCa0YsUUFBUTtBQUN0QlMsMEJBQWtCVCxJQUFsQjtBQUNBa0IsMEJBQWtCbEIsSUFBbEI7QUFDQUQsNEJBQW9CQyxJQUFwQjtBQUNELE9BTEk7QUFNTCxrQ0FBNEJBLFFBQVE7QUFDbENPLG1CQUFXUCxJQUFYLEVBQWlCNUcsd0JBQWpCO0FBQ0QsT0FSSTtBQVNMLGdDQUEwQjRHLFFBQVE7QUFDaENBLGFBQUt2QyxVQUFMLENBQWdCaEQsT0FBaEIsQ0FBd0JtQyxhQUFhO0FBQ2pDMkQscUJBQVdQLElBQVgsRUFBaUJwRCxVQUFVa0UsUUFBVixDQUFtQkMsSUFBcEM7QUFDSCxTQUZEO0FBR0EsWUFBSWYsS0FBS1ksV0FBVCxFQUFzQjtBQUNwQixjQUNFWixLQUFLWSxXQUFMLENBQWlCakQsSUFBakIsS0FBMEJyRSxvQkFBMUIsSUFDQTBHLEtBQUtZLFdBQUwsQ0FBaUJqRCxJQUFqQixLQUEwQnBFLGlCQUQxQixJQUVBeUcsS0FBS1ksV0FBTCxDQUFpQmpELElBQWpCLEtBQTBCbEUsVUFINUIsRUFJRTtBQUNBOEcsdUJBQVdQLElBQVgsRUFBaUJBLEtBQUtZLFdBQUwsQ0FBaUJJLEVBQWpCLENBQW9CRCxJQUFyQztBQUNEO0FBQ0QsY0FBSWYsS0FBS1ksV0FBTCxDQUFpQmpELElBQWpCLEtBQTBCdEUsb0JBQTlCLEVBQW9EO0FBQ2xEMkcsaUJBQUtZLFdBQUwsQ0FBaUJLLFlBQWpCLENBQThCeEcsT0FBOUIsQ0FBc0NtRyxlQUFlO0FBQ25ETCx5QkFBV1AsSUFBWCxFQUFpQlksWUFBWUksRUFBWixDQUFlRCxJQUFoQztBQUNELGFBRkQ7QUFHRDtBQUNGO0FBQ0Y7QUEzQkksS0FBUDtBQTZCRDtBQWhpQmMsQ0FBakIiLCJmaWxlIjoibm8tdW51c2VkLW1vZHVsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlT3ZlcnZpZXcgRW5zdXJlcyB0aGF0IG1vZHVsZXMgY29udGFpbiBleHBvcnRzIGFuZC9vciBhbGxcbiAqIG1vZHVsZXMgYXJlIGNvbnN1bWVkIHdpdGhpbiBvdGhlciBtb2R1bGVzLlxuICogQGF1dGhvciBSZW7DqSBGZXJtYW5uXG4gKi9cblxuaW1wb3J0IEV4cG9ydHMgZnJvbSAnLi4vRXhwb3J0TWFwJ1xuaW1wb3J0IHsgZ2V0RmlsZUV4dGVuc2lvbnMgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL2lnbm9yZSdcbmltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSAncGF0aCdcbmltcG9ydCByZWFkUGtnVXAgZnJvbSAncmVhZC1wa2ctdXAnXG5pbXBvcnQgdmFsdWVzIGZyb20gJ29iamVjdC52YWx1ZXMnXG5pbXBvcnQgaW5jbHVkZXMgZnJvbSAnYXJyYXktaW5jbHVkZXMnXG5cbi8vIGVzbGludC9saWIvdXRpbC9nbG9iLXV0aWwgaGFzIGJlZW4gbW92ZWQgdG8gZXNsaW50L2xpYi91dGlsL2dsb2ItdXRpbHMgd2l0aCB2ZXJzaW9uIDUuM1xuLy8gYW5kIGhhcyBiZWVuIG1vdmVkIHRvIGVzbGludC9saWIvY2xpLWVuZ2luZS9maWxlLWVudW1lcmF0b3IgaW4gdmVyc2lvbiA2XG5sZXQgbGlzdEZpbGVzVG9Qcm9jZXNzXG50cnkge1xuICBjb25zdCBGaWxlRW51bWVyYXRvciA9IHJlcXVpcmUoJ2VzbGludC9saWIvY2xpLWVuZ2luZS9maWxlLWVudW1lcmF0b3InKS5GaWxlRW51bWVyYXRvclxuICBsaXN0RmlsZXNUb1Byb2Nlc3MgPSBmdW5jdGlvbiAoc3JjLCBleHRlbnNpb25zKSB7XG4gICAgY29uc3QgZSA9IG5ldyBGaWxlRW51bWVyYXRvcih7XG4gICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zLFxuICAgIH0pXG4gICAgcmV0dXJuIEFycmF5LmZyb20oZS5pdGVyYXRlRmlsZXMoc3JjKSwgKHsgZmlsZVBhdGgsIGlnbm9yZWQgfSkgPT4gKHtcbiAgICAgIGlnbm9yZWQsXG4gICAgICBmaWxlbmFtZTogZmlsZVBhdGgsXG4gICAgfSkpXG4gIH1cbn0gY2F0Y2ggKGUxKSB7XG4gIC8vIFByZXZlbnQgcGFzc2luZyBpbnZhbGlkIG9wdGlvbnMgKGV4dGVuc2lvbnMgYXJyYXkpIHRvIG9sZCB2ZXJzaW9ucyBvZiB0aGUgZnVuY3Rpb24uXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9lc2xpbnQvZXNsaW50L2Jsb2IvdjUuMTYuMC9saWIvdXRpbC9nbG9iLXV0aWxzLmpzI0wxNzgtTDI4MFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZXNsaW50L2VzbGludC9ibG9iL3Y1LjIuMC9saWIvdXRpbC9nbG9iLXV0aWwuanMjTDE3NC1MMjY5XG4gIGxldCBvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2Vzc1xuICB0cnkge1xuICAgIG9yaWdpbmFsTGlzdEZpbGVzVG9Qcm9jZXNzID0gcmVxdWlyZSgnZXNsaW50L2xpYi91dGlsL2dsb2ItdXRpbHMnKS5saXN0RmlsZXNUb1Byb2Nlc3NcbiAgICBsaXN0RmlsZXNUb1Byb2Nlc3MgPSBmdW5jdGlvbiAoc3JjLCBleHRlbnNpb25zKSB7XG4gICAgICByZXR1cm4gb3JpZ2luYWxMaXN0RmlsZXNUb1Byb2Nlc3Moc3JjLCB7XG4gICAgICAgIGV4dGVuc2lvbnM6IGV4dGVuc2lvbnMsXG4gICAgICB9KVxuICAgIH1cbiAgfSBjYXRjaCAoZTIpIHtcbiAgICBvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyA9IHJlcXVpcmUoJ2VzbGludC9saWIvdXRpbC9nbG9iLXV0aWwnKS5saXN0RmlsZXNUb1Byb2Nlc3NcblxuICAgIGxpc3RGaWxlc1RvUHJvY2VzcyA9IGZ1bmN0aW9uIChzcmMsIGV4dGVuc2lvbnMpIHtcbiAgICAgIGNvbnN0IHBhdHRlcm5zID0gc3JjLnJlZHVjZSgoY2FycnksIHBhdHRlcm4pID0+IHtcbiAgICAgICAgcmV0dXJuIGNhcnJ5LmNvbmNhdChleHRlbnNpb25zLm1hcCgoZXh0ZW5zaW9uKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIC9cXCpcXCp8XFwqXFwuLy50ZXN0KHBhdHRlcm4pID8gcGF0dGVybiA6IGAke3BhdHRlcm59LyoqLyoke2V4dGVuc2lvbn1gXG4gICAgICAgIH0pKVxuICAgICAgfSwgc3JjLnNsaWNlKCkpXG5cbiAgICAgIHJldHVybiBvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyhwYXR0ZXJucylcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgRVhQT1JUX0RFRkFVTFRfREVDTEFSQVRJT04gPSAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJ1xuY29uc3QgRVhQT1JUX05BTUVEX0RFQ0xBUkFUSU9OID0gJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nXG5jb25zdCBFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OID0gJ0V4cG9ydEFsbERlY2xhcmF0aW9uJ1xuY29uc3QgSU1QT1JUX0RFQ0xBUkFUSU9OID0gJ0ltcG9ydERlY2xhcmF0aW9uJ1xuY29uc3QgSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIgPSAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJ1xuY29uc3QgSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSID0gJ0ltcG9ydERlZmF1bHRTcGVjaWZpZXInXG5jb25zdCBWQVJJQUJMRV9ERUNMQVJBVElPTiA9ICdWYXJpYWJsZURlY2xhcmF0aW9uJ1xuY29uc3QgRlVOQ1RJT05fREVDTEFSQVRJT04gPSAnRnVuY3Rpb25EZWNsYXJhdGlvbidcbmNvbnN0IENMQVNTX0RFQ0xBUkFUSU9OID0gJ0NsYXNzRGVjbGFyYXRpb24nXG5jb25zdCBERUZBVUxUID0gJ2RlZmF1bHQnXG5jb25zdCBUWVBFX0FMSUFTID0gJ1R5cGVBbGlhcydcblxuY29uc3QgaW1wb3J0TGlzdCA9IG5ldyBNYXAoKVxuY29uc3QgZXhwb3J0TGlzdCA9IG5ldyBNYXAoKVxuY29uc3QgaWdub3JlZEZpbGVzID0gbmV3IFNldCgpXG5jb25zdCBmaWxlc091dHNpZGVTcmMgPSBuZXcgU2V0KClcblxuY29uc3QgaXNOb2RlTW9kdWxlID0gcGF0aCA9PiB7XG4gIHJldHVybiAvXFwvKG5vZGVfbW9kdWxlcylcXC8vLnRlc3QocGF0aClcbn1cblxuLyoqXG4gKiByZWFkIGFsbCBmaWxlcyBtYXRjaGluZyB0aGUgcGF0dGVybnMgaW4gc3JjIGFuZCBpZ25vcmVFeHBvcnRzXG4gKlxuICogcmV0dXJuIGFsbCBmaWxlcyBtYXRjaGluZyBzcmMgcGF0dGVybiwgd2hpY2ggYXJlIG5vdCBtYXRjaGluZyB0aGUgaWdub3JlRXhwb3J0cyBwYXR0ZXJuXG4gKi9cbmNvbnN0IHJlc29sdmVGaWxlcyA9IChzcmMsIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpID0+IHtcbiAgY29uc3QgZXh0ZW5zaW9ucyA9IEFycmF5LmZyb20oZ2V0RmlsZUV4dGVuc2lvbnMoY29udGV4dC5zZXR0aW5ncykpXG5cbiAgY29uc3Qgc3JjRmlsZXMgPSBuZXcgU2V0KClcbiAgY29uc3Qgc3JjRmlsZUxpc3QgPSBsaXN0RmlsZXNUb1Byb2Nlc3Moc3JjLCBleHRlbnNpb25zKVxuXG4gIC8vIHByZXBhcmUgbGlzdCBvZiBpZ25vcmVkIGZpbGVzXG4gIGNvbnN0IGlnbm9yZWRGaWxlc0xpc3QgPSAgbGlzdEZpbGVzVG9Qcm9jZXNzKGlnbm9yZUV4cG9ydHMsIGV4dGVuc2lvbnMpXG4gIGlnbm9yZWRGaWxlc0xpc3QuZm9yRWFjaCgoeyBmaWxlbmFtZSB9KSA9PiBpZ25vcmVkRmlsZXMuYWRkKGZpbGVuYW1lKSlcblxuICAvLyBwcmVwYXJlIGxpc3Qgb2Ygc291cmNlIGZpbGVzLCBkb24ndCBjb25zaWRlciBmaWxlcyBmcm9tIG5vZGVfbW9kdWxlc1xuICBzcmNGaWxlTGlzdC5maWx0ZXIoKHsgZmlsZW5hbWUgfSkgPT4gIWlzTm9kZU1vZHVsZShmaWxlbmFtZSkpLmZvckVhY2goKHsgZmlsZW5hbWUgfSkgPT4ge1xuICAgIHNyY0ZpbGVzLmFkZChmaWxlbmFtZSlcbiAgfSlcbiAgcmV0dXJuIHNyY0ZpbGVzXG59XG5cbi8qKlxuICogcGFyc2UgYWxsIHNvdXJjZSBmaWxlcyBhbmQgYnVpbGQgdXAgMiBtYXBzIGNvbnRhaW5pbmcgdGhlIGV4aXN0aW5nIGltcG9ydHMgYW5kIGV4cG9ydHNcbiAqL1xuY29uc3QgcHJlcGFyZUltcG9ydHNBbmRFeHBvcnRzID0gKHNyY0ZpbGVzLCBjb250ZXh0KSA9PiB7XG4gIGNvbnN0IGV4cG9ydEFsbCA9IG5ldyBNYXAoKVxuICBzcmNGaWxlcy5mb3JFYWNoKGZpbGUgPT4ge1xuICAgIGNvbnN0IGV4cG9ydHMgPSBuZXcgTWFwKClcbiAgICBjb25zdCBpbXBvcnRzID0gbmV3IE1hcCgpXG4gICAgY29uc3QgY3VycmVudEV4cG9ydHMgPSBFeHBvcnRzLmdldChmaWxlLCBjb250ZXh0KVxuICAgIGlmIChjdXJyZW50RXhwb3J0cykge1xuICAgICAgY29uc3QgeyBkZXBlbmRlbmNpZXMsIHJlZXhwb3J0cywgaW1wb3J0czogbG9jYWxJbXBvcnRMaXN0LCBuYW1lc3BhY2UgIH0gPSBjdXJyZW50RXhwb3J0c1xuXG4gICAgICAvLyBkZXBlbmRlbmNpZXMgPT09IGV4cG9ydCAqIGZyb21cbiAgICAgIGNvbnN0IGN1cnJlbnRFeHBvcnRBbGwgPSBuZXcgU2V0KClcbiAgICAgIGRlcGVuZGVuY2llcy5mb3JFYWNoKGdldERlcGVuZGVuY3kgPT4ge1xuICAgICAgICBjb25zdCBkZXBlbmRlbmN5ID0gZ2V0RGVwZW5kZW5jeSgpXG4gICAgICAgIGlmIChkZXBlbmRlbmN5ID09PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjdXJyZW50RXhwb3J0QWxsLmFkZChkZXBlbmRlbmN5LnBhdGgpXG4gICAgICB9KVxuICAgICAgZXhwb3J0QWxsLnNldChmaWxlLCBjdXJyZW50RXhwb3J0QWxsKVxuXG4gICAgICByZWV4cG9ydHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoa2V5ID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSLCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVleHBvcnQgPSAgdmFsdWUuZ2V0SW1wb3J0KClcbiAgICAgICAgaWYgKCFyZWV4cG9ydCkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIGxldCBsb2NhbEltcG9ydCA9IGltcG9ydHMuZ2V0KHJlZXhwb3J0LnBhdGgpXG4gICAgICAgIGxldCBjdXJyZW50VmFsdWVcbiAgICAgICAgaWYgKHZhbHVlLmxvY2FsID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgY3VycmVudFZhbHVlID0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY3VycmVudFZhbHVlID0gdmFsdWUubG9jYWxcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGxvY2FsSW1wb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIGxvY2FsSW1wb3J0ID0gbmV3IFNldChbLi4ubG9jYWxJbXBvcnQsIGN1cnJlbnRWYWx1ZV0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9jYWxJbXBvcnQgPSBuZXcgU2V0KFtjdXJyZW50VmFsdWVdKVxuICAgICAgICB9XG4gICAgICAgIGltcG9ydHMuc2V0KHJlZXhwb3J0LnBhdGgsIGxvY2FsSW1wb3J0KVxuICAgICAgfSlcblxuICAgICAgbG9jYWxJbXBvcnRMaXN0LmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKGlzTm9kZU1vZHVsZShrZXkpKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgaW1wb3J0cy5zZXQoa2V5LCB2YWx1ZS5pbXBvcnRlZFNwZWNpZmllcnMpXG4gICAgICB9KVxuICAgICAgaW1wb3J0TGlzdC5zZXQoZmlsZSwgaW1wb3J0cylcblxuICAgICAgLy8gYnVpbGQgdXAgZXhwb3J0IGxpc3Qgb25seSwgaWYgZmlsZSBpcyBub3QgaWdub3JlZFxuICAgICAgaWYgKGlnbm9yZWRGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBuYW1lc3BhY2UuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoa2V5ID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSLCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICAgIGV4cG9ydHMuc2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04sIHsgd2hlcmVVc2VkOiBuZXcgU2V0KCkgfSlcbiAgICBleHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KVxuICAgIGV4cG9ydExpc3Quc2V0KGZpbGUsIGV4cG9ydHMpXG4gIH0pXG4gIGV4cG9ydEFsbC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgdmFsdWUuZm9yRWFjaCh2YWwgPT4ge1xuICAgICAgY29uc3QgY3VycmVudEV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWwpXG4gICAgICBjb25zdCBjdXJyZW50RXhwb3J0ID0gY3VycmVudEV4cG9ydHMuZ2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG4gICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5hZGQoa2V5KVxuICAgIH0pXG4gIH0pXG59XG5cbi8qKlxuICogdHJhdmVyc2UgdGhyb3VnaCBhbGwgaW1wb3J0cyBhbmQgYWRkIHRoZSByZXNwZWN0aXZlIHBhdGggdG8gdGhlIHdoZXJlVXNlZC1saXN0XG4gKiBvZiB0aGUgY29ycmVzcG9uZGluZyBleHBvcnRcbiAqL1xuY29uc3QgZGV0ZXJtaW5lVXNhZ2UgPSAoKSA9PiB7XG4gIGltcG9ydExpc3QuZm9yRWFjaCgobGlzdFZhbHVlLCBsaXN0S2V5KSA9PiB7XG4gICAgbGlzdFZhbHVlLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldChrZXkpXG4gICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHZhbHVlLmZvckVhY2goY3VycmVudEltcG9ydCA9PiB7XG4gICAgICAgICAgbGV0IHNwZWNpZmllclxuICAgICAgICAgIGlmIChjdXJyZW50SW1wb3J0ID09PSBJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUikge1xuICAgICAgICAgICAgc3BlY2lmaWVyID0gSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVJcbiAgICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRJbXBvcnQgPT09IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUikge1xuICAgICAgICAgICAgc3BlY2lmaWVyID0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHNwZWNpZmllciA9IGN1cnJlbnRJbXBvcnRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHR5cGVvZiBzcGVjaWZpZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBleHBvcnRTdGF0ZW1lbnQgPSBleHBvcnRzLmdldChzcGVjaWZpZXIpXG4gICAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydFN0YXRlbWVudCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgY29uc3QgeyB3aGVyZVVzZWQgfSA9IGV4cG9ydFN0YXRlbWVudFxuICAgICAgICAgICAgICB3aGVyZVVzZWQuYWRkKGxpc3RLZXkpXG4gICAgICAgICAgICAgIGV4cG9ydHMuc2V0KHNwZWNpZmllciwgeyB3aGVyZVVzZWQgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSlcbiAgfSlcbn1cblxuY29uc3QgZ2V0U3JjID0gc3JjID0+IHtcbiAgaWYgKHNyYykge1xuICAgIHJldHVybiBzcmNcbiAgfVxuICByZXR1cm4gW3Byb2Nlc3MuY3dkKCldXG59XG5cbi8qKlxuICogcHJlcGFyZSB0aGUgbGlzdHMgb2YgZXhpc3RpbmcgaW1wb3J0cyBhbmQgZXhwb3J0cyAtIHNob3VsZCBvbmx5IGJlIGV4ZWN1dGVkIG9uY2UgYXRcbiAqIHRoZSBzdGFydCBvZiBhIG5ldyBlc2xpbnQgcnVuXG4gKi9cbmxldCBzcmNGaWxlc1xubGV0IGxhc3RQcmVwYXJlS2V5XG5jb25zdCBkb1ByZXBhcmF0aW9uID0gKHNyYywgaWdub3JlRXhwb3J0cywgY29udGV4dCkgPT4ge1xuICBjb25zdCBwcmVwYXJlS2V5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgIHNyYzogKHNyYyB8fCBbXSkuc29ydCgpLFxuICAgIGlnbm9yZUV4cG9ydHM6IChpZ25vcmVFeHBvcnRzIHx8IFtdKS5zb3J0KCksXG4gICAgZXh0ZW5zaW9uczogQXJyYXkuZnJvbShnZXRGaWxlRXh0ZW5zaW9ucyhjb250ZXh0LnNldHRpbmdzKSkuc29ydCgpLFxuICB9KVxuICBpZiAocHJlcGFyZUtleSA9PT0gbGFzdFByZXBhcmVLZXkpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGltcG9ydExpc3QuY2xlYXIoKVxuICBleHBvcnRMaXN0LmNsZWFyKClcbiAgaWdub3JlZEZpbGVzLmNsZWFyKClcbiAgZmlsZXNPdXRzaWRlU3JjLmNsZWFyKClcblxuICBzcmNGaWxlcyA9IHJlc29sdmVGaWxlcyhnZXRTcmMoc3JjKSwgaWdub3JlRXhwb3J0cywgY29udGV4dClcbiAgcHJlcGFyZUltcG9ydHNBbmRFeHBvcnRzKHNyY0ZpbGVzLCBjb250ZXh0KVxuICBkZXRlcm1pbmVVc2FnZSgpXG4gIGxhc3RQcmVwYXJlS2V5ID0gcHJlcGFyZUtleVxufVxuXG5jb25zdCBuZXdOYW1lc3BhY2VJbXBvcnRFeGlzdHMgPSBzcGVjaWZpZXJzID0+XG4gIHNwZWNpZmllcnMuc29tZSgoeyB0eXBlIH0pID0+IHR5cGUgPT09IElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKVxuXG5jb25zdCBuZXdEZWZhdWx0SW1wb3J0RXhpc3RzID0gc3BlY2lmaWVycyA9PlxuICBzcGVjaWZpZXJzLnNvbWUoKHsgdHlwZSB9KSA9PiB0eXBlID09PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpXG5cbmNvbnN0IGZpbGVJc0luUGtnID0gZmlsZSA9PiB7XG4gIGNvbnN0IHsgcGF0aCwgcGtnIH0gPSByZWFkUGtnVXAuc3luYyh7Y3dkOiBmaWxlLCBub3JtYWxpemU6IGZhbHNlfSlcbiAgY29uc3QgYmFzZVBhdGggPSBkaXJuYW1lKHBhdGgpXG5cbiAgY29uc3QgY2hlY2tQa2dGaWVsZFN0cmluZyA9IHBrZ0ZpZWxkID0+IHtcbiAgICBpZiAoam9pbihiYXNlUGF0aCwgcGtnRmllbGQpID09PSBmaWxlKSB7XG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9XG4gIH1cblxuICBjb25zdCBjaGVja1BrZ0ZpZWxkT2JqZWN0ID0gcGtnRmllbGQgPT4ge1xuICAgICAgY29uc3QgcGtnRmllbGRGaWxlcyA9IHZhbHVlcyhwa2dGaWVsZCkubWFwKHZhbHVlID0+IGpvaW4oYmFzZVBhdGgsIHZhbHVlKSlcbiAgICAgIGlmIChpbmNsdWRlcyhwa2dGaWVsZEZpbGVzLCBmaWxlKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuICB9XG5cbiAgY29uc3QgY2hlY2tQa2dGaWVsZCA9IHBrZ0ZpZWxkID0+IHtcbiAgICBpZiAodHlwZW9mIHBrZ0ZpZWxkID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGNoZWNrUGtnRmllbGRTdHJpbmcocGtnRmllbGQpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBwa2dGaWVsZCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBjaGVja1BrZ0ZpZWxkT2JqZWN0KHBrZ0ZpZWxkKVxuICAgIH1cbiAgfVxuXG4gIGlmIChwa2cucHJpdmF0ZSA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgaWYgKHBrZy5iaW4pIHtcbiAgICBpZiAoY2hlY2tQa2dGaWVsZChwa2cuYmluKSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gIH1cblxuICBpZiAocGtnLmJyb3dzZXIpIHtcbiAgICBpZiAoY2hlY2tQa2dGaWVsZChwa2cuYnJvd3NlcikpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9XG5cbiAgaWYgKHBrZy5tYWluKSB7XG4gICAgaWYgKGNoZWNrUGtnRmllbGRTdHJpbmcocGtnLm1haW4pKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmYWxzZVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7IHVybDogZG9jc1VybCgnbm8tdW51c2VkLW1vZHVsZXMnKSB9LFxuICAgIHNjaGVtYTogW3tcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgc3JjOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICdmaWxlcy9wYXRocyB0byBiZSBhbmFseXplZCAob25seSBmb3IgdW51c2VkIGV4cG9ydHMpJyxcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIG1pbkl0ZW1zOiAxLFxuICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIG1pbkxlbmd0aDogMSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBpZ25vcmVFeHBvcnRzOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAnZmlsZXMvcGF0aHMgZm9yIHdoaWNoIHVudXNlZCBleHBvcnRzIHdpbGwgbm90IGJlIHJlcG9ydGVkIChlLmcgbW9kdWxlIGVudHJ5IHBvaW50cyknLFxuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgbWluSXRlbXM6IDEsXG4gICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgbWluTGVuZ3RoOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG1pc3NpbmdFeHBvcnRzOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICdyZXBvcnQgbW9kdWxlcyB3aXRob3V0IGFueSBleHBvcnRzJyxcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICAgIHVudXNlZEV4cG9ydHM6IHtcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ3JlcG9ydCBleHBvcnRzIHdpdGhvdXQgYW55IHVzYWdlJyxcbiAgICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbm90OiB7XG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICB1bnVzZWRFeHBvcnRzOiB7IGVudW06IFtmYWxzZV0gfSxcbiAgICAgICAgICBtaXNzaW5nRXhwb3J0czogeyBlbnVtOiBbZmFsc2VdIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgYW55T2Y6W3tcbiAgICAgICAgbm90OiB7XG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgdW51c2VkRXhwb3J0czogeyBlbnVtOiBbdHJ1ZV0gfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogWydtaXNzaW5nRXhwb3J0cyddLFxuICAgICAgfSwge1xuICAgICAgICBub3Q6IHtcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBtaXNzaW5nRXhwb3J0czogeyBlbnVtOiBbdHJ1ZV0gfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogWyd1bnVzZWRFeHBvcnRzJ10sXG4gICAgICB9LCB7XG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICB1bnVzZWRFeHBvcnRzOiB7IGVudW06IFt0cnVlXSB9LFxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogWyd1bnVzZWRFeHBvcnRzJ10sXG4gICAgICB9LCB7XG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICBtaXNzaW5nRXhwb3J0czogeyBlbnVtOiBbdHJ1ZV0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVxdWlyZWQ6IFsnbWlzc2luZ0V4cG9ydHMnXSxcbiAgICAgIH1dLFxuICAgIH1dLFxuICB9LFxuXG4gIGNyZWF0ZTogY29udGV4dCA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgc3JjLFxuICAgICAgaWdub3JlRXhwb3J0cyA9IFtdLFxuICAgICAgbWlzc2luZ0V4cG9ydHMsXG4gICAgICB1bnVzZWRFeHBvcnRzLFxuICAgIH0gPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cblxuICAgIGlmICh1bnVzZWRFeHBvcnRzKSB7XG4gICAgICBkb1ByZXBhcmF0aW9uKHNyYywgaWdub3JlRXhwb3J0cywgY29udGV4dClcbiAgICB9XG5cbiAgICBjb25zdCBmaWxlID0gY29udGV4dC5nZXRGaWxlbmFtZSgpXG5cbiAgICBjb25zdCBjaGVja0V4cG9ydFByZXNlbmNlID0gbm9kZSA9PiB7XG4gICAgICBpZiAoIW1pc3NpbmdFeHBvcnRzKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAoaWdub3JlZEZpbGVzLmhhcyhmaWxlKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgY29uc3QgZXhwb3J0Q291bnQgPSBleHBvcnRMaXN0LmdldChmaWxlKVxuICAgICAgY29uc3QgZXhwb3J0QWxsID0gZXhwb3J0Q291bnQuZ2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG4gICAgICBjb25zdCBuYW1lc3BhY2VJbXBvcnRzID0gZXhwb3J0Q291bnQuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKVxuXG4gICAgICBleHBvcnRDb3VudC5kZWxldGUoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcbiAgICAgIGV4cG9ydENvdW50LmRlbGV0ZShJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUilcbiAgICAgIGlmIChleHBvcnRDb3VudC5zaXplIDwgMSkge1xuICAgICAgICAvLyBub2RlLmJvZHlbMF0gPT09ICd1bmRlZmluZWQnIG9ubHkgaGFwcGVucywgaWYgZXZlcnl0aGluZyBpcyBjb21tZW50ZWQgb3V0IGluIHRoZSBmaWxlXG4gICAgICAgIC8vIGJlaW5nIGxpbnRlZFxuICAgICAgICBjb250ZXh0LnJlcG9ydChub2RlLmJvZHlbMF0gPyBub2RlLmJvZHlbMF0gOiBub2RlLCAnTm8gZXhwb3J0cyBmb3VuZCcpXG4gICAgICB9XG4gICAgICBleHBvcnRDb3VudC5zZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTiwgZXhwb3J0QWxsKVxuICAgICAgZXhwb3J0Q291bnQuc2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSLCBuYW1lc3BhY2VJbXBvcnRzKVxuICAgIH1cblxuICAgIGNvbnN0IGNoZWNrVXNhZ2UgPSAobm9kZSwgZXhwb3J0ZWRWYWx1ZSkgPT4ge1xuICAgICAgaWYgKCF1bnVzZWRFeHBvcnRzKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAoaWdub3JlZEZpbGVzLmhhcyhmaWxlKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKGZpbGVJc0luUGtnKGZpbGUpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAoZmlsZXNPdXRzaWRlU3JjLmhhcyhmaWxlKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gbWFrZSBzdXJlIGZpbGUgdG8gYmUgbGludGVkIGlzIGluY2x1ZGVkIGluIHNvdXJjZSBmaWxlc1xuICAgICAgaWYgKCFzcmNGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgc3JjRmlsZXMgPSByZXNvbHZlRmlsZXMoZ2V0U3JjKHNyYyksIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpXG4gICAgICAgIGlmICghc3JjRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgICAgZmlsZXNPdXRzaWRlU3JjLmFkZChmaWxlKVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldChmaWxlKVxuXG4gICAgICAvLyBzcGVjaWFsIGNhc2U6IGV4cG9ydCAqIGZyb21cbiAgICAgIGNvbnN0IGV4cG9ydEFsbCA9IGV4cG9ydHMuZ2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG4gICAgICBpZiAodHlwZW9mIGV4cG9ydEFsbCAhPT0gJ3VuZGVmaW5lZCcgJiYgZXhwb3J0ZWRWYWx1ZSAhPT0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKSB7XG4gICAgICAgIGlmIChleHBvcnRBbGwud2hlcmVVc2VkLnNpemUgPiAwKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gc3BlY2lhbCBjYXNlOiBuYW1lc3BhY2UgaW1wb3J0XG4gICAgICBjb25zdCBuYW1lc3BhY2VJbXBvcnRzID0gZXhwb3J0cy5nZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG4gICAgICBpZiAodHlwZW9mIG5hbWVzcGFjZUltcG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGlmIChuYW1lc3BhY2VJbXBvcnRzLndoZXJlVXNlZC5zaXplID4gMCkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGV4cG9ydFN0YXRlbWVudCA9IGV4cG9ydHMuZ2V0KGV4cG9ydGVkVmFsdWUpXG5cbiAgICAgIGNvbnN0IHZhbHVlID0gZXhwb3J0ZWRWYWx1ZSA9PT0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSID8gREVGQVVMVCA6IGV4cG9ydGVkVmFsdWVcblxuICAgICAgaWYgKHR5cGVvZiBleHBvcnRTdGF0ZW1lbnQgIT09ICd1bmRlZmluZWQnKXtcbiAgICAgICAgaWYgKGV4cG9ydFN0YXRlbWVudC53aGVyZVVzZWQuc2l6ZSA8IDEpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydChcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBgZXhwb3J0ZWQgZGVjbGFyYXRpb24gJyR7dmFsdWV9JyBub3QgdXNlZCB3aXRoaW4gb3RoZXIgbW9kdWxlc2BcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgYGV4cG9ydGVkIGRlY2xhcmF0aW9uICcke3ZhbHVlfScgbm90IHVzZWQgd2l0aGluIG90aGVyIG1vZHVsZXNgXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBvbmx5IHVzZWZ1bCBmb3IgdG9vbHMgbGlrZSB2c2NvZGUtZXNsaW50XG4gICAgICpcbiAgICAgKiB1cGRhdGUgbGlzdHMgb2YgZXhpc3RpbmcgZXhwb3J0cyBkdXJpbmcgcnVudGltZVxuICAgICAqL1xuICAgIGNvbnN0IHVwZGF0ZUV4cG9ydFVzYWdlID0gbm9kZSA9PiB7XG4gICAgICBpZiAoaWdub3JlZEZpbGVzLmhhcyhmaWxlKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgbGV0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldChmaWxlKVxuXG4gICAgICAvLyBuZXcgbW9kdWxlIGhhcyBiZWVuIGNyZWF0ZWQgZHVyaW5nIHJ1bnRpbWVcbiAgICAgIC8vIGluY2x1ZGUgaXQgaW4gZnVydGhlciBwcm9jZXNzaW5nXG4gICAgICBpZiAodHlwZW9mIGV4cG9ydHMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGV4cG9ydHMgPSBuZXcgTWFwKClcbiAgICAgIH1cblxuICAgICAgY29uc3QgbmV3RXhwb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgY29uc3QgbmV3RXhwb3J0SWRlbnRpZmllcnMgPSBuZXcgU2V0KClcblxuICAgICAgbm9kZS5ib2R5LmZvckVhY2goKHsgdHlwZSwgZGVjbGFyYXRpb24sIHNwZWNpZmllcnMgfSkgPT4ge1xuICAgICAgICBpZiAodHlwZSA9PT0gRVhQT1JUX0RFRkFVTFRfREVDTEFSQVRJT04pIHtcbiAgICAgICAgICBuZXdFeHBvcnRJZGVudGlmaWVycy5hZGQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKVxuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlID09PSBFWFBPUlRfTkFNRURfREVDTEFSQVRJT04pIHtcbiAgICAgICAgICBpZiAoc3BlY2lmaWVycy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBzcGVjaWZpZXJzLmZvckVhY2goc3BlY2lmaWVyID0+IHtcbiAgICAgICAgICAgICAgaWYgKHNwZWNpZmllci5leHBvcnRlZCkge1xuICAgICAgICAgICAgICAgIG5ld0V4cG9ydElkZW50aWZpZXJzLmFkZChzcGVjaWZpZXIuZXhwb3J0ZWQubmFtZSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlY2xhcmF0aW9uKSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IEZVTkNUSU9OX0RFQ0xBUkFUSU9OIHx8XG4gICAgICAgICAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IENMQVNTX0RFQ0xBUkFUSU9OIHx8XG4gICAgICAgICAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IFRZUEVfQUxJQVNcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBuZXdFeHBvcnRJZGVudGlmaWVycy5hZGQoZGVjbGFyYXRpb24uaWQubmFtZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChkZWNsYXJhdGlvbi50eXBlID09PSBWQVJJQUJMRV9ERUNMQVJBVElPTikge1xuICAgICAgICAgICAgICBkZWNsYXJhdGlvbi5kZWNsYXJhdGlvbnMuZm9yRWFjaCgoeyBpZCB9KSA9PiB7XG4gICAgICAgICAgICAgICAgbmV3RXhwb3J0SWRlbnRpZmllcnMuYWRkKGlkLm5hbWUpXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICAvLyBvbGQgZXhwb3J0cyBleGlzdCB3aXRoaW4gbGlzdCBvZiBuZXcgZXhwb3J0cyBpZGVudGlmaWVyczogYWRkIHRvIG1hcCBvZiBuZXcgZXhwb3J0c1xuICAgICAgZXhwb3J0cy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmIChuZXdFeHBvcnRJZGVudGlmaWVycy5oYXMoa2V5KSkge1xuICAgICAgICAgIG5ld0V4cG9ydHMuc2V0KGtleSwgdmFsdWUpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIC8vIG5ldyBleHBvcnQgaWRlbnRpZmllcnMgYWRkZWQ6IGFkZCB0byBtYXAgb2YgbmV3IGV4cG9ydHNcbiAgICAgIG5ld0V4cG9ydElkZW50aWZpZXJzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgaWYgKCFleHBvcnRzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgbmV3RXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIC8vIHByZXNlcnZlIGluZm9ybWF0aW9uIGFib3V0IG5hbWVzcGFjZSBpbXBvcnRzXG4gICAgICBsZXQgZXhwb3J0QWxsID0gZXhwb3J0cy5nZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcbiAgICAgIGxldCBuYW1lc3BhY2VJbXBvcnRzID0gZXhwb3J0cy5nZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG5cbiAgICAgIGlmICh0eXBlb2YgbmFtZXNwYWNlSW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgbmFtZXNwYWNlSW1wb3J0cyA9IHsgd2hlcmVVc2VkOiBuZXcgU2V0KCkgfVxuICAgICAgfVxuXG4gICAgICBuZXdFeHBvcnRzLnNldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OLCBleHBvcnRBbGwpXG4gICAgICBuZXdFeHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgbmFtZXNwYWNlSW1wb3J0cylcbiAgICAgIGV4cG9ydExpc3Quc2V0KGZpbGUsIG5ld0V4cG9ydHMpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogb25seSB1c2VmdWwgZm9yIHRvb2xzIGxpa2UgdnNjb2RlLWVzbGludFxuICAgICAqXG4gICAgICogdXBkYXRlIGxpc3RzIG9mIGV4aXN0aW5nIGltcG9ydHMgZHVyaW5nIHJ1bnRpbWVcbiAgICAgKi9cbiAgICBjb25zdCB1cGRhdGVJbXBvcnRVc2FnZSA9IG5vZGUgPT4ge1xuICAgICAgaWYgKCF1bnVzZWRFeHBvcnRzKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBsZXQgb2xkSW1wb3J0UGF0aHMgPSBpbXBvcnRMaXN0LmdldChmaWxlKVxuICAgICAgaWYgKHR5cGVvZiBvbGRJbXBvcnRQYXRocyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgb2xkSW1wb3J0UGF0aHMgPSBuZXcgTWFwKClcbiAgICAgIH1cblxuICAgICAgY29uc3Qgb2xkTmFtZXNwYWNlSW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgY29uc3QgbmV3TmFtZXNwYWNlSW1wb3J0cyA9IG5ldyBTZXQoKVxuXG4gICAgICBjb25zdCBvbGRFeHBvcnRBbGwgPSBuZXcgU2V0KClcbiAgICAgIGNvbnN0IG5ld0V4cG9ydEFsbCA9IG5ldyBTZXQoKVxuXG4gICAgICBjb25zdCBvbGREZWZhdWx0SW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgY29uc3QgbmV3RGVmYXVsdEltcG9ydHMgPSBuZXcgU2V0KClcblxuICAgICAgY29uc3Qgb2xkSW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgY29uc3QgbmV3SW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgb2xkSW1wb3J0UGF0aHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUuaGFzKEVYUE9SVF9BTExfREVDTEFSQVRJT04pKSB7XG4gICAgICAgICAgb2xkRXhwb3J0QWxsLmFkZChrZXkpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhbHVlLmhhcyhJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUikpIHtcbiAgICAgICAgICBvbGROYW1lc3BhY2VJbXBvcnRzLmFkZChrZXkpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhbHVlLmhhcyhJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpKSB7XG4gICAgICAgICAgb2xkRGVmYXVsdEltcG9ydHMuYWRkKGtleSlcbiAgICAgICAgfVxuICAgICAgICB2YWx1ZS5mb3JFYWNoKHZhbCA9PiB7XG4gICAgICAgICAgaWYgKHZhbCAhPT0gSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIgJiZcbiAgICAgICAgICAgICAgdmFsICE9PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpIHtcbiAgICAgICAgICAgICAgIG9sZEltcG9ydHMuc2V0KHZhbCwga2V5KVxuICAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0pXG5cbiAgICAgIG5vZGUuYm9keS5mb3JFYWNoKGFzdE5vZGUgPT4ge1xuICAgICAgICBsZXQgcmVzb2x2ZWRQYXRoXG5cbiAgICAgICAgLy8gc3VwcG9ydCBmb3IgZXhwb3J0IHsgdmFsdWUgfSBmcm9tICdtb2R1bGUnXG4gICAgICAgIGlmIChhc3ROb2RlLnR5cGUgPT09IEVYUE9SVF9OQU1FRF9ERUNMQVJBVElPTikge1xuICAgICAgICAgIGlmIChhc3ROb2RlLnNvdXJjZSkge1xuICAgICAgICAgICAgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShhc3ROb2RlLnNvdXJjZS5yYXcucmVwbGFjZSgvKCd8XCIpL2csICcnKSwgY29udGV4dClcbiAgICAgICAgICAgIGFzdE5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKHNwZWNpZmllciA9PiB7XG4gICAgICAgICAgICAgIGxldCBuYW1lXG4gICAgICAgICAgICAgIGlmIChzcGVjaWZpZXIuZXhwb3J0ZWQubmFtZSA9PT0gREVGQVVMVCkge1xuICAgICAgICAgICAgICAgIG5hbWUgPSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBuYW1lID0gc3BlY2lmaWVyLmxvY2FsLm5hbWVcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBuZXdJbXBvcnRzLnNldChuYW1lLCByZXNvbHZlZFBhdGgpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhc3ROb2RlLnR5cGUgPT09IEVYUE9SVF9BTExfREVDTEFSQVRJT04pIHtcbiAgICAgICAgICByZXNvbHZlZFBhdGggPSByZXNvbHZlKGFzdE5vZGUuc291cmNlLnJhdy5yZXBsYWNlKC8oJ3xcIikvZywgJycpLCBjb250ZXh0KVxuICAgICAgICAgIG5ld0V4cG9ydEFsbC5hZGQocmVzb2x2ZWRQYXRoKVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFzdE5vZGUudHlwZSA9PT0gSU1QT1JUX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShhc3ROb2RlLnNvdXJjZS5yYXcucmVwbGFjZSgvKCd8XCIpL2csICcnKSwgY29udGV4dClcbiAgICAgICAgICBpZiAoIXJlc29sdmVkUGF0aCkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGlzTm9kZU1vZHVsZShyZXNvbHZlZFBhdGgpKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAobmV3TmFtZXNwYWNlSW1wb3J0RXhpc3RzKGFzdE5vZGUuc3BlY2lmaWVycykpIHtcbiAgICAgICAgICAgIG5ld05hbWVzcGFjZUltcG9ydHMuYWRkKHJlc29sdmVkUGF0aClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAobmV3RGVmYXVsdEltcG9ydEV4aXN0cyhhc3ROb2RlLnNwZWNpZmllcnMpKSB7XG4gICAgICAgICAgICBuZXdEZWZhdWx0SW1wb3J0cy5hZGQocmVzb2x2ZWRQYXRoKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGFzdE5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKHNwZWNpZmllciA9PiB7XG4gICAgICAgICAgICBpZiAoc3BlY2lmaWVyLnR5cGUgPT09IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiB8fFxuICAgICAgICAgICAgICAgIHNwZWNpZmllci50eXBlID09PSBJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUikge1xuICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG5ld0ltcG9ydHMuc2V0KHNwZWNpZmllci5pbXBvcnRlZC5uYW1lLCByZXNvbHZlZFBhdGgpXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgbmV3RXhwb3J0QWxsLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICBpZiAoIW9sZEV4cG9ydEFsbC5oYXModmFsdWUpKSB7XG4gICAgICAgICAgbGV0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBpbXBvcnRzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgaW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpbXBvcnRzLmFkZChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKVxuICAgICAgICAgIG9sZEltcG9ydFBhdGhzLnNldCh2YWx1ZSwgaW1wb3J0cylcblxuICAgICAgICAgIGxldCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgbGV0IGN1cnJlbnRFeHBvcnRcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhwb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgICAgICAgZXhwb3J0TGlzdC5zZXQodmFsdWUsIGV4cG9ydHMpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGZpbGUpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHdoZXJlVXNlZCA9IG5ldyBTZXQoKVxuICAgICAgICAgICAgd2hlcmVVc2VkLmFkZChmaWxlKVxuICAgICAgICAgICAgZXhwb3J0cy5zZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTiwgeyB3aGVyZVVzZWQgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIG9sZEV4cG9ydEFsbC5mb3JFYWNoKHZhbHVlID0+IHtcbiAgICAgICAgaWYgKCFuZXdFeHBvcnRBbGwuaGFzKHZhbHVlKSkge1xuICAgICAgICAgIGNvbnN0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpXG4gICAgICAgICAgaW1wb3J0cy5kZWxldGUoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSlcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcbiAgICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuZGVsZXRlKGZpbGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICBuZXdEZWZhdWx0SW1wb3J0cy5mb3JFYWNoKHZhbHVlID0+IHtcbiAgICAgICAgaWYgKCFvbGREZWZhdWx0SW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgbGV0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBpbXBvcnRzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgaW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpbXBvcnRzLmFkZChJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpXG4gICAgICAgICAgb2xkSW1wb3J0UGF0aHMuc2V0KHZhbHVlLCBpbXBvcnRzKVxuXG4gICAgICAgICAgbGV0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSlcbiAgICAgICAgICBsZXQgY3VycmVudEV4cG9ydFxuICAgICAgICAgIGlmICh0eXBlb2YgZXhwb3J0cyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQgPSBleHBvcnRzLmdldChJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGV4cG9ydHMgPSBuZXcgTWFwKClcbiAgICAgICAgICAgIGV4cG9ydExpc3Quc2V0KHZhbHVlLCBleHBvcnRzKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmFkZChmaWxlKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB3aGVyZVVzZWQgPSBuZXcgU2V0KClcbiAgICAgICAgICAgIHdoZXJlVXNlZC5hZGQoZmlsZSlcbiAgICAgICAgICAgIGV4cG9ydHMuc2V0KElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIG9sZERlZmF1bHRJbXBvcnRzLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICBpZiAoIW5ld0RlZmF1bHRJbXBvcnRzLmhhcyh2YWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKVxuICAgICAgICAgIGltcG9ydHMuZGVsZXRlKElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUilcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSlcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5kZWxldGUoZmlsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIG5ld05hbWVzcGFjZUltcG9ydHMuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgIGlmICghb2xkTmFtZXNwYWNlSW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgbGV0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBpbXBvcnRzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgaW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpbXBvcnRzLmFkZChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUilcbiAgICAgICAgICBvbGRJbXBvcnRQYXRocy5zZXQodmFsdWUsIGltcG9ydHMpXG5cbiAgICAgICAgICBsZXQgZXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KHZhbHVlKVxuICAgICAgICAgIGxldCBjdXJyZW50RXhwb3J0XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBleHBvcnRzID0gbmV3IE1hcCgpXG4gICAgICAgICAgICBleHBvcnRMaXN0LnNldCh2YWx1ZSwgZXhwb3J0cylcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5hZGQoZmlsZSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qgd2hlcmVVc2VkID0gbmV3IFNldCgpXG4gICAgICAgICAgICB3aGVyZVVzZWQuYWRkKGZpbGUpXG4gICAgICAgICAgICBleHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIG9sZE5hbWVzcGFjZUltcG9ydHMuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgIGlmICghbmV3TmFtZXNwYWNlSW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgY29uc3QgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSlcbiAgICAgICAgICBpbXBvcnRzLmRlbGV0ZShJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUilcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSlcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG4gICAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmRlbGV0ZShmaWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgbmV3SW1wb3J0cy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmICghb2xkSW1wb3J0cy5oYXMoa2V5KSkge1xuICAgICAgICAgIGxldCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKVxuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KClcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1wb3J0cy5hZGQoa2V5KVxuICAgICAgICAgIG9sZEltcG9ydFBhdGhzLnNldCh2YWx1ZSwgaW1wb3J0cylcblxuICAgICAgICAgIGxldCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgbGV0IGN1cnJlbnRFeHBvcnRcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoa2V5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBleHBvcnRzID0gbmV3IE1hcCgpXG4gICAgICAgICAgICBleHBvcnRMaXN0LnNldCh2YWx1ZSwgZXhwb3J0cylcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5hZGQoZmlsZSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qgd2hlcmVVc2VkID0gbmV3IFNldCgpXG4gICAgICAgICAgICB3aGVyZVVzZWQuYWRkKGZpbGUpXG4gICAgICAgICAgICBleHBvcnRzLnNldChrZXksIHsgd2hlcmVVc2VkIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICBvbGRJbXBvcnRzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKCFuZXdJbXBvcnRzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgY29uc3QgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSlcbiAgICAgICAgICBpbXBvcnRzLmRlbGV0ZShrZXkpXG5cbiAgICAgICAgICBjb25zdCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KGtleSlcbiAgICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuZGVsZXRlKGZpbGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnUHJvZ3JhbTpleGl0Jzogbm9kZSA9PiB7XG4gICAgICAgIHVwZGF0ZUV4cG9ydFVzYWdlKG5vZGUpXG4gICAgICAgIHVwZGF0ZUltcG9ydFVzYWdlKG5vZGUpXG4gICAgICAgIGNoZWNrRXhwb3J0UHJlc2VuY2Uobm9kZSlcbiAgICAgIH0sXG4gICAgICAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJzogbm9kZSA9PiB7XG4gICAgICAgIGNoZWNrVXNhZ2Uobm9kZSwgSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKVxuICAgICAgfSxcbiAgICAgICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJzogbm9kZSA9PiB7XG4gICAgICAgIG5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKHNwZWNpZmllciA9PiB7XG4gICAgICAgICAgICBjaGVja1VzYWdlKG5vZGUsIHNwZWNpZmllci5leHBvcnRlZC5uYW1lKVxuICAgICAgICB9KVxuICAgICAgICBpZiAobm9kZS5kZWNsYXJhdGlvbikge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG5vZGUuZGVjbGFyYXRpb24udHlwZSA9PT0gRlVOQ1RJT05fREVDTEFSQVRJT04gfHxcbiAgICAgICAgICAgIG5vZGUuZGVjbGFyYXRpb24udHlwZSA9PT0gQ0xBU1NfREVDTEFSQVRJT04gfHxcbiAgICAgICAgICAgIG5vZGUuZGVjbGFyYXRpb24udHlwZSA9PT0gVFlQRV9BTElBU1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgY2hlY2tVc2FnZShub2RlLCBub2RlLmRlY2xhcmF0aW9uLmlkLm5hbWUpXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uLnR5cGUgPT09IFZBUklBQkxFX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgICBub2RlLmRlY2xhcmF0aW9uLmRlY2xhcmF0aW9ucy5mb3JFYWNoKGRlY2xhcmF0aW9uID0+IHtcbiAgICAgICAgICAgICAgY2hlY2tVc2FnZShub2RlLCBkZWNsYXJhdGlvbi5pZC5uYW1lKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + forEachDeclarationIdentifier(node.declaration, name => { + checkUsage(node, name); + }); + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bnVzZWQtbW9kdWxlcy5qcyJdLCJuYW1lcyI6WyJsaXN0RmlsZXNUb1Byb2Nlc3MiLCJGaWxlRW51bWVyYXRvciIsInJlcXVpcmUiLCJzcmMiLCJleHRlbnNpb25zIiwiZSIsIkFycmF5IiwiZnJvbSIsIml0ZXJhdGVGaWxlcyIsImZpbGVQYXRoIiwiaWdub3JlZCIsImZpbGVuYW1lIiwiZTEiLCJvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyIsImUyIiwicGF0dGVybnMiLCJyZWR1Y2UiLCJjYXJyeSIsInBhdHRlcm4iLCJjb25jYXQiLCJtYXAiLCJleHRlbnNpb24iLCJ0ZXN0Iiwic2xpY2UiLCJFWFBPUlRfREVGQVVMVF9ERUNMQVJBVElPTiIsIkVYUE9SVF9OQU1FRF9ERUNMQVJBVElPTiIsIkVYUE9SVF9BTExfREVDTEFSQVRJT04iLCJJTVBPUlRfREVDTEFSQVRJT04iLCJJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiIsIklNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiIsIlZBUklBQkxFX0RFQ0xBUkFUSU9OIiwiRlVOQ1RJT05fREVDTEFSQVRJT04iLCJDTEFTU19ERUNMQVJBVElPTiIsIklOVEVSRkFDRV9ERUNMQVJBVElPTiIsIlRZUEVfQUxJQVMiLCJUU19JTlRFUkZBQ0VfREVDTEFSQVRJT04iLCJUU19UWVBFX0FMSUFTX0RFQ0xBUkFUSU9OIiwiVFNfRU5VTV9ERUNMQVJBVElPTiIsIkRFRkFVTFQiLCJmb3JFYWNoRGVjbGFyYXRpb25JZGVudGlmaWVyIiwiZGVjbGFyYXRpb24iLCJjYiIsInR5cGUiLCJpZCIsIm5hbWUiLCJkZWNsYXJhdGlvbnMiLCJmb3JFYWNoIiwiaW1wb3J0TGlzdCIsIk1hcCIsImV4cG9ydExpc3QiLCJpZ25vcmVkRmlsZXMiLCJTZXQiLCJmaWxlc091dHNpZGVTcmMiLCJpc05vZGVNb2R1bGUiLCJwYXRoIiwicmVzb2x2ZUZpbGVzIiwiaWdub3JlRXhwb3J0cyIsImNvbnRleHQiLCJzZXR0aW5ncyIsInNyY0ZpbGVzIiwic3JjRmlsZUxpc3QiLCJpZ25vcmVkRmlsZXNMaXN0IiwiYWRkIiwiZmlsdGVyIiwicHJlcGFyZUltcG9ydHNBbmRFeHBvcnRzIiwiZXhwb3J0QWxsIiwiZmlsZSIsImV4cG9ydHMiLCJpbXBvcnRzIiwiY3VycmVudEV4cG9ydHMiLCJFeHBvcnRzIiwiZ2V0IiwiZGVwZW5kZW5jaWVzIiwicmVleHBvcnRzIiwibG9jYWxJbXBvcnRMaXN0IiwibmFtZXNwYWNlIiwiY3VycmVudEV4cG9ydEFsbCIsImdldERlcGVuZGVuY3kiLCJkZXBlbmRlbmN5Iiwic2V0IiwidmFsdWUiLCJrZXkiLCJ3aGVyZVVzZWQiLCJyZWV4cG9ydCIsImdldEltcG9ydCIsImxvY2FsSW1wb3J0IiwiY3VycmVudFZhbHVlIiwibG9jYWwiLCJpbXBvcnRlZFNwZWNpZmllcnMiLCJoYXMiLCJ2YWwiLCJjdXJyZW50RXhwb3J0IiwiZGV0ZXJtaW5lVXNhZ2UiLCJsaXN0VmFsdWUiLCJsaXN0S2V5IiwiY3VycmVudEltcG9ydCIsInNwZWNpZmllciIsImV4cG9ydFN0YXRlbWVudCIsImdldFNyYyIsInByb2Nlc3MiLCJjd2QiLCJsYXN0UHJlcGFyZUtleSIsImRvUHJlcGFyYXRpb24iLCJwcmVwYXJlS2V5IiwiSlNPTiIsInN0cmluZ2lmeSIsInNvcnQiLCJjbGVhciIsIm5ld05hbWVzcGFjZUltcG9ydEV4aXN0cyIsInNwZWNpZmllcnMiLCJzb21lIiwibmV3RGVmYXVsdEltcG9ydEV4aXN0cyIsImZpbGVJc0luUGtnIiwicmVhZFBrZ1VwIiwic3luYyIsIm5vcm1hbGl6ZSIsInBrZyIsImJhc2VQYXRoIiwiY2hlY2tQa2dGaWVsZFN0cmluZyIsInBrZ0ZpZWxkIiwiY2hlY2tQa2dGaWVsZE9iamVjdCIsInBrZ0ZpZWxkRmlsZXMiLCJjaGVja1BrZ0ZpZWxkIiwicHJpdmF0ZSIsImJpbiIsImJyb3dzZXIiLCJtYWluIiwibW9kdWxlIiwibWV0YSIsImRvY3MiLCJ1cmwiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiZGVzY3JpcHRpb24iLCJtaW5JdGVtcyIsIml0ZW1zIiwibWluTGVuZ3RoIiwibWlzc2luZ0V4cG9ydHMiLCJ1bnVzZWRFeHBvcnRzIiwibm90IiwiZW51bSIsImFueU9mIiwicmVxdWlyZWQiLCJjcmVhdGUiLCJvcHRpb25zIiwiZ2V0RmlsZW5hbWUiLCJjaGVja0V4cG9ydFByZXNlbmNlIiwibm9kZSIsImV4cG9ydENvdW50IiwibmFtZXNwYWNlSW1wb3J0cyIsImRlbGV0ZSIsInNpemUiLCJyZXBvcnQiLCJib2R5IiwiY2hlY2tVc2FnZSIsImV4cG9ydGVkVmFsdWUiLCJleHBvcnRzS2V5IiwidXBkYXRlRXhwb3J0VXNhZ2UiLCJuZXdFeHBvcnRzIiwibmV3RXhwb3J0SWRlbnRpZmllcnMiLCJsZW5ndGgiLCJleHBvcnRlZCIsInVwZGF0ZUltcG9ydFVzYWdlIiwib2xkSW1wb3J0UGF0aHMiLCJvbGROYW1lc3BhY2VJbXBvcnRzIiwibmV3TmFtZXNwYWNlSW1wb3J0cyIsIm9sZEV4cG9ydEFsbCIsIm5ld0V4cG9ydEFsbCIsIm9sZERlZmF1bHRJbXBvcnRzIiwibmV3RGVmYXVsdEltcG9ydHMiLCJvbGRJbXBvcnRzIiwibmV3SW1wb3J0cyIsImFzdE5vZGUiLCJyZXNvbHZlZFBhdGgiLCJzb3VyY2UiLCJyYXciLCJyZXBsYWNlIiwiaW1wb3J0ZWQiXSwibWFwcGluZ3MiOiI7Ozs7OztBQU1BLHlDO0FBQ0E7QUFDQSxzRDtBQUNBLHFDO0FBQ0E7QUFDQSx3QztBQUNBLHVDO0FBQ0EsK0MsbVZBYkE7Ozs7c1lBZUE7QUFDQTtBQUNBLElBQUlBLGtCQUFKLENBQ0EsSUFBSSxDQUNGLE1BQU1DLGlCQUFpQkMsUUFBUSx1Q0FBUixFQUFpREQsY0FBeEU7QUFDQUQsdUJBQXFCLFVBQVVHLEdBQVYsRUFBZUMsVUFBZixFQUEyQjtBQUM5QyxVQUFNQyxJQUFJLElBQUlKLGNBQUosQ0FBbUI7QUFDM0JHLGtCQUFZQSxVQURlLEVBQW5CLENBQVY7O0FBR0EsV0FBT0UsTUFBTUMsSUFBTixD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cEYsSUFBL0I7QUFDRDtBQUNGO0FBQ0Y7QUFDRixPQWJEO0FBY0QsS0FyUUQ7O0FBdVFBLFdBQU87QUFDTCxzQkFBZ0JpRixRQUFRO0FBQ3RCVSwwQkFBa0JWLElBQWxCO0FBQ0FlLDBCQUFrQmYsSUFBbEI7QUFDQUQsNEJBQW9CQyxJQUFwQjtBQUNELE9BTEk7QUFNTCxrQ0FBNEJBLFFBQVE7QUFDbENPLG1CQUFXUCxJQUFYLEVBQWlCdEgsd0JBQWpCO0FBQ0QsT0FSSTtBQVNMLGdDQUEwQnNILFFBQVE7QUFDaENBLGFBQUt0QyxVQUFMLENBQWdCL0QsT0FBaEIsQ0FBd0JrRCxhQUFhO0FBQ2pDMEQscUJBQVdQLElBQVgsRUFBaUJuRCxVQUFVaUUsUUFBVixDQUFtQnJILElBQXBDO0FBQ0gsU0FGRDtBQUdBTCxxQ0FBNkI0RyxLQUFLM0csV0FBbEMsRUFBZ0RJLElBQUQsSUFBVTtBQUN2RDhHLHFCQUFXUCxJQUFYLEVBQWlCdkcsSUFBakI7QUFDRCxTQUZEO0FBR0QsT0FoQkksRUFBUDs7QUFrQkQsR0E1Z0JjLEVBQWpCIiwiZmlsZSI6Im5vLXVudXNlZC1tb2R1bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZU92ZXJ2aWV3IEVuc3VyZXMgdGhhdCBtb2R1bGVzIGNvbnRhaW4gZXhwb3J0cyBhbmQvb3IgYWxsXG4gKiBtb2R1bGVzIGFyZSBjb25zdW1lZCB3aXRoaW4gb3RoZXIgbW9kdWxlcy5cbiAqIEBhdXRob3IgUmVuw6kgRmVybWFublxuICovXG5cbmltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCdcbmltcG9ydCB7IGdldEZpbGVFeHRlbnNpb25zIH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9pZ25vcmUnXG5pbXBvcnQgcmVzb2x2ZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3Jlc29sdmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiB9IGZyb20gJ3BhdGgnXG5pbXBvcnQgcmVhZFBrZ1VwIGZyb20gJ3JlYWQtcGtnLXVwJ1xuaW1wb3J0IHZhbHVlcyBmcm9tICdvYmplY3QudmFsdWVzJ1xuaW1wb3J0IGluY2x1ZGVzIGZyb20gJ2FycmF5LWluY2x1ZGVzJ1xuXG4vLyBlc2xpbnQvbGliL3V0aWwvZ2xvYi11dGlsIGhhcyBiZWVuIG1vdmVkIHRvIGVzbGludC9saWIvdXRpbC9nbG9iLXV0aWxzIHdpdGggdmVyc2lvbiA1LjNcbi8vIGFuZCBoYXMgYmVlbiBtb3ZlZCB0byBlc2xpbnQvbGliL2NsaS1lbmdpbmUvZmlsZS1lbnVtZXJhdG9yIGluIHZlcnNpb24gNlxubGV0IGxpc3RGaWxlc1RvUHJvY2Vzc1xudHJ5IHtcbiAgY29uc3QgRmlsZUVudW1lcmF0b3IgPSByZXF1aXJlKCdlc2xpbnQvbGliL2NsaS1lbmdpbmUvZmlsZS1lbnVtZXJhdG9yJykuRmlsZUVudW1lcmF0b3JcbiAgbGlzdEZpbGVzVG9Qcm9jZXNzID0gZnVuY3Rpb24gKHNyYywgZXh0ZW5zaW9ucykge1xuICAgIGNvbnN0IGUgPSBuZXcgRmlsZUVudW1lcmF0b3Ioe1xuICAgICAgZXh0ZW5zaW9uczogZXh0ZW5zaW9ucyxcbiAgICB9KVxuICAgIHJldHVybiBBcnJheS5mcm9tKGUuaXRlcmF0ZUZpbGVzKHNyYyksICh7IGZpbGVQYXRoLCBpZ25vcmVkIH0pID0+ICh7XG4gICAgICBpZ25vcmVkLFxuICAgICAgZmlsZW5hbWU6IGZpbGVQYXRoLFxuICAgIH0pKVxuICB9XG59IGNhdGNoIChlMSkge1xuICAvLyBQcmV2ZW50IHBhc3NpbmcgaW52YWxpZCBvcHRpb25zIChleHRlbnNpb25zIGFycmF5KSB0byBvbGQgdmVyc2lvbnMgb2YgdGhlIGZ1bmN0aW9uLlxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZXNsaW50L2VzbGludC9ibG9iL3Y1LjE2LjAvbGliL3V0aWwvZ2xvYi11dGlscy5qcyNMMTc4LUwyODBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2VzbGludC9lc2xpbnQvYmxvYi92NS4yLjAvbGliL3V0aWwvZ2xvYi11dGlsLmpzI0wxNzQtTDI2OVxuICBsZXQgb3JpZ2luYWxMaXN0RmlsZXNUb1Byb2Nlc3NcbiAgdHJ5IHtcbiAgICBvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyA9IHJlcXVpcmUoJ2VzbGludC9saWIvdXRpbC9nbG9iLXV0aWxzJykubGlzdEZpbGVzVG9Qcm9jZXNzXG4gICAgbGlzdEZpbGVzVG9Qcm9jZXNzID0gZnVuY3Rpb24gKHNyYywgZXh0ZW5zaW9ucykge1xuICAgICAgcmV0dXJuIG9yaWdpbmFsTGlzdEZpbGVzVG9Qcm9jZXNzKHNyYywge1xuICAgICAgICBleHRlbnNpb25zOiBleHRlbnNpb25zLFxuICAgICAgfSlcbiAgICB9XG4gIH0gY2F0Y2ggKGUyKSB7XG4gICAgb3JpZ2luYWxMaXN0RmlsZXNUb1Byb2Nlc3MgPSByZXF1aXJlKCdlc2xpbnQvbGliL3V0aWwvZ2xvYi11dGlsJykubGlzdEZpbGVzVG9Qcm9jZXNzXG5cbiAgICBsaXN0RmlsZXNUb1Byb2Nlc3MgPSBmdW5jdGlvbiAoc3JjLCBleHRlbnNpb25zKSB7XG4gICAgICBjb25zdCBwYXR0ZXJucyA9IHNyYy5yZWR1Y2UoKGNhcnJ5LCBwYXR0ZXJuKSA9PiB7XG4gICAgICAgIHJldHVybiBjYXJyeS5jb25jYXQoZXh0ZW5zaW9ucy5tYXAoKGV4dGVuc2lvbikgPT4ge1xuICAgICAgICAgIHJldHVybiAvXFwqXFwqfFxcKlxcLi8udGVzdChwYXR0ZXJuKSA/IHBhdHRlcm4gOiBgJHtwYXR0ZXJufS8qKi8qJHtleHRlbnNpb259YFxuICAgICAgICB9KSlcbiAgICAgIH0sIHNyYy5zbGljZSgpKVxuXG4gICAgICByZXR1cm4gb3JpZ2luYWxMaXN0RmlsZXNUb1Byb2Nlc3MocGF0dGVybnMpXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IEVYUE9SVF9ERUZBVUxUX0RFQ0xBUkFUSU9OID0gJ0V4cG9ydERlZmF1bHREZWNsYXJhdGlvbidcbmNvbnN0IEVYUE9SVF9OQU1FRF9ERUNMQVJBVElPTiA9ICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJ1xuY29uc3QgRVhQT1JUX0FMTF9ERUNMQVJBVElPTiA9ICdFeHBvcnRBbGxEZWNsYXJhdGlvbidcbmNvbnN0IElNUE9SVF9ERUNMQVJBVElPTiA9ICdJbXBvcnREZWNsYXJhdGlvbidcbmNvbnN0IElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSID0gJ0ltcG9ydE5hbWVzcGFjZVNwZWNpZmllcidcbmNvbnN0IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiA9ICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJ1xuY29uc3QgVkFSSUFCTEVfREVDTEFSQVRJT04gPSAnVmFyaWFibGVEZWNsYXJhdGlvbidcbmNvbnN0IEZVTkNUSU9OX0RFQ0xBUkFUSU9OID0gJ0Z1bmN0aW9uRGVjbGFyYXRpb24nXG5jb25zdCBDTEFTU19ERUNMQVJBVElPTiA9ICdDbGFzc0RlY2xhcmF0aW9uJ1xuY29uc3QgSU5URVJGQUNFX0RFQ0xBUkFUSU9OID0gJ0ludGVyZmFjZURlY2xhcmF0aW9uJ1xuY29uc3QgVFlQRV9BTElBUyA9ICdUeXBlQWxpYXMnXG5jb25zdCBUU19JTlRFUkZBQ0VfREVDTEFSQVRJT04gPSAnVFNJbnRlcmZhY2VEZWNsYXJhdGlvbidcbmNvbnN0IFRTX1RZUEVfQUxJQVNfREVDTEFSQVRJT04gPSAnVFNUeXBlQWxpYXNEZWNsYXJhdGlvbidcbmNvbnN0IFRTX0VOVU1fREVDTEFSQVRJT04gPSAnVFNFbnVtRGVjbGFyYXRpb24nXG5jb25zdCBERUZBVUxUID0gJ2RlZmF1bHQnXG5cbmZ1bmN0aW9uIGZvckVhY2hEZWNsYXJhdGlvbklkZW50aWZpZXIoZGVjbGFyYXRpb24sIGNiKSB7XG4gIGlmIChkZWNsYXJhdGlvbikge1xuICAgIGlmIChcbiAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IEZVTkNUSU9OX0RFQ0xBUkFUSU9OIHx8XG4gICAgICBkZWNsYXJhdGlvbi50eXBlID09PSBDTEFTU19ERUNMQVJBVElPTiB8fFxuICAgICAgZGVjbGFyYXRpb24udHlwZSA9PT0gSU5URVJGQUNFX0RFQ0xBUkFUSU9OIHx8XG4gICAgICBkZWNsYXJhdGlvbi50eXBlID09PSBUWVBFX0FMSUFTIHx8XG4gICAgICBkZWNsYXJhdGlvbi50eXBlID09PSBUU19JTlRFUkZBQ0VfREVDTEFSQVRJT04gfHxcbiAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IFRTX1RZUEVfQUxJQVNfREVDTEFSQVRJT04gfHxcbiAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IFRTX0VOVU1fREVDTEFSQVRJT05cbiAgICApIHtcbiAgICAgIGNiKGRlY2xhcmF0aW9uLmlkLm5hbWUpXG4gICAgfSBlbHNlIGlmIChkZWNsYXJhdGlvbi50eXBlID09PSBWQVJJQUJMRV9ERUNMQVJBVElPTikge1xuICAgICAgZGVjbGFyYXRpb24uZGVjbGFyYXRpb25zLmZvckVhY2goKHsgaWQgfSkgPT4ge1xuICAgICAgICBjYihpZC5uYW1lKVxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBMaXN0IG9mIGltcG9ydHMgcGVyIGZpbGUuXG4gKlxuICogUmVwcmVzZW50ZWQgYnkgYSB0d28tbGV2ZWwgTWFwIHRvIGEgU2V0IG9mIGlkZW50aWZpZXJzLiBUaGUgdXBwZXItbGV2ZWwgTWFwXG4gKiBrZXlzIGFyZSB0aGUgcGF0aHMgdG8gdGhlIG1vZHVsZXMgY29udGFpbmluZyB0aGUgaW1wb3J0cywgd2hpbGUgdGhlXG4gKiBsb3dlci1sZXZlbCBNYXAga2V5cyBhcmUgdGhlIHBhdGhzIHRvIHRoZSBmaWxlcyB3aGljaCBhcmUgYmVpbmcgaW1wb3J0ZWRcbiAqIGZyb20uIExhc3RseSwgdGhlIFNldCBvZiBpZGVudGlmaWVycyBjb250YWlucyBlaXRoZXIgbmFtZXMgYmVpbmcgaW1wb3J0ZWRcbiAqIG9yIGEgc3BlY2lhbCBBU1Qgbm9kZSBuYW1lIGxpc3RlZCBhYm92ZSAoZS5nIEltcG9ydERlZmF1bHRTcGVjaWZpZXIpLlxuICpcbiAqIEZvciBleGFtcGxlLCBpZiB3ZSBoYXZlIGEgZmlsZSBuYW1lZCBmb28uanMgY29udGFpbmluZzpcbiAqXG4gKiAgIGltcG9ydCB7IG8yIH0gZnJvbSAnLi9iYXIuanMnO1xuICpcbiAqIFRoZW4gd2Ugd2lsbCBoYXZlIGEgc3RydWN0dXJlIHRoYXQgbG9va3MgbGlrZTpcbiAqXG4gKiAgIE1hcCB7ICdmb28uanMnID0+IE1hcCB7ICdiYXIuanMnID0+IFNldCB7ICdvMicgfSB9IH1cbiAqXG4gKiBAdHlwZSB7TWFwPHN0cmluZywgTWFwPHN0cmluZywgU2V0PHN0cmluZz4+Pn1cbiAqL1xuY29uc3QgaW1wb3J0TGlzdCA9IG5ldyBNYXAoKVxuXG4vKipcbiAqIExpc3Qgb2YgZXhwb3J0cyBwZXIgZmlsZS5cbiAqXG4gKiBSZXByZXNlbnRlZCBieSBhIHR3by1sZXZlbCBNYXAgdG8gYW4gb2JqZWN0IG9mIG1ldGFkYXRhLiBUaGUgdXBwZXItbGV2ZWwgTWFwXG4gKiBrZXlzIGFyZSB0aGUgcGF0aHMgdG8gdGhlIG1vZHVsZXMgY29udGFpbmluZyB0aGUgZXhwb3J0cywgd2hpbGUgdGhlXG4gKiBsb3dlci1sZXZlbCBNYXAga2V5cyBhcmUgdGhlIHNwZWNpZmljIGlkZW50aWZpZXJzIG9yIHNwZWNpYWwgQVNUIG5vZGUgbmFtZXNcbiAqIGJlaW5nIGV4cG9ydGVkLiBUaGUgbGVhZi1sZXZlbCBtZXRhZGF0YSBvYmplY3QgYXQgdGhlIG1vbWVudCBvbmx5IGNvbnRhaW5zIGFcbiAqIGB3aGVyZVVzZWRgIHByb3BvZXJ0eSwgd2hpY2ggY29udGFpbnMgYSBTZXQgb2YgcGF0aHMgdG8gbW9kdWxlcyB0aGF0IGltcG9ydFxuICogdGhlIG5hbWUuXG4gKlxuICogRm9yIGV4YW1wbGUsIGlmIHdlIGhhdmUgYSBmaWxlIG5hbWVkIGJhci5qcyBjb250YWluaW5nIHRoZSBmb2xsb3dpbmcgZXhwb3J0czpcbiAqXG4gKiAgIGNvbnN0IG8yID0gJ2Jhcic7XG4gKiAgIGV4cG9ydCB7IG8yIH07XG4gKlxuICogQW5kIGEgZmlsZSBuYW1lZCBmb28uanMgY29udGFpbmluZyB0aGUgZm9sbG93aW5nIGltcG9ydDpcbiAqXG4gKiAgIGltcG9ydCB7IG8yIH0gZnJvbSAnLi9iYXIuanMnO1xuICpcbiAqIFRoZW4gd2Ugd2lsbCBoYXZlIGEgc3RydWN0dXJlIHRoYXQgbG9va3MgbGlrZTpcbiAqXG4gKiAgIE1hcCB7ICdiYXIuanMnID0+IE1hcCB7ICdvMicgPT4geyB3aGVyZVVzZWQ6IFNldCB7ICdmb28uanMnIH0gfSB9IH1cbiAqXG4gKiBAdHlwZSB7TWFwPHN0cmluZywgTWFwPHN0cmluZywgb2JqZWN0Pj59XG4gKi9cbmNvbnN0IGV4cG9ydExpc3QgPSBuZXcgTWFwKClcblxuY29uc3QgaWdub3JlZEZpbGVzID0gbmV3IFNldCgpXG5jb25zdCBmaWxlc091dHNpZGVTcmMgPSBuZXcgU2V0KClcblxuY29uc3QgaXNOb2RlTW9kdWxlID0gcGF0aCA9PiB7XG4gIHJldHVybiAvXFwvKG5vZGVfbW9kdWxlcylcXC8vLnRlc3QocGF0aClcbn1cblxuLyoqXG4gKiByZWFkIGFsbCBmaWxlcyBtYXRjaGluZyB0aGUgcGF0dGVybnMgaW4gc3JjIGFuZCBpZ25vcmVFeHBvcnRzXG4gKlxuICogcmV0dXJuIGFsbCBmaWxlcyBtYXRjaGluZyBzcmMgcGF0dGVybiwgd2hpY2ggYXJlIG5vdCBtYXRjaGluZyB0aGUgaWdub3JlRXhwb3J0cyBwYXR0ZXJuXG4gKi9cbmNvbnN0IHJlc29sdmVGaWxlcyA9IChzcmMsIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpID0+IHtcbiAgY29uc3QgZXh0ZW5zaW9ucyA9IEFycmF5LmZyb20oZ2V0RmlsZUV4dGVuc2lvbnMoY29udGV4dC5zZXR0aW5ncykpXG5cbiAgY29uc3Qgc3JjRmlsZXMgPSBuZXcgU2V0KClcbiAgY29uc3Qgc3JjRmlsZUxpc3QgPSBsaXN0RmlsZXNUb1Byb2Nlc3Moc3JjLCBleHRlbnNpb25zKVxuXG4gIC8vIHByZXBhcmUgbGlzdCBvZiBpZ25vcmVkIGZpbGVzXG4gIGNvbnN0IGlnbm9yZWRGaWxlc0xpc3QgPSAgbGlzdEZpbGVzVG9Qcm9jZXNzKGlnbm9yZUV4cG9ydHMsIGV4dGVuc2lvbnMpXG4gIGlnbm9yZWRGaWxlc0xpc3QuZm9yRWFjaCgoeyBmaWxlbmFtZSB9KSA9PiBpZ25vcmVkRmlsZXMuYWRkKGZpbGVuYW1lKSlcblxuICAvLyBwcmVwYXJlIGxpc3Qgb2Ygc291cmNlIGZpbGVzLCBkb24ndCBjb25zaWRlciBmaWxlcyBmcm9tIG5vZGVfbW9kdWxlc1xuICBzcmNGaWxlTGlzdC5maWx0ZXIoKHsgZmlsZW5hbWUgfSkgPT4gIWlzTm9kZU1vZHVsZShmaWxlbmFtZSkpLmZvckVhY2goKHsgZmlsZW5hbWUgfSkgPT4ge1xuICAgIHNyY0ZpbGVzLmFkZChmaWxlbmFtZSlcbiAgfSlcbiAgcmV0dXJuIHNyY0ZpbGVzXG59XG5cbi8qKlxuICogcGFyc2UgYWxsIHNvdXJjZSBmaWxlcyBhbmQgYnVpbGQgdXAgMiBtYXBzIGNvbnRhaW5pbmcgdGhlIGV4aXN0aW5nIGltcG9ydHMgYW5kIGV4cG9ydHNcbiAqL1xuY29uc3QgcHJlcGFyZUltcG9ydHNBbmRFeHBvcnRzID0gKHNyY0ZpbGVzLCBjb250ZXh0KSA9PiB7XG4gIGNvbnN0IGV4cG9ydEFsbCA9IG5ldyBNYXAoKVxuICBzcmNGaWxlcy5mb3JFYWNoKGZpbGUgPT4ge1xuICAgIGNvbnN0IGV4cG9ydHMgPSBuZXcgTWFwKClcbiAgICBjb25zdCBpbXBvcnRzID0gbmV3IE1hcCgpXG4gICAgY29uc3QgY3VycmVudEV4cG9ydHMgPSBFeHBvcnRzLmdldChmaWxlLCBjb250ZXh0KVxuICAgIGlmIChjdXJyZW50RXhwb3J0cykge1xuICAgICAgY29uc3QgeyBkZXBlbmRlbmNpZXMsIHJlZXhwb3J0cywgaW1wb3J0czogbG9jYWxJbXBvcnRMaXN0LCBuYW1lc3BhY2UgIH0gPSBjdXJyZW50RXhwb3J0c1xuXG4gICAgICAvLyBkZXBlbmRlbmNpZXMgPT09IGV4cG9ydCAqIGZyb21cbiAgICAgIGNvbnN0IGN1cnJlbnRFeHBvcnRBbGwgPSBuZXcgU2V0KClcbiAgICAgIGRlcGVuZGVuY2llcy5mb3JFYWNoKGdldERlcGVuZGVuY3kgPT4ge1xuICAgICAgICBjb25zdCBkZXBlbmRlbmN5ID0gZ2V0RGVwZW5kZW5jeSgpXG4gICAgICAgIGlmIChkZXBlbmRlbmN5ID09PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjdXJyZW50RXhwb3J0QWxsLmFkZChkZXBlbmRlbmN5LnBhdGgpXG4gICAgICB9KVxuICAgICAgZXhwb3J0QWxsLnNldChmaWxlLCBjdXJyZW50RXhwb3J0QWxsKVxuXG4gICAgICByZWV4cG9ydHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoa2V5ID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSLCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVleHBvcnQgPSAgdmFsdWUuZ2V0SW1wb3J0KClcbiAgICAgICAgaWYgKCFyZWV4cG9ydCkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIGxldCBsb2NhbEltcG9ydCA9IGltcG9ydHMuZ2V0KHJlZXhwb3J0LnBhdGgpXG4gICAgICAgIGxldCBjdXJyZW50VmFsdWVcbiAgICAgICAgaWYgKHZhbHVlLmxvY2FsID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgY3VycmVudFZhbHVlID0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY3VycmVudFZhbHVlID0gdmFsdWUubG9jYWxcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGxvY2FsSW1wb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIGxvY2FsSW1wb3J0ID0gbmV3IFNldChbLi4ubG9jYWxJbXBvcnQsIGN1cnJlbnRWYWx1ZV0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9jYWxJbXBvcnQgPSBuZXcgU2V0KFtjdXJyZW50VmFsdWVdKVxuICAgICAgICB9XG4gICAgICAgIGltcG9ydHMuc2V0KHJlZXhwb3J0LnBhdGgsIGxvY2FsSW1wb3J0KVxuICAgICAgfSlcblxuICAgICAgbG9jYWxJbXBvcnRMaXN0LmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKGlzTm9kZU1vZHVsZShrZXkpKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgbGV0IGxvY2FsSW1wb3J0ID0gaW1wb3J0cy5nZXQoa2V5KVxuICAgICAgICBpZiAodHlwZW9mIGxvY2FsSW1wb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIGxvY2FsSW1wb3J0ID0gbmV3IFNldChbLi4ubG9jYWxJbXBvcnQsIC4uLnZhbHVlLmltcG9ydGVkU3BlY2lmaWVyc10pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9jYWxJbXBvcnQgPSB2YWx1ZS5pbXBvcnRlZFNwZWNpZmllcnNcbiAgICAgICAgfVxuICAgICAgICBpbXBvcnRzLnNldChrZXksIGxvY2FsSW1wb3J0KVxuICAgICAgfSlcbiAgICAgIGltcG9ydExpc3Quc2V0KGZpbGUsIGltcG9ydHMpXG5cbiAgICAgIC8vIGJ1aWxkIHVwIGV4cG9ydCBsaXN0IG9ubHksIGlmIGZpbGUgaXMgbm90IGlnbm9yZWRcbiAgICAgIGlmIChpZ25vcmVkRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgbmFtZXNwYWNlLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKGtleSA9PT0gREVGQVVMVCkge1xuICAgICAgICAgIGV4cG9ydHMuc2V0KElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGV4cG9ydHMuc2V0KGtleSwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgICBleHBvcnRzLnNldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OLCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgZXhwb3J0cy5zZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIsIHsgd2hlcmVVc2VkOiBuZXcgU2V0KCkgfSlcbiAgICBleHBvcnRMaXN0LnNldChmaWxlLCBleHBvcnRzKVxuICB9KVxuICBleHBvcnRBbGwuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgIHZhbHVlLmZvckVhY2godmFsID0+IHtcbiAgICAgIGNvbnN0IGN1cnJlbnRFeHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsKVxuICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGN1cnJlbnRFeHBvcnRzLmdldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKVxuICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGtleSlcbiAgICB9KVxuICB9KVxufVxuXG4vKipcbiAqIHRyYXZlcnNlIHRocm91Z2ggYWxsIGltcG9ydHMgYW5kIGFkZCB0aGUgcmVzcGVjdGl2ZSBwYXRoIHRvIHRoZSB3aGVyZVVzZWQtbGlzdFxuICogb2YgdGhlIGNvcnJlc3BvbmRpbmcgZXhwb3J0XG4gKi9cbmNvbnN0IGRldGVybWluZVVzYWdlID0gKCkgPT4ge1xuICBpbXBvcnRMaXN0LmZvckVhY2goKGxpc3RWYWx1ZSwgbGlzdEtleSkgPT4ge1xuICAgIGxpc3RWYWx1ZS5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICBjb25zdCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQoa2V5KVxuICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICB2YWx1ZS5mb3JFYWNoKGN1cnJlbnRJbXBvcnQgPT4ge1xuICAgICAgICAgIGxldCBzcGVjaWZpZXJcbiAgICAgICAgICBpZiAoY3VycmVudEltcG9ydCA9PT0gSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpIHtcbiAgICAgICAgICAgIHNwZWNpZmllciA9IElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSXG4gICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50SW1wb3J0ID09PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpIHtcbiAgICAgICAgICAgIHNwZWNpZmllciA9IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUlxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzcGVjaWZpZXIgPSBjdXJyZW50SW1wb3J0XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0eXBlb2Ygc3BlY2lmaWVyICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgZXhwb3J0U3RhdGVtZW50ID0gZXhwb3J0cy5nZXQoc3BlY2lmaWVyKVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRTdGF0ZW1lbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHsgd2hlcmVVc2VkIH0gPSBleHBvcnRTdGF0ZW1lbnRcbiAgICAgICAgICAgICAgd2hlcmVVc2VkLmFkZChsaXN0S2V5KVxuICAgICAgICAgICAgICBleHBvcnRzLnNldChzcGVjaWZpZXIsIHsgd2hlcmVVc2VkIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0pXG4gIH0pXG59XG5cbmNvbnN0IGdldFNyYyA9IHNyYyA9PiB7XG4gIGlmIChzcmMpIHtcbiAgICByZXR1cm4gc3JjXG4gIH1cbiAgcmV0dXJuIFtwcm9jZXNzLmN3ZCgpXVxufVxuXG4vKipcbiAqIHByZXBhcmUgdGhlIGxpc3RzIG9mIGV4aXN0aW5nIGltcG9ydHMgYW5kIGV4cG9ydHMgLSBzaG91bGQgb25seSBiZSBleGVjdXRlZCBvbmNlIGF0XG4gKiB0aGUgc3RhcnQgb2YgYSBuZXcgZXNsaW50IHJ1blxuICovXG5sZXQgc3JjRmlsZXNcbmxldCBsYXN0UHJlcGFyZUtleVxuY29uc3QgZG9QcmVwYXJhdGlvbiA9IChzcmMsIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpID0+IHtcbiAgY29uc3QgcHJlcGFyZUtleSA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICBzcmM6IChzcmMgfHwgW10pLnNvcnQoKSxcbiAgICBpZ25vcmVFeHBvcnRzOiAoaWdub3JlRXhwb3J0cyB8fCBbXSkuc29ydCgpLFxuICAgIGV4dGVuc2lvbnM6IEFycmF5LmZyb20oZ2V0RmlsZUV4dGVuc2lvbnMoY29udGV4dC5zZXR0aW5ncykpLnNvcnQoKSxcbiAgfSlcbiAgaWYgKHByZXBhcmVLZXkgPT09IGxhc3RQcmVwYXJlS2V5KSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpbXBvcnRMaXN0LmNsZWFyKClcbiAgZXhwb3J0TGlzdC5jbGVhcigpXG4gIGlnbm9yZWRGaWxlcy5jbGVhcigpXG4gIGZpbGVzT3V0c2lkZVNyYy5jbGVhcigpXG5cbiAgc3JjRmlsZXMgPSByZXNvbHZlRmlsZXMoZ2V0U3JjKHNyYyksIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpXG4gIHByZXBhcmVJbXBvcnRzQW5kRXhwb3J0cyhzcmNGaWxlcywgY29udGV4dClcbiAgZGV0ZXJtaW5lVXNhZ2UoKVxuICBsYXN0UHJlcGFyZUtleSA9IHByZXBhcmVLZXlcbn1cblxuY29uc3QgbmV3TmFtZXNwYWNlSW1wb3J0RXhpc3RzID0gc3BlY2lmaWVycyA9PlxuICBzcGVjaWZpZXJzLnNvbWUoKHsgdHlwZSB9KSA9PiB0eXBlID09PSBJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUilcblxuY29uc3QgbmV3RGVmYXVsdEltcG9ydEV4aXN0cyA9IHNwZWNpZmllcnMgPT5cbiAgc3BlY2lmaWVycy5zb21lKCh7IHR5cGUgfSkgPT4gdHlwZSA9PT0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKVxuXG5jb25zdCBmaWxlSXNJblBrZyA9IGZpbGUgPT4ge1xuICBjb25zdCB7IHBhdGgsIHBrZyB9ID0gcmVhZFBrZ1VwLnN5bmMoe2N3ZDogZmlsZSwgbm9ybWFsaXplOiBmYWxzZX0pXG4gIGNvbnN0IGJhc2VQYXRoID0gZGlybmFtZShwYXRoKVxuXG4gIGNvbnN0IGNoZWNrUGtnRmllbGRTdHJpbmcgPSBwa2dGaWVsZCA9PiB7XG4gICAgaWYgKGpvaW4oYmFzZVBhdGgsIHBrZ0ZpZWxkKSA9PT0gZmlsZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuICB9XG5cbiAgY29uc3QgY2hlY2tQa2dGaWVsZE9iamVjdCA9IHBrZ0ZpZWxkID0+IHtcbiAgICAgIGNvbnN0IHBrZ0ZpZWxkRmlsZXMgPSB2YWx1ZXMocGtnRmllbGQpLm1hcCh2YWx1ZSA9PiBqb2luKGJhc2VQYXRoLCB2YWx1ZSkpXG4gICAgICBpZiAoaW5jbHVkZXMocGtnRmllbGRGaWxlcywgZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgfVxuXG4gIGNvbnN0IGNoZWNrUGtnRmllbGQgPSBwa2dGaWVsZCA9PiB7XG4gICAgaWYgKHR5cGVvZiBwa2dGaWVsZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBjaGVja1BrZ0ZpZWxkU3RyaW5nKHBrZ0ZpZWxkKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgcGtnRmllbGQgPT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gY2hlY2tQa2dGaWVsZE9iamVjdChwa2dGaWVsZClcbiAgICB9XG4gIH1cblxuICBpZiAocGtnLnByaXZhdGUgPT09IHRydWUpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmIChwa2cuYmluKSB7XG4gICAgaWYgKGNoZWNrUGtnRmllbGQocGtnLmJpbikpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9XG5cbiAgaWYgKHBrZy5icm93c2VyKSB7XG4gICAgaWYgKGNoZWNrUGtnRmllbGQocGtnLmJyb3dzZXIpKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIGlmIChwa2cubWFpbikge1xuICAgIGlmIChjaGVja1BrZ0ZpZWxkU3RyaW5nKHBrZy5tYWluKSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2Vcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAnc3VnZ2VzdGlvbicsXG4gICAgZG9jczogeyB1cmw6IGRvY3NVcmwoJ25vLXVudXNlZC1tb2R1bGVzJykgfSxcbiAgICBzY2hlbWE6IFt7XG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIHNyYzoge1xuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnZmlsZXMvcGF0aHMgdG8gYmUgYW5hbHl6ZWQgKG9ubHkgZm9yIHVudXNlZCBleHBvcnRzKScsXG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBtaW5JdGVtczogMSxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICBtaW5MZW5ndGg6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgaWdub3JlRXhwb3J0czoge1xuICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgJ2ZpbGVzL3BhdGhzIGZvciB3aGljaCB1bnVzZWQgZXhwb3J0cyB3aWxsIG5vdCBiZSByZXBvcnRlZCAoZS5nIG1vZHVsZSBlbnRyeSBwb2ludHMpJyxcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIG1pbkl0ZW1zOiAxLFxuICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIG1pbkxlbmd0aDogMSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBtaXNzaW5nRXhwb3J0czoge1xuICAgICAgICAgIGRlc2NyaXB0aW9uOiAncmVwb3J0IG1vZHVsZXMgd2l0aG91dCBhbnkgZXhwb3J0cycsXG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgICB1bnVzZWRFeHBvcnRzOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICdyZXBvcnQgZXhwb3J0cyB3aXRob3V0IGFueSB1c2FnZScsXG4gICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG5vdDoge1xuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgdW51c2VkRXhwb3J0czogeyBlbnVtOiBbZmFsc2VdIH0sXG4gICAgICAgICAgbWlzc2luZ0V4cG9ydHM6IHsgZW51bTogW2ZhbHNlXSB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGFueU9mOlt7XG4gICAgICAgIG5vdDoge1xuICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIHVudXNlZEV4cG9ydHM6IHsgZW51bTogW3RydWVdIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVxdWlyZWQ6IFsnbWlzc2luZ0V4cG9ydHMnXSxcbiAgICAgIH0sIHtcbiAgICAgICAgbm90OiB7XG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgbWlzc2luZ0V4cG9ydHM6IHsgZW51bTogW3RydWVdIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVxdWlyZWQ6IFsndW51c2VkRXhwb3J0cyddLFxuICAgICAgfSwge1xuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgdW51c2VkRXhwb3J0czogeyBlbnVtOiBbdHJ1ZV0gfSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVxdWlyZWQ6IFsndW51c2VkRXhwb3J0cyddLFxuICAgICAgfSwge1xuICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgbWlzc2luZ0V4cG9ydHM6IHsgZW51bTogW3RydWVdIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlcXVpcmVkOiBbJ21pc3NpbmdFeHBvcnRzJ10sXG4gICAgICB9XSxcbiAgICB9XSxcbiAgfSxcblxuICBjcmVhdGU6IGNvbnRleHQgPT4ge1xuICAgIGNvbnN0IHtcbiAgICAgIHNyYyxcbiAgICAgIGlnbm9yZUV4cG9ydHMgPSBbXSxcbiAgICAgIG1pc3NpbmdFeHBvcnRzLFxuICAgICAgdW51c2VkRXhwb3J0cyxcbiAgICB9ID0gY29udGV4dC5vcHRpb25zWzBdIHx8IHt9XG5cbiAgICBpZiAodW51c2VkRXhwb3J0cykge1xuICAgICAgZG9QcmVwYXJhdGlvbihzcmMsIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpXG4gICAgfVxuXG4gICAgY29uc3QgZmlsZSA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKVxuXG4gICAgY29uc3QgY2hlY2tFeHBvcnRQcmVzZW5jZSA9IG5vZGUgPT4ge1xuICAgICAgaWYgKCFtaXNzaW5nRXhwb3J0cykge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKGlnbm9yZWRGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGV4cG9ydENvdW50ID0gZXhwb3J0TGlzdC5nZXQoZmlsZSlcbiAgICAgIGNvbnN0IGV4cG9ydEFsbCA9IGV4cG9ydENvdW50LmdldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKVxuICAgICAgY29uc3QgbmFtZXNwYWNlSW1wb3J0cyA9IGV4cG9ydENvdW50LmdldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUilcblxuICAgICAgZXhwb3J0Q291bnQuZGVsZXRlKEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG4gICAgICBleHBvcnRDb3VudC5kZWxldGUoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG4gICAgICBpZiAoZXhwb3J0Q291bnQuc2l6ZSA8IDEpIHtcbiAgICAgICAgLy8gbm9kZS5ib2R5WzBdID09PSAndW5kZWZpbmVkJyBvbmx5IGhhcHBlbnMsIGlmIGV2ZXJ5dGhpbmcgaXMgY29tbWVudGVkIG91dCBpbiB0aGUgZmlsZVxuICAgICAgICAvLyBiZWluZyBsaW50ZWRcbiAgICAgICAgY29udGV4dC5yZXBvcnQobm9kZS5ib2R5WzBdID8gbm9kZS5ib2R5WzBdIDogbm9kZSwgJ05vIGV4cG9ydHMgZm91bmQnKVxuICAgICAgfVxuICAgICAgZXhwb3J0Q291bnQuc2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04sIGV4cG9ydEFsbClcbiAgICAgIGV4cG9ydENvdW50LnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgbmFtZXNwYWNlSW1wb3J0cylcbiAgICB9XG5cbiAgICBjb25zdCBjaGVja1VzYWdlID0gKG5vZGUsIGV4cG9ydGVkVmFsdWUpID0+IHtcbiAgICAgIGlmICghdW51c2VkRXhwb3J0cykge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKGlnbm9yZWRGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGlmIChmaWxlSXNJblBrZyhmaWxlKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKGZpbGVzT3V0c2lkZVNyYy5oYXMoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIG1ha2Ugc3VyZSBmaWxlIHRvIGJlIGxpbnRlZCBpcyBpbmNsdWRlZCBpbiBzb3VyY2UgZmlsZXNcbiAgICAgIGlmICghc3JjRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHNyY0ZpbGVzID0gcmVzb2x2ZUZpbGVzKGdldFNyYyhzcmMpLCBpZ25vcmVFeHBvcnRzLCBjb250ZXh0KVxuICAgICAgICBpZiAoIXNyY0ZpbGVzLmhhcyhmaWxlKSkge1xuICAgICAgICAgIGZpbGVzT3V0c2lkZVNyYy5hZGQoZmlsZSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQoZmlsZSlcblxuICAgICAgLy8gc3BlY2lhbCBjYXNlOiBleHBvcnQgKiBmcm9tXG4gICAgICBjb25zdCBleHBvcnRBbGwgPSBleHBvcnRzLmdldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKVxuICAgICAgaWYgKHR5cGVvZiBleHBvcnRBbGwgIT09ICd1bmRlZmluZWQnICYmIGV4cG9ydGVkVmFsdWUgIT09IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUikge1xuICAgICAgICBpZiAoZXhwb3J0QWxsLndoZXJlVXNlZC5zaXplID4gMCkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHNwZWNpYWwgY2FzZTogbmFtZXNwYWNlIGltcG9ydFxuICAgICAgY29uc3QgbmFtZXNwYWNlSW1wb3J0cyA9IGV4cG9ydHMuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKVxuICAgICAgaWYgKHR5cGVvZiBuYW1lc3BhY2VJbXBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpZiAobmFtZXNwYWNlSW1wb3J0cy53aGVyZVVzZWQuc2l6ZSA+IDApIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBleHBvcnRzTGlzdCB3aWxsIGFsd2F5cyBtYXAgYW55IGltcG9ydGVkIHZhbHVlIG9mICdkZWZhdWx0JyB0byAnSW1wb3J0RGVmYXVsdFNwZWNpZmllcidcbiAgICAgIGNvbnN0IGV4cG9ydHNLZXkgPSBleHBvcnRlZFZhbHVlID09PSBERUZBVUxUID8gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSIDogZXhwb3J0ZWRWYWx1ZVxuXG4gICAgICBjb25zdCBleHBvcnRTdGF0ZW1lbnQgPSBleHBvcnRzLmdldChleHBvcnRzS2V5KVxuXG4gICAgICBjb25zdCB2YWx1ZSA9IGV4cG9ydHNLZXkgPT09IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiA/IERFRkFVTFQgOiBleHBvcnRzS2V5XG5cbiAgICAgIGlmICh0eXBlb2YgZXhwb3J0U3RhdGVtZW50ICE9PSAndW5kZWZpbmVkJyl7XG4gICAgICAgIGlmIChleHBvcnRTdGF0ZW1lbnQud2hlcmVVc2VkLnNpemUgPCAxKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgYGV4cG9ydGVkIGRlY2xhcmF0aW9uICcke3ZhbHVlfScgbm90IHVzZWQgd2l0aGluIG90aGVyIG1vZHVsZXNgXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb250ZXh0LnJlcG9ydChcbiAgICAgICAgICBub2RlLFxuICAgICAgICAgIGBleHBvcnRlZCBkZWNsYXJhdGlvbiAnJHt2YWx1ZX0nIG5vdCB1c2VkIHdpdGhpbiBvdGhlciBtb2R1bGVzYFxuICAgICAgICApXG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogb25seSB1c2VmdWwgZm9yIHRvb2xzIGxpa2UgdnNjb2RlLWVzbGludFxuICAgICAqXG4gICAgICogdXBkYXRlIGxpc3RzIG9mIGV4aXN0aW5nIGV4cG9ydHMgZHVyaW5nIHJ1bnRpbWVcbiAgICAgKi9cbiAgICBjb25zdCB1cGRhdGVFeHBvcnRVc2FnZSA9IG5vZGUgPT4ge1xuICAgICAgaWYgKGlnbm9yZWRGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGxldCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQoZmlsZSlcblxuICAgICAgLy8gbmV3IG1vZHVsZSBoYXMgYmVlbiBjcmVhdGVkIGR1cmluZyBydW50aW1lXG4gICAgICAvLyBpbmNsdWRlIGl0IGluIGZ1cnRoZXIgcHJvY2Vzc2luZ1xuICAgICAgaWYgKHR5cGVvZiBleHBvcnRzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICBleHBvcnRzID0gbmV3IE1hcCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG5ld0V4cG9ydHMgPSBuZXcgTWFwKClcbiAgICAgIGNvbnN0IG5ld0V4cG9ydElkZW50aWZpZXJzID0gbmV3IFNldCgpXG5cbiAgICAgIG5vZGUuYm9keS5mb3JFYWNoKCh7IHR5cGUsIGRlY2xhcmF0aW9uLCBzcGVjaWZpZXJzIH0pID0+IHtcbiAgICAgICAgaWYgKHR5cGUgPT09IEVYUE9SVF9ERUZBVUxUX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgbmV3RXhwb3J0SWRlbnRpZmllcnMuYWRkKElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUilcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZSA9PT0gRVhQT1JUX05BTUVEX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgaWYgKHNwZWNpZmllcnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgc3BlY2lmaWVycy5mb3JFYWNoKHNwZWNpZmllciA9PiB7XG4gICAgICAgICAgICAgIGlmIChzcGVjaWZpZXIuZXhwb3J0ZWQpIHtcbiAgICAgICAgICAgICAgICBuZXdFeHBvcnRJZGVudGlmaWVycy5hZGQoc3BlY2lmaWVyLmV4cG9ydGVkLm5hbWUpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICAgIGZvckVhY2hEZWNsYXJhdGlvbklkZW50aWZpZXIoZGVjbGFyYXRpb24sIChuYW1lKSA9PiB7XG4gICAgICAgICAgICBuZXdFeHBvcnRJZGVudGlmaWVycy5hZGQobmFtZSlcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICAvLyBvbGQgZXhwb3J0cyBleGlzdCB3aXRoaW4gbGlzdCBvZiBuZXcgZXhwb3J0cyBpZGVudGlmaWVyczogYWRkIHRvIG1hcCBvZiBuZXcgZXhwb3J0c1xuICAgICAgZXhwb3J0cy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmIChuZXdFeHBvcnRJZGVudGlmaWVycy5oYXMoa2V5KSkge1xuICAgICAgICAgIG5ld0V4cG9ydHMuc2V0KGtleSwgdmFsdWUpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIC8vIG5ldyBleHBvcnQgaWRlbnRpZmllcnMgYWRkZWQ6IGFkZCB0byBtYXAgb2YgbmV3IGV4cG9ydHNcbiAgICAgIG5ld0V4cG9ydElkZW50aWZpZXJzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgaWYgKCFleHBvcnRzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgbmV3RXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIC8vIHByZXNlcnZlIGluZm9ybWF0aW9uIGFib3V0IG5hbWVzcGFjZSBpbXBvcnRzXG4gICAgICBsZXQgZXhwb3J0QWxsID0gZXhwb3J0cy5nZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcbiAgICAgIGxldCBuYW1lc3BhY2VJbXBvcnRzID0gZXhwb3J0cy5nZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG5cbiAgICAgIGlmICh0eXBlb2YgbmFtZXNwYWNlSW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgbmFtZXNwYWNlSW1wb3J0cyA9IHsgd2hlcmVVc2VkOiBuZXcgU2V0KCkgfVxuICAgICAgfVxuXG4gICAgICBuZXdFeHBvcnRzLnNldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OLCBleHBvcnRBbGwpXG4gICAgICBuZXdFeHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgbmFtZXNwYWNlSW1wb3J0cylcbiAgICAgIGV4cG9ydExpc3Quc2V0KGZpbGUsIG5ld0V4cG9ydHMpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogb25seSB1c2VmdWwgZm9yIHRvb2xzIGxpa2UgdnNjb2RlLWVzbGludFxuICAgICAqXG4gICAgICogdXBkYXRlIGxpc3RzIG9mIGV4aXN0aW5nIGltcG9ydHMgZHVyaW5nIHJ1bnRpbWVcbiAgICAgKi9cbiAgICBjb25zdCB1cGRhdGVJbXBvcnRVc2FnZSA9IG5vZGUgPT4ge1xuICAgICAgaWYgKCF1bnVzZWRFeHBvcnRzKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBsZXQgb2xkSW1wb3J0UGF0aHMgPSBpbXBvcnRMaXN0LmdldChmaWxlKVxuICAgICAgaWYgKHR5cGVvZiBvbGRJbXBvcnRQYXRocyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgb2xkSW1wb3J0UGF0aHMgPSBuZXcgTWFwKClcbiAgICAgIH1cblxuICAgICAgY29uc3Qgb2xkTmFtZXNwYWNlSW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgY29uc3QgbmV3TmFtZXNwYWNlSW1wb3J0cyA9IG5ldyBTZXQoKVxuXG4gICAgICBjb25zdCBvbGRFeHBvcnRBbGwgPSBuZXcgU2V0KClcbiAgICAgIGNvbnN0IG5ld0V4cG9ydEFsbCA9IG5ldyBTZXQoKVxuXG4gICAgICBjb25zdCBvbGREZWZhdWx0SW1wb3J0cyA9IG5ldyBTZXQoKVxuICAgICAgY29uc3QgbmV3RGVmYXVsdEltcG9ydHMgPSBuZXcgU2V0KClcblxuICAgICAgY29uc3Qgb2xkSW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgY29uc3QgbmV3SW1wb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgb2xkSW1wb3J0UGF0aHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUuaGFzKEVYUE9SVF9BTExfREVDTEFSQVRJT04pKSB7XG4gICAgICAgICAgb2xkRXhwb3J0QWxsLmFkZChrZXkpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhbHVlLmhhcyhJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUikpIHtcbiAgICAgICAgICBvbGROYW1lc3BhY2VJbXBvcnRzLmFkZChrZXkpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhbHVlLmhhcyhJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpKSB7XG4gICAgICAgICAgb2xkRGVmYXVsdEltcG9ydHMuYWRkKGtleSlcbiAgICAgICAgfVxuICAgICAgICB2YWx1ZS5mb3JFYWNoKHZhbCA9PiB7XG4gICAgICAgICAgaWYgKHZhbCAhPT0gSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIgJiZcbiAgICAgICAgICAgICAgdmFsICE9PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpIHtcbiAgICAgICAgICAgICAgIG9sZEltcG9ydHMuc2V0KHZhbCwga2V5KVxuICAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0pXG5cbiAgICAgIG5vZGUuYm9keS5mb3JFYWNoKGFzdE5vZGUgPT4ge1xuICAgICAgICBsZXQgcmVzb2x2ZWRQYXRoXG5cbiAgICAgICAgLy8gc3VwcG9ydCBmb3IgZXhwb3J0IHsgdmFsdWUgfSBmcm9tICdtb2R1bGUnXG4gICAgICAgIGlmIChhc3ROb2RlLnR5cGUgPT09IEVYUE9SVF9OQU1FRF9ERUNMQVJBVElPTikge1xuICAgICAgICAgIGlmIChhc3ROb2RlLnNvdXJjZSkge1xuICAgICAgICAgICAgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShhc3ROb2RlLnNvdXJjZS5yYXcucmVwbGFjZSgvKCd8XCIpL2csICcnKSwgY29udGV4dClcbiAgICAgICAgICAgIGFzdE5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKHNwZWNpZmllciA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBzcGVjaWZpZXIubG9jYWwubmFtZVxuICAgICAgICAgICAgICBpZiAoc3BlY2lmaWVyLmxvY2FsLm5hbWUgPT09IERFRkFVTFQpIHtcbiAgICAgICAgICAgICAgICBuZXdEZWZhdWx0SW1wb3J0cy5hZGQocmVzb2x2ZWRQYXRoKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG5ld0ltcG9ydHMuc2V0KG5hbWUsIHJlc29sdmVkUGF0aClcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYXN0Tm9kZS50eXBlID09PSBFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShhc3ROb2RlLnNvdXJjZS5yYXcucmVwbGFjZSgvKCd8XCIpL2csICcnKSwgY29udGV4dClcbiAgICAgICAgICBuZXdFeHBvcnRBbGwuYWRkKHJlc29sdmVkUGF0aClcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhc3ROb2RlLnR5cGUgPT09IElNUE9SVF9ERUNMQVJBVElPTikge1xuICAgICAgICAgIHJlc29sdmVkUGF0aCA9IHJlc29sdmUoYXN0Tm9kZS5zb3VyY2UucmF3LnJlcGxhY2UoLygnfFwiKS9nLCAnJyksIGNvbnRleHQpXG4gICAgICAgICAgaWYgKCFyZXNvbHZlZFBhdGgpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChpc05vZGVNb2R1bGUocmVzb2x2ZWRQYXRoKSkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG5ld05hbWVzcGFjZUltcG9ydEV4aXN0cyhhc3ROb2RlLnNwZWNpZmllcnMpKSB7XG4gICAgICAgICAgICBuZXdOYW1lc3BhY2VJbXBvcnRzLmFkZChyZXNvbHZlZFBhdGgpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG5ld0RlZmF1bHRJbXBvcnRFeGlzdHMoYXN0Tm9kZS5zcGVjaWZpZXJzKSkge1xuICAgICAgICAgICAgbmV3RGVmYXVsdEltcG9ydHMuYWRkKHJlc29sdmVkUGF0aClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhc3ROb2RlLnNwZWNpZmllcnMuZm9yRWFjaChzcGVjaWZpZXIgPT4ge1xuICAgICAgICAgICAgaWYgKHNwZWNpZmllci50eXBlID09PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIgfHxcbiAgICAgICAgICAgICAgICBzcGVjaWZpZXIudHlwZSA9PT0gSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpIHtcbiAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBuZXdJbXBvcnRzLnNldChzcGVjaWZpZXIuaW1wb3J0ZWQubmFtZSwgcmVzb2x2ZWRQYXRoKVxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIG5ld0V4cG9ydEFsbC5mb3JFYWNoKHZhbHVlID0+IHtcbiAgICAgICAgaWYgKCFvbGRFeHBvcnRBbGwuaGFzKHZhbHVlKSkge1xuICAgICAgICAgIGxldCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKVxuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KClcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1wb3J0cy5hZGQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTilcbiAgICAgICAgICBvbGRJbXBvcnRQYXRocy5zZXQodmFsdWUsIGltcG9ydHMpXG5cbiAgICAgICAgICBsZXQgZXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KHZhbHVlKVxuICAgICAgICAgIGxldCBjdXJyZW50RXhwb3J0XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGV4cG9ydHMgPSBuZXcgTWFwKClcbiAgICAgICAgICAgIGV4cG9ydExpc3Quc2V0KHZhbHVlLCBleHBvcnRzKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmFkZChmaWxlKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB3aGVyZVVzZWQgPSBuZXcgU2V0KClcbiAgICAgICAgICAgIHdoZXJlVXNlZC5hZGQoZmlsZSlcbiAgICAgICAgICAgIGV4cG9ydHMuc2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04sIHsgd2hlcmVVc2VkIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICBvbGRFeHBvcnRBbGwuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgIGlmICghbmV3RXhwb3J0QWxsLmhhcyh2YWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKVxuICAgICAgICAgIGltcG9ydHMuZGVsZXRlKEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG5cbiAgICAgICAgICBjb25zdCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04pXG4gICAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmRlbGV0ZShmaWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgbmV3RGVmYXVsdEltcG9ydHMuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgIGlmICghb2xkRGVmYXVsdEltcG9ydHMuaGFzKHZhbHVlKSkge1xuICAgICAgICAgIGxldCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKVxuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KClcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1wb3J0cy5hZGQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKVxuICAgICAgICAgIG9sZEltcG9ydFBhdGhzLnNldCh2YWx1ZSwgaW1wb3J0cylcblxuICAgICAgICAgIGxldCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgbGV0IGN1cnJlbnRFeHBvcnRcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBleHBvcnRzID0gbmV3IE1hcCgpXG4gICAgICAgICAgICBleHBvcnRMaXN0LnNldCh2YWx1ZSwgZXhwb3J0cylcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5hZGQoZmlsZSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qgd2hlcmVVc2VkID0gbmV3IFNldCgpXG4gICAgICAgICAgICB3aGVyZVVzZWQuYWRkKGZpbGUpXG4gICAgICAgICAgICBleHBvcnRzLnNldChJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIsIHsgd2hlcmVVc2VkIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICBvbGREZWZhdWx0SW1wb3J0cy5mb3JFYWNoKHZhbHVlID0+IHtcbiAgICAgICAgaWYgKCFuZXdEZWZhdWx0SW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgY29uc3QgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSlcbiAgICAgICAgICBpbXBvcnRzLmRlbGV0ZShJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpXG5cbiAgICAgICAgICBjb25zdCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUilcbiAgICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuZGVsZXRlKGZpbGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICBuZXdOYW1lc3BhY2VJbXBvcnRzLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICBpZiAoIW9sZE5hbWVzcGFjZUltcG9ydHMuaGFzKHZhbHVlKSkge1xuICAgICAgICAgIGxldCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKVxuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KClcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1wb3J0cy5hZGQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG4gICAgICAgICAgb2xkSW1wb3J0UGF0aHMuc2V0KHZhbHVlLCBpbXBvcnRzKVxuXG4gICAgICAgICAgbGV0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSlcbiAgICAgICAgICBsZXQgY3VycmVudEV4cG9ydFxuICAgICAgICAgIGlmICh0eXBlb2YgZXhwb3J0cyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQgPSBleHBvcnRzLmdldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhwb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgICAgICAgZXhwb3J0TGlzdC5zZXQodmFsdWUsIGV4cG9ydHMpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGZpbGUpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHdoZXJlVXNlZCA9IG5ldyBTZXQoKVxuICAgICAgICAgICAgd2hlcmVVc2VkLmFkZChmaWxlKVxuICAgICAgICAgICAgZXhwb3J0cy5zZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIsIHsgd2hlcmVVc2VkIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICBvbGROYW1lc3BhY2VJbXBvcnRzLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICBpZiAoIW5ld05hbWVzcGFjZUltcG9ydHMuaGFzKHZhbHVlKSkge1xuICAgICAgICAgIGNvbnN0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpXG4gICAgICAgICAgaW1wb3J0cy5kZWxldGUoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpXG5cbiAgICAgICAgICBjb25zdCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpXG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5kZWxldGUoZmlsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIG5ld0ltcG9ydHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoIW9sZEltcG9ydHMuaGFzKGtleSkpIHtcbiAgICAgICAgICBsZXQgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSlcbiAgICAgICAgICBpZiAodHlwZW9mIGltcG9ydHMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBpbXBvcnRzID0gbmV3IFNldCgpXG4gICAgICAgICAgfVxuICAgICAgICAgIGltcG9ydHMuYWRkKGtleSlcbiAgICAgICAgICBvbGRJbXBvcnRQYXRocy5zZXQodmFsdWUsIGltcG9ydHMpXG5cbiAgICAgICAgICBsZXQgZXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KHZhbHVlKVxuICAgICAgICAgIGxldCBjdXJyZW50RXhwb3J0XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KGtleSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhwb3J0cyA9IG5ldyBNYXAoKVxuICAgICAgICAgICAgZXhwb3J0TGlzdC5zZXQodmFsdWUsIGV4cG9ydHMpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGZpbGUpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHdoZXJlVXNlZCA9IG5ldyBTZXQoKVxuICAgICAgICAgICAgd2hlcmVVc2VkLmFkZChmaWxlKVxuICAgICAgICAgICAgZXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZCB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgb2xkSW1wb3J0cy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmICghbmV3SW1wb3J0cy5oYXMoa2V5KSkge1xuICAgICAgICAgIGNvbnN0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpXG4gICAgICAgICAgaW1wb3J0cy5kZWxldGUoa2V5KVxuXG4gICAgICAgICAgY29uc3QgZXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KHZhbHVlKVxuICAgICAgICAgIGlmICh0eXBlb2YgZXhwb3J0cyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRFeHBvcnQgPSBleHBvcnRzLmdldChrZXkpXG4gICAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmRlbGV0ZShmaWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ1Byb2dyYW06ZXhpdCc6IG5vZGUgPT4ge1xuICAgICAgICB1cGRhdGVFeHBvcnRVc2FnZShub2RlKVxuICAgICAgICB1cGRhdGVJbXBvcnRVc2FnZShub2RlKVxuICAgICAgICBjaGVja0V4cG9ydFByZXNlbmNlKG5vZGUpXG4gICAgICB9LFxuICAgICAgJ0V4cG9ydERlZmF1bHREZWNsYXJhdGlvbic6IG5vZGUgPT4ge1xuICAgICAgICBjaGVja1VzYWdlKG5vZGUsIElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUilcbiAgICAgIH0sXG4gICAgICAnRXhwb3J0TmFtZWREZWNsYXJhdGlvbic6IG5vZGUgPT4ge1xuICAgICAgICBub2RlLnNwZWNpZmllcnMuZm9yRWFjaChzcGVjaWZpZXIgPT4ge1xuICAgICAgICAgICAgY2hlY2tVc2FnZShub2RlLCBzcGVjaWZpZXIuZXhwb3J0ZWQubmFtZSlcbiAgICAgICAgfSlcbiAgICAgICAgZm9yRWFjaERlY2xhcmF0aW9uSWRlbnRpZmllcihub2RlLmRlY2xhcmF0aW9uLCAobmFtZSkgPT4ge1xuICAgICAgICAgIGNoZWNrVXNhZ2Uobm9kZSwgbmFtZSlcbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-useless-path-segments.js b/node_modules/eslint-plugin-import/lib/rules/no-useless-path-segments.js index e4c6d2be..10b65740 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-useless-path-segments.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-useless-path-segments.js @@ -1,50 +1,35 @@ 'use strict'; + + + var _ignore = require('eslint-module-utils/ignore'); - -var _moduleVisitor = require('eslint-module-utils/moduleVisitor'); - -var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); - -var _resolve = require('eslint-module-utils/resolve'); - -var _resolve2 = _interopRequireDefault(_resolve); - -var _path = require('path'); - -var _path2 = _interopRequireDefault(_path); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _moduleVisitor = require('eslint-module-utils/moduleVisitor');var _moduleVisitor2 = _interopRequireDefault(_moduleVisitor); +var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve); +var _path = require('path');var _path2 = _interopRequireDefault(_path); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} /** - * convert a potentially relative path from node utils into a true - * relative path. - * - * ../ -> .. - * ./ -> . - * .foo/bar -> ./.foo/bar - * ..foo/bar -> ./..foo/bar - * foo/bar -> ./foo/bar - * - * @param relativePath {string} relative posix path potentially missing leading './' - * @returns {string} relative posix path that always starts with a ./ - **/ + * convert a potentially relative path from node utils into a true + * relative path. + * + * ../ -> .. + * ./ -> . + * .foo/bar -> ./.foo/bar + * ..foo/bar -> ./..foo/bar + * foo/bar -> ./foo/bar + * + * @param relativePath {string} relative posix path potentially missing leading './' + * @returns {string} relative posix path that always starts with a ./ + **/ function toRelativePath(relativePath) { const stripped = relativePath.replace(/\/$/g, ''); // Remove trailing / - return (/^((\.\.)|(\.))($|\/)/.test(stripped) ? stripped : `./${stripped}` - ); + return (/^((\.\.)|(\.))($|\/)/.test(stripped) ? stripped : `./${stripped}`); } /** * @fileOverview Ensures that there are no useless path segments * @author Thomas Grainger - */ - -function normalize(fn) { - return toRelativePath(_path2.default.posix.normalize(fn)); + */function normalize(fn) {return toRelativePath(_path2.default.posix.normalize(fn)); } function countRelativeParents(pathSegments) { @@ -55,36 +40,37 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('no-useless-path-segments') - }, + url: (0, _docsUrl2.default)('no-useless-path-segments') }, + fixable: 'code', - schema: [{ + schema: [ + { type: 'object', properties: { commonjs: { type: 'boolean' }, - noUselessIndex: { type: 'boolean' } - }, - additionalProperties: false - }] - }, + noUselessIndex: { type: 'boolean' } }, + + additionalProperties: false }] }, + + + create(context) { const currentDir = _path2.default.dirname(context.getFilename()); const options = context.options[0]; - function checkSourceValue(source) { - const importPath = source.value; - + function checkSourceValue(source) {const + importPath = source.value; function reportWithProposedPath(proposedPath) { context.report({ node: source, // Note: Using messageIds is not possible due to the support for ESLint 2 and 3 message: `Useless path segments for "${importPath}", should be "${proposedPath}"`, - fix: fixer => proposedPath && fixer.replaceText(source, JSON.stringify(proposedPath)) - }); + fix: fixer => proposedPath && fixer.replaceText(source, JSON.stringify(proposedPath)) }); + } // Only relative imports are relevant for this rule --> Skip checking @@ -101,7 +87,9 @@ module.exports = { } const fileExtensions = (0, _ignore.getFileExtensions)(context.settings); - const regexUnnecessaryIndex = new RegExp(`.*\\/index(\\${Array.from(fileExtensions).join('|\\')})?$`); + const regexUnnecessaryIndex = new RegExp( + `.*\\/index(\\${Array.from(fileExtensions).join('|\\')})?$`); + // Check if path contains unnecessary index (including a configured extension) if (options && options.noUselessIndex && regexUnnecessaryIndex.test(importPath)) { @@ -142,10 +130,16 @@ module.exports = { } // Report and propose minimal number of required relative parents - return reportWithProposedPath(toRelativePath(importPathSplit.slice(0, countExpectedRelativeParents).concat(importPathSplit.slice(countImportPathRelativeParents + diff)).join('/'))); + return reportWithProposedPath( + toRelativePath( + importPathSplit. + slice(0, countExpectedRelativeParents). + concat(importPathSplit.slice(countImportPathRelativeParents + diff)). + join('/'))); + + } return (0, _moduleVisitor2.default)(checkSourceValue, options); - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11c2VsZXNzLXBhdGgtc2VnbWVudHMuanMiXSwibmFtZXMiOlsidG9SZWxhdGl2ZVBhdGgiLCJyZWxhdGl2ZVBhdGgiLCJzdHJpcHBlZCIsInJlcGxhY2UiLCJ0ZXN0Iiwibm9ybWFsaXplIiwiZm4iLCJwYXRoIiwicG9zaXgiLCJjb3VudFJlbGF0aXZlUGFyZW50cyIsInBhdGhTZWdtZW50cyIsInJlZHVjZSIsInN1bSIsInBhdGhTZWdtZW50IiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsImZpeGFibGUiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiY29tbW9uanMiLCJub1VzZWxlc3NJbmRleCIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiY3JlYXRlIiwiY29udGV4dCIsImN1cnJlbnREaXIiLCJkaXJuYW1lIiwiZ2V0RmlsZW5hbWUiLCJvcHRpb25zIiwiY2hlY2tTb3VyY2VWYWx1ZSIsInNvdXJjZSIsImltcG9ydFBhdGgiLCJ2YWx1ZSIsInJlcG9ydFdpdGhQcm9wb3NlZFBhdGgiLCJwcm9wb3NlZFBhdGgiLCJyZXBvcnQiLCJub2RlIiwibWVzc2FnZSIsImZpeCIsImZpeGVyIiwicmVwbGFjZVRleHQiLCJKU09OIiwic3RyaW5naWZ5Iiwic3RhcnRzV2l0aCIsInJlc29sdmVkUGF0aCIsIm5vcm1lZFBhdGgiLCJyZXNvbHZlZE5vcm1lZFBhdGgiLCJmaWxlRXh0ZW5zaW9ucyIsInNldHRpbmdzIiwicmVnZXhVbm5lY2Vzc2FyeUluZGV4IiwiUmVnRXhwIiwiQXJyYXkiLCJmcm9tIiwiam9pbiIsInBhcmVudERpcmVjdG9yeSIsImZpbGVFeHRlbnNpb24iLCJ1bmRlZmluZWQiLCJleHBlY3RlZCIsInJlbGF0aXZlIiwiZXhwZWN0ZWRTcGxpdCIsInNwbGl0Iiwic2VwIiwiaW1wb3J0UGF0aFNwbGl0IiwiY291bnRJbXBvcnRQYXRoUmVsYXRpdmVQYXJlbnRzIiwiY291bnRFeHBl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WixFQUVHRyxNQUZILENBRVVMLGdCQUFnQkksS0FBaEIsQ0FBc0JILGlDQUFpQ0UsSUFBdkQsQ0FGVixFQUdHWixJQUhILENBR1EsR0FIUixDQURGLENBREssQ0FBUDtBQVFEOztBQUVELFdBQU8sNkJBQWN4QixnQkFBZCxFQUFnQ0QsT0FBaEMsQ0FBUDtBQUNEO0FBekdjLENBQWpCIiwiZmlsZSI6Im5vLXVzZWxlc3MtcGF0aC1zZWdtZW50cy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVPdmVydmlldyBFbnN1cmVzIHRoYXQgdGhlcmUgYXJlIG5vIHVzZWxlc3MgcGF0aCBzZWdtZW50c1xuICogQGF1dGhvciBUaG9tYXMgR3JhaW5nZXJcbiAqL1xuXG5pbXBvcnQgeyBnZXRGaWxlRXh0ZW5zaW9ucyB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvaWdub3JlJ1xuaW1wb3J0IG1vZHVsZVZpc2l0b3IgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9tb2R1bGVWaXNpdG9yJ1xuaW1wb3J0IHJlc29sdmUgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9yZXNvbHZlJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbi8qKlxuICogY29udmVydCBhIHBvdGVudGlhbGx5IHJlbGF0aXZlIHBhdGggZnJvbSBub2RlIHV0aWxzIGludG8gYSB0cnVlXG4gKiByZWxhdGl2ZSBwYXRoLlxuICpcbiAqIC4uLyAtPiAuLlxuICogLi8gLT4gLlxuICogLmZvby9iYXIgLT4gLi8uZm9vL2JhclxuICogLi5mb28vYmFyIC0+IC4vLi5mb28vYmFyXG4gKiBmb28vYmFyIC0+IC4vZm9vL2JhclxuICpcbiAqIEBwYXJhbSByZWxhdGl2ZVBhdGgge3N0cmluZ30gcmVsYXRpdmUgcG9zaXggcGF0aCBwb3RlbnRpYWxseSBtaXNzaW5nIGxlYWRpbmcgJy4vJ1xuICogQHJldHVybnMge3N0cmluZ30gcmVsYXRpdmUgcG9zaXggcGF0aCB0aGF0IGFsd2F5cyBzdGFydHMgd2l0aCBhIC4vXG4gKiovXG5mdW5jdGlvbiB0b1JlbGF0aXZlUGF0aChyZWxhdGl2ZVBhdGgpIHtcbiAgY29uc3Qgc3RyaXBwZWQgPSByZWxhdGl2ZVBhdGgucmVwbGFjZSgvXFwvJC9nLCAnJykgLy8gUmVtb3ZlIHRyYWlsaW5nIC9cblxuICByZXR1cm4gL14oKFxcLlxcLil8KFxcLikpKCR8XFwvKS8udGVzdChzdHJpcHBlZCkgPyBzdHJpcHBlZCA6IGAuLyR7c3RyaXBwZWR9YFxufVxuXG5mdW5jdGlvbiBub3JtYWxpemUoZm4pIHtcbiAgcmV0dXJuIHRvUmVsYXRpdmVQYXRoKHBhdGgucG9zaXgubm9ybWFsaXplKGZuKSlcbn1cblxuZnVuY3Rpb24gY291bnRSZWxhdGl2ZVBhcmVudHMocGF0aFNlZ21lbnRzKSB7XG4gIHJldHVybiBwYXRoU2VnbWVudHMucmVkdWNlKChzdW0sIHBhdGhTZWdtZW50KSA9PiBwYXRoU2VnbWVudCA9PT0gJy4uJyA/IHN1bSArIDEgOiBzdW0sIDApXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnbm8tdXNlbGVzcy1wYXRoLXNlZ21lbnRzJyksXG4gICAgfSxcblxuICAgIGZpeGFibGU6ICdjb2RlJyxcblxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGNvbW1vbmpzOiB7IHR5cGU6ICdib29sZWFuJyB9LFxuICAgICAgICAgIG5vVXNlbGVzc0luZGV4OiB7IHR5cGU6ICdib29sZWFuJyB9LFxuICAgICAgICB9LFxuICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5cbiAgY3JlYXRlKGNvbnRleHQpIHtcbiAgICBjb25zdCBjdXJyZW50RGlyID0gcGF0aC5kaXJuYW1lKGNvbnRleHQuZ2V0RmlsZW5hbWUoKSlcbiAgICBjb25zdCBvcHRpb25zID0gY29udGV4dC5vcHRpb25zWzBdXG5cbiAgICBmdW5jdGlvbiBjaGVja1NvdXJjZVZhbHVlKHNvdXJjZSkge1xuICAgICAgY29uc3QgeyB2YWx1ZTogaW1wb3J0UGF0aCB9ID0gc291cmNlXG5cbiAgICAgIGZ1bmN0aW9uIHJlcG9ydFdpdGhQcm9wb3NlZFBhdGgocHJvcG9zZWRQYXRoKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlOiBzb3VyY2UsXG4gICAgICAgICAgLy8gTm90ZTogVXNpbmcgbWVzc2FnZUlkcyBpcyBub3QgcG9zc2libGUgZHVlIHRvIHRoZSBzdXBwb3J0IGZvciBFU0xpbnQgMiBhbmQgM1xuICAgICAgICAgIG1lc3NhZ2U6IGBVc2VsZXNzIHBhdGggc2VnbWVudHMgZm9yIFwiJHtpbXBvcnRQYXRofVwiLCBzaG91bGQgYmUgXCIke3Byb3Bvc2VkUGF0aH1cImAsXG4gICAgICAgICAgZml4OiBmaXhlciA9PiBwcm9wb3NlZFBhdGggJiYgZml4ZXIucmVwbGFjZVRleHQoc291cmNlLCBKU09OLnN0cmluZ2lmeShwcm9wb3NlZFBhdGgpKSxcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgLy8gT25seSByZWxhdGl2ZSBpbXBvcnRzIGFyZSByZWxldmFudCBmb3IgdGhpcyBydWxlIC0tPiBTa2lwIGNoZWNraW5nXG4gICAgICBpZiAoIWltcG9ydFBhdGguc3RhcnRzV2l0aCgnLicpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyBSZXBvcnQgcnVsZSB2aW9sYXRpb24gaWYgcGF0aCBpcyBub3QgdGhlIHNob3J0ZXN0IHBvc3NpYmxlXG4gICAgICBjb25zdCByZXNvbHZlZFBhdGggPSByZXNvbHZlKGltcG9ydFBhdGgsIGNvbnRleHQpXG4gICAgICBjb25zdCBub3JtZWRQYXRoID0gbm9ybWFsaXplKGltcG9ydFBhdGgpXG4gICAgICBjb25zdCByZXNvbHZlZE5vcm1lZFBhdGggPSByZXNvbHZlKG5vcm1lZFBhdGgsIGNvbnRleHQpXG4gICAgICBpZiAobm9ybWVkUGF0aCAhPT0gaW1wb3J0UGF0aCAmJiByZXNvbHZlZFBhdGggPT09IHJlc29sdmVkTm9ybWVkUGF0aCkge1xuICAgICAgICByZXR1cm4gcmVwb3J0V2l0aFByb3Bvc2VkUGF0aChub3JtZWRQYXRoKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBmaWxlRXh0ZW5zaW9ucyA9IGdldEZpbGVFeHRlbnNpb25zKGNvbnRleHQuc2V0dGluZ3MpXG4gICAgICBjb25zdCByZWdleFVubmVjZXNzYXJ5SW5kZXggPSBuZXcgUmVnRXhwKFxuICAgICAgICBgLipcXFxcL2luZGV4KFxcXFwke0FycmF5LmZyb20oZmlsZUV4dGVuc2lvbnMpLmpvaW4oJ3xcXFxcJyl9KT8kYFxuICAgICAgKVxuXG4gICAgICAvLyBDaGVjayBpZiBwYXRoIGNvbnRhaW5zIHVubmVjZXNzYXJ5IGluZGV4IChpbmNsdWRpbmcgYSBjb25maWd1cmVkIGV4dGVuc2lvbilcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMubm9Vc2VsZXNzSW5kZXggJiYgcmVnZXhVbm5lY2Vzc2FyeUluZGV4LnRlc3QoaW1wb3J0UGF0aCkpIHtcbiAgICAgICAgY29uc3QgcGFyZW50RGlyZWN0b3J5ID0gcGF0aC5kaXJuYW1lKGltcG9ydFBhdGgpXG5cbiAgICAgICAgLy8gVHJ5IHRvIGZpbmQgYW1iaWd1b3VzIGltcG9ydHNcbiAgICAgICAgaWYgKHBhcmVudERpcmVjdG9yeSAhPT0gJy4nICYmIHBhcmVudERpcmVjdG9yeSAhPT0gJy4uJykge1xuICAgICAgICAgIGZvciAobGV0IGZpbGVFeHRlbnNpb24gb2YgZmlsZUV4dGVuc2lvbnMpIHtcbiAgICAgICAgICAgIGlmIChyZXNvbHZlKGAke3BhcmVudERpcmVjdG9yeX0ke2ZpbGVFeHRlbnNpb259YCwgY29udGV4dCkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHJlcG9ydFdpdGhQcm9wb3NlZFBhdGgoYCR7cGFyZW50RGlyZWN0b3J5fS9gKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXBvcnRXaXRoUHJvcG9zZWRQYXRoKHBhcmVudERpcmVjdG9yeSlcbiAgICAgIH1cblxuICAgICAgLy8gUGF0aCBpcyBzaG9ydGVzdCBwb3NzaWJsZSArIHN0YXJ0cyBmcm9tIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAtLT4gUmV0dXJuIGRpcmVjdGx5XG4gICAgICBpZiAoaW1wb3J0UGF0aC5zdGFydHNXaXRoKCcuLycpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyBQYXRoIGlzIG5vdCBleGlzdGluZyAtLT4gUmV0dXJuIGRpcmVjdGx5IChmb2xsb3dpbmcgY29kZSByZXF1aXJlcyBwYXRoIHRvIGJlIGRlZmluZWQpXG4gICAgICBpZiAocmVzb2x2ZWRQYXRoID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGV4cGVjdGVkID0gcGF0aC5yZWxhdGl2ZShjdXJyZW50RGlyLCByZXNvbHZlZFBhdGgpIC8vIEV4cGVjdGVkIGltcG9ydCBwYXRoXG4gICAgICBjb25zdCBleHBlY3RlZFNwbGl0ID0gZXhwZWN0ZWQuc3BsaXQocGF0aC5zZXApIC8vIFNwbGl0IGJ5IC8gb3IgXFwgKGRlcGVuZGluZyBvbiBPUylcbiAgICAgIGNvbnN0IGltcG9ydFBhdGhTcGxpdCA9IGltcG9ydFBhdGgucmVwbGFjZSgvXlxcLlxcLy8sICcnKS5zcGxpdCgnLycpXG4gICAgICBjb25zdCBjb3VudEltcG9ydFBhdGhSZWxhdGl2ZVBhcmVudHMgPSBjb3VudFJlbGF0aXZlUGFyZW50cyhpbXBvcnRQYXRoU3BsaXQpXG4gICAgICBjb25zdCBjb3VudEV4cGVjdGVkUmVsYXRpdmVQYXJlbnRzID0gY291bnRSZWxhdGl2ZVBhcmVudHMoZXhwZWN0ZWRTcGxpdClcbiAgICAgIGNvbnN0IGRpZmYgPSBjb3VudEltcG9ydFBhdGhSZWxhdGl2ZVBhcmVudHMgLSBjb3VudEV4cGVjdGVkUmVsYXRpdmVQYXJlbnRzXG5cbiAgICAgIC8vIFNhbWUgbnVtYmVyIG9mIHJlbGF0aXZlIHBhcmVudHMgLS0+IFBhdGhzIGFyZSB0aGUgc2FtZSAtLT4gUmV0dXJuIGRpcmVjdGx5XG4gICAgICBpZiAoZGlmZiA8PSAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyBSZXBvcnQgYW5kIHByb3Bvc2UgbWluaW1hbCBudW1iZXIgb2YgcmVxdWlyZWQgcmVsYXRpdmUgcGFyZW50c1xuICAgICAgcmV0dXJuIHJlcG9ydFdpdGhQcm9wb3NlZFBhdGgoXG4gICAgICAgIHRvUmVsYXRpdmVQYXRoKFxuICAgICAgICAgIGltcG9ydFBhdGhTcGxpdFxuICAgICAgICAgICAgLnNsaWNlKDAsIGNvdW50RXhwZWN0ZWRSZWxhdGl2ZVBhcmVudHMpXG4gICAgICAgICAgICAuY29uY2F0KGltcG9ydFBhdGhTcGxpdC5zbGljZShjb3VudEltcG9ydFBhdGhSZWxhdGl2ZVBhcmVudHMgKyBkaWZmKSlcbiAgICAgICAgICAgIC5qb2luKCcvJylcbiAgICAgICAgKVxuICAgICAgKVxuICAgIH1cblxuICAgIHJldHVybiBtb2R1bGVWaXNpdG9yKGNoZWNrU291cmNlVmFsdWUsIG9wdGlvbnMpXG4gIH0sXG59XG4iXX0= \ No newline at end of file + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11c2VsZXNzLXBhdGgtc2VnbWVudHMuanMiXSwibmFtZXMiOlsidG9SZWxhdGl2ZVBhdGgiLCJyZWxhdGl2ZVBhdGgiLCJzdHJpcHBlZCIsInJlcGxhY2UiLCJ0ZXN0Iiwibm9ybWFsaXplIiwiZm4iLCJwYXRoIiwicG9zaXgiLCJjb3VudFJlbGF0aXZlUGFyZW50cyIsInBhdGhTZWdtZW50cyIsInJlZHVjZSIsInN1bSIsInBhdGhTZWdtZW50IiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsImZpeGFibGUiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwiY29tbW9uanMiLCJub1VzZWxlc3NJbmRleCIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiY3JlYXRlIiwiY29udGV4dCIsImN1cnJlbnREaXIiLCJkaXJuYW1lIiwiZ2V0RmlsZW5hbWUiLCJvcHRpb25zIiwiY2hlY2tTb3VyY2VWYWx1ZSIsInNvdXJjZSIsImltcG9ydFBhdGgiLCJ2YWx1ZSIsInJlcG9ydFdpdGhQcm9wb3NlZFBhdGgiLCJwcm9wb3NlZFBhdGgiLCJyZXBvcnQiLCJub2RlIiwibWVzc2FnZSIsImZpeCIsImZpeGVyIiwicmVwbGFjZVRleHQiLCJKU09OIiwic3RyaW5naWZ5Iiwic3RhcnRzV2l0aCIsInJlc29sdmVkUGF0aCIsIm5vcm1lZFBhdGgiLCJyZXNvbHZlZE5vcm1lZFBhdGgiLCJmaWxlRXh0ZW5zaW9ucyIsInNldHRpbmdzIiwicmVnZXhVbm5lY2Vzc2FyeUluZGV4IiwiUmVnRXhwIiwiQXJyYXkiLCJmcm9tIiwiam9pbiIsInBhcmVudERpcmVjdG9yeSIsImZpbGVFeHRlbnNpb24iLCJ1bmRlZmluZWQiLCJleHBlY3RlZCIsInJlbGF0aXZlIiwiZXhwZWN0ZWRTcGxpdCIsInNwbGl0Iiwic2VwIiwiaW1wb3J0UGF0aFNwbGl0IiwiY291bnRJbXBvcnRQYXRoUmVsYXRpdmVQYXJlbnRzIiwiY291bnRFeHBl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O0FBRUdHLFlBRkgsQ0FFVUwsZ0JBQWdCSSxLQUFoQixDQUFzQkgsaUNBQWlDRSxJQUF2RCxDQUZWO0FBR0daLFVBSEgsQ0FHUSxHQUhSLENBREYsQ0FESyxDQUFQOzs7QUFRRDs7QUFFRCxXQUFPLDZCQUFjeEIsZ0JBQWQsRUFBZ0NELE9BQWhDLENBQVA7QUFDRCxHQXpHYyxFQUFqQiIsImZpbGUiOiJuby11c2VsZXNzLXBhdGgtc2VnbWVudHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlT3ZlcnZpZXcgRW5zdXJlcyB0aGF0IHRoZXJlIGFyZSBubyB1c2VsZXNzIHBhdGggc2VnbWVudHNcbiAqIEBhdXRob3IgVGhvbWFzIEdyYWluZ2VyXG4gKi9cblxuaW1wb3J0IHsgZ2V0RmlsZUV4dGVuc2lvbnMgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL2lnbm9yZSdcbmltcG9ydCBtb2R1bGVWaXNpdG9yIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvbW9kdWxlVmlzaXRvcidcbmltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSdcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG4vKipcbiAqIGNvbnZlcnQgYSBwb3RlbnRpYWxseSByZWxhdGl2ZSBwYXRoIGZyb20gbm9kZSB1dGlscyBpbnRvIGEgdHJ1ZVxuICogcmVsYXRpdmUgcGF0aC5cbiAqXG4gKiAuLi8gLT4gLi5cbiAqIC4vIC0+IC5cbiAqIC5mb28vYmFyIC0+IC4vLmZvby9iYXJcbiAqIC4uZm9vL2JhciAtPiAuLy4uZm9vL2JhclxuICogZm9vL2JhciAtPiAuL2Zvby9iYXJcbiAqXG4gKiBAcGFyYW0gcmVsYXRpdmVQYXRoIHtzdHJpbmd9IHJlbGF0aXZlIHBvc2l4IHBhdGggcG90ZW50aWFsbHkgbWlzc2luZyBsZWFkaW5nICcuLydcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHJlbGF0aXZlIHBvc2l4IHBhdGggdGhhdCBhbHdheXMgc3RhcnRzIHdpdGggYSAuL1xuICoqL1xuZnVuY3Rpb24gdG9SZWxhdGl2ZVBhdGgocmVsYXRpdmVQYXRoKSB7XG4gIGNvbnN0IHN0cmlwcGVkID0gcmVsYXRpdmVQYXRoLnJlcGxhY2UoL1xcLyQvZywgJycpIC8vIFJlbW92ZSB0cmFpbGluZyAvXG5cbiAgcmV0dXJuIC9eKChcXC5cXC4pfChcXC4pKSgkfFxcLykvLnRlc3Qoc3RyaXBwZWQpID8gc3RyaXBwZWQgOiBgLi8ke3N0cmlwcGVkfWBcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplKGZuKSB7XG4gIHJldHVybiB0b1JlbGF0aXZlUGF0aChwYXRoLnBvc2l4Lm5vcm1hbGl6ZShmbikpXG59XG5cbmZ1bmN0aW9uIGNvdW50UmVsYXRpdmVQYXJlbnRzKHBhdGhTZWdtZW50cykge1xuICByZXR1cm4gcGF0aFNlZ21lbnRzLnJlZHVjZSgoc3VtLCBwYXRoU2VnbWVudCkgPT4gcGF0aFNlZ21lbnQgPT09ICcuLicgPyBzdW0gKyAxIDogc3VtLCAwKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLXVzZWxlc3MtcGF0aC1zZWdtZW50cycpLFxuICAgIH0sXG5cbiAgICBmaXhhYmxlOiAnY29kZScsXG5cbiAgICBzY2hlbWE6IFtcbiAgICAgIHtcbiAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICBjb21tb25qczogeyB0eXBlOiAnYm9vbGVhbicgfSxcbiAgICAgICAgICBub1VzZWxlc3NJbmRleDogeyB0eXBlOiAnYm9vbGVhbicgfSxcbiAgICAgICAgfSxcbiAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXG4gIGNyZWF0ZShjb250ZXh0KSB7XG4gICAgY29uc3QgY3VycmVudERpciA9IHBhdGguZGlybmFtZShjb250ZXh0LmdldEZpbGVuYW1lKCkpXG4gICAgY29uc3Qgb3B0aW9ucyA9IGNvbnRleHQub3B0aW9uc1swXVxuXG4gICAgZnVuY3Rpb24gY2hlY2tTb3VyY2VWYWx1ZShzb3VyY2UpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWU6IGltcG9ydFBhdGggfSA9IHNvdXJjZVxuXG4gICAgICBmdW5jdGlvbiByZXBvcnRXaXRoUHJvcG9zZWRQYXRoKHByb3Bvc2VkUGF0aCkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZTogc291cmNlLFxuICAgICAgICAgIC8vIE5vdGU6IFVzaW5nIG1lc3NhZ2VJZHMgaXMgbm90IHBvc3NpYmxlIGR1ZSB0byB0aGUgc3VwcG9ydCBmb3IgRVNMaW50IDIgYW5kIDNcbiAgICAgICAgICBtZXNzYWdlOiBgVXNlbGVzcyBwYXRoIHNlZ21lbnRzIGZvciBcIiR7aW1wb3J0UGF0aH1cIiwgc2hvdWxkIGJlIFwiJHtwcm9wb3NlZFBhdGh9XCJgLFxuICAgICAgICAgIGZpeDogZml4ZXIgPT4gcHJvcG9zZWRQYXRoICYmIGZpeGVyLnJlcGxhY2VUZXh0KHNvdXJjZSwgSlNPTi5zdHJpbmdpZnkocHJvcG9zZWRQYXRoKSksXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgcmVsYXRpdmUgaW1wb3J0cyBhcmUgcmVsZXZhbnQgZm9yIHRoaXMgcnVsZSAtLT4gU2tpcCBjaGVja2luZ1xuICAgICAgaWYgKCFpbXBvcnRQYXRoLnN0YXJ0c1dpdGgoJy4nKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gUmVwb3J0IHJ1bGUgdmlvbGF0aW9uIGlmIHBhdGggaXMgbm90IHRoZSBzaG9ydGVzdCBwb3NzaWJsZVxuICAgICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShpbXBvcnRQYXRoLCBjb250ZXh0KVxuICAgICAgY29uc3Qgbm9ybWVkUGF0aCA9IG5vcm1hbGl6ZShpbXBvcnRQYXRoKVxuICAgICAgY29uc3QgcmVzb2x2ZWROb3JtZWRQYXRoID0gcmVzb2x2ZShub3JtZWRQYXRoLCBjb250ZXh0KVxuICAgICAgaWYgKG5vcm1lZFBhdGggIT09IGltcG9ydFBhdGggJiYgcmVzb2x2ZWRQYXRoID09PSByZXNvbHZlZE5vcm1lZFBhdGgpIHtcbiAgICAgICAgcmV0dXJuIHJlcG9ydFdpdGhQcm9wb3NlZFBhdGgobm9ybWVkUGF0aClcbiAgICAgIH1cblxuICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbnMgPSBnZXRGaWxlRXh0ZW5zaW9ucyhjb250ZXh0LnNldHRpbmdzKVxuICAgICAgY29uc3QgcmVnZXhVbm5lY2Vzc2FyeUluZGV4ID0gbmV3IFJlZ0V4cChcbiAgICAgICAgYC4qXFxcXC9pbmRleChcXFxcJHtBcnJheS5mcm9tKGZpbGVFeHRlbnNpb25zKS5qb2luKCd8XFxcXCcpfSk/JGBcbiAgICAgIClcblxuICAgICAgLy8gQ2hlY2sgaWYgcGF0aCBjb250YWlucyB1bm5lY2Vzc2FyeSBpbmRleCAoaW5jbHVkaW5nIGEgY29uZmlndXJlZCBleHRlbnNpb24pXG4gICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLm5vVXNlbGVzc0luZGV4ICYmIHJlZ2V4VW5uZWNlc3NhcnlJbmRleC50ZXN0KGltcG9ydFBhdGgpKSB7XG4gICAgICAgIGNvbnN0IHBhcmVudERpcmVjdG9yeSA9IHBhdGguZGlybmFtZShpbXBvcnRQYXRoKVxuXG4gICAgICAgIC8vIFRyeSB0byBmaW5kIGFtYmlndW91cyBpbXBvcnRzXG4gICAgICAgIGlmIChwYXJlbnREaXJlY3RvcnkgIT09ICcuJyAmJiBwYXJlbnREaXJlY3RvcnkgIT09ICcuLicpIHtcbiAgICAgICAgICBmb3IgKGxldCBmaWxlRXh0ZW5zaW9uIG9mIGZpbGVFeHRlbnNpb25zKSB7XG4gICAgICAgICAgICBpZiAocmVzb2x2ZShgJHtwYXJlbnREaXJlY3Rvcnl9JHtmaWxlRXh0ZW5zaW9ufWAsIGNvbnRleHQpKSB7XG4gICAgICAgICAgICAgIHJldHVybiByZXBvcnRXaXRoUHJvcG9zZWRQYXRoKGAke3BhcmVudERpcmVjdG9yeX0vYClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVwb3J0V2l0aFByb3Bvc2VkUGF0aChwYXJlbnREaXJlY3RvcnkpXG4gICAgICB9XG5cbiAgICAgIC8vIFBhdGggaXMgc2hvcnRlc3QgcG9zc2libGUgKyBzdGFydHMgZnJvbSB0aGUgY3VycmVudCBkaXJlY3RvcnkgLS0+IFJldHVybiBkaXJlY3RseVxuICAgICAgaWYgKGltcG9ydFBhdGguc3RhcnRzV2l0aCgnLi8nKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gUGF0aCBpcyBub3QgZXhpc3RpbmcgLS0+IFJldHVybiBkaXJlY3RseSAoZm9sbG93aW5nIGNvZGUgcmVxdWlyZXMgcGF0aCB0byBiZSBkZWZpbmVkKVxuICAgICAgaWYgKHJlc29sdmVkUGF0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCBleHBlY3RlZCA9IHBhdGgucmVsYXRpdmUoY3VycmVudERpciwgcmVzb2x2ZWRQYXRoKSAvLyBFeHBlY3RlZCBpbXBvcnQgcGF0aFxuICAgICAgY29uc3QgZXhwZWN0ZWRTcGxpdCA9IGV4cGVjdGVkLnNwbGl0KHBhdGguc2VwKSAvLyBTcGxpdCBieSAvIG9yIFxcIChkZXBlbmRpbmcgb24gT1MpXG4gICAgICBjb25zdCBpbXBvcnRQYXRoU3BsaXQgPSBpbXBvcnRQYXRoLnJlcGxhY2UoL15cXC5cXC8vLCAnJykuc3BsaXQoJy8nKVxuICAgICAgY29uc3QgY291bnRJbXBvcnRQYXRoUmVsYXRpdmVQYXJlbnRzID0gY291bnRSZWxhdGl2ZVBhcmVudHMoaW1wb3J0UGF0aFNwbGl0KVxuICAgICAgY29uc3QgY291bnRFeHBlY3RlZFJlbGF0aXZlUGFyZW50cyA9IGNvdW50UmVsYXRpdmVQYXJlbnRzKGV4cGVjdGVkU3BsaXQpXG4gICAgICBjb25zdCBkaWZmID0gY291bnRJbXBvcnRQYXRoUmVsYXRpdmVQYXJlbnRzIC0gY291bnRFeHBlY3RlZFJlbGF0aXZlUGFyZW50c1xuXG4gICAgICAvLyBTYW1lIG51bWJlciBvZiByZWxhdGl2ZSBwYXJlbnRzIC0tPiBQYXRocyBhcmUgdGhlIHNhbWUgLS0+IFJldHVybiBkaXJlY3RseVxuICAgICAgaWYgKGRpZmYgPD0gMCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gUmVwb3J0IGFuZCBwcm9wb3NlIG1pbmltYWwgbnVtYmVyIG9mIHJlcXVpcmVkIHJlbGF0aXZlIHBhcmVudHNcbiAgICAgIHJldHVybiByZXBvcnRXaXRoUHJvcG9zZWRQYXRoKFxuICAgICAgICB0b1JlbGF0aXZlUGF0aChcbiAgICAgICAgICBpbXBvcnRQYXRoU3BsaXRcbiAgICAgICAgICAgIC5zbGljZSgwLCBjb3VudEV4cGVjdGVkUmVsYXRpdmVQYXJlbnRzKVxuICAgICAgICAgICAgLmNvbmNhdChpbXBvcnRQYXRoU3BsaXQuc2xpY2UoY291bnRJbXBvcnRQYXRoUmVsYXRpdmVQYXJlbnRzICsgZGlmZikpXG4gICAgICAgICAgICAuam9pbignLycpXG4gICAgICAgIClcbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gbW9kdWxlVmlzaXRvcihjaGVja1NvdXJjZVZhbHVlLCBvcHRpb25zKVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js b/node_modules/eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js index 9727c5fb..df99f18a 100644 --- a/node_modules/eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js +++ b/node_modules/eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js @@ -1,18 +1,11 @@ -'use strict'; - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +'use strict';var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} function reportIfNonStandard(context, node, name) { if (name.indexOf('!') !== -1) { - context.report(node, `Unexpected '!' in '${name}'. ` + 'Do not use import syntax to configure webpack loaders.'); + context.report(node, `Unexpected '!' in '${name}'. ` + + 'Do not use import syntax to configure webpack loaders.'); + } } @@ -20,10 +13,10 @@ module.exports = { meta: { type: 'problem', docs: { - url: (0, _docsUrl2.default)('no-webpack-loader-syntax') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('no-webpack-loader-syntax') }, + + schema: [] }, + create: function (context) { return { @@ -34,8 +27,7 @@ module.exports = { if ((0, _staticRequire2.default)(node)) { reportIfNonStandard(context, node, node.arguments[0].value); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby13ZWJwYWNrLWxvYWRlci1zeW50YXguanMiXSwibmFtZXMiOlsicmVwb3J0SWZOb25TdGFuZGFyZCIsImNvbnRleHQiLCJub2RlIiwibmFtZSIsImluZGV4T2YiLCJyZXBvcnQiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJoYW5kbGVJbXBvcnRzIiwic291cmNlIiwidmFsdWUiLCJDYWxsRXhwcmVzc2lvbiIsImhhbmRsZVJlcXVpcmVzIiwiYXJndW1lbnRzIl0sIm1hcHBpbmdzIjoiOztBQUFBOzs7O0FBQ0E7Ozs7OztBQUVBLFNBQVNBLG1CQUFULENBQTZCQyxPQUE3QixFQUFzQ0MsSUFBdEMsRUFBNENDLElBQTVDLEVBQWtEO0FBQ2hELE1BQUlBLEtBQUtDLE9BQUwsQ0FBYSxHQUFiLE1BQXNCLENBQUMsQ0FBM0IsRUFBOEI7QUFDNUJILFlBQVFJLE1BQVIsQ0FBZUgsSUFBZixFQUFzQixzQkFBcUJDLElBQUssS0FBM0IsR0FDbkIsd0RBREY7QUFHRDtBQUNGOztBQUVERyxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsV0FBSyx1QkFBUSwwQkFBUjtBQURELEtBRkY7QUFLSkMsWUFBUTtBQUxKLEdBRFM7O0FBU2ZDLFVBQVEsVUFBVVosT0FBVixFQUFtQjtBQUN6QixXQUFPO0FBQ0xhLHlCQUFtQixTQUFTQyxhQUFULENBQXVCYixJQUF2QixFQUE2QjtBQUM5Q0YsNEJBQW9CQyxPQUFwQixFQUE2QkMsSUFBN0IsRUFBbUNBLEtBQUtjLE1BQUwsQ0FBWUMsS0FBL0M7QUFDRCxPQUhJO0FBSUxDLHNCQUFnQixTQUFTQyxjQUFULENBQXdCakIsSUFBeEIsRUFBOEI7QUFDNUMsWUFBSSw2QkFBZ0JBLElBQWhCLENBQUosRUFBMkI7QUFDekJGLDhCQUFvQkMsT0FBcEIsRUFBNkJDLElBQTdCLEVBQW1DQSxLQUFLa0IsU0FBTCxDQUFlLENBQWYsRUFBa0JILEtBQXJEO0FBQ0Q7QUFDRjtBQVJJLEtBQVA7QUFVRDtBQXBCYyxDQUFqQiIsImZpbGUiOiJuby13ZWJwYWNrLWxvYWRlci1zeW50YXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaXNTdGF0aWNSZXF1aXJlIGZyb20gJy4uL2NvcmUvc3RhdGljUmVxdWlyZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmZ1bmN0aW9uIHJlcG9ydElmTm9uU3RhbmRhcmQoY29udGV4dCwgbm9kZSwgbmFtZSkge1xuICBpZiAobmFtZS5pbmRleE9mKCchJykgIT09IC0xKSB7XG4gICAgY29udGV4dC5yZXBvcnQobm9kZSwgYFVuZXhwZWN0ZWQgJyEnIGluICcke25hbWV9Jy4gYCArXG4gICAgICAnRG8gbm90IHVzZSBpbXBvcnQgc3ludGF4IHRvIGNvbmZpZ3VyZSB3ZWJwYWNrIGxvYWRlcnMuJ1xuICAgIClcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLXdlYnBhY2stbG9hZGVyLXN5bnRheCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIChjb250ZXh0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlY2xhcmF0aW9uOiBmdW5jdGlvbiBoYW5kbGVJbXBvcnRzKG5vZGUpIHtcbiAgICAgICAgcmVwb3J0SWZOb25TdGFuZGFyZChjb250ZXh0LCBub2RlLCBub2RlLnNvdXJjZS52YWx1ZSlcbiAgICAgIH0sXG4gICAgICBDYWxsRXhwcmVzc2lvbjogZnVuY3Rpb24gaGFuZGxlUmVxdWlyZXMobm9kZSkge1xuICAgICAgICBpZiAoaXNTdGF0aWNSZXF1aXJlKG5vZGUpKSB7XG4gICAgICAgICAgcmVwb3J0SWZOb25TdGFuZGFyZChjb250ZXh0LCBub2RlLCBub2RlLmFyZ3VtZW50c1swXS52YWx1ZSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby13ZWJwYWNrLWxvYWRlci1zeW50YXguanMiXSwibmFtZXMiOlsicmVwb3J0SWZOb25TdGFuZGFyZCIsImNvbnRleHQiLCJub2RlIiwibmFtZSIsImluZGV4T2YiLCJyZXBvcnQiLCJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJoYW5kbGVJbXBvcnRzIiwic291cmNlIiwidmFsdWUiLCJDYWxsRXhwcmVzc2lvbiIsImhhbmRsZVJlcXVpcmVzIiwiYXJndW1lbnRzIl0sIm1hcHBpbmdzIjoiYUFBQSxzRDtBQUNBLHFDOztBQUVBLFNBQVNBLG1CQUFULENBQTZCQyxPQUE3QixFQUFzQ0MsSUFBdEMsRUFBNENDLElBQTVDLEVBQWtEO0FBQ2hELE1BQUlBLEtBQUtDLE9BQUwsQ0FBYSxHQUFiLE1BQXNCLENBQUMsQ0FBM0IsRUFBOEI7QUFDNUJILFlBQVFJLE1BQVIsQ0FBZUgsSUFBZixFQUFzQixzQkFBcUJDLElBQUssS0FBM0I7QUFDbkIsNERBREY7O0FBR0Q7QUFDRjs7QUFFREcsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sU0FERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsMEJBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLEVBTEosRUFEUzs7O0FBU2ZDLFVBQVEsVUFBVVosT0FBVixFQUFtQjtBQUN6QixXQUFPO0FBQ0xhLHlCQUFtQixTQUFTQyxhQUFULENBQXVCYixJQUF2QixFQUE2QjtBQUM5Q0YsNEJBQW9CQyxPQUFwQixFQUE2QkMsSUFBN0IsRUFBbUNBLEtBQUtjLE1BQUwsQ0FBWUMsS0FBL0M7QUFDRCxPQUhJO0FBSUxDLHNCQUFnQixTQUFTQyxjQUFULENBQXdCakIsSUFBeEIsRUFBOEI7QUFDNUMsWUFBSSw2QkFBZ0JBLElBQWhCLENBQUosRUFBMkI7QUFDekJGLDhCQUFvQkMsT0FBcEIsRUFBNkJDLElBQTdCLEVBQW1DQSxLQUFLa0IsU0FBTCxDQUFlLENBQWYsRUFBa0JILEtBQXJEO0FBQ0Q7QUFDRixPQVJJLEVBQVA7O0FBVUQsR0FwQmMsRUFBakIiLCJmaWxlIjoibm8td2VicGFjay1sb2FkZXItc3ludGF4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5mdW5jdGlvbiByZXBvcnRJZk5vblN0YW5kYXJkKGNvbnRleHQsIG5vZGUsIG5hbWUpIHtcbiAgaWYgKG5hbWUuaW5kZXhPZignIScpICE9PSAtMSkge1xuICAgIGNvbnRleHQucmVwb3J0KG5vZGUsIGBVbmV4cGVjdGVkICchJyBpbiAnJHtuYW1lfScuIGAgK1xuICAgICAgJ0RvIG5vdCB1c2UgaW1wb3J0IHN5bnRheCB0byBjb25maWd1cmUgd2VicGFjayBsb2FkZXJzLidcbiAgICApXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgdXJsOiBkb2NzVXJsKCduby13ZWJwYWNrLWxvYWRlci1zeW50YXgnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlOiBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbjogZnVuY3Rpb24gaGFuZGxlSW1wb3J0cyhub2RlKSB7XG4gICAgICAgIHJlcG9ydElmTm9uU3RhbmRhcmQoY29udGV4dCwgbm9kZSwgbm9kZS5zb3VyY2UudmFsdWUpXG4gICAgICB9LFxuICAgICAgQ2FsbEV4cHJlc3Npb246IGZ1bmN0aW9uIGhhbmRsZVJlcXVpcmVzKG5vZGUpIHtcbiAgICAgICAgaWYgKGlzU3RhdGljUmVxdWlyZShub2RlKSkge1xuICAgICAgICAgIHJlcG9ydElmTm9uU3RhbmRhcmQoY29udGV4dCwgbm9kZSwgbm9kZS5hcmd1bWVudHNbMF0udmFsdWUpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/order.js b/node_modules/eslint-plugin-import/lib/rules/order.js index a891ea08..d3cd4421 100644 --- a/node_modules/eslint-plugin-import/lib/rules/order.js +++ b/node_modules/eslint-plugin-import/lib/rules/order.js @@ -1,24 +1,9 @@ -'use strict'; +'use strict';var _slicedToArray = function () {function sliceIterator(arr, i) {var _arr = [];var _n = true;var _d = false;var _e = undefined;try {for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {_arr.push(_s.value);if (i && _arr.length === i) break;}} catch (err) {_d = true;_e = err;} finally {try {if (!_n && _i["return"]) _i["return"]();} finally {if (_d) throw _e;}}return _arr;}return function (arr, i) {if (Array.isArray(arr)) {return arr;} else if (Symbol.iterator in Object(arr)) {return sliceIterator(arr, i);} else {throw new TypeError("Invalid attempt to destructure non-iterable instance");}};}(); -var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); - -var _minimatch = require('minimatch'); - -var _minimatch2 = _interopRequireDefault(_minimatch); - -var _importType = require('../core/importType'); - -var _importType2 = _interopRequireDefault(_importType); - -var _staticRequire = require('../core/staticRequire'); - -var _staticRequire2 = _interopRequireDefault(_staticRequire); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _minimatch = require('minimatch');var _minimatch2 = _interopRequireDefault(_minimatch); +var _importType = require('../core/importType');var _importType2 = _interopRequireDefault(_importType); +var _staticRequire = require('../core/staticRequire');var _staticRequire2 = _interopRequireDefault(_staticRequire); +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} const defaultGroups = ['builtin', 'external', 'parent', 'sibling', 'index']; @@ -26,11 +11,7 @@ const defaultGroups = ['builtin', 'external', 'parent', 'sibling', 'index']; function reverse(array) { return array.map(function (v) { - return { - name: v.name, - rank: -v.rank, - node: v.node - }; + return Object.assign({}, v, { rank: -v.rank }); }).reverse(); } @@ -66,7 +47,8 @@ function takeTokensAfterWhile(sourceCode, node, condition) { for (let i = 0; i < tokens.length; i++) { if (condition(tokens[i])) { result.push(tokens[i]); - } else { + } else + { break; } } @@ -79,7 +61,8 @@ function takeTokensBeforeWhile(sourceCode, node, condition) { for (let i = tokens.length - 1; i >= 0; i--) { if (condition(tokens[i])) { result.push(tokens[i]); - } else { + } else + { break; } } @@ -110,7 +93,9 @@ function findRootNode(node) { function findEndOfLineWithComments(sourceCode, node) { const tokensToEndOfLine = takeTokensAfterWhile(sourceCode, node, commentOnSameLineAs(node)); - let endOfTokens = tokensToEndOfLine.length > 0 ? tokensToEndOfLine[tokensToEndOfLine.length - 1].range[1] : node.range[1]; + let endOfTokens = tokensToEndOfLine.length > 0 ? + tokensToEndOfLine[tokensToEndOfLine.length - 1].range[1] : + node.range[1]; let result = endOfTokens; for (let i = endOfTokens; i < sourceCode.text.length; i++) { if (sourceCode.text[i] === '\n') { @@ -126,7 +111,9 @@ function findEndOfLineWithComments(sourceCode, node) { } function commentOnSameLineAs(node) { - return token => (token.type === 'Block' || token.type === 'Line') && token.loc.start.line === token.loc.end.line && token.loc.end.line === node.loc.end.line; + return token => (token.type === 'Block' || token.type === 'Line') && + token.loc.start.line === token.loc.end.line && + token.loc.end.line === node.loc.end.line; } function findStartOfLineWithComments(sourceCode, node) { @@ -150,7 +137,15 @@ function isPlainRequireModule(node) { return false; } const decl = node.declarations[0]; - const result = decl.id && (decl.id.type === 'Identifier' || decl.id.type === 'ObjectPattern') && decl.init != null && decl.init.type === 'CallExpression' && decl.init.callee != null && decl.init.callee.name === 'require' && decl.init.arguments != null && decl.init.arguments.length === 1 && decl.init.arguments[0].type === 'Literal'; + const result = decl.id && ( + decl.id.type === 'Identifier' || decl.id.type === 'ObjectPattern') && + decl.init != null && + decl.init.type === 'CallExpression' && + decl.init.callee != null && + decl.init.callee.name === 'require' && + decl.init.arguments != null && + decl.init.arguments.length === 1 && + decl.init.arguments[0].type === 'Literal'; return result; } @@ -158,19 +153,20 @@ function isPlainImportModule(node) { return node.type === 'ImportDeclaration' && node.specifiers != null && node.specifiers.length > 0; } +function isPlainImportEquals(node) { + return node.type === 'TSImportEqualsDeclaration' && node.moduleReference.expression; +} + function canCrossNodeWhileReorder(node) { - return isPlainRequireModule(node) || isPlainImportModule(node); + return isPlainRequireModule(node) || isPlainImportModule(node) || isPlainImportEquals(node); } function canReorderItems(firstNode, secondNode) { - const parent = firstNode.parent; - - var _sort = [parent.body.indexOf(firstNode), parent.body.indexOf(secondNode)].sort(), - _sort2 = _slicedToArray(_sort, 2); - - const firstIndex = _sort2[0], - secondIndex = _sort2[1]; - + const parent = firstNode.parent;var _sort = + [ + parent.body.indexOf(firstNode), + parent.body.indexOf(secondNode)]. + sort(),_sort2 = _slicedToArray(_sort, 2);const firstIndex = _sort2[0],secondIndex = _sort2[1]; const nodesBetween = parent.body.slice(firstIndex, secondIndex + 1); for (var nodeBetween of nodesBetween) { if (!canCrossNodeWhileReorder(nodeBetween)) { @@ -197,20 +193,28 @@ function fixOutOfOrder(context, firstNode, secondNode, order) { newCode = newCode + '\n'; } - const message = '`' + secondNode.name + '` import should occur ' + order + ' import of `' + firstNode.name + '`'; + const message = `\`${secondNode.displayName}\` import should occur ${order} import of \`${firstNode.displayName}\``; if (order === 'before') { context.report({ node: secondNode.node, message: message, - fix: canFix && (fixer => fixer.replaceTextRange([firstRootStart, secondRootEnd], newCode + sourceCode.text.substring(firstRootStart, secondRootStart))) - }); + fix: canFix && (fixer => + fixer.replaceTextRange( + [firstRootStart, secondRootEnd], + newCode + sourceCode.text.substring(firstRootStart, secondRootStart))) }); + + } else if (order === 'after') { context.report({ node: secondNode.node, message: message, - fix: canFix && (fixer => fixer.replaceTextRange([secondRootStart, firstRootEnd], sourceCode.text.substring(secondRootEnd, firstRootEnd) + newCode)) - }); + fix: canFix && (fixer => + fixer.replaceTextRange( + [secondRootStart, firstRootEnd], + sourceCode.text.substring(secondRootEnd, firstRootEnd) + newCode)) }); + + } } @@ -238,28 +242,22 @@ function makeOutOfOrderReport(context, imported) { reportOutOfOrder(context, imported, outOfOrder, 'before'); } -function importsSorterAsc(importA, importB) { - if (importA < importB) { - return -1; - } +function getSorter(ascending) { + const multiplier = ascending ? 1 : -1; - if (importA > importB) { - return 1; - } + return function importsSorter(importA, importB) { + let result; - return 0; -} + if (importA < importB) { + result = -1; + } else if (importA > importB) { + result = 1; + } else { + result = 0; + } -function importsSorterDesc(importA, importB) { - if (importA < importB) { - return 1; - } - - if (importA > importB) { - return -1; - } - - return 0; + return result * multiplier; + }; } function mutateRanksToAlphabetize(imported, alphabetizeOptions) { @@ -267,13 +265,13 @@ function mutateRanksToAlphabetize(imported, alphabetizeOptions) { if (!Array.isArray(acc[importedItem.rank])) { acc[importedItem.rank] = []; } - acc[importedItem.rank].push(importedItem.name); + acc[importedItem.rank].push(importedItem.value); return acc; }, {}); const groupRanks = Object.keys(groupedByRanks); - const sorterFn = alphabetizeOptions.order === 'asc' ? importsSorterAsc : importsSorterDesc; + const sorterFn = getSorter(alphabetizeOptions.order === 'asc'); const comparator = alphabetizeOptions.caseInsensitive ? (a, b) => sorterFn(String(a).toLowerCase(), String(b).toLowerCase()) : (a, b) => sorterFn(a, b); // sort imports locally within their group groupRanks.forEach(function (groupRank) { @@ -292,55 +290,55 @@ function mutateRanksToAlphabetize(imported, alphabetizeOptions) { // mutate the original group-rank with alphabetized-rank imported.forEach(function (importedItem) { - importedItem.rank = alphabetizedRanks[importedItem.name]; + importedItem.rank = alphabetizedRanks[importedItem.value]; }); } // DETECTING function computePathRank(ranks, pathGroups, path, maxPosition) { - for (let i = 0, l = pathGroups.length; i < l; i++) { - var _pathGroups$i = pathGroups[i]; - const pattern = _pathGroups$i.pattern, - patternOptions = _pathGroups$i.patternOptions, - group = _pathGroups$i.group; - var _pathGroups$i$positio = _pathGroups$i.position; - const position = _pathGroups$i$positio === undefined ? 1 : _pathGroups$i$positio; - + for (let i = 0, l = pathGroups.length; i < l; i++) {var _pathGroups$i = + pathGroups[i];const pattern = _pathGroups$i.pattern,patternOptions = _pathGroups$i.patternOptions,group = _pathGroups$i.group;var _pathGroups$i$positio = _pathGroups$i.position;const position = _pathGroups$i$positio === undefined ? 1 : _pathGroups$i$positio; if ((0, _minimatch2.default)(path, pattern, patternOptions || { nocomment: true })) { return ranks[group] + position / maxPosition; } } } -function computeRank(context, ranks, name, type, excludedImportTypes) { - const impType = (0, _importType2.default)(name, context); +function computeRank(context, ranks, importEntry, excludedImportTypes) { + let impType; let rank; - if (!excludedImportTypes.has(impType)) { - rank = computePathRank(ranks.groups, ranks.pathGroups, name, ranks.maxPosition); + if (importEntry.type === 'import:object') { + impType = 'object'; + } else { + impType = (0, _importType2.default)(importEntry.value, context); } - if (!rank) { + if (!excludedImportTypes.has(impType)) { + rank = computePathRank(ranks.groups, ranks.pathGroups, importEntry.value, ranks.maxPosition); + } + if (typeof rank === 'undefined') { rank = ranks.groups[impType]; } - if (type !== 'import') { + if (importEntry.type !== 'import' && !importEntry.type.startsWith('import:')) { rank += 100; } return rank; } -function registerNode(context, node, name, type, ranks, imported, excludedImportTypes) { - const rank = computeRank(context, ranks, name, type, excludedImportTypes); +function registerNode(context, importEntry, ranks, imported, excludedImportTypes) { + const rank = computeRank(context, ranks, importEntry, excludedImportTypes); if (rank !== -1) { - imported.push({ name, rank, node }); + imported.push(Object.assign({}, importEntry, { rank })); } } function isInVariableDeclarator(node) { - return node && (node.type === 'VariableDeclarator' || isInVariableDeclarator(node.parent)); + return node && ( + node.type === 'VariableDeclarator' || isInVariableDeclarator(node.parent)); } -const types = ['builtin', 'external', 'internal', 'unknown', 'parent', 'sibling', 'index']; +const types = ['builtin', 'external', 'internal', 'unknown', 'parent', 'sibling', 'index', 'object']; // Creates an object with type-rank pairs. // Example: { index: 0, sibling: 1, parent: 1, external: 1, builtin: 2, internal: 2 } @@ -352,7 +350,8 @@ function convertGroupsToRanks(groups) { } group.forEach(function (groupItem) { if (types.indexOf(groupItem) === -1) { - throw new Error('Incorrect configuration of the rule: Unknown type `' + JSON.stringify(groupItem) + '`'); + throw new Error('Incorrect configuration of the rule: Unknown type `' + + JSON.stringify(groupItem) + '`'); } if (res[groupItem] !== undefined) { throw new Error('Incorrect configuration of the rule: `' + groupItem + '` is duplicated'); @@ -376,10 +375,8 @@ function convertPathGroupsForRanks(pathGroups) { const after = {}; const before = {}; - const transformed = pathGroups.map((pathGroup, index) => { - const group = pathGroup.group, - positionString = pathGroup.position; - + const transformed = pathGroups.map((pathGroup, index) => {const + group = pathGroup.group,positionString = pathGroup.position; let position = 0; if (positionString === 'after') { if (!after[group]) { @@ -413,13 +410,14 @@ function convertPathGroupsForRanks(pathGroups) { return { pathGroups: transformed, - maxPosition: maxPosition > 10 ? Math.pow(10, Math.ceil(Math.log10(maxPosition))) : 10 - }; + maxPosition: maxPosition > 10 ? Math.pow(10, Math.ceil(Math.log10(maxPosition))) : 10 }; + } function fixNewLineAfterImport(context, previousImport) { const prevRoot = findRootNode(previousImport.node); - const tokensToEndOfLine = takeTokensAfterWhile(context.getSourceCode(), prevRoot, commentOnSameLineAs(prevRoot)); + const tokensToEndOfLine = takeTokensAfterWhile( + context.getSourceCode(), prevRoot, commentOnSameLineAs(prevRoot)); let endOfLine = prevRoot.range[1]; if (tokensToEndOfLine.length > 0) { @@ -432,7 +430,10 @@ function removeNewLineAfterImport(context, currentImport, previousImport) { const sourceCode = context.getSourceCode(); const prevRoot = findRootNode(previousImport.node); const currRoot = findRootNode(currentImport.node); - const rangeToRemove = [findEndOfLineWithComments(sourceCode, prevRoot), findStartOfLineWithComments(sourceCode, currRoot)]; + const rangeToRemove = [ + findEndOfLineWithComments(sourceCode, prevRoot), + findStartOfLineWithComments(sourceCode, currRoot)]; + if (/^\s*$/.test(sourceCode.text.substring(rangeToRemove[0], rangeToRemove[1]))) { return fixer => fixer.removeRange(rangeToRemove); } @@ -441,7 +442,10 @@ function removeNewLineAfterImport(context, currentImport, previousImport) { function makeNewlinesBetweenReport(context, imported, newlinesBetweenImports) { const getNumberOfEmptyLinesBetween = (currentImport, previousImport) => { - const linesBetweenImports = context.getSourceCode().lines.slice(previousImport.node.loc.end.line, currentImport.node.loc.start.line - 1); + const linesBetweenImports = context.getSourceCode().lines.slice( + previousImport.node.loc.end.line, + currentImport.node.loc.start.line - 1); + return linesBetweenImports.filter(line => !line.trim().length).length; }; @@ -450,26 +454,29 @@ function makeNewlinesBetweenReport(context, imported, newlinesBetweenImports) { imported.slice(1).forEach(function (currentImport) { const emptyLinesBetween = getNumberOfEmptyLinesBetween(currentImport, previousImport); - if (newlinesBetweenImports === 'always' || newlinesBetweenImports === 'always-and-inside-groups') { + if (newlinesBetweenImports === 'always' || + newlinesBetweenImports === 'always-and-inside-groups') { if (currentImport.rank !== previousImport.rank && emptyLinesBetween === 0) { context.report({ node: previousImport.node, message: 'There should be at least one empty line between import groups', - fix: fixNewLineAfterImport(context, previousImport) - }); - } else if (currentImport.rank === previousImport.rank && emptyLinesBetween > 0 && newlinesBetweenImports !== 'always-and-inside-groups') { + fix: fixNewLineAfterImport(context, previousImport) }); + + } else if (currentImport.rank === previousImport.rank && + emptyLinesBetween > 0 && + newlinesBetweenImports !== 'always-and-inside-groups') { context.report({ node: previousImport.node, message: 'There should be no empty line within import group', - fix: removeNewLineAfterImport(context, currentImport, previousImport) - }); + fix: removeNewLineAfterImport(context, currentImport, previousImport) }); + } } else if (emptyLinesBetween > 0) { context.report({ node: previousImport.node, message: 'There should be no empty line between import groups', - fix: removeNewLineAfterImport(context, currentImport, previousImport) - }); + fix: removeNewLineAfterImport(context, currentImport, previousImport) }); + } previousImport = currentImport; @@ -488,89 +495,92 @@ module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('order') - }, + url: (0, _docsUrl2.default)('order') }, + fixable: 'code', - schema: [{ + schema: [ + { type: 'object', properties: { groups: { - type: 'array' - }, + type: 'array' }, + pathGroupsExcludedImportTypes: { - type: 'array' - }, + type: 'array' }, + pathGroups: { type: 'array', items: { type: 'object', properties: { pattern: { - type: 'string' - }, + type: 'string' }, + patternOptions: { - type: 'object' - }, + type: 'object' }, + group: { type: 'string', - enum: types - }, + enum: types }, + position: { type: 'string', - enum: ['after', 'before'] - } - }, - required: ['pattern', 'group'] - } - }, + enum: ['after', 'before'] } }, + + + required: ['pattern', 'group'] } }, + + 'newlines-between': { - enum: ['ignore', 'always', 'always-and-inside-groups', 'never'] - }, + enum: [ + 'ignore', + 'always', + 'always-and-inside-groups', + 'never'] }, + + alphabetize: { type: 'object', properties: { caseInsensitive: { type: 'boolean', - default: false - }, + default: false }, + order: { enum: ['ignore', 'asc', 'desc'], - default: 'ignore' - } - }, - additionalProperties: false - } - }, - additionalProperties: false - }] - }, + default: 'ignore' } }, + + + additionalProperties: false } }, + + + additionalProperties: false }] }, + + + create: function importOrderRule(context) { const options = context.options[0] || {}; const newlinesBetweenImports = options['newlines-between'] || 'ignore'; - const pathGroupsExcludedImportTypes = new Set(options['pathGroupsExcludedImportTypes'] || ['builtin', 'external']); + const pathGroupsExcludedImportTypes = new Set(options['pathGroupsExcludedImportTypes'] || ['builtin', 'external', 'object']); const alphabetize = getAlphabetizeConfig(options); let ranks; - try { - var _convertPathGroupsFor = convertPathGroupsForRanks(options.pathGroups || []); - - const pathGroups = _convertPathGroupsFor.pathGroups, - maxPosition = _convertPathGroupsFor.maxPosition; - + try {var _convertPathGroupsFor = + convertPathGroupsForRanks(options.pathGroups || []);const pathGroups = _convertPathGroupsFor.pathGroups,maxPosition = _convertPathGroupsFor.maxPosition; ranks = { groups: convertGroupsToRanks(options.groups || defaultGroups), pathGroups, - maxPosition - }; + maxPosition }; + } catch (error) { // Malformed configuration return { Program: function (node) { context.report(node, error.message); - } - }; + } }; + } let imported = []; let level = 0; @@ -584,18 +594,69 @@ module.exports = { return { ImportDeclaration: function handleImports(node) { - if (node.specifiers.length) { - // Ignoring unassigned imports + if (node.specifiers.length) {// Ignoring unassigned imports const name = node.source.value; - registerNode(context, node, name, 'import', ranks, imported, pathGroupsExcludedImportTypes); + registerNode( + context, + { + node, + value: name, + displayName: name, + type: 'import' }, + + ranks, + imported, + pathGroupsExcludedImportTypes); + } }, + TSImportEqualsDeclaration: function handleImports(node) { + let displayName; + let value; + let type; + // skip "export import"s + if (node.isExport) { + return; + } + if (node.moduleReference.type === 'TSExternalModuleReference') { + value = node.moduleReference.expression.value; + displayName = value; + type = 'import'; + } else { + value = ''; + displayName = context.getSourceCode().getText(node.moduleReference); + type = 'import:object'; + } + registerNode( + context, + { + node, + value, + displayName, + type }, + + ranks, + imported, + pathGroupsExcludedImportTypes); + + }, CallExpression: function handleRequires(node) { if (level !== 0 || !(0, _staticRequire2.default)(node) || !isInVariableDeclarator(node.parent)) { return; } const name = node.arguments[0].value; - registerNode(context, node, name, 'require', ranks, imported, pathGroupsExcludedImportTypes); + registerNode( + context, + { + node, + value: name, + displayName: name, + type: 'require' }, + + ranks, + imported, + pathGroupsExcludedImportTypes); + }, 'Program:exit': function reportAndReset() { if (newlinesBetweenImports !== 'ignore') { @@ -619,8 +680,7 @@ module.exports = { 'FunctionExpression:exit': decrementLevel, 'ArrowFunctionExpression:exit': decrementLevel, 'BlockStatement:exit': decrementLevel, - 'ObjectExpression:exit': decrementLevel - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9vcmRlci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0R3JvdXBzIiwicmV2ZXJzZSIsImFycmF5IiwibWFwIiwidiIsIm5hbWUiLCJyYW5rIiwibm9kZSIsImdldFRva2Vuc09yQ29tbWVudHNBZnRlciIsInNvdXJjZUNvZGUiLCJjb3VudCIsImN1cnJlbnROb2RlT3JUb2tlbiIsInJlc3VsdCIsImkiLCJnZXRUb2tlbk9yQ29tbWVudEFmdGVyIiwicHVzaCIsImdldFRva2Vuc09yQ29tbWVudHNCZWZvcmUiLCJnZXRUb2tlbk9yQ29tbWVudEJlZm9yZSIsInRha2VUb2tlbnNBZnRlcldoaWxlIiwiY29uZGl0aW9uIiwidG9rZW5zIiwibGVuZ3RoIiwidGFrZVRva2Vuc0JlZm9yZVdoaWxlIiwiZmluZE91dE9mT3JkZXIiLCJpbXBvcnRlZCIsIm1heFNlZW5SYW5rTm9kZSIsImZpbHRlciIsImltcG9ydGVkTW9kdWxlIiwicmVzIiwiZmluZFJvb3ROb2RlIiwicGFyZW50IiwiYm9keSIsImZpbmRFbmRPZkxpbmVXaXRoQ29tbWVudHMiLCJ0b2tlbnNUb0VuZE9mTGluZSIsImNvbW1lbnRPblNhbWVMaW5lQXMiLCJlbmRPZlRva2VucyIsInJhbmdlIiwidGV4dCIsInRva2VuIiwidHlwZSIsImxvYyIsInN0YXJ0IiwibGluZSIsImVuZCIsImZpbmRTdGFydE9mTGluZVdpdGhDb21tZW50cyIsInN0YXJ0T2ZUb2tlbnMiLCJpc1BsYWluUmVxdWlyZU1vZHVsZSIsImRlY2xhcmF0aW9ucyIsImRlY2wiLCJpZCIsImluaXQiLCJjYWxsZWUiLCJhcmd1bWVudHMiLCJpc1BsYWluSW1wb3J0TW9kdWxlIiwic3BlY2lmaWVycyIsImNhbkNyb3NzTm9kZVdoaWxlUmVvcmRlciIsImNhblJlb3JkZXJJdGVtcyIsImZpcnN0Tm9kZSIsInNlY29uZE5vZGUiLCJpbmRleE9mIiwic29ydCIsImZpcnN0SW5kZXgiLCJzZWNvbmRJbmRleCIsIm5vZGVzQmV0d2VlbiIsInNsaWNlIiwibm9kZUJldHdlZW4iLCJmaXhPdXRPZk9yZGVyIiwiY29udGV4dCIsIm9yZGVyIiwiZ2V0U291cmNlQ29kZSIsImZpcnN0Um9vdCIsImZpcnN0Um9vdFN0YXJ0IiwiZmlyc3RSb290RW5kIiwic2Vjb25kUm9vdCIsInNlY29uZFJvb3RTdGFydCIsInNlY29uZFJvb3RFbmQiLCJjYW5GaXgiLCJuZXdDb2RlIiwic3Vic3RyaW5nIiwibWVzc2FnZSIsInJlcG9ydCIsImZpeCIsImZpeGVyIiwicmVwbGFjZVRleHRSYW5nZSIsInJlcG9ydE91dE9mT3JkZXIiLCJvdXRPZk9yZGVyIiwiZm9yRWFjaCIsImltcCIsImZvdW5kIiwiZmluZCIsImhhc0hpZ2hlclJhbmsiLCJpbXBvcnRlZEl0ZW0iLCJtYWtlT3V0T2ZPcmRlclJlcG9ydCIsInJldmVyc2VkSW1wb3J0ZWQiLCJyZXZlcnNlZE9yZGVyIiwiaW1wb3J0c1NvcnRlckFzYyIsImltcG9ydEEiLCJpbXBvcnRCIiwiaW1wb3J0c1NvcnRlckRlc2MiLCJtdXRhdGVSYW5rc1RvQWxwaGFiZXRpemUiLCJhbHBoYWJldGl6ZU9wdGlvbnMiLCJncm91cGVkQnlSYW5rcyIsInJlZHVjZSIsImFjYyIsIkFycmF5IiwiaXNBcnJheSIsImdyb3VwUmFua3MiLCJPYmplY3QiLCJrZXlzIiwic29ydGVyRm4iLCJjb21wYXJhdG9yIiwiY2FzZUluc2Vuc2l0aXZlIiwiYSIsImIiLCJTdHJpbmciLCJ0b0xvd2VyQ2FzZSIsImdyb3VwUmFuayIsIm5ld1JhbmsiLCJhbHBoYWJldGl6ZWRSYW5rcyIsImltcG9ydGVkSXRlbU5hbWUiLCJwYXJzZUludCIsImNvbXB1dGVQYXRoUmFuayIsInJhbmtzIiwicGF0aEdyb3VwcyIsInBhdGgiLCJtYXhQb3NpdGlvbiIsImwiLCJwYXR0ZXJuIiwicGF0dGVybk9wdGlvbnMiLCJncm91cCIsInBvc2l0aW9uIiwibm9jb21tZW50IiwiY29tcHV0ZVJhbmsiLCJleGNsdWRlZEltcG9ydFR5cGVzIiwiaW1wVHlwZSIsImhhcyIsImdyb3VwcyIsInJlZ2lzdGVyTm9kZSIsImlzSW5WYXJpYWJsZURlY2xhcmF0b3IiLCJ0eXBlcyIsImNvbnZlcnRHcm91cHNUb1JhbmtzIiwicmFua09iamVjdCIsImluZGV4IiwiZ3JvdXBJdGVtIiwiRXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwidW5kZWZpbmVkIiwib21pdHRlZFR5cGVzIiwiY29udmVydFBhdGhHcm91cHNGb3JSYW5rcyIsImFmdGVyIiwiYmVmb3JlIiwidHJhbnNmb3JtZWQiLCJwYXRoR3JvdXAiLCJwb3NpdGlvblN0cmluZyIsImFzc2lnbiIsImdyb3VwTGVuZ3RoIiwiZ3JvdXBJbmRleCIsIk1hdGgiLCJtYXgiLCJrZXkiLCJncm91cE5leHRQb3NpdGlvbiIsInBvdyIsImNlaWwiLCJsb2cxMCIsImZpeE5ld0xpbmVBZnRlckltcG9ydCIsInByZXZpb3VzSW1wb3J0IiwicHJldlJvb3QiLCJlbmRPZkxpbmUiLCJpbnNlcnRUZXh0QWZ0ZXJSYW5nZSIsInJlbW92ZU5ld0xpbmVBZnRlckltcG9ydCIsImN1cnJlbnRJbXBvcnQiLCJjdXJyUm9vdCIsInJhbmdlVG9SZW1vdmUiLCJ0ZXN0IiwicmVtb3ZlUmFuZ2UiLCJtYWtlTmV3bGluZXNCZXR3ZWVuUmVwb3J0IiwibmV3bGluZXNCZXR3ZWVuSW1wb3J0cyIsImdldE51bWJlck9mRW1wdHlMaW5lc0JldHdlZW4iLCJsaW5lc0JldHdlZW5JbXBvcnRzIiwibGluZXMiLCJ0cmltIiwiZW1wdHlMaW5lc0JldHdlZW4iLCJnZXRBbHBoYWJldGl6ZUNvbmZpZyIsIm9wdGlvbnMiLCJhbHBoYWJldGl6ZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwiZG9jcyIsInVybCIsImZpeGFibGUiLCJzY2hlbWEiLCJwcm9wZXJ0aWVzIiwicGF0aEdyb3Vwc0V4Y2x1ZGVkSW1wb3J0VHlwZXMiLCJpdGVtcyIsImVudW0iLCJyZXF1aXJlZCIsImRlZmF1bHQiLCJhZGRpdGlvbmFsUHJvcGVydGllcyIsImNyZWF0ZSIsImltcG9ydE9yZGVyUnVsZSIsIlNldCIsImVycm9yIiwiUHJvZ3JhbSIsImxldmVsIiwiaW5jcmVtZW50TGV2ZWwiLCJkZWNyZW1lbnRMZXZlbCIsIkltcG9ydERlY2xhcmF0aW9uIiwiaGFuZGxlSW1wb3J0cyIsInNvdXJjZSIsInZhbHVlIiwiQ2FsbEV4cHJlc3Npb24iLCJoYW5kbGVSZXF1aXJlcyIsInJlcG9ydEFuZFJlc2V0IiwiRnVuY3Rpb25EZWNsYXJhdGlvbiIsIkZ1bmN0aW9uRXhwcmVzc2lvbiIsIkFycm93RnVuY3Rpb25FeHByZXNzaW9uIiwiQmxvY2tTdGF0ZW1lbnQiLCJPYmplY3RFeHByZXNzaW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7OztBQUVBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQSxNQUFNQSxnQkFBZ0IsQ0FBQyxTQUFELEVBQVksVUFBWixFQUF3QixRQUF4QixFQUFrQyxTQUFsQyxFQUE2QyxPQUE3QyxDQUF0Qjs7QUFFQTs7QUFFQSxTQUFTQyxPQUFULENBQWlCQyxLQUFqQixFQUF3QjtBQUN0QixTQUFPQSxNQUFNQyxHQUFOLENBQVUsVUFBVUMsQ0FBVixFQUFhO0FBQzVCLFdBQU87QUFDTEMsWUFBTUQsRUFBRUMsSUFESDtBQUVMQyxZQUFNLENBQUNGLEVBQUVFLElBRko7QUFHTEMsWUFBTUgsRUFBRUc7QUFISCxLQUFQO0FBS0QsR0FOTSxFQU1KTixPQU5JLEVBQVA7QUFPRDs7QUFFRCxTQUFTTyx3QkFBVCxDQUFrQ0MsVUFBbEMsRUFBOENGLElBQTlDLEVBQW9ERyxLQUFwRCxFQUEyRDtBQUN6RCxNQUFJQyxxQkFBcUJKLElBQXpCO0FBQ0EsUUFBTUssU0FBUyxFQUFmO0FBQ0EsT0FBSyxJQUFJQyxJQUFJLENBQWIsRUFBZ0JBLElBQUlILEtBQXBCLEVBQTJCRyxHQUEzQixFQUFnQztBQUM5QkYseUJBQXFCRixXQUFXSyxzQkFBWCxDQUFrQ0gsa0JBQWxDLENBQXJCO0FBQ0EsUUFBSUEsc0JBQXNCLElBQTFCLEVBQWdDO0FBQzlCO0FBQ0Q7QUFD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LElBQWUsQ0FBQyw2QkFBZ0J0TSxJQUFoQixDQUFoQixJQUF5QyxDQUFDbUksdUJBQXVCbkksS0FBS3VCLE1BQTVCLENBQTlDLEVBQW1GO0FBQ2pGO0FBQ0Q7QUFDRCxjQUFNekIsT0FBT0UsS0FBSzZDLFNBQUwsQ0FBZSxDQUFmLEVBQWtCK0osS0FBL0I7QUFDQTFFLHFCQUNFdEUsT0FERixFQUVFNUQsSUFGRixFQUdFRixJQUhGLEVBSUUsU0FKRixFQUtFcUgsS0FMRixFQU1FbEcsUUFORixFQU9FMEssNkJBUEY7QUFTRCxPQTdCSTtBQThCTCxzQkFBZ0IsU0FBU29CLGNBQVQsR0FBMEI7QUFDeEMsWUFBSXJDLDJCQUEyQixRQUEvQixFQUF5QztBQUN2Q0Qsb0NBQTBCN0csT0FBMUIsRUFBbUMzQyxRQUFuQyxFQUE2Q3lKLHNCQUE3QztBQUNEOztBQUVELFlBQUlRLFlBQVlySCxLQUFaLEtBQXNCLFFBQTFCLEVBQW9DO0FBQ2xDK0IsbUNBQXlCM0UsUUFBekIsRUFBbUNpSyxXQUFuQztBQUNEOztBQUVEN0YsNkJBQXFCekIsT0FBckIsRUFBOEIzQyxRQUE5Qjs7QUFFQUEsbUJBQVcsRUFBWDtBQUNELE9BMUNJO0FBMkNMK0wsMkJBQXFCVCxjQTNDaEI7QUE0Q0xVLDBCQUFvQlYsY0E1Q2Y7QUE2Q0xXLCtCQUF5QlgsY0E3Q3BCO0FBOENMWSxzQkFBZ0JaLGNBOUNYO0FBK0NMYSx3QkFBa0JiLGNBL0NiO0FBZ0RMLGtDQUE0QkMsY0FoRHZCO0FBaURMLGlDQUEyQkEsY0FqRHRCO0FBa0RMLHNDQUFnQ0EsY0FsRDNCO0FBbURMLDZCQUF1QkEsY0FuRGxCO0FBb0RMLCtCQUF5QkE7QUFwRHBCLEtBQVA7QUFzREQ7QUEzSmMsQ0FBakIiLCJmaWxlIjoib3JkZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCdcblxuaW1wb3J0IG1pbmltYXRjaCBmcm9tICdtaW5pbWF0Y2gnXG5pbXBvcnQgaW1wb3J0VHlwZSBmcm9tICcuLi9jb3JlL2ltcG9ydFR5cGUnXG5pbXBvcnQgaXNTdGF0aWNSZXF1aXJlIGZyb20gJy4uL2NvcmUvc3RhdGljUmVxdWlyZSdcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbmNvbnN0IGRlZmF1bHRHcm91cHMgPSBbJ2J1aWx0aW4nLCAnZXh0ZXJuYWwnLCAncGFyZW50JywgJ3NpYmxpbmcnLCAnaW5kZXgnXVxuXG4vLyBSRVBPUlRJTkcgQU5EIEZJWElOR1xuXG5mdW5jdGlvbiByZXZlcnNlKGFycmF5KSB7XG4gIHJldHVybiBhcnJheS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmFtZTogdi5uYW1lLFxuICAgICAgcmFuazogLXYucmFuayxcbiAgICAgIG5vZGU6IHYubm9kZSxcbiAgICB9XG4gIH0pLnJldmVyc2UoKVxufVxuXG5mdW5jdGlvbiBnZXRUb2tlbnNPckNvbW1lbnRzQWZ0ZXIoc291cmNlQ29kZSwgbm9kZSwgY291bnQpIHtcbiAgbGV0IGN1cnJlbnROb2RlT3JUb2tlbiA9IG5vZGVcbiAgY29uc3QgcmVzdWx0ID0gW11cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XG4gICAgY3VycmVudE5vZGVPclRva2VuID0gc291cmNlQ29kZS5nZXRUb2tlbk9yQ29tbWVudEFmdGVyKGN1cnJlbnROb2RlT3JUb2tlbilcbiAgICBpZiAoY3VycmVudE5vZGVPclRva2VuID09IG51bGwpIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIHJlc3VsdC5wdXNoKGN1cnJlbnROb2RlT3JUb2tlbilcbiAgfVxuICByZXR1cm4gcmVzdWx0XG59XG5cbmZ1bmN0aW9uIGdldFRva2Vuc09yQ29tbWVudHNCZWZvcmUoc291cmNlQ29kZSwgbm9kZSwgY291bnQpIHtcbiAgbGV0IGN1cnJlbnROb2RlT3JUb2tlbiA9IG5vZGVcbiAgY29uc3QgcmVzdWx0ID0gW11cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XG4gICAgY3VycmVudE5vZGVPclRva2VuID0gc291cmNlQ29kZS5nZXRUb2tlbk9yQ29tbWVudEJlZm9yZShjdXJyZW50Tm9kZU9yVG9rZW4pXG4gICAgaWYgKGN1cnJlbnROb2RlT3JUb2tlbiA9PSBudWxsKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICByZXN1bHQucHVzaChjdXJyZW50Tm9kZU9yVG9rZW4pXG4gIH1cbiAgcmV0dXJuIHJlc3VsdC5yZXZlcnNlKClcbn1cblxuZnVuY3Rpb24gdGFrZVRva2Vuc0FmdGVyV2hpbGUoc291cmNlQ29kZSwgbm9kZSwgY29uZGl0aW9uKSB7XG4gIGNvbnN0IHRva2VucyA9IGdldFRva2Vuc09yQ29tbWVudHNBZnRlcihzb3VyY2VDb2RlLCBub2RlLCAxMDApXG4gIGNvbnN0IHJlc3VsdCA9IFtdXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdG9rZW5zLmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKGNvbmRpdGlvbih0b2tlbnNbaV0pKSB7XG4gICAgICByZXN1bHQucHVzaCh0b2tlbnNbaV0pXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG5mdW5jdGlvbiB0YWtlVG9rZW5zQmVmb3JlV2hpbGUoc291cmNlQ29kZSwgbm9kZSwgY29uZGl0aW9uKSB7XG4gIGNvbnN0IHRva2VucyA9IGdldFRva2Vuc09yQ29tbWVudHNCZWZvcmUoc291cmNlQ29kZSwgbm9kZSwgMTAwKVxuICBjb25zdCByZXN1bHQgPSBbXVxuICBmb3IgKGxldCBpID0gdG9rZW5zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgaWYgKGNvbmRpdGlvbih0b2tlbnNbaV0pKSB7XG4gICAgICByZXN1bHQucHVzaCh0b2tlbnNbaV0pXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdC5yZXZlcnNlKClcbn1cblxuZnVuY3Rpb24gZmluZE91dE9mT3JkZXIoaW1wb3J0ZWQpIHtcbiAgaWYgKGltcG9ydGVkLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBbXVxuICB9XG4gIGxldCBtYXhTZWVuUmFua05vZGUgPSBpbXBvcnRlZFswXVxuICByZXR1cm4gaW1wb3J0ZWQuZmlsdGVyKGZ1bmN0aW9uIChpbXBvcnRlZE1vZHVsZSkge1xuICAgIGNvbnN0IHJlcyA9IGltcG9ydGVkTW9kdWxlLnJhbmsgPCBtYXhTZWVuUmFua05vZGUucmFua1xuICAgIGlmIChtYXhTZWVuUmFua05vZGUucmFuayA8IGltcG9ydGVkTW9kdWxlLnJhbmspIHtcbiAgICAgIG1heFNlZW5SYW5rTm9kZSA9IGltcG9ydGVkTW9kdWxlXG4gICAgfVxuICAgIHJldHVybiByZXNcbiAgfSlcbn1cblxuZnVuY3Rpb24gZmluZFJvb3ROb2RlKG5vZGUpIHtcbiAgbGV0IHBhcmVudCA9IG5vZGVcbiAgd2hpbGUgKHBhcmVudC5wYXJlbnQgIT0gbnVsbCAmJiBwYXJlbnQucGFyZW50LmJvZHkgPT0gbnVsbCkge1xuICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnRcbiAgfVxuICByZXR1cm4gcGFyZW50XG59XG5cbmZ1bmN0aW9uIGZpbmRFbmRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgbm9kZSkge1xuICBjb25zdCB0b2tlbnNUb0VuZE9mTGluZSA9IHRha2VUb2tlbnNBZnRlcldoaWxlKHNvdXJjZUNvZGUsIG5vZGUsIGNvbW1lbnRPblNhbWVMaW5lQXMobm9kZSkpXG4gIGxldCBlbmRPZlRva2VucyA9IHRva2Vuc1RvRW5kT2ZMaW5lLmxlbmd0aCA+IDBcbiAgICA/IHRva2Vuc1RvRW5kT2ZMaW5lW3Rva2Vuc1RvRW5kT2ZMaW5lLmxlbmd0aCAtIDFdLnJhbmdlWzFdXG4gICAgOiBub2RlLnJhbmdlWzFdXG4gIGxldCByZXN1bHQgPSBlbmRPZlRva2Vuc1xuICBmb3IgKGxldCBpID0gZW5kT2ZUb2tlbnM7IGkgPCBzb3VyY2VDb2RlLnRleHQubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAoc291cmNlQ29kZS50ZXh0W2ldID09PSAnXFxuJykge1xuICAgICAgcmVzdWx0ID0gaSArIDFcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGlmIChzb3VyY2VDb2RlLnRleHRbaV0gIT09ICcgJyAmJiBzb3VyY2VDb2RlLnRleHRbaV0gIT09ICdcXHQnICYmIHNvdXJjZUNvZGUudGV4dFtpXSAhPT0gJ1xccicpIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIHJlc3VsdCA9IGkgKyAxXG4gIH1cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG5mdW5jdGlvbiBjb21tZW50T25TYW1lTGluZUFzKG5vZGUpIHtcbiAgcmV0dXJuIHRva2VuID0+ICh0b2tlbi50eXBlID09PSAnQmxvY2snIHx8ICB0b2tlbi50eXBlID09PSAnTGluZScpICYmXG4gICAgICB0b2tlbi5sb2Muc3RhcnQubGluZSA9PT0gdG9rZW4ubG9jLmVuZC5saW5lICYmXG4gICAgICB0b2tlbi5sb2MuZW5kLmxpbmUgPT09IG5vZGUubG9jLmVuZC5saW5lXG59XG5cbmZ1bmN0aW9uIGZpbmRTdGFydE9mTGluZVdpdGhDb21tZW50cyhzb3VyY2VDb2RlLCBub2RlKSB7XG4gIGNvbnN0IHRva2Vuc1RvRW5kT2ZMaW5lID0gdGFrZVRva2Vuc0JlZm9yZVdoaWxlKHNvdXJjZUNvZGUsIG5vZGUsIGNvbW1lbnRPblNhbWVMaW5lQXMobm9kZSkpXG4gIGxldCBzdGFydE9mVG9rZW5zID0gdG9rZW5zVG9FbmRPZkxpbmUubGVuZ3RoID4gMCA/IHRva2Vuc1RvRW5kT2ZMaW5lWzBdLnJhbmdlWzBdIDogbm9kZS5yYW5nZVswXVxuICBsZXQgcmVzdWx0ID0gc3RhcnRPZlRva2Vuc1xuICBmb3IgKGxldCBpID0gc3RhcnRPZlRva2VucyAtIDE7IGkgPiAwOyBpLS0pIHtcbiAgICBpZiAoc291cmNlQ29kZS50ZXh0W2ldICE9PSAnICcgJiYgc291cmNlQ29kZS50ZXh0W2ldICE9PSAnXFx0Jykge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgcmVzdWx0ID0gaVxuICB9XG4gIHJldHVybiByZXN1bHRcbn1cblxuZnVuY3Rpb24gaXNQbGFpblJlcXVpcmVNb2R1bGUobm9kZSkge1xuICBpZiAobm9kZS50eXBlICE9PSAnVmFyaWFibGVEZWNsYXJhdGlvbicpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuICBpZiAobm9kZS5kZWNsYXJhdGlvbnMubGVuZ3RoICE9PSAxKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbiAgY29uc3QgZGVjbCA9IG5vZGUuZGVjbGFyYXRpb25zWzBdXG4gIGNvbnN0IHJlc3VsdCA9IGRlY2wuaWQgJiZcbiAgICAoZGVjbC5pZC50eXBlID09PSAnSWRlbnRpZmllcicgfHwgZGVjbC5pZC50eXBlID09PSAnT2JqZWN0UGF0dGVybicpICYmXG4gICAgZGVjbC5pbml0ICE9IG51bGwgJiZcbiAgICBkZWNsLmluaXQudHlwZSA9PT0gJ0NhbGxFeHByZXNzaW9uJyAmJlxuICAgIGRlY2wuaW5pdC5jYWxsZWUgIT0gbnVsbCAmJlxuICAgIGRlY2wuaW5pdC5jYWxsZWUubmFtZSA9PT0gJ3JlcXVpcmUnICYmXG4gICAgZGVjbC5pbml0LmFyZ3VtZW50cyAhPSBudWxsICYmXG4gICAgZGVjbC5pbml0LmFyZ3VtZW50cy5sZW5ndGggPT09IDEgJiZcbiAgICBkZWNsLmluaXQuYXJndW1lbnRzWzBdLnR5cGUgPT09ICdMaXRlcmFsJ1xuICByZXR1cm4gcmVzdWx0XG59XG5cbmZ1bmN0aW9uIGlzUGxhaW5JbXBvcnRNb2R1bGUobm9kZSkge1xuICByZXR1cm4gbm9kZS50eXBlID09PSAnSW1wb3J0RGVjbGFyYXRpb24nICYmIG5vZGUuc3BlY2lmaWVycyAhPSBudWxsICYmIG5vZGUuc3BlY2lmaWVycy5sZW5ndGggPiAwXG59XG5cbmZ1bmN0aW9uIGNhbkNyb3NzTm9kZVdoaWxlUmVvcmRlcihub2RlKSB7XG4gIHJldHVybiBpc1BsYWluUmVxdWlyZU1vZHVsZShub2RlKSB8fCBpc1BsYWluSW1wb3J0TW9kdWxlKG5vZGUpXG59XG5cbmZ1bmN0aW9uIGNhblJlb3JkZXJJdGVtcyhmaXJzdE5vZGUsIHNlY29uZE5vZGUpIHtcbiAgY29uc3QgcGFyZW50ID0gZmlyc3ROb2RlLnBhcmVudFxuICBjb25zdCBbZmlyc3RJbmRleCwgc2Vjb25kSW5kZXhdID0gW1xuICAgIHBhcmVudC5ib2R5LmluZGV4T2YoZmlyc3ROb2RlKSxcbiAgICBwYXJlbnQuYm9keS5pbmRleE9mKHNlY29uZE5vZGUpLFxuICBdLnNvcnQoKVxuICBjb25zdCBub2Rlc0JldHdlZW4gPSBwYXJlbnQuYm9keS5zbGljZShmaXJzdEluZGV4LCBzZWNvbmRJbmRleCArIDEpXG4gIGZvciAodmFyIG5vZGVCZXR3ZWVuIG9mIG5vZGVzQmV0d2Vlbikge1xuICAgIGlmICghY2FuQ3Jvc3NOb2RlV2hpbGVSZW9yZGVyKG5vZGVCZXR3ZWVuKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbmZ1bmN0aW9uIGZpeE91dE9mT3JkZXIoY29udGV4dCwgZmlyc3ROb2RlLCBzZWNvbmROb2RlLCBvcmRlcikge1xuICBjb25zdCBzb3VyY2VDb2RlID0gY29udGV4dC5nZXRTb3VyY2VDb2RlKClcblxuICBjb25zdCBmaXJzdFJvb3QgPSBmaW5kUm9vdE5vZGUoZmlyc3ROb2RlLm5vZGUpXG4gIGNvbnN0IGZpcnN0Um9vdFN0YXJ0ID0gZmluZFN0YXJ0T2ZMaW5lV2l0aENvbW1lbnRzKHNvdXJjZUNvZGUsIGZpcnN0Um9vdClcbiAgY29uc3QgZmlyc3RSb290RW5kID0gZmluZEVuZE9mTGluZVdpdGhDb21tZW50cyhzb3VyY2VDb2RlLCBmaXJzdFJvb3QpXG5cbiAgY29uc3Qgc2Vjb25kUm9vdCA9IGZpbmRSb290Tm9kZShzZWNvbmROb2RlLm5vZGUpXG4gIGNvbnN0IHNlY29uZFJvb3RTdGFydCA9IGZpbmRTdGFydE9mTGluZVdpdGhDb21tZW50cyhzb3VyY2VDb2RlLCBzZWNvbmRSb290KVxuICBjb25zdCBzZWNvbmRSb290RW5kID0gZmluZEVuZE9mTGluZVdpdGhDb21tZW50cyhzb3VyY2VDb2RlLCBzZWNvbmRSb290KVxuICBjb25zdCBjYW5GaXggPSBjYW5SZW9yZGVySXRlbXMoZmlyc3RSb290LCBzZWNvbmRSb290KVxuXG4gIGxldCBuZXdDb2RlID0gc291cmNlQ29kZS50ZXh0LnN1YnN0cmluZyhzZWNvbmRSb290U3RhcnQsIHNlY29uZFJvb3RFbmQpXG4gIGlmIChuZXdDb2RlW25ld0NvZGUubGVuZ3RoIC0gMV0gIT09ICdcXG4nKSB7XG4gICAgbmV3Q29kZSA9IG5ld0NvZGUgKyAnXFxuJ1xuICB9XG5cbiAgY29uc3QgbWVzc2FnZSA9ICdgJyArIHNlY29uZE5vZGUubmFtZSArICdgIGltcG9ydCBzaG91bGQgb2NjdXIgJyArIG9yZGVyICtcbiAgICAgICcgaW1wb3J0IG9mIGAnICsgZmlyc3ROb2RlLm5hbWUgKyAnYCdcblxuICBpZiAob3JkZXIgPT09ICdiZWZvcmUnKSB7XG4gICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgbm9kZTogc2Vjb25kTm9kZS5ub2RlLFxuICAgICAgbWVzc2FnZTogbWVzc2FnZSxcbiAgICAgIGZpeDogY2FuRml4ICYmIChmaXhlciA9PlxuICAgICAgICBmaXhlci5yZXBsYWNlVGV4dFJhbmdlKFxuICAgICAgICAgIFtmaXJzdFJvb3RTdGFydCwgc2Vjb25kUm9vdEVuZF0sXG4gICAgICAgICAgbmV3Q29kZSArIHNvdXJjZUNvZGUudGV4dC5zdWJzdHJpbmcoZmlyc3RSb290U3RhcnQsIHNlY29uZFJvb3RTdGFydClcbiAgICAgICAgKSksXG4gICAgfSlcbiAgfSBlbHNlIGlmIChvcmRlciA9PT0gJ2FmdGVyJykge1xuICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgIG5vZGU6IHNlY29uZE5vZGUubm9kZSxcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UsXG4gICAgICBmaXg6IGNhbkZpeCAmJiAoZml4ZXIgPT5cbiAgICAgICAgZml4ZXIucmVwbGFjZVRleHRSYW5nZShcbiAgICAgICAgICBbc2Vjb25kUm9vdFN0YXJ0LCBmaXJzdFJvb3RFbmRdLFxuICAgICAgICAgIHNvdXJjZUNvZGUudGV4dC5zdWJzdHJpbmcoc2Vjb25kUm9vdEVuZCwgZmlyc3RSb290RW5kKSArIG5ld0NvZGVcbiAgICAgICAgKSksXG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiByZXBvcnRPdXRPZk9yZGVyKGNvbnRleHQsIGltcG9ydGVkLCBvdXRPZk9yZGVyLCBvcmRlcikge1xuICBvdXRPZk9yZGVyLmZvckVhY2goZnVuY3Rpb24gKGltcCkge1xuICAgIGNvbnN0IGZvdW5kID0gaW1wb3J0ZWQuZmluZChmdW5jdGlvbiBoYXNIaWdoZXJSYW5rKGltcG9ydGVkSXRlbSkge1xuICAgICAgcmV0dXJuIGltcG9ydGVkSXRlbS5yYW5rID4gaW1wLnJhbmtcbiAgICB9KVxuICAgIGZpeE91dE9mT3JkZXIoY29udGV4dCwgZm91bmQsIGltcCwgb3JkZXIpXG4gIH0pXG59XG5cbmZ1bmN0aW9uIG1ha2VPdXRPZk9yZGVyUmVwb3J0KGNvbnRleHQsIGltcG9ydGVkKSB7XG4gIGNvbnN0IG91dE9mT3JkZXIgPSBmaW5kT3V0T2ZPcmRlcihpbXBvcnRlZClcbiAgaWYgKCFvdXRPZk9yZGVyLmxlbmd0aCkge1xuICAgIHJldHVyblxuICB9XG4gIC8vIFRoZXJlIGFyZSB0aGluZ3MgdG8gcmVwb3J0LiBUcnkgdG8gbWluaW1pemUgdGhlIG51bWJlciBvZiByZXBvcnRlZCBlcnJvcnMuXG4gIGNvbnN0IHJldmVyc2VkSW1wb3J0ZWQgPSByZXZlcnNlKGltcG9ydGVkKVxuICBjb25zdCByZXZlcnNlZE9yZGVyID0gZmluZE91dE9mT3JkZXIocmV2ZXJzZWRJbXBvcnRlZClcbiAgaWYgKHJldmVyc2VkT3JkZXIubGVuZ3RoIDwgb3V0T2ZPcmRlci5sZW5ndGgpIHtcbiAgICByZXBvcnRPdXRPZk9yZGVyKGNvbnRleHQsIHJldmVyc2VkSW1wb3J0ZWQsIHJldmVyc2VkT3JkZXIsICdhZnRlcicpXG4gICAgcmV0dXJuXG4gIH1cbiAgcmVwb3J0T3V0T2ZPcmRlcihjb250ZXh0LCBpbXBvcnRlZCwgb3V0T2ZPcmRlciwgJ2JlZm9yZScpXG59XG5cbmZ1bmN0aW9uIGltcG9ydHNTb3J0ZXJBc2MoaW1wb3J0QSwgaW1wb3J0Qikge1xuICBpZiAoaW1wb3J0QSA8IGltcG9ydEIpIHtcbiAgICByZXR1cm4gLTFcbiAgfVxuXG4gIGlmIChpbXBvcnRBID4gaW1wb3J0Qikge1xuICAgIHJldHVybiAxXG4gIH1cblxuICByZXR1cm4gMFxufVxuXG5mdW5jdGlvbiBpbXBvcnRzU29ydGVyRGVzYyhpbXBvcnRBLCBpbXBvcnRCKSB7XG4gIGlmIChpbXBvcnRBIDwgaW1wb3J0Qikge1xuICAgIHJldHVybiAxXG4gIH1cblxuICBpZiAoaW1wb3J0QSA+IGltcG9ydEIpIHtcbiAgICByZXR1cm4gLTFcbiAgfVxuXG4gIHJldHVybiAwXG59XG5cbmZ1bmN0aW9uIG11dGF0ZVJhbmtzVG9BbHBoYWJldGl6ZShpbXBvcnRlZCwgYWxwaGFiZXRpemVPcHRpb25zKSB7XG4gIGNvbnN0IGdyb3VwZWRCeVJhbmtzID0gaW1wb3J0ZWQucmVkdWNlKGZ1bmN0aW9uKGFjYywgaW1wb3J0ZWRJdGVtKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGFjY1tpbXBvcnRlZEl0ZW0ucmFua10pKSB7XG4gICAgICBhY2NbaW1wb3J0ZWRJdGVtLnJhbmtdID0gW11cbiAgICB9XG4gICAgYWNjW2ltcG9ydGVkSXRlbS5yYW5rXS5wdXNoKGltcG9ydGVkSXRlbS5uYW1lKVxuICAgIHJldHVybiBhY2NcbiAgfSwge30pXG5cbiAgY29uc3QgZ3JvdXBSYW5rcyA9IE9iamVjdC5rZXlzKGdyb3VwZWRCeVJhbmtzKVxuXG4gIGNvbnN0IHNvcnRlckZuID0gYWxwaGFiZXRpemVPcHRpb25zLm9yZGVyID09PSAnYXNjJyA/IGltcG9ydHNTb3J0ZXJBc2MgOiBpbXBvcnRzU29ydGVyRGVzY1xuICBjb25zdCBjb21wYXJhdG9yID0gYWxwaGFiZXRpemVPcHRpb25zLmNhc2VJbnNlbnNpdGl2ZSA/IChhLCBiKSA9PiBzb3J0ZXJGbihTdHJpbmcoYSkudG9Mb3dlckNhc2UoKSwgU3RyaW5nKGIpLnRvTG93ZXJDYXNlKCkpIDogKGEsIGIpID0+IHNvcnRlckZuKGEsIGIpXG4gIC8vIHNvcnQgaW1wb3J0cyBsb2NhbGx5IHdpdGhpbiB0aGVpciBncm91cFxuICBncm91cFJhbmtzLmZvckVhY2goZnVuY3Rpb24oZ3JvdXBSYW5rKSB7XG4gICAgZ3JvdXBlZEJ5UmFua3NbZ3JvdXBSYW5rXS5zb3J0KGNvbXBhcmF0b3IpXG4gIH0pXG5cbiAgLy8gYXNzaWduIGdsb2JhbGx5IHVuaXF1ZSByYW5rIHRvIGVhY2ggaW1wb3J0XG4gIGxldCBuZXdSYW5rID0gMFxuICBjb25zdCBhbHBoYWJldGl6ZWRSYW5rcyA9IGdyb3VwUmFua3Muc29ydCgpLnJlZHVjZShmdW5jdGlvbihhY2MsIGdyb3VwUmFuaykge1xuICAgIGdyb3VwZWRCeVJhbmtzW2dyb3VwUmFua10uZm9yRWFjaChmdW5jdGlvbihpbXBvcnRlZEl0ZW1OYW1lKSB7XG4gICAgICBhY2NbaW1wb3J0ZWRJdGVtTmFtZV0gPSBwYXJzZUludChncm91cFJhbmssIDEwKSArIG5ld1JhbmtcbiAgICAgIG5ld1JhbmsgKz0gMVxuICAgIH0pXG4gICAgcmV0dXJuIGFjY1xuICB9LCB7fSlcblxuICAvLyBtdXRhdGUgdGhlIG9yaWdpbmFsIGdyb3VwLXJhbmsgd2l0aCBhbHBoYWJldGl6ZWQtcmFua1xuICBpbXBvcnRlZC5mb3JFYWNoKGZ1bmN0aW9uKGltcG9ydGVkSXRlbSkge1xuICAgIGltcG9ydGVkSXRlbS5yYW5rID0gYWxwaGFiZXRpemVkUmFua3NbaW1wb3J0ZWRJdGVtLm5hbWVdXG4gIH0pXG59XG5cbi8vIERFVEVDVElOR1xuXG5mdW5jdGlvbiBjb21wdXRlUGF0aFJhbmsocmFua3MsIHBhdGhHcm91cHMsIHBhdGgsIG1heFBvc2l0aW9uKSB7XG4gIGZvciAobGV0IGkgPSAwLCBsID0gcGF0aEdyb3Vwcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICBjb25zdCB7IHBhdHRlcm4sIHBhdHRlcm5PcHRpb25zLCBncm91cCwgcG9zaXRpb24gPSAxIH0gPSBwYXRoR3JvdXBzW2ldXG4gICAgaWYgKG1pbmltYXRjaChwYXRoLCBwYXR0ZXJuLCBwYXR0ZXJuT3B0aW9ucyB8fCB7IG5vY29tbWVudDogdHJ1ZSB9KSkge1xuICAgICAgcmV0dXJuIHJhbmtzW2dyb3VwXSArIChwb3NpdGlvbiAvIG1heFBvc2l0aW9uKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBjb21wdXRlUmFuayhjb250ZXh0LCByYW5rcywgbmFtZSwgdHlwZSwgZXhjbHVkZWRJbXBvcnRUeXBlcykge1xuICBjb25zdCBpbXBUeXBlID0gaW1wb3J0VHlwZShuYW1lLCBjb250ZXh0KVxuICBsZXQgcmFua1xuICBpZiAoIWV4Y2x1ZGVkSW1wb3J0VHlwZXMuaGFzKGltcFR5cGUpKSB7XG4gICAgcmFuayA9IGNvbXB1dGVQYXRoUmFuayhyYW5rcy5ncm91cHMsIHJhbmtzLnBhdGhHcm91cHMsIG5hbWUsIHJhbmtzLm1heFBvc2l0aW9uKVxuICB9XG4gIGlmICghcmFuaykge1xuICAgIHJhbmsgPSByYW5rcy5ncm91cHNbaW1wVHlwZV1cbiAgfVxuICBpZiAodHlwZSAhPT0gJ2ltcG9ydCcpIHtcbiAgICByYW5rICs9IDEwMFxuICB9XG5cbiAgcmV0dXJuIHJhbmtcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJOb2RlKGNvbnRleHQsIG5vZGUsIG5hbWUsIHR5cGUsIHJhbmtzLCBpbXBvcnRlZCwgZXhjbHVkZWRJbXBvcnRUeXBlcykge1xuICBjb25zdCByYW5rID0gY29tcHV0ZVJhbmsoY29udGV4dCwgcmFua3MsIG5hbWUsIHR5cGUsIGV4Y2x1ZGVkSW1wb3J0VHlwZXMpXG4gIGlmIChyYW5rICE9PSAtMSkge1xuICAgIGltcG9ydGVkLnB1c2goe25hbWUsIHJhbmssIG5vZGV9KVxuICB9XG59XG5cbmZ1bmN0aW9uIGlzSW5WYXJpYWJsZURlY2xhcmF0b3Iobm9kZSkge1xuICByZXR1cm4gbm9kZSAmJlxuICAgIChub2RlLnR5cGUgPT09ICdWYXJpYWJsZURlY2xhcmF0b3InIHx8IGlzSW5WYXJpYWJsZURlY2xhcmF0b3Iobm9kZS5wYXJlbnQpKVxufVxuXG5jb25zdCB0eXBlcyA9IFsnYnVpbHRpbicsICdleHRlcm5hbCcsICdpbnRlcm5hbCcsICd1bmtub3duJywgJ3BhcmVudCcsICdzaWJsaW5nJywgJ2luZGV4J11cblxuLy8gQ3JlYXRlcyBhbiBvYmplY3Qgd2l0aCB0eXBlLXJhbmsgcGFpcnMuXG4vLyBFeGFtcGxlOiB7IGluZGV4OiAwLCBzaWJsaW5nOiAxLCBwYXJlbnQ6IDEsIGV4dGVybmFsOiAxLCBidWlsdGluOiAyLCBpbnRlcm5hbDogMiB9XG4vLyBXaWxsIHRocm93IGFuIGVycm9yIGlmIGl0IGNvbnRhaW5zIGEgdHlwZSB0aGF0IGRvZXMgbm90IGV4aXN0LCBvciBoYXMgYSBkdXBsaWNhdGVcbmZ1bmN0aW9uIGNvbnZlcnRHcm91cHNUb1JhbmtzKGdyb3Vwcykge1xuICBjb25zdCByYW5rT2JqZWN0ID0gZ3JvdXBzLnJlZHVjZShmdW5jdGlvbihyZXMsIGdyb3VwLCBpbmRleCkge1xuICAgIGlmICh0eXBlb2YgZ3JvdXAgPT09ICdzdHJpbmcnKSB7XG4gICAgICBncm91cCA9IFtncm91cF1cbiAgICB9XG4gICAgZ3JvdXAuZm9yRWFjaChmdW5jdGlvbihncm91cEl0ZW0pIHtcbiAgICAgIGlmICh0eXBlcy5pbmRleE9mKGdyb3VwSXRlbSkgPT09IC0xKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW5jb3JyZWN0IGNvbmZpZ3VyYXRpb24gb2YgdGhlIHJ1bGU6IFVua25vd24gdHlwZSBgJyArXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkoZ3JvdXBJdGVtKSArICdgJylcbiAgICAgIH1cbiAgICAgIGlmIChyZXNbZ3JvdXBJdGVtXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW5jb3JyZWN0IGNvbmZpZ3VyYXRpb24gb2YgdGhlIHJ1bGU6IGAnICsgZ3JvdXBJdGVtICsgJ2AgaXMgZHVwbGljYXRlZCcpXG4gICAgICB9XG4gICAgICByZXNbZ3JvdXBJdGVtXSA9IGluZGV4XG4gICAgfSlcbiAgICByZXR1cm4gcmVzXG4gIH0sIHt9KVxuXG4gIGNvbnN0IG9taXR0ZWRUeXBlcyA9IHR5cGVzLmZpbHRlcihmdW5jdGlvbih0eXBlKSB7XG4gICAgcmV0dXJuIHJhbmtPYmplY3RbdHlwZV0gPT09IHVuZGVmaW5lZFxuICB9KVxuXG4gIHJldHVybiBvbWl0dGVkVHlwZXMucmVkdWNlKGZ1bmN0aW9uKHJlcywgdHlwZSkge1xuICAgIHJlc1t0eXBlXSA9IGdyb3Vwcy5sZW5ndGhcbiAgICByZXR1cm4gcmVzXG4gIH0sIHJhbmtPYmplY3QpXG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRQYXRoR3JvdXBzRm9yUmFua3MocGF0aEdyb3Vwcykge1xuICBjb25zdCBhZnRlciA9IHt9XG4gIGNvbnN0IGJlZm9yZSA9IHt9XG5cbiAgY29uc3QgdHJhbnNmb3JtZWQgPSBwYXRoR3JvdXBzLm1hcCgocGF0aEdyb3VwLCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHsgZ3JvdXAsIHBvc2l0aW9uOiBwb3NpdGlvblN0cmluZyB9ID0gcGF0aEdyb3VwXG4gICAgbGV0IHBvc2l0aW9uID0gMFxuICAgIGlmIChwb3NpdGlvblN0cmluZyA9PT0gJ2FmdGVyJykge1xuICAgICAgaWYgKCFhZnRlcltncm91cF0pIHtcbiAgICAgICAgYWZ0ZXJbZ3JvdXBdID0gMVxuICAgICAgfVxuICAgICAgcG9zaXRpb24gPSBhZnRlcltncm91cF0rK1xuICAgIH0gZWxzZSBpZiAocG9zaXRpb25TdHJpbmcgPT09ICdiZWZvcmUnKSB7XG4gICAgICBpZiAoIWJlZm9yZVtncm91cF0pIHtcbiAgICAgICAgYmVmb3JlW2dyb3VwXSA9IFtdXG4gICAgICB9XG4gICAgICBiZWZvcmVbZ3JvdXBdLnB1c2goaW5kZXgpXG4gICAgfVxuXG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHBhdGhHcm91cCwgeyBwb3NpdGlvbiB9KVxuICB9KVxuXG4gIGxldCBtYXhQb3NpdGlvbiA9IDFcblxuICBPYmplY3Qua2V5cyhiZWZvcmUpLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBMZW5ndGggPSBiZWZvcmVbZ3JvdXBdLmxlbmd0aFxuICAgIGJlZm9yZVtncm91cF0uZm9yRWFjaCgoZ3JvdXBJbmRleCwgaW5kZXgpID0+IHtcbiAgICAgIHRyYW5zZm9ybWVkW2dyb3VwSW5kZXhdLnBvc2l0aW9uID0gLTEgKiAoZ3JvdXBMZW5ndGggLSBpbmRleClcbiAgICB9KVxuICAgIG1heFBvc2l0aW9uID0gTWF0aC5tYXgobWF4UG9zaXRpb24sIGdyb3VwTGVuZ3RoKVxuICB9KVxuXG4gIE9iamVjdC5rZXlzKGFmdGVyKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICBjb25zdCBncm91cE5leHRQb3NpdGlvbiA9IGFmdGVyW2tleV1cbiAgICBtYXhQb3NpdGlvbiA9IE1hdGgubWF4KG1heFBvc2l0aW9uLCBncm91cE5leHRQb3NpdGlvbiAtIDEpXG4gIH0pXG5cbiAgcmV0dXJuIHtcbiAgICBwYXRoR3JvdXBzOiB0cmFuc2Zvcm1lZCxcbiAgICBtYXhQb3NpdGlvbjogbWF4UG9zaXRpb24gPiAxMCA/IE1hdGgucG93KDEwLCBNYXRoLmNlaWwoTWF0aC5sb2cxMChtYXhQb3NpdGlvbikpKSA6IDEwLFxuICB9XG59XG5cbmZ1bmN0aW9uIGZpeE5ld0xpbmVBZnRlckltcG9ydChjb250ZXh0LCBwcmV2aW91c0ltcG9ydCkge1xuICBjb25zdCBwcmV2Um9vdCA9IGZpbmRSb290Tm9kZShwcmV2aW91c0ltcG9ydC5ub2RlKVxuICBjb25zdCB0b2tlbnNUb0VuZE9mTGluZSA9IHRha2VUb2tlbnNBZnRlcldoaWxlKFxuICAgIGNvbnRleHQuZ2V0U291cmNlQ29kZSgpLCBwcmV2Um9vdCwgY29tbWVudE9uU2FtZUxpbmVBcyhwcmV2Um9vdCkpXG5cbiAgbGV0IGVuZE9mTGluZSA9IHByZXZSb290LnJhbmdlWzFdXG4gIGlmICh0b2tlbnNUb0VuZE9mTGluZS5sZW5ndGggPiAwKSB7XG4gICAgZW5kT2ZMaW5lID0gdG9rZW5zVG9FbmRPZkxpbmVbdG9rZW5zVG9FbmRPZkxpbmUubGVuZ3RoIC0gMV0ucmFuZ2VbMV1cbiAgfVxuICByZXR1cm4gKGZpeGVyKSA9PiBmaXhlci5pbnNlcnRUZXh0QWZ0ZXJSYW5nZShbcHJldlJvb3QucmFuZ2VbMF0sIGVuZE9mTGluZV0sICdcXG4nKVxufVxuXG5mdW5jdGlvbiByZW1vdmVOZXdMaW5lQWZ0ZXJJbXBvcnQoY29udGV4dCwgY3VycmVudEltcG9ydCwgcHJldmlvdXNJbXBvcnQpIHtcbiAgY29uc3Qgc291cmNlQ29kZSA9IGNvbnRleHQuZ2V0U291cmNlQ29kZSgpXG4gIGNvbnN0IHByZXZSb290ID0gZmluZFJvb3ROb2RlKHByZXZpb3VzSW1wb3J0Lm5vZGUpXG4gIGNvbnN0IGN1cnJSb290ID0gZmluZFJvb3ROb2RlKGN1cnJlbnRJbXBvcnQubm9kZSlcbiAgY29uc3QgcmFuZ2VUb1JlbW92ZSA9IFtcbiAgICBmaW5kRW5kT2ZMaW5lV2l0aENvbW1lbnRzKHNvdXJjZUNvZGUsIHByZXZSb290KSxcbiAgICBmaW5kU3RhcnRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgY3VyclJvb3QpLFxuICBdXG4gIGlmICgvXlxccyokLy50ZXN0KHNvdXJjZUNvZGUudGV4dC5zdWJzdHJpbmcocmFuZ2VUb1JlbW92ZVswXSwgcmFuZ2VUb1JlbW92ZVsxXSkpKSB7XG4gICAgcmV0dXJuIChmaXhlcikgPT4gZml4ZXIucmVtb3ZlUmFuZ2UocmFuZ2VUb1JlbW92ZSlcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkXG59XG5cbmZ1bmN0aW9uIG1ha2VOZXdsaW5lc0JldHdlZW5SZXBvcnQgKGNvbnRleHQsIGltcG9ydGVkLCBuZXdsaW5lc0JldHdlZW5JbXBvcnRzKSB7XG4gIGNvbnN0IGdldE51bWJlck9mRW1wdHlMaW5lc0JldHdlZW4gPSAoY3VycmVudEltcG9ydCwgcHJldmlvdXNJbXBvcnQpID0+IHtcbiAgICBjb25zdCBsaW5lc0JldHdlZW5JbXBvcnRzID0gY29udGV4dC5nZXRTb3VyY2VDb2RlKCkubGluZXMuc2xpY2UoXG4gICAgICBwcmV2aW91c0ltcG9ydC5ub2RlLmxvYy5lbmQubGluZSxcbiAgICAgIGN1cnJlbnRJbXBvcnQubm9kZS5sb2Muc3RhcnQubGluZSAtIDFcbiAgICApXG5cbiAgICByZXR1cm4gbGluZXNCZXR3ZWVuSW1wb3J0cy5maWx0ZXIoKGxpbmUpID0+ICFsaW5lLnRyaW0oKS5sZW5ndGgpLmxlbmd0aFxuICB9XG4gIGxldCBwcmV2aW91c0ltcG9ydCA9IGltcG9ydGVkWzBdXG5cbiAgaW1wb3J0ZWQuc2xpY2UoMSkuZm9yRWFjaChmdW5jdGlvbihjdXJyZW50SW1wb3J0KSB7XG4gICAgY29uc3QgZW1wdHlMaW5lc0JldHdlZW4gPSBnZXROdW1iZXJPZkVtcHR5TGluZXNCZXR3ZWVuKGN1cnJlbnRJbXBvcnQsIHByZXZpb3VzSW1wb3J0KVxuXG4gICAgaWYgKG5ld2xpbmVzQmV0d2VlbkltcG9ydHMgPT09ICdhbHdheXMnXG4gICAgICAgIHx8IG5ld2xpbmVzQmV0d2VlbkltcG9ydHMgPT09ICdhbHdheXMtYW5kLWluc2lkZS1ncm91cHMnKSB7XG4gICAgICBpZiAoY3VycmVudEltcG9ydC5yYW5rICE9PSBwcmV2aW91c0ltcG9ydC5yYW5rICYmIGVtcHR5TGluZXNCZXR3ZWVuID09PSAwKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlOiBwcmV2aW91c0ltcG9ydC5ub2RlLFxuICAgICAgICAgIG1lc3NhZ2U6ICdUaGVyZSBzaG91bGQgYmUgYXQgbGVhc3Qgb25lIGVtcHR5IGxpbmUgYmV0d2VlbiBpbXBvcnQgZ3JvdXBzJyxcbiAgICAgICAgICBmaXg6IGZpeE5ld0xpbmVBZnRlckltcG9ydChjb250ZXh0LCBwcmV2aW91c0ltcG9ydCksXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2UgaWYgKGN1cnJlbnRJbXBvcnQucmFuayA9PT0gcHJldmlvdXNJbXBvcnQucmFua1xuICAgICAgICAmJiBlbXB0eUxpbmVzQmV0d2VlbiA+IDBcbiAgICAgICAgJiYgbmV3bGluZXNCZXR3ZWVuSW1wb3J0cyAhPT0gJ2Fsd2F5cy1hbmQtaW5zaWRlLWdyb3VwcycpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIG5vZGU6IHByZXZpb3VzSW1wb3J0Lm5vZGUsXG4gICAgICAgICAgbWVzc2FnZTogJ1RoZXJlIHNob3VsZCBiZSBubyBlbXB0eSBsaW5lIHdpdGhpbiBpbXBvcnQgZ3JvdXAnLFxuICAgICAgICAgIGZpeDogcmVtb3ZlTmV3TGluZUFmdGVySW1wb3J0KGNvbnRleHQsIGN1cnJlbnRJbXBvcnQsIHByZXZpb3VzSW1wb3J0KSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXNCZXR3ZWVuID4gMCkge1xuICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICBub2RlOiBwcmV2aW91c0ltcG9ydC5ub2RlLFxuICAgICAgICBtZXNzYWdlOiAnVGhlcmUgc2hvdWxkIGJlIG5vIGVtcHR5IGxpbmUgYmV0d2VlbiBpbXBvcnQgZ3JvdXBzJyxcbiAgICAgICAgZml4OiByZW1vdmVOZXdMaW5lQWZ0ZXJJbXBvcnQoY29udGV4dCwgY3VycmVudEltcG9ydCwgcHJldmlvdXNJbXBvcnQpLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBwcmV2aW91c0ltcG9ydCA9IGN1cnJlbnRJbXBvcnRcbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2V0QWxwaGFiZXRpemVDb25maWcob3B0aW9ucykge1xuICBjb25zdCBhbHBoYWJldGl6ZSA9IG9wdGlvbnMuYWxwaGFiZXRpemUgfHwge31cbiAgY29uc3Qgb3JkZXIgPSBhbHBoYWJldGl6ZS5vcmRlciB8fCAnaWdub3JlJ1xuICBjb25zdCBjYXNlSW5zZW5zaXRpdmUgPSBhbHBoYWJldGl6ZS5jYXNlSW5zZW5zaXRpdmUgfHwgZmFsc2VcblxuICByZXR1cm4ge29yZGVyLCBjYXNlSW5zZW5zaXRpdmV9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnb3JkZXInKSxcbiAgICB9LFxuXG4gICAgZml4YWJsZTogJ2NvZGUnLFxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGdyb3Vwczoge1xuICAgICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBhdGhHcm91cHNFeGNsdWRlZEltcG9ydFR5cGVzOiB7XG4gICAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGF0aEdyb3Vwczoge1xuICAgICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgcGF0dGVybjoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYXR0ZXJuT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBncm91cDoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgICBlbnVtOiB0eXBlcyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICAgIGVudW06IFsnYWZ0ZXInLCAnYmVmb3JlJ10sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsncGF0dGVybicsICdncm91cCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgICduZXdsaW5lcy1iZXR3ZWVuJzoge1xuICAgICAgICAgICAgZW51bTogW1xuICAgICAgICAgICAgICAnaWdub3JlJyxcbiAgICAgICAgICAgICAgJ2Fsd2F5cycsXG4gICAgICAgICAgICAgICdhbHdheXMtYW5kLWluc2lkZS1ncm91cHMnLFxuICAgICAgICAgICAgICAnbmV2ZXInLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGFscGhhYmV0aXplOiB7XG4gICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgY2FzZUluc2Vuc2l0aXZlOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBvcmRlcjoge1xuICAgICAgICAgICAgICAgIGVudW06IFsnaWdub3JlJywgJ2FzYycsICdkZXNjJ10sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJ2lnbm9yZScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIGltcG9ydE9yZGVyUnVsZSAoY29udGV4dCkge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cbiAgICBjb25zdCBuZXdsaW5lc0JldHdlZW5JbXBvcnRzID0gb3B0aW9uc1snbmV3bGluZXMtYmV0d2VlbiddIHx8ICdpZ25vcmUnXG4gICAgY29uc3QgcGF0aEdyb3Vwc0V4Y2x1ZGVkSW1wb3J0VHlwZXMgPSBuZXcgU2V0KG9wdGlvbnNbJ3BhdGhHcm91cHNFeGNsdWRlZEltcG9ydFR5cGVzJ10gfHwgWydidWlsdGluJywgJ2V4dGVybmFsJ10pXG4gICAgY29uc3QgYWxwaGFiZXRpemUgPSBnZXRBbHBoYWJldGl6ZUNvbmZpZyhvcHRpb25zKVxuICAgIGxldCByYW5rc1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgcGF0aEdyb3VwcywgbWF4UG9zaXRpb24gfSA9IGNvbnZlcnRQYXRoR3JvdXBzRm9yUmFua3Mob3B0aW9ucy5wYXRoR3JvdXBzIHx8IFtdKVxuICAgICAgcmFua3MgPSB7XG4gICAgICAgIGdyb3VwczogY29udmVydEdyb3Vwc1RvUmFua3Mob3B0aW9ucy5ncm91cHMgfHwgZGVmYXVsdEdyb3VwcyksXG4gICAgICAgIHBhdGhHcm91cHMsXG4gICAgICAgIG1heFBvc2l0aW9uLFxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBNYWxmb3JtZWQgY29uZmlndXJhdGlvblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgUHJvZ3JhbTogZnVuY3Rpb24obm9kZSkge1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KG5vZGUsIGVycm9yLm1lc3NhZ2UpXG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfVxuICAgIGxldCBpbXBvcnRlZCA9IFtdXG4gICAgbGV0IGxldmVsID0gMFxuXG4gICAgZnVuY3Rpb24gaW5jcmVtZW50TGV2ZWwoKSB7XG4gICAgICBsZXZlbCsrXG4gICAgfVxuICAgIGZ1bmN0aW9uIGRlY3JlbWVudExldmVsKCkge1xuICAgICAgbGV2ZWwtLVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWNsYXJhdGlvbjogZnVuY3Rpb24gaGFuZGxlSW1wb3J0cyhub2RlKSB7XG4gICAgICAgIGlmIChub2RlLnNwZWNpZmllcnMubGVuZ3RoKSB7IC8vIElnbm9yaW5nIHVuYXNzaWduZWQgaW1wb3J0c1xuICAgICAgICAgIGNvbnN0IG5hbWUgPSBub2RlLnNvdXJjZS52YWx1ZVxuICAgICAgICAgIHJlZ2lzdGVyTm9kZShcbiAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICdpbXBvcnQnLFxuICAgICAgICAgICAgcmFua3MsXG4gICAgICAgICAgICBpbXBvcnRlZCxcbiAgICAgICAgICAgIHBhdGhHcm91cHNFeGNsdWRlZEltcG9ydFR5cGVzXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQ2FsbEV4cHJlc3Npb246IGZ1bmN0aW9uIGhhbmRsZVJlcXVpcmVzKG5vZGUpIHtcbiAgICAgICAgaWYgKGxldmVsICE9PSAwIHx8ICFpc1N0YXRpY1JlcXVpcmUobm9kZSkgfHwgIWlzSW5WYXJpYWJsZURlY2xhcmF0b3Iobm9kZS5wYXJlbnQpKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmFtZSA9IG5vZGUuYXJndW1lbnRzWzBdLnZhbHVlXG4gICAgICAgIHJlZ2lzdGVyTm9kZShcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICAncmVxdWlyZScsXG4gICAgICAgICAgcmFua3MsXG4gICAgICAgICAgaW1wb3J0ZWQsXG4gICAgICAgICAgcGF0aEdyb3Vwc0V4Y2x1ZGVkSW1wb3J0VHlwZXNcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgICdQcm9ncmFtOmV4aXQnOiBmdW5jdGlvbiByZXBvcnRBbmRSZXNldCgpIHtcbiAgICAgICAgaWYgKG5ld2xpbmVzQmV0d2VlbkltcG9ydHMgIT09ICdpZ25vcmUnKSB7XG4gICAgICAgICAgbWFrZU5ld2xpbmVzQmV0d2VlblJlcG9ydChjb250ZXh0LCBpbXBvcnRlZCwgbmV3bGluZXNCZXR3ZWVuSW1wb3J0cylcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhbHBoYWJldGl6ZS5vcmRlciAhPT0gJ2lnbm9yZScpIHtcbiAgICAgICAgICBtdXRhdGVSYW5rc1RvQWxwaGFiZXRpemUoaW1wb3J0ZWQsIGFscGhhYmV0aXplKVxuICAgICAgICB9XG5cbiAgICAgICAgbWFrZU91dE9mT3JkZXJSZXBvcnQoY29udGV4dCwgaW1wb3J0ZWQpXG5cbiAgICAgICAgaW1wb3J0ZWQgPSBbXVxuICAgICAgfSxcbiAgICAgIEZ1bmN0aW9uRGVjbGFyYXRpb246IGluY3JlbWVudExldmVsLFxuICAgICAgRnVuY3Rpb25FeHByZXNzaW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIEFycm93RnVuY3Rpb25FeHByZXNzaW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIEJsb2NrU3RhdGVtZW50OiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIE9iamVjdEV4cHJlc3Npb246IGluY3JlbWVudExldmVsLFxuICAgICAgJ0Z1bmN0aW9uRGVjbGFyYXRpb246ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ0Z1bmN0aW9uRXhwcmVzc2lvbjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgICAnQXJyb3dGdW5jdGlvbkV4cHJlc3Npb246ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ0Jsb2NrU3RhdGVtZW50OmV4aXQnOiBkZWNyZW1lbnRMZXZlbCxcbiAgICAgICdPYmplY3RFeHByZXNzaW9uOmV4aXQnOiBkZWNyZW1lbnRMZXZlbCxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file + 'ObjectExpression:exit': decrementLevel }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9vcmRlci5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0R3JvdXBzIiwicmV2ZXJzZSIsImFycmF5IiwibWFwIiwidiIsIk9iamVjdCIsImFzc2lnbiIsInJhbmsiLCJnZXRUb2tlbnNPckNvbW1lbnRzQWZ0ZXIiLCJzb3VyY2VDb2RlIiwibm9kZSIsImNvdW50IiwiY3VycmVudE5vZGVPclRva2VuIiwicmVzdWx0IiwiaSIsImdldFRva2VuT3JDb21tZW50QWZ0ZXIiLCJwdXNoIiwiZ2V0VG9rZW5zT3JDb21tZW50c0JlZm9yZSIsImdldFRva2VuT3JDb21tZW50QmVmb3JlIiwidGFrZVRva2Vuc0FmdGVyV2hpbGUiLCJjb25kaXRpb24iLCJ0b2tlbnMiLCJsZW5ndGgiLCJ0YWtlVG9rZW5zQmVmb3JlV2hpbGUiLCJmaW5kT3V0T2ZPcmRlciIsImltcG9ydGVkIiwibWF4U2VlblJhbmtOb2RlIiwiZmlsdGVyIiwiaW1wb3J0ZWRNb2R1bGUiLCJyZXMiLCJmaW5kUm9vdE5vZGUiLCJwYXJlbnQiLCJib2R5IiwiZmluZEVuZE9mTGluZVdpdGhDb21tZW50cyIsInRva2Vuc1RvRW5kT2ZMaW5lIiwiY29tbWVudE9uU2FtZUxpbmVBcyIsImVuZE9mVG9rZW5zIiwicmFuZ2UiLCJ0ZXh0IiwidG9rZW4iLCJ0eXBlIiwibG9jIiwic3RhcnQiLCJsaW5lIiwiZW5kIiwiZmluZFN0YXJ0T2ZMaW5lV2l0aENvbW1lbnRzIiwic3RhcnRPZlRva2VucyIsImlzUGxhaW5SZXF1aXJlTW9kdWxlIiwiZGVjbGFyYXRpb25zIiwiZGVjbCIsImlkIiwiaW5pdCIsImNhbGxlZSIsIm5hbWUiLCJhcmd1bWVudHMiLCJpc1BsYWluSW1wb3J0TW9kdWxlIiwic3BlY2lmaWVycyIsImlzUGxhaW5JbXBvcnRFcXVhbHMiLCJtb2R1bGVSZWZlcmVuY2UiLCJleHByZXNzaW9uIiwiY2FuQ3Jvc3NOb2RlV2hpbGVSZW9yZGVyIiwiY2FuUmVvcmRlckl0ZW1zIiwiZmlyc3ROb2RlIiwic2Vjb25kTm9kZSIsImluZGV4T2YiLCJzb3J0IiwiZmlyc3RJbmRleCIsInNlY29uZEluZGV4Iiwibm9kZXNCZXR3ZWVuIiwic2xpY2UiLCJub2RlQmV0d2VlbiIsImZpeE91dE9mT3JkZXIiLCJjb250ZXh0Iiwib3JkZXIiLCJnZXRTb3VyY2VDb2RlIiwiZmlyc3RSb290IiwiZmlyc3RSb290U3RhcnQiLCJmaXJzdFJvb3RFbmQiLCJzZWNvbmRSb290Iiwic2Vjb25kUm9vdFN0YXJ0Iiwic2Vjb25kUm9vdEVuZCIsImNhbkZpeCIsIm5ld0NvZGUiLCJzdWJzdHJpbmciLCJtZXNzYWdlIiwiZGlzcGxheU5hbWUiLCJyZXBvcnQiLCJmaXgiLCJmaXhlciIsInJlcGxhY2VUZXh0UmFuZ2UiLCJyZXBvcnRPdXRPZk9yZGVyIiwib3V0T2ZPcmRlciIsImZvckVhY2giLCJpbXAiLCJmb3VuZCIsImZpbmQiLCJoYXNIaWdoZXJSYW5rIiwiaW1wb3J0ZWRJdGVtIiwibWFrZU91dE9mT3JkZXJSZXBvcnQiLCJyZXZlcnNlZEltcG9ydGVkIiwicmV2ZXJzZWRPcmRlciIsImdldFNvcnRlciIsImFzY2VuZGluZyIsIm11bHRpcGxpZXIiLCJpbXBvcnRzU29ydGVyIiwiaW1wb3J0QSIsImltcG9ydEIiLCJtdXRhdGVSYW5rc1RvQWxwaGFiZXRpemUiLCJhbHBoYWJldGl6ZU9wdGlvbnMiLCJncm91cGVkQnlSYW5rcyIsInJlZHVjZSIsImFjYyIsIkFycmF5IiwiaXNBcnJheSIsInZhbHVlIiwiZ3JvdXBSYW5rcyIsImtleXMiLCJzb3J0ZXJGbiIsImNvbXBhcmF0b3IiLCJjYXNlSW5zZW5zaXRpdmUiLCJhIiwiYiIsIlN0cmluZyIsInRvTG93ZXJDYXNlIiwiZ3JvdXBSYW5rIiwibmV3UmFuayIsImFscGhhYmV0aXplZFJhbmtzIiwiaW1wb3J0ZWRJdGVtTmFtZSIsInBhcnNlSW50IiwiY29tcHV0ZVBhdGhSYW5rIiwicmFua3MiLCJwYXRoR3JvdXBzIiwicGF0aCIsIm1heFBvc2l0aW9uIiwibCIsInBhdHRlcm4iLCJwYXR0ZXJuT3B0aW9ucyIsImdyb3VwIiwicG9zaXRpb24iLCJub2NvbW1lbnQiLCJjb21wdXRlUmFuayIsImltcG9ydEVudHJ5IiwiZXhjbHVkZWRJbXBvcnRUeXBlcyIsImltcFR5cGUiLCJoYXMiLCJncm91cHMiLCJzdGFydHNXaXRoIiwicmVnaXN0ZXJOb2RlIiwiaXNJblZhcmlhYmxlRGVjbGFyYXRvciIsInR5cGVzIiwiY29udmVydEdyb3Vwc1RvUmFua3MiLCJyYW5rT2JqZWN0IiwiaW5kZXgiLCJncm91cEl0ZW0iLCJFcnJvciIsIkpTT04iLCJzdHJpbmdpZnkiLCJ1bmRlZmluZWQiLCJvbWl0dGVkVHlwZXMiLCJjb252ZXJ0UGF0aEdyb3Vwc0ZvclJhbmtzIiwiYWZ0ZXIiLCJiZWZvcmUiLCJ0cmFuc2Zvcm1lZCIsInBhdGhHcm91cCIsInBvc2l0aW9uU3RyaW5nIiwiZ3JvdXBMZW5ndGgiLCJncm91cEluZGV4IiwiTWF0aCIsIm1heCIsImtleSIsImdyb3VwTmV4dFBvc2l0aW9uIiwicG93IiwiY2VpbCIsImxvZzEwIiwiZml4TmV3TGluZUFmdGVySW1wb3J0IiwicHJldmlvdXNJbXBvcnQiLCJwcmV2Um9vdCIsImVuZE9mTGluZSIsImluc2VydFRleHRBZnRlclJhbmdlIiwicmVtb3ZlTmV3TGluZUFmdGVySW1wb3J0IiwiY3VycmVudEltcG9ydCIsImN1cnJSb290IiwicmFuZ2VUb1JlbW92ZSIsInRlc3QiLCJyZW1vdmVSYW5nZSIsIm1ha2VOZXdsaW5lc0JldHdlZW5SZXBvcnQiLCJuZXdsaW5lc0JldHdlZW5JbXBvcnRzIiwiZ2V0TnVtYmVyT2ZFbXB0eUxpbmVzQmV0d2VlbiIsImxpbmVzQmV0d2VlbkltcG9ydHMiLCJsaW5lcyIsInRyaW0iLCJlbXB0eUxpbmVzQmV0d2VlbiIsImdldEFscGhhYmV0aXplQ29uZmlnIiwib3B0aW9ucyIsImFscGhhYmV0aXplIiwibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJkb2NzIiwidXJsIiwiZml4YWJsZSIsInNjaGVtYSIsInByb3BlcnRpZXMiLCJwYXRoR3JvdXBzRXhjbHVkZWRJbXBvcnRUeXBlcyIsIml0ZW1zIiwiZW51bSIsInJlcXVpcmVkIiwiZGVmYXVsdCIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiY3JlYXRlIiwiaW1wb3J0T3JkZXJSdWxlIiwiU2V0IiwiZXJyb3IiLCJQcm9ncmFtIiwibGV2ZWwiLCJpbmNyZW1lbnRMZXZlbCIsImRlY3JlbWVudExldmVsIiwiSW1wb3J0RGVjbGFyYXRpb24iLCJoYW5kbGVJbXBvcnRzIiwic291cmNlIiwiVFNJbXBvcnRFcXVhbHNEZWNsYXJhdGlvbiIsImlzRXhwb3J0IiwiZ2V0VGV4dCIsIkNhbGxFeHByZXNzaW9uIiwiaGFuZGxlUmVxdWlyZXMiLCJyZXBvcnRBbmRSZXNldCIsIkZ1bmN0aW9uRGVjbGFyYXRpb24iLCJGdW5jdGlvbkV4cHJlc3Npb24iLCJBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbiIsIkJsb2NrU3RhdGVtZW50IiwiT2JqZWN0RXhwcmVzc2lvbiJdLCJtYXBwaW5ncyI6IkFBQUEsYTs7QUFFQSxzQztBQUNBLGdEO0FBQ0Esc0Q7QUFDQSxxQzs7QUFFQSxNQUFNQSxnQkFBZ0IsQ0FBQyxTQUFELEVBQVksVUFBWixFQUF3QixRQUF4QixFQUFrQyxTQUFsQyxFQUE2QyxPQUE3QyxDQUF0Qjs7QUFFQTs7QUFFQSxTQUFTQyxPQUFULENBQWlCQyxLQUFqQixFQUF3QjtBQUN0QixTQUFPQSxNQUFNQyxHQUFOLENBQVUsVUFBVUMsQ0FBVixFQUFhO0FBQzVCLFdBQU9DLE9BQU9DLE1BQVAsQ0FBYyxFQUFkLEVBQWtCRixDQUFsQixFQUFxQixFQUFFRyxNQUFNLENBQUNILEVBQUVHLElBQVgsRUFBckIsQ0FBUDtBQUNELEdBRk0sRUFFSk4sT0FGSSxFQUFQO0FBR0Q7O0FBRUQsU0FBU08sd0JBQVQsQ0FBa0NDLFVBQWxDLEVBQThDQyxJQUE5QyxFQUFvREMsS0FBcEQsRUFBMkQ7QUFDekQsTUFBSUMscUJBQXFCRixJQUF6QjtBQUNBLFFBQU1HLFNBQVMsRUFB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c0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnXG5cbmltcG9ydCBtaW5pbWF0Y2ggZnJvbSAnbWluaW1hdGNoJ1xuaW1wb3J0IGltcG9ydFR5cGUgZnJvbSAnLi4vY29yZS9pbXBvcnRUeXBlJ1xuaW1wb3J0IGlzU3RhdGljUmVxdWlyZSBmcm9tICcuLi9jb3JlL3N0YXRpY1JlcXVpcmUnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5jb25zdCBkZWZhdWx0R3JvdXBzID0gWydidWlsdGluJywgJ2V4dGVybmFsJywgJ3BhcmVudCcsICdzaWJsaW5nJywgJ2luZGV4J11cblxuLy8gUkVQT1JUSU5HIEFORCBGSVhJTkdcblxuZnVuY3Rpb24gcmV2ZXJzZShhcnJheSkge1xuICByZXR1cm4gYXJyYXkubWFwKGZ1bmN0aW9uICh2KSB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHYsIHsgcmFuazogLXYucmFuayB9KVxuICB9KS5yZXZlcnNlKClcbn1cblxuZnVuY3Rpb24gZ2V0VG9rZW5zT3JDb21tZW50c0FmdGVyKHNvdXJjZUNvZGUsIG5vZGUsIGNvdW50KSB7XG4gIGxldCBjdXJyZW50Tm9kZU9yVG9rZW4gPSBub2RlXG4gIGNvbnN0IHJlc3VsdCA9IFtdXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgIGN1cnJlbnROb2RlT3JUb2tlbiA9IHNvdXJjZUNvZGUuZ2V0VG9rZW5PckNvbW1lbnRBZnRlcihjdXJyZW50Tm9kZU9yVG9rZW4pXG4gICAgaWYgKGN1cnJlbnROb2RlT3JUb2tlbiA9PSBudWxsKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICByZXN1bHQucHVzaChjdXJyZW50Tm9kZU9yVG9rZW4pXG4gIH1cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG5mdW5jdGlvbiBnZXRUb2tlbnNPckNvbW1lbnRzQmVmb3JlKHNvdXJjZUNvZGUsIG5vZGUsIGNvdW50KSB7XG4gIGxldCBjdXJyZW50Tm9kZU9yVG9rZW4gPSBub2RlXG4gIGNvbnN0IHJlc3VsdCA9IFtdXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgIGN1cnJlbnROb2RlT3JUb2tlbiA9IHNvdXJjZUNvZGUuZ2V0VG9rZW5PckNvbW1lbnRCZWZvcmUoY3VycmVudE5vZGVPclRva2VuKVxuICAgIGlmIChjdXJyZW50Tm9kZU9yVG9rZW4gPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgcmVzdWx0LnB1c2goY3VycmVudE5vZGVPclRva2VuKVxuICB9XG4gIHJldHVybiByZXN1bHQucmV2ZXJzZSgpXG59XG5cbmZ1bmN0aW9uIHRha2VUb2tlbnNBZnRlcldoaWxlKHNvdXJjZUNvZGUsIG5vZGUsIGNvbmRpdGlvbikge1xuICBjb25zdCB0b2tlbnMgPSBnZXRUb2tlbnNPckNvbW1lbnRzQWZ0ZXIoc291cmNlQ29kZSwgbm9kZSwgMTAwKVxuICBjb25zdCByZXN1bHQgPSBbXVxuICBmb3IgKGxldCBpID0gMDsgaSA8IHRva2Vucy5sZW5ndGg7IGkrKykge1xuICAgIGlmIChjb25kaXRpb24odG9rZW5zW2ldKSkge1xuICAgICAgcmVzdWx0LnB1c2godG9rZW5zW2ldKVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHRcbn1cblxuZnVuY3Rpb24gdGFrZVRva2Vuc0JlZm9yZVdoaWxlKHNvdXJjZUNvZGUsIG5vZGUsIGNvbmRpdGlvbikge1xuICBjb25zdCB0b2tlbnMgPSBnZXRUb2tlbnNPckNvbW1lbnRzQmVmb3JlKHNvdXJjZUNvZGUsIG5vZGUsIDEwMClcbiAgY29uc3QgcmVzdWx0ID0gW11cbiAgZm9yIChsZXQgaSA9IHRva2Vucy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGlmIChjb25kaXRpb24odG9rZW5zW2ldKSkge1xuICAgICAgcmVzdWx0LnB1c2godG9rZW5zW2ldKVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQucmV2ZXJzZSgpXG59XG5cbmZ1bmN0aW9uIGZpbmRPdXRPZk9yZGVyKGltcG9ydGVkKSB7XG4gIGlmIChpbXBvcnRlZC5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gW11cbiAgfVxuICBsZXQgbWF4U2VlblJhbmtOb2RlID0gaW1wb3J0ZWRbMF1cbiAgcmV0dXJuIGltcG9ydGVkLmZpbHRlcihmdW5jdGlvbiAoaW1wb3J0ZWRNb2R1bGUpIHtcbiAgICBjb25zdCByZXMgPSBpbXBvcnRlZE1vZHVsZS5yYW5rIDwgbWF4U2VlblJhbmtOb2RlLnJhbmtcbiAgICBpZiAobWF4U2VlblJhbmtOb2RlLnJhbmsgPCBpbXBvcnRlZE1vZHVsZS5yYW5rKSB7XG4gICAgICBtYXhTZWVuUmFua05vZGUgPSBpbXBvcnRlZE1vZHVsZVxuICAgIH1cbiAgICByZXR1cm4gcmVzXG4gIH0pXG59XG5cbmZ1bmN0aW9uIGZpbmRSb290Tm9kZShub2RlKSB7XG4gIGxldCBwYXJlbnQgPSBub2RlXG4gIHdoaWxlIChwYXJlbnQucGFyZW50ICE9IG51bGwgJiYgcGFyZW50LnBhcmVudC5ib2R5ID09IG51bGwpIHtcbiAgICBwYXJlbnQgPSBwYXJlbnQucGFyZW50XG4gIH1cbiAgcmV0dXJuIHBhcmVudFxufVxuXG5mdW5jdGlvbiBmaW5kRW5kT2ZMaW5lV2l0aENvbW1lbnRzKHNvdXJjZUNvZGUsIG5vZGUpIHtcbiAgY29uc3QgdG9rZW5zVG9FbmRPZkxpbmUgPSB0YWtlVG9rZW5zQWZ0ZXJXaGlsZShzb3VyY2VDb2RlLCBub2RlLCBjb21tZW50T25TYW1lTGluZUFzKG5vZGUpKVxuICBsZXQgZW5kT2ZUb2tlbnMgPSB0b2tlbnNUb0VuZE9mTGluZS5sZW5ndGggPiAwXG4gICAgPyB0b2tlbnNUb0VuZE9mTGluZVt0b2tlbnNUb0VuZE9mTGluZS5sZW5ndGggLSAxXS5yYW5nZVsxXVxuICAgIDogbm9kZS5yYW5nZVsxXVxuICBsZXQgcmVzdWx0ID0gZW5kT2ZUb2tlbnNcbiAgZm9yIChsZXQgaSA9IGVuZE9mVG9rZW5zOyBpIDwgc291cmNlQ29kZS50ZXh0Lmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKHNvdXJjZUNvZGUudGV4dFtpXSA9PT0gJ1xcbicpIHtcbiAgICAgIHJlc3VsdCA9IGkgKyAxXG4gICAgICBicmVha1xuICAgIH1cbiAgICBpZiAoc291cmNlQ29kZS50ZXh0W2ldICE9PSAnICcgJiYgc291cmNlQ29kZS50ZXh0W2ldICE9PSAnXFx0JyAmJiBzb3VyY2VDb2RlLnRleHRbaV0gIT09ICdcXHInKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICByZXN1bHQgPSBpICsgMVxuICB9XG4gIHJldHVybiByZXN1bHRcbn1cblxuZnVuY3Rpb24gY29tbWVudE9uU2FtZUxpbmVBcyhub2RlKSB7XG4gIHJldHVybiB0b2tlbiA9PiAodG9rZW4udHlwZSA9PT0gJ0Jsb2NrJyB8fCAgdG9rZW4udHlwZSA9PT0gJ0xpbmUnKSAmJlxuICAgICAgdG9rZW4ubG9jLnN0YXJ0LmxpbmUgPT09IHRva2VuLmxvYy5lbmQubGluZSAmJlxuICAgICAgdG9rZW4ubG9jLmVuZC5saW5lID09PSBub2RlLmxvYy5lbmQubGluZVxufVxuXG5mdW5jdGlvbiBmaW5kU3RhcnRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgbm9kZSkge1xuICBjb25zdCB0b2tlbnNUb0VuZE9mTGluZSA9IHRha2VUb2tlbnNCZWZvcmVXaGlsZShzb3VyY2VDb2RlLCBub2RlLCBjb21tZW50T25TYW1lTGluZUFzKG5vZGUpKVxuICBsZXQgc3RhcnRPZlRva2VucyA9IHRva2Vuc1RvRW5kT2ZMaW5lLmxlbmd0aCA+IDAgPyB0b2tlbnNUb0VuZE9mTGluZVswXS5yYW5nZVswXSA6IG5vZGUucmFuZ2VbMF1cbiAgbGV0IHJlc3VsdCA9IHN0YXJ0T2ZUb2tlbnNcbiAgZm9yIChsZXQgaSA9IHN0YXJ0T2ZUb2tlbnMgLSAxOyBpID4gMDsgaS0tKSB7XG4gICAgaWYgKHNvdXJjZUNvZGUudGV4dFtpXSAhPT0gJyAnICYmIHNvdXJjZUNvZGUudGV4dFtpXSAhPT0gJ1xcdCcpIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIHJlc3VsdCA9IGlcbiAgfVxuICByZXR1cm4gcmVzdWx0XG59XG5cbmZ1bmN0aW9uIGlzUGxhaW5SZXF1aXJlTW9kdWxlKG5vZGUpIHtcbiAgaWYgKG5vZGUudHlwZSAhPT0gJ1ZhcmlhYmxlRGVjbGFyYXRpb24nKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbiAgaWYgKG5vZGUuZGVjbGFyYXRpb25zLmxlbmd0aCAhPT0gMSkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIGNvbnN0IGRlY2wgPSBub2RlLmRlY2xhcmF0aW9uc1swXVxuICBjb25zdCByZXN1bHQgPSBkZWNsLmlkICYmXG4gICAgKGRlY2wuaWQudHlwZSA9PT0gJ0lkZW50aWZpZXInIHx8IGRlY2wuaWQudHlwZSA9PT0gJ09iamVjdFBhdHRlcm4nKSAmJlxuICAgIGRlY2wuaW5pdCAhPSBudWxsICYmXG4gICAgZGVjbC5pbml0LnR5cGUgPT09ICdDYWxsRXhwcmVzc2lvbicgJiZcbiAgICBkZWNsLmluaXQuY2FsbGVlICE9IG51bGwgJiZcbiAgICBkZWNsLmluaXQuY2FsbGVlLm5hbWUgPT09ICdyZXF1aXJlJyAmJlxuICAgIGRlY2wuaW5pdC5hcmd1bWVudHMgIT0gbnVsbCAmJlxuICAgIGRlY2wuaW5pdC5hcmd1bWVudHMubGVuZ3RoID09PSAxICYmXG4gICAgZGVjbC5pbml0LmFyZ3VtZW50c1swXS50eXBlID09PSAnTGl0ZXJhbCdcbiAgcmV0dXJuIHJlc3VsdFxufVxuXG5mdW5jdGlvbiBpc1BsYWluSW1wb3J0TW9kdWxlKG5vZGUpIHtcbiAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ0ltcG9ydERlY2xhcmF0aW9uJyAmJiBub2RlLnNwZWNpZmllcnMgIT0gbnVsbCAmJiBub2RlLnNwZWNpZmllcnMubGVuZ3RoID4gMFxufVxuXG5mdW5jdGlvbiBpc1BsYWluSW1wb3J0RXF1YWxzKG5vZGUpIHtcbiAgcmV0dXJuIG5vZGUudHlwZSA9PT0gJ1RTSW1wb3J0RXF1YWxzRGVjbGFyYXRpb24nICYmIG5vZGUubW9kdWxlUmVmZXJlbmNlLmV4cHJlc3Npb25cbn1cblxuZnVuY3Rpb24gY2FuQ3Jvc3NOb2RlV2hpbGVSZW9yZGVyKG5vZGUpIHtcbiAgcmV0dXJuIGlzUGxhaW5SZXF1aXJlTW9kdWxlKG5vZGUpIHx8IGlzUGxhaW5JbXBvcnRNb2R1bGUobm9kZSkgfHwgaXNQbGFpbkltcG9ydEVxdWFscyhub2RlKVxufVxuXG5mdW5jdGlvbiBjYW5SZW9yZGVySXRlbXMoZmlyc3ROb2RlLCBzZWNvbmROb2RlKSB7XG4gIGNvbnN0IHBhcmVudCA9IGZpcnN0Tm9kZS5wYXJlbnRcbiAgY29uc3QgW2ZpcnN0SW5kZXgsIHNlY29uZEluZGV4XSA9IFtcbiAgICBwYXJlbnQuYm9keS5pbmRleE9mKGZpcnN0Tm9kZSksXG4gICAgcGFyZW50LmJvZHkuaW5kZXhPZihzZWNvbmROb2RlKSxcbiAgXS5zb3J0KClcbiAgY29uc3Qgbm9kZXNCZXR3ZWVuID0gcGFyZW50LmJvZHkuc2xpY2UoZmlyc3RJbmRleCwgc2Vjb25kSW5kZXggKyAxKVxuICBmb3IgKHZhciBub2RlQmV0d2VlbiBvZiBub2Rlc0JldHdlZW4pIHtcbiAgICBpZiAoIWNhbkNyb3NzTm9kZVdoaWxlUmVvcmRlcihub2RlQmV0d2VlbikpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuICByZXR1cm4gdHJ1ZVxufVxuXG5mdW5jdGlvbiBmaXhPdXRPZk9yZGVyKGNvbnRleHQsIGZpcnN0Tm9kZSwgc2Vjb25kTm9kZSwgb3JkZXIpIHtcbiAgY29uc3Qgc291cmNlQ29kZSA9IGNvbnRleHQuZ2V0U291cmNlQ29kZSgpXG5cbiAgY29uc3QgZmlyc3RSb290ID0gZmluZFJvb3ROb2RlKGZpcnN0Tm9kZS5ub2RlKVxuICBjb25zdCBmaXJzdFJvb3RTdGFydCA9IGZpbmRTdGFydE9mTGluZVdpdGhDb21tZW50cyhzb3VyY2VDb2RlLCBmaXJzdFJvb3QpXG4gIGNvbnN0IGZpcnN0Um9vdEVuZCA9IGZpbmRFbmRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgZmlyc3RSb290KVxuXG4gIGNvbnN0IHNlY29uZFJvb3QgPSBmaW5kUm9vdE5vZGUoc2Vjb25kTm9kZS5ub2RlKVxuICBjb25zdCBzZWNvbmRSb290U3RhcnQgPSBmaW5kU3RhcnRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgc2Vjb25kUm9vdClcbiAgY29uc3Qgc2Vjb25kUm9vdEVuZCA9IGZpbmRFbmRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgc2Vjb25kUm9vdClcbiAgY29uc3QgY2FuRml4ID0gY2FuUmVvcmRlckl0ZW1zKGZpcnN0Um9vdCwgc2Vjb25kUm9vdClcblxuICBsZXQgbmV3Q29kZSA9IHNvdXJjZUNvZGUudGV4dC5zdWJzdHJpbmcoc2Vjb25kUm9vdFN0YXJ0LCBzZWNvbmRSb290RW5kKVxuICBpZiAobmV3Q29kZVtuZXdDb2RlLmxlbmd0aCAtIDFdICE9PSAnXFxuJykge1xuICAgIG5ld0NvZGUgPSBuZXdDb2RlICsgJ1xcbidcbiAgfVxuXG4gIGNvbnN0IG1lc3NhZ2UgPSBgXFxgJHtzZWNvbmROb2RlLmRpc3BsYXlOYW1lfVxcYCBpbXBvcnQgc2hvdWxkIG9jY3VyICR7b3JkZXJ9IGltcG9ydCBvZiBcXGAke2ZpcnN0Tm9kZS5kaXNwbGF5TmFtZX1cXGBgXG5cbiAgaWYgKG9yZGVyID09PSAnYmVmb3JlJykge1xuICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgIG5vZGU6IHNlY29uZE5vZGUubm9kZSxcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UsXG4gICAgICBmaXg6IGNhbkZpeCAmJiAoZml4ZXIgPT5cbiAgICAgICAgZml4ZXIucmVwbGFjZVRleHRSYW5nZShcbiAgICAgICAgICBbZmlyc3RSb290U3RhcnQsIHNlY29uZFJvb3RFbmRdLFxuICAgICAgICAgIG5ld0NvZGUgKyBzb3VyY2VDb2RlLnRleHQuc3Vic3RyaW5nKGZpcnN0Um9vdFN0YXJ0LCBzZWNvbmRSb290U3RhcnQpXG4gICAgICAgICkpLFxuICAgIH0pXG4gIH0gZWxzZSBpZiAob3JkZXIgPT09ICdhZnRlcicpIHtcbiAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICBub2RlOiBzZWNvbmROb2RlLm5vZGUsXG4gICAgICBtZXNzYWdlOiBtZXNzYWdlLFxuICAgICAgZml4OiBjYW5GaXggJiYgKGZpeGVyID0+XG4gICAgICAgIGZpeGVyLnJlcGxhY2VUZXh0UmFuZ2UoXG4gICAgICAgICAgW3NlY29uZFJvb3RTdGFydCwgZmlyc3RSb290RW5kXSxcbiAgICAgICAgICBzb3VyY2VDb2RlLnRleHQuc3Vic3RyaW5nKHNlY29uZFJvb3RFbmQsIGZpcnN0Um9vdEVuZCkgKyBuZXdDb2RlXG4gICAgICAgICkpLFxuICAgIH0pXG4gIH1cbn1cblxuZnVuY3Rpb24gcmVwb3J0T3V0T2ZPcmRlcihjb250ZXh0LCBpbXBvcnRlZCwgb3V0T2ZPcmRlciwgb3JkZXIpIHtcbiAgb3V0T2ZPcmRlci5mb3JFYWNoKGZ1bmN0aW9uIChpbXApIHtcbiAgICBjb25zdCBmb3VuZCA9IGltcG9ydGVkLmZpbmQoZnVuY3Rpb24gaGFzSGlnaGVyUmFuayhpbXBvcnRlZEl0ZW0pIHtcbiAgICAgIHJldHVybiBpbXBvcnRlZEl0ZW0ucmFuayA+IGltcC5yYW5rXG4gICAgfSlcbiAgICBmaXhPdXRPZk9yZGVyKGNvbnRleHQsIGZvdW5kLCBpbXAsIG9yZGVyKVxuICB9KVxufVxuXG5mdW5jdGlvbiBtYWtlT3V0T2ZPcmRlclJlcG9ydChjb250ZXh0LCBpbXBvcnRlZCkge1xuICBjb25zdCBvdXRPZk9yZGVyID0gZmluZE91dE9mT3JkZXIoaW1wb3J0ZWQpXG4gIGlmICghb3V0T2ZPcmRlci5sZW5ndGgpIHtcbiAgICByZXR1cm5cbiAgfVxuICAvLyBUaGVyZSBhcmUgdGhpbmdzIHRvIHJlcG9ydC4gVHJ5IHRvIG1pbmltaXplIHRoZSBudW1iZXIgb2YgcmVwb3J0ZWQgZXJyb3JzLlxuICBjb25zdCByZXZlcnNlZEltcG9ydGVkID0gcmV2ZXJzZShpbXBvcnRlZClcbiAgY29uc3QgcmV2ZXJzZWRPcmRlciA9IGZpbmRPdXRPZk9yZGVyKHJldmVyc2VkSW1wb3J0ZWQpXG4gIGlmIChyZXZlcnNlZE9yZGVyLmxlbmd0aCA8IG91dE9mT3JkZXIubGVuZ3RoKSB7XG4gICAgcmVwb3J0T3V0T2ZPcmRlcihjb250ZXh0LCByZXZlcnNlZEltcG9ydGVkLCByZXZlcnNlZE9yZGVyLCAnYWZ0ZXInKVxuICAgIHJldHVyblxuICB9XG4gIHJlcG9ydE91dE9mT3JkZXIoY29udGV4dCwgaW1wb3J0ZWQsIG91dE9mT3JkZXIsICdiZWZvcmUnKVxufVxuXG5mdW5jdGlvbiBnZXRTb3J0ZXIoYXNjZW5kaW5nKSB7XG4gIGNvbnN0IG11bHRpcGxpZXIgPSBhc2NlbmRpbmcgPyAxIDogLTFcblxuICByZXR1cm4gZnVuY3Rpb24gaW1wb3J0c1NvcnRlcihpbXBvcnRBLCBpbXBvcnRCKSB7XG4gICAgbGV0IHJlc3VsdFxuXG4gICAgaWYgKGltcG9ydEEgPCBpbXBvcnRCKSB7XG4gICAgICByZXN1bHQgPSAtMVxuICAgIH0gZWxzZSBpZiAoaW1wb3J0QSA+IGltcG9ydEIpIHtcbiAgICAgIHJlc3VsdCA9IDFcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzdWx0ID0gMFxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQgKiBtdWx0aXBsaWVyXG4gIH1cbn1cblxuZnVuY3Rpb24gbXV0YXRlUmFua3NUb0FscGhhYmV0aXplKGltcG9ydGVkLCBhbHBoYWJldGl6ZU9wdGlvbnMpIHtcbiAgY29uc3QgZ3JvdXBlZEJ5UmFua3MgPSBpbXBvcnRlZC5yZWR1Y2UoZnVuY3Rpb24oYWNjLCBpbXBvcnRlZEl0ZW0pIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoYWNjW2ltcG9ydGVkSXRlbS5yYW5rXSkpIHtcbiAgICAgIGFjY1tpbXBvcnRlZEl0ZW0ucmFua10gPSBbXVxuICAgIH1cbiAgICBhY2NbaW1wb3J0ZWRJdGVtLnJhbmtdLnB1c2goaW1wb3J0ZWRJdGVtLnZhbHVlKVxuICAgIHJldHVybiBhY2NcbiAgfSwge30pXG5cbiAgY29uc3QgZ3JvdXBSYW5rcyA9IE9iamVjdC5rZXlzKGdyb3VwZWRCeVJhbmtzKVxuXG4gIGNvbnN0IHNvcnRlckZuID0gZ2V0U29ydGVyKGFscGhhYmV0aXplT3B0aW9ucy5vcmRlciA9PT0gJ2FzYycpXG4gIGNvbnN0IGNvbXBhcmF0b3IgPSBhbHBoYWJldGl6ZU9wdGlvbnMuY2FzZUluc2Vuc2l0aXZlID8gKGEsIGIpID0+IHNvcnRlckZuKFN0cmluZyhhKS50b0xvd2VyQ2FzZSgpLCBTdHJpbmcoYikudG9Mb3dlckNhc2UoKSkgOiAoYSwgYikgPT4gc29ydGVyRm4oYSwgYilcbiAgLy8gc29ydCBpbXBvcnRzIGxvY2FsbHkgd2l0aGluIHRoZWlyIGdyb3VwXG4gIGdyb3VwUmFua3MuZm9yRWFjaChmdW5jdGlvbihncm91cFJhbmspIHtcbiAgICBncm91cGVkQnlSYW5rc1tncm91cFJhbmtdLnNvcnQoY29tcGFyYXRvcilcbiAgfSlcblxuICAvLyBhc3NpZ24gZ2xvYmFsbHkgdW5pcXVlIHJhbmsgdG8gZWFjaCBpbXBvcnRcbiAgbGV0IG5ld1JhbmsgPSAwXG4gIGNvbnN0IGFscGhhYmV0aXplZFJhbmtzID0gZ3JvdXBSYW5rcy5zb3J0KCkucmVkdWNlKGZ1bmN0aW9uKGFjYywgZ3JvdXBSYW5rKSB7XG4gICAgZ3JvdXBlZEJ5UmFua3NbZ3JvdXBSYW5rXS5mb3JFYWNoKGZ1bmN0aW9uKGltcG9ydGVkSXRlbU5hbWUpIHtcbiAgICAgIGFjY1tpbXBvcnRlZEl0ZW1OYW1lXSA9IHBhcnNlSW50KGdyb3VwUmFuaywgMTApICsgbmV3UmFua1xuICAgICAgbmV3UmFuayArPSAxXG4gICAgfSlcbiAgICByZXR1cm4gYWNjXG4gIH0sIHt9KVxuXG4gIC8vIG11dGF0ZSB0aGUgb3JpZ2luYWwgZ3JvdXAtcmFuayB3aXRoIGFscGhhYmV0aXplZC1yYW5rXG4gIGltcG9ydGVkLmZvckVhY2goZnVuY3Rpb24oaW1wb3J0ZWRJdGVtKSB7XG4gICAgaW1wb3J0ZWRJdGVtLnJhbmsgPSBhbHBoYWJldGl6ZWRSYW5rc1tpbXBvcnRlZEl0ZW0udmFsdWVdXG4gIH0pXG59XG5cbi8vIERFVEVDVElOR1xuXG5mdW5jdGlvbiBjb21wdXRlUGF0aFJhbmsocmFua3MsIHBhdGhHcm91cHMsIHBhdGgsIG1heFBvc2l0aW9uKSB7XG4gIGZvciAobGV0IGkgPSAwLCBsID0gcGF0aEdyb3Vwcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICBjb25zdCB7IHBhdHRlcm4sIHBhdHRlcm5PcHRpb25zLCBncm91cCwgcG9zaXRpb24gPSAxIH0gPSBwYXRoR3JvdXBzW2ldXG4gICAgaWYgKG1pbmltYXRjaChwYXRoLCBwYXR0ZXJuLCBwYXR0ZXJuT3B0aW9ucyB8fCB7IG5vY29tbWVudDogdHJ1ZSB9KSkge1xuICAgICAgcmV0dXJuIHJhbmtzW2dyb3VwXSArIChwb3NpdGlvbiAvIG1heFBvc2l0aW9uKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBjb21wdXRlUmFuayhjb250ZXh0LCByYW5rcywgaW1wb3J0RW50cnksIGV4Y2x1ZGVkSW1wb3J0VHlwZXMpIHtcbiAgbGV0IGltcFR5cGVcbiAgbGV0IHJhbmtcbiAgaWYgKGltcG9ydEVudHJ5LnR5cGUgPT09ICdpbXBvcnQ6b2JqZWN0Jykge1xuICAgIGltcFR5cGUgPSAnb2JqZWN0J1xuICB9IGVsc2Uge1xuICAgIGltcFR5cGUgPSBpbXBvcnRUeXBlKGltcG9ydEVudHJ5LnZhbHVlLCBjb250ZXh0KVxuICB9XG4gIGlmICghZXhjbHVkZWRJbXBvcnRUeXBlcy5oYXMoaW1wVHlwZSkpIHtcbiAgICByYW5rID0gY29tcHV0ZVBhdGhSYW5rKHJhbmtzLmdyb3VwcywgcmFua3MucGF0aEdyb3VwcywgaW1wb3J0RW50cnkudmFsdWUsIHJhbmtzLm1heFBvc2l0aW9uKVxuICB9XG4gIGlmICh0eXBlb2YgcmFuayA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByYW5rID0gcmFua3MuZ3JvdXBzW2ltcFR5cGVdXG4gIH1cbiAgaWYgKGltcG9ydEVudHJ5LnR5cGUgIT09ICdpbXBvcnQnICYmICFpbXBvcnRFbnRyeS50eXBlLnN0YXJ0c1dpdGgoJ2ltcG9ydDonKSkge1xuICAgIHJhbmsgKz0gMTAwXG4gIH1cblxuICByZXR1cm4gcmFua1xufVxuXG5mdW5jdGlvbiByZWdpc3Rlck5vZGUoY29udGV4dCwgaW1wb3J0RW50cnksIHJhbmtzLCBpbXBvcnRlZCwgZXhjbHVkZWRJbXBvcnRUeXBlcykge1xuICBjb25zdCByYW5rID0gY29tcHV0ZVJhbmsoY29udGV4dCwgcmFua3MsIGltcG9ydEVudHJ5LCBleGNsdWRlZEltcG9ydFR5cGVzKVxuICBpZiAocmFuayAhPT0gLTEpIHtcbiAgICBpbXBvcnRlZC5wdXNoKE9iamVjdC5hc3NpZ24oe30sIGltcG9ydEVudHJ5LCB7IHJhbmsgfSkpXG4gIH1cbn1cblxuZnVuY3Rpb24gaXNJblZhcmlhYmxlRGVjbGFyYXRvcihub2RlKSB7XG4gIHJldHVybiBub2RlICYmXG4gICAgKG5vZGUudHlwZSA9PT0gJ1ZhcmlhYmxlRGVjbGFyYXRvcicgfHwgaXNJblZhcmlhYmxlRGVjbGFyYXRvcihub2RlLnBhcmVudCkpXG59XG5cbmNvbnN0IHR5cGVzID0gWydidWlsdGluJywgJ2V4dGVybmFsJywgJ2ludGVybmFsJywgJ3Vua25vd24nLCAncGFyZW50JywgJ3NpYmxpbmcnLCAnaW5kZXgnLCAnb2JqZWN0J11cblxuLy8gQ3JlYXRlcyBhbiBvYmplY3Qgd2l0aCB0eXBlLXJhbmsgcGFpcnMuXG4vLyBFeGFtcGxlOiB7IGluZGV4OiAwLCBzaWJsaW5nOiAxLCBwYXJlbnQ6IDEsIGV4dGVybmFsOiAxLCBidWlsdGluOiAyLCBpbnRlcm5hbDogMiB9XG4vLyBXaWxsIHRocm93IGFuIGVycm9yIGlmIGl0IGNvbnRhaW5zIGEgdHlwZSB0aGF0IGRvZXMgbm90IGV4aXN0LCBvciBoYXMgYSBkdXBsaWNhdGVcbmZ1bmN0aW9uIGNvbnZlcnRHcm91cHNUb1JhbmtzKGdyb3Vwcykge1xuICBjb25zdCByYW5rT2JqZWN0ID0gZ3JvdXBzLnJlZHVjZShmdW5jdGlvbihyZXMsIGdyb3VwLCBpbmRleCkge1xuICAgIGlmICh0eXBlb2YgZ3JvdXAgPT09ICdzdHJpbmcnKSB7XG4gICAgICBncm91cCA9IFtncm91cF1cbiAgICB9XG4gICAgZ3JvdXAuZm9yRWFjaChmdW5jdGlvbihncm91cEl0ZW0pIHtcbiAgICAgIGlmICh0eXBlcy5pbmRleE9mKGdyb3VwSXRlbSkgPT09IC0xKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW5jb3JyZWN0IGNvbmZpZ3VyYXRpb24gb2YgdGhlIHJ1bGU6IFVua25vd24gdHlwZSBgJyArXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkoZ3JvdXBJdGVtKSArICdgJylcbiAgICAgIH1cbiAgICAgIGlmIChyZXNbZ3JvdXBJdGVtXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW5jb3JyZWN0IGNvbmZpZ3VyYXRpb24gb2YgdGhlIHJ1bGU6IGAnICsgZ3JvdXBJdGVtICsgJ2AgaXMgZHVwbGljYXRlZCcpXG4gICAgICB9XG4gICAgICByZXNbZ3JvdXBJdGVtXSA9IGluZGV4XG4gICAgfSlcbiAgICByZXR1cm4gcmVzXG4gIH0sIHt9KVxuXG4gIGNvbnN0IG9taXR0ZWRUeXBlcyA9IHR5cGVzLmZpbHRlcihmdW5jdGlvbih0eXBlKSB7XG4gICAgcmV0dXJuIHJhbmtPYmplY3RbdHlwZV0gPT09IHVuZGVmaW5lZFxuICB9KVxuXG4gIHJldHVybiBvbWl0dGVkVHlwZXMucmVkdWNlKGZ1bmN0aW9uKHJlcywgdHlwZSkge1xuICAgIHJlc1t0eXBlXSA9IGdyb3Vwcy5sZW5ndGhcbiAgICByZXR1cm4gcmVzXG4gIH0sIHJhbmtPYmplY3QpXG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRQYXRoR3JvdXBzRm9yUmFua3MocGF0aEdyb3Vwcykge1xuICBjb25zdCBhZnRlciA9IHt9XG4gIGNvbnN0IGJlZm9yZSA9IHt9XG5cbiAgY29uc3QgdHJhbnNmb3JtZWQgPSBwYXRoR3JvdXBzLm1hcCgocGF0aEdyb3VwLCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IHsgZ3JvdXAsIHBvc2l0aW9uOiBwb3NpdGlvblN0cmluZyB9ID0gcGF0aEdyb3VwXG4gICAgbGV0IHBvc2l0aW9uID0gMFxuICAgIGlmIChwb3NpdGlvblN0cmluZyA9PT0gJ2FmdGVyJykge1xuICAgICAgaWYgKCFhZnRlcltncm91cF0pIHtcbiAgICAgICAgYWZ0ZXJbZ3JvdXBdID0gMVxuICAgICAgfVxuICAgICAgcG9zaXRpb24gPSBhZnRlcltncm91cF0rK1xuICAgIH0gZWxzZSBpZiAocG9zaXRpb25TdHJpbmcgPT09ICdiZWZvcmUnKSB7XG4gICAgICBpZiAoIWJlZm9yZVtncm91cF0pIHtcbiAgICAgICAgYmVmb3JlW2dyb3VwXSA9IFtdXG4gICAgICB9XG4gICAgICBiZWZvcmVbZ3JvdXBdLnB1c2goaW5kZXgpXG4gICAgfVxuXG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHBhdGhHcm91cCwgeyBwb3NpdGlvbiB9KVxuICB9KVxuXG4gIGxldCBtYXhQb3NpdGlvbiA9IDFcblxuICBPYmplY3Qua2V5cyhiZWZvcmUpLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBMZW5ndGggPSBiZWZvcmVbZ3JvdXBdLmxlbmd0aFxuICAgIGJlZm9yZVtncm91cF0uZm9yRWFjaCgoZ3JvdXBJbmRleCwgaW5kZXgpID0+IHtcbiAgICAgIHRyYW5zZm9ybWVkW2dyb3VwSW5kZXhdLnBvc2l0aW9uID0gLTEgKiAoZ3JvdXBMZW5ndGggLSBpbmRleClcbiAgICB9KVxuICAgIG1heFBvc2l0aW9uID0gTWF0aC5tYXgobWF4UG9zaXRpb24sIGdyb3VwTGVuZ3RoKVxuICB9KVxuXG4gIE9iamVjdC5rZXlzKGFmdGVyKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICBjb25zdCBncm91cE5leHRQb3NpdGlvbiA9IGFmdGVyW2tleV1cbiAgICBtYXhQb3NpdGlvbiA9IE1hdGgubWF4KG1heFBvc2l0aW9uLCBncm91cE5leHRQb3NpdGlvbiAtIDEpXG4gIH0pXG5cbiAgcmV0dXJuIHtcbiAgICBwYXRoR3JvdXBzOiB0cmFuc2Zvcm1lZCxcbiAgICBtYXhQb3NpdGlvbjogbWF4UG9zaXRpb24gPiAxMCA/IE1hdGgucG93KDEwLCBNYXRoLmNlaWwoTWF0aC5sb2cxMChtYXhQb3NpdGlvbikpKSA6IDEwLFxuICB9XG59XG5cbmZ1bmN0aW9uIGZpeE5ld0xpbmVBZnRlckltcG9ydChjb250ZXh0LCBwcmV2aW91c0ltcG9ydCkge1xuICBjb25zdCBwcmV2Um9vdCA9IGZpbmRSb290Tm9kZShwcmV2aW91c0ltcG9ydC5ub2RlKVxuICBjb25zdCB0b2tlbnNUb0VuZE9mTGluZSA9IHRha2VUb2tlbnNBZnRlcldoaWxlKFxuICAgIGNvbnRleHQuZ2V0U291cmNlQ29kZSgpLCBwcmV2Um9vdCwgY29tbWVudE9uU2FtZUxpbmVBcyhwcmV2Um9vdCkpXG5cbiAgbGV0IGVuZE9mTGluZSA9IHByZXZSb290LnJhbmdlWzFdXG4gIGlmICh0b2tlbnNUb0VuZE9mTGluZS5sZW5ndGggPiAwKSB7XG4gICAgZW5kT2ZMaW5lID0gdG9rZW5zVG9FbmRPZkxpbmVbdG9rZW5zVG9FbmRPZkxpbmUubGVuZ3RoIC0gMV0ucmFuZ2VbMV1cbiAgfVxuICByZXR1cm4gKGZpeGVyKSA9PiBmaXhlci5pbnNlcnRUZXh0QWZ0ZXJSYW5nZShbcHJldlJvb3QucmFuZ2VbMF0sIGVuZE9mTGluZV0sICdcXG4nKVxufVxuXG5mdW5jdGlvbiByZW1vdmVOZXdMaW5lQWZ0ZXJJbXBvcnQoY29udGV4dCwgY3VycmVudEltcG9ydCwgcHJldmlvdXNJbXBvcnQpIHtcbiAgY29uc3Qgc291cmNlQ29kZSA9IGNvbnRleHQuZ2V0U291cmNlQ29kZSgpXG4gIGNvbnN0IHByZXZSb290ID0gZmluZFJvb3ROb2RlKHByZXZpb3VzSW1wb3J0Lm5vZGUpXG4gIGNvbnN0IGN1cnJSb290ID0gZmluZFJvb3ROb2RlKGN1cnJlbnRJbXBvcnQubm9kZSlcbiAgY29uc3QgcmFuZ2VUb1JlbW92ZSA9IFtcbiAgICBmaW5kRW5kT2ZMaW5lV2l0aENvbW1lbnRzKHNvdXJjZUNvZGUsIHByZXZSb290KSxcbiAgICBmaW5kU3RhcnRPZkxpbmVXaXRoQ29tbWVudHMoc291cmNlQ29kZSwgY3VyclJvb3QpLFxuICBdXG4gIGlmICgvXlxccyokLy50ZXN0KHNvdXJjZUNvZGUudGV4dC5zdWJzdHJpbmcocmFuZ2VUb1JlbW92ZVswXSwgcmFuZ2VUb1JlbW92ZVsxXSkpKSB7XG4gICAgcmV0dXJuIChmaXhlcikgPT4gZml4ZXIucmVtb3ZlUmFuZ2UocmFuZ2VUb1JlbW92ZSlcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkXG59XG5cbmZ1bmN0aW9uIG1ha2VOZXdsaW5lc0JldHdlZW5SZXBvcnQgKGNvbnRleHQsIGltcG9ydGVkLCBuZXdsaW5lc0JldHdlZW5JbXBvcnRzKSB7XG4gIGNvbnN0IGdldE51bWJlck9mRW1wdHlMaW5lc0JldHdlZW4gPSAoY3VycmVudEltcG9ydCwgcHJldmlvdXNJbXBvcnQpID0+IHtcbiAgICBjb25zdCBsaW5lc0JldHdlZW5JbXBvcnRzID0gY29udGV4dC5nZXRTb3VyY2VDb2RlKCkubGluZXMuc2xpY2UoXG4gICAgICBwcmV2aW91c0ltcG9ydC5ub2RlLmxvYy5lbmQubGluZSxcbiAgICAgIGN1cnJlbnRJbXBvcnQubm9kZS5sb2Muc3RhcnQubGluZSAtIDFcbiAgICApXG5cbiAgICByZXR1cm4gbGluZXNCZXR3ZWVuSW1wb3J0cy5maWx0ZXIoKGxpbmUpID0+ICFsaW5lLnRyaW0oKS5sZW5ndGgpLmxlbmd0aFxuICB9XG4gIGxldCBwcmV2aW91c0ltcG9ydCA9IGltcG9ydGVkWzBdXG5cbiAgaW1wb3J0ZWQuc2xpY2UoMSkuZm9yRWFjaChmdW5jdGlvbihjdXJyZW50SW1wb3J0KSB7XG4gICAgY29uc3QgZW1wdHlMaW5lc0JldHdlZW4gPSBnZXROdW1iZXJPZkVtcHR5TGluZXNCZXR3ZWVuKGN1cnJlbnRJbXBvcnQsIHByZXZpb3VzSW1wb3J0KVxuXG4gICAgaWYgKG5ld2xpbmVzQmV0d2VlbkltcG9ydHMgPT09ICdhbHdheXMnXG4gICAgICAgIHx8IG5ld2xpbmVzQmV0d2VlbkltcG9ydHMgPT09ICdhbHdheXMtYW5kLWluc2lkZS1ncm91cHMnKSB7XG4gICAgICBpZiAoY3VycmVudEltcG9ydC5yYW5rICE9PSBwcmV2aW91c0ltcG9ydC5yYW5rICYmIGVtcHR5TGluZXNCZXR3ZWVuID09PSAwKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlOiBwcmV2aW91c0ltcG9ydC5ub2RlLFxuICAgICAgICAgIG1lc3NhZ2U6ICdUaGVyZSBzaG91bGQgYmUgYXQgbGVhc3Qgb25lIGVtcHR5IGxpbmUgYmV0d2VlbiBpbXBvcnQgZ3JvdXBzJyxcbiAgICAgICAgICBmaXg6IGZpeE5ld0xpbmVBZnRlckltcG9ydChjb250ZXh0LCBwcmV2aW91c0ltcG9ydCksXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2UgaWYgKGN1cnJlbnRJbXBvcnQucmFuayA9PT0gcHJldmlvdXNJbXBvcnQucmFua1xuICAgICAgICAmJiBlbXB0eUxpbmVzQmV0d2VlbiA+IDBcbiAgICAgICAgJiYgbmV3bGluZXNCZXR3ZWVuSW1wb3J0cyAhPT0gJ2Fsd2F5cy1hbmQtaW5zaWRlLWdyb3VwcycpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIG5vZGU6IHByZXZpb3VzSW1wb3J0Lm5vZGUsXG4gICAgICAgICAgbWVzc2FnZTogJ1RoZXJlIHNob3VsZCBiZSBubyBlbXB0eSBsaW5lIHdpdGhpbiBpbXBvcnQgZ3JvdXAnLFxuICAgICAgICAgIGZpeDogcmVtb3ZlTmV3TGluZUFmdGVySW1wb3J0KGNvbnRleHQsIGN1cnJlbnRJbXBvcnQsIHByZXZpb3VzSW1wb3J0KSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGVtcHR5TGluZXNCZXR3ZWVuID4gMCkge1xuICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICBub2RlOiBwcmV2aW91c0ltcG9ydC5ub2RlLFxuICAgICAgICBtZXNzYWdlOiAnVGhlcmUgc2hvdWxkIGJlIG5vIGVtcHR5IGxpbmUgYmV0d2VlbiBpbXBvcnQgZ3JvdXBzJyxcbiAgICAgICAgZml4OiByZW1vdmVOZXdMaW5lQWZ0ZXJJbXBvcnQoY29udGV4dCwgY3VycmVudEltcG9ydCwgcHJldmlvdXNJbXBvcnQpLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBwcmV2aW91c0ltcG9ydCA9IGN1cnJlbnRJbXBvcnRcbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2V0QWxwaGFiZXRpemVDb25maWcob3B0aW9ucykge1xuICBjb25zdCBhbHBoYWJldGl6ZSA9IG9wdGlvbnMuYWxwaGFiZXRpemUgfHwge31cbiAgY29uc3Qgb3JkZXIgPSBhbHBoYWJldGl6ZS5vcmRlciB8fCAnaWdub3JlJ1xuICBjb25zdCBjYXNlSW5zZW5zaXRpdmUgPSBhbHBoYWJldGl6ZS5jYXNlSW5zZW5zaXRpdmUgfHwgZmFsc2VcblxuICByZXR1cm4ge29yZGVyLCBjYXNlSW5zZW5zaXRpdmV9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgnb3JkZXInKSxcbiAgICB9LFxuXG4gICAgZml4YWJsZTogJ2NvZGUnLFxuICAgIHNjaGVtYTogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGdyb3Vwczoge1xuICAgICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBhdGhHcm91cHNFeGNsdWRlZEltcG9ydFR5cGVzOiB7XG4gICAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGF0aEdyb3Vwczoge1xuICAgICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgcGF0dGVybjoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYXR0ZXJuT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBncm91cDoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgICBlbnVtOiB0eXBlcyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICAgIGVudW06IFsnYWZ0ZXInLCAnYmVmb3JlJ10sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsncGF0dGVybicsICdncm91cCddLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgICduZXdsaW5lcy1iZXR3ZWVuJzoge1xuICAgICAgICAgICAgZW51bTogW1xuICAgICAgICAgICAgICAnaWdub3JlJyxcbiAgICAgICAgICAgICAgJ2Fsd2F5cycsXG4gICAgICAgICAgICAgICdhbHdheXMtYW5kLWluc2lkZS1ncm91cHMnLFxuICAgICAgICAgICAgICAnbmV2ZXInLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGFscGhhYmV0aXplOiB7XG4gICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgY2FzZUluc2Vuc2l0aXZlOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBvcmRlcjoge1xuICAgICAgICAgICAgICAgIGVudW06IFsnaWdub3JlJywgJ2FzYycsICdkZXNjJ10sXG4gICAgICAgICAgICAgICAgZGVmYXVsdDogJ2lnbm9yZScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uIGltcG9ydE9yZGVyUnVsZSAoY29udGV4dCkge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge31cbiAgICBjb25zdCBuZXdsaW5lc0JldHdlZW5JbXBvcnRzID0gb3B0aW9uc1snbmV3bGluZXMtYmV0d2VlbiddIHx8ICdpZ25vcmUnXG4gICAgY29uc3QgcGF0aEdyb3Vwc0V4Y2x1ZGVkSW1wb3J0VHlwZXMgPSBuZXcgU2V0KG9wdGlvbnNbJ3BhdGhHcm91cHNFeGNsdWRlZEltcG9ydFR5cGVzJ10gfHwgWydidWlsdGluJywgJ2V4dGVybmFsJywgJ29iamVjdCddKVxuICAgIGNvbnN0IGFscGhhYmV0aXplID0gZ2V0QWxwaGFiZXRpemVDb25maWcob3B0aW9ucylcbiAgICBsZXQgcmFua3NcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IHBhdGhHcm91cHMsIG1heFBvc2l0aW9uIH0gPSBjb252ZXJ0UGF0aEdyb3Vwc0ZvclJhbmtzKG9wdGlvbnMucGF0aEdyb3VwcyB8fCBbXSlcbiAgICAgIHJhbmtzID0ge1xuICAgICAgICBncm91cHM6IGNvbnZlcnRHcm91cHNUb1JhbmtzKG9wdGlvbnMuZ3JvdXBzIHx8IGRlZmF1bHRHcm91cHMpLFxuICAgICAgICBwYXRoR3JvdXBzLFxuICAgICAgICBtYXhQb3NpdGlvbixcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gTWFsZm9ybWVkIGNvbmZpZ3VyYXRpb25cbiAgICAgIHJldHVybiB7XG4gICAgICAgIFByb2dyYW06IGZ1bmN0aW9uKG5vZGUpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydChub2RlLCBlcnJvci5tZXNzYWdlKVxuICAgICAgICB9LFxuICAgICAgfVxuICAgIH1cbiAgICBsZXQgaW1wb3J0ZWQgPSBbXVxuICAgIGxldCBsZXZlbCA9IDBcblxuICAgIGZ1bmN0aW9uIGluY3JlbWVudExldmVsKCkge1xuICAgICAgbGV2ZWwrK1xuICAgIH1cbiAgICBmdW5jdGlvbiBkZWNyZW1lbnRMZXZlbCgpIHtcbiAgICAgIGxldmVsLS1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb246IGZ1bmN0aW9uIGhhbmRsZUltcG9ydHMobm9kZSkge1xuICAgICAgICBpZiAobm9kZS5zcGVjaWZpZXJzLmxlbmd0aCkgeyAvLyBJZ25vcmluZyB1bmFzc2lnbmVkIGltcG9ydHNcbiAgICAgICAgICBjb25zdCBuYW1lID0gbm9kZS5zb3VyY2UudmFsdWVcbiAgICAgICAgICByZWdpc3Rlck5vZGUoXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICB2YWx1ZTogbmFtZSxcbiAgICAgICAgICAgICAgZGlzcGxheU5hbWU6IG5hbWUsXG4gICAgICAgICAgICAgIHR5cGU6ICdpbXBvcnQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJhbmtzLFxuICAgICAgICAgICAgaW1wb3J0ZWQsXG4gICAgICAgICAgICBwYXRoR3JvdXBzRXhjbHVkZWRJbXBvcnRUeXBlc1xuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFRTSW1wb3J0RXF1YWxzRGVjbGFyYXRpb246IGZ1bmN0aW9uIGhhbmRsZUltcG9ydHMobm9kZSkge1xuICAgICAgICBsZXQgZGlzcGxheU5hbWVcbiAgICAgICAgbGV0IHZhbHVlXG4gICAgICAgIGxldCB0eXBlXG4gICAgICAgIC8vIHNraXAgXCJleHBvcnQgaW1wb3J0XCJzXG4gICAgICAgIGlmIChub2RlLmlzRXhwb3J0KSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5vZGUubW9kdWxlUmVmZXJlbmNlLnR5cGUgPT09ICdUU0V4dGVybmFsTW9kdWxlUmVmZXJlbmNlJykge1xuICAgICAgICAgIHZhbHVlID0gbm9kZS5tb2R1bGVSZWZlcmVuY2UuZXhwcmVzc2lvbi52YWx1ZVxuICAgICAgICAgIGRpc3BsYXlOYW1lID0gdmFsdWVcbiAgICAgICAgICB0eXBlID0gJ2ltcG9ydCdcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB2YWx1ZSA9ICcnXG4gICAgICAgICAgZGlzcGxheU5hbWUgPSBjb250ZXh0LmdldFNvdXJjZUNvZGUoKS5nZXRUZXh0KG5vZGUubW9kdWxlUmVmZXJlbmNlKVxuICAgICAgICAgIHR5cGUgPSAnaW1wb3J0Om9iamVjdCdcbiAgICAgICAgfVxuICAgICAgICByZWdpc3Rlck5vZGUoXG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICBkaXNwbGF5TmFtZSxcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICByYW5rcyxcbiAgICAgICAgICBpbXBvcnRlZCxcbiAgICAgICAgICBwYXRoR3JvdXBzRXhjbHVkZWRJbXBvcnRUeXBlc1xuICAgICAgICApXG4gICAgICB9LFxuICAgICAgQ2FsbEV4cHJlc3Npb246IGZ1bmN0aW9uIGhhbmRsZVJlcXVpcmVzKG5vZGUpIHtcbiAgICAgICAgaWYgKGxldmVsICE9PSAwIHx8ICFpc1N0YXRpY1JlcXVpcmUobm9kZSkgfHwgIWlzSW5WYXJpYWJsZURlY2xhcmF0b3Iobm9kZS5wYXJlbnQpKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmFtZSA9IG5vZGUuYXJndW1lbnRzWzBdLnZhbHVlXG4gICAgICAgIHJlZ2lzdGVyTm9kZShcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICB2YWx1ZTogbmFtZSxcbiAgICAgICAgICAgIGRpc3BsYXlOYW1lOiBuYW1lLFxuICAgICAgICAgICAgdHlwZTogJ3JlcXVpcmUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmFua3MsXG4gICAgICAgICAgaW1wb3J0ZWQsXG4gICAgICAgICAgcGF0aEdyb3Vwc0V4Y2x1ZGVkSW1wb3J0VHlwZXNcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgICdQcm9ncmFtOmV4aXQnOiBmdW5jdGlvbiByZXBvcnRBbmRSZXNldCgpIHtcbiAgICAgICAgaWYgKG5ld2xpbmVzQmV0d2VlbkltcG9ydHMgIT09ICdpZ25vcmUnKSB7XG4gICAgICAgICAgbWFrZU5ld2xpbmVzQmV0d2VlblJlcG9ydChjb250ZXh0LCBpbXBvcnRlZCwgbmV3bGluZXNCZXR3ZWVuSW1wb3J0cylcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhbHBoYWJldGl6ZS5vcmRlciAhPT0gJ2lnbm9yZScpIHtcbiAgICAgICAgICBtdXRhdGVSYW5rc1RvQWxwaGFiZXRpemUoaW1wb3J0ZWQsIGFscGhhYmV0aXplKVxuICAgICAgICB9XG5cbiAgICAgICAgbWFrZU91dE9mT3JkZXJSZXBvcnQoY29udGV4dCwgaW1wb3J0ZWQpXG5cbiAgICAgICAgaW1wb3J0ZWQgPSBbXVxuICAgICAgfSxcbiAgICAgIEZ1bmN0aW9uRGVjbGFyYXRpb246IGluY3JlbWVudExldmVsLFxuICAgICAgRnVuY3Rpb25FeHByZXNzaW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIEFycm93RnVuY3Rpb25FeHByZXNzaW9uOiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIEJsb2NrU3RhdGVtZW50OiBpbmNyZW1lbnRMZXZlbCxcbiAgICAgIE9iamVjdEV4cHJlc3Npb246IGluY3JlbWVudExldmVsLFxuICAgICAgJ0Z1bmN0aW9uRGVjbGFyYXRpb246ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ0Z1bmN0aW9uRXhwcmVzc2lvbjpleGl0JzogZGVjcmVtZW50TGV2ZWwsXG4gICAgICAnQXJyb3dGdW5jdGlvbkV4cHJlc3Npb246ZXhpdCc6IGRlY3JlbWVudExldmVsLFxuICAgICAgJ0Jsb2NrU3RhdGVtZW50OmV4aXQnOiBkZWNyZW1lbnRMZXZlbCxcbiAgICAgICdPYmplY3RFeHByZXNzaW9uOmV4aXQnOiBkZWNyZW1lbnRMZXZlbCxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/prefer-default-export.js b/node_modules/eslint-plugin-import/lib/rules/prefer-default-export.js index 7d42ea17..da0c31ee 100644 --- a/node_modules/eslint-plugin-import/lib/rules/prefer-default-export.js +++ b/node_modules/eslint-plugin-import/lib/rules/prefer-default-export.js @@ -1,19 +1,15 @@ 'use strict'; -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('prefer-default-export') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('prefer-default-export') }, + + schema: [] }, + create: function (context) { let specifierExportCount = 0; @@ -25,11 +21,13 @@ module.exports = { function captureDeclaration(identifierOrPattern) { if (identifierOrPattern.type === 'ObjectPattern') { // recursively capture - identifierOrPattern.properties.forEach(function (property) { + identifierOrPattern.properties. + forEach(function (property) { captureDeclaration(property.value); }); } else if (identifierOrPattern.type === 'ArrayPattern') { - identifierOrPattern.elements.forEach(captureDeclaration); + identifierOrPattern.elements. + forEach(captureDeclaration); } else { // assume it's a single standard identifier specifierExportCount++; @@ -52,12 +50,16 @@ module.exports = { 'ExportNamedDeclaration': function (node) { // if there are specifiers, node.declaration should be null - if (!node.declaration) return; + if (!node.declaration) return;const - const type = node.declaration.type; + type = node.declaration.type; - - if (type === 'TSTypeAliasDeclaration' || type === 'TypeAlias' || type === 'TSInterfaceDeclaration' || type === 'InterfaceDeclaration') { + if ( + type === 'TSTypeAliasDeclaration' || + type === 'TypeAlias' || + type === 'TSInterfaceDeclaration' || + type === 'InterfaceDeclaration') + { specifierExportCount++; hasTypeExport = true; return; @@ -67,7 +69,8 @@ module.exports = { node.declaration.declarations.forEach(function (declaration) { captureDeclaration(declaration.id); }); - } else { + } else + { // captures 'export function foo() {}' syntax specifierExportCount++; } @@ -87,8 +90,7 @@ module.exports = { if (specifierExportCount === 1 && !hasDefaultExport && !hasStarExport && !hasTypeExport) { context.report(namedExportNode, 'Prefer default export.'); } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9wcmVmZXItZGVmYXVsdC1leHBvcnQuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJzcGVjaWZpZXJFeHBvcnRDb3VudCIsImhhc0RlZmF1bHRFeHBvcnQiLCJoYXNTdGFyRXhwb3J0IiwiaGFzVHlwZUV4cG9ydCIsIm5hbWVkRXhwb3J0Tm9kZSIsImNhcHR1cmVEZWNsYXJhdGlvbiIsImlkZW50aWZpZXJPclBhdHRlcm4iLCJwcm9wZXJ0aWVzIiwiZm9yRWFjaCIsInByb3BlcnR5IiwidmFsdWUiLCJlbGVtZW50cyIsIm5vZGUiLCJleHBvcnRlZCIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsImRlY2xhcmF0aW9ucyIsImlkIiwicmVwb3J0Il0sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTs7Ozs7O0FBRUFBLE9BQU9DLE9BQVAsR0FBaUI7QUFDZkMsUUFBTTtBQUNKQyxVQUFNLFlBREY7QUFFSkMsVUFBTTtBQUNKQyxXQUFLLHVCQUFRLHVCQUFSO0FBREQsS0FGRjtBQUtKQyxZQUFRO0FBTEosR0FEUzs7QUFTZkMsVUFBUSxVQUFTQyxPQUFULEVBQWtCO0FBQ3hCLFFBQUlDLHVCQUF1QixDQUEzQjtBQUNBLFFBQUlDLG1CQUFtQixLQUF2QjtBQUNBLFFBQUlDLGdCQUFnQixLQUFwQjtBQUNBLFFBQUlDLGdCQUFnQixLQUFwQjtBQUNBLFFBQUlDLGtCQUFrQixJQUF0Qjs7QUFFQSxhQUFTQyxrQkFBVCxDQUE0QkMsbUJBQTVCLEVBQWlEO0FBQy9DLFVBQUlBLG9CQUFvQlosSUFBcEIsS0FBNkIsZUFBakMsRUFBa0Q7QUFDaEQ7QUFDQVksNEJBQW9CQyxVQUFwQixDQUNHQyxPQURILENBQ1csVUFBU0MsUUFBVCxFQUFtQjtBQUMxQkosNkJBQW1CSSxTQUFTQyxLQUE1QjtBQUNELFNBSEg7QUFJRCxPQU5ELE1BTU8sSUFBSUosb0JBQW9CWixJQUFwQixLQUE2QixjQUFqQyxFQUFpRDtBQUN0RFksNEJBQW9CSyxRQUFwQixDQUNHSCxPQURILENBQ1dILGtCQURYO0FBRUQsT0FITSxNQUdDO0FBQ1I7QUFDRUw7QUFDRDtBQUNGOztBQUVELFdBQU87QUFDTCxnQ0FBMEIsWUFBVztBQUNuQ0MsMkJBQW1CLElBQW5CO0FBQ0QsT0FISTs7QUFLTCx5QkFBbUIsVUFBU1csSUFBVCxFQUFlO0FBQ2hDLFlBQUlBLEtBQUtDLFFBQUwsQ0FBY0MsSUFBZCxLQUF1QixTQUEzQixFQUFzQztBQUNwQ2IsNkJBQW1CLElBQW5CO0FBQ0QsU0FGRCxNQUVPO0FBQ0xEO0FBQ0FJLDRCQUFrQlEsSUFBbEI7QUFDRDtBQUNGLE9BWkk7O0FBY0wsZ0NBQTBCLFVBQVNBLElBQVQsRUFBZTtBQUN2QztBQUNBLFlBQUksQ0FBQ0EsS0FBS0csV0FBVixFQUF1Qjs7QUFGZ0IsY0FJL0JyQixJQUorQixHQUl0QmtCLEtBQUtHLFdBSmlCLENBSS9CckIsSUFKK0I7OztBQU12QyxZQUNFQSxTQUFTLHdCQUFULElBQ0FBLFNBQVMsV0FEVCxJQUVBQSxTQUFTLHdCQUZULElBR0FBLFNBQVMsc0JBSlgsRUFLRTtBQUNBTTtBQUNBRywwQkFBZ0IsSUFBaEI7QUFDQTtBQUNEOztBQUVELFlBQUlTLEtBQUtHLFdBQUwsQ0FBaUJDLFlBQXJCLEVBQW1DO0FBQ2pDSixlQUFLRyxXQUFMLENBQWlCQyxZQUFqQixDQUE4QlIsT0FBOUIsQ0FBc0MsVUFBU08sV0FBVCxFQUFzQjtBQUMxRFYsK0JBQW1CVSxZQUFZRSxFQUEvQjtBQUNELFdBRkQ7QUFHRCxTQUpELE1BS0s7QUFDSDtBQUNBakI7QUFDRDs7QUFFREksMEJBQWtCUSxJQUFsQjtBQUNELE9BMUNJOztBQTRDTCxrQ0FBNEIsWUFBVztBQUNyQ1gsMkJBQW1CLElBQW5CO0FBQ0QsT0E5Q0k7O0FBZ0RMLDhCQUF3QixZQUFXO0FBQ2pDQyx3QkFBZ0IsSUFBaEI7QUFDRCxPQWxESTs7QUFvREwsc0JBQWdCLFlBQVc7QUFDekIsWUFBSUYseUJBQXlCLENBQXpCLElBQThCLENBQUNDLGdCQUEvQixJQUFtRCxDQUFDQyxhQUFwRCxJQUFxRSxDQUFDQyxhQUExRSxFQUF5RjtBQUN2Rkosa0JBQVFtQixNQUFSLENBQWVkLGVBQWYsRUFBZ0Msd0JBQWhDO0FBQ0Q7QUFDRjtBQXhESSxLQUFQO0FBMEREO0FBMUZjLENBQWpCIiwiZmlsZSI6InByZWZlci1kZWZhdWx0LWV4cG9ydC5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0J1xuXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ3ByZWZlci1kZWZhdWx0LWV4cG9ydCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGU6IGZ1bmN0aW9uKGNvbnRleHQpIHtcbiAgICBsZXQgc3BlY2lmaWVyRXhwb3J0Q291bnQgPSAwXG4gICAgbGV0IGhhc0RlZmF1bHRFeHBvcnQgPSBmYWxzZVxuICAgIGxldCBoYXNTdGFyRXhwb3J0ID0gZmFsc2VcbiAgICBsZXQgaGFzVHlwZUV4cG9ydCA9IGZhbHNlXG4gICAgbGV0IG5hbWVkRXhwb3J0Tm9kZSA9IG51bGxcblxuICAgIGZ1bmN0aW9uIGNhcHR1cmVEZWNsYXJhdGlvbihpZGVudGlmaWVyT3JQYXR0ZXJuKSB7XG4gICAgICBpZiAoaWRlbnRpZmllck9yUGF0dGVybi50eXBlID09PSAnT2JqZWN0UGF0dGVybicpIHtcbiAgICAgICAgLy8gcmVjdXJzaXZlbHkgY2FwdHVyZVxuICAgICAgICBpZGVudGlmaWVyT3JQYXR0ZXJuLnByb3BlcnRpZXNcbiAgICAgICAgICAuZm9yRWFjaChmdW5jdGlvbihwcm9wZXJ0eSkge1xuICAgICAgICAgICAgY2FwdHVyZURlY2xhcmF0aW9uKHByb3BlcnR5LnZhbHVlKVxuICAgICAgICAgIH0pXG4gICAgICB9IGVsc2UgaWYgKGlkZW50aWZpZXJPclBhdHRlcm4udHlwZSA9PT0gJ0FycmF5UGF0dGVybicpIHtcbiAgICAgICAgaWRlbnRpZmllck9yUGF0dGVybi5lbGVtZW50c1xuICAgICAgICAgIC5mb3JFYWNoKGNhcHR1cmVEZWNsYXJhdGlvbilcbiAgICAgIH0gZWxzZSAge1xuICAgICAgLy8gYXNzdW1lIGl0J3MgYSBzaW5nbGUgc3RhbmRhcmQgaWRlbnRpZmllclxuICAgICAgICBzcGVjaWZpZXJFeHBvcnRDb3VudCsrXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdFeHBvcnREZWZhdWx0U3BlY2lmaWVyJzogZnVuY3Rpb24oKSB7XG4gICAgICAgIGhhc0RlZmF1bHRFeHBvcnQgPSB0cnVlXG4gICAgICB9LFxuXG4gICAgICAnRXhwb3J0U3BlY2lmaWVyJzogZnVuY3Rpb24obm9kZSkge1xuICAgICAgICBpZiAobm9kZS5leHBvcnRlZC5uYW1lID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICBoYXNEZWZhdWx0RXhwb3J0ID0gdHJ1ZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNwZWNpZmllckV4cG9ydENvdW50KytcbiAgICAgICAgICBuYW1lZEV4cG9ydE5vZGUgPSBub2RlXG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgICdFeHBvcnROYW1lZERlY2xhcmF0aW9uJzogZnVuY3Rpb24obm9kZSkge1xuICAgICAgICAvLyBpZiB0aGVyZSBhcmUgc3BlY2lmaWVycywgbm9kZS5kZWNsYXJhdGlvbiBzaG91bGQgYmUgbnVsbFxuICAgICAgICBpZiAoIW5vZGUuZGVjbGFyYXRpb24pIHJldHVyblxuXG4gICAgICAgIGNvbnN0IHsgdHlwZSB9ID0gbm9kZS5kZWNsYXJhdGlvblxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICB0eXBlID09PSAnVFNUeXBlQWxpYXNEZWNsYXJhdGlvbicgfHxcbiAgICAgICAgICB0eXBlID09PSAnVHlwZUFsaWFzJyB8fFxuICAgICAgICAgIHR5cGUgPT09ICdUU0ludGVyZmFjZURlY2xhcmF0aW9uJyB8fFxuICAgICAgICAgIHR5cGUgPT09ICdJbnRlcmZhY2VEZWNsYXJhdGlvbidcbiAgICAgICAgKSB7XG4gICAgICAgICAgc3BlY2lmaWVyRXhwb3J0Q291bnQrK1xuICAgICAgICAgIGhhc1R5cGVFeHBvcnQgPSB0cnVlXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBpZiAobm9kZS5kZWNsYXJhdGlvbi5kZWNsYXJhdGlvbnMpIHtcbiAgICAgICAgICBub2RlLmRlY2xhcmF0aW9uLmRlY2xhcmF0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKGRlY2xhcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXB0dXJlRGVjbGFyYXRpb24oZGVjbGFyYXRpb24uaWQpXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAvLyBjYXB0dXJlcyAnZXhwb3J0IGZ1bmN0aW9uIGZvbygpIHt9JyBzeW50YXhcbiAgICAgICAgICBzcGVjaWZpZXJFeHBvcnRDb3VudCsrXG4gICAgICAgIH1cblxuICAgICAgICBuYW1lZEV4cG9ydE5vZGUgPSBub2RlXG4gICAgICB9LFxuXG4gICAgICAnRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uJzogZnVuY3Rpb24oKSB7XG4gICAgICAgIGhhc0RlZmF1bHRFeHBvcnQgPSB0cnVlXG4gICAgICB9LFxuXG4gICAgICAnRXhwb3J0QWxsRGVjbGFyYXRpb24nOiBmdW5jdGlvbigpIHtcbiAgICAgICAgaGFzU3RhckV4cG9ydCA9IHRydWVcbiAgICAgIH0sXG5cbiAgICAgICdQcm9ncmFtOmV4aXQnOiBmdW5jdGlvbigpIHtcbiAgICAgICAgaWYgKHNwZWNpZmllckV4cG9ydENvdW50ID09PSAxICYmICFoYXNEZWZhdWx0RXhwb3J0ICYmICFoYXNTdGFyRXhwb3J0ICYmICFoYXNUeXBlRXhwb3J0KSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQobmFtZWRFeHBvcnROb2RlLCAnUHJlZmVyIGRlZmF1bHQgZXhwb3J0LicpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfVxuICB9LFxufVxuIl19 \ No newline at end of file + } }; + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9wcmVmZXItZGVmYXVsdC1leHBvcnQuanMiXSwibmFtZXMiOlsibW9kdWxlIiwiZXhwb3J0cyIsIm1ldGEiLCJ0eXBlIiwiZG9jcyIsInVybCIsInNjaGVtYSIsImNyZWF0ZSIsImNvbnRleHQiLCJzcGVjaWZpZXJFeHBvcnRDb3VudCIsImhhc0RlZmF1bHRFeHBvcnQiLCJoYXNTdGFyRXhwb3J0IiwiaGFzVHlwZUV4cG9ydCIsIm5hbWVkRXhwb3J0Tm9kZSIsImNhcHR1cmVEZWNsYXJhdGlvbiIsImlkZW50aWZpZXJPclBhdHRlcm4iLCJwcm9wZXJ0aWVzIiwiZm9yRWFjaCIsInByb3BlcnR5IiwidmFsdWUiLCJlbGVtZW50cyIsIm5vZGUiLCJleHBvcnRlZCIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsImRlY2xhcmF0aW9ucyIsImlkIiwicmVwb3J0Il0sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQSxxQzs7QUFFQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsdUJBQVIsQ0FERCxFQUZGOztBQUtKQyxZQUFRLEVBTEosRUFEUzs7O0FBU2ZDLFVBQVEsVUFBU0MsT0FBVCxFQUFrQjtBQUN4QixRQUFJQyx1QkFBdUIsQ0FBM0I7QUFDQSxRQUFJQyxtQkFBbUIsS0FBdkI7QUFDQSxRQUFJQyxnQkFBZ0IsS0FBcEI7QUFDQSxRQUFJQyxnQkFBZ0IsS0FBcEI7QUFDQSxRQUFJQyxrQkFBa0IsSUFBdEI7O0FBRUEsYUFBU0Msa0JBQVQsQ0FBNEJDLG1CQUE1QixFQUFpRDtBQUMvQyxVQUFJQSxvQkFBb0JaLElBQXBCLEtBQTZCLGVBQWpDLEVBQWtEO0FBQ2hEO0FBQ0FZLDRCQUFvQkMsVUFBcEI7QUFDR0MsZUFESCxDQUNXLFVBQVNDLFFBQVQsRUFBbUI7QUFDMUJKLDZCQUFtQkksU0FBU0MsS0FBNUI7QUFDRCxTQUhIO0FBSUQsT0FORCxNQU1PLElBQUlKLG9CQUFvQlosSUFBcEIsS0FBNkIsY0FBakMsRUFBaUQ7QUFDdERZLDRCQUFvQkssUUFBcEI7QUFDR0gsZUFESCxDQUNXSCxrQkFEWDtBQUVELE9BSE0sTUFHQztBQUNSO0FBQ0VMO0FBQ0Q7QUFDRjs7QUFFRCxXQUFPO0FBQ0wsZ0NBQTBCLFlBQVc7QUFDbkNDLDJCQUFtQixJQUFuQjtBQUNELE9BSEk7O0FBS0wseUJBQW1CLFVBQVNXLElBQVQsRUFBZTtBQUNoQyxZQUFJQSxLQUFLQyxRQUFMLENBQWNDLElBQWQsS0FBdUIsU0FBM0IsRUFBc0M7QUFDcENiLDZCQUFtQixJQUFuQjtBQUNELFNBRkQsTUFFTztBQUNMRDtBQUNBSSw0QkFBa0JRLElBQWxCO0FBQ0Q7QUFDRixPQVpJOztBQWNMLGdDQUEwQixVQUFTQSxJQUFULEVBQWU7QUFDdkM7QUFDQSxZQUFJLENBQUNBLEtBQUtHLFdBQVYsRUFBdUIsT0FGZ0I7O0FBSS9CckIsWUFKK0IsR0FJdEJrQixLQUFLRyxXQUppQixDQUkvQnJCLElBSitCOztBQU12QztBQUNFQSxpQkFBUyx3QkFBVDtBQUNBQSxpQkFBUyxXQURUO0FBRUFBLGlCQUFTLHdCQUZUO0FBR0FBLGlCQUFTLHNCQUpYO0FBS0U7QUFDQU07QUFDQUcsMEJBQWdCLElBQWhCO0FBQ0E7QUFDRDs7QUFFRCxZQUFJUyxLQUFLRyxXQUFMLENBQWlCQyxZQUFyQixFQUFtQztBQUNqQ0osZUFBS0csV0FBTCxDQUFpQkMsWUFBakIsQ0FBOEJSLE9BQTlCLENBQXNDLFVBQVNPLFdBQVQsRUFBc0I7QUFDMURWLCtCQUFtQlUsWUFBWUUsRUFBL0I7QUFDRCxXQUZEO0FBR0QsU0FKRDtBQUtLO0FBQ0g7QUFDQWpCO0FBQ0Q7O0FBRURJLDBCQUFrQlEsSUFBbEI7QUFDRCxPQTFDSTs7QUE0Q0wsa0NBQTRCLFlBQVc7QUFDckNYLDJCQUFtQixJQUFuQjtBQUNELE9BOUNJOztBQWdETCw4QkFBd0IsWUFBVztBQUNqQ0Msd0JBQWdCLElBQWhCO0FBQ0QsT0FsREk7O0FBb0RMLHNCQUFnQixZQUFXO0FBQ3pCLFlBQUlGLHlCQUF5QixDQUF6QixJQUE4QixDQUFDQyxnQkFBL0IsSUFBbUQsQ0FBQ0MsYUFBcEQsSUFBcUUsQ0FBQ0MsYUFBMUUsRUFBeUY7QUFDdkZKLGtCQUFRbUIsTUFBUixDQUFlZCxlQUFmLEVBQWdDLHdCQUFoQztBQUNEO0FBQ0YsT0F4REksRUFBUDs7QUEwREQsR0ExRmMsRUFBakIiLCJmaWxlIjoicHJlZmVyLWRlZmF1bHQtZXhwb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnXG5cbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3N1Z2dlc3Rpb24nLFxuICAgIGRvY3M6IHtcbiAgICAgIHVybDogZG9jc1VybCgncHJlZmVyLWRlZmF1bHQtZXhwb3J0JyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24oY29udGV4dCkge1xuICAgIGxldCBzcGVjaWZpZXJFeHBvcnRDb3VudCA9IDBcbiAgICBsZXQgaGFzRGVmYXVsdEV4cG9ydCA9IGZhbHNlXG4gICAgbGV0IGhhc1N0YXJFeHBvcnQgPSBmYWxzZVxuICAgIGxldCBoYXNUeXBlRXhwb3J0ID0gZmFsc2VcbiAgICBsZXQgbmFtZWRFeHBvcnROb2RlID0gbnVsbFxuXG4gICAgZnVuY3Rpb24gY2FwdHVyZURlY2xhcmF0aW9uKGlkZW50aWZpZXJPclBhdHRlcm4pIHtcbiAgICAgIGlmIChpZGVudGlmaWVyT3JQYXR0ZXJuLnR5cGUgPT09ICdPYmplY3RQYXR0ZXJuJykge1xuICAgICAgICAvLyByZWN1cnNpdmVseSBjYXB0dXJlXG4gICAgICAgIGlkZW50aWZpZXJPclBhdHRlcm4ucHJvcGVydGllc1xuICAgICAgICAgIC5mb3JFYWNoKGZ1bmN0aW9uKHByb3BlcnR5KSB7XG4gICAgICAgICAgICBjYXB0dXJlRGVjbGFyYXRpb24ocHJvcGVydHkudmFsdWUpXG4gICAgICAgICAgfSlcbiAgICAgIH0gZWxzZSBpZiAoaWRlbnRpZmllck9yUGF0dGVybi50eXBlID09PSAnQXJyYXlQYXR0ZXJuJykge1xuICAgICAgICBpZGVudGlmaWVyT3JQYXR0ZXJuLmVsZW1lbnRzXG4gICAgICAgICAgLmZvckVhY2goY2FwdHVyZURlY2xhcmF0aW9uKVxuICAgICAgfSBlbHNlICB7XG4gICAgICAvLyBhc3N1bWUgaXQncyBhIHNpbmdsZSBzdGFuZGFyZCBpZGVudGlmaWVyXG4gICAgICAgIHNwZWNpZmllckV4cG9ydENvdW50KytcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ0V4cG9ydERlZmF1bHRTcGVjaWZpZXInOiBmdW5jdGlvbigpIHtcbiAgICAgICAgaGFzRGVmYXVsdEV4cG9ydCA9IHRydWVcbiAgICAgIH0sXG5cbiAgICAgICdFeHBvcnRTcGVjaWZpZXInOiBmdW5jdGlvbihub2RlKSB7XG4gICAgICAgIGlmIChub2RlLmV4cG9ydGVkLm5hbWUgPT09ICdkZWZhdWx0Jykge1xuICAgICAgICAgIGhhc0RlZmF1bHRFeHBvcnQgPSB0cnVlXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3BlY2lmaWVyRXhwb3J0Q291bnQrK1xuICAgICAgICAgIG5hbWVkRXhwb3J0Tm9kZSA9IG5vZGVcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nOiBmdW5jdGlvbihub2RlKSB7XG4gICAgICAgIC8vIGlmIHRoZXJlIGFyZSBzcGVjaWZpZXJzLCBub2RlLmRlY2xhcmF0aW9uIHNob3VsZCBiZSBudWxsXG4gICAgICAgIGlmICghbm9kZS5kZWNsYXJhdGlvbikgcmV0dXJuXG5cbiAgICAgICAgY29uc3QgeyB0eXBlIH0gPSBub2RlLmRlY2xhcmF0aW9uXG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIHR5cGUgPT09ICdUU1R5cGVBbGlhc0RlY2xhcmF0aW9uJyB8fFxuICAgICAgICAgIHR5cGUgPT09ICdUeXBlQWxpYXMnIHx8XG4gICAgICAgICAgdHlwZSA9PT0gJ1RTSW50ZXJmYWNlRGVjbGFyYXRpb24nIHx8XG4gICAgICAgICAgdHlwZSA9PT0gJ0ludGVyZmFjZURlY2xhcmF0aW9uJ1xuICAgICAgICApIHtcbiAgICAgICAgICBzcGVjaWZpZXJFeHBvcnRDb3VudCsrXG4gICAgICAgICAgaGFzVHlwZUV4cG9ydCA9IHRydWVcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChub2RlLmRlY2xhcmF0aW9uLmRlY2xhcmF0aW9ucykge1xuICAgICAgICAgIG5vZGUuZGVjbGFyYXRpb24uZGVjbGFyYXRpb25zLmZvckVhY2goZnVuY3Rpb24oZGVjbGFyYXRpb24pIHtcbiAgICAgICAgICAgIGNhcHR1cmVEZWNsYXJhdGlvbihkZWNsYXJhdGlvbi5pZClcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIC8vIGNhcHR1cmVzICdleHBvcnQgZnVuY3Rpb24gZm9vKCkge30nIHN5bnRheFxuICAgICAgICAgIHNwZWNpZmllckV4cG9ydENvdW50KytcbiAgICAgICAgfVxuXG4gICAgICAgIG5hbWVkRXhwb3J0Tm9kZSA9IG5vZGVcbiAgICAgIH0sXG5cbiAgICAgICdFeHBvcnREZWZhdWx0RGVjbGFyYXRpb24nOiBmdW5jdGlvbigpIHtcbiAgICAgICAgaGFzRGVmYXVsdEV4cG9ydCA9IHRydWVcbiAgICAgIH0sXG5cbiAgICAgICdFeHBvcnRBbGxEZWNsYXJhdGlvbic6IGZ1bmN0aW9uKCkge1xuICAgICAgICBoYXNTdGFyRXhwb3J0ID0gdHJ1ZVxuICAgICAgfSxcblxuICAgICAgJ1Byb2dyYW06ZXhpdCc6IGZ1bmN0aW9uKCkge1xuICAgICAgICBpZiAoc3BlY2lmaWVyRXhwb3J0Q291bnQgPT09IDEgJiYgIWhhc0RlZmF1bHRFeHBvcnQgJiYgIWhhc1N0YXJFeHBvcnQgJiYgIWhhc1R5cGVFeHBvcnQpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydChuYW1lZEV4cG9ydE5vZGUsICdQcmVmZXIgZGVmYXVsdCBleHBvcnQuJylcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG4gIH0sXG59XG4iXX0= \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/lib/rules/unambiguous.js b/node_modules/eslint-plugin-import/lib/rules/unambiguous.js index 00b518bc..68a12f84 100644 --- a/node_modules/eslint-plugin-import/lib/rules/unambiguous.js +++ b/node_modules/eslint-plugin-import/lib/rules/unambiguous.js @@ -1,26 +1,19 @@ 'use strict'; + + + var _unambiguous = require('eslint-module-utils/unambiguous'); - -var _docsUrl = require('../docsUrl'); - -var _docsUrl2 = _interopRequireDefault(_docsUrl); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/** - * @fileOverview Report modules that could parse incorrectly as scripts. - * @author Ben Mosher - */ - -module.exports = { - meta: { +var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} /** + * @fileOverview Report modules that could parse incorrectly as scripts. + * @author Ben Mosher + */module.exports = { meta: { type: 'suggestion', docs: { - url: (0, _docsUrl2.default)('unambiguous') - }, - schema: [] - }, + url: (0, _docsUrl2.default)('unambiguous') }, + + schema: [] }, + create: function (context) { // ignore non-modules @@ -33,11 +26,11 @@ module.exports = { if (!(0, _unambiguous.isModule)(ast)) { context.report({ node: ast, - message: 'This module could be parsed as a valid script.' - }); + message: 'This module could be parsed as a valid script.' }); + } - } - }; - } -}; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy91bmFtYmlndW91cy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsInBhcnNlck9wdGlvbnMiLCJzb3VyY2VUeXBlIiwiUHJvZ3JhbSIsImFzdCIsInJlcG9ydCIsIm5vZGUiLCJtZXNzYWdlIl0sIm1hcHBpbmdzIjoiOztBQUtBOztBQUNBOzs7Ozs7QUFOQTs7Ozs7QUFRQUEsT0FBT0MsT0FBUCxHQUFpQjtBQUNmQyxRQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsYUFBUjtBQURELEtBRkY7QUFLSkMsWUFBUTtBQUxKLEdBRFM7O0FBU2ZDLFVBQVEsVUFBVUMsT0FBVixFQUFtQjtBQUN6QjtBQUNBLFFBQUlBLFFBQVFDLGFBQVIsQ0FBc0JDLFVBQXRCLEtBQXFDLFFBQXpDLEVBQW1EO0FBQ2pELGFBQU8sRUFBUDtBQUNEOztBQUVELFdBQU87QUFDTEMsZUFBUyxVQUFVQyxHQUFWLEVBQWU7QUFDdEIsWUFBSSxDQUFDLDJCQUFTQSxHQUFULENBQUwsRUFBb0I7QUFDbEJKLGtCQUFRSyxNQUFSLENBQWU7QUFDYkMsa0JBQU1GLEdBRE87QUFFYkcscUJBQVM7QUFGSSxXQUFmO0FBSUQ7QUFDRjtBQVJJLEtBQVA7QUFXRDtBQTFCYyxDQUFqQiIsImZpbGUiOiJ1bmFtYmlndW91cy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVPdmVydmlldyBSZXBvcnQgbW9kdWxlcyB0aGF0IGNvdWxkIHBhcnNlIGluY29ycmVjdGx5IGFzIHNjcmlwdHMuXG4gKiBAYXV0aG9yIEJlbiBNb3NoZXJcbiAqL1xuXG5pbXBvcnQgeyBpc01vZHVsZSB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvdW5hbWJpZ3VvdXMnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ3VuYW1iaWd1b3VzJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICAvLyBpZ25vcmUgbm9uLW1vZHVsZXNcbiAgICBpZiAoY29udGV4dC5wYXJzZXJPcHRpb25zLnNvdXJjZVR5cGUgIT09ICdtb2R1bGUnKSB7XG4gICAgICByZXR1cm4ge31cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgUHJvZ3JhbTogZnVuY3Rpb24gKGFzdCkge1xuICAgICAgICBpZiAoIWlzTW9kdWxlKGFzdCkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlOiBhc3QsXG4gICAgICAgICAgICBtZXNzYWdlOiAnVGhpcyBtb2R1bGUgY291bGQgYmUgcGFyc2VkIGFzIGEgdmFsaWQgc2NyaXB0LicsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG5cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file + } }; + + + } }; +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy91bmFtYmlndW91cy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibWV0YSIsInR5cGUiLCJkb2NzIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsInBhcnNlck9wdGlvbnMiLCJzb3VyY2VUeXBlIiwiUHJvZ3JhbSIsImFzdCIsInJlcG9ydCIsIm5vZGUiLCJtZXNzYWdlIl0sIm1hcHBpbmdzIjoiOzs7OztBQUtBO0FBQ0EscUMsK0lBTkE7Ozt1TEFRQUEsT0FBT0MsT0FBUCxHQUFpQixFQUNmQyxNQUFNO0FBQ0pDLFVBQU0sWUFERjtBQUVKQyxVQUFNO0FBQ0pDLFdBQUssdUJBQVEsYUFBUixDQURELEVBRkY7O0FBS0pDLFlBQVEsRUFMSixFQURTOzs7QUFTZkMsVUFBUSxVQUFVQyxPQUFWLEVBQW1CO0FBQ3pCO0FBQ0EsUUFBSUEsUUFBUUMsYUFBUixDQUFzQkMsVUFBdEIsS0FBcUMsUUFBekMsRUFBbUQ7QUFDakQsYUFBTyxFQUFQO0FBQ0Q7O0FBRUQsV0FBTztBQUNMQyxlQUFTLFVBQVVDLEdBQVYsRUFBZTtBQUN0QixZQUFJLENBQUMsMkJBQVNBLEdBQVQsQ0FBTCxFQUFvQjtBQUNsQkosa0JBQVFLLE1BQVIsQ0FBZTtBQUNiQyxrQkFBTUYsR0FETztBQUViRyxxQkFBUyxnREFGSSxFQUFmOztBQUlEO0FBQ0YsT0FSSSxFQUFQOzs7QUFXRCxHQTFCYyxFQUFqQiIsImZpbGUiOiJ1bmFtYmlndW91cy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVPdmVydmlldyBSZXBvcnQgbW9kdWxlcyB0aGF0IGNvdWxkIHBhcnNlIGluY29ycmVjdGx5IGFzIHNjcmlwdHMuXG4gKiBAYXV0aG9yIEJlbiBNb3NoZXJcbiAqL1xuXG5pbXBvcnQgeyBpc01vZHVsZSB9IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvdW5hbWJpZ3VvdXMnXG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJ1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICB1cmw6IGRvY3NVcmwoJ3VuYW1iaWd1b3VzJyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZTogZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgICAvLyBpZ25vcmUgbm9uLW1vZHVsZXNcbiAgICBpZiAoY29udGV4dC5wYXJzZXJPcHRpb25zLnNvdXJjZVR5cGUgIT09ICdtb2R1bGUnKSB7XG4gICAgICByZXR1cm4ge31cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgUHJvZ3JhbTogZnVuY3Rpb24gKGFzdCkge1xuICAgICAgICBpZiAoIWlzTW9kdWxlKGFzdCkpIHtcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgICBub2RlOiBhc3QsXG4gICAgICAgICAgICBtZXNzYWdlOiAnVGhpcyBtb2R1bGUgY291bGQgYmUgcGFyc2VkIGFzIGEgdmFsaWQgc2NyaXB0LicsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9XG5cbiAgfSxcbn1cbiJdfQ== \ No newline at end of file diff --git a/node_modules/babel-eslint/node_modules/.bin/eslint b/node_modules/eslint-plugin-import/node_modules/.bin/eslint similarity index 100% rename from node_modules/babel-eslint/node_modules/.bin/eslint rename to node_modules/eslint-plugin-import/node_modules/.bin/eslint diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/.editorconfig b/node_modules/eslint-plugin-import/node_modules/resolve/.editorconfig new file mode 100644 index 00000000..bc228f82 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/.editorconfig @@ -0,0 +1,20 @@ +root = true + +[*] +indent_style = tab +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 150 + +[CHANGELOG.md] +indent_style = space +indent_size = 2 + +[*.json] +max_line_length = off + +[Makefile] +max_line_length = off diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/.eslintignore b/node_modules/eslint-plugin-import/node_modules/resolve/.eslintignore new file mode 100644 index 00000000..3c3629e6 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/.eslintignore @@ -0,0 +1 @@ +node_modules diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/.eslintrc b/node_modules/eslint-plugin-import/node_modules/resolve/.eslintrc new file mode 100644 index 00000000..a22863c8 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/.eslintrc @@ -0,0 +1,39 @@ +{ + "extends": "@ljharb", + "root": true, + "rules": { + "array-bracket-newline": 0, + "array-element-newline": 0, + "indent": [2, 4], + "strict": 0, + "complexity": 0, + "consistent-return": 0, + "curly": 0, + "dot-notation": [2, { "allowKeywords": true }], + "func-name-matching": 0, + "func-style": 0, + "global-require": 0, + "id-length": [2, { "min": 1, "max": 30 }], + "max-lines-per-function": 0, + "max-nested-callbacks": 0, + "max-params": 0, + "max-statements-per-line": [2, { "max": 2 }], + "max-statements": 0, + "no-magic-numbers": 0, + "no-console": 0, + "no-shadow": 0, + "no-unused-vars": [2, { "vars": "all", "args": "none" }], + "no-use-before-define": 0, + "object-curly-newline": 0, + "operator-linebreak": [2, "before"], + "sort-keys": 0, + }, + "overrides": [ + { + "files": "test/resolver/nested_symlinks/mylib/*.js", + "rules": { + "no-throw-literal": 0, + }, + }, + ], +} diff --git a/node_modules/object.entries/.travis.yml b/node_modules/eslint-plugin-import/node_modules/resolve/.travis.yml similarity index 100% rename from node_modules/object.entries/.travis.yml rename to node_modules/eslint-plugin-import/node_modules/resolve/.travis.yml diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/LICENSE b/node_modules/eslint-plugin-import/node_modules/resolve/LICENSE new file mode 100644 index 00000000..ff4fce28 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2012 James Halliday + +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. diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/appveyor.yml b/node_modules/eslint-plugin-import/node_modules/resolve/appveyor.yml new file mode 100644 index 00000000..9458fb82 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/appveyor.yml @@ -0,0 +1,54 @@ +version: 1.0.{build} +skip_branch_with_pr: true +build: off + +environment: + matrix: + - nodejs_version: "12" + - nodejs_version: "11" + - nodejs_version: "10" + - nodejs_version: "9" + - nodejs_version: "8" + - nodejs_version: "7" + - nodejs_version: "6" + - nodejs_version: "5" + - nodejs_version: "4" + - nodejs_version: "3" + - nodejs_version: "2" + - nodejs_version: "1" + - nodejs_version: "0.12" + - nodejs_version: "0.10" + - nodejs_version: "0.8" + - nodejs_version: "0.6" +matrix: + # fast_finish: true + allow_failures: + - nodejs_version: "5" # due to windows npm bug, registry-side + - nodejs_version: "0.8" + - nodejs_version: "0.6" + +platform: + - x86 + - x64 + +# Install scripts. (runs after repo cloning) +install: + # Fix symlinks in working copy (see https://github.com/appveyor/ci/issues/650#issuecomment-186592582) / https://github.com/charleskorn/batect/commit/d08986802ec43086902958c4ee7e57ff3e71dbef + - git config core.symlinks true + - git reset --hard + # Get the latest stable version of Node.js or io.js + - ps: Install-Product node $env:nodejs_version $env:platform + - IF %nodejs_version% EQU 0.6 npm config set strict-ssl false && npm -g install npm@1.3 + - IF %nodejs_version% EQU 0.8 npm config set strict-ssl false && npm -g install npm@1.4.28 && npm install -g npm@4.5 + - set PATH=%APPDATA%\npm;%PATH% + #- IF %nodejs_version% NEQ 0.6 AND %nodejs_version% NEQ 0.8 npm -g install npm + # install modules + - npm install + +# Post-install test scripts. +test_script: + # Output useful info for debugging. + - node --version + - npm --version + # run tests + - npm run tests-only diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/example/async.js b/node_modules/eslint-plugin-import/node_modules/resolve/example/async.js new file mode 100644 index 00000000..20e65dc2 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/example/async.js @@ -0,0 +1,5 @@ +var resolve = require('../'); +resolve('tap', { basedir: __dirname }, function (err, res) { + if (err) console.error(err); + else console.log(res); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/example/sync.js b/node_modules/eslint-plugin-import/node_modules/resolve/example/sync.js new file mode 100644 index 00000000..54b2cc10 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/example/sync.js @@ -0,0 +1,3 @@ +var resolve = require('../'); +var res = resolve.sync('tap', { basedir: __dirname }); +console.log(res); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/index.js new file mode 100644 index 00000000..125d8146 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/index.js @@ -0,0 +1,6 @@ +var async = require('./lib/async'); +async.core = require('./lib/core'); +async.isCore = require('./lib/is-core'); +async.sync = require('./lib/sync'); + +module.exports = async; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/async.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/async.js new file mode 100644 index 00000000..06aa4588 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/async.js @@ -0,0 +1,298 @@ +var fs = require('fs'); +var path = require('path'); +var caller = require('./caller.js'); +var nodeModulesPaths = require('./node-modules-paths.js'); +var normalizeOptions = require('./normalize-options.js'); +var isCore = require('./is-core'); + +var realpathFS = fs.realpath && typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath; + +var defaultIsFile = function isFile(file, cb) { + fs.stat(file, function (err, stat) { + if (!err) { + return cb(null, stat.isFile() || stat.isFIFO()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); +}; + +var defaultIsDir = function isDirectory(dir, cb) { + fs.stat(dir, function (err, stat) { + if (!err) { + return cb(null, stat.isDirectory()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); +}; + +var defaultRealpath = function realpath(x, cb) { + realpathFS(x, function (realpathErr, realPath) { + if (realpathErr && realpathErr.code !== 'ENOENT') cb(realpathErr); + else cb(null, realpathErr ? x : realPath); + }); +}; + +var maybeRealpath = function maybeRealpath(realpath, x, opts, cb) { + if (opts && opts.preserveSymlinks === false) { + realpath(x, cb); + } else { + cb(null, x); + } +}; + +var getPackageCandidates = function getPackageCandidates(x, start, opts) { + var dirs = nodeModulesPaths(start, opts, x); + for (var i = 0; i < dirs.length; i++) { + dirs[i] = path.join(dirs[i], x); + } + return dirs; +}; + +module.exports = function resolve(x, options, callback) { + var cb = callback; + var opts = options; + if (typeof options === 'function') { + cb = opts; + opts = {}; + } + if (typeof x !== 'string') { + var err = new TypeError('Path must be a string.'); + return process.nextTick(function () { + cb(err); + }); + } + + opts = normalizeOptions(x, opts); + + var isFile = opts.isFile || defaultIsFile; + var isDirectory = opts.isDirectory || defaultIsDir; + var readFile = opts.readFile || fs.readFile; + var realpath = opts.realpath || defaultRealpath; + var packageIterator = opts.packageIterator; + + var extensions = opts.extensions || ['.js']; + var basedir = opts.basedir || path.dirname(caller()); + var parent = opts.filename || basedir; + + opts.paths = opts.paths || []; + + // ensure that `basedir` is an absolute path at this point, resolving against the process' current working directory + var absoluteStart = path.resolve(basedir); + + maybeRealpath( + realpath, + absoluteStart, + opts, + function (err, realStart) { + if (err) cb(err); + else init(realStart); + } + ); + + var res; + function init(basedir) { + if ((/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/).test(x)) { + res = path.resolve(basedir, x); + if (x === '.' || x === '..' || x.slice(-1) === '/') res += '/'; + if ((/\/$/).test(x) && res === basedir) { + loadAsDirectory(res, opts.package, onfile); + } else loadAsFile(res, opts.package, onfile); + } else if (isCore(x)) { + return cb(null, x); + } else loadNodeModules(x, basedir, function (err, n, pkg) { + if (err) cb(err); + else if (n) { + return maybeRealpath(realpath, n, opts, function (err, realN) { + if (err) { + cb(err); + } else { + cb(null, realN, pkg); + } + }); + } else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = 'MODULE_NOT_FOUND'; + cb(moduleError); + } + }); + } + + function onfile(err, m, pkg) { + if (err) cb(err); + else if (m) cb(null, m, pkg); + else loadAsDirectory(res, function (err, d, pkg) { + if (err) cb(err); + else if (d) { + maybeRealpath(realpath, d, opts, function (err, realD) { + if (err) { + cb(err); + } else { + cb(null, realD, pkg); + } + }); + } else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = 'MODULE_NOT_FOUND'; + cb(moduleError); + } + }); + } + + function loadAsFile(x, thePackage, callback) { + var loadAsFilePackage = thePackage; + var cb = callback; + if (typeof loadAsFilePackage === 'function') { + cb = loadAsFilePackage; + loadAsFilePackage = undefined; + } + + var exts = [''].concat(extensions); + load(exts, x, loadAsFilePackage); + + function load(exts, x, loadPackage) { + if (exts.length === 0) return cb(null, undefined, loadPackage); + var file = x + exts[0]; + + var pkg = loadPackage; + if (pkg) onpkg(null, pkg); + else loadpkg(path.dirname(file), onpkg); + + function onpkg(err, pkg_, dir) { + pkg = pkg_; + if (err) return cb(err); + if (dir && pkg && opts.pathFilter) { + var rfile = path.relative(dir, file); + var rel = rfile.slice(0, rfile.length - exts[0].length); + var r = opts.pathFilter(pkg, x, rel); + if (r) return load( + [''].concat(extensions.slice()), + path.resolve(dir, r), + pkg + ); + } + isFile(file, onex); + } + function onex(err, ex) { + if (err) return cb(err); + if (ex) return cb(null, file, pkg); + load(exts.slice(1), x, pkg); + } + } + } + + function loadpkg(dir, cb) { + if (dir === '' || dir === '/') return cb(null); + if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) { + return cb(null); + } + if ((/[/\\]node_modules[/\\]*$/).test(dir)) return cb(null); + + maybeRealpath(realpath, dir, opts, function (unwrapErr, pkgdir) { + if (unwrapErr) return loadpkg(path.dirname(dir), cb); + var pkgfile = path.join(pkgdir, 'package.json'); + isFile(pkgfile, function (err, ex) { + // on err, ex is false + if (!ex) return loadpkg(path.dirname(dir), cb); + + readFile(pkgfile, function (err, body) { + if (err) cb(err); + try { var pkg = JSON.parse(body); } catch (jsonErr) {} + + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + cb(null, pkg, dir); + }); + }); + }); + } + + function loadAsDirectory(x, loadAsDirectoryPackage, callback) { + var cb = callback; + var fpkg = loadAsDirectoryPackage; + if (typeof fpkg === 'function') { + cb = fpkg; + fpkg = opts.package; + } + + maybeRealpath(realpath, x, opts, function (unwrapErr, pkgdir) { + if (unwrapErr) return cb(unwrapErr); + var pkgfile = path.join(pkgdir, 'package.json'); + isFile(pkgfile, function (err, ex) { + if (err) return cb(err); + if (!ex) return loadAsFile(path.join(x, 'index'), fpkg, cb); + + readFile(pkgfile, function (err, body) { + if (err) return cb(err); + try { + var pkg = JSON.parse(body); + } catch (jsonErr) {} + + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + + if (pkg && pkg.main) { + if (typeof pkg.main !== 'string') { + var mainError = new TypeError('package “' + pkg.name + '” `main` must be a string'); + mainError.code = 'INVALID_PACKAGE_MAIN'; + return cb(mainError); + } + if (pkg.main === '.' || pkg.main === './') { + pkg.main = 'index'; + } + loadAsFile(path.resolve(x, pkg.main), pkg, function (err, m, pkg) { + if (err) return cb(err); + if (m) return cb(null, m, pkg); + if (!pkg) return loadAsFile(path.join(x, 'index'), pkg, cb); + + var dir = path.resolve(x, pkg.main); + loadAsDirectory(dir, pkg, function (err, n, pkg) { + if (err) return cb(err); + if (n) return cb(null, n, pkg); + loadAsFile(path.join(x, 'index'), pkg, cb); + }); + }); + return; + } + + loadAsFile(path.join(x, '/index'), pkg, cb); + }); + }); + }); + } + + function processDirs(cb, dirs) { + if (dirs.length === 0) return cb(null, undefined); + var dir = dirs[0]; + + isDirectory(path.dirname(dir), isdir); + + function isdir(err, isdir) { + if (err) return cb(err); + if (!isdir) return processDirs(cb, dirs.slice(1)); + loadAsFile(dir, opts.package, onfile); + } + + function onfile(err, m, pkg) { + if (err) return cb(err); + if (m) return cb(null, m, pkg); + loadAsDirectory(dir, opts.package, ondir); + } + + function ondir(err, n, pkg) { + if (err) return cb(err); + if (n) return cb(null, n, pkg); + processDirs(cb, dirs.slice(1)); + } + } + function loadNodeModules(x, start, cb) { + var thunk = function () { return getPackageCandidates(x, start, opts); }; + processDirs( + cb, + packageIterator ? packageIterator(x, start, thunk, opts) : thunk() + ); + } +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/caller.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/caller.js new file mode 100644 index 00000000..b14a2804 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/caller.js @@ -0,0 +1,8 @@ +module.exports = function () { + // see https://code.google.com/p/v8/wiki/JavaScriptStackTraceApi + var origPrepareStackTrace = Error.prepareStackTrace; + Error.prepareStackTrace = function (_, stack) { return stack; }; + var stack = (new Error()).stack; + Error.prepareStackTrace = origPrepareStackTrace; + return stack[2].getFileName(); +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/core.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/core.js new file mode 100644 index 00000000..0877650c --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/core.js @@ -0,0 +1,53 @@ +var current = (process.versions && process.versions.node && process.versions.node.split('.')) || []; + +function specifierIncluded(specifier) { + var parts = specifier.split(' '); + var op = parts.length > 1 ? parts[0] : '='; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split('.'); + + for (var i = 0; i < 3; ++i) { + var cur = Number(current[i] || 0); + var ver = Number(versionParts[i] || 0); + if (cur === ver) { + continue; // eslint-disable-line no-restricted-syntax, no-continue + } + if (op === '<') { + return cur < ver; + } else if (op === '>=') { + return cur >= ver; + } else { + return false; + } + } + return op === '>='; +} + +function matchesRange(range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { return false; } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(specifiers[i])) { return false; } + } + return true; +} + +function versionIncluded(specifierValue) { + if (typeof specifierValue === 'boolean') { return specifierValue; } + if (specifierValue && typeof specifierValue === 'object') { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(specifierValue[i])) { return true; } + } + return false; + } + return matchesRange(specifierValue); +} + +var data = require('./core.json'); + +var core = {}; +for (var mod in data) { // eslint-disable-line no-restricted-syntax + if (Object.prototype.hasOwnProperty.call(data, mod)) { + core[mod] = versionIncluded(data[mod]); + } +} +module.exports = core; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/core.json b/node_modules/eslint-plugin-import/node_modules/resolve/lib/core.json new file mode 100644 index 00000000..d51b70b1 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/core.json @@ -0,0 +1,75 @@ +{ + "assert": true, + "async_hooks": ">= 8", + "buffer_ieee754": "< 0.9.7", + "buffer": true, + "child_process": true, + "cluster": true, + "console": true, + "constants": true, + "crypto": true, + "_debug_agent": ">= 1 && < 8", + "_debugger": "< 8", + "dgram": true, + "dns": true, + "domain": true, + "events": true, + "freelist": "< 6", + "fs": true, + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "_http_agent": ">= 0.11.1", + "_http_client": ">= 0.11.1", + "_http_common": ">= 0.11.1", + "_http_incoming": ">= 0.11.1", + "_http_outgoing": ">= 0.11.1", + "_http_server": ">= 0.11.1", + "http": true, + "http2": ">= 8.8", + "https": true, + "inspector": ">= 8.0.0", + "_linklist": "< 8", + "module": true, + "net": true, + "node-inspect/lib/_inspect": ">= 7.6.0 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6.0 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6.0 && < 12", + "os": true, + "path": true, + "perf_hooks": ">= 8.5", + "process": ">= 1", + "punycode": true, + "querystring": true, + "readline": true, + "repl": true, + "smalloc": ">= 0.11.5 && < 3", + "_stream_duplex": ">= 0.9.4", + "_stream_transform": ">= 0.9.4", + "_stream_wrap": ">= 1.4.1", + "_stream_passthrough": ">= 0.9.4", + "_stream_readable": ">= 0.9.4", + "_stream_writable": ">= 0.9.4", + "stream": true, + "string_decoder": true, + "sys": true, + "timers": true, + "_tls_common": ">= 0.11.13", + "_tls_legacy": ">= 0.11.3 && < 10", + "_tls_wrap": ">= 0.11.3", + "tls": true, + "trace_events": ">= 10", + "tty": true, + "url": true, + "util": true, + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"], + "v8/tools/consarray": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"], + "v8/tools/csvparser": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"], + "v8/tools/logreader": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"], + "v8/tools/profile_view": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"], + "v8/tools/splaytree": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"], + "v8": ">= 1", + "vm": true, + "wasi": ">= 13.4 && < 13.5", + "worker_threads": ">= 11.7", + "zlib": true +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/is-core.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/is-core.js new file mode 100644 index 00000000..48bc96c4 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/is-core.js @@ -0,0 +1,5 @@ +var core = require('./core'); + +module.exports = function isCore(x) { + return Object.prototype.hasOwnProperty.call(core, x); +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/node-modules-paths.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/node-modules-paths.js new file mode 100644 index 00000000..2b43813a --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/node-modules-paths.js @@ -0,0 +1,42 @@ +var path = require('path'); +var parse = path.parse || require('path-parse'); + +var getNodeModulesDirs = function getNodeModulesDirs(absoluteStart, modules) { + var prefix = '/'; + if ((/^([A-Za-z]:)/).test(absoluteStart)) { + prefix = ''; + } else if ((/^\\\\/).test(absoluteStart)) { + prefix = '\\\\'; + } + + var paths = [absoluteStart]; + var parsed = parse(absoluteStart); + while (parsed.dir !== paths[paths.length - 1]) { + paths.push(parsed.dir); + parsed = parse(parsed.dir); + } + + return paths.reduce(function (dirs, aPath) { + return dirs.concat(modules.map(function (moduleDir) { + return path.resolve(prefix, aPath, moduleDir); + })); + }, []); +}; + +module.exports = function nodeModulesPaths(start, opts, request) { + var modules = opts && opts.moduleDirectory + ? [].concat(opts.moduleDirectory) + : ['node_modules']; + + if (opts && typeof opts.paths === 'function') { + return opts.paths( + request, + start, + function () { return getNodeModulesDirs(start, modules); }, + opts + ); + } + + var dirs = getNodeModulesDirs(start, modules); + return opts && opts.paths ? dirs.concat(opts.paths) : dirs; +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/normalize-options.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/normalize-options.js new file mode 100644 index 00000000..4b56904e --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/normalize-options.js @@ -0,0 +1,10 @@ +module.exports = function (x, opts) { + /** + * This file is purposefully a passthrough. It's expected that third-party + * environments will override it at runtime in order to inject special logic + * into `resolve` (by manipulating the options). One such example is the PnP + * code path in Yarn. + */ + + return opts || {}; +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/lib/sync.js b/node_modules/eslint-plugin-import/node_modules/resolve/lib/sync.js new file mode 100644 index 00000000..da74e19d --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/lib/sync.js @@ -0,0 +1,191 @@ +var isCore = require('./is-core'); +var fs = require('fs'); +var path = require('path'); +var caller = require('./caller.js'); +var nodeModulesPaths = require('./node-modules-paths.js'); +var normalizeOptions = require('./normalize-options.js'); + +var realpathFS = fs.realpathSync && typeof fs.realpathSync.native === 'function' ? fs.realpathSync.native : fs.realpathSync; + +var defaultIsFile = function isFile(file) { + try { + var stat = fs.statSync(file); + } catch (e) { + if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false; + throw e; + } + return stat.isFile() || stat.isFIFO(); +}; + +var defaultIsDir = function isDirectory(dir) { + try { + var stat = fs.statSync(dir); + } catch (e) { + if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false; + throw e; + } + return stat.isDirectory(); +}; + +var defaultRealpathSync = function realpathSync(x) { + try { + return realpathFS(x); + } catch (realpathErr) { + if (realpathErr.code !== 'ENOENT') { + throw realpathErr; + } + } + return x; +}; + +var maybeRealpathSync = function maybeRealpathSync(realpathSync, x, opts) { + if (opts && opts.preserveSymlinks === false) { + return realpathSync(x); + } + return x; +}; + +var getPackageCandidates = function getPackageCandidates(x, start, opts) { + var dirs = nodeModulesPaths(start, opts, x); + for (var i = 0; i < dirs.length; i++) { + dirs[i] = path.join(dirs[i], x); + } + return dirs; +}; + +module.exports = function resolveSync(x, options) { + if (typeof x !== 'string') { + throw new TypeError('Path must be a string.'); + } + var opts = normalizeOptions(x, options); + + var isFile = opts.isFile || defaultIsFile; + var readFileSync = opts.readFileSync || fs.readFileSync; + var isDirectory = opts.isDirectory || defaultIsDir; + var realpathSync = opts.realpathSync || defaultRealpathSync; + var packageIterator = opts.packageIterator; + + var extensions = opts.extensions || ['.js']; + var basedir = opts.basedir || path.dirname(caller()); + var parent = opts.filename || basedir; + + opts.paths = opts.paths || []; + + // ensure that `basedir` is an absolute path at this point, resolving against the process' current working directory + var absoluteStart = maybeRealpathSync(realpathSync, path.resolve(basedir), opts); + + if ((/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/).test(x)) { + var res = path.resolve(absoluteStart, x); + if (x === '.' || x === '..' || x.slice(-1) === '/') res += '/'; + var m = loadAsFileSync(res) || loadAsDirectorySync(res); + if (m) return maybeRealpathSync(realpathSync, m, opts); + } else if (isCore(x)) { + return x; + } else { + var n = loadNodeModulesSync(x, absoluteStart); + if (n) return maybeRealpathSync(realpathSync, n, opts); + } + + var err = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + err.code = 'MODULE_NOT_FOUND'; + throw err; + + function loadAsFileSync(x) { + var pkg = loadpkg(path.dirname(x)); + + if (pkg && pkg.dir && pkg.pkg && opts.pathFilter) { + var rfile = path.relative(pkg.dir, x); + var r = opts.pathFilter(pkg.pkg, x, rfile); + if (r) { + x = path.resolve(pkg.dir, r); // eslint-disable-line no-param-reassign + } + } + + if (isFile(x)) { + return x; + } + + for (var i = 0; i < extensions.length; i++) { + var file = x + extensions[i]; + if (isFile(file)) { + return file; + } + } + } + + function loadpkg(dir) { + if (dir === '' || dir === '/') return; + if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) { + return; + } + if ((/[/\\]node_modules[/\\]*$/).test(dir)) return; + + var pkgfile = path.join(maybeRealpathSync(realpathSync, dir, opts), 'package.json'); + + if (!isFile(pkgfile)) { + return loadpkg(path.dirname(dir)); + } + + var body = readFileSync(pkgfile); + + try { + var pkg = JSON.parse(body); + } catch (jsonErr) {} + + if (pkg && opts.packageFilter) { + // v2 will pass pkgfile + pkg = opts.packageFilter(pkg, /*pkgfile,*/ dir); // eslint-disable-line spaced-comment + } + + return { pkg: pkg, dir: dir }; + } + + function loadAsDirectorySync(x) { + var pkgfile = path.join(maybeRealpathSync(realpathSync, x, opts), '/package.json'); + if (isFile(pkgfile)) { + try { + var body = readFileSync(pkgfile, 'UTF8'); + var pkg = JSON.parse(body); + } catch (e) {} + + if (pkg && opts.packageFilter) { + // v2 will pass pkgfile + pkg = opts.packageFilter(pkg, /*pkgfile,*/ x); // eslint-disable-line spaced-comment + } + + if (pkg && pkg.main) { + if (typeof pkg.main !== 'string') { + var mainError = new TypeError('package “' + pkg.name + '” `main` must be a string'); + mainError.code = 'INVALID_PACKAGE_MAIN'; + throw mainError; + } + if (pkg.main === '.' || pkg.main === './') { + pkg.main = 'index'; + } + try { + var m = loadAsFileSync(path.resolve(x, pkg.main)); + if (m) return m; + var n = loadAsDirectorySync(path.resolve(x, pkg.main)); + if (n) return n; + } catch (e) {} + } + } + + return loadAsFileSync(path.join(x, '/index')); + } + + function loadNodeModulesSync(x, start) { + var thunk = function () { return getPackageCandidates(x, start, opts); }; + var dirs = packageIterator ? packageIterator(x, start, thunk, opts) : thunk(); + + for (var i = 0; i < dirs.length; i++) { + var dir = dirs[i]; + if (isDirectory(path.dirname(dir))) { + var m = loadAsFileSync(dir); + if (m) return m; + var n = loadAsDirectorySync(dir); + if (n) return n; + } + } + } +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/package.json new file mode 100644 index 00000000..b6d3bec1 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/package.json @@ -0,0 +1,47 @@ +{ + "name": "resolve", + "description": "resolve like require.resolve() on behalf of files asynchronously and synchronously", + "version": "1.17.0", + "repository": { + "type": "git", + "url": "git://github.com/browserify/resolve.git" + }, + "main": "index.js", + "keywords": [ + "resolve", + "require", + "node", + "module" + ], + "scripts": { + "prepublish": "safe-publish-latest", + "lint": "eslint .", + "pretests-only": "cd ./test/resolver/nested_symlinks && node mylib/sync && node mylib/async", + "tests-only": "tape test/*.js", + "pretest": "npm run lint", + "test": "npm run --silent tests-only", + "posttest": "npm run test:multirepo", + "test:multirepo": "cd ./test/resolver/multirepo && npm install && npm test" + }, + "devDependencies": { + "@ljharb/eslint-config": "^16.0.0", + "array.prototype.map": "^1.0.2", + "eslint": "^6.8.0", + "object-keys": "^1.1.1", + "safe-publish-latest": "^1.1.4", + "tap": "0.4.13", + "tape": "^5.0.0-next.5" + }, + "license": "MIT", + "author": { + "name": "James Halliday", + "email": "mail@substack.net", + "url": "http://substack.net" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + }, + "dependencies": { + "path-parse": "^1.0.6" + } +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/readme.markdown b/node_modules/eslint-plugin-import/node_modules/resolve/readme.markdown new file mode 100644 index 00000000..5e1aea33 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/readme.markdown @@ -0,0 +1,242 @@ +# resolve + +implements the [node `require.resolve()` +algorithm](https://nodejs.org/api/modules.html#modules_all_together) +such that you can `require.resolve()` on behalf of a file asynchronously and +synchronously + +[![build status](https://secure.travis-ci.org/browserify/resolve.png)](http://travis-ci.org/browserify/resolve) + +# example + +asynchronously resolve: + +```js +var resolve = require('resolve'); +resolve('tap', { basedir: __dirname }, function (err, res) { + if (err) console.error(err); + else console.log(res); +}); +``` + +``` +$ node example/async.js +/home/substack/projects/node-resolve/node_modules/tap/lib/main.js +``` + +synchronously resolve: + +```js +var resolve = require('resolve'); +var res = resolve.sync('tap', { basedir: __dirname }); +console.log(res); +``` + +``` +$ node example/sync.js +/home/substack/projects/node-resolve/node_modules/tap/lib/main.js +``` + +# methods + +```js +var resolve = require('resolve'); +``` + +## resolve(id, opts={}, cb) + +Asynchronously resolve the module path string `id` into `cb(err, res [, pkg])`, where `pkg` (if defined) is the data from `package.json`. + +options are: + +* opts.basedir - directory to begin resolving from + +* opts.package - `package.json` data applicable to the module being loaded + +* opts.extensions - array of file extensions to search in order + +* opts.readFile - how to read files asynchronously + +* opts.isFile - function to asynchronously test whether a file exists + +* opts.isDirectory - function to asynchronously test whether a directory exists + +* opts.realpath - function to asynchronously resolve a potential symlink to its real path + +* `opts.packageFilter(pkg, pkgfile, dir)` - transform the parsed package.json contents before looking at the "main" field + * pkg - package data + * pkgfile - path to package.json + * dir - directory for package.json + +* `opts.pathFilter(pkg, path, relativePath)` - transform a path within a package + * pkg - package data + * path - the path being resolved + * relativePath - the path relative from the package.json location + * returns - a relative path that will be joined from the package.json location + +* opts.paths - require.paths array to use if nothing is found on the normal `node_modules` recursive walk (probably don't use this) + + For advanced users, `paths` can also be a `opts.paths(request, start, opts)` function + * request - the import specifier being resolved + * start - lookup path + * getNodeModulesDirs - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution + * opts - the resolution options + +* `opts.packageIterator(request, start, opts)` - return the list of candidate paths where the packages sources may be found (probably don't use this) + * request - the import specifier being resolved + * start - lookup path + * getPackageCandidates - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution + * opts - the resolution options + +* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"` + +* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving. +This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag. +**Note:** this property is currently `true` by default but it will be changed to +`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*. + +default `opts` values: + +```js +{ + paths: [], + basedir: __dirname, + extensions: ['.js'], + readFile: fs.readFile, + isFile: function isFile(file, cb) { + fs.stat(file, function (err, stat) { + if (!err) { + return cb(null, stat.isFile() || stat.isFIFO()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); + }, + isDirectory: function isDirectory(dir, cb) { + fs.stat(dir, function (err, stat) { + if (!err) { + return cb(null, stat.isDirectory()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); + }, + realpath: function realpath(file, cb) { + var realpath = typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath; + realpath(file, function (realPathErr, realPath) { + if (realPathErr && realPathErr.code !== 'ENOENT') cb(realPathErr); + else cb(null, realPathErr ? file : realPath); + }); + }, + moduleDirectory: 'node_modules', + preserveSymlinks: true +} +``` + +## resolve.sync(id, opts) + +Synchronously resolve the module path string `id`, returning the result and +throwing an error when `id` can't be resolved. + +options are: + +* opts.basedir - directory to begin resolving from + +* opts.extensions - array of file extensions to search in order + +* opts.readFile - how to read files synchronously + +* opts.isFile - function to synchronously test whether a file exists + +* opts.isDirectory - function to synchronously test whether a directory exists + +* opts.realpathSync - function to synchronously resolve a potential symlink to its real path + +* `opts.packageFilter(pkg, dir)` - transform the parsed package.json contents before looking at the "main" field + * pkg - package data + * dir - directory for package.json (Note: the second argument will change to "pkgfile" in v2) + +* `opts.pathFilter(pkg, path, relativePath)` - transform a path within a package + * pkg - package data + * path - the path being resolved + * relativePath - the path relative from the package.json location + * returns - a relative path that will be joined from the package.json location + +* opts.paths - require.paths array to use if nothing is found on the normal `node_modules` recursive walk (probably don't use this) + + For advanced users, `paths` can also be a `opts.paths(request, start, opts)` function + * request - the import specifier being resolved + * start - lookup path + * getNodeModulesDirs - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution + * opts - the resolution options + +* `opts.packageIterator(request, start, opts)` - return the list of candidate paths where the packages sources may be found (probably don't use this) + * request - the import specifier being resolved + * start - lookup path + * getPackageCandidates - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution + * opts - the resolution options + +* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"` + +* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving. +This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag. +**Note:** this property is currently `true` by default but it will be changed to +`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*. + +default `opts` values: + +```js +{ + paths: [], + basedir: __dirname, + extensions: ['.js'], + readFileSync: fs.readFileSync, + isFile: function isFile(file) { + try { + var stat = fs.statSync(file); + } catch (e) { + if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false; + throw e; + } + return stat.isFile() || stat.isFIFO(); + }, + isDirectory: function isDirectory(dir) { + try { + var stat = fs.statSync(dir); + } catch (e) { + if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false; + throw e; + } + return stat.isDirectory(); + }, + realpathSync: function realpathSync(file) { + try { + var realpath = typeof fs.realpathSync.native === 'function' ? fs.realpathSync.native : fs.realpathSync; + return realpath(file); + } catch (realPathErr) { + if (realPathErr.code !== 'ENOENT') { + throw realPathErr; + } + } + return file; + }, + moduleDirectory: 'node_modules', + preserveSymlinks: true +} +``` + +## resolve.isCore(pkg) + +Return whether a package is in core. + +# install + +With [npm](https://npmjs.org) do: + +```sh +npm install resolve +``` + +# license + +MIT diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/.eslintrc b/node_modules/eslint-plugin-import/node_modules/resolve/test/.eslintrc new file mode 100644 index 00000000..ddd262df --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/.eslintrc @@ -0,0 +1,5 @@ +{ + "rules": { + "max-lines": 0 + } +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/core.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/core.js new file mode 100644 index 00000000..4c111e1d --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/core.js @@ -0,0 +1,85 @@ +var test = require('tape'); +var keys = require('object-keys'); +var resolve = require('../'); + +test('core modules', function (t) { + t.test('isCore()', function (st) { + st.ok(resolve.isCore('fs')); + st.ok(resolve.isCore('net')); + st.ok(resolve.isCore('http')); + + st.ok(!resolve.isCore('seq')); + st.ok(!resolve.isCore('../')); + + st.ok(!resolve.isCore('toString')); + + st.end(); + }); + + t.test('core list', function (st) { + var cores = keys(resolve.core); + st.plan(cores.length); + + for (var i = 0; i < cores.length; ++i) { + var mod = cores[i]; + if (resolve.core[mod]) { + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + mod + ' supported; requiring does not throw' + ); + } else { + st.throws( + function () { require(mod); }, // eslint-disable-line no-loop-func + mod + ' not supported; requiring throws' + ); + } + } + + st.end(); + }); + + t.test('core via repl module', { skip: !resolve.core.repl }, function (st) { + var libs = require('repl')._builtinLibs; // eslint-disable-line no-underscore-dangle + if (!libs) { + st.skip('module.builtinModules does not exist'); + return st.end(); + } + for (var i = 0; i < libs.length; ++i) { + var mod = libs[i]; + st.ok(resolve.core[mod], mod + ' is a core module'); + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + 'requiring ' + mod + ' does not throw' + ); + } + st.end(); + }); + + t.test('core via builtinModules list', { skip: !resolve.core.module }, function (st) { + var libs = require('module').builtinModules; + if (!libs) { + st.skip('module.builtinModules does not exist'); + return st.end(); + } + var blacklist = [ + '_debug_agent', + 'v8/tools/tickprocessor-driver', + 'v8/tools/SourceMap', + 'v8/tools/tickprocessor', + 'v8/tools/profile' + ]; + for (var i = 0; i < libs.length; ++i) { + var mod = libs[i]; + if (blacklist.indexOf(mod) === -1) { + st.ok(resolve.core[mod], mod + ' is a core module'); + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + 'requiring ' + mod + ' does not throw' + ); + } + } + st.end(); + }); + + t.end(); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot.js new file mode 100644 index 00000000..30806659 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot.js @@ -0,0 +1,29 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('dotdot', function (t) { + t.plan(4); + var dir = path.join(__dirname, '/dotdot/abc'); + + resolve('..', { basedir: dir }, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(__dirname, 'dotdot/index.js')); + }); + + resolve('.', { basedir: dir }, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, 'index.js')); + }); +}); + +test('dotdot sync', function (t) { + t.plan(2); + var dir = path.join(__dirname, '/dotdot/abc'); + + var a = resolve.sync('..', { basedir: dir }); + t.equal(a, path.join(__dirname, 'dotdot/index.js')); + + var b = resolve.sync('.', { basedir: dir }); + t.equal(b, path.join(dir, 'index.js')); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot/abc/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot/abc/index.js new file mode 100644 index 00000000..67f2534e --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot/abc/index.js @@ -0,0 +1,2 @@ +var x = require('..'); +console.log(x); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot/index.js new file mode 100644 index 00000000..643f9fcc --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/dotdot/index.js @@ -0,0 +1 @@ +module.exports = 'whatever'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/faulty_basedir.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/faulty_basedir.js new file mode 100644 index 00000000..5f2141a6 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/faulty_basedir.js @@ -0,0 +1,29 @@ +var test = require('tape'); +var path = require('path'); +var resolve = require('../'); + +test('faulty basedir must produce error in windows', { skip: process.platform !== 'win32' }, function (t) { + t.plan(1); + + var resolverDir = 'C:\\a\\b\\c\\d'; + + resolve('tape/lib/test.js', { basedir: resolverDir }, function (err, res, pkg) { + t.equal(!!err, true); + }); +}); + +test('non-existent basedir should not throw when preserveSymlinks is false', function (t) { + t.plan(2); + + var opts = { + basedir: path.join(path.sep, 'unreal', 'path', 'that', 'does', 'not', 'exist'), + preserveSymlinks: false + }; + + var module = './dotdot/abc'; + + resolve(module, opts, function (err, res) { + t.equal(err.code, 'MODULE_NOT_FOUND'); + t.equal(res, undefined); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/filter.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/filter.js new file mode 100644 index 00000000..8f8cccdb --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/filter.js @@ -0,0 +1,34 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('filter', function (t) { + t.plan(4); + var dir = path.join(__dirname, 'resolver'); + var packageFilterArgs; + resolve('./baz', { + basedir: dir, + packageFilter: function (pkg, pkgfile) { + pkg.main = 'doom'; // eslint-disable-line no-param-reassign + packageFilterArgs = [pkg, pkgfile]; + return pkg; + } + }, function (err, res, pkg) { + if (err) t.fail(err); + + t.equal(res, path.join(dir, 'baz/doom.js'), 'changing the package "main" works'); + + var packageData = packageFilterArgs[0]; + t.equal(pkg, packageData, 'first packageFilter argument is "pkg"'); + t.equal(packageData.main, 'doom', 'package "main" was altered'); + + var packageFile = packageFilterArgs[1]; + t.equal( + packageFile, + path.join(dir, 'baz/package.json'), + 'second packageFilter argument is "pkgfile"' + ); + + t.end(); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/filter_sync.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/filter_sync.js new file mode 100644 index 00000000..8a43b981 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/filter_sync.js @@ -0,0 +1,33 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('filter', function (t) { + var dir = path.join(__dirname, 'resolver'); + var packageFilterArgs; + var res = resolve.sync('./baz', { + basedir: dir, + // NOTE: in v2.x, this will be `pkg, pkgfile, dir`, but must remain "broken" here in v1.x for compatibility + packageFilter: function (pkg, /*pkgfile,*/ dir) { // eslint-disable-line spaced-comment + pkg.main = 'doom'; // eslint-disable-line no-param-reassign + packageFilterArgs = 'is 1.x' ? [pkg, dir] : [pkg, pkgfile, dir]; // eslint-disable-line no-constant-condition, no-undef + return pkg; + } + }); + + t.equal(res, path.join(dir, 'baz/doom.js'), 'changing the package "main" works'); + + var packageData = packageFilterArgs[0]; + t.equal(packageData.main, 'doom', 'package "main" was altered'); + + if (!'is 1.x') { // eslint-disable-line no-constant-condition + var packageFile = packageFilterArgs[1]; + t.equal(packageFile, path.join(dir, 'baz', 'package.json'), 'package.json path is correct'); + } + + var packageDir = packageFilterArgs['is 1.x' ? 1 : 2]; // eslint-disable-line no-constant-condition + // eslint-disable-next-line no-constant-condition + t.equal(packageDir, path.join(dir, 'baz'), ('is 1.x' ? 'second' : 'third') + ' packageFilter argument is "dir"'); + + t.end(); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/mock.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/mock.js new file mode 100644 index 00000000..b9f17fe2 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/mock.js @@ -0,0 +1,239 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('mock', function (t) { + t.plan(8); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + + var dirs = {}; + dirs[path.resolve('/foo/bar')] = true; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + isDirectory: function (dir, cb) { + cb(null, !!dirs[path.resolve(dir)]); + }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + }, + realpath: function (file, cb) { + cb(null, file); + } + }; + } + + resolve('./baz', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg, undefined); + }); + + resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg, undefined); + }); + + resolve('baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + resolve('../baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('mock from package', function (t) { + t.plan(8); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + + var dirs = {}; + dirs[path.resolve('/foo/bar')] = true; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, file)); + }, + isDirectory: function (dir, cb) { + cb(null, !!dirs[path.resolve(dir)]); + }, + 'package': { main: 'bar' }, + readFile: function (file, cb) { + cb(null, files[file]); + }, + realpath: function (file, cb) { + cb(null, file); + } + }; + } + + resolve('./baz', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg && pkg.main, 'bar'); + }); + + resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg && pkg.main, 'bar'); + }); + + resolve('baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + resolve('../baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('mock package', function (t) { + t.plan(2); + + var files = {}; + files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({ + main: './baz.js' + }); + + var dirs = {}; + dirs[path.resolve('/foo')] = true; + dirs[path.resolve('/foo/node_modules')] = true; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + isDirectory: function (dir, cb) { + cb(null, !!dirs[path.resolve(dir)]); + }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + }, + realpath: function (file, cb) { + cb(null, file); + } + }; + } + + resolve('bar', opts('/foo'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/node_modules/bar/baz.js')); + t.equal(pkg && pkg.main, './baz.js'); + }); +}); + +test('mock package from package', function (t) { + t.plan(2); + + var files = {}; + files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({ + main: './baz.js' + }); + + var dirs = {}; + dirs[path.resolve('/foo')] = true; + dirs[path.resolve('/foo/node_modules')] = true; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + isDirectory: function (dir, cb) { + cb(null, !!dirs[path.resolve(dir)]); + }, + 'package': { main: 'bar' }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + }, + realpath: function (file, cb) { + cb(null, file); + } + }; + } + + resolve('bar', opts('/foo'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/node_modules/bar/baz.js')); + t.equal(pkg && pkg.main, './baz.js'); + }); +}); + +test('symlinked', function (t) { + t.plan(4); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/bar/symlinked/baz.js')] = 'beep'; + + var dirs = {}; + dirs[path.resolve('/foo/bar')] = true; + dirs[path.resolve('/foo/bar/symlinked')] = true; + + function opts(basedir) { + return { + preserveSymlinks: false, + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + isDirectory: function (dir, cb) { + cb(null, !!dirs[path.resolve(dir)]); + }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + }, + realpath: function (file, cb) { + var resolved = path.resolve(file); + + if (resolved.indexOf('symlinked') >= 0) { + cb(null, resolved); + return; + } + + var ext = path.extname(resolved); + + if (ext) { + var dir = path.dirname(resolved); + var base = path.basename(resolved); + cb(null, path.join(dir, 'symlinked', base)); + } else { + cb(null, path.join(resolved, 'symlinked')); + } + } + }; + } + + resolve('./baz', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/symlinked/baz.js')); + t.equal(pkg, undefined); + }); + + resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/symlinked/baz.js')); + t.equal(pkg, undefined); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/mock_sync.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/mock_sync.js new file mode 100644 index 00000000..fcf81144 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/mock_sync.js @@ -0,0 +1,141 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('mock', function (t) { + t.plan(4); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + + var dirs = {}; + dirs[path.resolve('/foo/bar')] = true; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file) { + return Object.prototype.hasOwnProperty.call(files, path.resolve(file)); + }, + isDirectory: function (dir) { + return !!dirs[path.resolve(dir)]; + }, + readFileSync: function (file) { + return files[path.resolve(file)]; + }, + realpathSync: function (file) { + return file; + } + }; + } + + t.equal( + resolve.sync('./baz', opts('/foo/bar')), + path.resolve('/foo/bar/baz.js') + ); + + t.equal( + resolve.sync('./baz.js', opts('/foo/bar')), + path.resolve('/foo/bar/baz.js') + ); + + t.throws(function () { + resolve.sync('baz', opts('/foo/bar')); + }); + + t.throws(function () { + resolve.sync('../baz', opts('/foo/bar')); + }); +}); + +test('mock package', function (t) { + t.plan(1); + + var files = {}; + files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({ + main: './baz.js' + }); + + var dirs = {}; + dirs[path.resolve('/foo')] = true; + dirs[path.resolve('/foo/node_modules')] = true; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file) { + return Object.prototype.hasOwnProperty.call(files, path.resolve(file)); + }, + isDirectory: function (dir) { + return !!dirs[path.resolve(dir)]; + }, + readFileSync: function (file) { + return files[path.resolve(file)]; + }, + realpathSync: function (file) { + return file; + } + }; + } + + t.equal( + resolve.sync('bar', opts('/foo')), + path.resolve('/foo/node_modules/bar/baz.js') + ); +}); + +test('symlinked', function (t) { + t.plan(2); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/bar/symlinked/baz.js')] = 'beep'; + + var dirs = {}; + dirs[path.resolve('/foo/bar')] = true; + dirs[path.resolve('/foo/bar/symlinked')] = true; + + function opts(basedir) { + return { + preserveSymlinks: false, + basedir: path.resolve(basedir), + isFile: function (file) { + return Object.prototype.hasOwnProperty.call(files, path.resolve(file)); + }, + isDirectory: function (dir) { + return !!dirs[path.resolve(dir)]; + }, + readFileSync: function (file) { + return files[path.resolve(file)]; + }, + realpathSync: function (file) { + var resolved = path.resolve(file); + + if (resolved.indexOf('symlinked') >= 0) { + return resolved; + } + + var ext = path.extname(resolved); + + if (ext) { + var dir = path.dirname(resolved); + var base = path.basename(resolved); + return path.join(dir, 'symlinked', base); + } else { + return path.join(resolved, 'symlinked'); + } + } + }; + } + + t.equal( + resolve.sync('./baz', opts('/foo/bar')), + path.resolve('/foo/bar/symlinked/baz.js') + ); + + t.equal( + resolve.sync('./baz.js', opts('/foo/bar')), + path.resolve('/foo/bar/symlinked/baz.js') + ); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir.js new file mode 100644 index 00000000..b50e5bb1 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir.js @@ -0,0 +1,56 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('moduleDirectory strings', function (t) { + t.plan(4); + var dir = path.join(__dirname, 'module_dir'); + var xopts = { + basedir: dir, + moduleDirectory: 'xmodules' + }; + resolve('aaa', xopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/xmodules/aaa/index.js')); + }); + + var yopts = { + basedir: dir, + moduleDirectory: 'ymodules' + }; + resolve('aaa', yopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/ymodules/aaa/index.js')); + }); +}); + +test('moduleDirectory array', function (t) { + t.plan(6); + var dir = path.join(__dirname, 'module_dir'); + var aopts = { + basedir: dir, + moduleDirectory: ['xmodules', 'ymodules', 'zmodules'] + }; + resolve('aaa', aopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/xmodules/aaa/index.js')); + }); + + var bopts = { + basedir: dir, + moduleDirectory: ['zmodules', 'ymodules', 'xmodules'] + }; + resolve('aaa', bopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/ymodules/aaa/index.js')); + }); + + var copts = { + basedir: dir, + moduleDirectory: ['xmodules', 'ymodules', 'zmodules'] + }; + resolve('bbb', copts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/zmodules/bbb/main.js')); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/xmodules/aaa/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/xmodules/aaa/index.js new file mode 100644 index 00000000..dd7cf7b2 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/xmodules/aaa/index.js @@ -0,0 +1 @@ +module.exports = function (x) { return x * 100; }; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/ymodules/aaa/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/ymodules/aaa/index.js new file mode 100644 index 00000000..ef2d4d4b --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/ymodules/aaa/index.js @@ -0,0 +1 @@ +module.exports = function (x) { return x + 100; }; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/zmodules/bbb/main.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/zmodules/bbb/main.js new file mode 100644 index 00000000..e8ba6299 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/zmodules/bbb/main.js @@ -0,0 +1 @@ +module.exports = function (n) { return n * 111; }; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/zmodules/bbb/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/zmodules/bbb/package.json new file mode 100644 index 00000000..c13b8cf6 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/module_dir/zmodules/bbb/package.json @@ -0,0 +1,3 @@ +{ + "main": "main.js" +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/node-modules-paths.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/node-modules-paths.js new file mode 100644 index 00000000..675441db --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/node-modules-paths.js @@ -0,0 +1,143 @@ +var test = require('tape'); +var path = require('path'); +var parse = path.parse || require('path-parse'); +var keys = require('object-keys'); + +var nodeModulesPaths = require('../lib/node-modules-paths'); + +var verifyDirs = function verifyDirs(t, start, dirs, moduleDirectories, paths) { + var moduleDirs = [].concat(moduleDirectories || 'node_modules'); + if (paths) { + for (var k = 0; k < paths.length; ++k) { + moduleDirs.push(path.basename(paths[k])); + } + } + + var foundModuleDirs = {}; + var uniqueDirs = {}; + var parsedDirs = {}; + for (var i = 0; i < dirs.length; ++i) { + var parsed = parse(dirs[i]); + if (!foundModuleDirs[parsed.base]) { foundModuleDirs[parsed.base] = 0; } + foundModuleDirs[parsed.base] += 1; + parsedDirs[parsed.dir] = true; + uniqueDirs[dirs[i]] = true; + } + t.equal(keys(parsedDirs).length >= start.split(path.sep).length, true, 'there are >= dirs than "start" has'); + var foundModuleDirNames = keys(foundModuleDirs); + t.deepEqual(foundModuleDirNames, moduleDirs, 'all desired module dirs were found'); + t.equal(keys(uniqueDirs).length, dirs.length, 'all dirs provided were unique'); + + var counts = {}; + for (var j = 0; j < foundModuleDirNames.length; ++j) { + counts[foundModuleDirs[j]] = true; + } + t.equal(keys(counts).length, 1, 'all found module directories had the same count'); +}; + +test('node-modules-paths', function (t) { + t.test('no options', function (t) { + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start); + + verifyDirs(t, start, dirs); + + t.end(); + }); + + t.test('empty options', function (t) { + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start, {}); + + verifyDirs(t, start, dirs); + + t.end(); + }); + + t.test('with paths=array option', function (t) { + var start = path.join(__dirname, 'resolver'); + var paths = ['a', 'b']; + var dirs = nodeModulesPaths(start, { paths: paths }); + + verifyDirs(t, start, dirs, null, paths); + + t.end(); + }); + + t.test('with paths=function option', function (t) { + var paths = function paths(request, absoluteStart, getNodeModulesDirs, opts) { + return getNodeModulesDirs().concat(path.join(absoluteStart, 'not node modules', request)); + }; + + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start, { paths: paths }, 'pkg'); + + verifyDirs(t, start, dirs, null, [path.join(start, 'not node modules', 'pkg')]); + + t.end(); + }); + + t.test('with paths=function skipping node modules resolution', function (t) { + var paths = function paths(request, absoluteStart, getNodeModulesDirs, opts) { + return []; + }; + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start, { paths: paths }); + t.deepEqual(dirs, [], 'no node_modules was computed'); + t.end(); + }); + + t.test('with moduleDirectory option', function (t) { + var start = path.join(__dirname, 'resolver'); + var moduleDirectory = 'not node modules'; + var dirs = nodeModulesPaths(start, { moduleDirectory: moduleDirectory }); + + verifyDirs(t, start, dirs, moduleDirectory); + + t.end(); + }); + + t.test('with 1 moduleDirectory and paths options', function (t) { + var start = path.join(__dirname, 'resolver'); + var paths = ['a', 'b']; + var moduleDirectory = 'not node modules'; + var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectory }); + + verifyDirs(t, start, dirs, moduleDirectory, paths); + + t.end(); + }); + + t.test('with 1+ moduleDirectory and paths options', function (t) { + var start = path.join(__dirname, 'resolver'); + var paths = ['a', 'b']; + var moduleDirectories = ['not node modules', 'other modules']; + var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories }); + + verifyDirs(t, start, dirs, moduleDirectories, paths); + + t.end(); + }); + + t.test('combine paths correctly on Windows', function (t) { + var start = 'C:\\Users\\username\\myProject\\src'; + var paths = []; + var moduleDirectories = ['node_modules', start]; + var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories }); + + t.equal(dirs.indexOf(path.resolve(start)) > -1, true, 'should contain start dir'); + + t.end(); + }); + + t.test('combine paths correctly on non-Windows', { skip: process.platform === 'win32' }, function (t) { + var start = '/Users/username/git/myProject/src'; + var paths = []; + var moduleDirectories = ['node_modules', '/Users/username/git/myProject/src']; + var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories }); + + t.equal(dirs.indexOf(path.resolve(start)) > -1, true, 'should contain start dir'); + + t.end(); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path.js new file mode 100644 index 00000000..d06aa4ea --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path.js @@ -0,0 +1,70 @@ +var fs = require('fs'); +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('$NODE_PATH', function (t) { + t.plan(8); + + var isDir = function (dir, cb) { + if (dir === '/node_path' || dir === 'node_path/x') { + return cb(null, true); + } + fs.stat(dir, function (err, stat) { + if (!err) { + return cb(null, stat.isDirectory()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); + }; + + resolve('aaa', { + paths: [ + path.join(__dirname, '/node_path/x'), + path.join(__dirname, '/node_path/y') + ], + basedir: __dirname, + isDirectory: isDir + }, function (err, res) { + t.error(err); + t.equal(res, path.join(__dirname, '/node_path/x/aaa/index.js'), 'aaa resolves'); + }); + + resolve('bbb', { + paths: [ + path.join(__dirname, '/node_path/x'), + path.join(__dirname, '/node_path/y') + ], + basedir: __dirname, + isDirectory: isDir + }, function (err, res) { + t.error(err); + t.equal(res, path.join(__dirname, '/node_path/y/bbb/index.js'), 'bbb resolves'); + }); + + resolve('ccc', { + paths: [ + path.join(__dirname, '/node_path/x'), + path.join(__dirname, '/node_path/y') + ], + basedir: __dirname, + isDirectory: isDir + }, function (err, res) { + t.error(err); + t.equal(res, path.join(__dirname, '/node_path/x/ccc/index.js'), 'ccc resolves'); + }); + + // ensure that relative paths still resolve against the regular `node_modules` correctly + resolve('tap', { + paths: [ + 'node_path' + ], + basedir: path.join(__dirname, 'node_path/x'), + isDirectory: isDir + }, function (err, res) { + var root = require('tap/package.json').main; + t.error(err); + t.equal(res, path.resolve(__dirname, '..', 'node_modules/tap', root), 'tap resolves'); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/x/aaa/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/x/aaa/index.js new file mode 100644 index 00000000..ad70d0bb --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/x/aaa/index.js @@ -0,0 +1 @@ +module.exports = 'A'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/x/ccc/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/x/ccc/index.js new file mode 100644 index 00000000..a64132e4 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/x/ccc/index.js @@ -0,0 +1 @@ +module.exports = 'C'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/y/bbb/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/y/bbb/index.js new file mode 100644 index 00000000..4d0f32e2 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/y/bbb/index.js @@ -0,0 +1 @@ +module.exports = 'B'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/y/ccc/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/y/ccc/index.js new file mode 100644 index 00000000..793315e8 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/node_path/y/ccc/index.js @@ -0,0 +1 @@ +module.exports = 'CY'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/nonstring.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/nonstring.js new file mode 100644 index 00000000..ef63c40f --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/nonstring.js @@ -0,0 +1,9 @@ +var test = require('tape'); +var resolve = require('../'); + +test('nonstring', function (t) { + t.plan(1); + resolve(555, function (err, res, pkg) { + t.ok(err); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/pathfilter.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/pathfilter.js new file mode 100644 index 00000000..16519aea --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/pathfilter.js @@ -0,0 +1,75 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +var resolverDir = path.join(__dirname, '/pathfilter/deep_ref'); + +var pathFilterFactory = function (t) { + return function (pkg, x, remainder) { + t.equal(pkg.version, '1.2.3'); + t.equal(x, path.join(resolverDir, 'node_modules/deep/ref')); + t.equal(remainder, 'ref'); + return 'alt'; + }; +}; + +test('#62: deep module references and the pathFilter', function (t) { + t.test('deep/ref.js', function (st) { + st.plan(3); + + resolve('deep/ref', { basedir: resolverDir }, function (err, res, pkg) { + if (err) st.fail(err); + + st.equal(pkg.version, '1.2.3'); + st.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js')); + }); + + var res = resolve.sync('deep/ref', { basedir: resolverDir }); + st.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js')); + }); + + t.test('deep/deeper/ref', function (st) { + st.plan(4); + + resolve( + 'deep/deeper/ref', + { basedir: resolverDir }, + function (err, res, pkg) { + if (err) t.fail(err); + st.notEqual(pkg, undefined); + st.equal(pkg.version, '1.2.3'); + st.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js')); + } + ); + + var res = resolve.sync( + 'deep/deeper/ref', + { basedir: resolverDir } + ); + st.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js')); + }); + + t.test('deep/ref alt', function (st) { + st.plan(8); + + var pathFilter = pathFilterFactory(st); + + var res = resolve.sync( + 'deep/ref', + { basedir: resolverDir, pathFilter: pathFilter } + ); + st.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js')); + + resolve( + 'deep/ref', + { basedir: resolverDir, pathFilter: pathFilter }, + function (err, res, pkg) { + if (err) st.fail(err); + st.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js')); + st.end(); + } + ); + }); + + t.end(); +}); diff --git a/node_modules/@octokit/request/node_modules/@octokit/request-error/dist-src/types.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/pathfilter/deep_ref/main.js similarity index 100% rename from node_modules/@octokit/request/node_modules/@octokit/request-error/dist-src/types.js rename to node_modules/eslint-plugin-import/node_modules/resolve/test/pathfilter/deep_ref/main.js diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence.js new file mode 100644 index 00000000..2febb598 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence.js @@ -0,0 +1,23 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('precedence', function (t) { + t.plan(3); + var dir = path.join(__dirname, 'precedence/aaa'); + + resolve('./', { basedir: dir }, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, 'index.js')); + t.equal(pkg.name, 'resolve'); + }); +}); + +test('./ should not load ${dir}.js', function (t) { // eslint-disable-line no-template-curly-in-string + t.plan(1); + var dir = path.join(__dirname, 'precedence/bbb'); + + resolve('./', { basedir: dir }, function (err, res, pkg) { + t.ok(err); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa.js new file mode 100644 index 00000000..b83a3e7a --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa.js @@ -0,0 +1 @@ +module.exports = 'wtf'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa/index.js new file mode 100644 index 00000000..e0f8f6ab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa/index.js @@ -0,0 +1 @@ +module.exports = 'okok'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa/main.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa/main.js new file mode 100644 index 00000000..93542a96 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/aaa/main.js @@ -0,0 +1 @@ +console.log(require('./')); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/bbb.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/bbb.js new file mode 100644 index 00000000..2298f47f --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/bbb.js @@ -0,0 +1 @@ +module.exports = '>_<'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/bbb/main.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/bbb/main.js new file mode 100644 index 00000000..716b81d4 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/precedence/bbb/main.js @@ -0,0 +1 @@ +console.log(require('./')); // should throw diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver.js new file mode 100644 index 00000000..aa36ee11 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver.js @@ -0,0 +1,450 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('async foo', function (t) { + t.plan(12); + var dir = path.join(__dirname, 'resolver'); + + resolve('./foo', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg && pkg.name, 'resolve'); + }); + + resolve('./foo.js', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg && pkg.name, 'resolve'); + }); + + resolve('./foo', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg && pkg.main, 'resolver'); + }); + + resolve('./foo.js', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg.main, 'resolver'); + }); + + resolve('./foo', { basedir: dir, filename: path.join(dir, 'baz.js') }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + }); + + resolve('foo', { basedir: dir }, function (err) { + t.equal(err.message, "Cannot find module 'foo' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + // Test that filename is reported as the "from" value when passed. + resolve('foo', { basedir: dir, filename: path.join(dir, 'baz.js') }, function (err) { + t.equal(err.message, "Cannot find module 'foo' from '" + path.join(dir, 'baz.js') + "'"); + }); +}); + +test('bar', function (t) { + t.plan(6); + var dir = path.join(__dirname, 'resolver'); + + resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js')); + t.equal(pkg, undefined); + }); + + resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js')); + t.equal(pkg, undefined); + }); + + resolve('foo', { basedir: dir + '/bar', 'package': { main: 'bar' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js')); + t.equal(pkg.main, 'bar'); + }); +}); + +test('baz', function (t) { + t.plan(4); + var dir = path.join(__dirname, 'resolver'); + + resolve('./baz', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'baz/quux.js')); + t.equal(pkg.main, 'quux.js'); + }); + + resolve('./baz', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'baz/quux.js')); + t.equal(pkg.main, 'quux.js'); + }); +}); + +test('biz', function (t) { + t.plan(24); + var dir = path.join(__dirname, 'resolver/biz/node_modules'); + + resolve('./grux', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg, undefined); + }); + + resolve('./grux', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg.main, 'biz'); + }); + + resolve('./garply', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('./garply', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('tiv', { basedir: dir + '/grux' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg, undefined); + }); + + resolve('tiv', { basedir: dir + '/grux', 'package': { main: 'grux' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg.main, 'grux'); + }); + + resolve('tiv', { basedir: dir + '/garply' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg, undefined); + }); + + resolve('tiv', { basedir: dir + '/garply', 'package': { main: './lib' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('grux', { basedir: dir + '/tiv' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg, undefined); + }); + + resolve('grux', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg.main, 'tiv'); + }); + + resolve('garply', { basedir: dir + '/tiv' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('garply', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); +}); + +test('quux', function (t) { + t.plan(2); + var dir = path.join(__dirname, 'resolver/quux'); + + resolve('./foo', { basedir: dir, 'package': { main: 'quux' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo/index.js')); + t.equal(pkg.main, 'quux'); + }); +}); + +test('normalize', function (t) { + t.plan(2); + var dir = path.join(__dirname, 'resolver/biz/node_modules/grux'); + + resolve('../grux', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'index.js')); + t.equal(pkg, undefined); + }); +}); + +test('cup', function (t) { + t.plan(5); + var dir = path.join(__dirname, 'resolver'); + + resolve('./cup', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'cup.coffee')); + }); + + resolve('./cup.coffee', { basedir: dir }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'cup.coffee')); + }); + + resolve('./cup', { basedir: dir, extensions: ['.js'] }, function (err, res) { + t.equal(err.message, "Cannot find module './cup' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + // Test that filename is reported as the "from" value when passed. + resolve('./cup', { basedir: dir, extensions: ['.js'], filename: path.join(dir, 'cupboard.js') }, function (err, res) { + t.equal(err.message, "Cannot find module './cup' from '" + path.join(dir, 'cupboard.js') + "'"); + }); +}); + +test('mug', function (t) { + t.plan(3); + var dir = path.join(__dirname, 'resolver'); + + resolve('./mug', { basedir: dir }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'mug.js')); + }); + + resolve('./mug', { basedir: dir, extensions: ['.coffee', '.js'] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, '/mug.coffee')); + }); + + resolve('./mug', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) { + t.equal(res, path.join(dir, '/mug.js')); + }); +}); + +test('other path', function (t) { + t.plan(6); + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'bar'); + var otherDir = path.join(resolverDir, 'other_path'); + + resolve('root', { basedir: dir, paths: [otherDir] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(resolverDir, 'other_path/root.js')); + }); + + resolve('lib/other-lib', { basedir: dir, paths: [otherDir] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(resolverDir, 'other_path/lib/other-lib.js')); + }); + + resolve('root', { basedir: dir }, function (err, res) { + t.equal(err.message, "Cannot find module 'root' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + resolve('zzz', { basedir: dir, paths: [otherDir] }, function (err, res) { + t.equal(err.message, "Cannot find module 'zzz' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('path iterator', function (t) { + t.plan(2); + + var resolverDir = path.join(__dirname, 'resolver'); + + var exactIterator = function (x, start, getPackageCandidates, opts) { + return [path.join(resolverDir, x)]; + }; + + resolve('baz', { packageIterator: exactIterator }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(resolverDir, 'baz/quux.js')); + t.equal(pkg && pkg.name, 'baz'); + }); +}); + +test('incorrect main', function (t) { + t.plan(1); + + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'incorrect_main'); + + resolve('./incorrect_main', { basedir: resolverDir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'index.js')); + }); +}); + +test('without basedir', function (t) { + t.plan(1); + + var dir = path.join(__dirname, 'resolver/without_basedir'); + var tester = require(path.join(dir, 'main.js')); + + tester(t, function (err, res, pkg) { + if (err) { + t.fail(err); + } else { + t.equal(res, path.join(dir, 'node_modules/mymodule.js')); + } + }); +}); + +test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) { + t.plan(2); + + var dir = path.join(__dirname, 'resolver'); + + resolve('./foo', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'same_names/foo.js')); + }); + + resolve('./foo/', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'same_names/foo/index.js')); + }); +}); + +test('#211 - incorrectly resolves module-paths like "." when from inside a folder with a sibling file of the same name', function (t) { + t.plan(2); + + var dir = path.join(__dirname, 'resolver'); + + resolve('./', { basedir: path.join(dir, 'same_names/foo') }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'same_names/foo/index.js')); + }); + + resolve('.', { basedir: path.join(dir, 'same_names/foo') }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'same_names/foo/index.js')); + }); +}); + +test('async: #121 - treating an existing file as a dir when no basedir', function (t) { + var testFile = path.basename(__filename); + + t.test('sanity check', function (st) { + st.plan(1); + resolve('./' + testFile, function (err, res, pkg) { + if (err) t.fail(err); + st.equal(res, __filename, 'sanity check'); + }); + }); + + t.test('with a fake directory', function (st) { + st.plan(4); + + resolve('./' + testFile + '/blah', function (err, res, pkg) { + st.ok(err, 'there is an error'); + st.notOk(res, 'no result'); + + st.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve'); + st.equal( + err && err.message, + 'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'', + 'can not find nonexistent module' + ); + st.end(); + }); + }); + + t.end(); +}); + +test('async dot main', function (t) { + var start = new Date(); + t.plan(3); + resolve('./resolver/dot_main', function (err, ret) { + t.notOk(err); + t.equal(ret, path.join(__dirname, 'resolver/dot_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); + }); +}); + +test('async dot slash main', function (t) { + var start = new Date(); + t.plan(3); + resolve('./resolver/dot_slash_main', function (err, ret) { + t.notOk(err); + t.equal(ret, path.join(__dirname, 'resolver/dot_slash_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); + }); +}); + +test('not a directory', function (t) { + t.plan(6); + var path = './foo'; + resolve(path, { basedir: __filename }, function (err, res, pkg) { + t.ok(err, 'a non-directory errors'); + t.equal(arguments.length, 1); + t.equal(res, undefined); + t.equal(pkg, undefined); + + t.equal(err && err.message, 'Cannot find module \'' + path + '\' from \'' + __filename + '\''); + t.equal(err && err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('non-string "main" field in package.json', function (t) { + t.plan(5); + + var dir = path.join(__dirname, 'resolver'); + resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + t.equal(res, undefined, 'res is undefined'); + t.equal(pkg, undefined, 'pkg is undefined'); + }); +}); + +test('non-string "main" field in package.json', function (t) { + t.plan(5); + + var dir = path.join(__dirname, 'resolver'); + resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + t.equal(res, undefined, 'res is undefined'); + t.equal(pkg, undefined, 'pkg is undefined'); + }); +}); + +test('browser field in package.json', function (t) { + t.plan(3); + + var dir = path.join(__dirname, 'resolver'); + resolve( + './browser_field', + { + basedir: dir, + packageFilter: function packageFilter(pkg) { + if (pkg.browser) { + pkg.main = pkg.browser; // eslint-disable-line no-param-reassign + delete pkg.browser; // eslint-disable-line no-param-reassign + } + return pkg; + } + }, + function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'browser_field', 'b.js')); + t.equal(pkg && pkg.main, 'b'); + t.equal(pkg && pkg.browser, undefined); + } + ); +}); diff --git a/node_modules/eslint-plugin-jsx-a11y/.watchmanconfig b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/doom.js old mode 100755 new mode 100644 similarity index 100% rename from node_modules/eslint-plugin-jsx-a11y/.watchmanconfig rename to node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/doom.js diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/package.json new file mode 100644 index 00000000..2f77720b --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/package.json @@ -0,0 +1,4 @@ +{ + "name": "baz", + "main": "quux.js" +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/quux.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/quux.js new file mode 100644 index 00000000..bd816eab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/baz/quux.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/a.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/a.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/b.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/b.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/package.json new file mode 100644 index 00000000..bf406f08 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/browser_field/package.json @@ -0,0 +1,5 @@ +{ + "name": "browser_field", + "main": "a", + "browser": "b" +} diff --git a/node_modules/graphql/jsutils/ObjMap.mjs b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/cup.coffee similarity index 100% rename from node_modules/graphql/jsutils/ObjMap.mjs rename to node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/cup.coffee diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_main/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_main/index.js new file mode 100644 index 00000000..bd816eab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_main/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_main/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_main/package.json new file mode 100644 index 00000000..d7f4fc80 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_main/package.json @@ -0,0 +1,3 @@ +{ + "main": "." +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_slash_main/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_slash_main/index.js new file mode 100644 index 00000000..bd816eab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_slash_main/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_slash_main/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_slash_main/package.json new file mode 100644 index 00000000..f51287b9 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/dot_slash_main/package.json @@ -0,0 +1,3 @@ +{ + "main": "./" +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/foo.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/foo.js new file mode 100644 index 00000000..bd816eab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/foo.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/incorrect_main/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/incorrect_main/index.js new file mode 100644 index 00000000..bc1fb0a6 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/incorrect_main/index.js @@ -0,0 +1,2 @@ +// this is the actual main file 'index.js', not 'wrong.js' like the package.json would indicate +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/incorrect_main/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/incorrect_main/package.json new file mode 100644 index 00000000..b7188041 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/incorrect_main/package.json @@ -0,0 +1,3 @@ +{ + "main": "wrong.js" +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/invalid_main/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/invalid_main/package.json new file mode 100644 index 00000000..0cf82799 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/invalid_main/package.json @@ -0,0 +1,7 @@ +{ + "name": "invalid main", + "main": [ + "why is this a thing", + "srsly omg wtf" + ] +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/mug.coffee b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/mug.coffee new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/mug.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/mug.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/lerna.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/lerna.json new file mode 100644 index 00000000..d6707ca0 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/lerna.json @@ -0,0 +1,6 @@ +{ + "packages": [ + "packages/*" + ], + "version": "0.0.0" +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/package.json new file mode 100644 index 00000000..8508f9d2 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/package.json @@ -0,0 +1,20 @@ +{ + "name": "monorepo-symlink-test", + "private": true, + "version": "0.0.0", + "description": "", + "main": "index.js", + "scripts": { + "postinstall": "lerna bootstrap", + "test": "node packages/package-a" + }, + "author": "", + "license": "MIT", + "dependencies": { + "jquery": "^3.3.1", + "resolve": "../../../" + }, + "devDependencies": { + "lerna": "^3.4.3" + } +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js new file mode 100644 index 00000000..8875a32d --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js @@ -0,0 +1,35 @@ +'use strict'; + +var assert = require('assert'); +var path = require('path'); +var resolve = require('resolve'); + +var basedir = __dirname + '/node_modules/@my-scope/package-b'; + +var expected = path.join(__dirname, '../../node_modules/jquery/dist/jquery.js'); + +/* + * preserveSymlinks === false + * will search NPM package from + * - packages/package-b/node_modules + * - packages/node_modules + * - node_modules + */ +assert.equal(resolve.sync('jquery', { basedir: basedir, preserveSymlinks: false }), expected); +assert.equal(resolve.sync('../../node_modules/jquery', { basedir: basedir, preserveSymlinks: false }), expected); + +/* + * preserveSymlinks === true + * will search NPM package from + * - packages/package-a/node_modules/@my-scope/packages/package-b/node_modules + * - packages/package-a/node_modules/@my-scope/packages/node_modules + * - packages/package-a/node_modules/@my-scope/node_modules + * - packages/package-a/node_modules/node_modules + * - packages/package-a/node_modules + * - packages/node_modules + * - node_modules + */ +assert.equal(resolve.sync('jquery', { basedir: basedir, preserveSymlinks: true }), expected); +assert.equal(resolve.sync('../../../../../node_modules/jquery', { basedir: basedir, preserveSymlinks: true }), expected); + +console.log(' * all monorepo paths successfully resolved through symlinks'); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json new file mode 100644 index 00000000..204de51e --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json @@ -0,0 +1,14 @@ +{ + "name": "@my-scope/package-a", + "version": "0.0.0", + "private": true, + "description": "", + "license": "MIT", + "main": "index.js", + "scripts": { + "test": "echo \"Error: run tests from root\" && exit 1" + }, + "dependencies": { + "@my-scope/package-b": "^0.0.0" + } +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json new file mode 100644 index 00000000..f57c3b5f --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json @@ -0,0 +1,14 @@ +{ + "name": "@my-scope/package-b", + "private": true, + "version": "0.0.0", + "description": "", + "license": "MIT", + "main": "index.js", + "scripts": { + "test": "echo \"Error: run tests from root\" && exit 1" + }, + "dependencies": { + "@my-scope/package-a": "^0.0.0" + } +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js new file mode 100644 index 00000000..9b4846a8 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js @@ -0,0 +1,26 @@ +var a = require.resolve('buffer/').replace(process.cwd(), '$CWD'); +var b; +var c; + +var test = function test() { + console.log(a, ': require.resolve, preserveSymlinks ' + (process.execArgv.indexOf('preserve-symlinks') > -1 ? 'true' : 'false')); + console.log(b, ': preserveSymlinks true'); + console.log(c, ': preserveSymlinks false'); + + if (a !== b && a !== c) { + throw 'async: no match'; + } + console.log('async: success! a matched either b or c\n'); +}; + +require('resolve')('buffer/', { preserveSymlinks: true }, function (err, result) { + if (err) { throw err; } + b = result.replace(process.cwd(), '$CWD'); + if (b && c) { test(); } +}); +require('resolve')('buffer/', { preserveSymlinks: false }, function (err, result) { + if (err) { throw err; } + c = result.replace(process.cwd(), '$CWD'); + if (b && c) { test(); } +}); + diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json new file mode 100644 index 00000000..acfe9e95 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json @@ -0,0 +1,15 @@ +{ + "name": "mylib", + "version": "0.0.0", + "description": "", + "private": true, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "buffer": "*" + } +} diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js new file mode 100644 index 00000000..3283efc2 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js @@ -0,0 +1,12 @@ +var a = require.resolve('buffer/').replace(process.cwd(), '$CWD'); +var b = require('resolve').sync('buffer/', { preserveSymlinks: true }).replace(process.cwd(), '$CWD'); +var c = require('resolve').sync('buffer/', { preserveSymlinks: false }).replace(process.cwd(), '$CWD'); + +console.log(a, ': require.resolve, preserveSymlinks ' + (process.execArgv.indexOf('preserve-symlinks') > -1 ? 'true' : 'false')); +console.log(b, ': preserveSymlinks true'); +console.log(c, ': preserveSymlinks false'); + +if (a !== b && a !== c) { + throw 'sync: no match'; +} +console.log('sync: success! a matched either b or c\n'); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/other_path/lib/other-lib.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/other_path/lib/other-lib.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/other_path/root.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/other_path/root.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/quux/foo/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/quux/foo/index.js new file mode 100644 index 00000000..bd816eab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/quux/foo/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/same_names/foo.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/same_names/foo.js new file mode 100644 index 00000000..888cae37 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/same_names/foo.js @@ -0,0 +1 @@ +module.exports = 42; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/same_names/foo/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/same_names/foo/index.js new file mode 100644 index 00000000..bd816eab --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/same_names/foo/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/package/bar.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/package/bar.js new file mode 100644 index 00000000..cb1c2c01 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/package/bar.js @@ -0,0 +1 @@ +module.exports = 'bar'; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/package/package.json b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/package/package.json new file mode 100644 index 00000000..8e1b5859 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/symlinked/package/package.json @@ -0,0 +1,3 @@ +{ + "main": "bar.js" +} \ No newline at end of file diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/without_basedir/main.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/without_basedir/main.js new file mode 100644 index 00000000..5b31975b --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver/without_basedir/main.js @@ -0,0 +1,5 @@ +var resolve = require('../../../'); + +module.exports = function (t, cb) { + resolve('mymodule', null, cb); +}; diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver_sync.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver_sync.js new file mode 100644 index 00000000..3082c96e --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/resolver_sync.js @@ -0,0 +1,358 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('foo', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./foo', { basedir: dir }), + path.join(dir, 'foo.js') + ); + + t.equal( + resolve.sync('./foo.js', { basedir: dir }), + path.join(dir, 'foo.js') + ); + + t.equal( + resolve.sync('./foo.js', { basedir: dir, filename: path.join(dir, 'bar.js') }), + path.join(dir, 'foo.js') + ); + + t.throws(function () { + resolve.sync('foo', { basedir: dir }); + }); + + // Test that filename is reported as the "from" value when passed. + t.throws( + function () { + resolve.sync('foo', { basedir: dir, filename: path.join(dir, 'bar.js') }); + }, + { + name: 'Error', + message: "Cannot find module 'foo' from '" + path.join(dir, 'bar.js') + "'" + } + ); + + t.end(); +}); + +test('bar', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('foo', { basedir: path.join(dir, 'bar') }), + path.join(dir, 'bar/node_modules/foo/index.js') + ); + t.end(); +}); + +test('baz', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./baz', { basedir: dir }), + path.join(dir, 'baz/quux.js') + ); + t.end(); +}); + +test('biz', function (t) { + var dir = path.join(__dirname, 'resolver/biz/node_modules'); + t.equal( + resolve.sync('./grux', { basedir: dir }), + path.join(dir, 'grux/index.js') + ); + + t.equal( + resolve.sync('tiv', { basedir: path.join(dir, 'grux') }), + path.join(dir, 'tiv/index.js') + ); + + t.equal( + resolve.sync('grux', { basedir: path.join(dir, 'tiv') }), + path.join(dir, 'grux/index.js') + ); + t.end(); +}); + +test('normalize', function (t) { + var dir = path.join(__dirname, 'resolver/biz/node_modules/grux'); + t.equal( + resolve.sync('../grux', { basedir: dir }), + path.join(dir, 'index.js') + ); + t.end(); +}); + +test('cup', function (t) { + var dir = path.join(__dirname, 'resolver'); + t.equal( + resolve.sync('./cup', { + basedir: dir, + extensions: ['.js', '.coffee'] + }), + path.join(dir, 'cup.coffee') + ); + + t.equal( + resolve.sync('./cup.coffee', { basedir: dir }), + path.join(dir, 'cup.coffee') + ); + + t.throws(function () { + resolve.sync('./cup', { + basedir: dir, + extensions: ['.js'] + }); + }); + + t.end(); +}); + +test('mug', function (t) { + var dir = path.join(__dirname, 'resolver'); + t.equal( + resolve.sync('./mug', { basedir: dir }), + path.join(dir, 'mug.js') + ); + + t.equal( + resolve.sync('./mug', { + basedir: dir, + extensions: ['.coffee', '.js'] + }), + path.join(dir, 'mug.coffee') + ); + + t.equal( + resolve.sync('./mug', { + basedir: dir, + extensions: ['.js', '.coffee'] + }), + path.join(dir, 'mug.js') + ); + + t.end(); +}); + +test('other path', function (t) { + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'bar'); + var otherDir = path.join(resolverDir, 'other_path'); + + t.equal( + resolve.sync('root', { + basedir: dir, + paths: [otherDir] + }), + path.join(resolverDir, 'other_path/root.js') + ); + + t.equal( + resolve.sync('lib/other-lib', { + basedir: dir, + paths: [otherDir] + }), + path.join(resolverDir, 'other_path/lib/other-lib.js') + ); + + t.throws(function () { + resolve.sync('root', { basedir: dir }); + }); + + t.throws(function () { + resolve.sync('zzz', { + basedir: dir, + paths: [otherDir] + }); + }); + + t.end(); +}); + +test('path iterator', function (t) { + var resolverDir = path.join(__dirname, 'resolver'); + + var exactIterator = function (x, start, getPackageCandidates, opts) { + return [path.join(resolverDir, x)]; + }; + + t.equal( + resolve.sync('baz', { packageIterator: exactIterator }), + path.join(resolverDir, 'baz/quux.js') + ); + + t.end(); +}); + +test('incorrect main', function (t) { + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'incorrect_main'); + + t.equal( + resolve.sync('./incorrect_main', { basedir: resolverDir }), + path.join(dir, 'index.js') + ); + + t.end(); +}); + +var stubStatSync = function stubStatSync(fn) { + var fs = require('fs'); + var statSync = fs.statSync; + try { + fs.statSync = function () { + throw new EvalError('Unknown Error'); + }; + return fn(); + } finally { + fs.statSync = statSync; + } +}; + +test('#79 - re-throw non ENOENT errors from stat', function (t) { + var dir = path.join(__dirname, 'resolver'); + + stubStatSync(function () { + t.throws(function () { + resolve.sync('foo', { basedir: dir }); + }, /Unknown Error/); + }); + + t.end(); +}); + +test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./foo', { basedir: path.join(dir, 'same_names') }), + path.join(dir, 'same_names/foo.js') + ); + t.equal( + resolve.sync('./foo/', { basedir: path.join(dir, 'same_names') }), + path.join(dir, 'same_names/foo/index.js') + ); + t.end(); +}); + +test('#211 - incorrectly resolves module-paths like "." when from inside a folder with a sibling file of the same name', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./', { basedir: path.join(dir, 'same_names/foo') }), + path.join(dir, 'same_names/foo/index.js') + ); + t.equal( + resolve.sync('.', { basedir: path.join(dir, 'same_names/foo') }), + path.join(dir, 'same_names/foo/index.js') + ); + t.end(); +}); + +test('sync: #121 - treating an existing file as a dir when no basedir', function (t) { + var testFile = path.basename(__filename); + + t.test('sanity check', function (st) { + st.equal( + resolve.sync('./' + testFile), + __filename, + 'sanity check' + ); + st.end(); + }); + + t.test('with a fake directory', function (st) { + function run() { return resolve.sync('./' + testFile + '/blah'); } + + st.throws(run, 'throws an error'); + + try { + run(); + } catch (e) { + st.equal(e.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve'); + st.equal( + e.message, + 'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'', + 'can not find nonexistent module' + ); + } + + st.end(); + }); + + t.end(); +}); + +test('sync dot main', function (t) { + var start = new Date(); + t.equal(resolve.sync('./resolver/dot_main'), path.join(__dirname, 'resolver/dot_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); +}); + +test('sync dot slash main', function (t) { + var start = new Date(); + t.equal(resolve.sync('./resolver/dot_slash_main'), path.join(__dirname, 'resolver/dot_slash_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); +}); + +test('not a directory', function (t) { + var path = './foo'; + try { + resolve.sync(path, { basedir: __filename }); + t.fail(); + } catch (err) { + t.ok(err, 'a non-directory errors'); + t.equal(err && err.message, 'Cannot find module \'' + path + "' from '" + __filename + "'"); + t.equal(err && err.code, 'MODULE_NOT_FOUND'); + } + t.end(); +}); + +test('non-string "main" field in package.json', function (t) { + var dir = path.join(__dirname, 'resolver'); + try { + var result = resolve.sync('./invalid_main', { basedir: dir }); + t.equal(result, undefined, 'result should not exist'); + t.fail('should not get here'); + } catch (err) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + } + t.end(); +}); + +test('non-string "main" field in package.json', function (t) { + var dir = path.join(__dirname, 'resolver'); + try { + var result = resolve.sync('./invalid_main', { basedir: dir }); + t.equal(result, undefined, 'result should not exist'); + t.fail('should not get here'); + } catch (err) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + } + t.end(); +}); + +test('browser field in package.json', function (t) { + var dir = path.join(__dirname, 'resolver'); + var res = resolve.sync('./browser_field', { + basedir: dir, + packageFilter: function packageFilter(pkg) { + if (pkg.browser) { + pkg.main = pkg.browser; // eslint-disable-line no-param-reassign + delete pkg.browser; // eslint-disable-line no-param-reassign + } + return pkg; + } + }); + t.equal(res, path.join(dir, 'browser_field', 'b.js')); + t.end(); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/shadowed_core.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/shadowed_core.js new file mode 100644 index 00000000..98c52a76 --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/shadowed_core.js @@ -0,0 +1,38 @@ +var test = require('tape'); +var resolve = require('../'); +var path = require('path'); + +test('shadowed core modules still return core module', function (t) { + t.plan(2); + + resolve('util', { basedir: path.join(__dirname, 'shadowed_core') }, function (err, res) { + t.ifError(err); + t.equal(res, 'util'); + }); +}); + +test('shadowed core modules still return core module [sync]', function (t) { + t.plan(1); + + var res = resolve.sync('util', { basedir: path.join(__dirname, 'shadowed_core') }); + + t.equal(res, 'util'); +}); + +test('shadowed core modules return shadow when appending `/`', function (t) { + t.plan(2); + + resolve('util/', { basedir: path.join(__dirname, 'shadowed_core') }, function (err, res) { + t.ifError(err); + t.equal(res, path.join(__dirname, 'shadowed_core/node_modules/util/index.js')); + }); +}); + +test('shadowed core modules return shadow when appending `/` [sync]', function (t) { + t.plan(1); + + var res = resolve.sync('util/', { basedir: path.join(__dirname, 'shadowed_core') }); + + t.equal(res, path.join(__dirname, 'shadowed_core/node_modules/util/index.js')); +}); + diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/shadowed_core/node_modules/util/index.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/shadowed_core/node_modules/util/index.js new file mode 100644 index 00000000..e69de29b diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/subdirs.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/subdirs.js new file mode 100644 index 00000000..b7b8450a --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/subdirs.js @@ -0,0 +1,13 @@ +var test = require('tape'); +var resolve = require('../'); +var path = require('path'); + +test('subdirs', function (t) { + t.plan(2); + + var dir = path.join(__dirname, '/subdirs'); + resolve('a/b/c/x.json', { basedir: dir }, function (err, res) { + t.ifError(err); + t.equal(res, path.join(dir, 'node_modules/a/b/c/x.json')); + }); +}); diff --git a/node_modules/eslint-plugin-import/node_modules/resolve/test/symlinks.js b/node_modules/eslint-plugin-import/node_modules/resolve/test/symlinks.js new file mode 100644 index 00000000..152d14ef --- /dev/null +++ b/node_modules/eslint-plugin-import/node_modules/resolve/test/symlinks.js @@ -0,0 +1,173 @@ +var path = require('path'); +var fs = require('fs'); +var test = require('tape'); +var map = require('array.prototype.map'); +var resolve = require('../'); + +var symlinkDir = path.join(__dirname, 'resolver', 'symlinked', 'symlink'); +var packageDir = path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'package'); +var modADir = path.join(__dirname, 'symlinks', 'source', 'node_modules', 'mod-a'); +var symlinkModADir = path.join(__dirname, 'symlinks', 'dest', 'node_modules', 'mod-a'); +try { + fs.unlinkSync(symlinkDir); +} catch (err) {} +try { + fs.unlinkSync(packageDir); +} catch (err) {} +try { + fs.unlinkSync(modADir); +} catch (err) {} +try { + fs.unlinkSync(symlinkModADir); +} catch (err) {} + +try { + fs.symlinkSync('./_/symlink_target', symlinkDir, 'dir'); +} catch (err) { + // if fails then it is probably on Windows and lets try to create a junction + fs.symlinkSync(path.join(__dirname, 'resolver', 'symlinked', '_', 'symlink_target') + '\\', symlinkDir, 'junction'); +} +try { + fs.symlinkSync('../../package', packageDir, 'dir'); +} catch (err) { + // if fails then it is probably on Windows and lets try to create a junction + fs.symlinkSync(path.join(__dirname, '..', '..', 'package') + '\\', packageDir, 'junction'); +} +try { + fs.symlinkSync('../../source/node_modules/mod-a', symlinkModADir, 'dir'); +} catch (err) { + // if fails then it is probably on Windows and lets try to create a junction + fs.symlinkSync(path.join(__dirname, '..', '..', 'source', 'node_modules', 'mod-a') + '\\', symlinkModADir, 'junction'); +} + +test('symlink', function (t) { + t.plan(2); + + resolve('foo', { basedir: symlinkDir, preserveSymlinks: false }, function (err, res, pkg) { + t.error(err); + t.equal(res, path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js')); + }); +}); + +test('sync symlink when preserveSymlinks = true', function (t) { + t.plan(4); + + resolve('foo', { basedir: symlinkDir }, function (err, res, pkg) { + t.ok(err, 'there is an error'); + t.notOk(res, 'no result'); + + t.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve'); + t.equal( + err && err.message, + 'Cannot find module \'foo\' from \'' + symlinkDir + '\'', + 'can not find nonexistent module' + ); + }); +}); + +test('sync symlink', function (t) { + var start = new Date(); + t.doesNotThrow(function () { + t.equal(resolve.sync('foo', { basedir: symlinkDir, preserveSymlinks: false }), path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js')); + }); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); +}); + +test('sync symlink when preserveSymlinks = true', function (t) { + t.throws(function () { + resolve.sync('foo', { basedir: symlinkDir }); + }, /Cannot find module 'foo'/); + t.end(); +}); + +test('sync symlink from node_modules to other dir when preserveSymlinks = false', function (t) { + var basedir = path.join(__dirname, 'resolver', 'symlinked', '_'); + var fn = resolve.sync('package', { basedir: basedir, preserveSymlinks: false }); + + t.equal(fn, path.resolve(__dirname, 'resolver/symlinked/package/bar.js')); + t.end(); +}); + +test('async symlink from node_modules to other dir when preserveSymlinks = false', function (t) { + t.plan(2); + var basedir = path.join(__dirname, 'resolver', 'symlinked', '_'); + resolve('package', { basedir: basedir, preserveSymlinks: false }, function (err, result) { + t.notOk(err, 'no error'); + t.equal(result, path.resolve(__dirname, 'resolver/symlinked/package/bar.js')); + }); +}); + +test('packageFilter', function (t) { + function relative(x) { + return path.relative(__dirname, x); + } + + function testPackageFilter(preserveSymlinks) { + return function (st) { + st.plan('is 1.x' ? 3 : 5); // eslint-disable-line no-constant-condition + + var destMain = 'symlinks/dest/node_modules/mod-a/index.js'; + var destPkg = 'symlinks/dest/node_modules/mod-a/package.json'; + var sourceMain = 'symlinks/source/node_modules/mod-a/index.js'; + var sourcePkg = 'symlinks/source/node_modules/mod-a/package.json'; + var destDir = path.join(__dirname, 'symlinks', 'dest'); + + /* eslint multiline-comment-style: 0 */ + /* v2.x will restore these tests + var packageFilterPath = []; + var actualPath = resolve.sync('mod-a', { + basedir: destDir, + preserveSymlinks: preserveSymlinks, + packageFilter: function (pkg, pkgfile, dir) { + packageFilterPath.push(pkgfile); + } + }); + st.equal( + relative(actualPath), + path.normalize(preserveSymlinks ? destMain : sourceMain), + 'sync: actual path is correct' + ); + st.deepEqual( + map(packageFilterPath, relative), + map(preserveSymlinks ? [destPkg, destPkg] : [sourcePkg, sourcePkg], path.normalize), + 'sync: packageFilter pkgfile arg is correct' + ); + */ + + var asyncPackageFilterPath = []; + resolve( + 'mod-a', + { + basedir: destDir, + preserveSymlinks: preserveSymlinks, + packageFilter: function (pkg, pkgfile) { + asyncPackageFilterPath.push(pkgfile); + } + }, + function (err, actualPath) { + st.error(err, 'no error'); + st.equal( + relative(actualPath), + path.normalize(preserveSymlinks ? destMain : sourceMain), + 'async: actual path is correct' + ); + st.deepEqual( + map(asyncPackageFilterPath, relative), + map( + preserveSymlinks ? [destPkg, destPkg, destPkg] : [sourcePkg, sourcePkg, sourcePkg], + path.normalize + ), + 'async: packageFilter pkgfile arg is correct' + ); + } + ); + }; + } + + t.test('preserveSymlinks: false', testPackageFilter(false)); + + t.test('preserveSymlinks: true', testPackageFilter(true)); + + t.end(); +}); diff --git a/node_modules/eslint-plugin-import/package.json b/node_modules/eslint-plugin-import/package.json index 841128fb..18fd70af 100644 --- a/node_modules/eslint-plugin-import/package.json +++ b/node_modules/eslint-plugin-import/package.json @@ -1,6 +1,6 @@ { "name": "eslint-plugin-import", - "version": "2.20.1", + "version": "2.22.1", "description": "Import with sanity.", "engines": { "node": ">=4" @@ -21,17 +21,17 @@ "prebuild": "rimraf lib", "build": "babel --quiet --out-dir lib src", "postbuild": "npm run copy-metafiles", - "copy-metafiles": "for DIR in memo-parser resolvers/node resolvers/webpack utils; do cp LICENSE .npmrc \"${DIR}/\"; done", - "watch": "npm run mocha -- --watch tests/src", + "copy-metafiles": "node --require babel-register ./scripts/copyMetafiles", + "watch": "npm run tests-only -- -- --watch", "pretest": "linklocal", "posttest": "eslint .", - "mocha": "cross-env BABEL_ENV=test NODE_PATH=./src nyc -s mocha -R dot --recursive -t 5s", + "mocha": "cross-env BABEL_ENV=test nyc -s mocha", "tests-only": "npm run mocha tests/src", "test": "npm run tests-only", - "test-compiled": "npm run prepublish && NODE_PATH=./lib mocha --compilers js:babel-register --recursive tests/src", - "test-all": "npm test && for resolver in ./resolvers/*; do cd $resolver && npm test && cd ../..; done", - "prepublish": "npm run build", - "coveralls": "nyc report --reporter lcovonly && cat ./coverage/lcov.info | coveralls" + "test-compiled": "npm run prepublish && BABEL_ENV=testCompiled mocha --compilers js:babel-register tests/src", + "test-all": "node --require babel-register ./scripts/testAll", + "prepublish": "not-in-publish || npm run build", + "coveralls": "nyc report --reporter lcovonly && coveralls < ./coverage/lcov.info" }, "repository": { "type": "git", @@ -55,51 +55,61 @@ "devDependencies": { "@eslint/import-test-order-redirect-scoped": "file:./tests/files/order-redirect-scoped", "@test-scope/some-module": "file:./tests/files/symlinked-module", - "@typescript-eslint/parser": "1.10.3-alpha.13", + "@typescript-eslint/parser": "^2.23.0 || ^3.3.0", + "array.prototype.flatmap": "^1.2.3", "babel-cli": "^6.26.0", "babel-core": "^6.26.3", "babel-eslint": "^8.2.6", "babel-plugin-istanbul": "^4.1.6", + "babel-plugin-module-resolver": "^2.7.1", "babel-preset-es2015-argon": "latest", + "babel-preset-flow": "^6.23.0", "babel-register": "^6.26.0", "babylon": "^6.18.0", "chai": "^4.2.0", - "coveralls": "^3.0.6", + "coveralls": "^3.1.0", "cross-env": "^4.0.0", - "eslint": "2.x - 6.x", + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0", "eslint-import-resolver-node": "file:./resolvers/node", - "eslint-import-resolver-typescript": "^1.0.2", + "eslint-import-resolver-typescript": "^1.1.1", "eslint-import-resolver-webpack": "file:./resolvers/webpack", "eslint-import-test-order-redirect": "file:./tests/files/order-redirect", "eslint-module-utils": "file:./utils", - "eslint-plugin-eslint-plugin": "^2.2.1", + "eslint-plugin-eslint-plugin": "^2.3.0", "eslint-plugin-import": "2.x", + "eslint-plugin-json": "^2.1.2", + "fs-copy-file-sync": "^1.1.1", + "glob": "^7.1.6", + "in-publish": "^2.0.1", "linklocal": "^2.8.2", + "lodash.isarray": "^4.0.0", "mocha": "^3.5.3", + "npm-which": "^3.0.1", "nyc": "^11.9.0", "redux": "^3.7.2", "rimraf": "^2.7.1", "semver": "^6.3.0", "sinon": "^2.4.1", - "typescript": "~3.2.2", + "typescript": "~3.9.5", "typescript-eslint-parser": "^22.0.0" }, "peerDependencies": { - "eslint": "2.x - 6.x" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" }, "dependencies": { - "array-includes": "^3.0.3", - "array.prototype.flat": "^1.2.1", + "array-includes": "^3.1.1", + "array.prototype.flat": "^1.2.3", "contains-path": "^0.1.0", "debug": "^2.6.9", "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.2", - "eslint-module-utils": "^2.4.1", + "eslint-import-resolver-node": "^0.3.4", + "eslint-module-utils": "^2.6.0", "has": "^1.0.3", "minimatch": "^3.0.4", - "object.values": "^1.1.0", + "object.values": "^1.1.1", "read-pkg-up": "^2.0.0", - "resolve": "^1.12.0" + "resolve": "^1.17.0", + "tsconfig-paths": "^3.9.0" }, "nyc": { "require": [ diff --git a/node_modules/eslint-plugin-jest/CHANGELOG.md b/node_modules/eslint-plugin-jest/CHANGELOG.md index 92bfbad8..599e5a6e 100644 --- a/node_modules/eslint-plugin-jest/CHANGELOG.md +++ b/node_modules/eslint-plugin-jest/CHANGELOG.md @@ -1,3 +1,10 @@ +# [24.1.0](https://github.com/jest-community/eslint-plugin-jest/compare/v24.0.2...v24.1.0) (2020-10-05) + + +### Features + +* **prefer-expect-assertions:** add `onlyFunctionsWithAsyncKeyword` option ([#677](https://github.com/jest-community/eslint-plugin-jest/issues/677)) ([d0cea37](https://github.com/jest-community/eslint-plugin-jest/commit/d0cea37ae0a8ab07b8082cedbaaf161bcc94c405)) + ## [24.0.2](https://github.com/jest-community/eslint-plugin-jest/compare/v24.0.1...v24.0.2) (2020-09-20) diff --git a/node_modules/eslint-plugin-jest/docs/rules/prefer-expect-assertions.md b/node_modules/eslint-plugin-jest/docs/rules/prefer-expect-assertions.md index d9972035..b80b63dc 100644 --- a/node_modules/eslint-plugin-jest/docs/rules/prefer-expect-assertions.md +++ b/node_modules/eslint-plugin-jest/docs/rules/prefer-expect-assertions.md @@ -55,3 +55,45 @@ test('my test', () => { expect(someThing()).toEqual('foo'); }); ``` + +## Options + +#### `onlyFunctionsWithAsyncKeyword` + +When `true`, this rule will only warn for tests that use the `async` keyword. + +```json +{ + "rules": { + "jest/prefer-expect-assertions": [ + "warn", + { "onlyFunctionsWithAsyncKeyword": true } + ] + } +} +``` + +When `onlyFunctionsWithAsyncKeyword` option is set to `true`, the following +pattern would be a warning: + +```js +test('my test', async () => { + const result = await someAsyncFunc(); + expect(result).toBe('foo'); +}); +``` + +While the following patterns would not be considered warnings: + +```js +test('my test', () => { + const result = someFunction(); + expect(result).toBe('foo'); +}); + +test('my test', async () => { + expect.assertions(1); + const result = await someAsyncFunc(); + expect(result).toBe('foo'); +}); +``` diff --git a/node_modules/eslint-plugin-jest/lib/rules/prefer-expect-assertions.js b/node_modules/eslint-plugin-jest/lib/rules/prefer-expect-assertions.js index 44147095..1552fe74 100644 --- a/node_modules/eslint-plugin-jest/lib/rules/prefer-expect-assertions.js +++ b/node_modules/eslint-plugin-jest/lib/rules/prefer-expect-assertions.js @@ -39,13 +39,27 @@ var _default = (0, _utils.createRule)({ suggestRemovingExtraArguments: 'Remove extra arguments' }, type: 'suggestion', - schema: [] + schema: [{ + type: 'object', + properties: { + onlyFunctionsWithAsyncKeyword: { + type: 'boolean' + } + }, + additionalProperties: false + }] }, - defaultOptions: [], + defaultOptions: [{ + onlyFunctionsWithAsyncKeyword: false + }], - create(context) { + create(context, [options]) { return { 'CallExpression[callee.name=/^(it|test)$/][arguments.1.body.body]'(node) { + if (options.onlyFunctionsWithAsyncKeyword && !node.arguments[1].async) { + return; + } + const testFuncBody = node.arguments[1].body.body; if (!isFirstLineExprStmt(testFuncBody)) { diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md deleted file mode 100644 index b32112be..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md +++ /dev/null @@ -1,698 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -# [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [4.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.0...v4.0.1) (2020-08-31) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [4.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.1...v4.0.0) (2020-08-31) - -## [Please see the release notes for v4.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v4.0.0) - -### Features - -* consume new scope analysis package ([#2039](https://github.com/typescript-eslint/typescript-eslint/issues/2039)) ([3be125d](https://github.com/typescript-eslint/typescript-eslint/commit/3be125d9bdbee1984ac6037874edf619213bd3d0)) -* support ESTree optional chaining representation ([#2308](https://github.com/typescript-eslint/typescript-eslint/issues/2308)) ([e9d2ab6](https://github.com/typescript-eslint/typescript-eslint/commit/e9d2ab638b6767700b52797e74b814ea059beaae)) - - - - - -## [3.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.0...v3.10.1) (2020-08-25) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.1...v3.10.0) (2020-08-24) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [3.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.0...v3.9.1) (2020-08-17) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.8.0...v3.9.0) (2020-08-10) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.1...v3.8.0) (2020-08-03) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [3.7.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.7.0...v3.7.1) (2020-07-27) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.7.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.1...v3.7.0) (2020-07-20) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [3.6.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.6.0...v3.6.1) (2020-07-13) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.6.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.5.0...v3.6.0) (2020-07-06) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.5.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.4.0...v3.5.0) (2020-06-29) - - -### Features - -* add package scope-manager ([#1939](https://github.com/typescript-eslint/typescript-eslint/issues/1939)) ([682eb7e](https://github.com/typescript-eslint/typescript-eslint/commit/682eb7e009c3f22a542882dfd3602196a60d2a1e)) -* split types into their own package ([#2229](https://github.com/typescript-eslint/typescript-eslint/issues/2229)) ([5f45918](https://github.com/typescript-eslint/typescript-eslint/commit/5f4591886f3438329fbf2229b03ac66174334a24)) - - - - - -# [3.4.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.3.0...v3.4.0) (2020-06-22) - - -### Bug Fixes - -* **experimental-utils:** correct types for TS versions older than 3.8 ([#2217](https://github.com/typescript-eslint/typescript-eslint/issues/2217)) ([5e4dda2](https://github.com/typescript-eslint/typescript-eslint/commit/5e4dda264a7d6a6a1626848e7599faea1ac34922)) -* **experimental-utils:** getParserServices takes a readonly context ([#2235](https://github.com/typescript-eslint/typescript-eslint/issues/2235)) ([26da8de](https://github.com/typescript-eslint/typescript-eslint/commit/26da8de7fcde9eddec63212d79af781c4bb22991)) - - - - - -# [3.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.2.0...v3.3.0) (2020-06-15) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [3.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.1.0...v3.2.0) (2020-06-08) - - -### Bug Fixes - -* **eslint-plugin:** [prefer-optional-chain] handling first member expression ([#2156](https://github.com/typescript-eslint/typescript-eslint/issues/2156)) ([de18660](https://github.com/typescript-eslint/typescript-eslint/commit/de18660a8cf8f7033798646d8c5b0938d1accb12)) - - - - - -# [3.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.2...v3.1.0) (2020-06-01) - - -### Bug Fixes - -* **experimental-utils:** downlevel type declarations for versions older than 3.8 ([#2133](https://github.com/typescript-eslint/typescript-eslint/issues/2133)) ([7925823](https://github.com/typescript-eslint/typescript-eslint/commit/792582326a8065270b69a0ffcaad5a7b4b103ff3)) - - -### Features - -* **eslint-plugin:** [explicit-module-boundary-types] improve accuracy and coverage ([#2135](https://github.com/typescript-eslint/typescript-eslint/issues/2135)) ([caaa859](https://github.com/typescript-eslint/typescript-eslint/commit/caaa8599284d02ab3341e282cad35a52d0fb86c7)) - - - - - -## [3.0.2](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.1...v3.0.2) (2020-05-27) - - -### Bug Fixes - -* regression for eslint v6 ([#2105](https://github.com/typescript-eslint/typescript-eslint/issues/2105)) ([31fc503](https://github.com/typescript-eslint/typescript-eslint/commit/31fc5039ed919e1515fda673c186d5c83eb5beb3)) - - - - - -## [3.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.0.0...v3.0.1) (2020-05-25) - - -### Bug Fixes - -* **experimental-utils:** export `CLIEngine` & `ESLint` ([#2083](https://github.com/typescript-eslint/typescript-eslint/issues/2083)) ([014341b](https://github.com/typescript-eslint/typescript-eslint/commit/014341bb23261f609fc2a6fe7fece191466a084a)) - - - - - -# [3.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.34.0...v3.0.0) (2020-05-21) - -## [Please see the release notes for v3.0.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v3.0.0) - -### Bug Fixes - -* **experimental-utils:** add back SourceCode.isSpaceBetweenTokens ([ae82ea4](https://github.com/typescript-eslint/typescript-eslint/commit/ae82ea4a85a4ca332ebe6104e96c59dba30411be)) -* **typescript-estree:** remove now defunct `Import` node type ([f199cbd](https://github.com/typescript-eslint/typescript-eslint/commit/f199cbdbbd892b5ba03bfff66f463f3d9c92ee9b)) - - -### Features - -* **experimental-utils:** upgrade eslint types for v7 ([#2023](https://github.com/typescript-eslint/typescript-eslint/issues/2023)) ([06869c9](https://github.com/typescript-eslint/typescript-eslint/commit/06869c9656fa37936126666845aee40aad546ebd)) -* drop support for node v8 ([#1997](https://github.com/typescript-eslint/typescript-eslint/issues/1997)) ([b6c3b7b](https://github.com/typescript-eslint/typescript-eslint/commit/b6c3b7b84b8d199fa75a46432febd4a364a63217)) -* upgrade to ESLint v7 ([#2022](https://github.com/typescript-eslint/typescript-eslint/issues/2022)) ([208de71](https://github.com/typescript-eslint/typescript-eslint/commit/208de71059746bf38e94bd460346ffb2698a3e12)) -* **eslint-plugin:** [ban-types] rework default options ([#848](https://github.com/typescript-eslint/typescript-eslint/issues/848)) ([8e31d5d](https://github.com/typescript-eslint/typescript-eslint/commit/8e31d5dbe9fe5227fdbefcecfd50ce5dd51360c3)) -* **typescript-estree:** always return parserServices ([#716](https://github.com/typescript-eslint/typescript-eslint/issues/716)) ([5b23443](https://github.com/typescript-eslint/typescript-eslint/commit/5b23443c48f3f62424db3e742243f3568080b946)) - - - - - -# [2.34.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.33.0...v2.34.0) (2020-05-18) - - -### Features - -* **experimental-utils:** add `suggestion` property for rule modules ([#2033](https://github.com/typescript-eslint/typescript-eslint/issues/2033)) ([f42a5b0](https://github.com/typescript-eslint/typescript-eslint/commit/f42a5b09ebfa173f418a99c552b0cbe221567194)) - - - - - -# [2.33.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.32.0...v2.33.0) (2020-05-12) - - -### Bug Fixes - -* **experimental-utils:** remove accidental dep on json-schema ([#2010](https://github.com/typescript-eslint/typescript-eslint/issues/2010)) ([1875fba](https://github.com/typescript-eslint/typescript-eslint/commit/1875fbad41f2a3dda8f610f5dcd180c6205b73d3)) - - - - - -# [2.32.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.31.0...v2.32.0) (2020-05-11) - - -### Features - -* bump dependencies and align AST ([#2007](https://github.com/typescript-eslint/typescript-eslint/issues/2007)) ([18668b7](https://github.com/typescript-eslint/typescript-eslint/commit/18668b78fd7d1e5281af7fc26c76e0ca53297f69)) - - - - - -# [2.31.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.30.0...v2.31.0) (2020-05-04) - - -### Features - -* **experimental-utils:** expose our RuleTester extension ([#1948](https://github.com/typescript-eslint/typescript-eslint/issues/1948)) ([2dd1638](https://github.com/typescript-eslint/typescript-eslint/commit/2dd1638aaa2658ba99b2341861146b586f489121)) - - - - - -# [2.30.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.29.0...v2.30.0) (2020-04-27) - - -### Features - -* **experimental-utils:** allow rule options to be a readonly tuple ([#1924](https://github.com/typescript-eslint/typescript-eslint/issues/1924)) ([4ef6788](https://github.com/typescript-eslint/typescript-eslint/commit/4ef67884962b6aac61cc895aaa3ba16aa892ecf4)) - - - - - -# [2.29.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.28.0...v2.29.0) (2020-04-20) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.28.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.27.0...v2.28.0) (2020-04-13) - - -### Features - -* **eslint-plugin:** add rule `prefer-reduce-type-parameter` ([#1707](https://github.com/typescript-eslint/typescript-eslint/issues/1707)) ([c92d240](https://github.com/typescript-eslint/typescript-eslint/commit/c92d240e49113779053eac32038382b282812afc)) - - - - - -# [2.27.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.26.0...v2.27.0) (2020-04-06) - - -### Features - -* **experimental-utils:** add types for suggestions from CLIEngine ([#1844](https://github.com/typescript-eslint/typescript-eslint/issues/1844)) ([7c11bd6](https://github.com/typescript-eslint/typescript-eslint/commit/7c11bd66f2d0e5ea9d3943e6b8c66e6ddff50862)) -* **experimental-utils:** update eslint types to match v6.8 ([#1846](https://github.com/typescript-eslint/typescript-eslint/issues/1846)) ([16ce74d](https://github.com/typescript-eslint/typescript-eslint/commit/16ce74d247781ac890dc0baa30c384f97e581b6b)) - - - - - -# [2.26.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.25.0...v2.26.0) (2020-03-30) - - -### Features - -* **typescript-estree:** add option to ignore certain folders from glob resolution ([#1802](https://github.com/typescript-eslint/typescript-eslint/issues/1802)) ([1e29e69](https://github.com/typescript-eslint/typescript-eslint/commit/1e29e69b289d61107a7de67592beae331ba50222)) - - - - - -# [2.25.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.24.0...v2.25.0) (2020-03-23) - - -### Features - -* **experimental-utils:** expose ast utility functions ([#1670](https://github.com/typescript-eslint/typescript-eslint/issues/1670)) ([3eb5d45](https://github.com/typescript-eslint/typescript-eslint/commit/3eb5d4525e95c8ab990f55588b8d830a02ce5a9c)) - - - - - -# [2.24.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.23.0...v2.24.0) (2020-03-16) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.23.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.22.0...v2.23.0) (2020-03-09) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.22.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.21.0...v2.22.0) (2020-03-02) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.21.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.20.0...v2.21.0) (2020-02-24) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.20.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.19.2...v2.20.0) (2020-02-17) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [2.19.2](https://github.com/typescript-eslint/typescript-eslint/compare/v2.19.1...v2.19.2) (2020-02-10) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [2.19.1](https://github.com/typescript-eslint/typescript-eslint/compare/v2.19.0...v2.19.1) (2020-02-10) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.19.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.18.0...v2.19.0) (2020-02-03) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.18.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.17.0...v2.18.0) (2020-01-27) - - -### Bug Fixes - -* improve token types and add missing type guards ([#1497](https://github.com/typescript-eslint/typescript-eslint/issues/1497)) ([ce41d7d](https://github.com/typescript-eslint/typescript-eslint/commit/ce41d7de33bcb7ccf96c03ac1438304c5a49ff54)) -* **experimental-utils:** widen type of `settings` property ([#1527](https://github.com/typescript-eslint/typescript-eslint/issues/1527)) ([b515e47](https://github.com/typescript-eslint/typescript-eslint/commit/b515e47af2bc914c7ebcfa4be813409dcd86b1c3)) - - -### Features - -* **experimental-utils:** make RuleMetaData.docs optional ([#1462](https://github.com/typescript-eslint/typescript-eslint/issues/1462)) ([cde97ac](https://github.com/typescript-eslint/typescript-eslint/commit/cde97aca24df5a0f28f37006ed130ebc217fb2ad)) -* **parser:** clean up scope-analysis types ([#1481](https://github.com/typescript-eslint/typescript-eslint/issues/1481)) ([4a727fa](https://github.com/typescript-eslint/typescript-eslint/commit/4a727fa083d749dba9eaf39322856f5f69c28cd8)) - - - - - -# [2.17.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.16.0...v2.17.0) (2020-01-20) - - -### Features - -* **experimental-utils:** expose getParserServices from utils ([#1448](https://github.com/typescript-eslint/typescript-eslint/issues/1448)) ([982c8bc](https://github.com/typescript-eslint/typescript-eslint/commit/982c8bc)) - - - - - -# [2.16.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.15.0...v2.16.0) (2020-01-13) - - -### Features - -* **typescript-estree:** add parserOption to turn on debug logs ([#1413](https://github.com/typescript-eslint/typescript-eslint/issues/1413)) ([25092fd](https://github.com/typescript-eslint/typescript-eslint/commit/25092fd)) -* **typescript-estree:** add strict type mapping to esTreeNodeToTSNodeMap ([#1382](https://github.com/typescript-eslint/typescript-eslint/issues/1382)) ([d3d70a3](https://github.com/typescript-eslint/typescript-eslint/commit/d3d70a3)) - - - - - -# [2.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.14.0...v2.15.0) (2020-01-06) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.13.0...v2.14.0) (2019-12-30) - - -### Features - -* add internal eslint plugin for repo-specific lint rules ([#1373](https://github.com/typescript-eslint/typescript-eslint/issues/1373)) ([3a15413](https://github.com/typescript-eslint/typescript-eslint/commit/3a15413)) - - - - - -# [2.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.12.0...v2.13.0) (2019-12-23) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.11.0...v2.12.0) (2019-12-16) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.10.0...v2.11.0) (2019-12-09) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.9.0...v2.10.0) (2019-12-02) - - -### Features - -* **eslint-plugin:** [no-non-null-assert] add suggestion fixer ([#1260](https://github.com/typescript-eslint/typescript-eslint/issues/1260)) ([e350a21](https://github.com/typescript-eslint/typescript-eslint/commit/e350a21)) -* **experimental-utils:** add isSpaceBetween declaration to Sou… ([#1268](https://github.com/typescript-eslint/typescript-eslint/issues/1268)) ([f83f04b](https://github.com/typescript-eslint/typescript-eslint/commit/f83f04b)) - - - - - -# [2.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.8.0...v2.9.0) (2019-11-25) - - -### Features - -* suggestion types, suggestions for no-explicit-any ([#1250](https://github.com/typescript-eslint/typescript-eslint/issues/1250)) ([b16a4b6](https://github.com/typescript-eslint/typescript-eslint/commit/b16a4b6)) -* **eslint-plugin:** add prefer-nullish-coalescing ([#1069](https://github.com/typescript-eslint/typescript-eslint/issues/1069)) ([a9cd399](https://github.com/typescript-eslint/typescript-eslint/commit/a9cd399)) -* **eslint-plugin:** add rule prefer-optional-chain ([#1213](https://github.com/typescript-eslint/typescript-eslint/issues/1213)) ([ad7e1a7](https://github.com/typescript-eslint/typescript-eslint/commit/ad7e1a7)) - - - - - -# [2.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.7.0...v2.8.0) (2019-11-18) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.7.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.6.1...v2.7.0) (2019-11-11) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [2.6.1](https://github.com/typescript-eslint/typescript-eslint/compare/v2.6.0...v2.6.1) (2019-11-04) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.6.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.5.0...v2.6.0) (2019-10-28) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.5.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.4.0...v2.5.0) (2019-10-21) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.4.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.3.3...v2.4.0) (2019-10-14) - - -### Bug Fixes - -* support long running "watch" lint sessions ([#973](https://github.com/typescript-eslint/typescript-eslint/issues/973)) ([854620e](https://github.com/typescript-eslint/typescript-eslint/commit/854620e)) - - -### Features - -* **typescript-estree:** support for parsing 3.7 features ([#1045](https://github.com/typescript-eslint/typescript-eslint/issues/1045)) ([623febf](https://github.com/typescript-eslint/typescript-eslint/commit/623febf)) - - - - - -## [2.3.3](https://github.com/typescript-eslint/typescript-eslint/compare/v2.3.2...v2.3.3) (2019-10-07) - - -### Bug Fixes - -* **experimental-utils:** remove Rule.meta.extraDescription ([#1036](https://github.com/typescript-eslint/typescript-eslint/issues/1036)) ([192e23d](https://github.com/typescript-eslint/typescript-eslint/commit/192e23d)) - - - - - -## [2.3.2](https://github.com/typescript-eslint/typescript-eslint/compare/v2.3.1...v2.3.2) (2019-09-30) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -## [2.3.1](https://github.com/typescript-eslint/typescript-eslint/compare/v2.3.0...v2.3.1) (2019-09-23) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.2.0...v2.3.0) (2019-09-16) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.1.0...v2.2.0) (2019-09-09) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v2.0.0...v2.1.0) (2019-09-02) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [2.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.13.0...v2.0.0) (2019-08-13) - - -### Bug Fixes - -* **eslint-plugin:** add `Literal` to `RuleListener` types ([#824](https://github.com/typescript-eslint/typescript-eslint/issues/824)) ([3c902a1](https://github.com/typescript-eslint/typescript-eslint/commit/3c902a1)) -* **utils:** add ES2019 as valid `ecmaVersion` ([#746](https://github.com/typescript-eslint/typescript-eslint/issues/746)) ([d11fbbe](https://github.com/typescript-eslint/typescript-eslint/commit/d11fbbe)) - - -### Features - -* explicitly support eslint v6 ([#645](https://github.com/typescript-eslint/typescript-eslint/issues/645)) ([34a7cf6](https://github.com/typescript-eslint/typescript-eslint/commit/34a7cf6)) - - -* feat(eslint-plugin)!: recommended-requiring-type-checking config (#846) ([d3470c9](https://github.com/typescript-eslint/typescript-eslint/commit/d3470c9)), closes [#846](https://github.com/typescript-eslint/typescript-eslint/issues/846) -* feat(eslint-plugin)!: change recommended config (#729) ([428567d](https://github.com/typescript-eslint/typescript-eslint/commit/428567d)), closes [#729](https://github.com/typescript-eslint/typescript-eslint/issues/729) -* feat(eslint-plugin)!: add rule `consistent-type-assertions` (#731) ([92e98de](https://github.com/typescript-eslint/typescript-eslint/commit/92e98de)), closes [#731](https://github.com/typescript-eslint/typescript-eslint/issues/731) - - -### BREAKING CHANGES - -* removed some rules from recommended config -* recommended config changes are considered breaking -* Merges both no-angle-bracket-type-assertion and no-object-literal-type-assertion into one rule -* Node 6 is no longer supported - - - - - -# [1.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.12.0...v1.13.0) (2019-07-21) - - -### Bug Fixes - -* Correct `@types/json-schema` dependency ([#675](https://github.com/typescript-eslint/typescript-eslint/issues/675)) ([a5398ce](https://github.com/typescript-eslint/typescript-eslint/commit/a5398ce)) -* **utils:** move `typescript` from peer dep to dev dep ([#712](https://github.com/typescript-eslint/typescript-eslint/issues/712)) ([f949355](https://github.com/typescript-eslint/typescript-eslint/commit/f949355)) -* **utils:** RuleTester should not require a parser ([#713](https://github.com/typescript-eslint/typescript-eslint/issues/713)) ([158a417](https://github.com/typescript-eslint/typescript-eslint/commit/158a417)) - - -### Features - -* **eslint-plugin:** add new rule no-misused-promises ([#612](https://github.com/typescript-eslint/typescript-eslint/issues/612)) ([28a131d](https://github.com/typescript-eslint/typescript-eslint/commit/28a131d)) - - - - - -# [1.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.11.0...v1.12.0) (2019-07-12) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - - - - - -# [1.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.10.2...v1.11.0) (2019-06-23) - - -### Bug Fixes - -* **eslint-plugin:** Remove duplicated code ([#611](https://github.com/typescript-eslint/typescript-eslint/issues/611)) ([c4df4ff](https://github.com/typescript-eslint/typescript-eslint/commit/c4df4ff)) - - -### Features - -* **eslint-plugin:** add `consistent-type-definitions` rule ([#463](https://github.com/typescript-eslint/typescript-eslint/issues/463)) ([ec87d06](https://github.com/typescript-eslint/typescript-eslint/commit/ec87d06)) - - - - - -## [1.10.2](https://github.com/typescript-eslint/typescript-eslint/compare/v1.10.1...v1.10.2) (2019-06-10) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - -## [1.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v1.10.0...v1.10.1) (2019-06-09) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - -# [1.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.9.0...v1.10.0) (2019-06-09) - -### Bug Fixes - -- **experimental-utils:** add `endLine` and `endColumn` ([#517](https://github.com/typescript-eslint/typescript-eslint/issues/517)) ([d9e5f15](https://github.com/typescript-eslint/typescript-eslint/commit/d9e5f15)) -- **experimental-utils:** Avoid typescript import at runtime ([#584](https://github.com/typescript-eslint/typescript-eslint/issues/584)) ([fac5c7d](https://github.com/typescript-eslint/typescript-eslint/commit/fac5c7d)), closes [/github.com/typescript-eslint/typescript-eslint/pull/425#issuecomment-498162293](https://github.com//github.com/typescript-eslint/typescript-eslint/pull/425/issues/issuecomment-498162293) - -### Features - -- make utils/TSESLint export typed classes instead of just types ([#526](https://github.com/typescript-eslint/typescript-eslint/issues/526)) ([370ac72](https://github.com/typescript-eslint/typescript-eslint/commit/370ac72)) -- support TypeScript versions >=3.2.1 <3.6.0 ([#597](https://github.com/typescript-eslint/typescript-eslint/issues/597)) ([5d2b962](https://github.com/typescript-eslint/typescript-eslint/commit/5d2b962)) - -# [1.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.8.0...v1.9.0) (2019-05-12) - -**Note:** Version bump only for package @typescript-eslint/experimental-utils - -# [1.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.7.0...v1.8.0) (2019-05-10) - -### Features - -- Move shared types into their own package ([#425](https://github.com/typescript-eslint/typescript-eslint/issues/425)) ([a7a03ce](https://github.com/typescript-eslint/typescript-eslint/commit/a7a03ce)) diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/LICENSE b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/LICENSE deleted file mode 100644 index 7e737014..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2019 TypeScript ESLint 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. diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/README.md b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/README.md deleted file mode 100644 index 208578bf..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/README.md +++ /dev/null @@ -1,37 +0,0 @@ -

Utils for ESLint Plugins

- -

Utilities for working with TypeScript + ESLint together.

- -

- CI - NPM Version - NPM Downloads -

- -## Note - -This package has inherited its version number from the `@typescript-eslint` project. -Meaning that even though this package is `2.x.y`, you shouldn't expect 100% stability between minor version bumps. -i.e. treat it as a `0.x.y` package. - -Feel free to use it now, and let us know what utilities you need or send us PRs with utilities you build on top of it. - -Once it is stable, it will be renamed to `@typescript-eslint/util` for a `4.0.0` release. - -## Exports - -| Name | Description | -| -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`ASTUtils`](./src/ast-utils) | Tools for operating on the ESTree AST. Also includes the [`eslint-utils`](https://www.npmjs.com/package/eslint-utils) package, correctly typed to work with the types found in `TSESTree` | -| [`ESLintUtils`](./src/eslint-utils) | Tools for creating ESLint rules with TypeScript. | -| `JSONSchema` | Types from the [`@types/json-schema`](https://www.npmjs.com/package/@types/json-schema) package, re-exported to save you having to manually import them. Also ensures you're using the same version of the types as this package. | -| [`TSESLint`](./src/ts-eslint) | Types for ESLint, correctly typed to work with the types found in `TSESTree`. | -| [`TSESLintScope`](./src/ts-eslint-scope) | The [`eslint-scope`](https://www.npmjs.com/package/eslint-scope) package, correctly typed to work with the types found in both `TSESTree` and `TSESLint` | -| [`TSESTree`](../types/src/ts-estree.ts) | Types for the TypeScript flavor of ESTree created by `@typescript-eslint/typescript-estree`. | -| [`AST_NODE_TYPES`](../types/src/ast-node-types.ts) | An enum with the names of every single _node_ found in `TSESTree`. | -| [`AST_TOKEN_TYPES`](../types/src/ast-token-types.ts) | An enum with the names of every single _token_ found in `TSESTree`. | -| [`ParserServices`](../typescript-estree/src/parser-options.ts) | Typing for the parser services provided when parsing a file using `@typescript-eslint/typescript-estree`. | - -## Contributing - -[See the contributing guide here](../../CONTRIBUTING.md) diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts deleted file mode 100644 index 2479b2e2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/RuleTester.d.ts +++ /dev/null @@ -1,137 +0,0 @@ -import { AST_NODE_TYPES, AST_TOKEN_TYPES } from '../ts-estree'; -import { ParserOptions } from './ParserOptions'; -import { RuleModule } from './Rule'; -interface ValidTestCase> { - /** - * Code for the test case. - */ - readonly code: string; - /** - * Environments for the test case. - */ - readonly env?: Readonly>; - /** - * The fake filename for the test case. Useful for rules that make assertion about filenames. - */ - readonly filename?: string; - /** - * The additional global variables. - */ - readonly globals?: Record; - /** - * Options for the test case. - */ - readonly options?: Readonly; - /** - * The absolute path for the parser. - */ - readonly parser?: string; - /** - * Options for the parser. - */ - readonly parserOptions?: Readonly; - /** - * Settings for the test case. - */ - readonly settings?: Readonly>; -} -interface SuggestionOutput { - /** - * Reported message ID. - */ - readonly messageId: TMessageIds; - /** - * The data used to fill the message template. - */ - readonly data?: Readonly>; - /** - * NOTE: Suggestions will be applied as a stand-alone change, without triggering multi-pass fixes. - * Each individual error has its own suggestion, so you have to show the correct, _isolated_ output for each suggestion. - */ - readonly output: string; -} -interface InvalidTestCase> extends ValidTestCase { - /** - * Expected errors. - */ - readonly errors: TestCaseError[]; - /** - * The expected code after autofixes are applied. If set to `null`, the test runner will assert that no autofix is suggested. - */ - readonly output?: string | null; -} -interface TestCaseError { - /** - * The 1-based column number of the reported start location. - */ - readonly column?: number; - /** - * The data used to fill the message template. - */ - readonly data?: Readonly>; - /** - * The 1-based column number of the reported end location. - */ - readonly endColumn?: number; - /** - * The 1-based line number of the reported end location. - */ - readonly endLine?: number; - /** - * The 1-based line number of the reported start location. - */ - readonly line?: number; - /** - * Reported message ID. - */ - readonly messageId: TMessageIds; - /** - * Reported suggestions. - */ - readonly suggestions?: SuggestionOutput[] | null; - /** - * The type of the reported AST node. - */ - readonly type?: AST_NODE_TYPES | AST_TOKEN_TYPES; -} -interface RunTests> { - readonly valid: (ValidTestCase | string)[]; - readonly invalid: InvalidTestCase[]; -} -interface RuleTesterConfig { - readonly parser: string; - readonly parserOptions?: Readonly; -} -declare class RuleTesterBase { - /** - * Creates a new instance of RuleTester. - * @param testerConfig extra configuration for the tester - */ - constructor(testerConfig?: RuleTesterConfig); - /** - * Adds a new rule test to execute. - * @param ruleName The name of the rule to run. - * @param rule The rule to test. - * @param test The collection of tests to run. - */ - run>(ruleName: string, rule: RuleModule, tests: RunTests): void; - /** - * If you supply a value to this property, the rule tester will call this instead of using the version defined on - * the global namespace. - * @param text a string describing the rule - * @param callback the test callback - */ - static describe?: (text: string, callback: () => void) => void; - /** - * If you supply a value to this property, the rule tester will call this instead of using the version defined on - * the global namespace. - * @param text a string describing the test case - * @param callback the test callback - */ - static it?: (text: string, callback: () => void) => void; -} -declare const RuleTester_base: typeof RuleTesterBase; -declare class RuleTester extends RuleTester_base { -} -export { InvalidTestCase, SuggestionOutput, RuleTester, RuleTesterConfig, RunTests, TestCaseError, ValidTestCase, }; -//# sourceMappingURL=RuleTester.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Scope.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Scope.d.ts deleted file mode 100644 index 79dfc9df..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/_ts3.4/dist/ts-eslint/Scope.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import * as scopeManager from '@typescript-eslint/scope-manager'; -import { TSESTree } from '@typescript-eslint/types'; -declare namespace Scope { - class ESLintScopeVariable { - readonly defs: Definition[]; - readonly identifiers: TSESTree.Identifier[]; - readonly name: string; - readonly references: Reference[]; - readonly scope: Scope; - /** - * Written to by ESLint. - * If this key exists, this variable is a global variable added by ESLint. - * If this is `true`, this variable can be assigned arbitrary values. - * If this is `false`, this variable is readonly. - */ - writeable?: boolean; - /** - * Written to by ESLint. - * This property is undefined if there are no globals directive comments. - * The array of globals directive comments which defined this global variable in the source code file. - */ - eslintExplicitGlobal?: boolean; - /** - * Written to by ESLint. - * The configured value in config files. This can be different from `variable.writeable` if there are globals directive comments. - */ - eslintImplicitGlobalSetting?: 'readonly' | 'writable'; - /** - * Written to by ESLint. - * If this key exists, it is a global variable added by ESLint. - * If `true`, this global variable was defined by a globals directive comment in the source code file. - */ - eslintExplicitGlobalComments?: TSESTree.Comment[]; - } - export type ScopeManager = scopeManager.ScopeManager; - export type Reference = scopeManager.Reference; - export type Variable = scopeManager.Variable | ESLintScopeVariable; - export type Scope = scopeManager.Scope; - export type DefinitionType = scopeManager.Definition; - export type Definition = scopeManager.Definition; - export {}; -} -export { Scope }; -//# sourceMappingURL=Scope.d.ts.map diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts deleted file mode 100644 index 565a6a9d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { RuleMetaData, RuleMetaDataDocs, RuleListener, RuleContext, RuleModule } from '../ts-eslint/Rule'; -declare type CreateRuleMetaDocs = Omit; -declare type CreateRuleMeta = { - docs: CreateRuleMetaDocs; -} & Omit, 'docs'>; -declare function RuleCreator(urlCreator: (ruleName: string) => string): ({ name, meta, defaultOptions, create, }: Readonly<{ - name: string; - meta: CreateRuleMeta; - defaultOptions: Readonly; - create: (context: Readonly>, optionsWithDefault: Readonly) => TRuleListener; -}>) => RuleModule; -export { RuleCreator }; -//# sourceMappingURL=RuleCreator.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map deleted file mode 100644 index 2d86f2a5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RuleCreator.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/RuleCreator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAC;AAI3B,aAAK,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;AACxD,aAAK,cAAc,CAAC,WAAW,SAAS,MAAM,IAAI;IAChD,IAAI,EAAE,kBAAkB,CAAC;CAC1B,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;AAE5C,iBAAS,WAAW,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM;UAanD,MAAM;;;;wDA2Bf;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js deleted file mode 100644 index cba8ed64..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RuleCreator = void 0; -const applyDefault_1 = require("./applyDefault"); -function RuleCreator(urlCreator) { - // This function will get much easier to call when this is merged https://github.com/Microsoft/TypeScript/pull/26349 - // TODO - when the above PR lands; add type checking for the context.report `data` property - return function createRule({ name, meta, defaultOptions, create, }) { - return { - meta: Object.assign(Object.assign({}, meta), { docs: Object.assign(Object.assign({}, meta.docs), { url: urlCreator(name) }) }), - create(context) { - const optionsWithDefault = applyDefault_1.applyDefault(defaultOptions, context.options); - return create(context, optionsWithDefault); - }, - }; - }; -} -exports.RuleCreator = RuleCreator; -//# sourceMappingURL=RuleCreator.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map deleted file mode 100644 index cea4eb08..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/RuleCreator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RuleCreator.js","sourceRoot":"","sources":["../../src/eslint-utils/RuleCreator.ts"],"names":[],"mappings":";;;AAOA,iDAA8C;AAQ9C,SAAS,WAAW,CAAC,UAAwC;IAC3D,oHAAoH;IACpH,2FAA2F;IAC3F,OAAO,SAAS,UAAU,CAIxB,EACA,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,MAAM,GASN;QACA,OAAO;YACL,IAAI,kCACC,IAAI,KACP,IAAI,kCACC,IAAI,CAAC,IAAI,KACZ,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,MAExB;YACD,MAAM,CACJ,OAAqD;gBAErD,MAAM,kBAAkB,GAAG,2BAAY,CACrC,cAAc,EACd,OAAO,CAAC,OAAO,CAChB,CAAC;gBACF,OAAO,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAEQ,kCAAW"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts deleted file mode 100644 index b92df58f..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Pure function - doesn't mutate either parameter! - * Uses the default options and overrides with the options provided by the user - * @param defaultOptions the defaults - * @param userOptions the user opts - * @returns the options with defaults - */ -declare function applyDefault(defaultOptions: TDefault, userOptions: TUser | null): TDefault; -export { applyDefault }; -//# sourceMappingURL=applyDefault.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map deleted file mode 100644 index 50c710ed..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"applyDefault.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/applyDefault.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,KAAK,SAAS,SAAS,OAAO,EAAE,EAAE,QAAQ,SAAS,KAAK,EAC5E,cAAc,EAAE,QAAQ,EACxB,WAAW,EAAE,KAAK,GAAG,IAAI,GACxB,QAAQ,CAuBV;AAMD,OAAO,EAAE,YAAY,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js deleted file mode 100644 index 6ae1a795..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.applyDefault = void 0; -const deepMerge_1 = require("./deepMerge"); -/** - * Pure function - doesn't mutate either parameter! - * Uses the default options and overrides with the options provided by the user - * @param defaultOptions the defaults - * @param userOptions the user opts - * @returns the options with defaults - */ -function applyDefault(defaultOptions, userOptions) { - // clone defaults - const options = JSON.parse(JSON.stringify(defaultOptions)); - if (userOptions === null || userOptions === undefined) { - return options; - } - options.forEach((opt, i) => { - if (userOptions[i] !== undefined) { - const userOpt = userOptions[i]; - if (deepMerge_1.isObjectNotArray(userOpt) && deepMerge_1.isObjectNotArray(opt)) { - options[i] = deepMerge_1.deepMerge(opt, userOpt); - } - else { - options[i] = userOpt; - } - } - }); - return options; -} -exports.applyDefault = applyDefault; -//# sourceMappingURL=applyDefault.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map deleted file mode 100644 index 797a3b50..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/applyDefault.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"applyDefault.js","sourceRoot":"","sources":["../../src/eslint-utils/applyDefault.ts"],"names":[],"mappings":";;;AAAA,2CAA0D;AAE1D;;;;;;GAMG;AACH,SAAS,YAAY,CACnB,cAAwB,EACxB,WAAyB;IAEzB,iBAAiB;IACjB,MAAM,OAAO,GAAwB,IAAI,CAAC,KAAK,CAC7C,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAC/B,CAAC;IAEF,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,SAAS,EAAE;QACrD,OAAO,OAAO,CAAC;KAChB;IAED,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACzB,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAChC,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAE/B,IAAI,4BAAgB,CAAC,OAAO,CAAC,IAAI,4BAAgB,CAAC,GAAG,CAAC,EAAE;gBACtD,OAAO,CAAC,CAAC,CAAC,GAAG,qBAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;aACtC;iBAAM;gBACL,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;aACtB;SACF;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AAMQ,oCAAY"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.d.ts deleted file mode 100644 index 34118025..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { ValidTestCase, InvalidTestCase } from '../ts-eslint'; -/** - * Converts a batch of single line tests into a number of separate test cases. - * This makes it easier to write tests which use the same options. - * - * Why wouldn't you just leave them as one test? - * Because it makes the test error messages harder to decipher. - * This way each line will fail separately, instead of them all failing together. - */ -declare function batchedSingleLineTests>(test: ValidTestCase): ValidTestCase[]; -/** - * Converts a batch of single line tests into a number of separate test cases. - * This makes it easier to write tests which use the same options. - * - * Why wouldn't you just leave them as one test? - * Because it makes the test error messages harder to decipher. - * This way each line will fail separately, instead of them all failing together. - * - * Make sure you have your line numbers correct for error reporting, as it will match - * the line numbers up with the split tests! - */ -declare function batchedSingleLineTests>(test: InvalidTestCase): InvalidTestCase[]; -export { batchedSingleLineTests }; -//# sourceMappingURL=batchedSingleLineTests.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.d.ts.map deleted file mode 100644 index 55841a1e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"batchedSingleLineTests.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/batchedSingleLineTests.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE9D;;;;;;;GAOG;AACH,iBAAS,sBAAsB,CAAC,QAAQ,SAAS,QAAQ,CAAC,OAAO,EAAE,CAAC,EAClE,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,GAC5B,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC7B;;;;;;;;;;GAUG;AACH,iBAAS,sBAAsB,CAC7B,WAAW,SAAS,MAAM,EAC1B,QAAQ,SAAS,QAAQ,CAAC,OAAO,EAAE,CAAC,EAEpC,IAAI,EAAE,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,GAC3C,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;AAwC5C,OAAO,EAAE,sBAAsB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js deleted file mode 100644 index 7ff93904..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.batchedSingleLineTests = void 0; -function batchedSingleLineTests(options) { - // eslint counts lines from 1 - const lineOffset = options.code.startsWith('\n') ? 2 : 1; - const output = 'output' in options && options.output - ? options.output.trim().split('\n') - : null; - return options.code - .trim() - .split('\n') - .map((code, i) => { - const lineNum = i + lineOffset; - const errors = 'errors' in options - ? options.errors.filter(e => e.line === lineNum) - : []; - const returnVal = Object.assign(Object.assign({}, options), { code, errors: errors.map(e => (Object.assign(Object.assign({}, e), { line: 1 }))) }); - if (output === null || output === void 0 ? void 0 : output[i]) { - return Object.assign(Object.assign({}, returnVal), { output: output[i] }); - } - return returnVal; - }); -} -exports.batchedSingleLineTests = batchedSingleLineTests; -//# sourceMappingURL=batchedSingleLineTests.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map deleted file mode 100644 index 31f68d68..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/batchedSingleLineTests.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"batchedSingleLineTests.js","sourceRoot":"","sources":["../../src/eslint-utils/batchedSingleLineTests.ts"],"names":[],"mappings":";;;AA8BA,SAAS,sBAAsB,CAI7B,OAAyE;IAEzE,6BAA6B;IAC7B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GACV,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM;QACnC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,OAAO,CAAC,IAAI;SAChB,IAAI,EAAE;SACN,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACf,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC;QAC/B,MAAM,MAAM,GACV,QAAQ,IAAI,OAAO;YACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;YAChD,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,SAAS,mCACV,OAAO,KACV,IAAI,EACJ,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,iCACnB,CAAC,KACJ,IAAI,EAAE,CAAC,IACP,CAAC,GACJ,CAAC;QACF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,CAAC,GAAG;YACf,uCACK,SAAS,KACZ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IACjB;SACH;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,CAAC;AACP,CAAC;AAEQ,wDAAsB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts deleted file mode 100644 index 9650020a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -declare type ObjectLike = Record; -/** - * Check if the variable contains an object strictly rejecting arrays - * @param obj an object - * @returns `true` if obj is an object - */ -declare function isObjectNotArray(obj: unknown | unknown[]): obj is T; -/** - * Pure function - doesn't mutate either parameter! - * Merges two objects together deeply, overwriting the properties in first with the properties in second - * @param first The first object - * @param second The second object - * @returns a new object - */ -export declare function deepMerge(first?: ObjectLike, second?: ObjectLike): Record; -export { isObjectNotArray }; -//# sourceMappingURL=deepMerge.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map deleted file mode 100644 index 769f39c1..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"deepMerge.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/deepMerge.ts"],"names":[],"mappings":"AAAA,aAAK,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAEjD;;;;GAIG;AACH,iBAAS,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAC5C,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE,GACvB,GAAG,IAAI,CAAC,CAEV;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,KAAK,GAAE,UAAe,EACtB,MAAM,GAAE,UAAe,GACtB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0BzB;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js deleted file mode 100644 index 34fdffc5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.isObjectNotArray = exports.deepMerge = void 0; -/** - * Check if the variable contains an object strictly rejecting arrays - * @param obj an object - * @returns `true` if obj is an object - */ -function isObjectNotArray(obj) { - return typeof obj === 'object' && !Array.isArray(obj); -} -exports.isObjectNotArray = isObjectNotArray; -/** - * Pure function - doesn't mutate either parameter! - * Merges two objects together deeply, overwriting the properties in first with the properties in second - * @param first The first object - * @param second The second object - * @returns a new object - */ -function deepMerge(first = {}, second = {}) { - // get the unique set of keys across both objects - const keys = new Set(Object.keys(first).concat(Object.keys(second))); - return Array.from(keys).reduce((acc, key) => { - const firstHasKey = key in first; - const secondHasKey = key in second; - const firstValue = first[key]; - const secondValue = second[key]; - if (firstHasKey && secondHasKey) { - if (isObjectNotArray(firstValue) && isObjectNotArray(secondValue)) { - // object type - acc[key] = deepMerge(firstValue, secondValue); - } - else { - // value type - acc[key] = secondValue; - } - } - else if (firstHasKey) { - acc[key] = firstValue; - } - else { - acc[key] = secondValue; - } - return acc; - }, {}); -} -exports.deepMerge = deepMerge; -//# sourceMappingURL=deepMerge.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map deleted file mode 100644 index 7ee4604b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/deepMerge.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"deepMerge.js","sourceRoot":"","sources":["../../src/eslint-utils/deepMerge.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,GAAwB;IAExB,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxD,CAAC;AAwCQ,4CAAgB;AAtCzB;;;;;;GAMG;AACH,SAAgB,SAAS,CACvB,QAAoB,EAAE,EACtB,SAAqB,EAAE;IAEvB,iDAAiD;IACjD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAErE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAa,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACtD,MAAM,WAAW,GAAG,GAAG,IAAI,KAAK,CAAC;QACjC,MAAM,YAAY,GAAG,GAAG,IAAI,MAAM,CAAC;QACnC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAEhC,IAAI,WAAW,IAAI,YAAY,EAAE;YAC/B,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE;gBACjE,cAAc;gBACd,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;aAC/C;iBAAM;gBACL,aAAa;gBACb,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;aACxB;SACF;aAAM,IAAI,WAAW,EAAE;YACtB,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;SACvB;aAAM;YACL,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;SACxB;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AA7BD,8BA6BC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts deleted file mode 100644 index 98626f43..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as TSESLint from '../ts-eslint'; -import { ParserServices } from '../ts-estree'; -/** - * Try to retrieve typescript parser service from context - */ -declare function getParserServices(context: Readonly>, allowWithoutFullTypeInformation?: boolean): ParserServices; -export { getParserServices }; -//# sourceMappingURL=getParserServices.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map deleted file mode 100644 index 52fea2c4..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getParserServices.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/getParserServices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAK9C;;GAEG;AACH,iBAAS,iBAAiB,CACxB,WAAW,SAAS,MAAM,EAC1B,QAAQ,SAAS,SAAS,OAAO,EAAE,EAEnC,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,EAC9D,+BAA+B,UAAQ,GACtC,cAAc,CAuBhB;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js deleted file mode 100644 index 09302fd8..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js +++ /dev/null @@ -1,28 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getParserServices = void 0; -const ERROR_MESSAGE = 'You have used a rule which requires parserServices to be generated. You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser.'; -/** - * Try to retrieve typescript parser service from context - */ -function getParserServices(context, allowWithoutFullTypeInformation = false) { - var _a; - // backwards compatibility check - // old versions of the parser would not return any parserServices unless parserOptions.project was set - if (!context.parserServices || - !context.parserServices.program || - !context.parserServices.esTreeNodeToTSNodeMap || - !context.parserServices.tsNodeToESTreeNodeMap) { - throw new Error(ERROR_MESSAGE); - } - const hasFullTypeInformation = (_a = context.parserServices.hasFullTypeInformation) !== null && _a !== void 0 ? _a : - /* backwards compatible */ true; - // if a rule requires full type information, then hard fail if it doesn't exist - // this forces the user to supply parserOptions.project - if (!hasFullTypeInformation && !allowWithoutFullTypeInformation) { - throw new Error(ERROR_MESSAGE); - } - return context.parserServices; -} -exports.getParserServices = getParserServices; -//# sourceMappingURL=getParserServices.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map deleted file mode 100644 index 4d401257..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/getParserServices.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getParserServices.js","sourceRoot":"","sources":["../../src/eslint-utils/getParserServices.ts"],"names":[],"mappings":";;;AAGA,MAAM,aAAa,GACjB,gLAAgL,CAAC;AAEnL;;GAEG;AACH,SAAS,iBAAiB,CAIxB,OAA8D,EAC9D,+BAA+B,GAAG,KAAK;;IAEvC,gCAAgC;IAChC,sGAAsG;IACtG,IACE,CAAC,OAAO,CAAC,cAAc;QACvB,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO;QAC/B,CAAC,OAAO,CAAC,cAAc,CAAC,qBAAqB;QAC7C,CAAC,OAAO,CAAC,cAAc,CAAC,qBAAqB,EAC7C;QACA,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;KAChC;IAED,MAAM,sBAAsB,SAC1B,OAAO,CAAC,cAAc,CAAC,sBAAsB;IAC7C,0BAA0B,CAAC,IAAI,CAAC;IAElC,+EAA+E;IAC/E,uDAAuD;IACvD,IAAI,CAAC,sBAAsB,IAAI,CAAC,+BAA+B,EAAE;QAC/D,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;KAChC;IAED,OAAO,OAAO,CAAC,cAAc,CAAC;AAChC,CAAC;AAEQ,8CAAiB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts deleted file mode 100644 index 8cdfcb01..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export * from './applyDefault'; -export * from './batchedSingleLineTests'; -export * from './getParserServices'; -export * from './InferTypesFromRule'; -export * from './RuleCreator'; -export * from './RuleTester'; -export * from './deepMerge'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map deleted file mode 100644 index 7aca90d9..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eslint-utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js deleted file mode 100644 index dde280d2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./applyDefault"), exports); -__exportStar(require("./batchedSingleLineTests"), exports); -__exportStar(require("./getParserServices"), exports); -__exportStar(require("./InferTypesFromRule"), exports); -__exportStar(require("./RuleCreator"), exports); -__exportStar(require("./RuleTester"), exports); -__exportStar(require("./deepMerge"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map deleted file mode 100644 index f24be476..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/eslint-utils/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eslint-utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA+B;AAC/B,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,gDAA8B;AAC9B,+CAA6B;AAC7B,8CAA4B"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts deleted file mode 100644 index b8a60a9b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as ASTUtils from './ast-utils'; -import * as ESLintUtils from './eslint-utils'; -import * as JSONSchema from './json-schema'; -import * as TSESLint from './ts-eslint'; -import * as TSESLintScope from './ts-eslint-scope'; -export { ASTUtils, ESLintUtils, JSONSchema, TSESLint, TSESLintScope }; -export * from './ts-estree'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map deleted file mode 100644 index 822db074..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;AACtE,cAAc,aAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.js deleted file mode 100644 index ef12e06d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TSESLintScope = exports.TSESLint = exports.JSONSchema = exports.ESLintUtils = exports.ASTUtils = void 0; -const ASTUtils = __importStar(require("./ast-utils")); -exports.ASTUtils = ASTUtils; -const ESLintUtils = __importStar(require("./eslint-utils")); -exports.ESLintUtils = ESLintUtils; -const JSONSchema = __importStar(require("./json-schema")); -exports.JSONSchema = JSONSchema; -const TSESLint = __importStar(require("./ts-eslint")); -exports.TSESLint = TSESLint; -const TSESLintScope = __importStar(require("./ts-eslint-scope")); -exports.TSESLintScope = TSESLintScope; -__exportStar(require("./ts-estree"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map deleted file mode 100644 index b500da1a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAwC;AAM/B,4BAAQ;AALjB,4DAA8C;AAK3B,kCAAW;AAJ9B,0DAA4C;AAIZ,gCAAU;AAH1C,sDAAwC;AAGI,4BAAQ;AAFpD,iEAAmD;AAEG,sCAAa;AACnE,8CAA4B"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts deleted file mode 100644 index bd6f29cd..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { JSONSchema4, JSONSchema4Type, JSONSchema4TypeName, JSONSchema4Version, JSONSchema6, JSONSchema6Definition, JSONSchema6Type, JSONSchema6TypeName, JSONSchema6Version, JSONSchema7, JSONSchema7Array, JSONSchema7Definition, JSONSchema7Type, JSONSchema7TypeName, JSONSchema7Version, ValidationError, ValidationResult, } from 'json-schema'; -//# sourceMappingURL=json-schema.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map deleted file mode 100644 index 845788b3..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js deleted file mode 100644 index 289fb57e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js +++ /dev/null @@ -1,6 +0,0 @@ -"use strict"; -// Note - @types/json-schema@7.0.4 added some function declarations to the type package -// If we do export *, then it will also export these function declarations. -// This will cause typescript to not scrub the require from the build, breaking anyone who doesn't have it as a dependency -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=json-schema.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map deleted file mode 100644 index 51d0b026..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/json-schema.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":";AAAA,uFAAuF;AACvF,2EAA2E;AAC3E,0HAA0H"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts deleted file mode 100644 index bcaf94a2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { TSESTree } from '../ts-estree'; -interface Definition { - type: string; - name: TSESTree.BindingName; - node: TSESTree.Node; - parent?: TSESTree.Node | null; - index?: number | null; - kind?: string | null; - rest?: boolean; -} -interface DefinitionConstructor { - new (type: string, name: TSESTree.BindingName | TSESTree.PropertyName, node: TSESTree.Node, parent?: TSESTree.Node | null, index?: number | null, kind?: string | null): Definition; -} -declare const Definition: DefinitionConstructor; -interface ParameterDefinition extends Definition { -} -declare const ParameterDefinition: DefinitionConstructor & (new (name: TSESTree.Node, node: TSESTree.Node, index?: number | null | undefined, rest?: boolean | undefined) => ParameterDefinition); -export { Definition, ParameterDefinition }; -//# sourceMappingURL=Definition.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map deleted file mode 100644 index ab9c6387..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Definition.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Definition.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AACD,UAAU,qBAAqB;IAC7B,KACE,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,YAAY,EAClD,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,EAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GACnB,UAAU,CAAC;CACf;AACD,QAAA,MAAM,UAAU,uBAA4C,CAAC;AAG7D,UAAU,mBAAoB,SAAQ,UAAU;CAAG;AACnD,QAAA,MAAM,mBAAmB,sCAEf,SAAS,IAAI,QACb,SAAS,IAAI,oEAGlB,mBAAmB,CACvB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js deleted file mode 100644 index dd3de1f5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ParameterDefinition = exports.Definition = void 0; -const definition_1 = require("eslint-scope/lib/definition"); -const Definition = definition_1.Definition; -exports.Definition = Definition; -const ParameterDefinition = definition_1.ParameterDefinition; -exports.ParameterDefinition = ParameterDefinition; -//# sourceMappingURL=Definition.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map deleted file mode 100644 index fa19c8c1..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Definition.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Definition.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Definition.ts"],"names":[],"mappings":";;;AAAA,4DAGqC;AAsBrC,MAAM,UAAU,GAAG,uBAAyC,CAAC;AAapD,gCAAU;AATnB,MAAM,mBAAmB,GAAG,gCAO3B,CAAC;AAEmB,kDAAmB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts deleted file mode 100644 index 48ce3c57..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { TSESTree } from '../ts-estree'; -declare type PatternVisitorCallback = (pattern: TSESTree.Identifier, info: { - rest: boolean; - topLevel: boolean; - assignments: TSESTree.AssignmentPattern[]; -}) => void; -interface PatternVisitorOptions { - processRightHandNodes?: boolean; -} -interface Visitor { - visitChildren(node?: T): void; - visit(node?: T): void; -} -export { PatternVisitorCallback, PatternVisitorOptions, Visitor }; -//# sourceMappingURL=Options.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map deleted file mode 100644 index fae66aaa..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Options.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,aAAK,sBAAsB,GAAG,CAC5B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAC5B,IAAI,EAAE;IACJ,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,QAAQ,CAAC,iBAAiB,EAAE,CAAC;CAC3C,KACE,IAAI,CAAC;AAEV,UAAU,qBAAqB;IAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,UAAU,OAAO;IACf,aAAa,CAAC,CAAC,SAAS,QAAQ,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAC9E,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;CACvE;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.js deleted file mode 100644 index 08cea894..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=Options.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.js.map deleted file mode 100644 index 8d8fb9ec..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Options.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Options.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts deleted file mode 100644 index e21224bc..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { TSESTree } from '../ts-estree'; -import { ScopeManager } from './ScopeManager'; -import { PatternVisitorCallback, PatternVisitorOptions, Visitor } from './Options'; -interface PatternVisitor extends Visitor { - options: PatternVisitorOptions; - scopeManager: ScopeManager; - parent?: TSESTree.Node; - rightHandNodes: TSESTree.Node[]; - Identifier(pattern: TSESTree.Node): void; - Property(property: TSESTree.Node): void; - ArrayPattern(pattern: TSESTree.Node): void; - AssignmentPattern(pattern: TSESTree.Node): void; - RestElement(pattern: TSESTree.Node): void; - MemberExpression(node: TSESTree.Node): void; - SpreadElement(node: TSESTree.Node): void; - ArrayExpression(node: TSESTree.Node): void; - AssignmentExpression(node: TSESTree.Node): void; - CallExpression(node: TSESTree.Node): void; -} -declare const PatternVisitor: { - new (options: PatternVisitorOptions, rootPattern: TSESTree.BaseNode, callback: PatternVisitorCallback): PatternVisitor; - isPattern(node: TSESTree.Node): boolean; -}; -export { PatternVisitor }; -//# sourceMappingURL=PatternVisitor.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map deleted file mode 100644 index eec5b0b1..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PatternVisitor.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/PatternVisitor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,OAAO,EACR,MAAM,WAAW,CAAC;AAEnB,UAAU,cAAe,SAAQ,OAAO;IACtC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IACvB,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEhC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACxC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3C,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1C,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC5C,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACzC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3C,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChD,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;CAC3C;AACD,QAAA,MAAM,cAAc;kBAEP,qBAAqB,eACjB,SAAS,QAAQ,YACpB,sBAAsB,GAC/B,cAAc;oBAGD,SAAS,IAAI,GAAG,OAAO;CACxC,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js deleted file mode 100644 index 43aa849a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PatternVisitor = void 0; -const pattern_visitor_1 = __importDefault(require("eslint-scope/lib/pattern-visitor")); -const PatternVisitor = pattern_visitor_1.default; -exports.PatternVisitor = PatternVisitor; -//# sourceMappingURL=PatternVisitor.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map deleted file mode 100644 index e08efc85..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/PatternVisitor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PatternVisitor.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/PatternVisitor.ts"],"names":[],"mappings":";;;;;;AAAA,uFAAoE;AA0BpE,MAAM,cAAc,GAAG,yBAStB,CAAC;AAEO,wCAAc"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts deleted file mode 100644 index 0d479b39..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { TSESTree } from '../ts-estree'; -import { Scope } from './Scope'; -import { Variable } from './Variable'; -export declare type ReferenceFlag = 0x1 | 0x2 | 0x3; -interface Reference { - identifier: TSESTree.Identifier; - from: Scope; - resolved: Variable | null; - writeExpr: TSESTree.Node | null; - init: boolean; - partial: boolean; - __maybeImplicitGlobal: boolean; - tainted?: boolean; - typeMode?: boolean; - isWrite(): boolean; - isRead(): boolean; - isWriteOnly(): boolean; - isReadOnly(): boolean; - isReadWrite(): boolean; -} -declare const Reference: { - new (identifier: TSESTree.Identifier, scope: Scope, flag?: 2 | 3 | 1 | undefined, writeExpr?: TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BigIntLiteral | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.ChainExpression | TSESTree.ClassBody | TSESTree.ClassDeclaration | TSESTree.ClassExpression | TSESTree.ClassPropertyComputedName | TSESTree.ClassPropertyNonComputedName | TSESTree.ConditionalExpression | TSESTree.ContinueStatement | TSESTree.DebuggerStatement | TSESTree.Decorator | TSESTree.DoWhileStatement | TSESTree.EmptyStatement | TSESTree.ExportAllDeclaration | TSESTree.ExportDefaultDeclaration | TSESTree.ExportNamedDeclaration | TSESTree.ExportSpecifier | TSESTree.ExpressionStatement | TSESTree.ForInStatement | TSESTree.ForOfStatement | TSESTree.ForStatement | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.IfStatement | TSESTree.ImportDeclaration | TSESTree.ImportDefaultSpecifier | TSESTree.ImportExpression | TSESTree.ImportNamespaceSpecifier | TSESTree.ImportSpecifier | TSESTree.JSXAttribute | TSESTree.JSXClosingElement | TSESTree.JSXClosingFragment | TSESTree.JSXElement | TSESTree.JSXEmptyExpression | TSESTree.JSXExpressionContainer | TSESTree.JSXFragment | TSESTree.JSXIdentifier | TSESTree.JSXMemberExpression | TSESTree.JSXOpeningElement | TSESTree.JSXOpeningFragment | TSESTree.JSXSpreadAttribute | TSESTree.JSXSpreadChild | TSESTree.JSXText | TSESTree.LabeledStatement | TSESTree.BooleanLiteral | TSESTree.NumberLiteral | TSESTree.NullLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.MethodDefinitionComputedName | TSESTree.MethodDefinitionNonComputedName | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.Program | TSESTree.PropertyComputedName | TSESTree.PropertyNonComputedName | TSESTree.RestElement | TSESTree.ReturnStatement | TSESTree.SequenceExpression | TSESTree.SpreadElement | TSESTree.Super | TSESTree.SwitchCase | TSESTree.SwitchStatement | TSESTree.TaggedTemplateExpression | TSESTree.TemplateElement | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.ThrowStatement | TSESTree.TryStatement | TSESTree.TSAbstractClassPropertyComputedName | TSESTree.TSAbstractClassPropertyNonComputedName | TSESTree.TSAbstractKeyword | TSESTree.TSAbstractMethodDefinitionComputedName | TSESTree.TSAbstractMethodDefinitionNonComputedName | TSESTree.TSAnyKeyword | TSESTree.TSArrayType | TSESTree.TSAsExpression | TSESTree.TSAsyncKeyword | TSESTree.TSBigIntKeyword | TSESTree.TSBooleanKeyword | TSESTree.TSCallSignatureDeclaration | TSESTree.TSClassImplements | TSESTree.TSConditionalType | TSESTree.TSConstructorType | TSESTree.TSConstructSignatureDeclaration | TSESTree.TSDeclareFunction | TSESTree.TSDeclareKeyword | TSESTree.TSEmptyBodyFunctionExpression | TSESTree.TSEnumDeclaration | TSESTree.TSEnumMemberComputedName | TSESTree.TSEnumMemberNonComputedName | TSESTree.TSExportAssignment | TSESTree.TSExportKeyword | TSESTree.TSExternalModuleReference | TSESTree.TSFunctionType | TSESTree.TSImportEqualsDeclaration | TSESTree.TSImportType | TSESTree.TSIndexedAccessType | TSESTree.TSIndexSignature | TSESTree.TSInferType | TSESTree.TSInterfaceBody | TSESTree.TSInterfaceDeclaration | TSESTree.TSInterfaceHeritage | TSESTree.TSIntersectionType | TSESTree.TSLiteralType | TSESTree.TSMappedType | TSESTree.TSMethodSignatureComputedName | TSESTree.TSMethodSignatureNonComputedName | TSESTree.TSModuleBlock | TSESTree.TSModuleDeclaration | TSESTree.TSNamedTupleMember | TSESTree.TSNamespaceExportDeclaration | TSESTree.TSNeverKeyword | TSESTree.TSNonNullExpression | TSESTree.TSNullKeyword | TSESTree.TSNumberKeyword | TSESTree.TSObjectKeyword | TSESTree.TSOptionalType | TSESTree.TSParameterProperty | TSESTree.TSParenthesizedType | TSESTree.TSPrivateKeyword | TSESTree.TSPropertySignatureComputedName | TSESTree.TSPropertySignatureNonComputedName | TSESTree.TSProtectedKeyword | TSESTree.TSPublicKeyword | TSESTree.TSQualifiedName | TSESTree.TSReadonlyKeyword | TSESTree.TSRestType | TSESTree.TSStaticKeyword | TSESTree.TSStringKeyword | TSESTree.TSSymbolKeyword | TSESTree.TSThisType | TSESTree.TSTupleType | TSESTree.TSTypeAliasDeclaration | TSESTree.TSTypeAnnotation | TSESTree.TSTypeAssertion | TSESTree.TSTypeLiteral | TSESTree.TSTypeOperator | TSESTree.TSTypeParameter | TSESTree.TSTypeParameterDeclaration | TSESTree.TSTypeParameterInstantiation | TSESTree.TSTypePredicate | TSESTree.TSTypeQuery | TSESTree.TSTypeReference | TSESTree.TSUndefinedKeyword | TSESTree.TSUnionType | TSESTree.TSUnknownKeyword | TSESTree.TSVoidKeyword | TSESTree.UnaryExpression | TSESTree.UpdateExpression | TSESTree.VariableDeclaration | TSESTree.VariableDeclarator | TSESTree.WhileStatement | TSESTree.WithStatement | TSESTree.YieldExpression | null | undefined, maybeImplicitGlobal?: boolean | undefined, partial?: boolean | undefined, init?: boolean | undefined): Reference; - READ: 0x1; - WRITE: 0x2; - RW: 0x3; -}; -export { Reference }; -//# sourceMappingURL=Reference.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map deleted file mode 100644 index 1384afbb..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Reference.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,oBAAY,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE5C,UAAU,SAAS;IACjB,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAChC,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;IAEd,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,OAAO,IAAI,OAAO,CAAC;IACnB,MAAM,IAAI,OAAO,CAAC;IAClB,WAAW,IAAI,OAAO,CAAC;IACvB,UAAU,IAAI,OAAO,CAAC;IACtB,WAAW,IAAI,OAAO,CAAC;CACxB;AACD,QAAA,MAAM,SAAS;qBAEC,SAAS,UAAU,SACxB,KAAK,2lKAMX,SAAS;UAEN,GAAG;WACF,GAAG;QACN,GAAG;CACR,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js deleted file mode 100644 index 71a4559a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Reference = void 0; -const reference_1 = __importDefault(require("eslint-scope/lib/reference")); -const Reference = reference_1.default; -exports.Reference = Reference; -//# sourceMappingURL=Reference.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map deleted file mode 100644 index 8b1c95b4..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Reference.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Reference.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Reference.ts"],"names":[],"mappings":";;;;;;AAAA,2EAAyD;AAyBzD,MAAM,SAAS,GAAG,mBAcjB,CAAC;AAEO,8BAAS"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts deleted file mode 100644 index beeb2888..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { TSESTree } from '../ts-estree'; -import { PatternVisitorCallback, PatternVisitorOptions, Visitor } from './Options'; -import { Scope } from './Scope'; -import { ScopeManager } from './ScopeManager'; -interface Referencer extends Visitor { - isInnerMethodDefinition: boolean; - options: any; - scopeManager: SM; - parent?: TSESTree.Node; - currentScope(): Scope; - close(node: TSESTree.Node): void; - pushInnerMethodDefinition(isInnerMethodDefinition: boolean): boolean; - popInnerMethodDefinition(isInnerMethodDefinition: boolean): void; - referencingDefaultValue(pattern: any, assignments: any, maybeImplicitGlobal: any, init: boolean): void; - visitPattern(node: TSESTree.Node, options: PatternVisitorOptions, callback: PatternVisitorCallback): void; - visitFunction(node: TSESTree.Node): void; - visitClass(node: TSESTree.Node): void; - visitProperty(node: TSESTree.Node): void; - visitForIn(node: TSESTree.Node): void; - visitVariableDeclaration(variableTargetScope: any, type: any, node: TSESTree.Node, index: any): void; - AssignmentExpression(node: TSESTree.Node): void; - CatchClause(node: TSESTree.Node): void; - Program(node: TSESTree.Program): void; - Identifier(node: TSESTree.Identifier): void; - UpdateExpression(node: TSESTree.Node): void; - MemberExpression(node: TSESTree.Node): void; - Property(node: TSESTree.Node): void; - MethodDefinition(node: TSESTree.Node): void; - BreakStatement(): void; - ContinueStatement(): void; - LabeledStatement(node: TSESTree.Node): void; - ForStatement(node: TSESTree.Node): void; - ClassExpression(node: TSESTree.Node): void; - ClassDeclaration(node: TSESTree.Node): void; - CallExpression(node: TSESTree.Node): void; - BlockStatement(node: TSESTree.Node): void; - ThisExpression(): void; - WithStatement(node: TSESTree.Node): void; - VariableDeclaration(node: TSESTree.Node): void; - SwitchStatement(node: TSESTree.Node): void; - FunctionDeclaration(node: TSESTree.Node): void; - FunctionExpression(node: TSESTree.Node): void; - ForOfStatement(node: TSESTree.Node): void; - ForInStatement(node: TSESTree.Node): void; - ArrowFunctionExpression(node: TSESTree.Node): void; - ImportDeclaration(node: TSESTree.Node): void; - visitExportDeclaration(node: TSESTree.Node): void; - ExportDeclaration(node: TSESTree.Node): void; - ExportNamedDeclaration(node: TSESTree.Node): void; - ExportSpecifier(node: TSESTree.Node): void; - MetaProperty(): void; -} -declare const Referencer: new (options: any, scopeManager: SM) => Referencer; -export { Referencer }; -//# sourceMappingURL=Referencer.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map deleted file mode 100644 index 37a11bf7..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Referencer.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js deleted file mode 100644 index 4aafa5aa..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Referencer = void 0; -/* eslint-disable @typescript-eslint/no-explicit-any */ -const referencer_1 = __importDefault(require("eslint-scope/lib/referencer")); -const Referencer = referencer_1.default; -exports.Referencer = Referencer; -//# sourceMappingURL=Referencer.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map deleted file mode 100644 index 2d80e28d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Referencer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Referencer.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Referencer.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAuD;AACvD,6EAA2D;AA2E3D,MAAM,UAAU,GAAG,oBAElB,CAAC;AAEO,gCAAU"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts deleted file mode 100644 index ae6bd114..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts +++ /dev/null @@ -1,103 +0,0 @@ -import { TSESTree } from '../ts-estree'; -import { Definition } from './Definition'; -import { Reference, ReferenceFlag } from './Reference'; -import { ScopeManager } from './ScopeManager'; -import { Variable } from './Variable'; -declare type ScopeType = 'block' | 'catch' | 'class' | 'for' | 'function' | 'function-expression-name' | 'global' | 'module' | 'switch' | 'with' | 'TDZ' | 'enum' | 'empty-function'; -interface Scope { - type: ScopeType; - isStrict: boolean; - upper: Scope | null; - childScopes: Scope[]; - variableScope: Scope; - block: TSESTree.Node; - variables: Variable[]; - set: Map; - references: Reference[]; - through: Reference[]; - thisFound?: boolean; - taints: Map; - functionExpressionScope: boolean; - __left: Reference[]; - __shouldStaticallyClose(scopeManager: ScopeManager): boolean; - __shouldStaticallyCloseForGlobal(ref: any): boolean; - __staticCloseRef(ref: any): void; - __dynamicCloseRef(ref: any): void; - __globalCloseRef(ref: any): void; - __close(scopeManager: ScopeManager): Scope; - __isValidResolution(ref: any, variable: any): variable is Variable; - __resolve(ref: Reference): boolean; - __delegateToUpperScope(ref: any): void; - __addDeclaredVariablesOfNode(variable: any, node: TSESTree.Node): void; - __defineGeneric(name: string, set: Map, variables: Variable[], node: TSESTree.Identifier, def: Definition): void; - __define(node: TSESTree.Node, def: Definition): void; - __referencing(node: TSESTree.Node, assign?: ReferenceFlag, writeExpr?: TSESTree.Node, maybeImplicitGlobal?: any, partial?: any, init?: any): void; - __detectEval(): void; - __detectThis(): void; - __isClosed(): boolean; - /** - * returns resolved {Reference} - * @method Scope#resolve - * @param {Espree.Identifier} ident - identifier to be resolved. - * @returns {Reference} reference - */ - resolve(ident: TSESTree.Node): Reference; - /** - * returns this scope is static - * @method Scope#isStatic - * @returns {boolean} static - */ - isStatic(): boolean; - /** - * returns this scope has materialized arguments - * @method Scope#isArgumentsMaterialized - * @returns {boolean} arguments materialized - */ - isArgumentsMaterialized(): boolean; - /** - * returns this scope has materialized `this` reference - * @method Scope#isThisMaterialized - * @returns {boolean} this materialized - */ - isThisMaterialized(): boolean; - isUsedName(name: any): boolean; -} -interface ScopeConstructor { - new (scopeManager: ScopeManager, type: ScopeType, upperScope: Scope | null, block: TSESTree.Node | null, isMethodDefinition: boolean): Scope; -} -declare const Scope: ScopeConstructor; -interface ScopeChildConstructorWithUpperScope { - new (scopeManager: ScopeManager, upperScope: Scope, block: TSESTree.Node | null): T; -} -interface GlobalScope extends Scope { -} -declare const GlobalScope: ScopeConstructor & (new (scopeManager: ScopeManager, block: TSESTree.Node | null) => GlobalScope); -interface ModuleScope extends Scope { -} -declare const ModuleScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface FunctionExpressionNameScope extends Scope { -} -declare const FunctionExpressionNameScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface CatchScope extends Scope { -} -declare const CatchScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface WithScope extends Scope { -} -declare const WithScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface BlockScope extends Scope { -} -declare const BlockScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface SwitchScope extends Scope { -} -declare const SwitchScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface FunctionScope extends Scope { -} -declare const FunctionScope: ScopeConstructor & (new (scopeManager: ScopeManager, upperScope: Scope, block: TSESTree.Node | null, isMethodDefinition: boolean) => FunctionScope); -interface ForScope extends Scope { -} -declare const ForScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -interface ClassScope extends Scope { -} -declare const ClassScope: ScopeConstructor & ScopeChildConstructorWithUpperScope; -export { ScopeType, Scope, GlobalScope, ModuleScope, FunctionExpressionNameScope, CatchScope, WithScope, BlockScope, SwitchScope, FunctionScope, ForScope, ClassScope, }; -//# sourceMappingURL=Scope.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map deleted file mode 100644 index 8b6f342e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Scope.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,aAAK,SAAS,GACV,OAAO,GACP,OAAO,GACP,OAAO,GACP,KAAK,GACL,UAAU,GACV,0BAA0B,GAC1B,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,KAAK,GACL,MAAM,GACN,gBAAgB,CAAC;AAErB,UAAU,KAAK;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,EAAE,CAAC;IACrB,aAAa,EAAE,KAAK,CAAC;IACrB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC;IACrB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3B,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,uBAAuB,EAAE,OAAO,CAAC;IACjC,MAAM,EAAE,SAAS,EAAE,CAAC;IAEpB,uBAAuB,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC;IAC7D,gCAAgC,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;IACpD,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACjC,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IAClC,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,KAAK,CAAC;IAC3C,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,IAAI,QAAQ,CAAC;IACnE,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC;IACnC,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IACvC,4BAA4B,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACvE,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAC1B,SAAS,EAAE,QAAQ,EAAE,EACrB,IAAI,EAAE,QAAQ,CAAC,UAAU,EACzB,GAAG,EAAE,UAAU,GACd,IAAI,CAAC;IAER,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAAC;IAErD,aAAa,CACX,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,CAAC,EAAE,aAAa,EACtB,SAAS,CAAC,EAAE,QAAQ,CAAC,IAAI,EACzB,mBAAmB,CAAC,EAAE,GAAG,EACzB,OAAO,CAAC,EAAE,GAAG,EACb,IAAI,CAAC,EAAE,GAAG,GACT,IAAI,CAAC;IAER,YAAY,IAAI,IAAI,CAAC;IACrB,YAAY,IAAI,IAAI,CAAC;IACrB,UAAU,IAAI,OAAO,CAAC;IACtB;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;IAEzC;;;;OAIG;IACH,QAAQ,IAAI,OAAO,CAAC;IAEpB;;;;OAIG;IACH,uBAAuB,IAAI,OAAO,CAAC;IAEnC;;;;OAIG;IACH,kBAAkB,IAAI,OAAO,CAAC;IAE9B,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC;CAChC;AACD,UAAU,gBAAgB;IACxB,KACE,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,SAAS,EACf,UAAU,EAAE,KAAK,GAAG,IAAI,EACxB,KAAK,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,EAC3B,kBAAkB,EAAE,OAAO,GAC1B,KAAK,CAAC;CACV;AACD,QAAA,MAAM,KAAK,kBAAkC,CAAC;AAE9C,UAAU,mCAAmC,CAAC,CAAC;IAC7C,KACE,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,KAAK,EACjB,KAAK,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,GAC1B,CAAC,CAAC;CACN;AAED,UAAU,WAAY,SAAQ,KAAK;CAAG;AACtC,QAAA,MAAM,WAAW,yCACI,YAAY,SAAS,SAAS,IAAI,GAAG,IAAI,KAAG,WAAW,CAC3E,CAAC;AAEF,UAAU,WAAY,SAAQ,KAAK;CAAG;AACtC,QAAA,MAAM,WAAW,qEACiC,CAAC;AAEnD,UAAU,2BAA4B,SAAQ,KAAK;CAAG;AACtD,QAAA,MAAM,2BAA2B,qFACiC,CAAC;AAEnE,UAAU,UAAW,SAAQ,KAAK;CAAG;AACrC,QAAA,MAAM,UAAU,oEACiC,CAAC;AAElD,UAAU,SAAU,SAAQ,KAAK;CAAG;AACpC,QAAA,MAAM,SAAS,mEACiC,CAAC;AAEjD,UAAU,UAAW,SAAQ,KAAK;CAAG;AACrC,QAAA,MAAM,UAAU,oEACiC,CAAC;AAElD,UAAU,WAAY,SAAQ,KAAK;CAAG;AACtC,QAAA,MAAM,WAAW,qEACiC,CAAC;AAEnD,UAAU,aAAc,SAAQ,KAAK;CAAG;AACxC,QAAA,MAAM,aAAa,yCAED,YAAY,cACd,KAAK,SACV,SAAS,IAAI,GAAG,IAAI,sBACP,OAAO,KAC1B,aAAa,CACjB,CAAC;AAEF,UAAU,QAAS,SAAQ,KAAK;CAAG;AACnC,QAAA,MAAM,QAAQ,kEACiC,CAAC;AAEhD,UAAU,UAAW,SAAQ,KAAK;CAAG;AACrC,QAAA,MAAM,UAAU,oEACiC,CAAC;AAElD,OAAO,EACL,SAAS,EACT,KAAK,EACL,WAAW,EACX,WAAW,EACX,2BAA2B,EAC3B,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,UAAU,GACX,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js deleted file mode 100644 index f4f604fc..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js +++ /dev/null @@ -1,28 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-empty-interface, @typescript-eslint/no-explicit-any */ -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ClassScope = exports.ForScope = exports.FunctionScope = exports.SwitchScope = exports.BlockScope = exports.WithScope = exports.CatchScope = exports.FunctionExpressionNameScope = exports.ModuleScope = exports.GlobalScope = exports.Scope = void 0; -const scope_1 = require("eslint-scope/lib/scope"); -const Scope = scope_1.Scope; -exports.Scope = Scope; -const GlobalScope = scope_1.GlobalScope; -exports.GlobalScope = GlobalScope; -const ModuleScope = scope_1.ModuleScope; -exports.ModuleScope = ModuleScope; -const FunctionExpressionNameScope = scope_1.FunctionExpressionNameScope; -exports.FunctionExpressionNameScope = FunctionExpressionNameScope; -const CatchScope = scope_1.CatchScope; -exports.CatchScope = CatchScope; -const WithScope = scope_1.WithScope; -exports.WithScope = WithScope; -const BlockScope = scope_1.BlockScope; -exports.BlockScope = BlockScope; -const SwitchScope = scope_1.SwitchScope; -exports.SwitchScope = SwitchScope; -const FunctionScope = scope_1.FunctionScope; -exports.FunctionScope = FunctionScope; -const ForScope = scope_1.ForScope; -exports.ForScope = ForScope; -const ClassScope = scope_1.ClassScope; -exports.ClassScope = ClassScope; -//# sourceMappingURL=Scope.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map deleted file mode 100644 index b0d79696..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Scope.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Scope.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Scope.ts"],"names":[],"mappings":";AAAA,8FAA8F;;;AAE9F,kDAYgC;AA8GhC,MAAM,KAAK,GAAG,aAA+B,CAAC;AA2D5C,sBAAK;AAhDP,MAAM,WAAW,GAAG,mBAEnB,CAAC;AA+CA,kCAAW;AA5Cb,MAAM,WAAW,GAAG,mBAC8B,CAAC;AA4CjD,kCAAW;AAzCb,MAAM,2BAA2B,GAAG,mCAC8B,CAAC;AAyCjE,kEAA2B;AAtC7B,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAsChD,gCAAU;AAnCZ,MAAM,SAAS,GAAG,iBAC8B,CAAC;AAmC/C,8BAAS;AAhCX,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAgChD,gCAAU;AA7BZ,MAAM,WAAW,GAAG,mBAC8B,CAAC;AA6BjD,kCAAW;AA1Bb,MAAM,aAAa,GAAG,qBAOrB,CAAC;AAoBA,sCAAa;AAjBf,MAAM,QAAQ,GAAG,gBAC8B,CAAC;AAiB9C,4BAAQ;AAdV,MAAM,UAAU,GAAG,kBAC8B,CAAC;AAchD,gCAAU"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts deleted file mode 100644 index 9b7e929a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { TSESTree } from '../ts-estree'; -import { EcmaVersion } from '../ts-eslint'; -import { Scope } from './Scope'; -import { Variable } from './Variable'; -interface ScopeManagerOptions { - directive?: boolean; - optimistic?: boolean; - ignoreEval?: boolean; - nodejsScope?: boolean; - sourceType?: 'module' | 'script'; - impliedStrict?: boolean; - ecmaVersion?: EcmaVersion; -} -interface ScopeManager { - __options: ScopeManagerOptions; - __currentScope: Scope; - __nodeToScope: WeakMap; - __declaredVariables: WeakMap; - scopes: Scope[]; - globalScope: Scope; - __useDirective(): boolean; - __isOptimistic(): boolean; - __ignoreEval(): boolean; - __isNodejsScope(): boolean; - isModule(): boolean; - isImpliedStrict(): boolean; - isStrictModeSupported(): boolean; - __get(node: TSESTree.Node): Scope | undefined; - getDeclaredVariables(node: TSESTree.Node): Variable[]; - acquire(node: TSESTree.Node, inner?: boolean): Scope | null; - acquireAll(node: TSESTree.Node): Scope | null; - release(node: TSESTree.Node, inner?: boolean): Scope | null; - attach(): void; - detach(): void; - __nestScope(scope: T): T; - __nestGlobalScope(node: TSESTree.Node): Scope; - __nestBlockScope(node: TSESTree.Node): Scope; - __nestFunctionScope(node: TSESTree.Node, isMethodDefinition: boolean): Scope; - __nestForScope(node: TSESTree.Node): Scope; - __nestCatchScope(node: TSESTree.Node): Scope; - __nestWithScope(node: TSESTree.Node): Scope; - __nestClassScope(node: TSESTree.Node): Scope; - __nestSwitchScope(node: TSESTree.Node): Scope; - __nestModuleScope(node: TSESTree.Node): Scope; - __nestFunctionExpressionNameScope(node: TSESTree.Node): Scope; - __isES6(): boolean; -} -declare const ScopeManager: new (options: ScopeManagerOptions) => ScopeManager; -export { ScopeManager, ScopeManagerOptions }; -//# sourceMappingURL=ScopeManager.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map deleted file mode 100644 index 7c9ba533..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ScopeManager.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/ScopeManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js deleted file mode 100644 index c886eb72..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ScopeManager = void 0; -const scope_manager_1 = __importDefault(require("eslint-scope/lib/scope-manager")); -const ScopeManager = scope_manager_1.default; -exports.ScopeManager = ScopeManager; -//# sourceMappingURL=ScopeManager.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map deleted file mode 100644 index 35d90d13..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/ScopeManager.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ScopeManager.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/ScopeManager.ts"],"names":[],"mappings":";;;;;;AAAA,mFAAgE;AAwDhE,MAAM,YAAY,GAAG,uBAEpB,CAAC;AAEO,oCAAY"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts deleted file mode 100644 index a5d6ddff..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { TSESTree } from '../ts-estree'; -import { Reference } from './Reference'; -import { Definition } from './Definition'; -import { Scope } from './Scope'; -interface Variable { - name: string; - identifiers: TSESTree.Identifier[]; - references: Reference[]; - defs: Definition[]; - eslintUsed?: boolean; - stack?: unknown; - tainted?: boolean; - scope?: Scope; -} -declare const Variable: new () => Variable; -export { Variable }; -//# sourceMappingURL=Variable.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map deleted file mode 100644 index 604e1855..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Variable.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/Variable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;IACnC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,QAAA,MAAM,QAAQ,YACJ,QACT,CAAC;AAEF,OAAO,EAAE,QAAQ,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js deleted file mode 100644 index c0fdac2b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Variable = void 0; -const variable_1 = __importDefault(require("eslint-scope/lib/variable")); -const Variable = variable_1.default; -exports.Variable = Variable; -//# sourceMappingURL=Variable.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map deleted file mode 100644 index d6545bb0..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/Variable.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Variable.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/Variable.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAuD;AAiBvD,MAAM,QAAQ,GAAG,kBAEhB,CAAC;AAEO,4BAAQ"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts deleted file mode 100644 index dbcb76bb..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { EcmaVersion } from '../ts-eslint'; -import { TSESTree } from '../ts-estree'; -import { ScopeManager } from './ScopeManager'; -interface AnalysisOptions { - optimistic?: boolean; - directive?: boolean; - ignoreEval?: boolean; - nodejsScope?: boolean; - impliedStrict?: boolean; - fallback?: string | ((node: TSESTree.Node) => string[]); - sourceType?: 'script' | 'module'; - ecmaVersion?: EcmaVersion; -} -declare const analyze: (ast: TSESTree.Node, options?: AnalysisOptions | undefined) => ScopeManager; -export { analyze, AnalysisOptions }; -//# sourceMappingURL=analyze.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map deleted file mode 100644 index 9a3654b6..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/analyze.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,UAAU,eAAe;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC;IACxD,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AACD,QAAA,MAAM,OAAO,QACN,SAAS,IAAI,4CAEf,YAAY,CAAC;AAElB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js deleted file mode 100644 index 7fddff17..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.analyze = void 0; -const eslint_scope_1 = require("eslint-scope"); -const analyze = eslint_scope_1.analyze; -exports.analyze = analyze; -//# sourceMappingURL=analyze.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map deleted file mode 100644 index f015cc4e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/analyze.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/analyze.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AAexD,MAAM,OAAO,GAAG,sBAGC,CAAC;AAET,0BAAO"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.d.ts deleted file mode 100644 index c795b88d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export * from './analyze'; -export * from './Definition'; -export * from './Options'; -export * from './PatternVisitor'; -export * from './Reference'; -export * from './Referencer'; -export * from './Scope'; -export * from './ScopeManager'; -export * from './Variable'; -export declare const version: string; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.d.ts.map deleted file mode 100644 index 26afd66c..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-eslint-scope/index.ts"],"names":[],"mappings":"AAEA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,eAAO,MAAM,OAAO,EAAE,MAAsB,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js deleted file mode 100644 index 34d3243c..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js +++ /dev/null @@ -1,25 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.version = void 0; -const eslint_scope_1 = require("eslint-scope"); -__exportStar(require("./analyze"), exports); -__exportStar(require("./Definition"), exports); -__exportStar(require("./Options"), exports); -__exportStar(require("./PatternVisitor"), exports); -__exportStar(require("./Reference"), exports); -__exportStar(require("./Referencer"), exports); -__exportStar(require("./Scope"), exports); -__exportStar(require("./ScopeManager"), exports); -__exportStar(require("./Variable"), exports); -exports.version = eslint_scope_1.version; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map deleted file mode 100644 index 8872a9fb..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint-scope/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-eslint-scope/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+CAAwD;AAExD,4CAA0B;AAC1B,+CAA6B;AAC7B,4CAA0B;AAC1B,mDAAiC;AACjC,8CAA4B;AAC5B,+CAA6B;AAC7B,0CAAwB;AACxB,iDAA+B;AAC/B,6CAA2B;AACd,QAAA,OAAO,GAAW,sBAAa,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts deleted file mode 100644 index 88d63790..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { TSESTree, AST_TOKEN_TYPES } from '../ts-estree'; -declare namespace AST { - type TokenType = AST_TOKEN_TYPES; - type Token = TSESTree.Token; - type SourceLocation = TSESTree.SourceLocation; - type Range = TSESTree.Range; -} -export { AST }; -//# sourceMappingURL=AST.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map deleted file mode 100644 index 8dca544b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AST.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/AST.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEzD,kBAAU,GAAG,CAAC;IACZ,KAAY,SAAS,GAAG,eAAe,CAAC;IAExC,KAAY,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEnC,KAAY,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;IAErD,KAAY,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;CACpC;AAED,OAAO,EAAE,GAAG,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.js deleted file mode 100644 index 323ed556..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.js +++ /dev/null @@ -1,4 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-namespace */ -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=AST.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.js.map deleted file mode 100644 index 2aa7f04b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/AST.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AST.js","sourceRoot":"","sources":["../../src/ts-eslint/AST.ts"],"names":[],"mappings":";AAAA,oDAAoD"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts deleted file mode 100644 index f996162e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts +++ /dev/null @@ -1,143 +0,0 @@ -import { Linter } from './Linter'; -import { RuleListener, RuleMetaData, RuleModule } from './Rule'; -declare class CLIEngineBase { - /** - * Creates a new instance of the core CLI engine. - * @param providedOptions The options for this instance. - */ - constructor(options: CLIEngine.Options); - /** - * Add a plugin by passing its configuration - * @param name Name of the plugin. - * @param pluginObject Plugin configuration object. - */ - addPlugin(name: string, pluginObject: Linter.Plugin): void; - /** - * Executes the current configuration on an array of file and directory names. - * @param patterns An array of file and directory names. - * @returns The results for all files that were linted. - */ - executeOnFiles(patterns: string[]): CLIEngine.LintReport; - /** - * Executes the current configuration on text. - * @param text A string of JavaScript code to lint. - * @param filename An optional string representing the texts filename. - * @param warnIgnored Always warn when a file is ignored - * @returns The results for the linting. - */ - executeOnText(text: string, filename?: string, warnIgnored?: boolean): CLIEngine.LintReport; - /** - * Returns a configuration object for the given file based on the CLI options. - * This is the same logic used by the ESLint CLI executable to determine configuration for each file it processes. - * @param filePath The path of the file to retrieve a config object for. - * @returns A configuration object for the file. - */ - getConfigForFile(filePath: string): Linter.Config; - /** - * Returns the formatter representing the given format. - * @param format The name of the format to load or the path to a custom formatter. - * @returns The formatter function. - */ - getFormatter(format?: string): CLIEngine.Formatter; - /** - * Checks if a given path is ignored by ESLint. - * @param filePath The path of the file to check. - * @returns Whether or not the given path is ignored. - */ - isPathIgnored(filePath: string): boolean; - /** - * Resolves the patterns passed into `executeOnFiles()` into glob-based patterns for easier handling. - * @param patterns The file patterns passed on the command line. - * @returns The equivalent glob patterns. - */ - resolveFileGlobPatterns(patterns: string[]): string[]; - getRules(): Map>; - /** - * Returns results that only contains errors. - * @param results The results to filter. - * @returns The filtered results. - */ - static getErrorResults(results: CLIEngine.LintResult[]): CLIEngine.LintResult[]; - /** - * Returns the formatter representing the given format or null if the `format` is not a string. - * @param format The name of the format to load or the path to a custom formatter. - * @returns The formatter function. - */ - static getFormatter(format?: string): CLIEngine.Formatter; - /** - * Outputs fixes from the given results to files. - * @param report The report object created by CLIEngine. - */ - static outputFixes(report: CLIEngine.LintReport): void; - static version: string; -} -declare namespace CLIEngine { - interface Options { - allowInlineConfig?: boolean; - baseConfig?: false | { - [name: string]: unknown; - }; - cache?: boolean; - cacheFile?: string; - cacheLocation?: string; - configFile?: string; - cwd?: string; - envs?: string[]; - errorOnUnmatchedPattern?: boolean; - extensions?: string[]; - fix?: boolean; - globals?: string[]; - ignore?: boolean; - ignorePath?: string; - ignorePattern?: string | string[]; - useEslintrc?: boolean; - parser?: string; - parserOptions?: Linter.ParserOptions; - plugins?: string[]; - resolvePluginsRelativeTo?: string; - rules?: { - [name: string]: Linter.RuleLevel | Linter.RuleLevelAndOptions; - }; - rulePaths?: string[]; - reportUnusedDisableDirectives?: boolean; - } - interface LintResult { - filePath: string; - messages: Linter.LintMessage[]; - errorCount: number; - warningCount: number; - fixableErrorCount: number; - fixableWarningCount: number; - output?: string; - source?: string; - } - interface LintReport { - results: LintResult[]; - errorCount: number; - warningCount: number; - fixableErrorCount: number; - fixableWarningCount: number; - usedDeprecatedRules: DeprecatedRuleUse[]; - } - interface DeprecatedRuleUse { - ruleId: string; - replacedBy: string[]; - } - interface LintResultData { - rulesMeta: { - [ruleId: string]: RuleMetaData; - }; - } - type Formatter = (results: LintResult[], data?: LintResultData) => string; -} -declare const CLIEngine_base: typeof CLIEngineBase; -/** - * The underlying utility that runs the ESLint command line interface. This object will read the filesystem for - * configuration and file information but will not output any results. Instead, it allows you direct access to the - * important information so you can deal with the output yourself. - * @deprecated use the ESLint class instead - */ -declare class CLIEngine extends CLIEngine_base { -} -export { CLIEngine }; -//# sourceMappingURL=CLIEngine.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map deleted file mode 100644 index 6d8d24e0..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CLIEngine.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/CLIEngine.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js deleted file mode 100644 index 8ccf2b7e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js +++ /dev/null @@ -1,15 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-namespace */ -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CLIEngine = void 0; -const eslint_1 = require("eslint"); -/** - * The underlying utility that runs the ESLint command line interface. This object will read the filesystem for - * configuration and file information but will not output any results. Instead, it allows you direct access to the - * important information so you can deal with the output yourself. - * @deprecated use the ESLint class instead - */ -class CLIEngine extends eslint_1.CLIEngine { -} -exports.CLIEngine = CLIEngine; -//# sourceMappingURL=CLIEngine.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map deleted file mode 100644 index 4ac14814..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/CLIEngine.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CLIEngine.js","sourceRoot":"","sources":["../../src/ts-eslint/CLIEngine.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,mCAAsD;AAyKtD;;;;;GAKG;AACH,MAAM,SAAU,SAAS,kBAAwC;CAAG;AAE3D,8BAAS"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts deleted file mode 100644 index 248e8fb2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts +++ /dev/null @@ -1,324 +0,0 @@ -import { TSESTree, ParserServices } from '../ts-estree'; -import { ParserOptions as TSParserOptions } from './ParserOptions'; -import { RuleCreateFunction, RuleFix, RuleModule } from './Rule'; -import { Scope } from './Scope'; -import { SourceCode } from './SourceCode'; -declare class LinterBase { - /** - * Initialize the Linter. - * @param config the config object - */ - constructor(config?: Linter.LinterOptions); - /** - * Define a new parser module - * @param parserId Name of the parser - * @param parserModule The parser object - */ - defineParser(parserId: string, parserModule: Linter.ParserModule): void; - /** - * Defines a new linting rule. - * @param ruleId A unique rule identifier - * @param ruleModule Function from context to object mapping AST node types to event handlers - */ - defineRule(ruleId: string, ruleModule: RuleModule | RuleCreateFunction): void; - /** - * Defines many new linting rules. - * @param rulesToDefine map from unique rule identifier to rule - */ - defineRules(rulesToDefine: Record | RuleCreateFunction>): void; - /** - * Gets an object with all loaded rules. - * @returns All loaded rules - */ - getRules(): Map>; - /** - * Gets the `SourceCode` object representing the parsed source. - * @returns The `SourceCode` object. - */ - getSourceCode(): SourceCode; - /** - * Verifies the text against the rules specified by the second argument. - * @param textOrSourceCode The text to parse or a SourceCode object. - * @param config An ESLintConfig instance to configure everything. - * @param filenameOrOptions The optional filename of the file being checked. - * If this is not set, the filename will default to '' in the rule context. - * If this is an object, then it has "filename", "allowInlineConfig", and some properties. - * @returns The results as an array of messages or an empty array if no messages. - */ - verify(textOrSourceCode: SourceCode | string, config: Linter.Config, filenameOrOptions?: string | Linter.VerifyOptions): Linter.LintMessage[]; - /** - * Performs multiple autofix passes over the text until as many fixes as possible have been applied. - * @param text The source text to apply fixes to. - * @param config The ESLint config object to use. - * @param options The ESLint options object to use. - * @returns The result of the fix operation as returned from the SourceCodeFixer. - */ - verifyAndFix(code: string, config: Linter.Config, options: Linter.FixOptions): Linter.FixReport; - /** - * The version from package.json. - */ - readonly version: string; - /** - * The version from package.json. - */ - static readonly version: string; -} -declare namespace Linter { - export interface LinterOptions { - /** - * path to a directory that should be considered as the current working directory. - */ - cwd?: string; - } - export type Severity = 0 | 1 | 2; - export type SeverityString = 'off' | 'warn' | 'error'; - export type RuleLevel = Severity | SeverityString; - export type RuleLevelAndOptions = [RuleLevel, ...unknown[]]; - export type RuleEntry = RuleLevel | RuleLevelAndOptions; - export type RulesRecord = Partial>; - interface BaseConfig { - $schema?: string; - /** - * The environment settings. - */ - env?: { - [name: string]: boolean; - }; - /** - * The path to other config files or the package name of shareable configs. - */ - extends?: string | string[]; - /** - * The global variable settings. - */ - globals?: { - [name: string]: boolean; - }; - /** - * The flag that disables directive comments. - */ - noInlineConfig?: boolean; - /** - * The override settings per kind of files. - */ - overrides?: ConfigOverride[]; - /** - * The path to a parser or the package name of a parser. - */ - parser?: string; - /** - * The parser options. - */ - parserOptions?: ParserOptions; - /** - * The plugin specifiers. - */ - plugins?: string[]; - /** - * The processor specifier. - */ - processor?: string; - /** - * The flag to report unused `eslint-disable` comments. - */ - reportUnusedDisableDirectives?: boolean; - /** - * The rule settings. - */ - rules?: RulesRecord; - /** - * The shared settings. - */ - settings?: { - [name: string]: unknown; - }; - } - export interface ConfigOverride extends BaseConfig { - excludedFiles?: string | string[]; - files: string | string[]; - } - export interface Config extends BaseConfig { - /** - * The glob patterns that ignore to lint. - */ - ignorePatterns?: string | string[]; - /** - * The root flag. - */ - root?: boolean; - } - export type ParserOptions = TSParserOptions; - export interface VerifyOptions { - /** - * Allow/disallow inline comments' ability to change config once it is set. Defaults to true if not supplied. - * Useful if you want to validate JS without comments overriding rules. - */ - allowInlineConfig?: boolean; - /** - * if `true` then the linter doesn't make `fix` properties into the lint result. - */ - disableFixes?: boolean; - /** - * the filename of the source code. - */ - filename?: string; - /** - * the predicate function that selects adopt code blocks. - */ - filterCodeBlock?: (filename: string, text: string) => boolean; - /** - * postprocessor for report messages. - * If provided, this should accept an array of the message lists - * for each code block returned from the preprocessor, apply a mapping to - * the messages as appropriate, and return a one-dimensional array of - * messages. - */ - postprocess?: Processor['postprocess']; - /** - * preprocessor for source text. - * If provided, this should accept a string of source text, and return an array of code blocks to lint. - */ - preprocess?: Processor['preprocess']; - /** - * Adds reported errors for unused `eslint-disable` directives. - */ - reportUnusedDisableDirectives?: boolean | SeverityString; - } - export interface FixOptions extends VerifyOptions { - /** - * Determines whether fixes should be applied. - */ - fix?: boolean; - } - export interface LintSuggestion { - desc: string; - fix: RuleFix; - messageId?: string; - } - export interface LintMessage { - /** - * The 1-based column number. - */ - column: number; - /** - * The 1-based column number of the end location. - */ - endColumn?: number; - /** - * The 1-based line number of the end location. - */ - endLine?: number; - /** - * If `true` then this is a fatal error. - */ - fatal?: true; - /** - * Information for autofix. - */ - fix?: RuleFix; - /** - * The 1-based line number. - */ - line: number; - /** - * The error message. - */ - message: string; - messageId?: string; - nodeType: string; - /** - * The ID of the rule which makes this message. - */ - ruleId: string | null; - /** - * The severity of this message. - */ - severity: Severity; - source: string | null; - /** - * Information for suggestions - */ - suggestions?: LintSuggestion[]; - } - export interface FixReport { - /** - * True, if the code was fixed - */ - fixed: boolean; - /** - * Fixed code text (might be the same as input if no fixes were applied). - */ - output: string; - /** - * Collection of all messages for the given code - */ - messages: LintMessage[]; - } - export type ParserModule = { - parse(text: string, options?: ParserOptions): TSESTree.Program; - } | { - parseForESLint(text: string, options?: ParserOptions): ESLintParseResult; - }; - export interface ESLintParseResult { - ast: TSESTree.Program; - parserServices?: ParserServices; - scopeManager?: Scope.ScopeManager; - visitorKeys?: SourceCode.VisitorKeys; - } - export interface Processor { - /** - * The function to extract code blocks. - */ - preprocess?: (text: string, filename: string) => Array; - /** - * The function to merge messages. - */ - postprocess?: (messagesList: Linter.LintMessage[][], filename: string) => Linter.LintMessage[]; - /** - * If `true` then it means the processor supports autofix. - */ - supportsAutofix?: boolean; - } - export interface Environment { - /** - * The definition of global variables. - */ - globals?: Record; - /** - * The parser options that will be enabled under this environment. - */ - parserOptions?: ParserOptions; - } - export interface Plugin { - /** - * The definition of plugin configs. - */ - configs?: Record; - /** - * The definition of plugin environments. - */ - environments?: Record; - /** - * The definition of plugin processors. - */ - processors?: Record; - /** - * The definition of plugin rules. - */ - rules?: Record>; - } - export {}; -} -declare const Linter_base: typeof LinterBase; -/** - * The Linter object does the actual evaluation of the JavaScript code. It doesn't do any filesystem operations, it - * simply parses and reports on the code. In particular, the Linter object does not process configuration objects - * or files. - */ -declare class Linter extends Linter_base { -} -export { Linter }; -//# sourceMappingURL=Linter.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map deleted file mode 100644 index 5c2bc13e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Linter.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Linter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js deleted file mode 100644 index 4fd16f1b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-namespace */ -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Linter = void 0; -const eslint_1 = require("eslint"); -/** - * The Linter object does the actual evaluation of the JavaScript code. It doesn't do any filesystem operations, it - * simply parses and reports on the code. In particular, the Linter object does not process configuration objects - * or files. - */ -class Linter extends eslint_1.Linter { -} -exports.Linter = Linter; -//# sourceMappingURL=Linter.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map deleted file mode 100644 index 8c8e207d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Linter.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Linter.js","sourceRoot":"","sources":["../../src/ts-eslint/Linter.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,mCAAgD;AA8WhD;;;;GAIG;AACH,MAAM,MAAO,SAAS,eAAkC;CAAG;AAElD,wBAAM"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts deleted file mode 100644 index d864322b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { DebugLevel, EcmaVersion, ParserOptions, SourceType, } from '@typescript-eslint/types'; -//# sourceMappingURL=ParserOptions.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map deleted file mode 100644 index 33c6d0e0..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ParserOptions.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/ParserOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,aAAa,EACb,UAAU,GACX,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.js deleted file mode 100644 index 40b03dd5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=ParserOptions.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.js.map deleted file mode 100644 index 7bd7a94c..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/ParserOptions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ParserOptions.js","sourceRoot":"","sources":["../../src/ts-eslint/ParserOptions.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts deleted file mode 100644 index 66a65991..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts +++ /dev/null @@ -1,369 +0,0 @@ -import { JSONSchema4 } from '../json-schema'; -import { ParserServices, TSESTree } from '../ts-estree'; -import { AST } from './AST'; -import { Linter } from './Linter'; -import { Scope } from './Scope'; -import { SourceCode } from './SourceCode'; -interface RuleMetaDataDocs { - /** - * The general category the rule falls within - */ - category: 'Best Practices' | 'Stylistic Issues' | 'Variables' | 'Possible Errors'; - /** - * Concise description of the rule - */ - description: string; - /** - * The recommendation level for the rule. - * Used by the build tools to generate the recommended config. - * Set to false to not include it as a recommendation - */ - recommended: 'error' | 'warn' | false; - /** - * The URL of the rule's docs - */ - url: string; - /** - * Specifies whether the rule can return suggestions. - */ - suggestion?: boolean; - /** - * Does the rule require us to create a full TypeScript Program in order for it - * to type-check code. This is only used for documentation purposes. - */ - requiresTypeChecking?: boolean; - /** - * Does the rule extend (or is it based off of) an ESLint code rule? - * Alternately accepts the name of the base rule, in case the rule has been renamed. - * This is only used for documentation purposes. - */ - extendsBaseRule?: boolean | string; -} -interface RuleMetaData { - /** - * True if the rule is deprecated, false otherwise - */ - deprecated?: boolean; - /** - * Documentation for the rule, unnecessary for custom rules/plugins - */ - docs?: RuleMetaDataDocs; - /** - * The fixer category. Omit if there is no fixer - */ - fixable?: 'code' | 'whitespace'; - /** - * A map of messages which the rule can report. - * The key is the messageId, and the string is the parameterised error string. - * See: https://eslint.org/docs/developer-guide/working-with-rules#messageids - */ - messages: Record; - /** - * The type of rule. - * - `"problem"` means the rule is identifying code that either will cause an error or may cause a confusing behavior. Developers should consider this a high priority to resolve. - * - `"suggestion"` means the rule is identifying something that could be done in a better way but no errors will occur if the code isn’t changed. - * - `"layout"` means the rule cares primarily about whitespace, semicolons, commas, and parentheses, all the parts of the program that determine how the code looks rather than how it executes. These rules work on parts of the code that aren’t specified in the AST. - */ - type: 'suggestion' | 'problem' | 'layout'; - /** - * The name of the rule this rule was replaced by, if it was deprecated. - */ - replacedBy?: string[]; - /** - * The options schema. Supply an empty array if there are no options. - */ - schema: JSONSchema4 | JSONSchema4[]; -} -interface RuleFix { - range: AST.Range; - text: string; -} -interface RuleFixer { - insertTextAfter(nodeOrToken: TSESTree.Node | TSESTree.Token, text: string): RuleFix; - insertTextAfterRange(range: AST.Range, text: string): RuleFix; - insertTextBefore(nodeOrToken: TSESTree.Node | TSESTree.Token, text: string): RuleFix; - insertTextBeforeRange(range: AST.Range, text: string): RuleFix; - remove(nodeOrToken: TSESTree.Node | TSESTree.Token): RuleFix; - removeRange(range: AST.Range): RuleFix; - replaceText(nodeOrToken: TSESTree.Node | TSESTree.Token, text: string): RuleFix; - replaceTextRange(range: AST.Range, text: string): RuleFix; -} -declare type ReportFixFunction = (fixer: RuleFixer) => null | RuleFix | RuleFix[] | IterableIterator; -declare type ReportSuggestionArray = ReportDescriptorBase[]; -interface ReportDescriptorBase { - /** - * The parameters for the message string associated with `messageId`. - */ - readonly data?: Readonly>; - /** - * The fixer function. - */ - readonly fix?: ReportFixFunction | null; - /** - * The messageId which is being reported. - */ - readonly messageId: TMessageIds; -} -interface ReportDescriptorWithSuggestion extends ReportDescriptorBase { - /** - * 6.7's Suggestions API - */ - readonly suggest?: Readonly> | null; -} -interface ReportDescriptorNodeOptionalLoc { - /** - * The Node or AST Token which the report is being attached to - */ - readonly node: TSESTree.Node | TSESTree.Comment | TSESTree.Token; - /** - * An override of the location of the report - */ - readonly loc?: Readonly | Readonly; -} -interface ReportDescriptorLocOnly { - /** - * An override of the location of the report - */ - loc: Readonly | Readonly; -} -declare type ReportDescriptor = ReportDescriptorWithSuggestion & (ReportDescriptorNodeOptionalLoc | ReportDescriptorLocOnly); -interface RuleContext { - /** - * The rule ID. - */ - id: string; - /** - * An array of the configured options for this rule. - * This array does not include the rule severity. - */ - options: TOptions; - /** - * The name of the parser from configuration. - */ - parserPath: string; - /** - * The parser options configured for this run - */ - parserOptions: Linter.ParserOptions; - /** - * An object containing parser-provided services for rules - */ - parserServices?: ParserServices; - /** - * The shared settings from configuration. - * We do not have any shared settings in this plugin. - */ - settings: Record; - /** - * Returns an array of the ancestors of the currently-traversed node, starting at - * the root of the AST and continuing through the direct parent of the current node. - * This array does not include the currently-traversed node itself. - */ - getAncestors(): TSESTree.Node[]; - /** - * Returns a list of variables declared by the given node. - * This information can be used to track references to variables. - */ - getDeclaredVariables(node: TSESTree.Node): Scope.Variable[]; - /** - * Returns the filename associated with the source. - */ - getFilename(): string; - /** - * Returns the scope of the currently-traversed node. - * This information can be used track references to variables. - */ - getScope(): Scope.Scope; - /** - * Returns a SourceCode object that you can use to work with the source that - * was passed to ESLint. - */ - getSourceCode(): Readonly; - /** - * Marks a variable with the given name in the current scope as used. - * This affects the no-unused-vars rule. - */ - markVariableAsUsed(name: string): boolean; - /** - * Reports a problem in the code. - */ - report(descriptor: ReportDescriptor): void; -} -declare type RuleFunction = (node: T) => void; -interface RuleListener { - [nodeSelector: string]: RuleFunction | undefined; - ArrayExpression?: RuleFunction; - ArrayPattern?: RuleFunction; - ArrowFunctionExpression?: RuleFunction; - AssignmentPattern?: RuleFunction; - AssignmentExpression?: RuleFunction; - AwaitExpression?: RuleFunction; - BigIntLiteral?: RuleFunction; - BinaryExpression?: RuleFunction; - BlockStatement?: RuleFunction; - BreakStatement?: RuleFunction; - CallExpression?: RuleFunction; - CatchClause?: RuleFunction; - ChainExpression?: RuleFunction; - ClassBody?: RuleFunction; - ClassDeclaration?: RuleFunction; - ClassExpression?: RuleFunction; - ClassProperty?: RuleFunction; - Comment?: RuleFunction; - ConditionalExpression?: RuleFunction; - ContinueStatement?: RuleFunction; - DebuggerStatement?: RuleFunction; - Decorator?: RuleFunction; - DoWhileStatement?: RuleFunction; - EmptyStatement?: RuleFunction; - ExportAllDeclaration?: RuleFunction; - ExportDefaultDeclaration?: RuleFunction; - ExportNamedDeclaration?: RuleFunction; - ExportSpecifier?: RuleFunction; - ExpressionStatement?: RuleFunction; - ForInStatement?: RuleFunction; - ForOfStatement?: RuleFunction; - ForStatement?: RuleFunction; - FunctionDeclaration?: RuleFunction; - FunctionExpression?: RuleFunction; - Identifier?: RuleFunction; - IfStatement?: RuleFunction; - ImportDeclaration?: RuleFunction; - ImportDefaultSpecifier?: RuleFunction; - ImportExpression?: RuleFunction; - ImportNamespaceSpecifier?: RuleFunction; - ImportSpecifier?: RuleFunction; - JSXAttribute?: RuleFunction; - JSXClosingElement?: RuleFunction; - JSXClosingFragment?: RuleFunction; - JSXElement?: RuleFunction; - JSXEmptyExpression?: RuleFunction; - JSXExpressionContainer?: RuleFunction; - JSXFragment?: RuleFunction; - JSXIdentifier?: RuleFunction; - JSXMemberExpression?: RuleFunction; - JSXOpeningElement?: RuleFunction; - JSXOpeningFragment?: RuleFunction; - JSXSpreadAttribute?: RuleFunction; - JSXSpreadChild?: RuleFunction; - JSXText?: RuleFunction; - LabeledStatement?: RuleFunction; - Literal?: RuleFunction; - LogicalExpression?: RuleFunction; - MemberExpression?: RuleFunction; - MetaProperty?: RuleFunction; - MethodDefinition?: RuleFunction; - NewExpression?: RuleFunction; - ObjectExpression?: RuleFunction; - ObjectPattern?: RuleFunction; - Program?: RuleFunction; - Property?: RuleFunction; - RestElement?: RuleFunction; - ReturnStatement?: RuleFunction; - SequenceExpression?: RuleFunction; - SpreadElement?: RuleFunction; - Super?: RuleFunction; - SwitchCase?: RuleFunction; - SwitchStatement?: RuleFunction; - TaggedTemplateExpression?: RuleFunction; - TemplateElement?: RuleFunction; - TemplateLiteral?: RuleFunction; - ThisExpression?: RuleFunction; - ThrowStatement?: RuleFunction; - Token?: RuleFunction; - TryStatement?: RuleFunction; - TSAbstractClassProperty?: RuleFunction; - TSAbstractKeyword?: RuleFunction; - TSAbstractMethodDefinition?: RuleFunction; - TSAnyKeyword?: RuleFunction; - TSArrayType?: RuleFunction; - TSAsExpression?: RuleFunction; - TSAsyncKeyword?: RuleFunction; - TSBigIntKeyword?: RuleFunction; - TSBooleanKeyword?: RuleFunction; - TSCallSignatureDeclaration?: RuleFunction; - TSClassImplements?: RuleFunction; - TSConditionalType?: RuleFunction; - TSConstructorType?: RuleFunction; - TSConstructSignatureDeclaration?: RuleFunction; - TSDeclareKeyword?: RuleFunction; - TSDeclareFunction?: RuleFunction; - TSEmptyBodyFunctionExpression?: RuleFunction; - TSEnumDeclaration?: RuleFunction; - TSEnumMember?: RuleFunction; - TSExportAssignment?: RuleFunction; - TSExportKeyword?: RuleFunction; - TSExternalModuleReference?: RuleFunction; - TSFunctionType?: RuleFunction; - TSImportEqualsDeclaration?: RuleFunction; - TSImportType?: RuleFunction; - TSIndexedAccessType?: RuleFunction; - TSIndexSignature?: RuleFunction; - TSInferType?: RuleFunction; - TSInterfaceBody?: RuleFunction; - TSInterfaceDeclaration?: RuleFunction; - TSInterfaceHeritage?: RuleFunction; - TSIntersectionType?: RuleFunction; - TSLiteralType?: RuleFunction; - TSMappedType?: RuleFunction; - TSMethodSignature?: RuleFunction; - TSModuleBlock?: RuleFunction; - TSModuleDeclaration?: RuleFunction; - TSNamespaceExportDeclaration?: RuleFunction; - TSNeverKeyword?: RuleFunction; - TSNonNullExpression?: RuleFunction; - TSNullKeyword?: RuleFunction; - TSNumberKeyword?: RuleFunction; - TSObjectKeyword?: RuleFunction; - TSOptionalType?: RuleFunction; - TSParameterProperty?: RuleFunction; - TSParenthesizedType?: RuleFunction; - TSPrivateKeyword?: RuleFunction; - TSPropertySignature?: RuleFunction; - TSProtectedKeyword?: RuleFunction; - TSPublicKeyword?: RuleFunction; - TSQualifiedName?: RuleFunction; - TSReadonlyKeyword?: RuleFunction; - TSRestType?: RuleFunction; - TSStaticKeyword?: RuleFunction; - TSStringKeyword?: RuleFunction; - TSSymbolKeyword?: RuleFunction; - TSThisType?: RuleFunction; - TSTupleType?: RuleFunction; - TSTypeAliasDeclaration?: RuleFunction; - TSTypeAnnotation?: RuleFunction; - TSTypeAssertion?: RuleFunction; - TSTypeLiteral?: RuleFunction; - TSTypeOperator?: RuleFunction; - TSTypeParameter?: RuleFunction; - TSTypeParameterDeclaration?: RuleFunction; - TSTypeParameterInstantiation?: RuleFunction; - TSTypePredicate?: RuleFunction; - TSTypeQuery?: RuleFunction; - TSTypeReference?: RuleFunction; - TSUndefinedKeyword?: RuleFunction; - TSUnionType?: RuleFunction; - TSUnknownKeyword?: RuleFunction; - TSVoidKeyword?: RuleFunction; - UnaryExpression?: RuleFunction; - UpdateExpression?: RuleFunction; - VariableDeclaration?: RuleFunction; - VariableDeclarator?: RuleFunction; - WhileStatement?: RuleFunction; - WithStatement?: RuleFunction; - YieldExpression?: RuleFunction; -} -interface RuleModule { - /** - * Metadata about the rule - */ - meta: RuleMetaData; - /** - * Function which returns an object with methods that ESLint calls to “visit” - * nodes while traversing the abstract syntax tree. - */ - create(context: Readonly>): TRuleListener; -} -declare type RuleCreateFunction = (context: Readonly>) => RuleListener; -export { ReportDescriptor, ReportFixFunction, ReportSuggestionArray, RuleContext, RuleCreateFunction, RuleFix, RuleFixer, RuleFunction, RuleListener, RuleMetaData, RuleMetaDataDocs, RuleModule, }; -//# sourceMappingURL=Rule.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map deleted file mode 100644 index 0e858f84..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.js deleted file mode 100644 index 8113a7eb..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=Rule.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.js.map deleted file mode 100644 index 88c1f037..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Rule.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Rule.js","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts deleted file mode 100644 index 22765608..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts +++ /dev/null @@ -1,137 +0,0 @@ -import { AST_NODE_TYPES, AST_TOKEN_TYPES } from '../ts-estree'; -import { ParserOptions } from './ParserOptions'; -import { RuleModule } from './Rule'; -interface ValidTestCase> { - /** - * Code for the test case. - */ - readonly code: string; - /** - * Environments for the test case. - */ - readonly env?: Readonly>; - /** - * The fake filename for the test case. Useful for rules that make assertion about filenames. - */ - readonly filename?: string; - /** - * The additional global variables. - */ - readonly globals?: Record; - /** - * Options for the test case. - */ - readonly options?: Readonly; - /** - * The absolute path for the parser. - */ - readonly parser?: string; - /** - * Options for the parser. - */ - readonly parserOptions?: Readonly; - /** - * Settings for the test case. - */ - readonly settings?: Readonly>; -} -interface SuggestionOutput { - /** - * Reported message ID. - */ - readonly messageId: TMessageIds; - /** - * The data used to fill the message template. - */ - readonly data?: Readonly>; - /** - * NOTE: Suggestions will be applied as a stand-alone change, without triggering multi-pass fixes. - * Each individual error has its own suggestion, so you have to show the correct, _isolated_ output for each suggestion. - */ - readonly output: string; -} -interface InvalidTestCase> extends ValidTestCase { - /** - * Expected errors. - */ - readonly errors: TestCaseError[]; - /** - * The expected code after autofixes are applied. If set to `null`, the test runner will assert that no autofix is suggested. - */ - readonly output?: string | null; -} -interface TestCaseError { - /** - * The 1-based column number of the reported start location. - */ - readonly column?: number; - /** - * The data used to fill the message template. - */ - readonly data?: Readonly>; - /** - * The 1-based column number of the reported end location. - */ - readonly endColumn?: number; - /** - * The 1-based line number of the reported end location. - */ - readonly endLine?: number; - /** - * The 1-based line number of the reported start location. - */ - readonly line?: number; - /** - * Reported message ID. - */ - readonly messageId: TMessageIds; - /** - * Reported suggestions. - */ - readonly suggestions?: SuggestionOutput[] | null; - /** - * The type of the reported AST node. - */ - readonly type?: AST_NODE_TYPES | AST_TOKEN_TYPES; -} -interface RunTests> { - readonly valid: (ValidTestCase | string)[]; - readonly invalid: InvalidTestCase[]; -} -interface RuleTesterConfig { - readonly parser: string; - readonly parserOptions?: Readonly; -} -declare class RuleTesterBase { - /** - * Creates a new instance of RuleTester. - * @param testerConfig extra configuration for the tester - */ - constructor(testerConfig?: RuleTesterConfig); - /** - * Adds a new rule test to execute. - * @param ruleName The name of the rule to run. - * @param rule The rule to test. - * @param test The collection of tests to run. - */ - run>(ruleName: string, rule: RuleModule, tests: RunTests): void; - /** - * If you supply a value to this property, the rule tester will call this instead of using the version defined on - * the global namespace. - * @param text a string describing the rule - * @param callback the test callback - */ - static describe?: (text: string, callback: () => void) => void; - /** - * If you supply a value to this property, the rule tester will call this instead of using the version defined on - * the global namespace. - * @param text a string describing the test case - * @param callback the test callback - */ - static it?: (text: string, callback: () => void) => void; -} -declare const RuleTester_base: typeof RuleTesterBase; -declare class RuleTester extends RuleTester_base { -} -export { InvalidTestCase, SuggestionOutput, RuleTester, RuleTesterConfig, RunTests, TestCaseError, ValidTestCase, }; -//# sourceMappingURL=RuleTester.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map deleted file mode 100644 index 045a474f..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RuleTester.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/RuleTester.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js deleted file mode 100644 index f31d0a67..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js +++ /dev/null @@ -1,8 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RuleTester = void 0; -const eslint_1 = require("eslint"); -class RuleTester extends eslint_1.RuleTester { -} -exports.RuleTester = RuleTester; -//# sourceMappingURL=RuleTester.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map deleted file mode 100644 index 4fe5fc64..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/RuleTester.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RuleTester.js","sourceRoot":"","sources":["../../src/ts-eslint/RuleTester.ts"],"names":[],"mappings":";;;AAAA,mCAAwD;AAiKxD,MAAM,UAAW,SAAS,mBAA0C;CAAG;AAKrE,gCAAU"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts deleted file mode 100644 index 004dec4a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import * as scopeManager from '@typescript-eslint/scope-manager'; -import { TSESTree } from '@typescript-eslint/types'; -declare namespace Scope { - class ESLintScopeVariable { - readonly defs: Definition[]; - readonly identifiers: TSESTree.Identifier[]; - readonly name: string; - readonly references: Reference[]; - readonly scope: Scope; - /** - * Written to by ESLint. - * If this key exists, this variable is a global variable added by ESLint. - * If this is `true`, this variable can be assigned arbitrary values. - * If this is `false`, this variable is readonly. - */ - writeable?: boolean; - /** - * Written to by ESLint. - * This property is undefined if there are no globals directive comments. - * The array of globals directive comments which defined this global variable in the source code file. - */ - eslintExplicitGlobal?: boolean; - /** - * Written to by ESLint. - * The configured value in config files. This can be different from `variable.writeable` if there are globals directive comments. - */ - eslintImplicitGlobalSetting?: 'readonly' | 'writable'; - /** - * Written to by ESLint. - * If this key exists, it is a global variable added by ESLint. - * If `true`, this global variable was defined by a globals directive comment in the source code file. - */ - eslintExplicitGlobalComments?: TSESTree.Comment[]; - } - export type ScopeManager = scopeManager.ScopeManager; - export type Reference = scopeManager.Reference; - export type Variable = scopeManager.Variable | ESLintScopeVariable; - export type Scope = scopeManager.Scope; - export type DefinitionType = scopeManager.Definition; - export type Definition = scopeManager.Definition; - export {}; -} -export { Scope }; -//# sourceMappingURL=Scope.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map deleted file mode 100644 index 34646229..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Scope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,kBAAU,KAAK,CAAC;IAGd,MAAc,mBAAmB;QAC/B,SAAgB,IAAI,EAAE,UAAU,EAAE,CAAC;QACnC,SAAgB,WAAW,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;QACnD,SAAgB,IAAI,EAAE,MAAM,CAAC;QAC7B,SAAgB,UAAU,EAAE,SAAS,EAAE,CAAC;QACxC,SAAgB,KAAK,EAAE,KAAK,CAAC;QAE7B;;;;;WAKG;QACI,SAAS,CAAC,EAAE,OAAO,CAAC;QAE3B;;;;WAIG;QACI,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAEtC;;;WAGG;QACI,2BAA2B,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;QAE7D;;;;WAIG;QACI,4BAA4B,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC1D;IAED,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;IACrD,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;IAC/C,MAAM,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,GAAG,mBAAmB,CAAC;IACnE,MAAM,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;IAEvC,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,UAAU,CAAC;IACrD,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;;CAClD;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js deleted file mode 100644 index 3d9d67b9..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-namespace */ -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Scope = void 0; -var Scope; -(function (Scope) { -})(Scope || (Scope = {})); -exports.Scope = Scope; -//# sourceMappingURL=Scope.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map deleted file mode 100644 index bf72f5e5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/Scope.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Scope.js","sourceRoot":"","sources":["../../src/ts-eslint/Scope.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAKpD,IAAU,KAAK,CA8Cd;AA9CD,WAAU,KAAK;AA8Cf,CAAC,EA9CS,KAAK,KAAL,KAAK,QA8Cd;AAEQ,sBAAK"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts deleted file mode 100644 index 5d5b1936..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts +++ /dev/null @@ -1,350 +0,0 @@ -import { ParserServices, TSESTree } from '../ts-estree'; -import { Scope } from './Scope'; -declare class TokenStore { - /** - * Checks whether any comments exist or not between the given 2 nodes. - * @param left The node to check. - * @param right The node to check. - * @returns `true` if one or more comments exist. - */ - commentsExistBetween(left: TSESTree.Node | TSESTree.Token, right: TSESTree.Node | TSESTree.Token): boolean; - /** - * Gets all comment tokens directly after the given node or token. - * @param nodeOrToken The AST node or token to check for adjacent comment tokens. - * @returns An array of comments in occurrence order. - */ - getCommentsAfter(nodeOrToken: TSESTree.Node | TSESTree.Token): TSESTree.Comment[]; - /** - * Gets all comment tokens directly before the given node or token. - * @param nodeOrToken The AST node or token to check for adjacent comment tokens. - * @returns An array of comments in occurrence order. - */ - getCommentsBefore(nodeOrToken: TSESTree.Node | TSESTree.Token): TSESTree.Comment[]; - /** - * Gets all comment tokens inside the given node. - * @param node The AST node to get the comments for. - * @returns An array of comments in occurrence order. - */ - getCommentsInside(node: TSESTree.Node): TSESTree.Comment[]; - /** - * Gets the first token of the given node. - * @param node The AST node. - * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. - * @returns An object representing the token. - */ - getFirstToken(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets the first token between two non-overlapping nodes. - * @param left Node before the desired token range. - * @param right Node after the desired token range. - * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. - * @returns An object representing the token. - */ - getFirstTokenBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets the first `count` tokens of the given node. - * @param node The AST node. - * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. - * @returns Tokens. - */ - getFirstTokens(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets the first `count` tokens between two non-overlapping nodes. - * @param left Node before the desired token range. - * @param right Node after the desired token range. - * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. - * @returns Tokens between left and right. - */ - getFirstTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets the last token of the given node. - * @param node The AST node. - * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. - * @returns An object representing the token. - */ - getLastToken(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets the last token between two non-overlapping nodes. - * @param left Node before the desired token range. - * @param right Node after the desired token range. - * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. - * @returns An object representing the token. - */ - getLastTokenBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets the last `count` tokens of the given node. - * @param node The AST node. - * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. - * @returns Tokens. - */ - getLastTokens(node: TSESTree.Node, options?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets the last `count` tokens between two non-overlapping nodes. - * @param left Node before the desired token range. - * @param right Node after the desired token range. - * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. - * @returns Tokens between left and right. - */ - getLastTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets the token that follows a given node or token. - * @param node The AST node or token. - * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. - * @returns An object representing the token. - */ - getTokenAfter(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets the token that precedes a given node or token. - * @param node The AST node or token. - * @param options The option object - * @returns An object representing the token. - */ - getTokenBefore(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets the token starting at the specified index. - * @param offset Index of the start of the token's range. - * @param option The option object. If this is a number then it's `options.skip`. If this is a function then it's `options.filter`. - * @returns The token starting at index, or null if no such token. - */ - getTokenByRangeStart(offset: number, options?: T): SourceCode.ReturnTypeFromOptions | null; - /** - * Gets all tokens that are related to the given node. - * @param node The AST node. - * @param beforeCount The number of tokens before the node to retrieve. - * @param afterCount The number of tokens after the node to retrieve. - * @returns Array of objects representing tokens. - */ - getTokens(node: TSESTree.Node, beforeCount?: number, afterCount?: number): TSESTree.Token[]; - /** - * Gets all tokens that are related to the given node. - * @param node The AST node. - * @param options The option object. If this is a function then it's `options.filter`. - * @returns Array of objects representing tokens. - */ - getTokens(node: TSESTree.Node, options: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets the `count` tokens that follows a given node or token. - * @param node The AST node. - * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. - * @returns Tokens. - */ - getTokensAfter(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets the `count` tokens that precedes a given node or token. - * @param node The AST node. - * @param options The option object. If this is a number then it's `options.count`. If this is a function then it's `options.filter`. - * @returns Tokens. - */ - getTokensBefore(node: TSESTree.Node | TSESTree.Token | TSESTree.Comment, options?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets all of the tokens between two non-overlapping nodes. - * @param left Node before the desired token range. - * @param right Node after the desired token range. - * @param options The option object. If this is a function then it's `options.filter`. - * @returns Tokens between left and right. - */ - getTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, padding?: T): SourceCode.ReturnTypeFromOptions[]; - /** - * Gets all of the tokens between two non-overlapping nodes. - * @param left Node before the desired token range. - * @param right Node after the desired token range. - * @param padding Number of extra tokens on either side of center. - * @returns Tokens between left and right. - */ - getTokensBetween(left: TSESTree.Node | TSESTree.Token | TSESTree.Comment, right: TSESTree.Node | TSESTree.Token | TSESTree.Comment, padding?: number): SourceCode.ReturnTypeFromOptions[]; -} -declare class SourceCodeBase extends TokenStore { - /** - * Represents parsed source code. - * @param text The source code text. - * @param ast The Program node of the AST representing the code. This AST should be created from the text that BOM was stripped. - */ - constructor(text: string, ast: SourceCode.Program); - /** - * Represents parsed source code. - * @param config The config object. - */ - constructor(config: SourceCode.SourceCodeConfig); - /** - * The parsed AST for the source code. - */ - ast: SourceCode.Program; - /** - * Retrieves an array containing all comments in the source code. - * @returns An array of comment nodes. - */ - getAllComments(): TSESTree.Comment[]; - /** - * Gets all comments for the given node. - * @param node The AST node to get the comments for. - * @returns An object containing a leading and trailing array of comments indexed by their position. - */ - getComments(node: TSESTree.Node): { - leading: TSESTree.Comment[]; - trailing: TSESTree.Comment[]; - }; - /** - * Converts a (line, column) pair into a range index. - * @param loc A line/column location - * @returns The range index of the location in the file. - */ - getIndexFromLoc(location: TSESTree.LineAndColumnData): number; - /** - * Gets the entire source text split into an array of lines. - * @returns The source text as an array of lines. - */ - getLines(): string[]; - /** - * Converts a source text index into a (line, column) pair. - * @param index The index of a character in a file - * @returns A {line, column} location object with a 0-indexed column - */ - getLocFromIndex(index: number): TSESTree.LineAndColumnData; - /** - * Gets the deepest node containing a range index. - * @param index Range index of the desired node. - * @returns The node if found or `null` if not found. - */ - getNodeByRangeIndex(index: number): TSESTree.Node | null; - /** - * Gets the source code for the given node. - * @param node The AST node to get the text for. - * @param beforeCount The number of characters before the node to retrieve. - * @param afterCount The number of characters after the node to retrieve. - * @returns The text representing the AST node. - */ - getText(node?: TSESTree.Node, beforeCount?: number, afterCount?: number): string; - /** - * The flag to indicate that the source code has Unicode BOM. - */ - hasBOM: boolean; - /** - * Determines if two nodes or tokens have at least one whitespace character - * between them. Order does not matter. Returns false if the given nodes or - * tokens overlap. - * This was added in v6.7.0. - * @since 6.7.0 - * @param first The first node or token to check between. - * @param second The second node or token to check between. - * @returns True if there is a whitespace character between any of the tokens found between the two given nodes or tokens. - */ - isSpaceBetween?(first: TSESTree.Token | TSESTree.Comment | TSESTree.Node, second: TSESTree.Token | TSESTree.Comment | TSESTree.Node): boolean; - /** - * Determines if two nodes or tokens have at least one whitespace character - * between them. Order does not matter. Returns false if the given nodes or - * tokens overlap. - * For backward compatibility, this method returns true if there are - * `JSXText` tokens that contain whitespace between the two. - * @param first The first node or token to check between. - * @param second The second node or token to check between. - * @returns {boolean} True if there is a whitespace character between - * any of the tokens found between the two given nodes or tokens. - * @deprecated in favor of isSpaceBetween - */ - isSpaceBetweenTokens(first: TSESTree.Token, second: TSESTree.Token): boolean; - /** - * The source code split into lines according to ECMA-262 specification. - * This is done to avoid each rule needing to do so separately. - */ - lines: string[]; - /** - * The indexes in `text` that each line starts - */ - lineStartIndices: number[]; - /** - * The parser services of this source code. - */ - parserServices: ParserServices; - /** - * The scope of this source code. - */ - scopeManager: Scope.ScopeManager | null; - /** - * The original text source code. BOM was stripped from this text. - */ - text: string; - /** - * All of the tokens and comments in the AST. - */ - tokensAndComments: (TSESTree.Comment | TSESTree.Token)[]; - /** - * The visitor keys to traverse AST. - */ - visitorKeys: SourceCode.VisitorKeys; - /** - * Split the source code into multiple lines based on the line delimiters. - * @param text Source code as a string. - * @returns Array of source code lines. - */ - static splitLines(text: string): string[]; -} -declare namespace SourceCode { - interface Program extends TSESTree.Program { - comments: TSESTree.Comment[]; - tokens: TSESTree.Token[]; - } - interface SourceCodeConfig { - /** - * The Program node of the AST representing the code. This AST should be created from the text that BOM was stripped. - */ - ast: Program; - /** - * The parser services. - */ - parserServices: ParserServices | null; - /** - * The scope of this source code. - */ - scopeManager: Scope.ScopeManager | null; - /** - * The source code text. - */ - text: string; - /** - * The visitor keys to traverse AST. - */ - visitorKeys: VisitorKeys | null; - } - interface VisitorKeys { - [nodeType: string]: string[]; - } - type FilterPredicate = (tokenOrComment: TSESTree.Token | TSESTree.Comment) => boolean; - type ReturnTypeFromOptions = T extends { - includeComments: true; - } ? TSESTree.Token : Exclude; - type CursorWithSkipOptions = number | FilterPredicate | { - /** - * The predicate function to choose tokens. - */ - filter?: FilterPredicate; - /** - * The flag to iterate comments as well. - */ - includeComments?: boolean; - /** - * The count of tokens the cursor skips. - */ - skip?: number; - }; - type CursorWithCountOptions = number | FilterPredicate | { - /** - * The predicate function to choose tokens. - */ - filter?: FilterPredicate; - /** - * The flag to iterate comments as well. - */ - includeComments?: boolean; - /** - * The maximum count of tokens the cursor iterates. - */ - count?: number; - }; -} -declare const SourceCode_base: typeof SourceCodeBase; -declare class SourceCode extends SourceCode_base { -} -export { SourceCode }; -//# sourceMappingURL=SourceCode.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map deleted file mode 100644 index 18f49a7f..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SourceCode.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/SourceCode.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js deleted file mode 100644 index 8e029b15..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-namespace */ -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SourceCode = void 0; -const eslint_1 = require("eslint"); -class SourceCode extends eslint_1.SourceCode { -} -exports.SourceCode = SourceCode; -//# sourceMappingURL=SourceCode.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map deleted file mode 100644 index 60f58ea3..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/SourceCode.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SourceCode.js","sourceRoot":"","sources":["../../src/ts-eslint/SourceCode.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,mCAAwD;AAubxD,MAAM,UAAW,SAAS,mBAA0C;CAAG;AAE9D,gCAAU"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts deleted file mode 100644 index 05d889d9..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export * from './AST'; -export * from './CLIEngine'; -export * from './ESLint'; -export * from './Linter'; -export * from './ParserOptions'; -export * from './Rule'; -export * from './RuleTester'; -export * from './Scope'; -export * from './SourceCode'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map deleted file mode 100644 index 6b3df411..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js deleted file mode 100644 index 41259584..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js +++ /dev/null @@ -1,22 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./AST"), exports); -__exportStar(require("./CLIEngine"), exports); -__exportStar(require("./ESLint"), exports); -__exportStar(require("./Linter"), exports); -__exportStar(require("./ParserOptions"), exports); -__exportStar(require("./Rule"), exports); -__exportStar(require("./RuleTester"), exports); -__exportStar(require("./Scope"), exports); -__exportStar(require("./SourceCode"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map deleted file mode 100644 index 7ffb8987..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/dist/ts-eslint/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-eslint/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAsB;AACtB,8CAA4B;AAC5B,2CAAyB;AACzB,2CAAyB;AACzB,kDAAgC;AAChC,yCAAuB;AACvB,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/node_modules/.bin/eslint b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/node_modules/.bin/eslint deleted file mode 120000 index f502c263..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/node_modules/.bin/eslint +++ /dev/null @@ -1 +0,0 @@ -../../../../../../eslint/bin/eslint.js \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/package.json b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/package.json deleted file mode 100644 index 0217ca1d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/experimental-utils/package.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "name": "@typescript-eslint/experimental-utils", - "version": "4.1.0", - "description": "(Experimental) Utilities for working with TypeScript + ESLint together", - "keywords": [ - "eslint", - "typescript", - "estree" - ], - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "files": [ - "dist", - "_ts3.4", - "package.json", - "README.md", - "LICENSE" - ], - "repository": { - "type": "git", - "url": "https://github.com/typescript-eslint/typescript-eslint.git", - "directory": "packages/experimental-utils" - }, - "bugs": { - "url": "https://github.com/typescript-eslint/typescript-eslint/issues" - }, - "license": "MIT", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "scripts": { - "build": "tsc -b tsconfig.build.json", - "postbuild": "downlevel-dts dist _ts3.4/dist", - "clean": "tsc -b tsconfig.build.json --clean", - "postclean": "rimraf dist && rimraf _ts3.4", - "format": "prettier --write \"./**/*.{ts,js,json,md}\" --ignore-path ../../.prettierignore", - "lint": "eslint . --ext .js,.ts --ignore-path='../../.eslintignore'", - "test": "jest --coverage", - "typecheck": "tsc -p tsconfig.json --noEmit" - }, - "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.1.0", - "@typescript-eslint/types": "4.1.0", - "@typescript-eslint/typescript-estree": "4.1.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" - }, - "peerDependencies": { - "eslint": "*" - }, - "devDependencies": { - "typescript": "*" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "typesVersions": { - "<3.8": { - "*": [ - "_ts3.4/*" - ] - } - }, - "gitHead": "00a24706222254774121ee62038e67d0efa993e7" -} diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md deleted file mode 100644 index 284d90a3..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md +++ /dev/null @@ -1,925 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -# [4.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.1...v4.1.0) (2020-09-07) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - - - - - -## [4.0.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.0.0...v4.0.1) (2020-08-31) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - - - - - -# [4.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.1...v4.0.0) (2020-08-31) - - -### Bug Fixes - -* correct decorator traversal for AssignmentPattern ([#2375](https://github.com/typescript-eslint/typescript-eslint/issues/2375)) ([d738fa4](https://github.com/typescript-eslint/typescript-eslint/commit/d738fa4eff0a5c4cfc9b30b1c0502f8d1e78d7b6)) -* **typescript-estree:** correct ChainExpression interaction with parentheses and non-nulls ([#2380](https://github.com/typescript-eslint/typescript-eslint/issues/2380)) ([762bc99](https://github.com/typescript-eslint/typescript-eslint/commit/762bc99584ede4d0b8099a743991e957aec86aa8)) - - -### Features - -* support ESTree optional chaining representation ([#2308](https://github.com/typescript-eslint/typescript-eslint/issues/2308)) ([e9d2ab6](https://github.com/typescript-eslint/typescript-eslint/commit/e9d2ab638b6767700b52797e74b814ea059beaae)) -* **typescript-estree:** switch to globby ([#2418](https://github.com/typescript-eslint/typescript-eslint/issues/2418)) ([3a7ec9b](https://github.com/typescript-eslint/typescript-eslint/commit/3a7ec9bcf1873a99c6da2f19ade8ab4763b4793c)), closes [#2398](https://github.com/typescript-eslint/typescript-eslint/issues/2398) - - -### BREAKING CHANGES - -* **typescript-estree:** - removes the ability to supply a `RegExp` to `projectFolderIgnoreList`, and changes the meaning of the string value from a regex to a glob. -* - Removed decorators property from several Nodes that could never semantically have them (FunctionDeclaration, TSEnumDeclaration, and TSInterfaceDeclaration) -- Removed AST_NODE_TYPES.Import. This is a minor breaking change as the node type that used this was removed ages ago. - - - - - -## [3.10.1](https://github.com/typescript-eslint/typescript-eslint/compare/v3.10.0...v3.10.1) (2020-08-25) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - - - - - -# [3.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v3.9.1...v3.10.0) (2020-08-24) - - -### Bug Fixes - -* **typescript-estree:** ts.NamedTupleMember workaround for =3.2.1 <3.6.0 ([#597](https://github.com/typescript-eslint/typescript-eslint/issues/597)) ([5d2b962](https://github.com/typescript-eslint/typescript-eslint/commit/5d2b962)) - -# [1.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.8.0...v1.9.0) (2019-05-12) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - -# [1.8.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.7.0...v1.8.0) (2019-05-10) - -### Bug Fixes - -- **eslint-plugin:** [array-type] support readonly operator ([#429](https://github.com/typescript-eslint/typescript-eslint/issues/429)) ([8e2d2f5](https://github.com/typescript-eslint/typescript-eslint/commit/8e2d2f5)) -- **eslint-plugin:** Support more nodes [no-extra-parens](<[#465](https://github.com/typescript-eslint/typescript-eslint/issues/465)>) ([2d15644](https://github.com/typescript-eslint/typescript-eslint/commit/2d15644)) -- **typescript-estree:** ensure parents are defined during subsequent parses ([#500](https://github.com/typescript-eslint/typescript-eslint/issues/500)) ([665278f](https://github.com/typescript-eslint/typescript-eslint/commit/665278f)) - -### Features - -- **eslint-plugin:** (EXPERIMENTAL) begin indent rewrite ([#439](https://github.com/typescript-eslint/typescript-eslint/issues/439)) ([6eb97d4](https://github.com/typescript-eslint/typescript-eslint/commit/6eb97d4)) -- **eslint-plugin:** no-inferrable-types: Support more primitives ([#442](https://github.com/typescript-eslint/typescript-eslint/issues/442)) ([4e193ca](https://github.com/typescript-eslint/typescript-eslint/commit/4e193ca)) -- **ts-estree:** add preserveNodeMaps option ([#494](https://github.com/typescript-eslint/typescript-eslint/issues/494)) ([c3061f9](https://github.com/typescript-eslint/typescript-eslint/commit/c3061f9)) -- Move shared types into their own package ([#425](https://github.com/typescript-eslint/typescript-eslint/issues/425)) ([a7a03ce](https://github.com/typescript-eslint/typescript-eslint/commit/a7a03ce)) - -# [1.7.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.6.0...v1.7.0) (2019-04-20) - -### Features - -- **eslint-plugin:** support type assertions in no-extra-parens rule ([#311](https://github.com/typescript-eslint/typescript-eslint/issues/311)) ([116ca75](https://github.com/typescript-eslint/typescript-eslint/commit/116ca75)) - -# [1.6.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.5.0...v1.6.0) (2019-04-03) - -### Bug Fixes - -- **typescript-estree:** add ExportDefaultDeclaration to union DeclarationStatement ([#378](https://github.com/typescript-eslint/typescript-eslint/issues/378)) ([bf04398](https://github.com/typescript-eslint/typescript-eslint/commit/bf04398)) - -### Features - -- change TypeScript version range to >=3.2.1 <3.5.0 ([#399](https://github.com/typescript-eslint/typescript-eslint/issues/399)) ([a4f95d3](https://github.com/typescript-eslint/typescript-eslint/commit/a4f95d3)) - -# [1.5.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.4.2...v1.5.0) (2019-03-20) - -### Bug Fixes - -- **eslint-plugin:** fix false positives for adjacent-overload-signatures regarding computed property names ([#340](https://github.com/typescript-eslint/typescript-eslint/issues/340)) ([f6e5118](https://github.com/typescript-eslint/typescript-eslint/commit/f6e5118)) -- **typescript-estree:** only call watch callback on new files ([#367](https://github.com/typescript-eslint/typescript-eslint/issues/367)) ([0ef07c4](https://github.com/typescript-eslint/typescript-eslint/commit/0ef07c4)) - -## [1.4.2](https://github.com/typescript-eslint/typescript-eslint/compare/v1.4.1...v1.4.2) (2019-02-25) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - -## [1.4.1](https://github.com/typescript-eslint/typescript-eslint/compare/v1.4.0...v1.4.1) (2019-02-23) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - -# [1.4.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.3.0...v1.4.0) (2019-02-19) - -### Bug Fixes - -- **ts-estree:** make sure that every node can be converted to tsNode ([#287](https://github.com/typescript-eslint/typescript-eslint/issues/287)) ([9f1d314](https://github.com/typescript-eslint/typescript-eslint/commit/9f1d314)) -- **typescript-estree, eslint-plugin:** stop adding ParenthesizedExpressions to node maps ([#226](https://github.com/typescript-eslint/typescript-eslint/issues/226)) ([317405a](https://github.com/typescript-eslint/typescript-eslint/commit/317405a)) - -### Features - -- **eslint-plugin:** add 'no-unnecessary-qualifier' rule ([#231](https://github.com/typescript-eslint/typescript-eslint/issues/231)) ([cc8f906](https://github.com/typescript-eslint/typescript-eslint/commit/cc8f906)) -- **eslint-plugin:** Migrate plugin to ts ([#120](https://github.com/typescript-eslint/typescript-eslint/issues/120)) ([61c60dc](https://github.com/typescript-eslint/typescript-eslint/commit/61c60dc)) -- **ts-estree:** fix parsing nested sequence expressions ([#286](https://github.com/typescript-eslint/typescript-eslint/issues/286)) ([ecc9631](https://github.com/typescript-eslint/typescript-eslint/commit/ecc9631)) - -# [1.3.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.2.0...v1.3.0) (2019-02-07) - -### Bug Fixes - -- **ts-estree:** align typeArguments and typeParameters across nodes ([#223](https://github.com/typescript-eslint/typescript-eslint/issues/223)) ([3306198](https://github.com/typescript-eslint/typescript-eslint/commit/3306198)) -- **ts-estree:** convert decorators on var and fn decs ([#211](https://github.com/typescript-eslint/typescript-eslint/issues/211)) ([0a1777f](https://github.com/typescript-eslint/typescript-eslint/commit/0a1777f)) -- **ts-estree:** fix issues with typeParams in FunctionExpression ([#208](https://github.com/typescript-eslint/typescript-eslint/issues/208)) ([d4dfa3b](https://github.com/typescript-eslint/typescript-eslint/commit/d4dfa3b)) - -### Features - -- change TypeScript version range to >=3.2.1 <3.4.0 ([#184](https://github.com/typescript-eslint/typescript-eslint/issues/184)) ([f513a14](https://github.com/typescript-eslint/typescript-eslint/commit/f513a14)) -- **ts-estree:** enable errors 1098 and 1099 ([#219](https://github.com/typescript-eslint/typescript-eslint/issues/219)) ([fc50167](https://github.com/typescript-eslint/typescript-eslint/commit/fc50167)) - -# [1.2.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.1.1...v1.2.0) (2019-02-01) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree - -## [1.1.1](https://github.com/typescript-eslint/typescript-eslint/compare/v1.1.0...v1.1.1) (2019-01-29) - -### Bug Fixes - -- **parser:** add visiting of type parameters in JSXOpeningElement ([#150](https://github.com/typescript-eslint/typescript-eslint/issues/150)) ([5e16003](https://github.com/typescript-eslint/typescript-eslint/commit/5e16003)) -- **ts-estree:** expand optional property to include question token ([#138](https://github.com/typescript-eslint/typescript-eslint/issues/138)) ([9068b62](https://github.com/typescript-eslint/typescript-eslint/commit/9068b62)) - -### Performance Improvements - -- **ts-estree:** don't create Program in parse() ([#148](https://github.com/typescript-eslint/typescript-eslint/issues/148)) ([aacf5b0](https://github.com/typescript-eslint/typescript-eslint/commit/aacf5b0)) - -# [1.1.0](https://github.com/typescript-eslint/typescript-eslint/compare/v1.0.0...v1.1.0) (2019-01-23) - -### Bug Fixes - -- **typescript-estree:** correct range of parameters with comments ([#128](https://github.com/typescript-eslint/typescript-eslint/issues/128)) ([91eedf2](https://github.com/typescript-eslint/typescript-eslint/commit/91eedf2)) -- **typescript-estree:** fix range of assignment in parameter ([#115](https://github.com/typescript-eslint/typescript-eslint/issues/115)) ([4e781f1](https://github.com/typescript-eslint/typescript-eslint/commit/4e781f1)) - -# [1.0.0](https://github.com/typescript-eslint/typescript-eslint/compare/v0.2.1...v1.0.0) (2019-01-20) - -### Features - -- **parser:** support ecmaFeatures.jsx flag and tests ([#85](https://github.com/typescript-eslint/typescript-eslint/issues/85)) ([b321736](https://github.com/typescript-eslint/typescript-eslint/commit/b321736)) - -## [0.2.1](https://github.com/typescript-eslint/typescript-eslint/compare/v0.2.0...v0.2.1) (2019-01-20) - -**Note:** Version bump only for package @typescript-eslint/typescript-estree diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/LICENSE b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/LICENSE deleted file mode 100644 index fda3b754..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/LICENSE +++ /dev/null @@ -1,26 +0,0 @@ -TypeScript ESTree - -Originally extracted from: - -TypeScript ESLint Parser -Copyright JS Foundation and other contributors, https://js.foundation - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/README.md b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/README.md deleted file mode 100644 index 3a434c78..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/README.md +++ /dev/null @@ -1,287 +0,0 @@ -

TypeScript ESTree

- -

A parser that converts TypeScript source code into an ESTree-compatible form

- -

- CI - NPM Version - NPM Downloads -

- -## Getting Started - -**[You can find our Getting Started docs here](../../docs/getting-started/linting/README.md)** - -## About - -This parser is somewhat generic and robust, and could be used to power any use-case which requires taking TypeScript source code and producing an ESTree-compatible AST. - -In fact, it is already used within these hyper-popular open-source projects to power their TypeScript support: - -- [ESLint](https://eslint.org), the pluggable linting utility for JavaScript and JSX -- [Prettier](https://prettier.io), an opinionated code formatter - -## Installation - -```sh -yarn add -D @typescript-eslint/typescript-estree -``` - -## API - -### Parsing - -#### `parse(code, options)` - -Parses the given string of code with the options provided and returns an ESTree-compatible AST. - -```ts -interface ParseOptions { - /** - * create a top-level comments array containing all comments - */ - comment?: boolean; - - /** - * An array of modules to turn explicit debugging on for. - * - 'typescript-eslint' is the same as setting the env var `DEBUG=typescript-eslint:*` - * - 'eslint' is the same as setting the env var `DEBUG=eslint:*` - * - 'typescript' is the same as setting `extendedDiagnostics: true` in your tsconfig compilerOptions - * - * For convenience, also supports a boolean: - * - true === ['typescript-eslint'] - * - false === [] - */ - debugLevel?: boolean | ('typescript-eslint' | 'eslint' | 'typescript')[]; - - /** - * Cause the parser to error if it encounters an unknown AST node type (useful for testing). - * This case only usually occurs when TypeScript releases new features. - */ - errorOnUnknownASTType?: boolean; - - /** - * Absolute (or relative to `cwd`) path to the file being parsed. - */ - filePath?: string; - - /** - * Enable parsing of JSX. - * For more details, see https://www.typescriptlang.org/docs/handbook/jsx.html - * - * NOTE: this setting does not effect known file types (.js, .jsx, .ts, .tsx, .json) because the - * TypeScript compiler has its own internal handling for known file extensions. - * - * For the exact behavior, see https://github.com/typescript-eslint/typescript-eslint/tree/master/packages/parser#parseroptionsecmafeaturesjsx - */ - jsx?: boolean; - - /** - * Controls whether the `loc` information to each node. - * The `loc` property is an object which contains the exact line/column the node starts/ends on. - * This is similar to the `range` property, except it is line/column relative. - */ - loc?: boolean; - - /* - * Allows overriding of function used for logging. - * When value is `false`, no logging will occur. - * When value is not provided, `console.log()` will be used. - */ - loggerFn?: Function | false; - - /** - * Controls whether the `range` property is included on AST nodes. - * The `range` property is a [number, number] which indicates the start/end index of the node in the file contents. - * This is similar to the `loc` property, except this is the absolute index. - */ - range?: boolean; - - /** - * Set to true to create a top-level array containing all tokens from the file. - */ - tokens?: boolean; - - /* - * The JSX AST changed the node type for string literals - * inside a JSX Element from `Literal` to `JSXText`. - * When value is `true`, these nodes will be parsed as type `JSXText`. - * When value is `false`, these nodes will be parsed as type `Literal`. - */ - useJSXTextNode?: boolean; -} - -const PARSE_DEFAULT_OPTIONS: ParseOptions = { - comment: false, - errorOnUnknownASTType: false, - filePath: 'estree.ts', // or 'estree.tsx', if you pass jsx: true - jsx: false, - loc: false, - loggerFn: undefined, - range: false, - tokens: false, - useJSXTextNode: false, -}; - -declare function parse( - code: string, - options: ParseOptions = PARSE_DEFAULT_OPTIONS, -): TSESTree.Program; -``` - -Example usage: - -```js -import { parse } from '@typescript-eslint/typescript-estree'; - -const code = `const hello: string = 'world';`; -const ast = parse(code, { - loc: true, - range: true, -}); -``` - -#### `parseAndGenerateServices(code, options)` - -Parses the given string of code with the options provided and returns an ESTree-compatible AST. Accepts additional options which can be used to generate type information along with the AST. - -```ts -interface ParseAndGenerateServicesOptions extends ParseOptions { - /** - * Causes the parser to error if the TypeScript compiler returns any unexpected syntax/semantic errors. - */ - errorOnTypeScriptSyntacticAndSemanticIssues?: boolean; - - /** - * When `project` is provided, this controls the non-standard file extensions which will be parsed. - * It accepts an array of file extensions, each preceded by a `.`. - */ - extraFileExtensions?: string[]; - - /** - * Absolute (or relative to `tsconfigRootDir`) path to the file being parsed. - * When `project` is provided, this is required, as it is used to fetch the file from the TypeScript compiler's cache. - */ - filePath?: string; - - /** - * Allows the user to control whether or not two-way AST node maps are preserved - * during the AST conversion process. - * - * By default: the AST node maps are NOT preserved, unless `project` has been specified, - * in which case the maps are made available on the returned `parserServices`. - * - * NOTE: If `preserveNodeMaps` is explicitly set by the user, it will be respected, - * regardless of whether or not `project` is in use. - */ - preserveNodeMaps?: boolean; - - /** - * Absolute (or relative to `tsconfigRootDir`) paths to the tsconfig(s). - * If this is provided, type information will be returned. - */ - project?: string | string[]; - - /** - * If you provide a glob (or globs) to the project option, you can use this option to ignore certain folders from - * being matched by the globs. - * This accepts an array of globs to ignore. - * - * By default, this is set to ["/node_modules/"] - */ - projectFolderIgnoreList?: string[]; - - /** - * The absolute path to the root directory for all provided `project`s. - */ - tsconfigRootDir?: string; - - /** - *************************************************************************************** - * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * - *************************************************************************************** - * - * When passed with `project`, this allows the parser to create a catch-all, default program. - * This means that if the parser encounters a file not included in any of the provided `project`s, - * it will not error, but will instead parse the file and its dependencies in a new program. - */ - createDefaultProgram?: boolean; -} - -const PARSE_AND_GENERATE_SERVICES_DEFAULT_OPTIONS: ParseOptions = { - ...PARSE_DEFAULT_OPTIONS, - errorOnTypeScriptSyntacticAndSemanticIssues: false, - extraFileExtensions: [], - preserveNodeMaps: false, // or true, if you do not set this, but pass `project` - project: undefined, - projectFolderIgnoreList: ['/node_modules/'], - tsconfigRootDir: process.cwd(), -}; - -declare function parseAndGenerateServices( - code: string, - options: ParseOptions = PARSE_DEFAULT_OPTIONS, -): TSESTree.Program; -``` - -Example usage: - -```js -import { parseAndGenerateServices } from '@typescript-eslint/typescript-estree'; - -const code = `const hello: string = 'world';`; -const ast = parseAndGenerateServices(code, { - filePath: '/some/path/to/file/foo.ts', - loc: true, - project: './tsconfig.json', - range: true, -}); -``` - -### `TSESTree`, `AST_NODE_TYPES` and `AST_TOKEN_TYPES` - -Types for the AST produced by the parse functions. - -- `TSESTree` is a namespace which contains object types representing all of the AST Nodes produced by the parser. -- `AST_NODE_TYPES` is an enum which provides the values for every single AST node's `type` property. -- `AST_TOKEN_TYPES` is an enum which provides the values for every single AST token's `type` property. - -## Supported TypeScript Version - -See the [Supported TypeScript Version](../../README.md#supported-typescript-version) section in the project root. - -If you use a non-supported version of TypeScript, the parser will log a warning to the console. - -**Please ensure that you are using a supported version before submitting any issues/bug reports.** - -## Reporting Issues - -Please check the current list of open and known issues and ensure the issue has not been reported before. When creating a new issue provide as much information about your environment as possible. This includes: - -- TypeScript version -- The `typescript-estree` version - -## AST Alignment Tests - -A couple of years after work on this parser began, the TypeScript Team at Microsoft began [officially supporting TypeScript parsing via Babel](https://blogs.msdn.microsoft.com/typescript/2018/08/27/typescript-and-babel-7/). - -I work closely with the TypeScript Team and we are gradually aligning the AST of this project with the one produced by Babel's parser. To that end, I have created a full test harness to compare the ASTs of the two projects which runs on every PR, please see the code for more details. - -## Build/Test Commands - -- `npm test` - run all tests -- `npm run unit-tests` - run only unit tests -- `npm run ast-alignment-tests` - run only Babylon AST alignment tests - -## Debugging - -If you encounter a bug with the parser that you want to investigate, you can turn on the debug logging via setting the environment variable: `DEBUG=typescript-eslint:*`. -I.e. in this repo you can run: `DEBUG=typescript-eslint:* yarn lint`. - -## License - -TypeScript ESTree inherits from the the original TypeScript ESLint Parser license, as the majority of the work began there. It is licensed under a permissive BSD 2-clause license. - -## Contributing - -[See the contributing guide here](../../CONTRIBUTING.md) diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts deleted file mode 100644 index 61bc2f1b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { SourceFile } from 'typescript'; -import { ASTMaps } from './convert'; -import { Extra } from './parser-options'; -import { TSESTree } from './ts-estree'; -export declare function astConverter(ast: SourceFile, extra: Extra, shouldPreserveNodeMaps: boolean): { - estree: TSESTree.Program; - astMaps: ASTMaps; -}; -//# sourceMappingURL=ast-converter.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map deleted file mode 100644 index df6276c5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ast-converter.d.ts","sourceRoot":"","sources":["../src/ast-converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAA2B,OAAO,EAAE,MAAM,WAAW,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,wBAAgB,YAAY,CAC1B,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,KAAK,EACZ,sBAAsB,EAAE,OAAO,GAC9B;IAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CA4DhD"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js deleted file mode 100644 index 6af960ee..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js +++ /dev/null @@ -1,63 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.astConverter = void 0; -const convert_1 = require("./convert"); -const convert_comments_1 = require("./convert-comments"); -const node_utils_1 = require("./node-utils"); -const simple_traverse_1 = require("./simple-traverse"); -function astConverter(ast, extra, shouldPreserveNodeMaps) { - /** - * The TypeScript compiler produced fundamental parse errors when parsing the - * source. - */ - // internal typescript api... - // eslint-disable-next-line @typescript-eslint/no-explicit-any - const parseDiagnostics = ast.parseDiagnostics; - if (parseDiagnostics.length) { - throw convert_1.convertError(parseDiagnostics[0]); - } - /** - * Recursively convert the TypeScript AST into an ESTree-compatible AST - */ - const instance = new convert_1.Converter(ast, { - errorOnUnknownASTType: extra.errorOnUnknownASTType || false, - useJSXTextNode: extra.useJSXTextNode || false, - shouldPreserveNodeMaps, - }); - const estree = instance.convertProgram(); - /** - * Optionally remove range and loc if specified - */ - if (!extra.range || !extra.loc) { - simple_traverse_1.simpleTraverse(estree, { - enter: node => { - if (!extra.range) { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- TS 4.0 made this an error because the types aren't optional - // @ts-expect-error - delete node.range; - } - if (!extra.loc) { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- TS 4.0 made this an error because the types aren't optional - // @ts-expect-error - delete node.loc; - } - }, - }); - } - /** - * Optionally convert and include all tokens in the AST - */ - if (extra.tokens) { - estree.tokens = node_utils_1.convertTokens(ast); - } - /** - * Optionally convert and include all comments in the AST - */ - if (extra.comment) { - estree.comments = convert_comments_1.convertComments(ast, extra.code); - } - const astMaps = instance.getASTMaps(); - return { estree, astMaps }; -} -exports.astConverter = astConverter; -//# sourceMappingURL=ast-converter.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map deleted file mode 100644 index 6a5b2155..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ast-converter.js","sourceRoot":"","sources":["../src/ast-converter.ts"],"names":[],"mappings":";;;AACA,uCAA6D;AAC7D,yDAAqD;AACrD,6CAA6C;AAG7C,uDAAmD;AAEnD,SAAgB,YAAY,CAC1B,GAAe,EACf,KAAY,EACZ,sBAA+B;IAE/B;;;OAGG;IACH,6BAA6B;IAC7B,8DAA8D;IAC9D,MAAM,gBAAgB,GAAI,GAAW,CAAC,gBAAgB,CAAC;IACvD,IAAI,gBAAgB,CAAC,MAAM,EAAE;QAC3B,MAAM,sBAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KACzC;IAED;;OAEG;IACH,MAAM,QAAQ,GAAG,IAAI,mBAAS,CAAC,GAAG,EAAE;QAClC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,IAAI,KAAK;QAC3D,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK;QAC7C,sBAAsB;KACvB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAEzC;;OAEG;IACH,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;QAC9B,gCAAc,CAAC,MAAM,EAAE;YACrB,KAAK,EAAE,IAAI,CAAC,EAAE;gBACZ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;oBAChB,4HAA4H;oBAC5H,mBAAmB;oBACnB,OAAO,IAAI,CAAC,KAAK,CAAC;iBACnB;gBACD,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;oBACd,4HAA4H;oBAC5H,mBAAmB;oBACnB,OAAO,IAAI,CAAC,GAAG,CAAC;iBACjB;YACH,CAAC;SACF,CAAC,CAAC;KACJ;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,MAAM,CAAC,MAAM,GAAG,0BAAa,CAAC,GAAG,CAAC,CAAC;KACpC;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,MAAM,CAAC,QAAQ,GAAG,kCAAe,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;KACpD;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;IAEtC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC;AAhED,oCAgEC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.d.ts deleted file mode 100644 index 3f081e69..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import * as ts from 'typescript'; -import { TSESTree } from './ts-estree'; -/** - * Convert all comments for the given AST. - * @param ast the AST object - * @param code the TypeScript code - * @returns the converted ESTreeComment - * @private - */ -export declare function convertComments(ast: ts.SourceFile, code: string): TSESTree.Comment[]; -//# sourceMappingURL=convert-comments.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.d.ts.map deleted file mode 100644 index e3e8a043..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convert-comments.d.ts","sourceRoot":"","sources":["../src/convert-comments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAmB,QAAQ,EAAE,MAAM,aAAa,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,EAAE,CAAC,UAAU,EAClB,IAAI,EAAE,MAAM,GACX,QAAQ,CAAC,OAAO,EAAE,CAgCpB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js deleted file mode 100644 index de4a735a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.convertComments = void 0; -const ts = __importStar(require("typescript")); -const util_1 = require("tsutils/util/util"); -const node_utils_1 = require("./node-utils"); -const ts_estree_1 = require("./ts-estree"); -/** - * Convert all comments for the given AST. - * @param ast the AST object - * @param code the TypeScript code - * @returns the converted ESTreeComment - * @private - */ -function convertComments(ast, code) { - const comments = []; - util_1.forEachComment(ast, (_, comment) => { - const type = comment.kind == ts.SyntaxKind.SingleLineCommentTrivia - ? ts_estree_1.AST_TOKEN_TYPES.Line - : ts_estree_1.AST_TOKEN_TYPES.Block; - const range = [comment.pos, comment.end]; - const loc = node_utils_1.getLocFor(range[0], range[1], ast); - // both comments start with 2 characters - /* or // - const textStart = range[0] + 2; - const textEnd = comment.kind === ts.SyntaxKind.SingleLineCommentTrivia - ? // single line comments end at the end - range[1] - textStart - : // multiline comments end 2 characters early - range[1] - textStart - 2; - comments.push({ - type, - value: code.substr(textStart, textEnd), - range, - loc, - }); - }, ast); - return comments; -} -exports.convertComments = convertComments; -//# sourceMappingURL=convert-comments.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map deleted file mode 100644 index 6952a589..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convert-comments.js","sourceRoot":"","sources":["../src/convert-comments.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,4CAAmD;AACnD,6CAAyC;AACzC,2CAAwD;AAExD;;;;;;GAMG;AACH,SAAgB,eAAe,CAC7B,GAAkB,EAClB,IAAY;IAEZ,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,qBAAc,CACZ,GAAG,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;QACb,MAAM,IAAI,GACR,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,uBAAuB;YACnD,CAAC,CAAC,2BAAe,CAAC,IAAI;YACtB,CAAC,CAAC,2BAAe,CAAC,KAAK,CAAC;QAC5B,MAAM,KAAK,GAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,sBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAE/C,mDAAmD;QACnD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB;YACpD,CAAC,CAAC,sCAAsC;gBACtC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS;YACtB,CAAC,CAAC,4CAA4C;gBAC5C,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC;YACtC,KAAK;YACL,GAAG;SACJ,CAAC,CAAC;IACL,CAAC,EACD,GAAG,CACJ,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAnCD,0CAmCC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts deleted file mode 100644 index c065e15d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts +++ /dev/null @@ -1,152 +0,0 @@ -import * as ts from 'typescript'; -import { TSError } from './node-utils'; -import { ParserWeakMap, ParserWeakMapESTreeToTSNode } from './parser-options'; -import { TSESTree, TSNode } from './ts-estree'; -interface ConverterOptions { - errorOnUnknownASTType: boolean; - useJSXTextNode: boolean; - shouldPreserveNodeMaps: boolean; -} -/** - * Extends and formats a given error object - * @param error the error object - * @returns converted error object - */ -export declare function convertError(error: any): TSError; -export interface ASTMaps { - esTreeNodeToTSNodeMap: ParserWeakMapESTreeToTSNode; - tsNodeToESTreeNodeMap: ParserWeakMap; -} -export declare class Converter { - private readonly ast; - private readonly options; - private readonly esTreeNodeToTSNodeMap; - private readonly tsNodeToESTreeNodeMap; - private allowPattern; - private inTypeMode; - /** - * Converts a TypeScript node into an ESTree node - * @param ast the full TypeScript AST - * @param options additional options for the conversion - * @returns the converted ESTreeNode - */ - constructor(ast: ts.SourceFile, options: ConverterOptions); - getASTMaps(): ASTMaps; - convertProgram(): TSESTree.Program; - /** - * Converts a TypeScript node into an ESTree node. - * @param node the child ts.Node - * @param parent parentNode - * @param inTypeMode flag to determine if we are in typeMode - * @param allowPattern flag to determine if patterns are allowed - * @returns the converted ESTree node - */ - private converter; - /** - * Fixes the exports of the given ts.Node - * @param node the ts.Node - * @param result result - * @returns the ESTreeNode with fixed exports - */ - private fixExports; - /** - * Register specific TypeScript node into map with first ESTree node provided - */ - private registerTSNodeInNodeMap; - /** - * Converts a TypeScript node into an ESTree node. - * @param child the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - private convertPattern; - /** - * Converts a TypeScript node into an ESTree node. - * @param child the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - private convertChild; - /** - * Converts a TypeScript node into an ESTree node. - * @param child the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - private convertType; - private createNode; - private convertBindingNameWithTypeAnnotation; - /** - * Converts a child into a type annotation. This creates an intermediary - * TypeAnnotation node to match what Flow does. - * @param child The TypeScript AST node to convert. - * @param parent parentNode - * @returns The type annotation node. - */ - private convertTypeAnnotation; - /** - * Coverts body Nodes and add a directive field to StringLiterals - * @param nodes of ts.Node - * @param parent parentNode - * @returns Array of body statements - */ - private convertBodyExpressions; - /** - * Converts a ts.Node's typeArguments to TSTypeParameterInstantiation node - * @param typeArguments ts.NodeArray typeArguments - * @param node parent used to create this node - * @returns TypeParameterInstantiation node - */ - private convertTypeArgumentsToTypeParameters; - /** - * Converts a ts.Node's typeParameters to TSTypeParameterDeclaration node - * @param typeParameters ts.Node typeParameters - * @returns TypeParameterDeclaration node - */ - private convertTSTypeParametersToTypeParametersDeclaration; - /** - * Converts an array of ts.Node parameters into an array of ESTreeNode params - * @param parameters An array of ts.Node params to be converted - * @returns an array of converted ESTreeNode params - */ - private convertParameters; - private convertChainExpression; - /** - * For nodes that are copied directly from the TypeScript AST into - * ESTree mostly as-is. The only difference is the addition of a type - * property instead of a kind property. Recursively copies all children. - */ - private deeplyCopy; - /** - * Converts a TypeScript JSX node.tagName into an ESTree node.name - * @param node the tagName object from a JSX ts.Node - * @param parent - * @returns the converted ESTree name object - */ - private convertJSXTagName; - /** - * Applies the given TS modifiers to the given result object. - * @param result - * @param modifiers original ts.Nodes from the node.modifiers array - * @returns the current result object will be mutated - * @deprecated This method adds not standardized `modifiers` property in nodes - */ - private applyModifiersToResult; - /** - * Uses the provided range location to adjust the location data of the given Node - * @param result The node that will have its location data mutated - * @param childRange The child node range used to expand location - */ - private fixParentLocation; - /** - * Converts a TypeScript node into an ESTree node. - * The core of the conversion logic: - * Identify and convert each relevant TypeScript SyntaxKind - * @param node the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - private convertNode; -} -export {}; -//# sourceMappingURL=convert.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map deleted file mode 100644 index c1f6816c..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAkBL,OAAO,EAGR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAEL,QAAQ,EACR,MAAM,EAEP,MAAM,aAAa,CAAC;AAKrB,UAAU,gBAAgB;IACxB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,OAAO,CAAC;IACxB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAMhD;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAKzD,UAAU,IAAI,OAAO;IAOrB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;IAkCjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAyDlB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,oCAAoC;IAe5C;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;OAKG;IACH,OAAO,CAAC,oCAAoC;IAa5C;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAe1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,sBAAsB;IA4C9B;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAmElB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAkD9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;CA8iEpB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.js deleted file mode 100644 index e45592f5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +++ /dev/null @@ -1,2206 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Converter = exports.convertError = void 0; -// There's lots of funny stuff due to the typing of ts.Node -/* eslint-disable @typescript-eslint/no-explicit-any */ -const ts = __importStar(require("typescript")); -const node_utils_1 = require("./node-utils"); -const ts_estree_1 = require("./ts-estree"); -const version_check_1 = require("./version-check"); -const SyntaxKind = ts.SyntaxKind; -/** - * Extends and formats a given error object - * @param error the error object - * @returns converted error object - */ -function convertError(error) { - return node_utils_1.createError(error.file, error.start, error.message || error.messageText); -} -exports.convertError = convertError; -class Converter { - /** - * Converts a TypeScript node into an ESTree node - * @param ast the full TypeScript AST - * @param options additional options for the conversion - * @returns the converted ESTreeNode - */ - constructor(ast, options) { - this.esTreeNodeToTSNodeMap = new WeakMap(); - this.tsNodeToESTreeNodeMap = new WeakMap(); - this.allowPattern = false; - this.inTypeMode = false; - this.ast = ast; - this.options = Object.assign({}, options); - } - getASTMaps() { - return { - esTreeNodeToTSNodeMap: this.esTreeNodeToTSNodeMap, - tsNodeToESTreeNodeMap: this.tsNodeToESTreeNodeMap, - }; - } - convertProgram() { - return this.converter(this.ast); - } - /** - * Converts a TypeScript node into an ESTree node. - * @param node the child ts.Node - * @param parent parentNode - * @param inTypeMode flag to determine if we are in typeMode - * @param allowPattern flag to determine if patterns are allowed - * @returns the converted ESTree node - */ - converter(node, parent, inTypeMode, allowPattern) { - /** - * Exit early for null and undefined - */ - if (!node) { - return null; - } - const typeMode = this.inTypeMode; - const pattern = this.allowPattern; - if (inTypeMode !== undefined) { - this.inTypeMode = inTypeMode; - } - if (allowPattern !== undefined) { - this.allowPattern = allowPattern; - } - const result = this.convertNode(node, (parent !== null && parent !== void 0 ? parent : node.parent)); - this.registerTSNodeInNodeMap(node, result); - this.inTypeMode = typeMode; - this.allowPattern = pattern; - return result; - } - /** - * Fixes the exports of the given ts.Node - * @param node the ts.Node - * @param result result - * @returns the ESTreeNode with fixed exports - */ - fixExports(node, result) { - // check for exports - if (node.modifiers && node.modifiers[0].kind === SyntaxKind.ExportKeyword) { - /** - * Make sure that original node is registered instead of export - */ - this.registerTSNodeInNodeMap(node, result); - const exportKeyword = node.modifiers[0]; - const nextModifier = node.modifiers[1]; - const declarationIsDefault = nextModifier && nextModifier.kind === SyntaxKind.DefaultKeyword; - const varToken = declarationIsDefault - ? node_utils_1.findNextToken(nextModifier, this.ast, this.ast) - : node_utils_1.findNextToken(exportKeyword, this.ast, this.ast); - result.range[0] = varToken.getStart(this.ast); - result.loc = node_utils_1.getLocFor(result.range[0], result.range[1], this.ast); - if (declarationIsDefault) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExportDefaultDeclaration, - declaration: result, - range: [exportKeyword.getStart(this.ast), result.range[1]], - exportKind: 'value', - }); - } - else { - const isType = result.type === ts_estree_1.AST_NODE_TYPES.TSInterfaceDeclaration || - result.type === ts_estree_1.AST_NODE_TYPES.TSTypeAliasDeclaration; - const isDeclare = result.declare === true; - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExportNamedDeclaration, - declaration: result, - specifiers: [], - source: null, - exportKind: isType || isDeclare ? 'type' : 'value', - range: [exportKeyword.getStart(this.ast), result.range[1]], - }); - } - } - return result; - } - /** - * Register specific TypeScript node into map with first ESTree node provided - */ - registerTSNodeInNodeMap(node, result) { - if (result && this.options.shouldPreserveNodeMaps) { - if (!this.tsNodeToESTreeNodeMap.has(node)) { - this.tsNodeToESTreeNodeMap.set(node, result); - } - } - } - /** - * Converts a TypeScript node into an ESTree node. - * @param child the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - convertPattern(child, parent) { - return this.converter(child, parent, this.inTypeMode, true); - } - /** - * Converts a TypeScript node into an ESTree node. - * @param child the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - convertChild(child, parent) { - return this.converter(child, parent, this.inTypeMode, false); - } - /** - * Converts a TypeScript node into an ESTree node. - * @param child the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - convertType(child, parent) { - return this.converter(child, parent, true, false); - } - createNode(node, data) { - const result = data; - if (!result.range) { - result.range = node_utils_1.getRange( - // this is completely valid, but TS hates it - node, this.ast); - } - if (!result.loc) { - result.loc = node_utils_1.getLocFor(result.range[0], result.range[1], this.ast); - } - if (result && this.options.shouldPreserveNodeMaps) { - this.esTreeNodeToTSNodeMap.set(result, node); - } - return result; - } - convertBindingNameWithTypeAnnotation(name, tsType, parent) { - const id = this.convertPattern(name); - if (tsType) { - id.typeAnnotation = this.convertTypeAnnotation(tsType, parent); - this.fixParentLocation(id, id.typeAnnotation.range); - } - return id; - } - /** - * Converts a child into a type annotation. This creates an intermediary - * TypeAnnotation node to match what Flow does. - * @param child The TypeScript AST node to convert. - * @param parent parentNode - * @returns The type annotation node. - */ - convertTypeAnnotation(child, parent) { - // in FunctionType and ConstructorType typeAnnotation has 2 characters `=>` and in other places is just colon - const offset = (parent === null || parent === void 0 ? void 0 : parent.kind) === SyntaxKind.FunctionType || - (parent === null || parent === void 0 ? void 0 : parent.kind) === SyntaxKind.ConstructorType - ? 2 - : 1; - const annotationStartCol = child.getFullStart() - offset; - const loc = node_utils_1.getLocFor(annotationStartCol, child.end, this.ast); - return { - type: ts_estree_1.AST_NODE_TYPES.TSTypeAnnotation, - loc, - range: [annotationStartCol, child.end], - typeAnnotation: this.convertType(child), - }; - } - /** - * Coverts body Nodes and add a directive field to StringLiterals - * @param nodes of ts.Node - * @param parent parentNode - * @returns Array of body statements - */ - convertBodyExpressions(nodes, parent) { - let allowDirectives = node_utils_1.canContainDirective(parent); - return (nodes - .map(statement => { - const child = this.convertChild(statement); - if (allowDirectives) { - if ((child === null || child === void 0 ? void 0 : child.expression) && - ts.isExpressionStatement(statement) && - ts.isStringLiteral(statement.expression)) { - const raw = child.expression.raw; - child.directive = raw.slice(1, -1); - return child; // child can be null, but it's filtered below - } - else { - allowDirectives = false; - } - } - return child; // child can be null, but it's filtered below - }) - // filter out unknown nodes for now - .filter(statement => statement)); - } - /** - * Converts a ts.Node's typeArguments to TSTypeParameterInstantiation node - * @param typeArguments ts.NodeArray typeArguments - * @param node parent used to create this node - * @returns TypeParameterInstantiation node - */ - convertTypeArgumentsToTypeParameters(typeArguments, node) { - const greaterThanToken = node_utils_1.findNextToken(typeArguments, this.ast, this.ast); - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeParameterInstantiation, - range: [typeArguments.pos - 1, greaterThanToken.end], - params: typeArguments.map(typeArgument => this.convertType(typeArgument)), - }); - } - /** - * Converts a ts.Node's typeParameters to TSTypeParameterDeclaration node - * @param typeParameters ts.Node typeParameters - * @returns TypeParameterDeclaration node - */ - convertTSTypeParametersToTypeParametersDeclaration(typeParameters) { - const greaterThanToken = node_utils_1.findNextToken(typeParameters, this.ast, this.ast); - return { - type: ts_estree_1.AST_NODE_TYPES.TSTypeParameterDeclaration, - range: [typeParameters.pos - 1, greaterThanToken.end], - loc: node_utils_1.getLocFor(typeParameters.pos - 1, greaterThanToken.end, this.ast), - params: typeParameters.map(typeParameter => this.convertType(typeParameter)), - }; - } - /** - * Converts an array of ts.Node parameters into an array of ESTreeNode params - * @param parameters An array of ts.Node params to be converted - * @returns an array of converted ESTreeNode params - */ - convertParameters(parameters) { - if (!parameters || !parameters.length) { - return []; - } - return parameters.map(param => { - var _a; - const convertedParam = this.convertChild(param); - if ((_a = param.decorators) === null || _a === void 0 ? void 0 : _a.length) { - convertedParam.decorators = param.decorators.map(el => this.convertChild(el)); - } - return convertedParam; - }); - } - convertChainExpression(node, tsNode) { - const { child, isOptional } = (() => { - if (node.type === ts_estree_1.AST_NODE_TYPES.MemberExpression) { - return { child: node.object, isOptional: node.optional }; - } - if (node.type === ts_estree_1.AST_NODE_TYPES.CallExpression) { - return { child: node.callee, isOptional: node.optional }; - } - return { child: node.expression, isOptional: false }; - })(); - const isChildUnwrappable = node_utils_1.isChildUnwrappableOptionalChain(tsNode, child); - if (!isChildUnwrappable && !isOptional) { - return node; - } - if (isChildUnwrappable && node_utils_1.isChainExpression(child)) { - // unwrap the chain expression child - const newChild = child.expression; - if (node.type === ts_estree_1.AST_NODE_TYPES.MemberExpression) { - node.object = newChild; - } - else if (node.type === ts_estree_1.AST_NODE_TYPES.CallExpression) { - node.callee = newChild; - } - else { - node.expression = newChild; - } - } - return this.createNode(tsNode, { - type: ts_estree_1.AST_NODE_TYPES.ChainExpression, - expression: node, - }); - } - /** - * For nodes that are copied directly from the TypeScript AST into - * ESTree mostly as-is. The only difference is the addition of a type - * property instead of a kind property. Recursively copies all children. - */ - deeplyCopy(node) { - if (node.kind === ts.SyntaxKind.JSDocFunctionType) { - throw node_utils_1.createError(this.ast, node.pos, 'JSDoc types can only be used inside documentation comments.'); - } - const customType = `TS${SyntaxKind[node.kind]}`; - /** - * If the "errorOnUnknownASTType" option is set to true, throw an error, - * otherwise fallback to just including the unknown type as-is. - */ - if (this.options.errorOnUnknownASTType && !ts_estree_1.AST_NODE_TYPES[customType]) { - throw new Error(`Unknown AST_NODE_TYPE: "${customType}"`); - } - const result = this.createNode(node, { - type: customType, - }); - if ('type' in node) { - result.typeAnnotation = - node.type && 'kind' in node.type && ts.isTypeNode(node.type) - ? this.convertTypeAnnotation(node.type, node) - : null; - } - if ('typeArguments' in node) { - result.typeParameters = - node.typeArguments && 'pos' in node.typeArguments - ? this.convertTypeArgumentsToTypeParameters(node.typeArguments, node) - : null; - } - if ('typeParameters' in node) { - result.typeParameters = - node.typeParameters && 'pos' in node.typeParameters - ? this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters) - : null; - } - if ('decorators' in node && node.decorators && node.decorators.length) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } - Object.entries(node) - .filter(([key]) => !/^(?:_children|kind|parent|pos|end|flags|modifierFlagsCache|jsDoc|type|typeArguments|typeParameters|decorators)$/.test(key)) - .forEach(([key, value]) => { - if (Array.isArray(value)) { - result[key] = value.map(el => this.convertChild(el)); - } - else if (value && typeof value === 'object' && value.kind) { - // need to check node[key].kind to ensure we don't try to convert a symbol - result[key] = this.convertChild(value); - } - else { - result[key] = value; - } - }); - return result; - } - /** - * Converts a TypeScript JSX node.tagName into an ESTree node.name - * @param node the tagName object from a JSX ts.Node - * @param parent - * @returns the converted ESTree name object - */ - convertJSXTagName(node, parent) { - let result; - switch (node.kind) { - case SyntaxKind.PropertyAccessExpression: - if (node.name.kind === SyntaxKind.PrivateIdentifier) { - // This is one of the few times where TS explicitly errors, and doesn't even gracefully handle the syntax. - // So we shouldn't ever get into this state to begin with. - throw new Error('Non-private identifier expected.'); - } - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXMemberExpression, - object: this.convertJSXTagName(node.expression, parent), - property: this.convertJSXTagName(node.name, parent), - }); - break; - case SyntaxKind.ThisKeyword: - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXIdentifier, - name: 'this', - }); - break; - case SyntaxKind.Identifier: - default: - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXIdentifier, - name: node.text, - }); - break; - } - this.registerTSNodeInNodeMap(node, result); - return result; - } - /** - * Applies the given TS modifiers to the given result object. - * @param result - * @param modifiers original ts.Nodes from the node.modifiers array - * @returns the current result object will be mutated - * @deprecated This method adds not standardized `modifiers` property in nodes - */ - applyModifiersToResult(result, modifiers) { - if (!modifiers || !modifiers.length) { - return; - } - /** - * Some modifiers are explicitly handled by applying them as - * boolean values on the result node. As well as adding them - * to the result, we remove them from the array, so that they - * are not handled twice. - */ - const handledModifierIndices = {}; - for (let i = 0; i < modifiers.length; i++) { - const modifier = modifiers[i]; - switch (modifier.kind) { - /** - * Ignore ExportKeyword and DefaultKeyword, they are handled - * via the fixExports utility function - */ - case SyntaxKind.ExportKeyword: - case SyntaxKind.DefaultKeyword: - handledModifierIndices[i] = true; - break; - case SyntaxKind.ConstKeyword: - result.const = true; - handledModifierIndices[i] = true; - break; - case SyntaxKind.DeclareKeyword: - result.declare = true; - handledModifierIndices[i] = true; - break; - default: - } - } - /** - * If there are still valid modifiers available which have - * not been explicitly handled above, we just convert and - * add the modifiers array to the result node. - */ - const remainingModifiers = modifiers.filter((_, i) => !handledModifierIndices[i]); - if (!remainingModifiers || !remainingModifiers.length) { - return; - } - result.modifiers = remainingModifiers.map(el => this.convertChild(el)); - } - /** - * Uses the provided range location to adjust the location data of the given Node - * @param result The node that will have its location data mutated - * @param childRange The child node range used to expand location - */ - fixParentLocation(result, childRange) { - if (childRange[0] < result.range[0]) { - result.range[0] = childRange[0]; - result.loc.start = node_utils_1.getLineAndCharacterFor(result.range[0], this.ast); - } - if (childRange[1] > result.range[1]) { - result.range[1] = childRange[1]; - result.loc.end = node_utils_1.getLineAndCharacterFor(result.range[1], this.ast); - } - } - /** - * Converts a TypeScript node into an ESTree node. - * The core of the conversion logic: - * Identify and convert each relevant TypeScript SyntaxKind - * @param node the child ts.Node - * @param parent parentNode - * @returns the converted ESTree node - */ - convertNode(node, parent) { - var _a, _b, _c, _d, _e, _f, _g, _h, _j; - switch (node.kind) { - case SyntaxKind.SourceFile: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Program, - body: this.convertBodyExpressions(node.statements, node), - sourceType: node.externalModuleIndicator ? 'module' : 'script', - range: [node.getStart(this.ast), node.endOfFileToken.end], - }); - } - case SyntaxKind.Block: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.BlockStatement, - body: this.convertBodyExpressions(node.statements, node), - }); - } - case SyntaxKind.Identifier: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Identifier, - name: node.text, - }); - } - case SyntaxKind.WithStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.WithStatement, - object: this.convertChild(node.expression), - body: this.convertChild(node.statement), - }); - // Control Flow - case SyntaxKind.ReturnStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ReturnStatement, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.LabeledStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.LabeledStatement, - label: this.convertChild(node.label), - body: this.convertChild(node.statement), - }); - case SyntaxKind.ContinueStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ContinueStatement, - label: this.convertChild(node.label), - }); - case SyntaxKind.BreakStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.BreakStatement, - label: this.convertChild(node.label), - }); - // Choice - case SyntaxKind.IfStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.IfStatement, - test: this.convertChild(node.expression), - consequent: this.convertChild(node.thenStatement), - alternate: this.convertChild(node.elseStatement), - }); - case SyntaxKind.SwitchStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.SwitchStatement, - discriminant: this.convertChild(node.expression), - cases: node.caseBlock.clauses.map(el => this.convertChild(el)), - }); - case SyntaxKind.CaseClause: - case SyntaxKind.DefaultClause: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.SwitchCase, - // expression is present in case only - test: node.kind === SyntaxKind.CaseClause - ? this.convertChild(node.expression) - : null, - consequent: node.statements.map(el => this.convertChild(el)), - }); - // Exceptions - case SyntaxKind.ThrowStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ThrowStatement, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.TryStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TryStatement, - block: this.convertChild(node.tryBlock), - handler: this.convertChild(node.catchClause), - finalizer: this.convertChild(node.finallyBlock), - }); - case SyntaxKind.CatchClause: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.CatchClause, - param: node.variableDeclaration - ? this.convertBindingNameWithTypeAnnotation(node.variableDeclaration.name, node.variableDeclaration.type) - : null, - body: this.convertChild(node.block), - }); - // Loops - case SyntaxKind.WhileStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.WhileStatement, - test: this.convertChild(node.expression), - body: this.convertChild(node.statement), - }); - /** - * Unlike other parsers, TypeScript calls a "DoWhileStatement" - * a "DoStatement" - */ - case SyntaxKind.DoStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.DoWhileStatement, - test: this.convertChild(node.expression), - body: this.convertChild(node.statement), - }); - case SyntaxKind.ForStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ForStatement, - init: this.convertChild(node.initializer), - test: this.convertChild(node.condition), - update: this.convertChild(node.incrementor), - body: this.convertChild(node.statement), - }); - case SyntaxKind.ForInStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ForInStatement, - left: this.convertPattern(node.initializer), - right: this.convertChild(node.expression), - body: this.convertChild(node.statement), - }); - case SyntaxKind.ForOfStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ForOfStatement, - left: this.convertPattern(node.initializer), - right: this.convertChild(node.expression), - body: this.convertChild(node.statement), - await: Boolean(node.awaitModifier && - node.awaitModifier.kind === SyntaxKind.AwaitKeyword), - }); - // Declarations - case SyntaxKind.FunctionDeclaration: { - const isDeclare = node_utils_1.hasModifier(SyntaxKind.DeclareKeyword, node); - const result = this.createNode(node, { - type: isDeclare || !node.body - ? ts_estree_1.AST_NODE_TYPES.TSDeclareFunction - : ts_estree_1.AST_NODE_TYPES.FunctionDeclaration, - id: this.convertChild(node.name), - generator: !!node.asteriskToken, - expression: false, - async: node_utils_1.hasModifier(SyntaxKind.AsyncKeyword, node), - params: this.convertParameters(node.parameters), - body: this.convertChild(node.body) || undefined, - }); - // Process returnType - if (node.type) { - result.returnType = this.convertTypeAnnotation(node.type, node); - } - if (isDeclare) { - result.declare = true; - } - // Process typeParameters - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - // check for exports - return this.fixExports(node, result); - } - case SyntaxKind.VariableDeclaration: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.VariableDeclarator, - id: this.convertBindingNameWithTypeAnnotation(node.name, node.type, node), - init: this.convertChild(node.initializer), - }); - if (node.exclamationToken) { - result.definite = true; - } - return result; - } - case SyntaxKind.VariableStatement: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.VariableDeclaration, - declarations: node.declarationList.declarations.map(el => this.convertChild(el)), - kind: node_utils_1.getDeclarationKind(node.declarationList), - }); - /** - * Semantically, decorators are not allowed on variable declarations, - * but the TypeScript compiler will parse them and produce a valid AST, - * so we handle them here too. - */ - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } - if (node_utils_1.hasModifier(SyntaxKind.DeclareKeyword, node)) { - result.declare = true; - } - // check for exports - return this.fixExports(node, result); - } - // mostly for for-of, for-in - case SyntaxKind.VariableDeclarationList: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.VariableDeclaration, - declarations: node.declarations.map(el => this.convertChild(el)), - kind: node_utils_1.getDeclarationKind(node), - }); - // Expressions - case SyntaxKind.ExpressionStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExpressionStatement, - expression: this.convertChild(node.expression), - }); - case SyntaxKind.ThisKeyword: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ThisExpression, - }); - case SyntaxKind.ArrayLiteralExpression: { - // TypeScript uses ArrayLiteralExpression in destructuring assignment, too - if (this.allowPattern) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ArrayPattern, - elements: node.elements.map(el => this.convertPattern(el)), - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ArrayExpression, - elements: node.elements.map(el => this.convertChild(el)), - }); - } - } - case SyntaxKind.ObjectLiteralExpression: { - // TypeScript uses ObjectLiteralExpression in destructuring assignment, too - if (this.allowPattern) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ObjectPattern, - properties: node.properties.map(el => this.convertPattern(el)), - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ObjectExpression, - properties: node.properties.map(el => this.convertChild(el)), - }); - } - } - case SyntaxKind.PropertyAssignment: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Property, - key: this.convertChild(node.name), - value: this.converter(node.initializer, node, this.inTypeMode, this.allowPattern), - computed: node_utils_1.isComputedProperty(node.name), - method: false, - shorthand: false, - kind: 'init', - }); - case SyntaxKind.ShorthandPropertyAssignment: { - if (node.objectAssignmentInitializer) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Property, - key: this.convertChild(node.name), - value: this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, - left: this.convertPattern(node.name), - right: this.convertChild(node.objectAssignmentInitializer), - }), - computed: false, - method: false, - shorthand: true, - kind: 'init', - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Property, - key: this.convertChild(node.name), - value: this.convertChild(node.name), - computed: false, - method: false, - shorthand: true, - kind: 'init', - }); - } - } - case SyntaxKind.ComputedPropertyName: - return this.convertChild(node.expression); - case SyntaxKind.PropertyDeclaration: { - const isAbstract = node_utils_1.hasModifier(SyntaxKind.AbstractKeyword, node); - const result = this.createNode(node, { - type: isAbstract - ? ts_estree_1.AST_NODE_TYPES.TSAbstractClassProperty - : ts_estree_1.AST_NODE_TYPES.ClassProperty, - key: this.convertChild(node.name), - value: this.convertChild(node.initializer), - computed: node_utils_1.isComputedProperty(node.name), - static: node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node), - readonly: node_utils_1.hasModifier(SyntaxKind.ReadonlyKeyword, node) || undefined, - declare: node_utils_1.hasModifier(SyntaxKind.DeclareKeyword, node), - }); - if (node.type) { - result.typeAnnotation = this.convertTypeAnnotation(node.type, node); - } - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } - const accessibility = node_utils_1.getTSNodeAccessibility(node); - if (accessibility) { - result.accessibility = accessibility; - } - if ((node.name.kind === SyntaxKind.Identifier || - node.name.kind === SyntaxKind.ComputedPropertyName) && - node.questionToken) { - result.optional = true; - } - if (node.exclamationToken) { - result.definite = true; - } - if (result.key.type === ts_estree_1.AST_NODE_TYPES.Literal && node.questionToken) { - result.optional = true; - } - return result; - } - case SyntaxKind.GetAccessor: - case SyntaxKind.SetAccessor: - case SyntaxKind.MethodDeclaration: { - const method = this.createNode(node, { - type: !node.body - ? ts_estree_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression - : ts_estree_1.AST_NODE_TYPES.FunctionExpression, - id: null, - generator: !!node.asteriskToken, - expression: false, - async: node_utils_1.hasModifier(SyntaxKind.AsyncKeyword, node), - body: this.convertChild(node.body), - range: [node.parameters.pos - 1, node.end], - params: [], - }); - if (node.type) { - method.returnType = this.convertTypeAnnotation(node.type, node); - } - // Process typeParameters - if (node.typeParameters) { - method.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - this.fixParentLocation(method, method.typeParameters.range); - } - let result; - if (parent.kind === SyntaxKind.ObjectLiteralExpression) { - method.params = node.parameters.map(el => this.convertChild(el)); - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Property, - key: this.convertChild(node.name), - value: method, - computed: node_utils_1.isComputedProperty(node.name), - method: node.kind === SyntaxKind.MethodDeclaration, - shorthand: false, - kind: 'init', - }); - } - else { - // class - /** - * Unlike in object literal methods, class method params can have decorators - */ - method.params = this.convertParameters(node.parameters); - /** - * TypeScript class methods can be defined as "abstract" - */ - const methodDefinitionType = node_utils_1.hasModifier(SyntaxKind.AbstractKeyword, node) - ? ts_estree_1.AST_NODE_TYPES.TSAbstractMethodDefinition - : ts_estree_1.AST_NODE_TYPES.MethodDefinition; - result = this.createNode(node, { - type: methodDefinitionType, - key: this.convertChild(node.name), - value: method, - computed: node_utils_1.isComputedProperty(node.name), - static: node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node), - kind: 'method', - }); - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } - const accessibility = node_utils_1.getTSNodeAccessibility(node); - if (accessibility) { - result.accessibility = accessibility; - } - } - if (node.questionToken) { - result.optional = true; - } - if (node.kind === SyntaxKind.GetAccessor) { - result.kind = 'get'; - } - else if (node.kind === SyntaxKind.SetAccessor) { - result.kind = 'set'; - } - else if (!result.static && - node.name.kind === SyntaxKind.StringLiteral && - node.name.text === 'constructor' && - result.type !== ts_estree_1.AST_NODE_TYPES.Property) { - result.kind = 'constructor'; - } - return result; - } - // TypeScript uses this even for static methods named "constructor" - case SyntaxKind.Constructor: { - const lastModifier = node_utils_1.getLastModifier(node); - const constructorToken = (lastModifier && node_utils_1.findNextToken(lastModifier, node, this.ast)) || - node.getFirstToken(); - const constructor = this.createNode(node, { - type: !node.body - ? ts_estree_1.AST_NODE_TYPES.TSEmptyBodyFunctionExpression - : ts_estree_1.AST_NODE_TYPES.FunctionExpression, - id: null, - params: this.convertParameters(node.parameters), - generator: false, - expression: false, - async: false, - body: this.convertChild(node.body), - range: [node.parameters.pos - 1, node.end], - }); - // Process typeParameters - if (node.typeParameters) { - constructor.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - this.fixParentLocation(constructor, constructor.typeParameters.range); - } - // Process returnType - if (node.type) { - constructor.returnType = this.convertTypeAnnotation(node.type, node); - } - const constructorKey = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Identifier, - name: 'constructor', - range: [constructorToken.getStart(this.ast), constructorToken.end], - }); - const isStatic = node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node); - const result = this.createNode(node, { - type: node_utils_1.hasModifier(SyntaxKind.AbstractKeyword, node) - ? ts_estree_1.AST_NODE_TYPES.TSAbstractMethodDefinition - : ts_estree_1.AST_NODE_TYPES.MethodDefinition, - key: constructorKey, - value: constructor, - computed: false, - static: isStatic, - kind: isStatic ? 'method' : 'constructor', - }); - const accessibility = node_utils_1.getTSNodeAccessibility(node); - if (accessibility) { - result.accessibility = accessibility; - } - return result; - } - case SyntaxKind.FunctionExpression: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.FunctionExpression, - id: this.convertChild(node.name), - generator: !!node.asteriskToken, - params: this.convertParameters(node.parameters), - body: this.convertChild(node.body), - async: node_utils_1.hasModifier(SyntaxKind.AsyncKeyword, node), - expression: false, - }); - // Process returnType - if (node.type) { - result.returnType = this.convertTypeAnnotation(node.type, node); - } - // Process typeParameters - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - return result; - } - case SyntaxKind.SuperKeyword: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Super, - }); - case SyntaxKind.ArrayBindingPattern: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ArrayPattern, - elements: node.elements.map(el => this.convertPattern(el)), - }); - // occurs with missing array elements like [,] - case SyntaxKind.OmittedExpression: - return null; - case SyntaxKind.ObjectBindingPattern: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ObjectPattern, - properties: node.elements.map(el => this.convertPattern(el)), - }); - case SyntaxKind.BindingElement: { - if (parent.kind === SyntaxKind.ArrayBindingPattern) { - const arrayItem = this.convertChild(node.name, parent); - if (node.initializer) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, - left: arrayItem, - right: this.convertChild(node.initializer), - }); - } - else if (node.dotDotDotToken) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.RestElement, - argument: arrayItem, - }); - } - else { - return arrayItem; - } - } - else { - let result; - if (node.dotDotDotToken) { - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.RestElement, - argument: this.convertChild((_a = node.propertyName) !== null && _a !== void 0 ? _a : node.name), - }); - } - else { - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Property, - key: this.convertChild((_b = node.propertyName) !== null && _b !== void 0 ? _b : node.name), - value: this.convertChild(node.name), - computed: Boolean(node.propertyName && - node.propertyName.kind === SyntaxKind.ComputedPropertyName), - method: false, - shorthand: !node.propertyName, - kind: 'init', - }); - } - if (node.initializer) { - result.value = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, - left: this.convertChild(node.name), - right: this.convertChild(node.initializer), - range: [node.name.getStart(this.ast), node.initializer.end], - }); - } - return result; - } - } - case SyntaxKind.ArrowFunction: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ArrowFunctionExpression, - generator: false, - id: null, - params: this.convertParameters(node.parameters), - body: this.convertChild(node.body), - async: node_utils_1.hasModifier(SyntaxKind.AsyncKeyword, node), - expression: node.body.kind !== SyntaxKind.Block, - }); - // Process returnType - if (node.type) { - result.returnType = this.convertTypeAnnotation(node.type, node); - } - // Process typeParameters - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - return result; - } - case SyntaxKind.YieldExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.YieldExpression, - delegate: !!node.asteriskToken, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.AwaitExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.AwaitExpression, - argument: this.convertChild(node.expression), - }); - // Template Literals - case SyntaxKind.NoSubstitutionTemplateLiteral: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TemplateLiteral, - quasis: [ - this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TemplateElement, - value: { - raw: this.ast.text.slice(node.getStart(this.ast) + 1, node.end - 1), - cooked: node.text, - }, - tail: true, - }), - ], - expressions: [], - }); - case SyntaxKind.TemplateExpression: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TemplateLiteral, - quasis: [this.convertChild(node.head)], - expressions: [], - }); - node.templateSpans.forEach(templateSpan => { - result.expressions.push(this.convertChild(templateSpan.expression)); - result.quasis.push(this.convertChild(templateSpan.literal)); - }); - return result; - } - case SyntaxKind.TaggedTemplateExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TaggedTemplateExpression, - typeParameters: node.typeArguments - ? this.convertTypeArgumentsToTypeParameters(node.typeArguments, node) - : undefined, - tag: this.convertChild(node.tag), - quasi: this.convertChild(node.template), - }); - case SyntaxKind.TemplateHead: - case SyntaxKind.TemplateMiddle: - case SyntaxKind.TemplateTail: { - const tail = node.kind === SyntaxKind.TemplateTail; - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TemplateElement, - value: { - raw: this.ast.text.slice(node.getStart(this.ast) + 1, node.end - (tail ? 1 : 2)), - cooked: node.text, - }, - tail, - }); - } - // Patterns - case SyntaxKind.SpreadAssignment: - case SyntaxKind.SpreadElement: { - if (this.allowPattern) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.RestElement, - argument: this.convertPattern(node.expression), - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.SpreadElement, - argument: this.convertChild(node.expression), - }); - } - } - case SyntaxKind.Parameter: { - let parameter; - let result; - if (node.dotDotDotToken) { - parameter = result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.RestElement, - argument: this.convertChild(node.name), - }); - } - else if (node.initializer) { - parameter = this.convertChild(node.name); - result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, - left: parameter, - right: this.convertChild(node.initializer), - }); - if (node.modifiers) { - // AssignmentPattern should not contain modifiers in range - result.range[0] = parameter.range[0]; - result.loc = node_utils_1.getLocFor(result.range[0], result.range[1], this.ast); - } - } - else { - parameter = result = this.convertChild(node.name, parent); - } - if (node.type) { - parameter.typeAnnotation = this.convertTypeAnnotation(node.type, node); - this.fixParentLocation(parameter, parameter.typeAnnotation.range); - } - if (node.questionToken) { - if (node.questionToken.end > parameter.range[1]) { - parameter.range[1] = node.questionToken.end; - parameter.loc.end = node_utils_1.getLineAndCharacterFor(parameter.range[1], this.ast); - } - parameter.optional = true; - } - if (node.modifiers) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSParameterProperty, - accessibility: (_c = node_utils_1.getTSNodeAccessibility(node)) !== null && _c !== void 0 ? _c : undefined, - readonly: node_utils_1.hasModifier(SyntaxKind.ReadonlyKeyword, node) || undefined, - static: node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node) || undefined, - export: node_utils_1.hasModifier(SyntaxKind.ExportKeyword, node) || undefined, - parameter: result, - }); - } - return result; - } - // Classes - case SyntaxKind.ClassDeclaration: - case SyntaxKind.ClassExpression: { - const heritageClauses = (_d = node.heritageClauses) !== null && _d !== void 0 ? _d : []; - const classNodeType = node.kind === SyntaxKind.ClassDeclaration - ? ts_estree_1.AST_NODE_TYPES.ClassDeclaration - : ts_estree_1.AST_NODE_TYPES.ClassExpression; - const superClass = heritageClauses.find(clause => clause.token === SyntaxKind.ExtendsKeyword); - const implementsClause = heritageClauses.find(clause => clause.token === SyntaxKind.ImplementsKeyword); - const result = this.createNode(node, { - type: classNodeType, - id: this.convertChild(node.name), - body: this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ClassBody, - body: [], - range: [node.members.pos - 1, node.end], - }), - superClass: (superClass === null || superClass === void 0 ? void 0 : superClass.types[0]) ? this.convertChild(superClass.types[0].expression) - : null, - }); - if (superClass) { - if (superClass.types.length > 1) { - throw node_utils_1.createError(this.ast, superClass.types[1].pos, 'Classes can only extend a single class.'); - } - if ((_e = superClass.types[0]) === null || _e === void 0 ? void 0 : _e.typeArguments) { - result.superTypeParameters = this.convertTypeArgumentsToTypeParameters(superClass.types[0].typeArguments, superClass.types[0]); - } - } - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - if (implementsClause) { - result.implements = implementsClause.types.map(el => this.convertChild(el)); - } - /** - * TypeScript class declarations can be defined as "abstract" - */ - if (node_utils_1.hasModifier(SyntaxKind.AbstractKeyword, node)) { - result.abstract = true; - } - if (node_utils_1.hasModifier(SyntaxKind.DeclareKeyword, node)) { - result.declare = true; - } - if (node.decorators) { - result.decorators = node.decorators.map(el => this.convertChild(el)); - } - const filteredMembers = node.members.filter(node_utils_1.isESTreeClassMember); - if (filteredMembers.length) { - result.body.body = filteredMembers.map(el => this.convertChild(el)); - } - // check for exports - return this.fixExports(node, result); - } - // Modules - case SyntaxKind.ModuleBlock: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSModuleBlock, - body: this.convertBodyExpressions(node.statements, node), - }); - case SyntaxKind.ImportDeclaration: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ImportDeclaration, - source: this.convertChild(node.moduleSpecifier), - specifiers: [], - importKind: 'value', - }); - if (node.importClause) { - if (node.importClause.isTypeOnly) { - result.importKind = 'type'; - } - if (node.importClause.name) { - result.specifiers.push(this.convertChild(node.importClause)); - } - if (node.importClause.namedBindings) { - switch (node.importClause.namedBindings.kind) { - case SyntaxKind.NamespaceImport: - result.specifiers.push(this.convertChild(node.importClause.namedBindings)); - break; - case SyntaxKind.NamedImports: - result.specifiers = result.specifiers.concat(node.importClause.namedBindings.elements.map(el => this.convertChild(el))); - break; - } - } - } - return result; - } - case SyntaxKind.NamespaceImport: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ImportNamespaceSpecifier, - local: this.convertChild(node.name), - }); - case SyntaxKind.ImportSpecifier: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ImportSpecifier, - local: this.convertChild(node.name), - imported: this.convertChild((_f = node.propertyName) !== null && _f !== void 0 ? _f : node.name), - }); - case SyntaxKind.ImportClause: { - const local = this.convertChild(node.name); - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ImportDefaultSpecifier, - local, - range: local.range, - }); - } - case SyntaxKind.ExportDeclaration: - if (((_g = node.exportClause) === null || _g === void 0 ? void 0 : _g.kind) === SyntaxKind.NamedExports) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExportNamedDeclaration, - source: this.convertChild(node.moduleSpecifier), - specifiers: node.exportClause.elements.map(el => this.convertChild(el)), - exportKind: node.isTypeOnly ? 'type' : 'value', - declaration: null, - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExportAllDeclaration, - source: this.convertChild(node.moduleSpecifier), - exportKind: node.isTypeOnly ? 'type' : 'value', - exported: - // note - for compat with 3.7.x, where node.exportClause is always undefined and - // SyntaxKind.NamespaceExport does not exist yet (i.e. is undefined), this - // cannot be shortened to an optional chain, or else you end up with - // undefined === undefined, and the true path will hard error at runtime - node.exportClause && - node.exportClause.kind === SyntaxKind.NamespaceExport - ? this.convertChild(node.exportClause.name) - : null, - }); - } - case SyntaxKind.ExportSpecifier: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExportSpecifier, - local: this.convertChild((_h = node.propertyName) !== null && _h !== void 0 ? _h : node.name), - exported: this.convertChild(node.name), - }); - case SyntaxKind.ExportAssignment: - if (node.isExportEquals) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSExportAssignment, - expression: this.convertChild(node.expression), - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ExportDefaultDeclaration, - declaration: this.convertChild(node.expression), - exportKind: 'value', - }); - } - // Unary Operations - case SyntaxKind.PrefixUnaryExpression: - case SyntaxKind.PostfixUnaryExpression: { - const operator = node_utils_1.getTextForTokenKind(node.operator); - /** - * ESTree uses UpdateExpression for ++/-- - */ - if (operator === '++' || operator === '--') { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.UpdateExpression, - operator, - prefix: node.kind === SyntaxKind.PrefixUnaryExpression, - argument: this.convertChild(node.operand), - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.UnaryExpression, - operator, - prefix: node.kind === SyntaxKind.PrefixUnaryExpression, - argument: this.convertChild(node.operand), - }); - } - } - case SyntaxKind.DeleteExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.UnaryExpression, - operator: 'delete', - prefix: true, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.VoidExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.UnaryExpression, - operator: 'void', - prefix: true, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.TypeOfExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.UnaryExpression, - operator: 'typeof', - prefix: true, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.TypeOperator: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeOperator, - operator: node_utils_1.getTextForTokenKind(node.operator), - typeAnnotation: this.convertChild(node.type), - }); - // Binary Operations - case SyntaxKind.BinaryExpression: { - // TypeScript uses BinaryExpression for sequences as well - if (node_utils_1.isComma(node.operatorToken)) { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.SequenceExpression, - expressions: [], - }); - const left = this.convertChild(node.left); - if (left.type === ts_estree_1.AST_NODE_TYPES.SequenceExpression && - node.left.kind !== SyntaxKind.ParenthesizedExpression) { - result.expressions = result.expressions.concat(left.expressions); - } - else { - result.expressions.push(left); - } - result.expressions.push(this.convertChild(node.right)); - return result; - } - else { - const type = node_utils_1.getBinaryExpressionType(node.operatorToken); - if (this.allowPattern && - type === ts_estree_1.AST_NODE_TYPES.AssignmentExpression) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, - left: this.convertPattern(node.left, node), - right: this.convertChild(node.right), - }); - } - return this.createNode(node, { - type, - operator: node_utils_1.getTextForTokenKind(node.operatorToken.kind), - left: this.converter(node.left, node, this.inTypeMode, type === ts_estree_1.AST_NODE_TYPES.AssignmentExpression), - right: this.convertChild(node.right), - }); - } - } - case SyntaxKind.PropertyAccessExpression: { - const object = this.convertChild(node.expression); - const property = this.convertChild(node.name); - const computed = false; - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.MemberExpression, - object, - property, - computed, - optional: node.questionDotToken !== undefined, - }); - return this.convertChainExpression(result, node); - } - case SyntaxKind.ElementAccessExpression: { - const object = this.convertChild(node.expression); - const property = this.convertChild(node.argumentExpression); - const computed = true; - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.MemberExpression, - object, - property, - computed, - optional: node.questionDotToken !== undefined, - }); - return this.convertChainExpression(result, node); - } - case SyntaxKind.CallExpression: { - if (node.expression.kind === SyntaxKind.ImportKeyword) { - if (node.arguments.length !== 1) { - throw node_utils_1.createError(this.ast, node.arguments.pos, 'Dynamic import must have one specifier as an argument.'); - } - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ImportExpression, - source: this.convertChild(node.arguments[0]), - }); - } - const callee = this.convertChild(node.expression); - const args = node.arguments.map(el => this.convertChild(el)); - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.CallExpression, - callee, - arguments: args, - optional: node.questionDotToken !== undefined, - }); - if (node.typeArguments) { - result.typeParameters = this.convertTypeArgumentsToTypeParameters(node.typeArguments, node); - } - return this.convertChainExpression(result, node); - } - case SyntaxKind.NewExpression: { - // NOTE - NewExpression cannot have an optional chain in it - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.NewExpression, - callee: this.convertChild(node.expression), - arguments: node.arguments - ? node.arguments.map(el => this.convertChild(el)) - : [], - }); - if (node.typeArguments) { - result.typeParameters = this.convertTypeArgumentsToTypeParameters(node.typeArguments, node); - } - return result; - } - case SyntaxKind.ConditionalExpression: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.ConditionalExpression, - test: this.convertChild(node.condition), - consequent: this.convertChild(node.whenTrue), - alternate: this.convertChild(node.whenFalse), - }); - case SyntaxKind.MetaProperty: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.MetaProperty, - meta: this.createNode( - // TODO: do we really want to convert it to Token? - node.getFirstToken(), { - type: ts_estree_1.AST_NODE_TYPES.Identifier, - name: node_utils_1.getTextForTokenKind(node.keywordToken), - }), - property: this.convertChild(node.name), - }); - } - case SyntaxKind.Decorator: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Decorator, - expression: this.convertChild(node.expression), - }); - } - // Literals - case SyntaxKind.StringLiteral: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - raw: '', - value: '', - }); - result.raw = this.ast.text.slice(result.range[0], result.range[1]); - if ('name' in parent && parent.name === node) { - result.value = node.text; - } - else { - result.value = node_utils_1.unescapeStringLiteralText(node.text); - } - return result; - } - case SyntaxKind.NumericLiteral: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: Number(node.text), - raw: node.getText(), - }); - } - case SyntaxKind.BigIntLiteral: { - const range = node_utils_1.getRange(node, this.ast); - const rawValue = this.ast.text.slice(range[0], range[1]); - const bigint = rawValue - // remove suffix `n` - .slice(0, -1) - // `BigInt` doesn't accept numeric separator - // and `bigint` property should not include numeric separator - .replace(/_/g, ''); - const value = typeof BigInt !== 'undefined' ? BigInt(bigint) : null; - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - raw: rawValue, - value: value, - bigint: value === null ? bigint : String(value), - range, - }); - } - case SyntaxKind.RegularExpressionLiteral: { - const pattern = node.text.slice(1, node.text.lastIndexOf('/')); - const flags = node.text.slice(node.text.lastIndexOf('/') + 1); - let regex = null; - try { - regex = new RegExp(pattern, flags); - } - catch (exception) { - regex = null; - } - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: regex, - raw: node.text, - regex: { - pattern, - flags, - }, - }); - } - case SyntaxKind.TrueKeyword: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: true, - raw: 'true', - }); - case SyntaxKind.FalseKeyword: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: false, - raw: 'false', - }); - case SyntaxKind.NullKeyword: { - if (!version_check_1.typescriptVersionIsAtLeast['4.0'] && this.inTypeMode) { - // 4.0 started nesting null types inside a LiteralType node, but we still need to support pre-4.0 - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSNullKeyword, - }); - } - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: null, - raw: 'null', - }); - } - case SyntaxKind.EmptyStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.EmptyStatement, - }); - case SyntaxKind.DebuggerStatement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.DebuggerStatement, - }); - // JSX - case SyntaxKind.JsxElement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXElement, - openingElement: this.convertChild(node.openingElement), - closingElement: this.convertChild(node.closingElement), - children: node.children.map(el => this.convertChild(el)), - }); - case SyntaxKind.JsxFragment: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXFragment, - openingFragment: this.convertChild(node.openingFragment), - closingFragment: this.convertChild(node.closingFragment), - children: node.children.map(el => this.convertChild(el)), - }); - case SyntaxKind.JsxSelfClosingElement: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXElement, - /** - * Convert SyntaxKind.JsxSelfClosingElement to SyntaxKind.JsxOpeningElement, - * TypeScript does not seem to have the idea of openingElement when tag is self-closing - */ - openingElement: this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXOpeningElement, - typeParameters: node.typeArguments - ? this.convertTypeArgumentsToTypeParameters(node.typeArguments, node) - : undefined, - selfClosing: true, - name: this.convertJSXTagName(node.tagName, node), - attributes: node.attributes.properties.map(el => this.convertChild(el)), - range: node_utils_1.getRange(node, this.ast), - }), - closingElement: null, - children: [], - }); - } - case SyntaxKind.JsxOpeningElement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXOpeningElement, - typeParameters: node.typeArguments - ? this.convertTypeArgumentsToTypeParameters(node.typeArguments, node) - : undefined, - selfClosing: false, - name: this.convertJSXTagName(node.tagName, node), - attributes: node.attributes.properties.map(el => this.convertChild(el)), - }); - case SyntaxKind.JsxClosingElement: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXClosingElement, - name: this.convertJSXTagName(node.tagName, node), - }); - case SyntaxKind.JsxOpeningFragment: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXOpeningFragment, - }); - case SyntaxKind.JsxClosingFragment: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXClosingFragment, - }); - case SyntaxKind.JsxExpression: { - const expression = node.expression - ? this.convertChild(node.expression) - : this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXEmptyExpression, - range: [node.getStart(this.ast) + 1, node.getEnd() - 1], - }); - if (node.dotDotDotToken) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXSpreadChild, - expression, - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXExpressionContainer, - expression, - }); - } - } - case SyntaxKind.JsxAttribute: { - const attributeName = this.convertChild(node.name); - attributeName.type = ts_estree_1.AST_NODE_TYPES.JSXIdentifier; - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXAttribute, - name: attributeName, - value: this.convertChild(node.initializer), - }); - } - /** - * The JSX AST changed the node type for string literals - * inside a JSX Element from `Literal` to `JSXText`. We - * provide a flag to support both types until `Literal` - * node type is deprecated in ESLint v5. - */ - case SyntaxKind.JsxText: { - const start = node.getFullStart(); - const end = node.getEnd(); - if (this.options.useJSXTextNode) { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXText, - value: this.ast.text.slice(start, end), - raw: this.ast.text.slice(start, end), - range: [start, end], - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.Literal, - value: this.ast.text.slice(start, end), - raw: this.ast.text.slice(start, end), - range: [start, end], - }); - } - } - case SyntaxKind.JsxSpreadAttribute: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.JSXSpreadAttribute, - argument: this.convertChild(node.expression), - }); - case SyntaxKind.QualifiedName: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSQualifiedName, - left: this.convertChild(node.left), - right: this.convertChild(node.right), - }); - } - // TypeScript specific - case SyntaxKind.TypeReference: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeReference, - typeName: this.convertType(node.typeName), - typeParameters: node.typeArguments - ? this.convertTypeArgumentsToTypeParameters(node.typeArguments, node) - : undefined, - }); - } - case SyntaxKind.TypeParameter: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeParameter, - name: this.convertType(node.name), - constraint: node.constraint - ? this.convertType(node.constraint) - : undefined, - default: node.default ? this.convertType(node.default) : undefined, - }); - } - case SyntaxKind.ThisType: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSThisType, - }); - case SyntaxKind.AnyKeyword: - case SyntaxKind.BigIntKeyword: - case SyntaxKind.BooleanKeyword: - case SyntaxKind.NeverKeyword: - case SyntaxKind.NumberKeyword: - case SyntaxKind.ObjectKeyword: - case SyntaxKind.StringKeyword: - case SyntaxKind.SymbolKeyword: - case SyntaxKind.UnknownKeyword: - case SyntaxKind.VoidKeyword: - case SyntaxKind.UndefinedKeyword: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES[`TS${SyntaxKind[node.kind]}`], - }); - } - case SyntaxKind.NonNullExpression: { - const nnExpr = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSNonNullExpression, - expression: this.convertChild(node.expression), - }); - return this.convertChainExpression(nnExpr, node); - } - case SyntaxKind.TypeLiteral: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeLiteral, - members: node.members.map(el => this.convertChild(el)), - }); - } - case SyntaxKind.ArrayType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSArrayType, - elementType: this.convertType(node.elementType), - }); - } - case SyntaxKind.IndexedAccessType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSIndexedAccessType, - objectType: this.convertType(node.objectType), - indexType: this.convertType(node.indexType), - }); - } - case SyntaxKind.ConditionalType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSConditionalType, - checkType: this.convertType(node.checkType), - extendsType: this.convertType(node.extendsType), - trueType: this.convertType(node.trueType), - falseType: this.convertType(node.falseType), - }); - } - case SyntaxKind.TypeQuery: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeQuery, - exprName: this.convertType(node.exprName), - }); - } - case SyntaxKind.MappedType: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSMappedType, - typeParameter: this.convertType(node.typeParameter), - }); - if (node.readonlyToken) { - if (node.readonlyToken.kind === SyntaxKind.ReadonlyKeyword) { - result.readonly = true; - } - else { - result.readonly = node_utils_1.getTextForTokenKind(node.readonlyToken.kind); - } - } - if (node.questionToken) { - if (node.questionToken.kind === SyntaxKind.QuestionToken) { - result.optional = true; - } - else { - result.optional = node_utils_1.getTextForTokenKind(node.questionToken.kind); - } - } - if (node.type) { - result.typeAnnotation = this.convertType(node.type); - } - return result; - } - case SyntaxKind.ParenthesizedExpression: - return this.convertChild(node.expression, parent); - case SyntaxKind.TypeAliasDeclaration: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeAliasDeclaration, - id: this.convertChild(node.name), - typeAnnotation: this.convertType(node.type), - }); - if (node_utils_1.hasModifier(SyntaxKind.DeclareKeyword, node)) { - result.declare = true; - } - // Process typeParameters - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - // check for exports - return this.fixExports(node, result); - } - case SyntaxKind.MethodSignature: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSMethodSignature, - computed: node_utils_1.isComputedProperty(node.name), - key: this.convertChild(node.name), - params: this.convertParameters(node.parameters), - }); - if (node_utils_1.isOptional(node)) { - result.optional = true; - } - if (node.type) { - result.returnType = this.convertTypeAnnotation(node.type, node); - } - if (node_utils_1.hasModifier(SyntaxKind.ReadonlyKeyword, node)) { - result.readonly = true; - } - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - const accessibility = node_utils_1.getTSNodeAccessibility(node); - if (accessibility) { - result.accessibility = accessibility; - } - if (node_utils_1.hasModifier(SyntaxKind.ExportKeyword, node)) { - result.export = true; - } - if (node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node)) { - result.static = true; - } - return result; - } - case SyntaxKind.PropertySignature: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSPropertySignature, - optional: node_utils_1.isOptional(node) || undefined, - computed: node_utils_1.isComputedProperty(node.name), - key: this.convertChild(node.name), - typeAnnotation: node.type - ? this.convertTypeAnnotation(node.type, node) - : undefined, - initializer: this.convertChild(node.initializer) || undefined, - readonly: node_utils_1.hasModifier(SyntaxKind.ReadonlyKeyword, node) || undefined, - static: node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node) || undefined, - export: node_utils_1.hasModifier(SyntaxKind.ExportKeyword, node) || undefined, - }); - const accessibility = node_utils_1.getTSNodeAccessibility(node); - if (accessibility) { - result.accessibility = accessibility; - } - return result; - } - case SyntaxKind.IndexSignature: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSIndexSignature, - parameters: node.parameters.map(el => this.convertChild(el)), - }); - if (node.type) { - result.typeAnnotation = this.convertTypeAnnotation(node.type, node); - } - if (node_utils_1.hasModifier(SyntaxKind.ReadonlyKeyword, node)) { - result.readonly = true; - } - const accessibility = node_utils_1.getTSNodeAccessibility(node); - if (accessibility) { - result.accessibility = accessibility; - } - if (node_utils_1.hasModifier(SyntaxKind.ExportKeyword, node)) { - result.export = true; - } - if (node_utils_1.hasModifier(SyntaxKind.StaticKeyword, node)) { - result.static = true; - } - return result; - } - case SyntaxKind.ConstructorType: - case SyntaxKind.FunctionType: - case SyntaxKind.ConstructSignature: - case SyntaxKind.CallSignature: { - let type; - switch (node.kind) { - case SyntaxKind.ConstructSignature: - type = ts_estree_1.AST_NODE_TYPES.TSConstructSignatureDeclaration; - break; - case SyntaxKind.CallSignature: - type = ts_estree_1.AST_NODE_TYPES.TSCallSignatureDeclaration; - break; - case SyntaxKind.FunctionType: - type = ts_estree_1.AST_NODE_TYPES.TSFunctionType; - break; - case SyntaxKind.ConstructorType: - default: - type = ts_estree_1.AST_NODE_TYPES.TSConstructorType; - break; - } - const result = this.createNode(node, { - type: type, - params: this.convertParameters(node.parameters), - }); - if (node.type) { - result.returnType = this.convertTypeAnnotation(node.type, node); - } - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - return result; - } - case SyntaxKind.ExpressionWithTypeArguments: { - const result = this.createNode(node, { - type: parent && parent.kind === SyntaxKind.InterfaceDeclaration - ? ts_estree_1.AST_NODE_TYPES.TSInterfaceHeritage - : ts_estree_1.AST_NODE_TYPES.TSClassImplements, - expression: this.convertChild(node.expression), - }); - if (node.typeArguments) { - result.typeParameters = this.convertTypeArgumentsToTypeParameters(node.typeArguments, node); - } - return result; - } - case SyntaxKind.InterfaceDeclaration: { - const interfaceHeritageClauses = (_j = node.heritageClauses) !== null && _j !== void 0 ? _j : []; - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSInterfaceDeclaration, - body: this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSInterfaceBody, - body: node.members.map(member => this.convertChild(member)), - range: [node.members.pos - 1, node.end], - }), - id: this.convertChild(node.name), - }); - if (node.typeParameters) { - result.typeParameters = this.convertTSTypeParametersToTypeParametersDeclaration(node.typeParameters); - } - if (interfaceHeritageClauses.length > 0) { - const interfaceExtends = []; - const interfaceImplements = []; - for (const heritageClause of interfaceHeritageClauses) { - if (heritageClause.token === SyntaxKind.ExtendsKeyword) { - for (const n of heritageClause.types) { - interfaceExtends.push(this.convertChild(n, node)); - } - } - else { - for (const n of heritageClause.types) { - interfaceImplements.push(this.convertChild(n, node)); - } - } - } - if (interfaceExtends.length) { - result.extends = interfaceExtends; - } - if (interfaceImplements.length) { - result.implements = interfaceImplements; - } - } - if (node_utils_1.hasModifier(SyntaxKind.AbstractKeyword, node)) { - result.abstract = true; - } - if (node_utils_1.hasModifier(SyntaxKind.DeclareKeyword, node)) { - result.declare = true; - } - // check for exports - return this.fixExports(node, result); - } - case SyntaxKind.TypePredicate: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypePredicate, - asserts: node.assertsModifier !== undefined, - parameterName: this.convertChild(node.parameterName), - typeAnnotation: null, - }); - /** - * Specific fix for type-guard location data - */ - if (node.type) { - result.typeAnnotation = this.convertTypeAnnotation(node.type, node); - result.typeAnnotation.loc = result.typeAnnotation.typeAnnotation.loc; - result.typeAnnotation.range = - result.typeAnnotation.typeAnnotation.range; - } - return result; - } - case SyntaxKind.ImportType: - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSImportType, - isTypeOf: !!node.isTypeOf, - parameter: this.convertChild(node.argument), - qualifier: this.convertChild(node.qualifier), - typeParameters: node.typeArguments - ? this.convertTypeArgumentsToTypeParameters(node.typeArguments, node) - : null, - }); - case SyntaxKind.EnumDeclaration: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSEnumDeclaration, - id: this.convertChild(node.name), - members: node.members.map(el => this.convertChild(el)), - }); - // apply modifiers first... - this.applyModifiersToResult(result, node.modifiers); - // ...then check for exports - return this.fixExports(node, result); - } - case SyntaxKind.EnumMember: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSEnumMember, - id: this.convertChild(node.name), - }); - if (node.initializer) { - result.initializer = this.convertChild(node.initializer); - } - if (node.name.kind === ts.SyntaxKind.ComputedPropertyName) { - result.computed = true; - } - return result; - } - case SyntaxKind.ModuleDeclaration: { - const result = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSModuleDeclaration, - id: this.convertChild(node.name), - }); - if (node.body) { - result.body = this.convertChild(node.body); - } - // apply modifiers first... - this.applyModifiersToResult(result, node.modifiers); - if (node.flags & ts.NodeFlags.GlobalAugmentation) { - result.global = true; - } - // ...then check for exports - return this.fixExports(node, result); - } - // TypeScript specific types - case SyntaxKind.ParenthesizedType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSParenthesizedType, - typeAnnotation: this.convertType(node.type), - }); - } - case SyntaxKind.UnionType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSUnionType, - types: node.types.map(el => this.convertType(el)), - }); - } - case SyntaxKind.IntersectionType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSIntersectionType, - types: node.types.map(el => this.convertType(el)), - }); - } - case SyntaxKind.AsExpression: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSAsExpression, - expression: this.convertChild(node.expression), - typeAnnotation: this.convertType(node.type), - }); - } - case SyntaxKind.InferType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSInferType, - typeParameter: this.convertType(node.typeParameter), - }); - } - case SyntaxKind.LiteralType: { - if (version_check_1.typescriptVersionIsAtLeast['4.0'] && - node.literal.kind === SyntaxKind.NullKeyword) { - // 4.0 started nesting null types inside a LiteralType node - // but our AST is designed around the old way of null being a keyword - return this.createNode(node.literal, { - type: ts_estree_1.AST_NODE_TYPES.TSNullKeyword, - }); - } - else { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSLiteralType, - literal: this.convertType(node.literal), - }); - } - } - case SyntaxKind.TypeAssertionExpression: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTypeAssertion, - typeAnnotation: this.convertType(node.type), - expression: this.convertChild(node.expression), - }); - } - case SyntaxKind.ImportEqualsDeclaration: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSImportEqualsDeclaration, - id: this.convertChild(node.name), - moduleReference: this.convertChild(node.moduleReference), - isExport: node_utils_1.hasModifier(SyntaxKind.ExportKeyword, node), - }); - } - case SyntaxKind.ExternalModuleReference: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSExternalModuleReference, - expression: this.convertChild(node.expression), - }); - } - case SyntaxKind.NamespaceExportDeclaration: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSNamespaceExportDeclaration, - id: this.convertChild(node.name), - }); - } - case SyntaxKind.AbstractKeyword: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSAbstractKeyword, - }); - } - // Tuple - case SyntaxKind.TupleType: { - // In TS 4.0, the `elementTypes` property was changed to `elements`. - // To support both at compile time, we cast to access the newer version - // if the former does not exist. - const elementTypes = 'elementTypes' in node - ? node.elementTypes.map((el) => this.convertType(el)) - : node.elements.map((el) => this.convertType(el)); - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSTupleType, - elementTypes, - }); - } - case SyntaxKind.NamedTupleMember: { - const member = this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSNamedTupleMember, - elementType: this.convertType(node.type, node), - label: this.convertChild(node.name, node), - optional: node.questionToken != null, - }); - if (node.dotDotDotToken) { - // adjust the start to account for the "..." - member.range[0] = member.label.range[0]; - member.loc.start = member.label.loc.start; - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSRestType, - typeAnnotation: member, - }); - } - return member; - } - case SyntaxKind.OptionalType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSOptionalType, - typeAnnotation: this.convertType(node.type), - }); - } - case SyntaxKind.RestType: { - return this.createNode(node, { - type: ts_estree_1.AST_NODE_TYPES.TSRestType, - typeAnnotation: this.convertType(node.type), - }); - } - default: - return this.deeplyCopy(node); - } - } -} -exports.Converter = Converter; -//# sourceMappingURL=convert.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map deleted file mode 100644 index da4e64df..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts deleted file mode 100644 index 85764acf..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import * as ts from 'typescript'; -interface DirectoryStructureHost { - readDirectory?(path: string, extensions?: ReadonlyArray, exclude?: ReadonlyArray, include?: ReadonlyArray, depth?: number): string[]; -} -interface CachedDirectoryStructureHost extends DirectoryStructureHost { - readDirectory(path: string, extensions?: ReadonlyArray, exclude?: ReadonlyArray, include?: ReadonlyArray, depth?: number): string[]; -} -interface WatchCompilerHostOfConfigFile extends ts.WatchCompilerHostOfConfigFile { - onCachedDirectoryStructureHostCreate(host: CachedDirectoryStructureHost): void; - extraFileExtensions?: readonly ts.FileExtensionInfo[]; -} -export { WatchCompilerHostOfConfigFile }; -//# sourceMappingURL=WatchCompilerHostOfConfigFile.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map deleted file mode 100644 index 408e42e8..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WatchCompilerHostOfConfigFile.d.ts","sourceRoot":"","sources":["../../src/create-program/WatchCompilerHostOfConfigFile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,UAAU,sBAAsB;IAC9B,aAAa,CAAC,CACZ,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CAAC;CACb;AAGD,UAAU,4BAA6B,SAAQ,sBAAsB;IACnE,aAAa,CACX,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,EAAE,CAAC;CACb;AAGD,UAAU,6BAA6B,CAAC,CAAC,SAAS,EAAE,CAAC,cAAc,CACjE,SAAQ,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC3C,oCAAoC,CAClC,IAAI,EAAE,4BAA4B,GACjC,IAAI,CAAC;IACR,mBAAmB,CAAC,EAAE,SAAS,EAAE,CAAC,iBAAiB,EAAE,CAAC;CACvD;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js deleted file mode 100644 index dcb07129..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js +++ /dev/null @@ -1,6 +0,0 @@ -"use strict"; -// These types are internal to TS. -// They have been trimmed down to only include the relevant bits -// We use some special internal TS apis to help us do our parsing flexibly -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=WatchCompilerHostOfConfigFile.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js.map deleted file mode 100644 index 757e885c..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WatchCompilerHostOfConfigFile.js","sourceRoot":"","sources":["../../src/create-program/WatchCompilerHostOfConfigFile.ts"],"names":[],"mappings":";AAAA,kCAAkC;AAClC,gEAAgE;AAChE,0EAA0E"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.d.ts deleted file mode 100644 index ea80b733..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Extra } from '../parser-options'; -import { ASTAndProgram } from './shared'; -/** - * @param code The code of the file being linted - * @param extra The config object - * @param extra.tsconfigRootDir The root directory for relative tsconfig paths - * @param extra.projects Provided tsconfig paths - * @returns If found, returns the source file corresponding to the code and the containing program - */ -declare function createDefaultProgram(code: string, extra: Extra): ASTAndProgram | undefined; -export { createDefaultProgram }; -//# sourceMappingURL=createDefaultProgram.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.d.ts.map deleted file mode 100644 index 2c26fe56..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createDefaultProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createDefaultProgram.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EACL,aAAa,EAGd,MAAM,UAAU,CAAC;AAIlB;;;;;;GAMG;AACH,iBAAS,oBAAoB,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,GACX,aAAa,GAAG,SAAS,CAqC3B;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js deleted file mode 100644 index 9f60bc04..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.createDefaultProgram = void 0; -const debug_1 = __importDefault(require("debug")); -const path_1 = __importDefault(require("path")); -const ts = __importStar(require("typescript")); -const shared_1 = require("./shared"); -const log = debug_1.default('typescript-eslint:typescript-estree:createDefaultProgram'); -/** - * @param code The code of the file being linted - * @param extra The config object - * @param extra.tsconfigRootDir The root directory for relative tsconfig paths - * @param extra.projects Provided tsconfig paths - * @returns If found, returns the source file corresponding to the code and the containing program - */ -function createDefaultProgram(code, extra) { - log('Getting default program for: %s', extra.filePath || 'unnamed file'); - if (!extra.projects || extra.projects.length !== 1) { - return undefined; - } - const tsconfigPath = shared_1.getTsconfigPath(extra.projects[0], extra); - const commandLine = ts.getParsedCommandLineOfConfigFile(tsconfigPath, shared_1.createDefaultCompilerOptionsFromExtra(extra), Object.assign(Object.assign({}, ts.sys), { onUnRecoverableConfigFileDiagnostic: () => { } })); - if (!commandLine) { - return undefined; - } - const compilerHost = ts.createCompilerHost(commandLine.options, - /* setParentNodes */ true); - const oldReadFile = compilerHost.readFile; - compilerHost.readFile = (fileName) => path_1.default.normalize(fileName) === path_1.default.normalize(extra.filePath) - ? code - : oldReadFile(fileName); - const program = ts.createProgram([extra.filePath], commandLine.options, compilerHost); - const ast = program.getSourceFile(extra.filePath); - return ast && { ast, program }; -} -exports.createDefaultProgram = createDefaultProgram; -//# sourceMappingURL=createDefaultProgram.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map deleted file mode 100644 index 7ae63e4a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createDefaultProgram.js","sourceRoot":"","sources":["../../src/create-program/createDefaultProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAAiC;AAEjC,qCAIkB;AAElB,MAAM,GAAG,GAAG,eAAK,CAAC,0DAA0D,CAAC,CAAC;AAE9E;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAY;IAEZ,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,QAAQ,IAAI,cAAc,CAAC,CAAC;IAEzE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QAClD,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,YAAY,GAAG,wBAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,EAAE,CAAC,gCAAgC,CACrD,YAAY,EACZ,8CAAqC,CAAC,KAAK,CAAC,kCACvC,EAAE,CAAC,GAAG,KAAE,mCAAmC,EAAE,GAAG,EAAE,GAAE,CAAC,IAC3D,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,YAAY,GAAG,EAAE,CAAC,kBAAkB,CACxC,WAAW,CAAC,OAAO;IACnB,oBAAoB,CAAC,IAAI,CAC1B,CAAC;IACF,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC;IAC1C,YAAY,CAAC,QAAQ,GAAG,CAAC,QAAgB,EAAsB,EAAE,CAC/D,cAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;QACzD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE5B,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAC9B,CAAC,KAAK,CAAC,QAAQ,CAAC,EAChB,WAAW,CAAC,OAAO,EACnB,YAAY,CACb,CAAC;IACF,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAElD,OAAO,GAAG,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AACjC,CAAC;AAEQ,oDAAoB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.d.ts deleted file mode 100644 index 26bc6e4b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Extra } from '../parser-options'; -import { ASTAndProgram } from './shared'; -/** - * @param code The code of the file being linted - * @returns Returns a new source file and program corresponding to the linted code - */ -declare function createIsolatedProgram(code: string, extra: Extra): ASTAndProgram; -export { createIsolatedProgram }; -//# sourceMappingURL=createIsolatedProgram.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.d.ts.map deleted file mode 100644 index d246fcaf..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createIsolatedProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createIsolatedProgram.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EACL,aAAa,EAGd,MAAM,UAAU,CAAC;AAIlB;;;GAGG;AACH,iBAAS,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,aAAa,CAmExE;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js deleted file mode 100644 index 88d4ba3b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.createIsolatedProgram = void 0; -const debug_1 = __importDefault(require("debug")); -const ts = __importStar(require("typescript")); -const shared_1 = require("./shared"); -const log = debug_1.default('typescript-eslint:typescript-estree:createIsolatedProgram'); -/** - * @param code The code of the file being linted - * @returns Returns a new source file and program corresponding to the linted code - */ -function createIsolatedProgram(code, extra) { - log('Getting isolated program in %s mode for: %s', extra.jsx ? 'TSX' : 'TS', extra.filePath); - const compilerHost = { - fileExists() { - return true; - }, - getCanonicalFileName() { - return extra.filePath; - }, - getCurrentDirectory() { - return ''; - }, - getDirectories() { - return []; - }, - getDefaultLibFileName() { - return 'lib.d.ts'; - }, - // TODO: Support Windows CRLF - getNewLine() { - return '\n'; - }, - getSourceFile(filename) { - return ts.createSourceFile(filename, code, ts.ScriptTarget.Latest, - /* setParentNodes */ true, shared_1.getScriptKind(extra, filename)); - }, - readFile() { - return undefined; - }, - useCaseSensitiveFileNames() { - return true; - }, - writeFile() { - return null; - }, - }; - const program = ts.createProgram([extra.filePath], Object.assign({ noResolve: true, target: ts.ScriptTarget.Latest, jsx: extra.jsx ? ts.JsxEmit.Preserve : undefined }, shared_1.createDefaultCompilerOptionsFromExtra(extra)), compilerHost); - const ast = program.getSourceFile(extra.filePath); - if (!ast) { - throw new Error('Expected an ast to be returned for the single-file isolated program.'); - } - return { ast, program }; -} -exports.createIsolatedProgram = createIsolatedProgram; -//# sourceMappingURL=createIsolatedProgram.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map deleted file mode 100644 index 75a61456..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createIsolatedProgram.js","sourceRoot":"","sources":["../../src/create-program/createIsolatedProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAiC;AAEjC,qCAIkB;AAElB,MAAM,GAAG,GAAG,eAAK,CAAC,2DAA2D,CAAC,CAAC;AAE/E;;;GAGG;AACH,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAY;IACvD,GAAG,CACD,6CAA6C,EAC7C,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxB,KAAK,CAAC,QAAQ,CACf,CAAC;IAEF,MAAM,YAAY,GAAoB;QACpC,UAAU;YACR,OAAO,IAAI,CAAC;QACd,CAAC;QACD,oBAAoB;YAClB,OAAO,KAAK,CAAC,QAAQ,CAAC;QACxB,CAAC;QACD,mBAAmB;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,cAAc;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,qBAAqB;YACnB,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,6BAA6B;QAC7B,UAAU;YACR,OAAO,IAAI,CAAC;QACd,CAAC;QACD,aAAa,CAAC,QAAgB;YAC5B,OAAO,EAAE,CAAC,gBAAgB,CACxB,QAAQ,EACR,IAAI,EACJ,EAAE,CAAC,YAAY,CAAC,MAAM;YACtB,oBAAoB,CAAC,IAAI,EACzB,sBAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAC/B,CAAC;QACJ,CAAC;QACD,QAAQ;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,yBAAyB;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,SAAS;YACP,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;IAEF,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAC9B,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAEd,SAAS,EAAE,IAAI,EACf,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAC9B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,IAC7C,8CAAqC,CAAC,KAAK,CAAC,GAEjD,YAAY,CACb,CAAC;IAEF,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;KACH;IAED,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAC1B,CAAC;AAEQ,sDAAqB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts deleted file mode 100644 index 04a7e103..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Extra } from '../parser-options'; -import { ASTAndProgram } from './shared'; -/** - * @param code The code of the file being linted - * @param createDefaultProgram True if the default program should be created - * @param extra The config object - * @returns If found, returns the source file corresponding to the code and the containing program - */ -declare function createProjectProgram(code: string, createDefaultProgram: boolean, extra: Extra): ASTAndProgram | undefined; -export { createProjectProgram }; -//# sourceMappingURL=createProjectProgram.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map deleted file mode 100644 index 18380901..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createProjectProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAazC;;;;;GAKG;AACH,iBAAS,oBAAoB,CAC3B,IAAI,EAAE,MAAM,EACZ,oBAAoB,EAAE,OAAO,EAC7B,KAAK,EAAE,KAAK,GACX,aAAa,GAAG,SAAS,CAyE3B;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js deleted file mode 100644 index 917330b7..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +++ /dev/null @@ -1,75 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.createProjectProgram = void 0; -const debug_1 = __importDefault(require("debug")); -const path_1 = __importDefault(require("path")); -const createWatchProgram_1 = require("./createWatchProgram"); -const node_utils_1 = require("../node-utils"); -const log = debug_1.default('typescript-eslint:typescript-estree:createProjectProgram'); -const DEFAULT_EXTRA_FILE_EXTENSIONS = ['.ts', '.tsx', '.js', '.jsx']; -function getExtension(fileName) { - if (!fileName) { - return null; - } - return fileName.endsWith('.d.ts') ? '.d.ts' : path_1.default.extname(fileName); -} -/** - * @param code The code of the file being linted - * @param createDefaultProgram True if the default program should be created - * @param extra The config object - * @returns If found, returns the source file corresponding to the code and the containing program - */ -function createProjectProgram(code, createDefaultProgram, extra) { - log('Creating project program for: %s', extra.filePath); - const astAndProgram = node_utils_1.firstDefined(createWatchProgram_1.getProgramsForProjects(code, extra.filePath, extra), currentProgram => { - const ast = currentProgram.getSourceFile(extra.filePath); - // working around https://github.com/typescript-eslint/typescript-eslint/issues/1573 - const expectedExt = getExtension(extra.filePath); - const returnedExt = getExtension(ast === null || ast === void 0 ? void 0 : ast.fileName); - if (expectedExt !== returnedExt) { - return; - } - return ast && { ast, program: currentProgram }; - }); - if (!astAndProgram && !createDefaultProgram) { - // the file was either not matched within the tsconfig, or the extension wasn't expected - const errorLines = [ - '"parserOptions.project" has been set for @typescript-eslint/parser.', - `The file does not match your project config: ${path_1.default.relative(extra.tsconfigRootDir || process.cwd(), extra.filePath)}.`, - ]; - let hasMatchedAnError = false; - const extraFileExtensions = extra.extraFileExtensions || []; - extraFileExtensions.forEach(extraExtension => { - if (!extraExtension.startsWith('.')) { - errorLines.push(`Found unexpected extension "${extraExtension}" specified with the "extraFileExtensions" option. Did you mean ".${extraExtension}"?`); - } - if (DEFAULT_EXTRA_FILE_EXTENSIONS.includes(extraExtension)) { - errorLines.push(`You unnecessarily included the extension "${extraExtension}" with the "extraFileExtensions" option. This extension is already handled by the parser by default.`); - } - }); - const fileExtension = path_1.default.extname(extra.filePath); - if (!DEFAULT_EXTRA_FILE_EXTENSIONS.includes(fileExtension)) { - const nonStandardExt = `The extension for the file (${fileExtension}) is non-standard`; - if (extraFileExtensions.length > 0) { - if (!extraFileExtensions.includes(fileExtension)) { - errorLines.push(`${nonStandardExt}. It should be added to your existing "parserOptions.extraFileExtensions".`); - hasMatchedAnError = true; - } - } - else { - errorLines.push(`${nonStandardExt}. You should add "parserOptions.extraFileExtensions" to your config.`); - hasMatchedAnError = true; - } - } - if (!hasMatchedAnError) { - errorLines.push('The file must be included in at least one of the projects provided.'); - } - throw new Error(errorLines.join('\n')); - } - return astAndProgram; -} -exports.createProjectProgram = createProjectProgram; -//# sourceMappingURL=createProjectProgram.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map deleted file mode 100644 index a39bb006..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createProjectProgram.js","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.d.ts deleted file mode 100644 index 340cdd98..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as ts from 'typescript'; -import { Extra } from '../parser-options'; -declare function createSourceFile(code: string, extra: Extra): ts.SourceFile; -export { createSourceFile }; -//# sourceMappingURL=createSourceFile.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.d.ts.map deleted file mode 100644 index 68f375da..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createSourceFile.d.ts","sourceRoot":"","sources":["../../src/create-program/createSourceFile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK1C,iBAAS,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,CAAC,UAAU,CAcnE;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js deleted file mode 100644 index 910a1fa3..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js +++ /dev/null @@ -1,36 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.createSourceFile = void 0; -const debug_1 = __importDefault(require("debug")); -const ts = __importStar(require("typescript")); -const shared_1 = require("./shared"); -const log = debug_1.default('typescript-eslint:typescript-estree:createSourceFile'); -function createSourceFile(code, extra) { - log('Getting AST without type information in %s mode for: %s', extra.jsx ? 'TSX' : 'TS', extra.filePath); - return ts.createSourceFile(extra.filePath, code, ts.ScriptTarget.Latest, - /* setParentNodes */ true, shared_1.getScriptKind(extra)); -} -exports.createSourceFile = createSourceFile; -//# sourceMappingURL=createSourceFile.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map deleted file mode 100644 index 693f43c7..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createSourceFile.js","sourceRoot":"","sources":["../../src/create-program/createSourceFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,+CAAiC;AAEjC,qCAAyC;AAEzC,MAAM,GAAG,GAAG,eAAK,CAAC,sDAAsD,CAAC,CAAC;AAE1E,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAY;IAClD,GAAG,CACD,yDAAyD,EACzD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxB,KAAK,CAAC,QAAQ,CACf,CAAC;IAEF,OAAO,EAAE,CAAC,gBAAgB,CACxB,KAAK,CAAC,QAAQ,EACd,IAAI,EACJ,EAAE,CAAC,YAAY,CAAC,MAAM;IACtB,oBAAoB,CAAC,IAAI,EACzB,sBAAa,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAEQ,4CAAgB"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts deleted file mode 100644 index af73e0c6..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import * as ts from 'typescript'; -import { Extra } from '../parser-options'; -/** - * Clear all of the parser caches. - * This should only be used in testing to ensure the parser is clean between tests. - */ -declare function clearCaches(): void; -/** - * Calculate project environments using options provided by consumer and paths from config - * @param code The code being linted - * @param filePathIn The path of the file being parsed - * @param extra.tsconfigRootDir The root directory for relative tsconfig paths - * @param extra.projects Provided tsconfig paths - * @returns The programs corresponding to the supplied tsconfig paths - */ -declare function getProgramsForProjects(code: string, filePathIn: string, extra: Extra): ts.Program[]; -declare function createWatchProgram(tsconfigPath: string, extra: Extra): ts.WatchOfConfigFile; -export { clearCaches, createWatchProgram, getProgramsForProjects }; -//# sourceMappingURL=createWatchProgram.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map deleted file mode 100644 index 5e6bce83..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createWatchProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA6C1C;;;GAGG;AACH,iBAAS,WAAW,IAAI,IAAI,CAO3B;AA2DD;;;;;;;GAOG;AACH,iBAAS,sBAAsB,CAC7B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,OAAO,EAAE,CAgGd;AAMD,iBAAS,kBAAkB,CACzB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,cAAc,CAAC,CAwHzC;AAoJD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js deleted file mode 100644 index fe036633..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js +++ /dev/null @@ -1,388 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getProgramsForProjects = exports.createWatchProgram = exports.clearCaches = void 0; -const debug_1 = __importDefault(require("debug")); -const fs_1 = __importDefault(require("fs")); -const semver_1 = __importDefault(require("semver")); -const ts = __importStar(require("typescript")); -const shared_1 = require("./shared"); -const log = debug_1.default('typescript-eslint:typescript-estree:createWatchProgram'); -/** - * Maps tsconfig paths to their corresponding file contents and resulting watches - */ -const knownWatchProgramMap = new Map(); -/** - * Maps file/folder paths to their set of corresponding watch callbacks - * There may be more than one per file/folder if a file/folder is shared between projects - */ -const fileWatchCallbackTrackingMap = new Map(); -const folderWatchCallbackTrackingMap = new Map(); -/** - * Stores the list of known files for each program - */ -const programFileListCache = new Map(); -/** - * Caches the last modified time of the tsconfig files - */ -const tsconfigLastModifiedTimestampCache = new Map(); -const parsedFilesSeenHash = new Map(); -/** - * Clear all of the parser caches. - * This should only be used in testing to ensure the parser is clean between tests. - */ -function clearCaches() { - knownWatchProgramMap.clear(); - fileWatchCallbackTrackingMap.clear(); - folderWatchCallbackTrackingMap.clear(); - parsedFilesSeenHash.clear(); - programFileListCache.clear(); - tsconfigLastModifiedTimestampCache.clear(); -} -exports.clearCaches = clearCaches; -function saveWatchCallback(trackingMap) { - return (fileName, callback) => { - const normalizedFileName = shared_1.getCanonicalFileName(fileName); - const watchers = (() => { - let watchers = trackingMap.get(normalizedFileName); - if (!watchers) { - watchers = new Set(); - trackingMap.set(normalizedFileName, watchers); - } - return watchers; - })(); - watchers.add(callback); - return { - close: () => { - watchers.delete(callback); - }, - }; - }; -} -/** - * Holds information about the file currently being linted - */ -const currentLintOperationState = { - code: '', - filePath: '', -}; -/** - * Appropriately report issues found when reading a config file - * @param diagnostic The diagnostic raised when creating a program - */ -function diagnosticReporter(diagnostic) { - throw new Error(ts.flattenDiagnosticMessageText(diagnostic.messageText, ts.sys.newLine)); -} -/** - * Hash content for compare content. - * @param content hashed contend - * @returns hashed result - */ -function createHash(content) { - var _a; - // No ts.sys in browser environments. - if ((_a = ts.sys) === null || _a === void 0 ? void 0 : _a.createHash) { - return ts.sys.createHash(content); - } - return content; -} -/** - * Calculate project environments using options provided by consumer and paths from config - * @param code The code being linted - * @param filePathIn The path of the file being parsed - * @param extra.tsconfigRootDir The root directory for relative tsconfig paths - * @param extra.projects Provided tsconfig paths - * @returns The programs corresponding to the supplied tsconfig paths - */ -function getProgramsForProjects(code, filePathIn, extra) { - const filePath = shared_1.getCanonicalFileName(filePathIn); - const results = []; - // preserve reference to code and file being linted - currentLintOperationState.code = code; - currentLintOperationState.filePath = filePath; - // Update file version if necessary - const fileWatchCallbacks = fileWatchCallbackTrackingMap.get(filePath); - const codeHash = createHash(code); - if (parsedFilesSeenHash.get(filePath) !== codeHash && - fileWatchCallbacks && - fileWatchCallbacks.size > 0) { - fileWatchCallbacks.forEach(cb => cb(filePath, ts.FileWatcherEventKind.Changed)); - } - /* - * before we go into the process of attempting to find and update every program - * see if we know of a program that contains this file - */ - for (const rawTsconfigPath of extra.projects) { - const tsconfigPath = shared_1.getTsconfigPath(rawTsconfigPath, extra); - const existingWatch = knownWatchProgramMap.get(tsconfigPath); - if (!existingWatch) { - continue; - } - let fileList = programFileListCache.get(tsconfigPath); - let updatedProgram = null; - if (!fileList) { - updatedProgram = existingWatch.getProgram().getProgram(); - fileList = new Set(updatedProgram.getRootFileNames().map(f => shared_1.getCanonicalFileName(f))); - programFileListCache.set(tsconfigPath, fileList); - } - if (fileList.has(filePath)) { - log('Found existing program for file. %s', filePath); - updatedProgram = updatedProgram !== null && updatedProgram !== void 0 ? updatedProgram : existingWatch.getProgram().getProgram(); - // sets parent pointers in source files - updatedProgram.getTypeChecker(); - return [updatedProgram]; - } - } - log('File did not belong to any existing programs, moving to create/update. %s', filePath); - /* - * We don't know of a program that contains the file, this means that either: - * - the required program hasn't been created yet, or - * - the file is new/renamed, and the program hasn't been updated. - */ - for (const rawTsconfigPath of extra.projects) { - const tsconfigPath = shared_1.getTsconfigPath(rawTsconfigPath, extra); - const existingWatch = knownWatchProgramMap.get(tsconfigPath); - if (existingWatch) { - const updatedProgram = maybeInvalidateProgram(existingWatch, filePath, tsconfigPath); - if (!updatedProgram) { - continue; - } - // sets parent pointers in source files - updatedProgram.getTypeChecker(); - results.push(updatedProgram); - continue; - } - const programWatch = createWatchProgram(tsconfigPath, extra); - const program = programWatch.getProgram().getProgram(); - // cache watch program and return current program - knownWatchProgramMap.set(tsconfigPath, programWatch); - // sets parent pointers in source files - program.getTypeChecker(); - results.push(program); - } - return results; -} -exports.getProgramsForProjects = getProgramsForProjects; -const isRunningNoTimeoutFix = semver_1.default.satisfies(ts.version, '>=3.9.0-beta', { - includePrerelease: true, -}); -function createWatchProgram(tsconfigPath, extra) { - log('Creating watch program for %s.', tsconfigPath); - // create compiler host - const watchCompilerHost = ts.createWatchCompilerHost(tsconfigPath, shared_1.createDefaultCompilerOptionsFromExtra(extra), ts.sys, ts.createAbstractBuilder, diagnosticReporter, - /*reportWatchStatus*/ () => { }); - // ensure readFile reads the code being linted instead of the copy on disk - const oldReadFile = watchCompilerHost.readFile; - watchCompilerHost.readFile = (filePathIn, encoding) => { - const filePath = shared_1.getCanonicalFileName(filePathIn); - const fileContent = filePath === currentLintOperationState.filePath - ? currentLintOperationState.code - : oldReadFile(filePath, encoding); - if (fileContent !== undefined) { - parsedFilesSeenHash.set(filePath, createHash(fileContent)); - } - return fileContent; - }; - // ensure process reports error on failure instead of exiting process immediately - watchCompilerHost.onUnRecoverableConfigFileDiagnostic = diagnosticReporter; - // ensure process doesn't emit programs - watchCompilerHost.afterProgramCreate = (program) => { - // report error if there are any errors in the config file - const configFileDiagnostics = program - .getConfigFileParsingDiagnostics() - .filter(diag => diag.category === ts.DiagnosticCategory.Error && diag.code !== 18003); - if (configFileDiagnostics.length > 0) { - diagnosticReporter(configFileDiagnostics[0]); - } - }; - /* - * From the CLI, the file watchers won't matter, as the files will be parsed once and then forgotten. - * When running from an IDE, these watchers will let us tell typescript about changes. - * - * ESLint IDE plugins will send us unfinished file content as the user types (before it's saved to disk). - * We use the file watchers to tell typescript about this latest file content. - * - * When files are created (or renamed), we won't know about them because we have no filesystem watchers attached. - * We use the folder watchers to tell typescript it needs to go and find new files in the project folders. - */ - watchCompilerHost.watchFile = saveWatchCallback(fileWatchCallbackTrackingMap); - watchCompilerHost.watchDirectory = saveWatchCallback(folderWatchCallbackTrackingMap); - // allow files with custom extensions to be included in program (uses internal ts api) - const oldOnDirectoryStructureHostCreate = watchCompilerHost.onCachedDirectoryStructureHostCreate; - watchCompilerHost.onCachedDirectoryStructureHostCreate = (host) => { - const oldReadDirectory = host.readDirectory; - host.readDirectory = (path, extensions, exclude, include, depth) => oldReadDirectory(path, !extensions ? undefined : extensions.concat(extra.extraFileExtensions), exclude, include, depth); - oldOnDirectoryStructureHostCreate(host); - }; - // This works only on 3.9 - watchCompilerHost.extraFileExtensions = extra.extraFileExtensions.map(extension => ({ - extension, - isMixedContent: true, - scriptKind: ts.ScriptKind.Deferred, - })); - watchCompilerHost.trace = log; - // Since we don't want to asynchronously update program we want to disable timeout methods - // So any changes in the program will be delayed and updated when getProgram is called on watch - let callback; - if (isRunningNoTimeoutFix) { - watchCompilerHost.setTimeout = undefined; - watchCompilerHost.clearTimeout = undefined; - } - else { - log('Running without timeout fix'); - // But because of https://github.com/microsoft/TypeScript/pull/37308 we cannot just set it to undefined - // instead save it and call before getProgram is called - watchCompilerHost.setTimeout = (cb, _ms, ...args) => { - callback = cb.bind(/*this*/ undefined, ...args); - return callback; - }; - watchCompilerHost.clearTimeout = () => { - callback = undefined; - }; - } - const watch = ts.createWatchProgram(watchCompilerHost); - if (!isRunningNoTimeoutFix) { - const originalGetProgram = watch.getProgram; - watch.getProgram = () => { - if (callback) { - callback(); - } - callback = undefined; - return originalGetProgram.call(watch); - }; - } - return watch; -} -exports.createWatchProgram = createWatchProgram; -function hasTSConfigChanged(tsconfigPath) { - const stat = fs_1.default.statSync(tsconfigPath); - const lastModifiedAt = stat.mtimeMs; - const cachedLastModifiedAt = tsconfigLastModifiedTimestampCache.get(tsconfigPath); - tsconfigLastModifiedTimestampCache.set(tsconfigPath, lastModifiedAt); - if (cachedLastModifiedAt === undefined) { - return false; - } - return Math.abs(cachedLastModifiedAt - lastModifiedAt) > Number.EPSILON; -} -function maybeInvalidateProgram(existingWatch, filePath, tsconfigPath) { - /* - * By calling watchProgram.getProgram(), it will trigger a resync of the program based on - * whatever new file content we've given it from our input. - */ - let updatedProgram = existingWatch.getProgram().getProgram(); - // In case this change causes problems in larger real world codebases - // Provide an escape hatch so people don't _have_ to revert to an older version - if (process.env.TSESTREE_NO_INVALIDATION === 'true') { - return updatedProgram; - } - if (hasTSConfigChanged(tsconfigPath)) { - /* - * If the stat of the tsconfig has changed, that could mean the include/exclude/files lists has changed - * We need to make sure typescript knows this so it can update appropriately - */ - log('tsconfig has changed - triggering program update. %s', tsconfigPath); - fileWatchCallbackTrackingMap - .get(tsconfigPath) - .forEach(cb => cb(tsconfigPath, ts.FileWatcherEventKind.Changed)); - // tsconfig change means that the file list more than likely changed, so clear the cache - programFileListCache.delete(tsconfigPath); - } - let sourceFile = updatedProgram.getSourceFile(filePath); - if (sourceFile) { - return updatedProgram; - } - /* - * Missing source file means our program's folder structure might be out of date. - * So we need to tell typescript it needs to update the correct folder. - */ - log('File was not found in program - triggering folder update. %s', filePath); - // Find the correct directory callback by climbing the folder tree - const currentDir = shared_1.canonicalDirname(filePath); - let current = null; - let next = currentDir; - let hasCallback = false; - while (current !== next) { - current = next; - const folderWatchCallbacks = folderWatchCallbackTrackingMap.get(current); - if (folderWatchCallbacks) { - folderWatchCallbacks.forEach(cb => { - if (currentDir !== current) { - cb(currentDir, ts.FileWatcherEventKind.Changed); - } - cb(current, ts.FileWatcherEventKind.Changed); - }); - hasCallback = true; - } - next = shared_1.canonicalDirname(current); - } - if (!hasCallback) { - /* - * No callback means the paths don't matchup - so no point returning any program - * this will signal to the caller to skip this program - */ - log('No callback found for file, not part of this program. %s', filePath); - return null; - } - // directory update means that the file list more than likely changed, so clear the cache - programFileListCache.delete(tsconfigPath); - // force the immediate resync - updatedProgram = existingWatch.getProgram().getProgram(); - sourceFile = updatedProgram.getSourceFile(filePath); - if (sourceFile) { - return updatedProgram; - } - /* - * At this point we're in one of two states: - * - The file isn't supposed to be in this program due to exclusions - * - The file is new, and was renamed from an old, included filename - * - * For the latter case, we need to tell typescript that the old filename is now deleted - */ - log('File was still not found in program after directory update - checking file deletions. %s', filePath); - const rootFilenames = updatedProgram.getRootFileNames(); - // use find because we only need to "delete" one file to cause typescript to do a full resync - const deletedFile = rootFilenames.find(file => !fs_1.default.existsSync(file)); - if (!deletedFile) { - // There are no deleted files, so it must be the former case of the file not belonging to this program - return null; - } - const fileWatchCallbacks = fileWatchCallbackTrackingMap.get(shared_1.getCanonicalFileName(deletedFile)); - if (!fileWatchCallbacks) { - // shouldn't happen, but just in case - log('Could not find watch callbacks for root file. %s', deletedFile); - return updatedProgram; - } - log('Marking file as deleted. %s', deletedFile); - fileWatchCallbacks.forEach(cb => cb(deletedFile, ts.FileWatcherEventKind.Deleted)); - // deleted files means that the file list _has_ changed, so clear the cache - programFileListCache.delete(tsconfigPath); - updatedProgram = existingWatch.getProgram().getProgram(); - sourceFile = updatedProgram.getSourceFile(filePath); - if (sourceFile) { - return updatedProgram; - } - log('File was still not found in program after deletion check, assuming it is not part of this program. %s', filePath); - return null; -} -//# sourceMappingURL=createWatchProgram.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map deleted file mode 100644 index 326e15ae..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createWatchProgram.js","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts deleted file mode 100644 index ea10a480..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import * as ts from 'typescript'; -import { Extra } from '../parser-options'; -interface ASTAndProgram { - ast: ts.SourceFile; - program: ts.Program; -} -declare function createDefaultCompilerOptionsFromExtra(extra: Extra): ts.CompilerOptions; -declare type CanonicalPath = string & { - __brand: unknown; -}; -declare function getCanonicalFileName(filePath: string): CanonicalPath; -declare function ensureAbsolutePath(p: string, extra: Extra): string; -declare function getTsconfigPath(tsconfigPath: string, extra: Extra): CanonicalPath; -declare function canonicalDirname(p: CanonicalPath): CanonicalPath; -declare function getScriptKind(extra: Extra, filePath?: string): ts.ScriptKind; -export { ASTAndProgram, canonicalDirname, CanonicalPath, createDefaultCompilerOptionsFromExtra, ensureAbsolutePath, getCanonicalFileName, getScriptKind, getTsconfigPath, }; -//# sourceMappingURL=shared.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map deleted file mode 100644 index 3e22bc40..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,UAAU,aAAa;IACrB,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;CACrB;AAkBD,iBAAS,qCAAqC,CAC5C,KAAK,EAAE,KAAK,GACX,EAAE,CAAC,eAAe,CASpB;AAGD,aAAK,aAAa,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AASnD,iBAAS,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM7D;AAED,iBAAS,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAI3D;AAED,iBAAS,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,aAAa,CAE1E;AAED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,aAAa,CAEzD;AAED,iBAAS,aAAa,CACpB,KAAK,EAAE,KAAK,EACZ,QAAQ,GAAE,MAAuB,GAChC,EAAE,CAAC,UAAU,CAwBf;AAED,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,qCAAqC,EACrC,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,eAAe,GAChB,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js deleted file mode 100644 index 5e8c1986..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js +++ /dev/null @@ -1,98 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getTsconfigPath = exports.getScriptKind = exports.getCanonicalFileName = exports.ensureAbsolutePath = exports.createDefaultCompilerOptionsFromExtra = exports.canonicalDirname = void 0; -const path_1 = __importDefault(require("path")); -const ts = __importStar(require("typescript")); -/** - * Default compiler options for program generation from single root file - */ -const DEFAULT_COMPILER_OPTIONS = { - allowNonTsExtensions: true, - allowJs: true, - checkJs: true, - noEmit: true, - // extendedDiagnostics: true, - /** - * Flags required to make no-unused-vars work - */ - noUnusedLocals: true, - noUnusedParameters: true, -}; -function createDefaultCompilerOptionsFromExtra(extra) { - if (extra.debugLevel.has('typescript')) { - return Object.assign(Object.assign({}, DEFAULT_COMPILER_OPTIONS), { extendedDiagnostics: true }); - } - return DEFAULT_COMPILER_OPTIONS; -} -exports.createDefaultCompilerOptionsFromExtra = createDefaultCompilerOptionsFromExtra; -// typescript doesn't provide a ts.sys implementation for browser environments -const useCaseSensitiveFileNames = ts.sys !== undefined ? ts.sys.useCaseSensitiveFileNames : true; -const correctPathCasing = useCaseSensitiveFileNames - ? (filePath) => filePath - : (filePath) => filePath.toLowerCase(); -function getCanonicalFileName(filePath) { - let normalized = path_1.default.normalize(filePath); - if (normalized.endsWith(path_1.default.sep)) { - normalized = normalized.substr(0, normalized.length - 1); - } - return correctPathCasing(normalized); -} -exports.getCanonicalFileName = getCanonicalFileName; -function ensureAbsolutePath(p, extra) { - return path_1.default.isAbsolute(p) - ? p - : path_1.default.join(extra.tsconfigRootDir || process.cwd(), p); -} -exports.ensureAbsolutePath = ensureAbsolutePath; -function getTsconfigPath(tsconfigPath, extra) { - return getCanonicalFileName(ensureAbsolutePath(tsconfigPath, extra)); -} -exports.getTsconfigPath = getTsconfigPath; -function canonicalDirname(p) { - return path_1.default.dirname(p); -} -exports.canonicalDirname = canonicalDirname; -function getScriptKind(extra, filePath = extra.filePath) { - const extension = path_1.default.extname(filePath).toLowerCase(); - // note - we respect the user's extension when it is known we could override it and force it to match their - // jsx setting, but that could create weird situations where we throw parse errors when TSC doesn't - switch (extension) { - case '.ts': - return ts.ScriptKind.TS; - case '.tsx': - return ts.ScriptKind.TSX; - case '.js': - return ts.ScriptKind.JS; - case '.jsx': - return ts.ScriptKind.JSX; - case '.json': - return ts.ScriptKind.JSON; - default: - // unknown extension, force typescript to ignore the file extension, and respect the user's setting - return extra.jsx ? ts.ScriptKind.TSX : ts.ScriptKind.TS; - } -} -exports.getScriptKind = getScriptKind; -//# sourceMappingURL=shared.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map deleted file mode 100644 index 30f05b20..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts deleted file mode 100644 index e9b5d410..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts +++ /dev/null @@ -1,282 +0,0 @@ -import * as ts from 'typescript'; -import { AST_NODE_TYPES, AST_TOKEN_TYPES, TSESTree } from './ts-estree'; -declare const SyntaxKind: typeof ts.SyntaxKind; -interface TokenToText { - [SyntaxKind.OpenBraceToken]: '{'; - [SyntaxKind.CloseBraceToken]: '}'; - [SyntaxKind.OpenParenToken]: '('; - [SyntaxKind.CloseParenToken]: ')'; - [SyntaxKind.OpenBracketToken]: '['; - [SyntaxKind.CloseBracketToken]: ']'; - [SyntaxKind.DotToken]: '.'; - [SyntaxKind.DotDotDotToken]: '...'; - [SyntaxKind.SemicolonToken]: ';'; - [SyntaxKind.CommaToken]: ','; - [SyntaxKind.LessThanToken]: '<'; - [SyntaxKind.GreaterThanToken]: '>'; - [SyntaxKind.LessThanEqualsToken]: '<='; - [SyntaxKind.GreaterThanEqualsToken]: '>='; - [SyntaxKind.EqualsEqualsToken]: '=='; - [SyntaxKind.ExclamationEqualsToken]: '!='; - [SyntaxKind.EqualsEqualsEqualsToken]: '==='; - [SyntaxKind.InstanceOfKeyword]: 'instanceof'; - [SyntaxKind.ExclamationEqualsEqualsToken]: '!=='; - [SyntaxKind.EqualsGreaterThanToken]: '=>'; - [SyntaxKind.PlusToken]: '+'; - [SyntaxKind.MinusToken]: '-'; - [SyntaxKind.AsteriskToken]: '*'; - [SyntaxKind.AsteriskAsteriskToken]: '**'; - [SyntaxKind.SlashToken]: '/'; - [SyntaxKind.PercentToken]: '%'; - [SyntaxKind.PlusPlusToken]: '++'; - [SyntaxKind.MinusMinusToken]: '--'; - [SyntaxKind.LessThanLessThanToken]: '<<'; - [SyntaxKind.LessThanSlashToken]: '>'; - [SyntaxKind.GreaterThanGreaterThanGreaterThanToken]: '>>>'; - [SyntaxKind.AmpersandToken]: '&'; - [SyntaxKind.BarToken]: '|'; - [SyntaxKind.CaretToken]: '^'; - [SyntaxKind.ExclamationToken]: '!'; - [SyntaxKind.TildeToken]: '~'; - [SyntaxKind.AmpersandAmpersandToken]: '&&'; - [SyntaxKind.BarBarToken]: '||'; - [SyntaxKind.QuestionToken]: '?'; - [SyntaxKind.ColonToken]: ':'; - [SyntaxKind.EqualsToken]: '='; - [SyntaxKind.PlusEqualsToken]: '+='; - [SyntaxKind.MinusEqualsToken]: '-='; - [SyntaxKind.AsteriskEqualsToken]: '*='; - [SyntaxKind.AsteriskAsteriskEqualsToken]: '**='; - [SyntaxKind.SlashEqualsToken]: '/='; - [SyntaxKind.PercentEqualsToken]: '%='; - [SyntaxKind.LessThanLessThanEqualsToken]: '<<='; - [SyntaxKind.GreaterThanGreaterThanEqualsToken]: '>>='; - [SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken]: '>>>='; - [SyntaxKind.AmpersandEqualsToken]: '&='; - [SyntaxKind.AmpersandAmpersandEqualsToken]: '&&='; - [SyntaxKind.BarEqualsToken]: '|='; - [SyntaxKind.BarBarEqualsToken]: '||='; - [SyntaxKind.CaretEqualsToken]: '^='; - [SyntaxKind.QuestionQuestionEqualsToken]: '??='; - [SyntaxKind.AtToken]: '@'; - [SyntaxKind.InKeyword]: 'in'; - [SyntaxKind.UniqueKeyword]: 'unique'; - [SyntaxKind.KeyOfKeyword]: 'keyof'; - [SyntaxKind.NewKeyword]: 'new'; - [SyntaxKind.ImportKeyword]: 'import'; - [SyntaxKind.ReadonlyKeyword]: 'readonly'; - [SyntaxKind.QuestionQuestionToken]: '??'; - [SyntaxKind.QuestionDotToken]: '?.'; -} -/** - * Returns true if the given ts.Token is the assignment operator - * @param operator the operator token - * @returns is assignment - */ -export declare function isAssignmentOperator(operator: ts.Token): boolean; -/** - * Returns true if the given ts.Token is a logical operator - * @param operator the operator token - * @returns is a logical operator - */ -export declare function isLogicalOperator(operator: ts.Token): boolean; -/** - * Returns the string form of the given TSToken SyntaxKind - * @param kind the token's SyntaxKind - * @returns the token applicable token as a string - */ -export declare function getTextForTokenKind(kind: T): T extends keyof TokenToText ? TokenToText[T] : string | undefined; -/** - * Returns true if the given ts.Node is a valid ESTree class member - * @param node TypeScript AST node - * @returns is valid ESTree class member - */ -export declare function isESTreeClassMember(node: ts.Node): boolean; -/** - * Checks if a ts.Node has a modifier - * @param modifierKind TypeScript SyntaxKind modifier - * @param node TypeScript AST node - * @returns has the modifier specified - */ -export declare function hasModifier(modifierKind: ts.KeywordSyntaxKind, node: ts.Node): boolean; -/** - * Get last last modifier in ast - * @param node TypeScript AST node - * @returns returns last modifier if present or null - */ -export declare function getLastModifier(node: ts.Node): ts.Modifier | null; -/** - * Returns true if the given ts.Token is a comma - * @param token the TypeScript token - * @returns is comma - */ -export declare function isComma(token: ts.Node): boolean; -/** - * Returns true if the given ts.Node is a comment - * @param node the TypeScript node - * @returns is comment - */ -export declare function isComment(node: ts.Node): boolean; -/** - * Returns true if the given ts.Node is a JSDoc comment - * @param node the TypeScript node - * @returns is JSDoc comment - */ -export declare function isJSDocComment(node: ts.Node): boolean; -/** - * Returns the binary expression type of the given ts.Token - * @param operator the operator token - * @returns the binary expression type - */ -export declare function getBinaryExpressionType(operator: ts.Token): AST_NODE_TYPES.AssignmentExpression | AST_NODE_TYPES.LogicalExpression | AST_NODE_TYPES.BinaryExpression; -/** - * Returns line and column data for the given positions, - * @param pos position to check - * @param ast the AST object - * @returns line and column - */ -export declare function getLineAndCharacterFor(pos: number, ast: ts.SourceFile): TSESTree.LineAndColumnData; -/** - * Returns line and column data for the given start and end positions, - * for the given AST - * @param start start data - * @param end end data - * @param ast the AST object - * @returns the loc data - */ -export declare function getLocFor(start: number, end: number, ast: ts.SourceFile): TSESTree.SourceLocation; -/** - * Check whatever node can contain directive - * @param node - * @returns returns true if node can contain directive - */ -export declare function canContainDirective(node: ts.SourceFile | ts.Block | ts.ModuleBlock): boolean; -/** - * Returns range for the given ts.Node - * @param node the ts.Node or ts.Token - * @param ast the AST object - * @returns the range data - */ -export declare function getRange(node: ts.Node, ast: ts.SourceFile): [number, number]; -/** - * Returns true if a given ts.Node is a token - * @param node the ts.Node - * @returns is a token - */ -export declare function isToken(node: ts.Node): boolean; -/** - * Returns true if a given ts.Node is a JSX token - * @param node ts.Node to be checked - * @returns is a JSX token - */ -export declare function isJSXToken(node: ts.Node): boolean; -/** - * Returns the declaration kind of the given ts.Node - * @param node TypeScript AST node - * @returns declaration kind - */ -export declare function getDeclarationKind(node: ts.VariableDeclarationList): 'let' | 'const' | 'var'; -/** - * Gets a ts.Node's accessibility level - * @param node The ts.Node - * @returns accessibility "public", "protected", "private", or null - */ -export declare function getTSNodeAccessibility(node: ts.Node): 'public' | 'protected' | 'private' | null; -/** - * Finds the next token based on the previous one and its parent - * Had to copy this from TS instead of using TS's version because theirs doesn't pass the ast to getChildren - * @param previousToken The previous TSToken - * @param parent The parent TSNode - * @param ast The TS AST - * @returns the next TSToken - */ -export declare function findNextToken(previousToken: ts.TextRange, parent: ts.Node, ast: ts.SourceFile): ts.Node | undefined; -/** - * Find the first matching ancestor based on the given predicate function. - * @param node The current ts.Node - * @param predicate The predicate function to apply to each checked ancestor - * @returns a matching parent ts.Node - */ -export declare function findFirstMatchingAncestor(node: ts.Node, predicate: (node: ts.Node) => boolean): ts.Node | undefined; -/** - * Returns true if a given ts.Node has a JSX token within its hierarchy - * @param node ts.Node to be checked - * @returns has JSX ancestor - */ -export declare function hasJSXAncestor(node: ts.Node): boolean; -/** - * Unescape the text content of string literals, e.g. & -> & - * @param text The escaped string literal text. - * @returns The unescaped string literal text. - */ -export declare function unescapeStringLiteralText(text: string): string; -/** - * Returns true if a given ts.Node is a computed property - * @param node ts.Node to be checked - * @returns is Computed Property - */ -export declare function isComputedProperty(node: ts.Node): boolean; -/** - * Returns true if a given ts.Node is optional (has QuestionToken) - * @param node ts.Node to be checked - * @returns is Optional - */ -export declare function isOptional(node: { - questionToken?: ts.QuestionToken; -}): boolean; -/** - * Returns true if the node is an optional chain node - */ -export declare function isChainExpression(node: TSESTree.Node): node is TSESTree.ChainExpression; -/** - * Returns true of the child of property access expression is an optional chain - */ -export declare function isChildUnwrappableOptionalChain(node: ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.CallExpression | ts.NonNullExpression, child: TSESTree.Node): boolean; -/** - * Returns the type of a given ts.Token - * @param token the ts.Token - * @returns the token type - */ -export declare function getTokenType(token: ts.Identifier | ts.Token): Exclude; -/** - * Extends and formats a given ts.Token, for a given AST - * @param token the ts.Token - * @param ast the AST object - * @returns the converted Token - */ -export declare function convertToken(token: ts.Node, ast: ts.SourceFile): TSESTree.Token; -/** - * Converts all tokens for the given AST - * @param ast the AST object - * @returns the converted Tokens - */ -export declare function convertTokens(ast: ts.SourceFile): TSESTree.Token[]; -export interface TSError { - index: number; - lineNumber: number; - column: number; - message: string; -} -/** - * @param ast the AST object - * @param start the index at which the error starts - * @param message the error message - * @returns converted error object - */ -export declare function createError(ast: ts.SourceFile, start: number, message: string): TSError; -/** - * @param n the TSNode - * @param ast the TS AST - */ -export declare function nodeHasTokens(n: ts.Node, ast: ts.SourceFile): boolean; -/** - * Like `forEach`, but suitable for use with numbers and strings (which may be falsy). - * @template T - * @template U - * @param array - * @param callback - */ -export declare function firstDefined(array: readonly T[] | undefined, callback: (element: T, index: number) => U | undefined): U | undefined; -export {}; -//# sourceMappingURL=node-utils.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map deleted file mode 100644 index f898a2f2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"node-utils.d.ts","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js deleted file mode 100644 index 05c95cf2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js +++ /dev/null @@ -1,543 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.firstDefined = exports.nodeHasTokens = exports.createError = exports.convertTokens = exports.convertToken = exports.getTokenType = exports.isChildUnwrappableOptionalChain = exports.isChainExpression = exports.isOptional = exports.isComputedProperty = exports.unescapeStringLiteralText = exports.hasJSXAncestor = exports.findFirstMatchingAncestor = exports.findNextToken = exports.getTSNodeAccessibility = exports.getDeclarationKind = exports.isJSXToken = exports.isToken = exports.getRange = exports.canContainDirective = exports.getLocFor = exports.getLineAndCharacterFor = exports.getBinaryExpressionType = exports.isJSDocComment = exports.isComment = exports.isComma = exports.getLastModifier = exports.hasModifier = exports.isESTreeClassMember = exports.getTextForTokenKind = exports.isLogicalOperator = exports.isAssignmentOperator = void 0; -const unescape_1 = __importDefault(require("lodash/unescape")); -const ts = __importStar(require("typescript")); -const ts_estree_1 = require("./ts-estree"); -const SyntaxKind = ts.SyntaxKind; -const LOGICAL_OPERATORS = [ - SyntaxKind.BarBarToken, - SyntaxKind.AmpersandAmpersandToken, - SyntaxKind.QuestionQuestionToken, -]; -/** - * Returns true if the given ts.Token is the assignment operator - * @param operator the operator token - * @returns is assignment - */ -function isAssignmentOperator(operator) { - return (operator.kind >= SyntaxKind.FirstAssignment && - operator.kind <= SyntaxKind.LastAssignment); -} -exports.isAssignmentOperator = isAssignmentOperator; -/** - * Returns true if the given ts.Token is a logical operator - * @param operator the operator token - * @returns is a logical operator - */ -function isLogicalOperator(operator) { - return LOGICAL_OPERATORS.includes(operator.kind); -} -exports.isLogicalOperator = isLogicalOperator; -/** - * Returns the string form of the given TSToken SyntaxKind - * @param kind the token's SyntaxKind - * @returns the token applicable token as a string - */ -function getTextForTokenKind(kind) { - return ts.tokenToString(kind); -} -exports.getTextForTokenKind = getTextForTokenKind; -/** - * Returns true if the given ts.Node is a valid ESTree class member - * @param node TypeScript AST node - * @returns is valid ESTree class member - */ -function isESTreeClassMember(node) { - return node.kind !== SyntaxKind.SemicolonClassElement; -} -exports.isESTreeClassMember = isESTreeClassMember; -/** - * Checks if a ts.Node has a modifier - * @param modifierKind TypeScript SyntaxKind modifier - * @param node TypeScript AST node - * @returns has the modifier specified - */ -function hasModifier(modifierKind, node) { - return (!!node.modifiers && - !!node.modifiers.length && - node.modifiers.some(modifier => modifier.kind === modifierKind)); -} -exports.hasModifier = hasModifier; -/** - * Get last last modifier in ast - * @param node TypeScript AST node - * @returns returns last modifier if present or null - */ -function getLastModifier(node) { - return ((!!node.modifiers && - !!node.modifiers.length && - node.modifiers[node.modifiers.length - 1]) || - null); -} -exports.getLastModifier = getLastModifier; -/** - * Returns true if the given ts.Token is a comma - * @param token the TypeScript token - * @returns is comma - */ -function isComma(token) { - return token.kind === SyntaxKind.CommaToken; -} -exports.isComma = isComma; -/** - * Returns true if the given ts.Node is a comment - * @param node the TypeScript node - * @returns is comment - */ -function isComment(node) { - return (node.kind === SyntaxKind.SingleLineCommentTrivia || - node.kind === SyntaxKind.MultiLineCommentTrivia); -} -exports.isComment = isComment; -/** - * Returns true if the given ts.Node is a JSDoc comment - * @param node the TypeScript node - * @returns is JSDoc comment - */ -function isJSDocComment(node) { - return node.kind === SyntaxKind.JSDocComment; -} -exports.isJSDocComment = isJSDocComment; -/** - * Returns the binary expression type of the given ts.Token - * @param operator the operator token - * @returns the binary expression type - */ -function getBinaryExpressionType(operator) { - if (isAssignmentOperator(operator)) { - return ts_estree_1.AST_NODE_TYPES.AssignmentExpression; - } - else if (isLogicalOperator(operator)) { - return ts_estree_1.AST_NODE_TYPES.LogicalExpression; - } - return ts_estree_1.AST_NODE_TYPES.BinaryExpression; -} -exports.getBinaryExpressionType = getBinaryExpressionType; -/** - * Returns line and column data for the given positions, - * @param pos position to check - * @param ast the AST object - * @returns line and column - */ -function getLineAndCharacterFor(pos, ast) { - const loc = ast.getLineAndCharacterOfPosition(pos); - return { - line: loc.line + 1, - column: loc.character, - }; -} -exports.getLineAndCharacterFor = getLineAndCharacterFor; -/** - * Returns line and column data for the given start and end positions, - * for the given AST - * @param start start data - * @param end end data - * @param ast the AST object - * @returns the loc data - */ -function getLocFor(start, end, ast) { - return { - start: getLineAndCharacterFor(start, ast), - end: getLineAndCharacterFor(end, ast), - }; -} -exports.getLocFor = getLocFor; -/** - * Check whatever node can contain directive - * @param node - * @returns returns true if node can contain directive - */ -function canContainDirective(node) { - if (node.kind === ts.SyntaxKind.Block) { - switch (node.parent.kind) { - case ts.SyntaxKind.Constructor: - case ts.SyntaxKind.GetAccessor: - case ts.SyntaxKind.SetAccessor: - case ts.SyntaxKind.ArrowFunction: - case ts.SyntaxKind.FunctionExpression: - case ts.SyntaxKind.FunctionDeclaration: - case ts.SyntaxKind.MethodDeclaration: - return true; - default: - return false; - } - } - return true; -} -exports.canContainDirective = canContainDirective; -/** - * Returns range for the given ts.Node - * @param node the ts.Node or ts.Token - * @param ast the AST object - * @returns the range data - */ -function getRange(node, ast) { - return [node.getStart(ast), node.getEnd()]; -} -exports.getRange = getRange; -/** - * Returns true if a given ts.Node is a token - * @param node the ts.Node - * @returns is a token - */ -function isToken(node) { - return (node.kind >= SyntaxKind.FirstToken && node.kind <= SyntaxKind.LastToken); -} -exports.isToken = isToken; -/** - * Returns true if a given ts.Node is a JSX token - * @param node ts.Node to be checked - * @returns is a JSX token - */ -function isJSXToken(node) { - return (node.kind >= SyntaxKind.JsxElement && node.kind <= SyntaxKind.JsxAttribute); -} -exports.isJSXToken = isJSXToken; -/** - * Returns the declaration kind of the given ts.Node - * @param node TypeScript AST node - * @returns declaration kind - */ -function getDeclarationKind(node) { - if (node.flags & ts.NodeFlags.Let) { - return 'let'; - } - if (node.flags & ts.NodeFlags.Const) { - return 'const'; - } - return 'var'; -} -exports.getDeclarationKind = getDeclarationKind; -/** - * Gets a ts.Node's accessibility level - * @param node The ts.Node - * @returns accessibility "public", "protected", "private", or null - */ -function getTSNodeAccessibility(node) { - const modifiers = node.modifiers; - if (!modifiers) { - return null; - } - for (let i = 0; i < modifiers.length; i++) { - const modifier = modifiers[i]; - switch (modifier.kind) { - case SyntaxKind.PublicKeyword: - return 'public'; - case SyntaxKind.ProtectedKeyword: - return 'protected'; - case SyntaxKind.PrivateKeyword: - return 'private'; - default: - break; - } - } - return null; -} -exports.getTSNodeAccessibility = getTSNodeAccessibility; -/** - * Finds the next token based on the previous one and its parent - * Had to copy this from TS instead of using TS's version because theirs doesn't pass the ast to getChildren - * @param previousToken The previous TSToken - * @param parent The parent TSNode - * @param ast The TS AST - * @returns the next TSToken - */ -function findNextToken(previousToken, parent, ast) { - return find(parent); - function find(n) { - if (ts.isToken(n) && n.pos === previousToken.end) { - // this is token that starts at the end of previous token - return it - return n; - } - return firstDefined(n.getChildren(ast), (child) => { - const shouldDiveInChildNode = - // previous token is enclosed somewhere in the child - (child.pos <= previousToken.pos && child.end > previousToken.end) || - // previous token ends exactly at the beginning of child - child.pos === previousToken.end; - return shouldDiveInChildNode && nodeHasTokens(child, ast) - ? find(child) - : undefined; - }); - } -} -exports.findNextToken = findNextToken; -/** - * Find the first matching ancestor based on the given predicate function. - * @param node The current ts.Node - * @param predicate The predicate function to apply to each checked ancestor - * @returns a matching parent ts.Node - */ -function findFirstMatchingAncestor(node, predicate) { - while (node) { - if (predicate(node)) { - return node; - } - node = node.parent; - } - return undefined; -} -exports.findFirstMatchingAncestor = findFirstMatchingAncestor; -/** - * Returns true if a given ts.Node has a JSX token within its hierarchy - * @param node ts.Node to be checked - * @returns has JSX ancestor - */ -function hasJSXAncestor(node) { - return !!findFirstMatchingAncestor(node, isJSXToken); -} -exports.hasJSXAncestor = hasJSXAncestor; -/** - * Unescape the text content of string literals, e.g. & -> & - * @param text The escaped string literal text. - * @returns The unescaped string literal text. - */ -function unescapeStringLiteralText(text) { - return unescape_1.default(text); -} -exports.unescapeStringLiteralText = unescapeStringLiteralText; -/** - * Returns true if a given ts.Node is a computed property - * @param node ts.Node to be checked - * @returns is Computed Property - */ -function isComputedProperty(node) { - return node.kind === SyntaxKind.ComputedPropertyName; -} -exports.isComputedProperty = isComputedProperty; -/** - * Returns true if a given ts.Node is optional (has QuestionToken) - * @param node ts.Node to be checked - * @returns is Optional - */ -function isOptional(node) { - return node.questionToken - ? node.questionToken.kind === SyntaxKind.QuestionToken - : false; -} -exports.isOptional = isOptional; -/** - * Returns true if the node is an optional chain node - */ -function isChainExpression(node) { - return node.type === ts_estree_1.AST_NODE_TYPES.ChainExpression; -} -exports.isChainExpression = isChainExpression; -/** - * Returns true of the child of property access expression is an optional chain - */ -function isChildUnwrappableOptionalChain(node, child) { - if (isChainExpression(child) && - // (x?.y).z is semantically different, and as such .z is no longer optional - node.expression.kind !== ts.SyntaxKind.ParenthesizedExpression) { - return true; - } - return false; -} -exports.isChildUnwrappableOptionalChain = isChildUnwrappableOptionalChain; -/** - * Returns the type of a given ts.Token - * @param token the ts.Token - * @returns the token type - */ -function getTokenType(token) { - if ('originalKeywordKind' in token && token.originalKeywordKind) { - if (token.originalKeywordKind === SyntaxKind.NullKeyword) { - return ts_estree_1.AST_TOKEN_TYPES.Null; - } - else if (token.originalKeywordKind >= SyntaxKind.FirstFutureReservedWord && - token.originalKeywordKind <= SyntaxKind.LastKeyword) { - return ts_estree_1.AST_TOKEN_TYPES.Identifier; - } - return ts_estree_1.AST_TOKEN_TYPES.Keyword; - } - if (token.kind >= SyntaxKind.FirstKeyword && - token.kind <= SyntaxKind.LastFutureReservedWord) { - if (token.kind === SyntaxKind.FalseKeyword || - token.kind === SyntaxKind.TrueKeyword) { - return ts_estree_1.AST_TOKEN_TYPES.Boolean; - } - return ts_estree_1.AST_TOKEN_TYPES.Keyword; - } - if (token.kind >= SyntaxKind.FirstPunctuation && - token.kind <= SyntaxKind.LastBinaryOperator) { - return ts_estree_1.AST_TOKEN_TYPES.Punctuator; - } - if (token.kind >= SyntaxKind.NoSubstitutionTemplateLiteral && - token.kind <= SyntaxKind.TemplateTail) { - return ts_estree_1.AST_TOKEN_TYPES.Template; - } - switch (token.kind) { - case SyntaxKind.NumericLiteral: - return ts_estree_1.AST_TOKEN_TYPES.Numeric; - case SyntaxKind.JsxText: - return ts_estree_1.AST_TOKEN_TYPES.JSXText; - case SyntaxKind.StringLiteral: - // A TypeScript-StringLiteral token with a TypeScript-JsxAttribute or TypeScript-JsxElement parent, - // must actually be an ESTree-JSXText token - if (token.parent && - (token.parent.kind === SyntaxKind.JsxAttribute || - token.parent.kind === SyntaxKind.JsxElement)) { - return ts_estree_1.AST_TOKEN_TYPES.JSXText; - } - return ts_estree_1.AST_TOKEN_TYPES.String; - case SyntaxKind.RegularExpressionLiteral: - return ts_estree_1.AST_TOKEN_TYPES.RegularExpression; - case SyntaxKind.Identifier: - case SyntaxKind.ConstructorKeyword: - case SyntaxKind.GetKeyword: - case SyntaxKind.SetKeyword: - // falls through - default: - } - // Some JSX tokens have to be determined based on their parent - if (token.parent && token.kind === SyntaxKind.Identifier) { - if (isJSXToken(token.parent)) { - return ts_estree_1.AST_TOKEN_TYPES.JSXIdentifier; - } - if (token.parent.kind === SyntaxKind.PropertyAccessExpression && - hasJSXAncestor(token)) { - return ts_estree_1.AST_TOKEN_TYPES.JSXIdentifier; - } - } - return ts_estree_1.AST_TOKEN_TYPES.Identifier; -} -exports.getTokenType = getTokenType; -/** - * Extends and formats a given ts.Token, for a given AST - * @param token the ts.Token - * @param ast the AST object - * @returns the converted Token - */ -function convertToken(token, ast) { - const start = token.kind === SyntaxKind.JsxText - ? token.getFullStart() - : token.getStart(ast); - const end = token.getEnd(); - const value = ast.text.slice(start, end); - const tokenType = getTokenType(token); - if (tokenType === ts_estree_1.AST_TOKEN_TYPES.RegularExpression) { - return { - type: tokenType, - value, - range: [start, end], - loc: getLocFor(start, end, ast), - regex: { - pattern: value.slice(1, value.lastIndexOf('/')), - flags: value.slice(value.lastIndexOf('/') + 1), - }, - }; - } - else { - return { - type: tokenType, - value, - range: [start, end], - loc: getLocFor(start, end, ast), - }; - } -} -exports.convertToken = convertToken; -/** - * Converts all tokens for the given AST - * @param ast the AST object - * @returns the converted Tokens - */ -function convertTokens(ast) { - const result = []; - /** - * @param node the ts.Node - */ - function walk(node) { - // TypeScript generates tokens for types in JSDoc blocks. Comment tokens - // and their children should not be walked or added to the resulting tokens list. - if (isComment(node) || isJSDocComment(node)) { - return; - } - if (isToken(node) && node.kind !== SyntaxKind.EndOfFileToken) { - const converted = convertToken(node, ast); - if (converted) { - result.push(converted); - } - } - else { - node.getChildren(ast).forEach(walk); - } - } - walk(ast); - return result; -} -exports.convertTokens = convertTokens; -/** - * @param ast the AST object - * @param start the index at which the error starts - * @param message the error message - * @returns converted error object - */ -function createError(ast, start, message) { - const loc = ast.getLineAndCharacterOfPosition(start); - return { - index: start, - lineNumber: loc.line + 1, - column: loc.character, - message, - }; -} -exports.createError = createError; -/** - * @param n the TSNode - * @param ast the TS AST - */ -function nodeHasTokens(n, ast) { - // If we have a token or node that has a non-zero width, it must have tokens. - // Note: getWidth() does not take trivia into account. - return n.kind === SyntaxKind.EndOfFileToken - ? // eslint-disable-next-line @typescript-eslint/no-explicit-any - !!n.jsDoc - : n.getWidth(ast) !== 0; -} -exports.nodeHasTokens = nodeHasTokens; -/** - * Like `forEach`, but suitable for use with numbers and strings (which may be falsy). - * @template T - * @template U - * @param array - * @param callback - */ -function firstDefined(array, callback) { - if (array === undefined) { - return undefined; - } - for (let i = 0; i < array.length; i++) { - const result = callback(array[i], i); - if (result !== undefined) { - return result; - } - } - return undefined; -} -exports.firstDefined = firstDefined; -//# sourceMappingURL=node-utils.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map deleted file mode 100644 index 306ba366..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts deleted file mode 100644 index e64a09d2..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts +++ /dev/null @@ -1,150 +0,0 @@ -import { DebugLevel } from '@typescript-eslint/types'; -import { Program } from 'typescript'; -import { TSESTree, TSNode, TSESTreeToTSNode, TSToken } from './ts-estree'; -declare type DebugModule = 'typescript-eslint' | 'eslint' | 'typescript'; -export interface Extra { - code: string; - comment: boolean; - comments: TSESTree.Comment[]; - createDefaultProgram: boolean; - debugLevel: Set; - errorOnTypeScriptSyntacticAndSemanticIssues: boolean; - errorOnUnknownASTType: boolean; - extraFileExtensions: string[]; - filePath: string; - jsx: boolean; - loc: boolean; - log: (message: string) => void; - preserveNodeMaps?: boolean; - projects: string[]; - range: boolean; - strict: boolean; - tokens: null | TSESTree.Token[]; - tsconfigRootDir: string; - useJSXTextNode: boolean; -} -interface ParseOptions { - /** - * create a top-level comments array containing all comments - */ - comment?: boolean; - /** - * An array of modules to turn explicit debugging on for. - * - 'typescript-eslint' is the same as setting the env var `DEBUG=typescript-eslint:*` - * - 'eslint' is the same as setting the env var `DEBUG=eslint:*` - * - 'typescript' is the same as setting `extendedDiagnostics: true` in your tsconfig compilerOptions - * - * For convenience, also supports a boolean: - * - true === ['typescript-eslint'] - * - false === [] - */ - debugLevel?: DebugLevel; - /** - * Cause the parser to error if it encounters an unknown AST node type (useful for testing). - * This case only usually occurs when TypeScript releases new features. - */ - errorOnUnknownASTType?: boolean; - /** - * Absolute (or relative to `cwd`) path to the file being parsed. - */ - filePath?: string; - /** - * Enable parsing of JSX. - * For more details, see https://www.typescriptlang.org/docs/handbook/jsx.html - * - * NOTE: this setting does not effect known file types (.js, .jsx, .ts, .tsx, .json) because the - * TypeScript compiler has its own internal handling for known file extensions. - * - * For the exact behavior, see https://github.com/typescript-eslint/typescript-eslint/tree/master/packages/parser#parseroptionsecmafeaturesjsx - */ - jsx?: boolean; - /** - * Controls whether the `loc` information to each node. - * The `loc` property is an object which contains the exact line/column the node starts/ends on. - * This is similar to the `range` property, except it is line/column relative. - */ - loc?: boolean; - loggerFn?: ((message: string) => void) | false; - /** - * Controls whether the `range` property is included on AST nodes. - * The `range` property is a [number, number] which indicates the start/end index of the node in the file contents. - * This is similar to the `loc` property, except this is the absolute index. - */ - range?: boolean; - /** - * Set to true to create a top-level array containing all tokens from the file. - */ - tokens?: boolean; - useJSXTextNode?: boolean; -} -interface ParseAndGenerateServicesOptions extends ParseOptions { - /** - * Causes the parser to error if the TypeScript compiler returns any unexpected syntax/semantic errors. - */ - errorOnTypeScriptSyntacticAndSemanticIssues?: boolean; - /** - * When `project` is provided, this controls the non-standard file extensions which will be parsed. - * It accepts an array of file extensions, each preceded by a `.`. - */ - extraFileExtensions?: string[]; - /** - * Absolute (or relative to `tsconfigRootDir`) path to the file being parsed. - * When `project` is provided, this is required, as it is used to fetch the file from the TypeScript compiler's cache. - */ - filePath?: string; - /** - * Allows the user to control whether or not two-way AST node maps are preserved - * during the AST conversion process. - * - * By default: the AST node maps are NOT preserved, unless `project` has been specified, - * in which case the maps are made available on the returned `parserServices`. - * - * NOTE: If `preserveNodeMaps` is explicitly set by the user, it will be respected, - * regardless of whether or not `project` is in use. - */ - preserveNodeMaps?: boolean; - /** - * Absolute (or relative to `tsconfigRootDir`) paths to the tsconfig(s). - * If this is provided, type information will be returned. - */ - project?: string | string[]; - /** - * If you provide a glob (or globs) to the project option, you can use this option to ignore certain folders from - * being matched by the globs. - * This accepts an array of globs to ignore. - * - * By default, this is set to ["**\/node_modules/**"] - */ - projectFolderIgnoreList?: string[]; - /** - * The absolute path to the root directory for all provided `project`s. - */ - tsconfigRootDir?: string; - /** - *************************************************************************************** - * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * - *************************************************************************************** - * - * When passed with `project`, this allows the parser to create a catch-all, default program. - * This means that if the parser encounters a file not included in any of the provided `project`s, - * it will not error, but will instead parse the file and its dependencies in a new program. - */ - createDefaultProgram?: boolean; -} -export declare type TSESTreeOptions = ParseAndGenerateServicesOptions; -export interface ParserWeakMap { - get(key: TKey): TValue; - has(key: unknown): boolean; -} -export interface ParserWeakMapESTreeToTSNode { - get(key: TKeyBase): TSESTreeToTSNode; - has(key: unknown): boolean; -} -export interface ParserServices { - program: Program; - esTreeNodeToTSNodeMap: ParserWeakMapESTreeToTSNode; - tsNodeToESTreeNodeMap: ParserWeakMap; - hasFullTypeInformation: boolean; -} -export {}; -//# sourceMappingURL=parser-options.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map deleted file mode 100644 index af6375f0..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js deleted file mode 100644 index 66f40a29..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=parser-options.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js.map deleted file mode 100644 index 22b7b8ab..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser-options.js","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts deleted file mode 100644 index d31f3a7a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { TSESTreeOptions, ParserServices } from './parser-options'; -import { TSESTree } from './ts-estree'; -interface EmptyObject { -} -declare type AST = TSESTree.Program & (T['tokens'] extends true ? { - tokens: TSESTree.Token[]; -} : EmptyObject) & (T['comment'] extends true ? { - comments: TSESTree.Comment[]; -} : EmptyObject); -interface ParseAndGenerateServicesResult { - ast: AST; - services: ParserServices; -} -declare function parse(code: string, options?: T): AST; -declare function parseAndGenerateServices(code: string, options: T): ParseAndGenerateServicesResult; -export { AST, parse, parseAndGenerateServices, ParseAndGenerateServicesResult }; -//# sourceMappingURL=parser.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map deleted file mode 100644 index 06470335..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAWA,OAAO,EAAS,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAwSvC,UAAU,WAAW;CAAG;AACxB,aAAK,GAAG,CAAC,CAAC,SAAS,eAAe,IAAI,QAAQ,CAAC,OAAO,GACpD,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,GACvE,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,CAAC;AAE/E,UAAU,8BAA8B,CAAC,CAAC,SAAS,eAAe;IAChE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,iBAAS,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EACxD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,GACV,GAAG,CAAC,CAAC,CAAC,CA4CR;AAED,iBAAS,wBAAwB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EAC3E,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,GACT,8BAA8B,CAAC,CAAC,CAAC,CA0EnC;AAED,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.js deleted file mode 100644 index 20db6212..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.js +++ /dev/null @@ -1,380 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.parseAndGenerateServices = exports.parse = void 0; -const debug_1 = __importDefault(require("debug")); -const globby_1 = require("globby"); -const is_glob_1 = __importDefault(require("is-glob")); -const semver_1 = __importDefault(require("semver")); -const ts = __importStar(require("typescript")); -const ast_converter_1 = require("./ast-converter"); -const convert_1 = require("./convert"); -const createDefaultProgram_1 = require("./create-program/createDefaultProgram"); -const createIsolatedProgram_1 = require("./create-program/createIsolatedProgram"); -const createProjectProgram_1 = require("./create-program/createProjectProgram"); -const createSourceFile_1 = require("./create-program/createSourceFile"); -const semantic_or_syntactic_errors_1 = require("./semantic-or-syntactic-errors"); -const shared_1 = require("./create-program/shared"); -const log = debug_1.default('typescript-eslint:typescript-estree:parser'); -/** - * This needs to be kept in sync with the top-level README.md in the - * typescript-eslint monorepo - */ -const SUPPORTED_TYPESCRIPT_VERSIONS = '>=3.3.1 <4.1.0'; -/* - * The semver package will ignore prerelease ranges, and we don't want to explicitly document every one - * List them all separately here, so we can automatically create the full string - */ -const SUPPORTED_PRERELEASE_RANGES = []; -const ACTIVE_TYPESCRIPT_VERSION = ts.version; -const isRunningSupportedTypeScriptVersion = semver_1.default.satisfies(ACTIVE_TYPESCRIPT_VERSION, [SUPPORTED_TYPESCRIPT_VERSIONS] - .concat(SUPPORTED_PRERELEASE_RANGES) - .join(' || ')); -let extra; -let warnedAboutTSVersion = false; -function enforceString(code) { - /** - * Ensure the source code is a string - */ - if (typeof code !== 'string') { - return String(code); - } - return code; -} -/** - * @param code The code of the file being linted - * @param shouldProvideParserServices True if the program should be attempted to be calculated from provided tsconfig files - * @param shouldCreateDefaultProgram True if the program should be created from compiler host - * @returns Returns a source file and program corresponding to the linted code - */ -function getProgramAndAST(code, shouldProvideParserServices, shouldCreateDefaultProgram) { - return ((shouldProvideParserServices && - createProjectProgram_1.createProjectProgram(code, shouldCreateDefaultProgram, extra)) || - (shouldProvideParserServices && - shouldCreateDefaultProgram && - createDefaultProgram_1.createDefaultProgram(code, extra)) || - createIsolatedProgram_1.createIsolatedProgram(code, extra)); -} -/** - * Compute the filename based on the parser options. - * - * Even if jsx option is set in typescript compiler, filename still has to - * contain .tsx file extension. - * - * @param options Parser options - */ -function getFileName({ jsx } = {}) { - return jsx ? 'estree.tsx' : 'estree.ts'; -} -/** - * Resets the extra config object - */ -function resetExtra() { - extra = { - code: '', - comment: false, - comments: [], - createDefaultProgram: false, - debugLevel: new Set(), - errorOnTypeScriptSyntacticAndSemanticIssues: false, - errorOnUnknownASTType: false, - extraFileExtensions: [], - filePath: getFileName(), - jsx: false, - loc: false, - log: console.log, - preserveNodeMaps: true, - projects: [], - range: false, - strict: false, - tokens: null, - tsconfigRootDir: process.cwd(), - useJSXTextNode: false, - }; -} -/** - * Normalizes, sanitizes, resolves and filters the provided - */ -function prepareAndTransformProjects(projectsInput, ignoreListInput) { - let projects = []; - // Normalize and sanitize the project paths - if (typeof projectsInput === 'string') { - projects.push(projectsInput); - } - else if (Array.isArray(projectsInput)) { - for (const project of projectsInput) { - if (typeof project === 'string') { - projects.push(project); - } - } - } - if (projects.length === 0) { - return projects; - } - // Transform glob patterns into paths - const globbedProjects = projects.filter(project => is_glob_1.default(project)); - projects = projects - .filter(project => !is_glob_1.default(project)) - .concat(globby_1.sync([...globbedProjects, ...ignoreListInput], { - cwd: extra.tsconfigRootDir, - })); - log('parserOptions.project (excluding ignored) matched projects: %s', projects); - return projects; -} -function applyParserOptionsToExtra(options) { - var _a; - /** - * Configure Debug logging - */ - if (options.debugLevel === true) { - extra.debugLevel = new Set(['typescript-eslint']); - } - else if (Array.isArray(options.debugLevel)) { - extra.debugLevel = new Set(options.debugLevel); - } - if (extra.debugLevel.size > 0) { - // debug doesn't support multiple `enable` calls, so have to do it all at once - const namespaces = []; - if (extra.debugLevel.has('typescript-eslint')) { - namespaces.push('typescript-eslint:*'); - } - if (extra.debugLevel.has('eslint') || - // make sure we don't turn off the eslint debug if it was enabled via --debug - debug_1.default.enabled('eslint:*')) { - // https://github.com/eslint/eslint/blob/9dfc8501fb1956c90dc11e6377b4cb38a6bea65d/bin/eslint.js#L25 - namespaces.push('eslint:*,-eslint:code-path'); - } - debug_1.default.enable(namespaces.join(',')); - } - /** - * Track range information in the AST - */ - extra.range = typeof options.range === 'boolean' && options.range; - extra.loc = typeof options.loc === 'boolean' && options.loc; - /** - * Track tokens in the AST - */ - if (typeof options.tokens === 'boolean' && options.tokens) { - extra.tokens = []; - } - /** - * Track comments in the AST - */ - if (typeof options.comment === 'boolean' && options.comment) { - extra.comment = true; - extra.comments = []; - } - /** - * Enable JSX - note the applicable file extension is still required - */ - if (typeof options.jsx === 'boolean' && options.jsx) { - extra.jsx = true; - } - /** - * Get the file path - */ - if (typeof options.filePath === 'string' && options.filePath !== '') { - extra.filePath = options.filePath; - } - else { - extra.filePath = getFileName(extra); - } - /** - * The JSX AST changed the node type for string literals - * inside a JSX Element from `Literal` to `JSXText`. - * - * When value is `true`, these nodes will be parsed as type `JSXText`. - * When value is `false`, these nodes will be parsed as type `Literal`. - */ - if (typeof options.useJSXTextNode === 'boolean' && options.useJSXTextNode) { - extra.useJSXTextNode = true; - } - /** - * Allow the user to cause the parser to error if it encounters an unknown AST Node Type - * (used in testing) - */ - if (typeof options.errorOnUnknownASTType === 'boolean' && - options.errorOnUnknownASTType) { - extra.errorOnUnknownASTType = true; - } - /** - * Allow the user to override the function used for logging - */ - if (typeof options.loggerFn === 'function') { - extra.log = options.loggerFn; - } - else if (options.loggerFn === false) { - extra.log = () => { }; - } - if (typeof options.tsconfigRootDir === 'string') { - extra.tsconfigRootDir = options.tsconfigRootDir; - } - // NOTE - ensureAbsolutePath relies upon having the correct tsconfigRootDir in extra - extra.filePath = shared_1.ensureAbsolutePath(extra.filePath, extra); - // NOTE - prepareAndTransformProjects relies upon having the correct tsconfigRootDir in extra - const projectFolderIgnoreList = ((_a = options.projectFolderIgnoreList) !== null && _a !== void 0 ? _a : []) - .reduce((acc, folder) => { - if (typeof folder === 'string') { - acc.push(folder); - } - return acc; - }, []) - // prefix with a ! for not match glob - .map(folder => (folder.startsWith('!') ? folder : `!${folder}`)); - extra.projects = prepareAndTransformProjects(options.project, projectFolderIgnoreList); - if (Array.isArray(options.extraFileExtensions) && - options.extraFileExtensions.every(ext => typeof ext === 'string')) { - extra.extraFileExtensions = options.extraFileExtensions; - } - /** - * Allow the user to enable or disable the preservation of the AST node maps - * during the conversion process. - */ - if (typeof options.preserveNodeMaps === 'boolean') { - extra.preserveNodeMaps = options.preserveNodeMaps; - } - extra.createDefaultProgram = - typeof options.createDefaultProgram === 'boolean' && - options.createDefaultProgram; -} -function warnAboutTSVersion() { - var _a; - if (!isRunningSupportedTypeScriptVersion && !warnedAboutTSVersion) { - const isTTY = typeof process === undefined ? false : (_a = process.stdout) === null || _a === void 0 ? void 0 : _a.isTTY; - if (isTTY) { - const border = '============='; - const versionWarning = [ - border, - 'WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.', - 'You may find that it works just fine, or you may not.', - `SUPPORTED TYPESCRIPT VERSIONS: ${SUPPORTED_TYPESCRIPT_VERSIONS}`, - `YOUR TYPESCRIPT VERSION: ${ACTIVE_TYPESCRIPT_VERSION}`, - 'Please only submit bug reports when using the officially supported version.', - border, - ]; - extra.log(versionWarning.join('\n\n')); - } - warnedAboutTSVersion = true; - } -} -function parse(code, options) { - /** - * Reset the parse configuration - */ - resetExtra(); - /** - * Ensure users do not attempt to use parse() when they need parseAndGenerateServices() - */ - if (options === null || options === void 0 ? void 0 : options.errorOnTypeScriptSyntacticAndSemanticIssues) { - throw new Error(`"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()`); - } - /** - * Ensure the source code is a string, and store a reference to it - */ - code = enforceString(code); - extra.code = code; - /** - * Apply the given parser options - */ - if (typeof options !== 'undefined') { - applyParserOptionsToExtra(options); - } - /** - * Warn if the user is using an unsupported version of TypeScript - */ - warnAboutTSVersion(); - /** - * Create a ts.SourceFile directly, no ts.Program is needed for a simple - * parse - */ - const ast = createSourceFile_1.createSourceFile(code, extra); - /** - * Convert the TypeScript AST to an ESTree-compatible one - */ - const { estree } = ast_converter_1.astConverter(ast, extra, false); - return estree; -} -exports.parse = parse; -function parseAndGenerateServices(code, options) { - /** - * Reset the parse configuration - */ - resetExtra(); - /** - * Ensure the source code is a string, and store a reference to it - */ - code = enforceString(code); - extra.code = code; - /** - * Apply the given parser options - */ - if (typeof options !== 'undefined') { - applyParserOptionsToExtra(options); - if (typeof options.errorOnTypeScriptSyntacticAndSemanticIssues === - 'boolean' && - options.errorOnTypeScriptSyntacticAndSemanticIssues) { - extra.errorOnTypeScriptSyntacticAndSemanticIssues = true; - } - } - /** - * Warn if the user is using an unsupported version of TypeScript - */ - warnAboutTSVersion(); - /** - * Generate a full ts.Program in order to be able to provide parser - * services, such as type-checking - */ - const shouldProvideParserServices = extra.projects && extra.projects.length > 0; - const { ast, program } = getProgramAndAST(code, shouldProvideParserServices, extra.createDefaultProgram); - /** - * Convert the TypeScript AST to an ESTree-compatible one, and optionally preserve - * mappings between converted and original AST nodes - */ - const preserveNodeMaps = typeof extra.preserveNodeMaps === 'boolean' ? extra.preserveNodeMaps : true; - const { estree, astMaps } = ast_converter_1.astConverter(ast, extra, preserveNodeMaps); - /** - * Even if TypeScript parsed the source code ok, and we had no problems converting the AST, - * there may be other syntactic or semantic issues in the code that we can optionally report on. - */ - if (program && extra.errorOnTypeScriptSyntacticAndSemanticIssues) { - const error = semantic_or_syntactic_errors_1.getFirstSemanticOrSyntacticError(program, ast); - if (error) { - throw convert_1.convertError(error); - } - } - /** - * Return the converted AST and additional parser services - */ - return { - ast: estree, - services: { - hasFullTypeInformation: shouldProvideParserServices, - program, - esTreeNodeToTSNodeMap: astMaps.esTreeNodeToTSNodeMap, - tsNodeToESTreeNodeMap: astMaps.tsNodeToESTreeNodeMap, - }, - }; -} -exports.parseAndGenerateServices = parseAndGenerateServices; -//# sourceMappingURL=parser.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map deleted file mode 100644 index d717c37d..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.d.ts deleted file mode 100644 index 06b3e12a..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import * as ts from 'typescript'; -interface SemanticOrSyntacticError extends ts.Diagnostic { - message: string; -} -/** - * By default, diagnostics from the TypeScript compiler contain all errors - regardless of whether - * they are related to generic ECMAScript standards, or TypeScript-specific constructs. - * - * Therefore, we filter out all diagnostics, except for the ones we explicitly want to consider when - * the user opts in to throwing errors on semantic issues. - */ -export declare function getFirstSemanticOrSyntacticError(program: ts.Program, ast: ts.SourceFile): SemanticOrSyntacticError | undefined; -export {}; -//# sourceMappingURL=semantic-or-syntactic-errors.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.d.ts.map deleted file mode 100644 index 83299c59..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"semantic-or-syntactic-errors.d.ts","sourceRoot":"","sources":["../src/semantic-or-syntactic-errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,UAAU,wBAAyB,SAAQ,EAAE,CAAC,UAAU;IACtD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,GAAG,EAAE,EAAE,CAAC,UAAU,GACjB,wBAAwB,GAAG,SAAS,CAmCtC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js deleted file mode 100644 index 96473c4e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js +++ /dev/null @@ -1,112 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getFirstSemanticOrSyntacticError = void 0; -const ts = __importStar(require("typescript")); -/** - * By default, diagnostics from the TypeScript compiler contain all errors - regardless of whether - * they are related to generic ECMAScript standards, or TypeScript-specific constructs. - * - * Therefore, we filter out all diagnostics, except for the ones we explicitly want to consider when - * the user opts in to throwing errors on semantic issues. - */ -function getFirstSemanticOrSyntacticError(program, ast) { - try { - const supportedSyntacticDiagnostics = whitelistSupportedDiagnostics(program.getSyntacticDiagnostics(ast)); - if (supportedSyntacticDiagnostics.length) { - return convertDiagnosticToSemanticOrSyntacticError(supportedSyntacticDiagnostics[0]); - } - const supportedSemanticDiagnostics = whitelistSupportedDiagnostics(program.getSemanticDiagnostics(ast)); - if (supportedSemanticDiagnostics.length) { - return convertDiagnosticToSemanticOrSyntacticError(supportedSemanticDiagnostics[0]); - } - return undefined; - } - catch (e) { - /** - * TypeScript compiler has certain Debug.fail() statements in, which will cause the diagnostics - * retrieval above to throw. - * - * E.g. from ast-alignment-tests - * "Debug Failure. Shouldn't ever directly check a JsxOpeningElement" - * - * For our current use-cases this is undesired behavior, so we just suppress it - * and log a a warning. - */ - /* istanbul ignore next */ - console.warn(`Warning From TSC: "${e.message}`); // eslint-disable-line no-console - /* istanbul ignore next */ - return undefined; - } -} -exports.getFirstSemanticOrSyntacticError = getFirstSemanticOrSyntacticError; -function whitelistSupportedDiagnostics(diagnostics) { - return diagnostics.filter(diagnostic => { - switch (diagnostic.code) { - case 1013: // "A rest parameter or binding pattern may not have a trailing comma." - case 1014: // "A rest parameter must be last in a parameter list." - case 1044: // "'{0}' modifier cannot appear on a module or namespace element." - case 1045: // "A '{0}' modifier cannot be used with an interface declaration." - case 1048: // "A rest parameter cannot have an initializer." - case 1049: // "A 'set' accessor must have exactly one parameter." - case 1070: // "'{0}' modifier cannot appear on a type member." - case 1071: // "'{0}' modifier cannot appear on an index signature." - case 1085: // "Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'." - case 1090: // "'{0}' modifier cannot appear on a parameter." - case 1096: // "An index signature must have exactly one parameter." - case 1097: // "'{0}' list cannot be empty." - case 1098: // "Type parameter list cannot be empty." - case 1099: // "Type argument list cannot be empty." - case 1117: // "An object literal cannot have multiple properties with the same name in strict mode." - case 1121: // "Octal literals are not allowed in strict mode." - case 1123: // "Variable declaration list cannot be empty." - case 1141: // "String literal expected." - case 1162: // "An object member cannot be declared optional." - case 1164: // "Computed property names are not allowed in enums." - case 1172: // "'extends' clause already seen." - case 1173: // "'extends' clause must precede 'implements' clause." - case 1175: // "'implements' clause already seen." - case 1176: // "Interface declaration cannot have 'implements' clause." - case 1190: // "The variable declaration of a 'for...of' statement cannot have an initializer." - case 1196: // "Catch clause variable type annotation must be 'any' or 'unknown' if specified." - case 1200: // "Line terminator not permitted before arrow." - case 1206: // "Decorators are not valid here." - case 1211: // "A class declaration without the 'default' modifier must have a name." - case 1242: // "'abstract' modifier can only appear on a class, method, or property declaration." - case 1246: // "An interface property cannot have an initializer." - case 1255: // "A definite assignment assertion '!' is not permitted in this context." - case 1308: // "'await' expression is only allowed within an async function." - case 2364: // "The left-hand side of an assignment expression must be a variable or a property access." - case 2369: // "A parameter property is only allowed in a constructor implementation." - case 2452: // "An enum member cannot have a numeric name." - case 2462: // "A rest element must be last in a destructuring pattern." - case 8017: // "Octal literal types must use ES2015 syntax. Use the syntax '{0}'." - case 17012: // "'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?" - case 17013: // "Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor." - return true; - } - return false; - }); -} -function convertDiagnosticToSemanticOrSyntacticError(diagnostic) { - return Object.assign(Object.assign({}, diagnostic), { message: ts.flattenDiagnosticMessageText(diagnostic.messageText, ts.sys.newLine) }); -} -//# sourceMappingURL=semantic-or-syntactic-errors.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map deleted file mode 100644 index af69657e..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"semantic-or-syntactic-errors.js","sourceRoot":"","sources":["../src/semantic-or-syntactic-errors.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts deleted file mode 100644 index be2b1fca..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { TSESTree } from './ts-estree'; -declare type SimpleTraverseOptions = { - enter: (node: TSESTree.Node, parent: TSESTree.Node | undefined) => void; -} | { - [key: string]: (node: TSESTree.Node, parent: TSESTree.Node | undefined) => void; -}; -export declare function simpleTraverse(startingNode: TSESTree.Node, options: SimpleTraverseOptions, setParentPointers?: boolean): void; -export {}; -//# sourceMappingURL=simple-traverse.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map deleted file mode 100644 index 7acdb869..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"simple-traverse.d.ts","sourceRoot":"","sources":["../src/simple-traverse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAevC,aAAK,qBAAqB,GACtB;IACE,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;CACzE,GACD;IACE,CAAC,GAAG,EAAE,MAAM,GAAG,CACb,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,KAC9B,IAAI,CAAC;CACX,CAAC;AA8CN,wBAAgB,cAAc,CAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,EAC3B,OAAO,EAAE,qBAAqB,EAC9B,iBAAiB,UAAQ,GACxB,IAAI,CAKN"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js deleted file mode 100644 index b19f9b77..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js +++ /dev/null @@ -1,53 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.simpleTraverse = void 0; -const visitor_keys_1 = require("@typescript-eslint/visitor-keys"); -// eslint-disable-next-line @typescript-eslint/no-explicit-any -function isValidNode(x) { - return x !== null && typeof x === 'object' && typeof x.type === 'string'; -} -function getVisitorKeysForNode(allVisitorKeys, node) { - const keys = allVisitorKeys[node.type]; - return (keys !== null && keys !== void 0 ? keys : []); -} -class SimpleTraverser { - constructor(selectors, setParentPointers = false) { - this.allVisitorKeys = visitor_keys_1.visitorKeys; - this.selectors = selectors; - this.setParentPointers = setParentPointers; - } - traverse(node, parent) { - if (!isValidNode(node)) { - return; - } - if (this.setParentPointers) { - node.parent = parent; - } - if ('enter' in this.selectors) { - this.selectors.enter(node, parent); - } - else if (node.type in this.selectors) { - this.selectors[node.type](node, parent); - } - const keys = getVisitorKeysForNode(this.allVisitorKeys, node); - if (keys.length < 1) { - return; - } - for (const key of keys) { - const childOrChildren = node[key]; - if (Array.isArray(childOrChildren)) { - for (const child of childOrChildren) { - this.traverse(child, node); - } - } - else { - this.traverse(childOrChildren, node); - } - } - } -} -function simpleTraverse(startingNode, options, setParentPointers = false) { - new SimpleTraverser(options, setParentPointers).traverse(startingNode, undefined); -} -exports.simpleTraverse = simpleTraverse; -//# sourceMappingURL=simple-traverse.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map deleted file mode 100644 index 910f55ed..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"simple-traverse.js","sourceRoot":"","sources":["../src/simple-traverse.ts"],"names":[],"mappings":";;;AAAA,kEAA8D;AAG9D,8DAA8D;AAC9D,SAAS,WAAW,CAAC,CAAM;IACzB,OAAO,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC3E,CAAC;AAED,SAAS,qBAAqB,CAC5B,cAAkC,EAClC,IAAmB;IAEnB,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAU,CAAC;AAC/B,CAAC;AAaD,MAAM,eAAe;IAKnB,YAAY,SAAgC,EAAE,iBAAiB,GAAG,KAAK;QAJtD,mBAAc,GAAG,0BAAW,CAAC;QAK5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,QAAQ,CAAC,IAAa,EAAE,MAAiC;QACvD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YACtB,OAAO;SACR;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;QAED,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;YAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACpC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACzC;QAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,OAAO;SACR;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YAElC,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBAClC,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE;oBACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;iBAC5B;aACF;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;aACtC;SACF;IACH,CAAC;CACF;AAED,SAAgB,cAAc,CAC5B,YAA2B,EAC3B,OAA8B,EAC9B,iBAAiB,GAAG,KAAK;IAEzB,IAAI,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CACtD,YAAY,EACZ,SAAS,CACV,CAAC;AACJ,CAAC;AATD,wCASC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts deleted file mode 100644 index c3aa41b7..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts +++ /dev/null @@ -1,169 +0,0 @@ -import { AST_NODE_TYPES, TSESTree } from '@typescript-eslint/types'; -import * as ts from 'typescript'; -import { TSNode } from './ts-nodes'; -export interface EstreeToTsNodeTypes { - [AST_NODE_TYPES.ArrayExpression]: ts.ArrayLiteralExpression; - [AST_NODE_TYPES.ArrayPattern]: ts.ArrayLiteralExpression | ts.ArrayBindingPattern; - [AST_NODE_TYPES.ArrowFunctionExpression]: ts.ArrowFunction; - [AST_NODE_TYPES.AssignmentExpression]: ts.BinaryExpression; - [AST_NODE_TYPES.AssignmentPattern]: ts.ShorthandPropertyAssignment | ts.BindingElement | ts.BinaryExpression | ts.ParameterDeclaration; - [AST_NODE_TYPES.AwaitExpression]: ts.AwaitExpression; - [AST_NODE_TYPES.BinaryExpression]: ts.BinaryExpression; - [AST_NODE_TYPES.BlockStatement]: ts.Block; - [AST_NODE_TYPES.BreakStatement]: ts.BreakStatement; - [AST_NODE_TYPES.CallExpression]: ts.CallExpression; - [AST_NODE_TYPES.CatchClause]: ts.CatchClause; - [AST_NODE_TYPES.ChainExpression]: ts.CallExpression | ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.NonNullExpression; - [AST_NODE_TYPES.ClassBody]: ts.ClassDeclaration | ts.ClassExpression; - [AST_NODE_TYPES.ClassDeclaration]: ts.ClassDeclaration; - [AST_NODE_TYPES.ClassExpression]: ts.ClassExpression; - [AST_NODE_TYPES.ClassProperty]: ts.PropertyDeclaration; - [AST_NODE_TYPES.ConditionalExpression]: ts.ConditionalExpression; - [AST_NODE_TYPES.ContinueStatement]: ts.ContinueStatement; - [AST_NODE_TYPES.DebuggerStatement]: ts.DebuggerStatement; - [AST_NODE_TYPES.Decorator]: ts.Decorator; - [AST_NODE_TYPES.DoWhileStatement]: ts.DoStatement; - [AST_NODE_TYPES.EmptyStatement]: ts.EmptyStatement; - [AST_NODE_TYPES.ExportAllDeclaration]: ts.ExportDeclaration; - [AST_NODE_TYPES.ExportDefaultDeclaration]: ts.ExportAssignment | ts.FunctionDeclaration | ts.VariableStatement | ts.ClassDeclaration | ts.ClassExpression | ts.TypeAliasDeclaration | ts.InterfaceDeclaration | ts.EnumDeclaration | ts.ModuleDeclaration; - [AST_NODE_TYPES.ExportNamedDeclaration]: ts.ExportDeclaration | ts.FunctionDeclaration | ts.VariableStatement | ts.ClassDeclaration | ts.ClassExpression | ts.TypeAliasDeclaration | ts.InterfaceDeclaration | ts.EnumDeclaration | ts.ModuleDeclaration; - [AST_NODE_TYPES.ExportSpecifier]: ts.ExportSpecifier; - [AST_NODE_TYPES.ExpressionStatement]: ts.ExpressionStatement; - [AST_NODE_TYPES.ForInStatement]: ts.ForInStatement; - [AST_NODE_TYPES.ForOfStatement]: ts.ForOfStatement; - [AST_NODE_TYPES.ForStatement]: ts.ForStatement; - [AST_NODE_TYPES.FunctionDeclaration]: ts.FunctionDeclaration; - [AST_NODE_TYPES.FunctionExpression]: ts.FunctionExpression | ts.ConstructorDeclaration | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration; - [AST_NODE_TYPES.Identifier]: ts.Identifier | ts.ConstructorDeclaration | ts.Token; - [AST_NODE_TYPES.IfStatement]: ts.IfStatement; - [AST_NODE_TYPES.ImportDeclaration]: ts.ImportDeclaration; - [AST_NODE_TYPES.ImportDefaultSpecifier]: ts.ImportClause; - [AST_NODE_TYPES.ImportExpression]: ts.CallExpression; - [AST_NODE_TYPES.ImportNamespaceSpecifier]: ts.NamespaceImport; - [AST_NODE_TYPES.ImportSpecifier]: ts.ImportSpecifier; - [AST_NODE_TYPES.JSXAttribute]: ts.JsxAttribute; - [AST_NODE_TYPES.JSXClosingElement]: ts.JsxClosingElement; - [AST_NODE_TYPES.JSXClosingFragment]: ts.JsxClosingFragment; - [AST_NODE_TYPES.JSXElement]: ts.JsxElement | ts.JsxSelfClosingElement; - [AST_NODE_TYPES.JSXEmptyExpression]: ts.JsxExpression; - [AST_NODE_TYPES.JSXExpressionContainer]: ts.JsxExpression; - [AST_NODE_TYPES.JSXFragment]: ts.JsxFragment; - [AST_NODE_TYPES.JSXIdentifier]: ts.Identifier | ts.ThisExpression; - [AST_NODE_TYPES.JSXOpeningElement]: ts.JsxOpeningElement | ts.JsxSelfClosingElement; - [AST_NODE_TYPES.JSXOpeningFragment]: ts.JsxOpeningFragment; - [AST_NODE_TYPES.JSXSpreadAttribute]: ts.JsxSpreadAttribute; - [AST_NODE_TYPES.JSXSpreadChild]: ts.JsxExpression; - [AST_NODE_TYPES.JSXMemberExpression]: ts.PropertyAccessExpression; - [AST_NODE_TYPES.JSXText]: ts.JsxText; - [AST_NODE_TYPES.LabeledStatement]: ts.LabeledStatement; - [AST_NODE_TYPES.Literal]: ts.StringLiteral | ts.NumericLiteral | ts.RegularExpressionLiteral | ts.JsxText | ts.NullLiteral | ts.BooleanLiteral | ts.BigIntLiteral; - [AST_NODE_TYPES.LogicalExpression]: ts.BinaryExpression; - [AST_NODE_TYPES.MemberExpression]: ts.PropertyAccessExpression | ts.ElementAccessExpression; - [AST_NODE_TYPES.MetaProperty]: ts.MetaProperty; - [AST_NODE_TYPES.MethodDefinition]: ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration | ts.ConstructorDeclaration; - [AST_NODE_TYPES.NewExpression]: ts.NewExpression; - [AST_NODE_TYPES.ObjectExpression]: ts.ObjectLiteralExpression; - [AST_NODE_TYPES.ObjectPattern]: ts.ObjectLiteralExpression | ts.ObjectBindingPattern; - [AST_NODE_TYPES.Program]: ts.SourceFile; - [AST_NODE_TYPES.Property]: ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration | ts.BindingElement; - [AST_NODE_TYPES.RestElement]: ts.BindingElement | ts.SpreadAssignment | ts.SpreadElement | ts.ParameterDeclaration; - [AST_NODE_TYPES.ReturnStatement]: ts.ReturnStatement; - [AST_NODE_TYPES.SequenceExpression]: ts.BinaryExpression; - [AST_NODE_TYPES.SpreadElement]: ts.SpreadElement | ts.SpreadAssignment; - [AST_NODE_TYPES.Super]: ts.SuperExpression; - [AST_NODE_TYPES.SwitchCase]: ts.CaseClause | ts.DefaultClause; - [AST_NODE_TYPES.SwitchStatement]: ts.SwitchStatement; - [AST_NODE_TYPES.TaggedTemplateExpression]: ts.TaggedTemplateExpression; - [AST_NODE_TYPES.TemplateElement]: ts.NoSubstitutionTemplateLiteral | ts.TemplateHead | ts.TemplateMiddle | ts.TemplateTail; - [AST_NODE_TYPES.TemplateLiteral]: ts.NoSubstitutionTemplateLiteral | ts.TemplateExpression; - [AST_NODE_TYPES.ThisExpression]: ts.ThisExpression | ts.KeywordTypeNode; - [AST_NODE_TYPES.ThrowStatement]: ts.ThrowStatement; - [AST_NODE_TYPES.TryStatement]: ts.TryStatement; - [AST_NODE_TYPES.TSAbstractClassProperty]: ts.PropertyDeclaration; - [AST_NODE_TYPES.TSAbstractMethodDefinition]: ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration | ts.ConstructorDeclaration; - [AST_NODE_TYPES.TSArrayType]: ts.ArrayTypeNode; - [AST_NODE_TYPES.TSAsExpression]: ts.AsExpression; - [AST_NODE_TYPES.TSCallSignatureDeclaration]: ts.PropertySignature; - [AST_NODE_TYPES.TSClassImplements]: ts.ExpressionWithTypeArguments; - [AST_NODE_TYPES.TSConditionalType]: ts.ConditionalTypeNode; - [AST_NODE_TYPES.TSConstructorType]: ts.ConstructorTypeNode; - [AST_NODE_TYPES.TSConstructSignatureDeclaration]: ts.ConstructorTypeNode | ts.FunctionTypeNode | ts.ConstructSignatureDeclaration | ts.CallSignatureDeclaration; - [AST_NODE_TYPES.TSDeclareFunction]: ts.FunctionDeclaration; - [AST_NODE_TYPES.TSEnumDeclaration]: ts.EnumDeclaration; - [AST_NODE_TYPES.TSEnumMember]: ts.EnumMember; - [AST_NODE_TYPES.TSExportAssignment]: ts.ExportAssignment; - [AST_NODE_TYPES.TSExternalModuleReference]: ts.ExternalModuleReference; - [AST_NODE_TYPES.TSFunctionType]: ts.FunctionTypeNode; - [AST_NODE_TYPES.TSImportEqualsDeclaration]: ts.ImportEqualsDeclaration; - [AST_NODE_TYPES.TSImportType]: ts.ImportTypeNode; - [AST_NODE_TYPES.TSIndexedAccessType]: ts.IndexedAccessTypeNode; - [AST_NODE_TYPES.TSIndexSignature]: ts.IndexSignatureDeclaration; - [AST_NODE_TYPES.TSInferType]: ts.InferTypeNode; - [AST_NODE_TYPES.TSInterfaceDeclaration]: ts.InterfaceDeclaration; - [AST_NODE_TYPES.TSInterfaceBody]: ts.InterfaceDeclaration; - [AST_NODE_TYPES.TSInterfaceHeritage]: ts.ExpressionWithTypeArguments; - [AST_NODE_TYPES.TSIntersectionType]: ts.IntersectionTypeNode; - [AST_NODE_TYPES.TSLiteralType]: ts.LiteralTypeNode; - [AST_NODE_TYPES.TSMappedType]: ts.MappedTypeNode; - [AST_NODE_TYPES.TSMethodSignature]: ts.MethodSignature; - [AST_NODE_TYPES.TSModuleBlock]: ts.ModuleBlock; - [AST_NODE_TYPES.TSModuleDeclaration]: ts.ModuleDeclaration; - [AST_NODE_TYPES.TSNamedTupleMember]: ts.NamedTupleMember; - [AST_NODE_TYPES.TSNamespaceExportDeclaration]: ts.NamespaceExportDeclaration; - [AST_NODE_TYPES.TSNonNullExpression]: ts.NonNullExpression; - [AST_NODE_TYPES.TSOptionalType]: ts.OptionalTypeNode; - [AST_NODE_TYPES.TSParameterProperty]: ts.ParameterDeclaration; - [AST_NODE_TYPES.TSParenthesizedType]: ts.ParenthesizedTypeNode; - [AST_NODE_TYPES.TSPropertySignature]: ts.PropertySignature; - [AST_NODE_TYPES.TSQualifiedName]: ts.QualifiedName; - [AST_NODE_TYPES.TSRestType]: ts.RestTypeNode | ts.NamedTupleMember; - [AST_NODE_TYPES.TSThisType]: ts.ThisTypeNode; - [AST_NODE_TYPES.TSTupleType]: ts.TupleTypeNode; - [AST_NODE_TYPES.TSTypeAliasDeclaration]: ts.TypeAliasDeclaration; - [AST_NODE_TYPES.TSTypeAnnotation]: undefined; - [AST_NODE_TYPES.TSTypeAssertion]: ts.TypeAssertion; - [AST_NODE_TYPES.TSTypeLiteral]: ts.TypeLiteralNode; - [AST_NODE_TYPES.TSTypeOperator]: ts.TypeOperatorNode; - [AST_NODE_TYPES.TSTypeParameter]: ts.TypeParameterDeclaration; - [AST_NODE_TYPES.TSTypeParameterDeclaration]: undefined; - [AST_NODE_TYPES.TSTypeParameterInstantiation]: ts.TaggedTemplateExpression | ts.ImportTypeNode | ts.ExpressionWithTypeArguments | ts.TypeReferenceNode | ts.JsxOpeningElement | ts.JsxSelfClosingElement | ts.NewExpression | ts.CallExpression; - [AST_NODE_TYPES.TSTypePredicate]: ts.TypePredicateNode; - [AST_NODE_TYPES.TSTypeQuery]: ts.TypeQueryNode; - [AST_NODE_TYPES.TSTypeReference]: ts.TypeReferenceNode; - [AST_NODE_TYPES.TSUnionType]: ts.UnionTypeNode; - [AST_NODE_TYPES.UpdateExpression]: ts.PrefixUnaryExpression | ts.PostfixUnaryExpression; - [AST_NODE_TYPES.UnaryExpression]: ts.PrefixUnaryExpression | ts.PostfixUnaryExpression | ts.DeleteExpression | ts.VoidExpression | ts.TypeOfExpression; - [AST_NODE_TYPES.VariableDeclaration]: ts.VariableDeclarationList | ts.VariableStatement; - [AST_NODE_TYPES.VariableDeclarator]: ts.VariableDeclaration; - [AST_NODE_TYPES.WhileStatement]: ts.WhileStatement; - [AST_NODE_TYPES.WithStatement]: ts.WithStatement; - [AST_NODE_TYPES.YieldExpression]: ts.YieldExpression; - [AST_NODE_TYPES.TSEmptyBodyFunctionExpression]: ts.FunctionExpression | ts.ConstructorDeclaration | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.MethodDeclaration; - [AST_NODE_TYPES.TSAbstractKeyword]: ts.Token; - [AST_NODE_TYPES.TSNullKeyword]: ts.NullLiteral | ts.KeywordTypeNode; - [AST_NODE_TYPES.TSAnyKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSBigIntKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSBooleanKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSNeverKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSNumberKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSObjectKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSStringKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSSymbolKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSUnknownKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSVoidKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSUndefinedKeyword]: ts.KeywordTypeNode; - [AST_NODE_TYPES.TSAsyncKeyword]: ts.Token; - [AST_NODE_TYPES.TSDeclareKeyword]: ts.Token; - [AST_NODE_TYPES.TSExportKeyword]: ts.Token; - [AST_NODE_TYPES.TSStaticKeyword]: ts.Token; - [AST_NODE_TYPES.TSPublicKeyword]: ts.Token; - [AST_NODE_TYPES.TSPrivateKeyword]: ts.Token; - [AST_NODE_TYPES.TSProtectedKeyword]: ts.Token; - [AST_NODE_TYPES.TSReadonlyKeyword]: ts.Token; -} -/** - * Maps TSESTree AST Node type to the expected TypeScript AST Node type(s). - * This mapping is based on the internal logic of the parser. - */ -export declare type TSESTreeToTSNode = Extract, EstreeToTsNodeTypes[T['type']]>; -//# sourceMappingURL=estree-to-ts-node-types.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map deleted file mode 100644 index 8704471b..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"estree-to-ts-node-types.d.ts","sourceRoot":"","sources":["../../src/ts-estree/estree-to-ts-node-types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js deleted file mode 100644 index 1a133cdb..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js +++ /dev/null @@ -1,4 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const types_1 = require("@typescript-eslint/types"); -//# sourceMappingURL=estree-to-ts-node-types.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map deleted file mode 100644 index b48e0fd3..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"estree-to-ts-node-types.js","sourceRoot":"","sources":["../../src/ts-estree/estree-to-ts-node-types.ts"],"names":[],"mappings":";;AAAA,oDAAoE"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts deleted file mode 100644 index 37f26a39..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { AST_NODE_TYPES, AST_TOKEN_TYPES, TSESTree, } from '@typescript-eslint/types'; -export * from './ts-nodes'; -export * from './estree-to-ts-node-types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map deleted file mode 100644 index 6a839dc6..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ts-estree/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,eAAe,EACf,QAAQ,GACT,MAAM,0BAA0B,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js deleted file mode 100644 index 7f938027..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TSESTree = exports.AST_TOKEN_TYPES = exports.AST_NODE_TYPES = void 0; -// for simplicity and backwards-compatibility -var types_1 = require("@typescript-eslint/types"); -Object.defineProperty(exports, "AST_NODE_TYPES", { enumerable: true, get: function () { return types_1.AST_NODE_TYPES; } }); -Object.defineProperty(exports, "AST_TOKEN_TYPES", { enumerable: true, get: function () { return types_1.AST_TOKEN_TYPES; } }); -Object.defineProperty(exports, "TSESTree", { enumerable: true, get: function () { return types_1.TSESTree; } }); -__exportStar(require("./ts-nodes"), exports); -__exportStar(require("./estree-to-ts-node-types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map deleted file mode 100644 index 5325d5dc..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ts-estree/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAA6C;AAC7C,kDAIkC;AAHhC,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AACf,iGAAA,QAAQ,OAAA;AAEV,6CAA2B;AAC3B,4DAA0C"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts deleted file mode 100644 index 8142fc45..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as ts from 'typescript'; -declare module 'typescript' { - interface NamedTupleMember extends ts.Node { - } -} -export declare type TSToken = ts.Token; -export declare type TSNode = ts.Modifier | ts.Identifier | ts.QualifiedName | ts.ComputedPropertyName | ts.Decorator | ts.TypeParameterDeclaration | ts.CallSignatureDeclaration | ts.ConstructSignatureDeclaration | ts.VariableDeclaration | ts.VariableDeclarationList | ts.ParameterDeclaration | ts.BindingElement | ts.PropertySignature | ts.PropertyDeclaration | ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.SpreadAssignment | ts.ObjectBindingPattern | ts.ArrayBindingPattern | ts.FunctionDeclaration | ts.MethodSignature | ts.MethodDeclaration | ts.ConstructorDeclaration | ts.SemicolonClassElement | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.IndexSignatureDeclaration | ts.KeywordTypeNode | ts.ImportTypeNode | ts.ThisTypeNode | ts.ConstructorTypeNode | ts.FunctionTypeNode | ts.TypeReferenceNode | ts.TypePredicateNode | ts.TypeQueryNode | ts.TypeLiteralNode | ts.ArrayTypeNode | ts.NamedTupleMember | ts.TupleTypeNode | ts.OptionalTypeNode | ts.RestTypeNode | ts.UnionTypeNode | ts.IntersectionTypeNode | ts.ConditionalTypeNode | ts.InferTypeNode | ts.ParenthesizedTypeNode | ts.TypeOperatorNode | ts.IndexedAccessTypeNode | ts.MappedTypeNode | ts.LiteralTypeNode | ts.StringLiteral | ts.OmittedExpression | ts.PartiallyEmittedExpression | ts.PrefixUnaryExpression | ts.PostfixUnaryExpression | ts.NullLiteral | ts.BooleanLiteral | ts.ThisExpression | ts.SuperExpression | ts.ImportExpression | ts.DeleteExpression | ts.TypeOfExpression | ts.VoidExpression | ts.AwaitExpression | ts.YieldExpression | ts.SyntheticExpression | ts.BinaryExpression | ts.ConditionalExpression | ts.FunctionExpression | ts.ArrowFunction | ts.RegularExpressionLiteral | ts.NoSubstitutionTemplateLiteral | ts.NumericLiteral | ts.BigIntLiteral | ts.TemplateHead | ts.TemplateMiddle | ts.TemplateTail | ts.TemplateExpression | ts.TemplateSpan | ts.ParenthesizedExpression | ts.ArrayLiteralExpression | ts.SpreadElement | ts.ObjectLiteralExpression | ts.PropertyAccessExpression | ts.ElementAccessExpression | ts.CallExpression | ts.ExpressionWithTypeArguments | ts.NewExpression | ts.TaggedTemplateExpression | ts.AsExpression | ts.TypeAssertion | ts.NonNullExpression | ts.MetaProperty | ts.JsxElement | ts.JsxOpeningElement | ts.JsxSelfClosingElement | ts.JsxFragment | ts.JsxOpeningFragment | ts.JsxClosingFragment | ts.JsxAttribute | ts.JsxSpreadAttribute | ts.JsxClosingElement | ts.JsxExpression | ts.JsxText | ts.NotEmittedStatement | ts.CommaListExpression | ts.EmptyStatement | ts.DebuggerStatement | ts.MissingDeclaration | ts.Block | ts.VariableStatement | ts.ExpressionStatement | ts.IfStatement | ts.DoStatement | ts.WhileStatement | ts.ForStatement | ts.ForInStatement | ts.ForOfStatement | ts.BreakStatement | ts.ContinueStatement | ts.ReturnStatement | ts.WithStatement | ts.SwitchStatement | ts.CaseBlock | ts.CaseClause | ts.DefaultClause | ts.LabeledStatement | ts.ThrowStatement | ts.TryStatement | ts.CatchClause | ts.ClassDeclaration | ts.ClassExpression | ts.InterfaceDeclaration | ts.HeritageClause | ts.TypeAliasDeclaration | ts.EnumMember | ts.EnumDeclaration | ts.ModuleDeclaration | ts.ModuleBlock | ts.ImportEqualsDeclaration | ts.ExternalModuleReference | ts.ImportDeclaration | ts.ImportClause | ts.NamespaceImport | ts.NamespaceExportDeclaration | ts.ExportDeclaration | ts.NamedImports | ts.NamedExports | ts.ImportSpecifier | ts.ExportSpecifier | ts.ExportAssignment | ts.SourceFile | ts.Bundle | ts.InputFiles | ts.UnparsedSource | ts.JsonMinusNumericLiteral | ts.JSDoc | ts.JSDocTypeExpression | ts.JSDocUnknownTag | ts.JSDocAugmentsTag | ts.JSDocClassTag | ts.JSDocEnumTag | ts.JSDocThisTag | ts.JSDocTemplateTag | ts.JSDocReturnTag | ts.JSDocTypeTag | ts.JSDocTypedefTag | ts.JSDocCallbackTag | ts.JSDocSignature | ts.JSDocPropertyTag | ts.JSDocParameterTag | ts.JSDocTypeLiteral | ts.JSDocFunctionType | ts.JSDocAllType | ts.JSDocUnknownType | ts.JSDocNullableType | ts.JSDocNonNullableType | ts.JSDocOptionalType | ts.JSDocVariadicType | ts.JSDocAuthorTag; -//# sourceMappingURL=ts-nodes.d.ts.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map deleted file mode 100644 index aacaf819..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ts-nodes.d.ts","sourceRoot":"","sources":["../../src/ts-estree/ts-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAKjC,OAAO,QAAQ,YAAY,CAAC;IAE1B,UAAiB,gBAAiB,SAAQ,EAAE,CAAC,IAAI;KAAG;CACrD;AAED,oBAAY,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAE9C,oBAAY,MAAM,GACd,EAAE,CAAC,QAAQ,GACX,EAAE,CAAC,UAAU,GACb,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,SAAS,GACZ,EAAE,CAAC,wBAAwB,GAE3B,EAAE,CAAC,wBAAwB,GAC3B,EAAE,CAAC,6BAA6B,GAChC,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,uBAAuB,GAC1B,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,2BAA2B,GAC9B,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,sBAAsB,GACzB,EAAE,CAAC,qBAAqB,GACxB,EAAE,CAAC,sBAAsB,GACzB,EAAE,CAAC,sBAAsB,GACzB,EAAE,CAAC,yBAAyB,GAC5B,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,YAAY,GAEf,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,qBAAqB,GACxB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,qBAAqB,GACxB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,0BAA0B,GAC7B,EAAE,CAAC,qBAAqB,GACxB,EAAE,CAAC,sBAAsB,GACzB,EAAE,CAAC,WAAW,GACd,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,qBAAqB,GACxB,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,wBAAwB,GAC3B,EAAE,CAAC,6BAA6B,GAChC,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,uBAAuB,GAC1B,EAAE,CAAC,sBAAsB,GACzB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,uBAAuB,GAC1B,EAAE,CAAC,wBAAwB,GAC3B,EAAE,CAAC,uBAAuB,GAC1B,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,2BAA2B,GAC9B,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,wBAAwB,GAC3B,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,UAAU,GACb,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,qBAAqB,GACxB,EAAE,CAAC,WAAW,GACd,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,OAAO,GACV,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,kBAAkB,GACrB,EAAE,CAAC,KAAK,GACR,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,WAAW,GACd,EAAE,CAAC,WAAW,GACd,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,SAAS,GACZ,EAAE,CAAC,UAAU,GACb,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,WAAW,GAEd,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,UAAU,GACb,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,WAAW,GACd,EAAE,CAAC,uBAAuB,GAC1B,EAAE,CAAC,uBAAuB,GAC1B,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,0BAA0B,GAC7B,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,UAAU,GACb,EAAE,CAAC,MAAM,GACT,EAAE,CAAC,UAAU,GACb,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,uBAAuB,GAG1B,EAAE,CAAC,KAAK,GACR,EAAE,CAAC,mBAAmB,GACtB,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,aAAa,GAChB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,eAAe,GAClB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,cAAc,GACjB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,oBAAoB,GACvB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,cAAc,CAAC"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js deleted file mode 100644 index ba99b5f1..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=ts-nodes.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js.map b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js.map deleted file mode 100644 index a4fa02c4..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ts-nodes.js","sourceRoot":"","sources":["../../src/ts-estree/ts-nodes.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver deleted file mode 120000 index 501bb2f5..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/node_modules/.bin/semver +++ /dev/null @@ -1 +0,0 @@ -../../../../semver/bin/semver.js \ No newline at end of file diff --git a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/package.json b/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/package.json deleted file mode 100644 index 878ff3c9..00000000 --- a/node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree/package.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "name": "@typescript-eslint/typescript-estree", - "version": "4.1.0", - "description": "A parser that converts TypeScript source code into an ESTree compatible form", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "files": [ - "dist", - "README.md", - "LICENSE" - ], - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "repository": { - "type": "git", - "url": "https://github.com/typescript-eslint/typescript-eslint.git", - "directory": "packages/typescript-estree" - }, - "bugs": { - "url": "https://github.com/typescript-eslint/typescript-eslint/issues" - }, - "license": "BSD-2-Clause", - "keywords": [ - "ast", - "estree", - "ecmascript", - "javascript", - "typescript", - "parser", - "syntax" - ], - "scripts": { - "build": "tsc -b tsconfig.build.json", - "postbuild": "downlevel-dts dist _ts3.4/dist", - "clean": "tsc -b tsconfig.build.json --clean", - "postclean": "rimraf dist", - "format": "prettier --write \"./**/*.{ts,js,json,md}\" --ignore-path ../../.prettierignore", - "lint": "eslint . --ext .js,.ts --ignore-path='../../.eslintignore'", - "test": "jest --coverage", - "typecheck": "tsc -p tsconfig.json --noEmit" - }, - "dependencies": { - "@typescript-eslint/types": "4.1.0", - "@typescript-eslint/visitor-keys": "4.1.0", - "debug": "^4.1.1", - "globby": "^11.0.1", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "devDependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.11.3", - "@babel/types": "^7.11.0", - "@types/babel__code-frame": "^7.0.1", - "@types/debug": "*", - "@types/glob": "*", - "@types/is-glob": "^4.0.1", - "@types/lodash": "*", - "@types/semver": "^7.1.0", - "@types/tmp": "^0.2.0", - "@typescript-eslint/shared-fixtures": "4.1.0", - "glob": "*", - "jest-specific-snapshot": "*", - "make-dir": "*", - "tmp": "^0.2.1", - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "typesVersions": { - "<3.8": { - "*": [ - "_ts3.4/*" - ] - } - }, - "gitHead": "00a24706222254774121ee62038e67d0efa993e7" -} diff --git a/node_modules/eslint-plugin-jest/package.json b/node_modules/eslint-plugin-jest/package.json index 83d02ac3..91d4cb08 100644 --- a/node_modules/eslint-plugin-jest/package.json +++ b/node_modules/eslint-plugin-jest/package.json @@ -1,6 +1,6 @@ { "name": "eslint-plugin-jest", - "version": "24.0.2", + "version": "24.1.0", "description": "Eslint rules for Jest", "keywords": [ "eslint", diff --git a/node_modules/eslint-plugin-jsdoc/CONTRIBUTING.md b/node_modules/eslint-plugin-jsdoc/CONTRIBUTING.md deleted file mode 100644 index 7de573c4..00000000 --- a/node_modules/eslint-plugin-jsdoc/CONTRIBUTING.md +++ /dev/null @@ -1,86 +0,0 @@ -# CONTRIBUTING to eslint-plugin-jsdoc - -## Testing changes locally - -You might try a TDD approach and add tests within the `test` directory, -to try different configs, you may find it easier to try out changes in -a separate local directory. - -You can run [`npm link`](https://docs.npmjs.com/cli/link) for this purpose, -pointing from your project to this project. For example, while in your project -root and with `eslint-plugin-jsdoc` as a sibling, run: - -```shell -npm link ../eslint-plugin-jsdoc -``` - -## Building the project - -After running `npm install` to get the latest dependencies and devDependencies, -you can run the following command to update the `dist` files, with `dist/index.js` -being the `main` entrance point from `package.json`: - -```shell -npm run build -``` - -## Coding standards - -The project follows ESLint rules from [`canonical`](https://www.npmjs.com/package/eslint-config-canonical) -and testing follows its subconfig, `canonical/mocha`. - -## Testing - -Tests are expected. Each rule file should be in CamelCase (despite the rule names themselves being hyphenated) and should be added within `test/assertions` and then imported/required by -`test/rules/index.js`. - -Each rule file should be an ESM default export of an object which has `valid` and `invalid` array properties containing the tests. Tests of each type should be provided. - -`parserOptions` will be `ecmaVersion: 6` by default, but tests can override `parserOptions` -with their own. - -See ESLint's [RuleTester](https://eslint.org/docs/developer-guide/nodejs-api#ruletester) -for more on the allowable properties (e.g., `code`, `errors` (for invalid rules), -`options`, `settings`, etc.). - -Note that besides `npm test`, there is `npm run test-cov` which shows more -detailed information on coverage. Coverage should be maintained at 100%, and -if there are a few guards in place for future use, the code block in question -can be ignored by being preceded by `/* istanbul ignore next */` (including -for warnings where the block is never passed over (i.e., the block is always -entered)). If you want to test without coverage at all, you can use -`npm run test-no-cov`. To only test rules rather than other files, you -can use `npm run test-index`. - -To test specific rules, you can supply a comma-separated list with the `--rule` -flag passed to `test-index`, e.g., for `check-examples` and `require-example`: - -`npm run --rule=check-examples,require-example test-index`. - -You can further limit this by providing `--invalid` and/or `--valid` flags -with a comma-separated list of 0-based indexes that you wish to include (also -accepts negative offsets from the end, e.g., `-1` for the last item). For -example, to check the first and third invalid tests of `check-examples` -alon with the second valid test, you can run: - -`npm run --rule=check-examples --invalid=0,2 --valid=1 test-index`. - -## Requirements for PRs - -PRs should be mergeable, [rebasing](https://git-scm.com/book/en/v2/Git-Branching-Rebasing) -first against the latest `master`. - -The number of commits will ideally be limited in number, unless extra commits -can better show a progression of features. - -Commit messages should be worded clearly and the reason for any PR made clear -by linking to an issue or giving a full description of what it achieves. - -## Merging - -We use [semantic-release](https://github.com/semantic-release/semantic-release) -for preparing releases, so the commit messages (or at least the merge that -brings them into `master`) must follow the -[AngularJS commit guidelines](https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commit-guidelines) with a special format such as `feat: describe new feature` -in order for the releasing to occur and for the described items to be added -to the release notes. diff --git a/node_modules/eslint-plugin-jsdoc/LICENSE b/node_modules/eslint-plugin-jsdoc/LICENSE deleted file mode 100644 index 6c41d45c..00000000 --- a/node_modules/eslint-plugin-jsdoc/LICENSE +++ /dev/null @@ -1,24 +0,0 @@ -Copyright (c) 2018, Gajus Kuizinas (http://gajus.com/) -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the Gajus Kuizinas (http://gajus.com/) nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL ANUARY BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/node_modules/eslint-plugin-jsdoc/README.md b/node_modules/eslint-plugin-jsdoc/README.md deleted file mode 100644 index 7442d070..00000000 --- a/node_modules/eslint-plugin-jsdoc/README.md +++ /dev/null @@ -1,11240 +0,0 @@ - -# eslint-plugin-jsdoc - -[![GitSpo Mentions](https://gitspo.com/badges/mentions/gajus/eslint-plugin-jsdoc?style=flat-square)](https://gitspo.com/mentions/gajus/eslint-plugin-jsdoc) -[![NPM version](http://img.shields.io/npm/v/eslint-plugin-jsdoc.svg?style=flat-square)](https://www.npmjs.org/package/eslint-plugin-jsdoc) -[![Travis build status](http://img.shields.io/travis/gajus/eslint-plugin-jsdoc/master.svg?style=flat-square)](https://travis-ci.org/gajus/eslint-plugin-jsdoc) -[![js-canonical-style](https://img.shields.io/badge/code%20style-canonical-blue.svg?style=flat-square)](https://github.com/gajus/canonical) - -JSDoc linting rules for ESLint. - -* [eslint-plugin-jsdoc](#eslint-plugin-jsdoc) - * [Installation](#eslint-plugin-jsdoc-installation) - * [Configuration](#eslint-plugin-jsdoc-configuration) - * [Options](#eslint-plugin-jsdoc-options) - * [Settings](#eslint-plugin-jsdoc-settings) - * [Allow `@private` to disable rules for that comment block](#eslint-plugin-jsdoc-settings-allow-private-to-disable-rules-for-that-comment-block) - * [`maxLines` and `minLines`](#eslint-plugin-jsdoc-settings-maxlines-and-minlines) - * [Mode](#eslint-plugin-jsdoc-settings-mode) - * [Alias Preference](#eslint-plugin-jsdoc-settings-alias-preference) - * [`@override`/`@augments`/`@extends`/`@implements` Without Accompanying `@param`/`@description`/`@example`/`@returns`](#eslint-plugin-jsdoc-settings-override-augments-extends-implements-without-accompanying-param-description-example-returns) - * [Settings to Configure `check-types` and `no-undefined-types`](#eslint-plugin-jsdoc-settings-settings-to-configure-check-types-and-no-undefined-types) - * [Rules](#eslint-plugin-jsdoc-rules) - * [`check-access`](#eslint-plugin-jsdoc-rules-check-access) - * [`check-alignment`](#eslint-plugin-jsdoc-rules-check-alignment) - * [`check-examples`](#eslint-plugin-jsdoc-rules-check-examples) - * [`check-indentation`](#eslint-plugin-jsdoc-rules-check-indentation) - * [`check-param-names`](#eslint-plugin-jsdoc-rules-check-param-names) - * [`check-property-names`](#eslint-plugin-jsdoc-rules-check-property-names) - * [`check-syntax`](#eslint-plugin-jsdoc-rules-check-syntax) - * [`check-tag-names`](#eslint-plugin-jsdoc-rules-check-tag-names) - * [`check-types`](#eslint-plugin-jsdoc-rules-check-types) - * [`check-values`](#eslint-plugin-jsdoc-rules-check-values) - * [`empty-tags`](#eslint-plugin-jsdoc-rules-empty-tags) - * [`implements-on-classes`](#eslint-plugin-jsdoc-rules-implements-on-classes) - * [`match-description`](#eslint-plugin-jsdoc-rules-match-description) - * [`newline-after-description`](#eslint-plugin-jsdoc-rules-newline-after-description) - * [`no-types`](#eslint-plugin-jsdoc-rules-no-types) - * [`no-undefined-types`](#eslint-plugin-jsdoc-rules-no-undefined-types) - * [`require-description-complete-sentence`](#eslint-plugin-jsdoc-rules-require-description-complete-sentence) - * [`require-description`](#eslint-plugin-jsdoc-rules-require-description) - * [`require-example`](#eslint-plugin-jsdoc-rules-require-example) - * [`require-file-overview`](#eslint-plugin-jsdoc-rules-require-file-overview) - * [`require-hyphen-before-param-description`](#eslint-plugin-jsdoc-rules-require-hyphen-before-param-description) - * [`require-jsdoc`](#eslint-plugin-jsdoc-rules-require-jsdoc) - * [`require-param-description`](#eslint-plugin-jsdoc-rules-require-param-description) - * [`require-param-name`](#eslint-plugin-jsdoc-rules-require-param-name) - * [`require-param-type`](#eslint-plugin-jsdoc-rules-require-param-type) - * [`require-param`](#eslint-plugin-jsdoc-rules-require-param) - * [`require-property`](#eslint-plugin-jsdoc-rules-require-property) - * [`require-property-description`](#eslint-plugin-jsdoc-rules-require-property-description) - * [`require-property-name`](#eslint-plugin-jsdoc-rules-require-property-name) - * [`require-property-type`](#eslint-plugin-jsdoc-rules-require-property-type) - * [`require-returns-check`](#eslint-plugin-jsdoc-rules-require-returns-check) - * [`require-returns-description`](#eslint-plugin-jsdoc-rules-require-returns-description) - * [`require-returns-type`](#eslint-plugin-jsdoc-rules-require-returns-type) - * [`require-returns`](#eslint-plugin-jsdoc-rules-require-returns) - * [`valid-types`](#eslint-plugin-jsdoc-rules-valid-types) - - - -## Installation - -Install [ESLint](https://www.github.com/eslint/eslint) either locally or globally. - -```sh -npm install --save-dev eslint -``` - -If you have installed `ESLint` globally, you have to install JSDoc plugin globally too. Otherwise, install it locally. - -```sh -npm install --save-dev eslint-plugin-jsdoc -``` - - -## Configuration - -Add `plugins` section and specify `eslint-plugin-jsdoc` as a plugin. - -```json -{ - "plugins": [ - "jsdoc" - ] -} -``` - -Finally, enable all of the rules that you would like to use. - -```javascript -{ - "rules": { - "jsdoc/check-alignment": 1, // Recommended - "jsdoc/check-examples": 1, - "jsdoc/check-indentation": 1, - "jsdoc/check-param-names": 1, // Recommended - "jsdoc/check-syntax": 1, - "jsdoc/check-tag-names": 1, // Recommended - "jsdoc/check-types": 1, // Recommended - "jsdoc/implements-on-classes": 1, // Recommended - "jsdoc/match-description": 1, - "jsdoc/newline-after-description": 1, // Recommended - "jsdoc/no-types": 1, - "jsdoc/no-undefined-types": 1, // Recommended - "jsdoc/require-description": 1, - "jsdoc/require-description-complete-sentence": 1, - "jsdoc/require-example": 1, - "jsdoc/require-hyphen-before-param-description": 1, - "jsdoc/require-jsdoc": 1, // Recommended - "jsdoc/require-param": 1, // Recommended - "jsdoc/require-param-description": 1, // Recommended - "jsdoc/require-param-name": 1, // Recommended - "jsdoc/require-param-type": 1, // Recommended - "jsdoc/require-returns": 1, // Recommended - "jsdoc/require-returns-check": 1, // Recommended - "jsdoc/require-returns-description": 1, // Recommended - "jsdoc/require-returns-type": 1, // Recommended - "jsdoc/valid-types": 1 // Recommended - } -} -``` - -Or you can simply use the following which enables the rules commented -above as "recommended": - -```json -{ - "extends": ["plugin:jsdoc/recommended"] -} -``` - -You can then selectively add to or override the recommended rules. - - -## Options - -Rules may, as per the [ESLint user guide](https://eslint.org/docs/user-guide/configuring), have their own individual options. In `eslint-plugin-jsdoc`, a few options, -such as, `exemptedBy` and `contexts`, may be used across different rules. - -`eslint-plugin-jsdoc` options, if present, are in the form of an object -supplied as the second argument in an array after the error level. - -```js -// `.eslintrc.js` -{ - rules: { - 'jsdoc/require-example': [ - // The Error level should be `error`, `warn`, or `off` (or 2, 1, or 0) - 'error', - // The options vary by rule, but are added to an options object: - { - avoidExampleOnConstructors: true, - exemptedBy: ['type'] - } - ] - } -} -``` - - -## Settings - - -### Allow @private to disable rules for that comment block - -- `settings.jsdoc.ignorePrivate` - Disables all rules for the comment block - on which a `@private` tag (or `@access private`) occurs. Defaults to - `false`. Note: This has no effect with the rule `check-access` (whose - purpose is to check access modifiers). - - -### maxLines and minLines - -One can use `minLines` and `maxLines` to indicate how many line breaks -(if any) will be checked to find a jsdoc comment block before the given -code block. These settings default to `0` and `1` respectively. - -In conjunction with the `require-jsdoc` rule, these settings can -be enforced so as to report problems if a jsdoc block is not found within -the specified boundaries. The settings are also used in the fixer to determine -how many line breaks to add when a block is missing. - - -### Mode - -- `settings.jsdoc.mode` - Set to `jsdoc` (the default), `typescript`, or `closure`. - Currently is used for the following: - - Determine valid tags for `check-tag-names` - - Only check `@template` in `no-undefined-types` for types in "closure" and - "typescript" modes - - For type-checking rules, determine which tags will be checked for types - (Closure allows types on some tags which the others do not, - so these tags will additionally be checked in "closure" mode) - - Check preferred tag names - - -### Alias Preference - -Use `settings.jsdoc.tagNamePreference` to configure a preferred alias name for a JSDoc tag. The format of the configuration is: `: `, e.g. - -```json -{ - "rules": {}, - "settings": { - "jsdoc": { - "tagNamePreference": { - "param": "arg", - "returns": "return" - } - } - } -} -``` - -One may also use an object with a `message` and `replacement`. - -The following will report the message `@extends is to be used over @augments as it is more evocative of classes than @augments` upon encountering `@augments`. - -```json -{ - "rules": {}, - "settings": { - "jsdoc": { - "tagNamePreference": { - "augments": { - "message": "@extends is to be used over @augments as it is more evocative of classes than @augments", - "replacement": "extends" - } - } - } - } -} -``` - -If one wishes to reject a normally valid tag, e.g., `@todo`, one may set the tag to `false`: - -```json -{ - "rules": {}, - "settings": { - "jsdoc": { - "tagNamePreference": { - "todo": false - } - } - } -} -``` - -A project wishing to ensure no blocks are left excluded from entering the -documentation, might wish to prevent the `@ignore` tag in the above manner. - -Or one may set the targeted tag to an object with a custom `message`, but without a `replacement` property: - -```json -{ - "rules": {}, - "settings": { - "jsdoc": { - "tagNamePreference": { - "todo": { - "message": "We expect immediate perfection, so don't leave to-dos in your code." - } - } - } - } -} -``` - -Note that the preferred tags indicated in the `settings.jsdoc.tagNamePreference` -map will be assumed to be defined by `check-tag-names`. - - -#### Default Preferred Aliases - -The defaults in `eslint-plugin-jsdoc` (for tags which offer -aliases) are as follows: - -- `@abstract` (over `@virtual`) -- `@augments` (over `@extends`) -- `@class` (over `@constructor`) -- `@constant` (over `@const`) -- `@default` (over `@defaultvalue`) -- `@description` (over `@desc`) -- `@external` (over `@host`) -- `@file` (over `@fileoverview`, `@overview`) -- `@fires` (over `@emits`) -- `@function` (over `@func`, `@method`) -- `@member` (over `@var`) -- `@param` (over `@arg`, `@argument`) -- `@property` (over `@prop`) -- `@returns` (over `@return`) -- `@throws` (over `@exception`) -- `@yields` (over `@yield`) - -This setting is utilized by the the rule for tag name checking -(`check-tag-names`) as well as in the `@param` and `@require` rules: - -- `check-param-names` -- `check-tag-names` -- `require-hyphen-before-param-description` -- `require-description` -- `require-param` -- `require-param-description` -- `require-param-name` -- `require-param-type` -- `require-returns` -- `require-returns-check` -- `require-returns-description` -- `require-returns-type` - - -### @override/@augments/@extends/@implements Without Accompanying @param/@description/@example/@returns - -The following settings allows the element(s) they reference to be omitted -on the JSDoc comment block of the function or that of its parent class -for any of the "require" rules (i.e., `require-param`, `require-description`, -`require-example`, or `require-returns`). - -* `settings.jsdoc.overrideReplacesDocs` (`@override`) - Defaults to `true` -* `settings.jsdoc.augmentsExtendsReplacesDocs` (`@augments` or its alias `@extends`) - Defaults to `false`. -* `settings.jsdoc.implementsReplacesDocs` (`@implements`) - Defaults to `false` - -The format of the configuration is as follows: - -```json -{ - "rules": {}, - "settings": { - "jsdoc": { - "overrideReplacesDocs": true, - "augmentsExtendsReplacesDocs": true, - "implementsReplacesDocs": true - } - } -} -``` - - -### Settings to Configure check-types and no-undefined-types - -- `settings.jsdoc.preferredTypes` An option map to indicate preferred - or forbidden types (if default types are indicated here, these will - have precedence over the default recommendations for `check-types`). - The keys of this map are the types to be replaced (or forbidden). - These keys may include: - 1. The "ANY" type, `*` - 1. The pseudo-type `[]` which we use to denote the parent (array) - types used in the syntax `string[]`, `number[]`, etc. - 1. The pseudo-type `.<>` (or `.`) to represent the format `Array.` - or `Object.` - 1. The pseudo-type `<>` to represent the format `Array` or - `Object` - 1. A plain string type, e.g., `MyType` - 1. A plain string type followed by one of the above pseudo-types (except - for `[]` which is always assumed to be an `Array`), e.g., `Array.`, or - `SpecialObject<>`. - - If a bare pseudo-type is used, it will match all parent types of that form. - If a pseudo-type prefixed with a type name is used, it will only match - parent types of that form and type name. - - The values can be: - - `false` to forbid the type - - a string to indicate the type that should be preferred in its place - (and which `fix` mode can replace); this can be one of the formats - of the keys described above. - - Note that the format will not be changed unless you use a pseudo-type - in the replacement. (For example, `'Array.<>': 'MyArray'` will change - `Array.` to `MyArray.`, preserving the dot. To get rid - of the dot, you must use the pseudo-type with `<>`, i.e., - `'Array.<>': 'MyArray<>'`, which will change `Array.` to - `MyArray`). - - If you use a _bare_ pseudo-type in the replacement (e.g., - `'MyArray.<>': '<>'`), the type will be converted to the format - of the pseudo-type without changing the type name. For example, - `MyArray.` will become `MyArray` but `Array.` - will not be modified. - - an object with: - - the key `message` to provide a specific error message - when encountering the discouraged type. - - The message string will have the substrings with special meaning, - `{{tagName}}` and `{{tagValue}}`, replaced with their - corresponding value. - - an optional key `replacement` with either of the following values: - - a string type to be preferred in its place (and which `fix` mode - can replace) - - `false` (for forbidding the type) - -Note that the preferred types indicated as targets in `settings.jsdoc.preferredTypes` -map will be assumed to be defined by `no-undefined-types`. - -See the option of `check-types`, `unifyParentAndChildTypeChecks`, for -how the keys of `preferredTypes` may have `<>` or `.<>` (or just `.`) -appended and its bearing on whether types are checked as parents/children -only (e.g., to match `Array` if the type is `Array` vs. `Array.`). - - -## Rules - - -### check-access - -Checks that `@access` tags use one of the following values: - -- "package", "private", "protected", "public" - -Also reports: - -- Mixing of `@access` with `@public`, `@private`, `@protected`, or `@package` - on the same doc block. -- Use of multiple instances of `@access` (or the `@public`, etc. style tags) - on the same doc block. - -||| -|---|---| -|Context|everywhere| -|Tags|`@access`| -|Settings|| -|Options|| - -The following patterns are considered problems: - -````js -/** - * @access foo - */ -function quux (foo) { - -} -// Message: Missing valid JSDoc @access level. - -/** - * @access foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} -// Message: Missing valid JSDoc @access level. - -/** - * @accessLevel foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"access":"accessLevel"}}} -// Message: Missing valid JSDoc @accessLevel level. - -/** - * @access - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"access":false}}} -// Message: Unexpected tag `@access` - -class MyClass { - /** - * @access - */ - myClassField = 1 -} -// Message: Missing valid JSDoc @access level. - -/** - * @access public - * @public - */ -function quux (foo) { - -} -// Message: The @access tag may not be used with specific access-control tags (@package, @private, @protected, or @public). - -/** - * @access public - * @access private - */ -function quux (foo) { - -} -// Message: At most one access-control tag may be present on a jsdoc block. - -/** - * @access public - * @access private - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} -// Message: At most one access-control tag may be present on a jsdoc block. - -/** - * @public - * @private - */ -function quux (foo) { - -} -// Message: At most one access-control tag may be present on a jsdoc block. - -/** - * @public - * @private - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} -// Message: At most one access-control tag may be present on a jsdoc block. - -/** - * @public - * @public - */ -function quux (foo) { - -} -// Message: At most one access-control tag may be present on a jsdoc block. -```` - -The following patterns are not considered problems: - -````js -/** - * - */ -function quux (foo) { - -} - -/** - * @access public - */ -function quux (foo) { - -} - -/** - * @accessLevel package - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"access":"accessLevel"}}} - -class MyClass { - /** - * @access private - */ - myClassField = 1 -} - -/** - * @public - */ -function quux (foo) { - -} - -/** - * @private - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} -```` - - - -### check-alignment - -Reports invalid alignment of JSDoc block asterisks. - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| - -The following patterns are considered problems: - -````js -/** - * @param {Number} foo - */ -function quux (foo) { - // with spaces -} -// Message: Expected JSDoc block to be aligned. - -/** - * @param {Number} foo - */ -function quux (foo) { - // with tabs -} -// Message: Expected JSDoc block to be aligned. - -/** - * @param {Number} foo - */ -function quux (foo) { - // with spaces -} -// Message: Expected JSDoc block to be aligned. - -/** -* @param {Number} foo -*/ -function quux (foo) { - // with spaces -} -// Message: Expected JSDoc block to be aligned. - -/** - * @param {Number} foo - */ -function quux (foo) { - -} -// Message: Expected JSDoc block to be aligned. - - /** - * @param {Number} foo - */ -function quux (foo) { - -} -// Message: Expected JSDoc block to be aligned. - - /** - * @param {Number} foo - */ -function quux (foo) { - -} -// Message: Expected JSDoc block to be aligned. - -/** - * @param {Number} foo - */ - function quux (foo) { - - } -// Message: Expected JSDoc block to be aligned. - -/** - * A jsdoc not attached to any node. - */ -// Message: Expected JSDoc block to be aligned. - -class Foo { - /** - * Some method - * @param a - */ - quux(a) {} -} -// Message: Expected JSDoc block to be aligned. -```` - -The following patterns are not considered problems: - -````js -/** - * Desc - * - * @param {Number} foo - */ -function quux (foo) { - -} - -/** - * Desc - * - * @param {{ - foo: Bar, - bar: Baz - * }} foo - * - */ -function quux (foo) { - -} - -/* <- JSDoc must start with 2 stars. - * So this is unchecked. - */ -function quux (foo) {} - -/** - * @param {Number} foo - * @private - */ -function quux (foo) { - // with spaces -} -// Settings: {"jsdoc":{"ignorePrivate":true}} - -/** - * @param {Number} foo - * @access private - */ -function quux (foo) { - // with spaces -} -// Settings: {"jsdoc":{"ignorePrivate":true}} -```` - - - -### check-examples - -Ensures that (JavaScript) examples within JSDoc adhere to ESLint rules. - - -#### Options - -The options below all default to no-op/`false` except as noted. - - -##### captionRequired - -JSDoc specs use of an optional `` element at the beginning of -`@example`. - -The option `captionRequired` insists on a `` being present at -the beginning of any `@example`. - - -##### exampleCodeRegex and rejectExampleCodeRegex - -JSDoc does not specify a formal means for delimiting code blocks within -`@example` (it uses generic syntax highlighting techniques for its own -syntax highlighting). The following options determine whether a given -`@example` tag will have the `check-examples` checks applied to it: - -* `exampleCodeRegex` - Regex which whitelists lintable - examples. If a parenthetical group is used, the first one will be used, - so you may wish to use `(?:...)` groups where you do not wish the - first such group treated as one to include. If no parenthetical group - exists or matches, the whole matching expression will be used. - An example might be ````"^```(?:js|javascript)([\\s\\S]*)```\s*$"```` - to only match explicitly fenced JavaScript blocks. Defaults to only - using the `u` flag, so to add your own flags, encapsulate your - expression as a string, but like a literal, e.g., ````/```js.*```/gi````. - Note that specifying a global regular expression (i.e., with `g`) will - allow independent linting of matched blocks within a single `@example`. -* `rejectExampleCodeRegex` - Regex blacklist which rejects - non-lintable examples (has priority over `exampleCodeRegex`). An example - might be ```"^`"``` to avoid linting fenced blocks which may indicate - a non-JavaScript language. See `exampleCodeRegex` on how to add flags - if the default `u` is not sufficient. - -If neither is in use, all examples will be matched. Note also that even if -`captionRequired` is not set, any initial `` will be stripped out -before doing the regex matching. - - -##### paddedIndent - -This integer property allows one to add a fixed amount of whitespace at the -beginning of the second or later lines of the example to be stripped so as -to avoid linting issues with the decorative whitespace. For example, if set -to a value of `4`, the initial whitespace below will not trigger `indent` -rule errors as the extra 4 spaces on each subsequent line will be stripped -out before evaluation. - -```js -/** - * @example - * anArray.filter((a) => { - * return a.b; - * }); - */ -``` - - -##### reportUnusedDisableDirectives - -If not set to `false`, `reportUnusedDisableDirectives` will report disabled -directives which are not used (and thus not needed). Defaults to `true`. -Corresponds to ESLint's [`--report-unused-disable-directives`](https://eslint.org/docs/user-guide/command-line-interface#--report-unused-disable-directives). - -Inline ESLint config within `@example` JavaScript is allowed, though the -disabling of ESLint directives which are not needed by the resolved rules -will be reported as with the ESLint `--report-unused-disable-directives` -command. - - -#### Options for Determining ESLint Rule Applicability (allowInlineConfig, noDefaultExampleRules, matchingFileName, configFile, checkEslintrc, and baseConfig) - -The following options determine which individual ESLint rules will be -applied to the JavaScript found within the `@example` tags (as determined -to be applicable by the above regex options). They are ordered by -decreasing precedence: - -* `allowInlineConfig` - If not set to `false`, will allow - inline config within the `@example` to override other config. Defaults - to `true`. -* `noDefaultExampleRules` - Setting to `true` will disable the - default rules which are expected to be troublesome for most documentation - use. See the section below for the specific default rules. -* `configFile` - A config file. Corresponds to ESLint's [`-c`](https://eslint.org/docs/user-guide/command-line-interface#-c---config). -* `matchingFileName` - Option for a file name (even non-existent) to trigger - specific rules defined in one's config; usable with ESLint `.eslintrc.*` - `overrides` -> `files` globs, to apply a desired subset of rules with - `@example` (besides allowing for rules specific to examples, this option - can be useful for enabling reuse of the same rules within `@example` as - with JavaScript Markdown lintable by - [other plugins](https://github.com/eslint/eslint-plugin-markdown), e.g., - if one sets `matchingFileName` to `dummy.md` so that `@example` rules will - follow one's Markdown rules). -* `checkEslintrc` - Defaults to `true` in adding rules - based on an `.eslintrc.*` file. Setting to `false` corresponds to - ESLint's [`--no-eslintrc`](https://eslint.org/docs/user-guide/command-line-interface#--no-eslintrc). - If `matchingFileName` is set, this will automatically be `true` and - will use the config corresponding to that file. If `matchingFileName` is - not set and this value is set to `false`, the `.eslintrc.*` configs will - not be checked. If `matchingFileName` is not set, and this is unset or - set to `true`, the `.eslintrc.*` configs will be checked as though the file - name were the same as the file containing the example, with any file - extension changed to ".md" (and if there is no file extension, "dummy.md" - will be used). This allows convenient sharing of similar rules with often - also context-free Markdown as well as use of `overrides` as described under - `matchingFileName`. Note that this option (whether set by `matchingFileName` - or set manually to `true`) may come at somewhat of a performance penalty - as the file's existence is checked by eslint. -* `baseConfig` - Set to an object of rules with the same schema - as `.eslintrc.*` for defaults. - - -##### Rules Disabled by Default Unless noDefaultExampleRules is Set to true - -* `eol-last` - Insisting that a newline "always" be at the end is less likely - to be desired in sample code as with the code file convention. -* `no-console` - This rule is unlikely to have inadvertent temporary debugging - within examples. -* `no-multiple-empty-lines` - This rule may be problematic for projects which - use an initial newline just to start an example. Also, projects may wish to - use extra lines within examples just for easier illustration - purposes. -* `no-undef` - Many variables in examples will be `undefined`. -* `no-unused-vars` - It is common to define variables for clarity without always - using them within examples. -* `padded-blocks` - It can generally look nicer to pad a little even if one's - code follows more stringency as far as block padding. -* `import/no-unresolved` - One wouldn't generally expect example paths to - resolve relative to the current JavaScript file as one would with real code. -* `import/unambiguous` - Snippets in examples are likely too short to always - include full import/export info. -* `node/no-missing-import` - See `import/no-unresolved`. -* `node/no-missing-require` - See `import/no-unresolved`. - -||| -|---|---| -|Context|everywhere| -|Tags|`example`| -|Options| *See above* | - -The following patterns are considered problems: - -````js -/** - * @example alert('hello') - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"no-alert":2,"semi":["error","always"]}},"checkEslintrc":false}] -// Message: @example error (no-alert): Unexpected alert. - -/** - * @example alert('hello') - */ -class quux { - -} -// Options: [{"baseConfig":{"rules":{"no-alert":2,"semi":["error","always"]}},"checkEslintrc":false}] -// Message: @example error (no-alert): Unexpected alert. - -/** - * @example ```js - alert('hello'); - ``` - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["error","never"]}},"checkEslintrc":false,"exampleCodeRegex":"```js([\\s\\S]*)```"}] -// Message: @example error (semi): Extra semicolon. - -/** - * @example - * - * ```js alert('hello'); ``` - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["error","never"]}},"checkEslintrc":false,"exampleCodeRegex":"```js ([\\s\\S]*)```"}] -// Message: @example error (semi): Extra semicolon. - -/** - * @example - * ```js alert('hello'); ``` - */ -var quux = { - -}; -// Options: [{"baseConfig":{"rules":{"semi":["error","never"]}},"checkEslintrc":false,"exampleCodeRegex":"```js ([\\s\\S]*)```"}] -// Message: @example error (semi): Extra semicolon. - -/** - * @example ``` - * js alert('hello'); ``` - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["error","never"]}},"checkEslintrc":false,"exampleCodeRegex":"```\njs ([\\s\\S]*)```"}] -// Message: @example error (semi): Extra semicolon. - -/** - * @example Not JavaScript - */ -function quux () { - -} -/** - * @example quux2(); - */ -function quux2 () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["error","never"]}},"checkEslintrc":false,"rejectExampleCodeRegex":"^\\s*<.*>\\s*$"}] -// Message: @example error (semi): Extra semicolon. - -/** - * @example - * quux(); // does something useful - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"no-undef":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":true}] -// Message: @example error (no-undef): 'quux' is not defined. - -/** - * @example Valid usage - * quux(); // does something useful - * - * @example - * quux('random unwanted arg'); // results in an error - */ -function quux () { - -} -// Options: [{"captionRequired":true,"checkEslintrc":false}] -// Message: Caption is expected for examples. - -/** - * @example quux(); - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"indent":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":false}] -// Message: @example error (indent): Expected indentation of 0 spaces but found 1. - -/** - * @example test() // eslint-disable-line semi - */ -function quux () {} -// Options: [{"checkEslintrc":false,"noDefaultExampleRules":true,"reportUnusedDisableDirectives":true}] -// Message: @example error: Unused eslint-disable directive (no problems were reported from 'semi'). - -/** - * @example - test() // eslint-disable-line semi - */ -function quux () {} -// Options: [{"allowInlineConfig":false,"baseConfig":{"rules":{"semi":["error","always"]}},"checkEslintrc":false,"noDefaultExampleRules":true}] -// Message: @example error (semi): Missing semicolon. - -/** - * @example const i = 5; - * quux2() - */ -function quux2 () { - -} -// Options: [{"matchingFileName":"../../jsdocUtils.js"}] -// Message: @example warning (id-length): Identifier name 'i' is too short (< 2). - -/** - * @example const i = 5; - * quux2() - */ -function quux2 () { - -} -// Message: @example warning (id-length): Identifier name 'i' is too short (< 2). - -/** - * @example const i = 5; - * quux2() - */ -function quux2 () { - -} -// Options: [{"paddedIndent":2}] -// Message: @example warning (id-length): Identifier name 'i' is too short (< 2). - -/** - * @example - * const i = 5; - * quux2() - */ -function quux2 () { - -} -// Message: @example warning (id-length): Identifier name 'i' is too short (< 2). - -/** - * @example const idx = 5; - * quux2() - */ -function quux2 () { - -} -// Options: [{"matchingFileName":"dummy.js"}] -// Message: @example error (semi): Missing semicolon. - -/** - * @example const idx = 5; - * - * quux2() - */ -function quux2 () { - -} -// Options: [{"matchingFileName":"dummy.js"}] -// Message: @example error (semi): Missing semicolon. - -/** - * @example const idx = 5; - * - * quux2() - */ -function quux2 () { - -} -// Options: [{"checkEslintrc":false,"matchingFileName":"dummy.js"}] -// Message: @example error: Parsing error: The keyword 'const' is reserved - -/** - * @example // begin - alert('hello') - // end - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["warn","always"]}},"checkEslintrc":false,"exampleCodeRegex":"// begin[\\s\\S]*// end","noDefaultExampleRules":true}] -// Message: @example warning (semi): Missing semicolon. - -/** - * - */ -function f () { - -} -// Settings: {"jsdoc":{"allowInlineConfig":true,"baseConfig":{},"captionRequired":false,"configFile":"configFile.js","eslintrcForExamples":true,"exampleCodeRegex":".*?","matchingFileName":"test.md","noDefaultExampleRules":false,"rejectExampleCodeRegex":"\\W*","reportUnusedDisableDirectives":true}} -// Message: `settings.jsdoc.captionRequired` has been removed, use options in the rule `check-examples` instead. - -/** - * @typedef {string} Foo - * @example - * 'foo' - */ -// Options: [{"captionRequired":true,"checkEslintrc":false}] -// Message: Caption is expected for examples. - -/** - * @example - * const list: number[] = [1, 2, 3] - * quux(list); - */ -function quux () { - -} -// Options: [{"baseConfig":{"parser":"@typescript-eslint/parser","parserOptions":{"ecmaVersion":6},"rules":{"semi":["error","always"]}},"checkEslintrc":false}] -// Message: @example error (semi): Missing semicolon. - -/** - * @example - * const test = something?.find((_) => { - * return _ - * }); - */ -function quux () { - -} -// Options: [{"baseConfig":{"parserOptions":{"ecmaVersion":6},"rules":{"semi":["error","always"]}}}] -// Message: @example error (semi): Missing semicolon. - -/** - * @example Say `Hello!` to the user. - * First, import the function: - * - * ```js - * import popup from './popup' - * const aConstInSameScope = 5; - * ``` - * - * Then use it like this: - * - * ```js - * const aConstInSameScope = 7; - * popup('Hello!') - * ``` - * - * Here is the result on macOS: - * - * ![Screenshot](path/to/screenshot.jpg) - */ -// Options: [{"baseConfig":{"parserOptions":{"ecmaVersion":2015,"sourceType":"module"},"rules":{"semi":["error","always"]}},"checkEslintrc":false,"exampleCodeRegex":"/^```(?:js|javascript)\\n([\\s\\S]*?)```$/gm"}] -// Message: @example error (semi): Missing semicolon. - -/** - * @example // begin - alert('hello') - // end - * And here is another example: - // begin - alert('there') - // end - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["warn","always"]}},"checkEslintrc":false,"exampleCodeRegex":"/\\/\\/ begin[\\s\\S]*?// end/g","noDefaultExampleRules":true}] -// Message: @example warning (semi): Missing semicolon. - -/** - * @example - * quux(); - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"indent":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":false}] -// Message: @example error (indent): Expected indentation of 0 spaces but found 2. -```` - -The following patterns are not considered problems: - -````js -/** - * @example ```js - alert('hello'); - ``` - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["error","always"]}},"checkEslintrc":false,"exampleCodeRegex":"```js([\\s\\S]*)```"}] - -/** - * @example ```js - alert('hello'); - ``` - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"semi":["error","always"]}},"checkEslintrc":false,"exampleCodeRegex":"/```js([\\s\\S]*)```/"}] - -/** - * @example - * // arbitrary example content - */ -function quux () { - -} -// Options: [{"checkEslintrc":false}] - -/** - * @example - * quux(); // does something useful - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"no-undef":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":false}] - -/** - * @example quux(); - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"indent":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":false}] - -/** - * @example Valid usage - * quux(); // does something useful - * - * @example Invalid usage - * quux('random unwanted arg'); // results in an error - */ -function quux () { - -} -// Options: [{"captionRequired":true,"checkEslintrc":false}] - -/** - * @example test() // eslint-disable-line semi - */ -function quux () {} -// Options: [{"checkEslintrc":false,"noDefaultExampleRules":true,"reportUnusedDisableDirectives":false}] - -/** - * @example - test() // eslint-disable-line semi - */ -function quux () {} -// Options: [{"allowInlineConfig":true,"baseConfig":{"rules":{"semi":["error","always"]}},"checkEslintrc":false,"noDefaultExampleRules":true}] - -/** - * @example ```js - alert('hello') - ``` - */ -var quux = { - -}; -// Options: [{"baseConfig":{"rules":{"semi":["error","never"]}},"checkEslintrc":false,"exampleCodeRegex":"```js([\\s\\S]*)```"}] - -/** - * @example - * foo(function (err) { - * throw err; - * }); - */ -function quux () {} -// Options: [{"baseConfig":{"rules":{"indent":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":false}] - -/** - * @example - * const list: number[] = [1, 2, 3]; - * quux(list); - */ -function quux () { - -} -// Options: [{"baseConfig":{"parser":"@typescript-eslint/parser","parserOptions":{"ecmaVersion":6},"rules":{"semi":["error","always"]}},"checkEslintrc":false}] - -/** - * @example const ident = 5; - * quux2(); - * bar(); - */ -function quux2 () { - -} -// Options: [{"paddedIndent":2}] - -/** - * @example - * function quux() { - * bar(); - * } - */ -function quux () { - -} -// Options: [{"baseConfig":{"rules":{"indent":["error"]}},"checkEslintrc":false,"noDefaultExampleRules":false}] -```` - - - -### check-indentation - -Reports invalid padding inside JSDoc blocks. - -Ignores parts enclosed in Markdown "code block"'s. For example, -the following description is not reported: - -```js -/** - * Some description: - * ```html - *
- * test - *
- * ``` - */ -``` - - -#### Options - -This rule has an object option. - - -##### excludeTags - -Array of tags (e.g., `['example', 'description']`) whose content will be -"hidden" from the `check-indentation` rule. Defaults to `['example']`. - -By default, the whole JSDoc block will be checked for invalid padding. -That would include `@example` blocks too, which can get in the way -of adding full, readable examples of code without ending up with multiple -linting issues. - -When disabled (by passing `excludeTags: []` option), the following code *will* -report a padding issue: - -```js -/** - * @example - * anArray.filter((a) => { - * return a.b; - * }); - */ -``` - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| -|Options| `excludeTags` | - -The following patterns are considered problems: - -````js -/** foo */ -function quux () { - -} -// Message: There must be no indentation. - -/** - * foo - * - * @param bar - * baz - */ -function quux () { - -} -// Message: There must be no indentation. - -/** - * Foo - * bar - */ -class Moo {} -// Message: There must be no indentation. - -/** - * foo - * - * @example - * anArray.filter((a) => { - * return a.b; - * }); - */ -function quux () { - -} -// Options: [{"excludeTags":[]}] -// Message: There must be no indentation. - -/** - * foo - * - * @example - * aaaa - * @returns - * eeee - */ -function quux () { - -} -// Message: There must be no indentation. - -/** - * foo - * ```html - *
- * test - *
- * ``` - * @returns - * eeee - */ -function quux () { - -} -// Message: There must be no indentation. - -/** - * foo - * ``` aaaa``` - * @returns - * eeee - */ -function quux () { - -} -// Message: There must be no indentation. - -/** -* @example -* Here is a long -* indented summary of this -* example -* -* ```js -* function hi () { -* alert('Hello'); -* } -* ``` -*/ -// Options: [{"excludeTags":[]}] -// Message: There must be no indentation. - -/** -* @example -* Here is a long -* summary of this -* example -* -* // Code is not wrapped into fenced code block -* function hi () { -* alert('Hello'); -* } -*/ -// Options: [{"excludeTags":[]}] -// Message: There must be no indentation. -```` - -The following patterns are not considered problems: - -````js -/** - * foo - * - * @param bar - * baz - */ -function quux () { - -} - -/*** foo */ -function quux () { - -} - -/** - * foo - * - * @example - * anArray.filter((a) => { - * return a.b; - * }); - */ -function quux () { - -} - -/** - * foo - * - * @example - * anArray.filter((a) => { - * return a.b; - * }); - * @returns - * eeee - */ -function quux () { - -} -// Options: [{"excludeTags":["example","returns"]}] - -/** - * foo - * ```html - *
- * test - *
- * ``` - * @returns eeee - */ -function quux () { - -} - -/** - * foo - * ``` aaaa``` - * @returns eeee - */ -function quux () { - -} - -/** -* @example -* Here is a long -* summary of this -* example -* -* ```js -* function hi () { -* alert('Hello'); -* } -* ``` -*/ -// Options: [{"excludeTags":[]}] -```` - - - -### check-param-names - -Ensures that parameter names in JSDoc match those in the function declaration. - - -#### Options - - -##### allowExtraTrailingParamDocs - -If set to `true`, this option will allow extra `@param` definitions (e.g., -representing future expected or virtual params) to be present without needing -their presence within the function signature. Other inconsistencies between -`@param`'s and present function parameters will still be reported. - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`| -|Options|`allowExtraTrailingParamDocs`| -|Tags|`param`| - -The following patterns are considered problems: - -````js -/** - * @param Foo - */ -function quux (foo = 'FOO') { - -} -// Message: Expected @param names to be "foo". Got "Foo". - -/** - * @arg Foo - */ -function quux (foo = 'FOO') { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} -// Message: Expected @arg names to be "foo". Got "Foo". - -/** - * @param Foo - */ -function quux (foo) { - -} -// Message: Expected @param names to be "foo". Got "Foo". - -/** - * @param Foo.Bar - */ -function quux (foo) { - -} -// Message: @param path declaration ("Foo.Bar") appears before any real parameter. - -/** - * @param foo - * @param Foo.Bar - */ -function quux (foo) { - -} -// Message: @param path declaration ("Foo.Bar") root node name ("Foo") does not match previous real parameter name ("foo"). - -/** - * Assign the project to a list of employees. - * @param {string} employees[].name - The name of an employee. - * @param {string} employees[].department - The employee's department. - */ -function assign (employees) { - -}; -// Message: @param path declaration ("employees[].name") appears before any real parameter. - -/** - * Assign the project to a list of employees. - * @param {string} employees[].name - The name of an employee. - * @param {string} employees[].name - The employee's department. - */ -function assign (employees) { - -}; -// Message: Duplicate @param "employees[].name" - -/** - * @param foo - * @param foo.bar - * @param bar - */ -function quux (bar, foo) { - -} -// Message: Expected @param names to be "bar, foo". Got "foo, bar". - -/** - * @param foo - * @param bar - */ -function quux (foo) { - -} -// Message: @param "bar" does not match an existing function parameter. - -/** - * @param foo - * @param foo - */ -function quux (foo) { - -} -// Message: Duplicate @param "foo" - -/** - * @param foo - * @param foo - */ -function quux (foo, bar) { - -} -// Message: Duplicate @param "foo" - -/** - * @param foo - * @param foo - */ -function quux (foo, foo) { - -} -// Message: Duplicate @param "foo" - -/** - * @param cfg - * @param cfg.foo - * @param cfg.foo - */ -function quux ({foo, bar}) { - -} -// Message: Duplicate @param "cfg.foo" - -/** - * @param cfg - * @param cfg.foo - * @param [cfg.foo] - * @param baz - */ -function quux ({foo, bar}, baz) { - -} -// Message: Duplicate @param "cfg.foo" - -/** - * @param cfg - * @param cfg.foo - * @param [cfg.foo="with a default"] - * @param baz - */ -function quux ({foo, bar}, baz) { - -} -// Message: Duplicate @param "cfg.foo" - -export class SomeClass { - /** - * @param prop - */ - constructor(private property: string) {} -} -// Message: Expected @param names to be "property". Got "prop". - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":false}}} -// Message: Unexpected tag `@param` - -/** - * @param {Error} error Exit code - * @param {number} [code = 1] Exit code - */ -function quux (error, cde = 1) { -}; -// Message: Expected @param names to be "error, cde". Got "error, code". -```` - -The following patterns are not considered problems: - -````js -/** - * - */ -function quux (foo) { - -} - -/** - * @param foo - */ -function quux (foo) { - -} - -/** - * @param foo - * @param bar - */ -function quux (foo, bar) { - -} - -/** - * @param foo - * @param bar - */ -function quux (foo, bar, baz) { - -} - -/** - * @param foo - * @param foo.foo - * @param bar - */ -function quux (foo, bar) { - -} - -/** - * @param args - */ -function quux (...args) { - -} - -/** - * @param foo - */ -function quux ({a, b}) { - -} - -/** - * @param foo - * @param foo.bar - * @param foo.baz - * @param bar - */ -function quux (foo, bar) { - -} - -/** - * @param args - */ -function quux ({a, b} = {}) { - -} - -/** - * @param foo - */ -function quux ([a, b] = []) { - -} - -/** - * Assign the project to a list of employees. - * @param {object[]} employees - The employees who are responsible for the project. - * @param {string} employees[].name - The name of an employee. - * @param {string} employees[].department - The employee's department. - */ -function assign (employees) { - -}; - -export class SomeClass { - /** - * @param property - */ - constructor(private property: string) {} -} - -/** - * @param {Error} error Exit code - * @param {number} [code = 1] Exit code - */ -function quux (error, code = 1) { -}; - -/** - * @param foo - * @param bar - */ -function quux (foo) { - -} -// Options: [{"allowExtraTrailingParamDocs":true}] -```` - - - -#### Deconstructing Function Parameter - -`eslint-plugin-jsdoc` does not validate names of parameters in function deconstruction, e.g. - -```js -/** - * @param foo - */ -function quux ({ - a, - b -}) { - -} -``` - -`{a, b}` is an [`ObjectPattern`](https://github.com/estree/estree/blob/master/es2015.md#objectpattern) AST type and does not have a name. Therefore, the associated parameter in JSDoc block can have any name. - -Likewise for the pattern `[a, b]` which is an [`ArrayPattern`](https://github.com/estree/estree/blob/master/es2015.md#arraypattern). - - -### check-property-names - -Ensures that property names in JSDoc are not duplicated on the same block -and that nested properties have defined roots. - - -#### Options - -||| -|---|---| -|Context|Everywhere| -|Tags|`property`| - -The following patterns are considered problems: - -````js -/** - * @typedef (SomeType) SomeTypedef - * @property Foo.Bar - */ -// Message: @property path declaration ("Foo.Bar") appears before any real property. - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - * @property Foo.Bar - */ -// Message: @property path declaration ("Foo.Bar") root node name ("Foo") does not match previous real property name ("foo"). - -/** - * Assign the project to a list of employees. - * @typedef (SomeType) SomeTypedef - * @property {string} employees[].name - The name of an employee. - * @property {string} employees[].department - The employee's department. - */ -// Message: @property path declaration ("employees[].name") appears before any real property. - -/** - * Assign the project to a list of employees. - * @typedef (SomeType) SomeTypedef - * @property {string} employees[].name - The name of an employee. - * @property {string} employees[].name - The employee's department. - */ -// Message: Duplicate @property "employees[].name" - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - * @property foo - */ -// Message: Duplicate @property "foo" - -/** - * @typedef (SomeType) SomeTypedef - * @property cfg - * @property cfg.foo - * @property cfg.foo - */ -function quux ({foo, bar}) { - -} -// Message: Duplicate @property "cfg.foo" - -/** - * @typedef (SomeType) SomeTypedef - * @property cfg - * @property cfg.foo - * @property [cfg.foo] - * @property baz - */ -function quux ({foo, bar}, baz) { - -} -// Message: Duplicate @property "cfg.foo" - -/** - * @typedef (SomeType) SomeTypedef - * @property cfg - * @property cfg.foo - * @property [cfg.foo="with a default"] - * @property baz - */ -function quux ({foo, bar}, baz) { - -} -// Message: Duplicate @property "cfg.foo" - -/** - * @typedef (SomeType) SomeTypedef - * @prop foo - * @prop foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":"prop"}}} -// Message: Duplicate @prop "foo" - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":false}}} -// Message: Unexpected tag `@property` -```` - -The following patterns are not considered problems: - -````js -/** - * - */ - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - */ - -/** - * @typedef (SomeType) SomeTypedef - * @prop foo - */ - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - * @property bar - */ - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - * @property foo.foo - * @property bar - */ - -/** - * Assign the project to a list of employees. - * @typedef (SomeType) SomeTypedef - * @property {object[]} employees - The employees who are responsible for the project. - * @property {string} employees[].name - The name of an employee. - * @property {string} employees[].department - The employee's department. - */ - -/** - * @typedef (SomeType) SomeTypedef - * @property {Error} error Exit code - * @property {number} [code = 1] Exit code - */ - -/** - * @namespace (SomeType) SomeNamespace - * @property {Error} error Exit code - * @property {number} [code = 1] Exit code - */ - -/** - * @class - * @property {Error} error Exit code - * @property {number} [code = 1] Exit code - */ -function quux (code = 1) { - this.error = new Error('oops'); - this.code = code; -} - -/** - * @typedef (SomeType) SomeTypedef - * @property foo - * @property foo.bar - * @property foo.baz - * @property bar - */ -```` - - - -### check-syntax - -Reports against Google Closure Compiler syntax. - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| - -The following patterns are considered problems: - -````js -/** - * @param {string=} foo - */ -function quux (foo) { - -} -// Message: Syntax should not be Google Closure Compiler style. -```` - -The following patterns are not considered problems: - -````js -/** - * @param {string} [foo] - */ -function quux (foo) { - -} - -/** - * - */ -function quux (foo) { - -} -```` - - - -### check-tag-names - -Reports invalid block tag names. - -Valid [JSDoc 3 Block Tags](https://jsdoc.app/#block-tags) are: - -``` -abstract -access -alias -async -augments -author -borrows -callback -class -classdesc -constant -constructs -copyright -default -deprecated -description -enum -event -example -exports -external -file -fires -function -generator -global -hideconstructor -ignore -implements -inheritdoc -inner -instance -interface -kind -lends -license -listens -member -memberof -memberof! -mixes -mixin -module -name -namespace -override -package -param -private -property -protected -public -readonly -requires -returns -see -since -static -summary -this -throws -todo -tutorial -type -typedef -variation -version -yields -``` - -`modifies` is also supported (see [source](https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js#L594)) but is undocumented. - -The following synonyms are also recognized: - -``` -arg -argument -const -constructor -defaultvalue -desc -emits -exception -extends -fileoverview -func -host -method -overview -prop -return -var -virtual -yield -``` - -For [TypeScript](https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html#supported-jsdoc) -(or Closure), when `settings.jsdoc.mode` is set to `typescript` or `closure`, -one may also use the following: - -``` -template -``` - -And for [Closure](https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler), -when `settings.jsdoc.mode` is set to `closure`, one may use the following (in -addition to the jsdoc and TypeScript tags): - -``` -define (synonym of `const` per jsdoc source) -dict -export -externs -final -implicitCast (casing distinct from that recognized by jsdoc internally) -inheritDoc (casing distinct from that recognized by jsdoc internally) -noalias -nocollapse -nocompile -noinline -nosideeffects -polymer -polymerBehavior -preserve -record (synonym of `interface` per jsdoc source) -struct -suppress -unrestricted -``` - -...and these undocumented tags which are only in [source](https://github.com/google/closure-compiler/blob/master/src/com/google/javascript/jscomp/parsing/Annotation.java): - -``` -closurePrimitive -customElement -expose -hidden -idGenerator -meaning -mixinClass -mixinFunction -ngInject -owner -typeSummary -wizaction -``` - -Note that the tags indicated as replacements in `settings.jsdoc.tagNamePreference` will automatically be considered as valid. - - -#### Options - - -##### definedTags - -Use an array of `definedTags` strings to configure additional, allowed tags. -The format is as follows: - -```json -{ - "definedTags": ["note", "record"] -} -``` - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| -|Options|`definedTags`| -|Settings|`tagNamePreference`, `mode`| - -The following patterns are considered problems: - -````js -/** @typoo {string} */ -let a; -// Message: Invalid JSDoc tag name "typoo". - -/** - * @Param - */ -function quux () { - -} -// Message: Invalid JSDoc tag name "Param". - -/** - * @foo - */ -function quux () { - -} -// Message: Invalid JSDoc tag name "foo". - -/** - * @arg foo - */ -function quux (foo) { - -} -// Message: Invalid JSDoc tag (preference). Replace "arg" JSDoc tag with "param". - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} -// Message: Invalid JSDoc tag (preference). Replace "param" JSDoc tag with "arg". - -/** - * @arg foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"arg":"somethingDifferent"}}} -// Message: Invalid JSDoc tag (preference). Replace "arg" JSDoc tag with "somethingDifferent". - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"parameter"}}} -// Message: Invalid JSDoc tag (preference). Replace "param" JSDoc tag with "parameter". - -/** - * @bar foo - */ -function quux (foo) { - -} -// Message: Invalid JSDoc tag name "bar". - -/** - * @baz @bar foo - */ -function quux (foo) { - -} -// Options: [{"definedTags":["bar"]}] -// Message: Invalid JSDoc tag name "baz". - -/** - * @bar - * @baz - */ -function quux (foo) { - -} -// Options: [{"definedTags":["bar"]}] -// Message: Invalid JSDoc tag name "baz". - -/** - * @todo - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"todo":false}}} -// Message: Blacklisted tag found (`@todo`) - -/** - * @todo - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"todo":{"message":"Please resolve to-dos or add to the tracker"}}}} -// Message: Please resolve to-dos or add to the tracker - -/** - * @todo - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"todo":{"message":"Please use x-todo instead of todo","replacement":"x-todo"}}}} -// Message: Please use x-todo instead of todo - -/** - * @todo - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"todo":{"message":"Please use x-todo instead of todo","replacement":"x-todo"}}}} -// Message: Please use x-todo instead of todo - -/** - * @todo - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"todo":55}}} -// Message: Invalid `settings.jsdoc.tagNamePreference`. Values must be falsy, a string, or an object. - -/** - * @property {object} a - * @prop {boolean} b - */ -function quux () { - -} -// Message: Invalid JSDoc tag (preference). Replace "prop" JSDoc tag with "property". - -/** - * @abc foo - * @abcd bar - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"abc":"abcd"}}} -// Options: [{"definedTags":["abcd"]}] -// Message: Invalid JSDoc tag (preference). Replace "abc" JSDoc tag with "abcd". - -/** - * @abc - * @abcd - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"abc":"abcd"}}} -// Message: Invalid JSDoc tag (preference). Replace "abc" JSDoc tag with "abcd". - -/** - * @modifies - * @abstract - * @access - * @alias - * @async - * @augments - * @author - * @borrows - * @callback - * @class - * @classdesc - * @constant - * @constructs - * @copyright - * @default - * @deprecated - * @description - * @enum - * @event - * @example - * @exports - * @external - * @file - * @fires - * @function - * @generator - * @global - * @hideconstructor - * @ignore - * @implements - * @inheritdoc - * @inner - * @instance - * @interface - * @kind - * @lends - * @license - * @listens - * @member - * @memberof - * @memberof! - * @mixes - * @mixin - * @module - * @name - * @namespace - * @override - * @package - * @param - * @private - * @property - * @protected - * @public - * @readonly - * @requires - * @returns - * @see - * @since - * @static - * @summary - * @this - * @throws - * @todo - * @tutorial - * @type - * @typedef - * @variation - * @version - * @yields - */ -function quux (foo) {} -// Settings: {"jsdoc":{"mode":"badMode"}} -// Message: Unrecognized value `badMode` for `settings.jsdoc.mode`. - -/** - * @modifies - * @abstract - * @access - * @alias - * @async - * @augments - * @author - * @borrows - * @callback - * @class - * @classdesc - * @constant - * @constructs - * @copyright - * @default - * @deprecated - * @description - * @enum - * @event - * @example - * @exports - * @external - * @file - * @fires - * @function - * @generator - * @global - * @hideconstructor - * @ignore - * @implements - * @inheritdoc - * @inner - * @instance - * @interface - * @kind - * @lends - * @license - * @listens - * @member - * @memberof - * @memberof! - * @mixes - * @mixin - * @module - * @name - * @namespace - * @override - * @package - * @param - * @private - * @property - * @protected - * @public - * @readonly - * @requires - * @returns - * @see - * @since - * @static - * @summary - * @this - * @throws - * @todo - * @tutorial - * @type - * @typedef - * @variation - * @version - * @yields - * @template - */ -function quux (foo) {} -// Message: Invalid JSDoc tag name "template". - -/** - * @externs - */ -function quux (foo) {} -// Message: Invalid JSDoc tag name "externs". -```` - -The following patterns are not considered problems: - -````js -/** - * @param foo - */ -function quux (foo) { - -} - -/** - * @memberof! foo - */ -function quux (foo) { - -} - -/** - * @arg foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} - -/** - * @bar foo - */ -function quux (foo) { - -} -// Options: [{"definedTags":["bar"]}] - -/** - * @baz @bar foo - */ -function quux (foo) { - -} -// Options: [{"definedTags":["baz","bar"]}] - -/** - * @baz @bar foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"baz","returns":{"message":"Prefer `bar`","replacement":"bar"},"todo":false}}} - -/** - * @modifies - * @abstract - * @access - * @alias - * @async - * @augments - * @author - * @borrows - * @callback - * @class - * @classdesc - * @constant - * @constructs - * @copyright - * @default - * @deprecated - * @description - * @enum - * @event - * @example - * @exports - * @external - * @file - * @fires - * @function - * @generator - * @global - * @hideconstructor - * @ignore - * @implements - * @inheritdoc - * @inner - * @instance - * @interface - * @kind - * @lends - * @license - * @listens - * @member - * @memberof - * @memberof! - * @mixes - * @mixin - * @module - * @name - * @namespace - * @override - * @package - * @param - * @private - * @property - * @protected - * @public - * @readonly - * @requires - * @returns - * @see - * @since - * @static - * @summary - * @this - * @throws - * @todo - * @tutorial - * @type - * @typedef - * @variation - * @version - * @yields - */ -function quux (foo) {} - -/** - * @modifies - * @abstract - * @access - * @alias - * @async - * @augments - * @author - * @borrows - * @callback - * @class - * @classdesc - * @constant - * @constructs - * @copyright - * @default - * @deprecated - * @description - * @enum - * @event - * @example - * @exports - * @external - * @file - * @fires - * @function - * @generator - * @global - * @hideconstructor - * @ignore - * @implements - * @inheritdoc - * @inner - * @instance - * @interface - * @kind - * @lends - * @license - * @listens - * @member - * @memberof - * @memberof! - * @mixes - * @mixin - * @module - * @name - * @namespace - * @override - * @package - * @param - * @private - * @property - * @protected - * @public - * @readonly - * @requires - * @returns - * @see - * @since - * @static - * @summary - * @this - * @throws - * @todo - * @tutorial - * @type - * @typedef - * @variation - * @version - * @yields - * @template - */ -function quux (foo) {} -// Settings: {"jsdoc":{"mode":"typescript"}} - -/** - * @externs - */ -function quux (foo) {} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * - */ -function quux (foo) { - -} - -/** - * @todo - */ -function quux () { - -} - -/** - * @extends Foo - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"augments":{"message":"@extends is to be used over @augments.","replacement":"extends"}}}} - -/** - * Registers the `target` class as a transient dependency; each time the dependency is resolved a new instance will be created. - * - * @param target - The class / constructor function to register as transient. - * - * @example ```ts -@transient() -class Foo { } -``` - * @param Time for a new tag - */ -export function transient(target?: T): T { - // ... -} -```` - - - -### check-types - -Reports invalid types. - -By default, ensures that the casing of native types is the same as in this list: - -``` -undefined -null -boolean -number -bigint -string -symbol -object -Array -Function -Date -RegExp -``` - - -#### Options - -`check-types` allows one option: - -- An option object: - - with the key `noDefaults` to insist that only the supplied option type - map is to be used, and that the default preferences (such as "string" - over "String") will not be enforced. The option's default is `false`. - - with the key `exemptTagContexts` which will avoid reporting when a - bad type is found on a specified tag. Set to an array of objects with - a key `tag` set to the tag to exempt, and a `types` key which can - either be `true` to indicate that any types on that tag will be allowed, - or to an array of strings which will only allow specific bad types. - If an array of strings is given, these must match the type exactly, - e.g., if you only allow `"object"`, it will not allow - `"object"`. Note that this is different from the - behavior of `settings.jsdoc.preferredTypes`. This option is useful - for normally restricting generic types like `object` with - `preferredTypes`, but allowing `typedef` to indicate that its base - type is `object`. - - with the key `unifyParentAndChildTypeChecks` which will treat - `settings.jsdoc.preferredTypes` keys such as `SomeType` as matching - not only child types such as an unadorned `SomeType` but also - `SomeType`, `SomeType.`, or if `SomeType` is - `Array` (or `[]`), it will match `aChildType[]`. If this is `false` or - unset, the former format will only apply to types which are not parent - types/unions whereas the latter formats will only apply for parent - types/unions. The special types `[]`, `.<>` (or `.`), and `<>` - act only as parent types (and will not match a bare child type such as - `Array` even when unified, though, as mentioned, `Array` will match - say `string[]` or `Array.` when unified). The special type - `*` is only a child type. Note that there is no detection of parent - and child type together, e.g., you cannot specify preferences for - `string[]` specifically as distinct from say `number[]`, but you can - target both with `[]` or the child types `number` or `string`. - -See also the documentation on `settings.jsdoc.preferredTypes` which impacts -the behavior of `check-types`. - - -#### Why not capital case everything? - -Why are `boolean`, `number` and `string` exempt from starting with a capital letter? Let's take `string` as an example. In Javascript, everything is an object. The string Object has prototypes for string functions such as `.toUpperCase()`. - -Fortunately we don't have to write `new String()` everywhere in our code. Javascript will automatically wrap string primitives into string Objects when we're applying a string function to a string primitive. This way the memory footprint is a tiny little bit smaller, and the [GC](https://en.wikipedia.org/wiki/Garbage_collection_(computer_science)) has less work to do. - -So in a sense, there two types of strings in Javascript; `{string}` literals, also called primitives and `{String}` Objects. We use the primitives because it's easier to write and uses less memory. `{String}` and `{string}` are technically both valid, but they are not the same. - -```js -new String('lard') // String {0: "l", 1: "a", 2: "r", 3: "d", length: 4} -'lard' // "lard" -new String('lard') === 'lard' // false -``` - -To make things more confusing, there are also object literals and object Objects. But object literals are still static Objects and object Objects are instantiated Objects. So an object primitive is still an object Object. - -However, `Object.create(null)` objects are not `instanceof Object`, however, so -in the case of this Object we lower-case to indicate possible support for -these objects. - -Basically, for primitives, we want to define the type as a primitive, because that's what we use in 99.9% of cases. For everything else, we use the type rather than the primitive. Otherwise it would all just be `{object}`. - -In short: It's not about consistency, rather about the 99.9% use case. (And some -functions might not even support the objects if they are checking for identity.) - -type name | `typeof` | check-types | testcase ---|--|--|-- -**Array** | object | **Array** | `([]) instanceof Array` -> `true` -**Function** | function | **function** | `(function f () {}) instanceof Function` -> `true` -**Date** | object | **Date** | `(new Date()) instanceof Date` -> `true` -**RegExp** | object | **RegExp** | `(new RegExp(/.+/)) instanceof RegExp` -> `true` -Object | **object** | **object** | `({}) instanceof Object` -> `true` but `Object.create(null) instanceof Object` -> `false` -Boolean | **boolean** | **boolean** | `(true) instanceof Boolean` -> **`false`** -Number | **number** | **number** | `(41) instanceof Number` -> **`false`** -String | **string** | **string** | `("test") instanceof String` -> **`false`** - -||| -|---|---| -|Context|everywhere| -|Tags|`augments`, `class`, `constant`, `enum`, `implements`, `member`, `module`, `namespace`, `param`, `property`, `returns`, `throws`, `type`, `typedef`, `yields`| -|Aliases|`constructor`, `const`, `extends`, `var`, `arg`, `argument`, `prop`, `return`, `exception`, `yield`| -|Closure-only|`package`, `private`, `protected`, `public`, `static`| -|Options|`noDefaults`, `exemptTagContexts`, `unifyParentAndChildTypeChecks`| -|Settings|`preferredTypes`, `mode`| - -The following patterns are considered problems: - -````js -/** - * @param {abc} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":100}}} -// Message: Invalid `settings.jsdoc.preferredTypes`. Values must be falsy, a string, or an object. - -/** - * @param {Number} foo - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @param "foo" type "Number"; prefer: "number". - -/** - * @arg {Number} foo - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @arg "foo" type "Number"; prefer: "number". - -/** - * @returns {Number} foo - * @throws {Number} foo - */ -function quux () { - -} -// Message: Invalid JSDoc @returns type "Number"; prefer: "number". - -/** - * @param {(Number|string|Boolean)=} foo - */ -function quux (foo, bar, baz) { - -} -// Message: Invalid JSDoc @param "foo" type "Number"; prefer: "number". - -/** - * @param {Array.} foo - */ -function quux (foo, bar, baz) { - -} -// Message: Invalid JSDoc @param "foo" type "Number"; prefer: "number". - -/** - * @param {(Number|String)[]} foo - */ -function quux (foo, bar, baz) { - -} -// Message: Invalid JSDoc @param "foo" type "Number"; prefer: "number". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":"Abc","string":"Str"}}} -// Message: Invalid JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":{"replacement":"Abc"},"string":"Str"}}} -// Message: Invalid JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":{"message":"Messed up JSDoc @{{tagName}}{{tagValue}} type \"abc\"; prefer: \"Abc\".","replacement":"Abc"},"string":"Str"}}} -// Message: Messed up JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {abc} foo - * @param {cde} bar - * @param {object} baz - */ -function qux(foo, bar, baz) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":{"message":"Messed up JSDoc @{{tagName}}{{tagValue}} type \"abc\"; prefer: \"Abc\".","replacement":"Abc"},"cde":{"message":"More messed up JSDoc @{{tagName}}{{tagValue}} type \"cde\"; prefer: \"Cde\".","replacement":"Cde"},"object":"Object"}}} -// Message: Messed up JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":{"message":"Messed up JSDoc @{{tagName}}{{tagValue}} type \"abc\".","replacement":false},"string":"Str"}}} -// Message: Messed up JSDoc @param "foo" type "abc". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":{"message":"Messed up JSDoc @{{tagName}}{{tagValue}} type \"abc\"."},"string":"Str"}}} -// Message: Messed up JSDoc @param "foo" type "abc". - -/** - * @param {abc} foo - * @param {Number} bar - */ -function qux(foo, bar) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":"Abc","string":"Str"}}} -// Options: [{"noDefaults":true}] -// Message: Invalid JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {abc} foo - * @param {Number} bar - */ -function qux(foo, bar) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":"Abc","string":"Str"}}} -// Message: Invalid JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":false,"string":"Str"}}} -// Message: Invalid JSDoc @param "foo" type "abc". - -/** - * @param {abc} foo - */ -function qux(foo) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":false}}} -// Message: Invalid JSDoc @param "foo" type "abc". - -/** - * @param {*} baz - */ -function qux(baz) { -} -// Settings: {"jsdoc":{"preferredTypes":{"*":false,"abc":"Abc","string":"Str"}}} -// Message: Invalid JSDoc @param "baz" type "*". - -/** - * @param {*} baz - */ -function qux(baz) { -} -// Settings: {"jsdoc":{"preferredTypes":{"*":"aaa","abc":"Abc","string":"Str"}}} -// Message: Invalid JSDoc @param "baz" type "*"; prefer: "aaa". - -/** - * @param {abc} foo - * @param {Number} bar - */ -function qux(foo, bar) { -} -// Settings: {"jsdoc":{"preferredTypes":{"abc":"Abc","string":"Str"}}} -// Message: Invalid JSDoc @param "foo" type "abc"; prefer: "Abc". - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"GenericArray"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "GenericArray". - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"GenericArray","Array.<>":"GenericArray"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "GenericArray". - -/** - * @param {Array.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.<>":"GenericArray"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "GenericArray". - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array<>":"GenericArray"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "GenericArray". - -/** - * @param {string[]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"SpecialTypeArray"}}} -// Message: Invalid JSDoc @param "foo" type "[]"; prefer: "SpecialTypeArray". - -/** - * @param {string[]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"SpecialTypeArray"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "[]"; prefer: "SpecialTypeArray". - -/** - * @param {string[]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"SpecialTypeArray"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "SpecialTypeArray". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject","object.<>":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject","object<>":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object.<>":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object<>":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object.<>":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object<>":"GenericObject"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":false}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "object". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":false}}} -// Message: Invalid JSDoc @param "foo" type "object". - -/** - * @param {object.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "GenericObject". - -/** - * - * @param {string[][]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"Array."}}} -// Message: Invalid JSDoc @param "foo" type "[]"; prefer: "Array.". - -/** - * - * @param {string[][]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"Array.<>"}}} -// Message: Invalid JSDoc @param "foo" type "[]"; prefer: "Array.<>". - -/** - * - * @param {string[][]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"Array<>"}}} -// Message: Invalid JSDoc @param "foo" type "[]"; prefer: "Array<>". - -/** - * - * @param {object.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object.":"Object"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "Object". - -/** - * - * @param {object.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object.":"Object<>"}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "Object<>". - -/** - * - * @param {object>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object<>":"Object."}}} -// Message: Invalid JSDoc @param "foo" type "object"; prefer: "Object.". - -/** - * - * @param {Array.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.":"[]"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "[]". - -/** - * - * @param {Array.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.":"Array<>"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "Array<>". - -/** - * - * @param {Array.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.":"<>"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "<>". - -/** - * - * @param {Array.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.":"<>"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "<>". - -/** - * - * @param {Array.>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"MyArray.":"<>"}}} -// Message: Invalid JSDoc @param "foo" type "MyArray"; prefer: "<>". - -/** - * - * @param {Array>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"<>":"Array."}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "Array.". - -/** - * - * @param {Array>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"Array."}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "Array.". - -/** - * - * @param {Array>} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"<>":"[]"}}} -// Message: Invalid JSDoc @param "foo" type "Array"; prefer: "[]". - -/** @typedef {String} foo */ -// Message: Invalid JSDoc @typedef "foo" type "String"; prefer: "string". - -/** - * @this {array} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} -// Message: Invalid JSDoc @this type "array"; prefer: "Array". - -/** - * @export {array} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} -// Message: Invalid JSDoc @export type "array"; prefer: "Array". - -/** - * @typedef {object} foo - * @property {object} bar - */ -// Settings: {"jsdoc":{"preferredTypes":{"object":"Object"}}} -// Options: [{"exemptTagContexts":[{"tag":"typedef","types":true}]}] -// Message: Invalid JSDoc @property "bar" type "object"; prefer: "Object". - -/** @typedef {object} foo */ -// Settings: {"jsdoc":{"preferredTypes":{"object":"Object"}}} -// Options: [{"exemptTagContexts":[{"tag":"typedef","types":["array"]}]}] -// Message: Invalid JSDoc @typedef "foo" type "object"; prefer: "Object". - -/** - * @typedef {object} foo - * @property {object} bar - */ -// Settings: {"jsdoc":{"preferredTypes":{"object":"Object"}}} -// Options: [{"exemptTagContexts":[{"tag":"typedef","types":["object"]}]}] -// Message: Invalid JSDoc @property "bar" type "object"; prefer: "Object". - -/** @typedef {object} foo */ -// Settings: {"jsdoc":{"preferredTypes":{"object<>":"Object<>"}}} -// Options: [{"exemptTagContexts":[{"tag":"typedef","types":["object"]}]}] -// Message: Invalid JSDoc @typedef "foo" type "object"; prefer: "Object<>". -```` - -The following patterns are not considered problems: - -````js -/** - * @param {number} foo - * @param {Bar} bar - * @param {*} baz - */ -function quux (foo, bar, baz) { - -} - -/** - * @arg {number} foo - * @arg {Bar} bar - * @arg {*} baz - */ -function quux (foo, bar, baz) { - -} - -/** - * @param {(number|string|boolean)=} foo - */ -function quux (foo, bar, baz) { - -} - -/** - * @param {typeof bar} foo - */ -function qux(foo) { -} - -/** - * @param {import('./foo').bar.baz} foo - */ -function qux(foo) { -} - -/** - * @param {(x: number, y: string) => string} foo - */ -function qux(foo) { -} - -/** - * @param {() => string} foo - */ -function qux(foo) { -} - -/** - * @returns {Number} foo - * @throws {Number} foo - */ -function quux () { - -} -// Options: [{"noDefaults":true}] - -/** - * @param {Object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"Object"}}} - -/** - * @param {Array} foo - */ -function quux (foo) { - -} - -/** - * @param {Array.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"GenericArray"}}} - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"GenericArray"}}} - -/** - * @param {string[]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array":"SpecialTypeArray","Array.<>":"SpecialTypeArray","Array<>":"SpecialTypeArray"}}} - -/** - * @param {string[]} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.<>":"SpecialTypeArray","Array<>":"SpecialTypeArray"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"SpecialTypeArray"}}} - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"[]":"SpecialTypeArray"}}} -// Options: [{"unifyParentAndChildTypeChecks":true}] - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array.<>":"GenericArray"}}} - -/** - * @param {Array} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"Array<>":"GenericArray"}}} - -/** - * @param {object} foo - */ -function quux (foo) { - -} - -/** - * @param {object.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} - -/** - * @param {object.} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object":"GenericObject"}}} - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object.<>":"GenericObject"}}} - -/** - * @param {object} foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"object<>":"GenericObject"}}} - -/** - * @param {Number<} Ignore the error as not a validating rule - */ -function quux (foo) { - -} - -/** @param {function(...)} callback The function to invoke. */ -var subscribe = function(callback) {}; - -/** - * @this {Array} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @export {Array} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** @type {new() => EntityBase} */ - -/** @typedef {object} foo */ -// Settings: {"jsdoc":{"preferredTypes":{"object":"Object"}}} -// Options: [{"exemptTagContexts":[{"tag":"typedef","types":true}]}] - -/** @typedef {object} foo */ -// Settings: {"jsdoc":{"preferredTypes":{"object":"Object"}}} - -/** @typedef {object} foo */ -// Settings: {"jsdoc":{"preferredTypes":{"object<>":"Object<>"}}} -// Options: [{"exemptTagContexts":[{"tag":"typedef","types":["object"]}]}] -```` - - - -### check-values - -This rule checks the values for a handful of tags: - -1. `@version` - Checks that there is a present and valid - [semver](https://semver.org/) version value. -2. `@since` - As with `@version` -3. `@license` - Checks that there is a present and valid SPDX identifier - or is present within an `allowedLicenses` option. -4. `@author` - Checks there is a value present, and if the option - `allowedAuthors` is present, ensure that the author value is one - of these array items. - - -#### Options - - -##### allowedAuthors - -An array of allowable author values. If absent, only non-whitespace will -be checked for. - - -##### allowedLicenses - -An array of allowable license values or `true` to allow any license text. -If present as an array, will be used in place of SPDX identifiers. - - -##### licensePattern - -A string to be converted into a `RegExp` (with `u` flag) and whose first -parenthetical grouping, if present, will match the portion of the license -description to check (if no grouping is present, then the whole portion -matched will be used). Defaults to `([^\n]*)`, i.e., the SPDX expression -is expected before any line breaks. - -||| -|---|---| -|Context|everywhere| -|Tags|`@version`, `@since`, `@license`, `@author`| -|Options|`allowedAuthors`, `allowedLicenses`, `licensePattern`| -|Settings|`tagNamePreference`| - -The following patterns are considered problems: - -````js -/** - * @version - */ -function quux (foo) { - -} -// Message: Missing JSDoc @version. - -/** - * @version 3.1 - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @version: "3.1". - -/** - * @since - */ -function quux (foo) { - -} -// Message: Missing JSDoc @since. - -/** - * @since 3.1 - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @since: "3.1". - -/** - * @license - */ -function quux (foo) { - -} -// Message: Missing JSDoc @license. - -/** - * @license FOO - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @license: "FOO"; expected SPDX expression: https://spdx.org/licenses/. - -/** - * @license FOO - */ -function quux (foo) { - -} -// Options: [{"allowedLicenses":["BAR","BAX"]}] -// Message: Invalid JSDoc @license: "FOO"; expected one of BAR, BAX. - -/** - * @license MIT-7 - * Some extra text... - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @license: "MIT-7"; expected SPDX expression: https://spdx.org/licenses/. - -/** - * @license (MIT OR GPL-2.5) - */ -function quux (foo) { - -} -// Message: Invalid JSDoc @license: "(MIT OR GPL-2.5)"; expected SPDX expression: https://spdx.org/licenses/. - -/** - * @license MIT - * Some extra text - */ -function quux (foo) { - -} -// Options: [{"licensePattern":"[\\s\\S]*"}] -// Message: Invalid JSDoc @license: "MIT -Some extra text"; expected SPDX expression: https://spdx.org/licenses/. - -/** - * @author - */ -function quux (foo) { - -} -// Message: Missing JSDoc @author. - -/** - * @author Brett Zamir - */ -function quux (foo) { - -} -// Options: [{"allowedAuthors":["Gajus Kuizinas","golopot"]}] -// Message: Invalid JSDoc @author: "Brett Zamir"; expected one of Gajus Kuizinas, golopot. -```` - -The following patterns are not considered problems: - -````js -/** - * @version 3.4.1 - */ -function quux (foo) { - -} - -/** - * @version 3.4.1 - */ -function quux (foo) { - -} - -/** - * @since 3.4.1 - */ -function quux (foo) { - -} - -/** - * @since 3.4.1 - */ -function quux (foo) { - -} - -/** - * @license MIT - */ -function quux (foo) { - -} - -/** - * @license MIT - * Some extra text... - */ -function quux (foo) { - -} - -/** - * @license (MIT OR GPL-2.0) - */ -function quux (foo) { - -} - -/** - * @license FOO - */ -function quux (foo) { - -} -// Options: [{"allowedLicenses":["FOO","BAR","BAX"]}] - -/** - * @license FOO - */ -function quux (foo) { - -} -// Options: [{"allowedLicenses":true}] - -/** - * @license MIT - * Some extra text - */ -function quux (foo) { - -} -// Options: [{"licensePattern":"[^\n]*"}] - -/** - * @author Gajus Kuizinas - */ -function quux (foo) { - -} - -/** - * @author Brett Zamir - */ -function quux (foo) { - -} -// Options: [{"allowedAuthors":["Gajus Kuizinas","golopot","Brett Zamir"]}] -```` - - - -### empty-tags - -Expects the following tags to be empty of any content: - -- `@abstract` -- `@async` -- `@generator` -- `@global` -- `@hideconstructor` -- `@ignore` -- `@inheritdoc` -- `@inner` -- `@instance` -- `@override` -- `@readonly` - -The following will also be expected to be empty unless `settings.jsdoc.mode` -is set to "closure" (which allows types). - -- `@package` -- `@private` -- `@protected` -- `@public` -- `@static` - -Note that `@private` will still be checked for content by this rule even with -`settings.jsdoc.ignorePrivate` set to `true` (a setting which normally -causes rules not to take effect). - - -#### Options - - -##### tags - -If you want additional tags to be checked for their descriptions, you may -add them within this option. - -```js -{ - 'jsdoc/empty-tags': ['error', {tags: ['event']}] -} -``` - -||| -|---|---| -|Context|everywhere| -|Tags| and others added by `tags`| -|Aliases|| -|Options|`tags`| -The following patterns are considered problems: - -````js -/** - * @abstract extra text - */ -function quux () { - -} -// Message: @abstract should be empty. - -/** - * @abstract extra text - * @inheritdoc - * @async out of place - */ -function quux () { - -} -// Message: @abstract should be empty. - -/** - * @event anEvent - */ -function quux () { - -} -// Options: [{"tags":["event"]}] -// Message: @event should be empty. - -/** - * @private {someType} - */ -function quux () { - -} -// Message: @private should be empty. - -/** - * @private {someType} - */ -function quux () { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} -// Message: @private should be empty. -```` - -The following patterns are not considered problems: - -````js -/** - * @abstract - */ -function quux () { - -} - -/** - * - */ -function quux () { - -} - -/** - * @param aName - */ -function quux () { - -} - -/** - * @abstract - * @inheritdoc - * @async - */ -function quux () { - -} - -/** - * @private {someType} - */ -function quux () { - -} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @private - */ -function quux () { - -} -```` - - - -### implements-on-classes - -Reports an issue with any non-constructor function using `@implements`. - -Constructor functions, whether marked with `@class`, `@constructs`, or being -an ES6 class constructor, will not be flagged. - -To indicate that a function follows another function's signature, one might -instead use `@type` to indicate the `@function` or `@callback` to which the -funciton is adhering. - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`implements` (prevented)| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @implements {SomeClass} - */ -function quux () { - -} -// Message: @implements used on a non-constructor function - -/** - * @implements {SomeClass} - */ -function quux () { - -} -// Options: [{"contexts":["any"]}] -// Message: @implements used on a non-constructor function - -/** - * @function - * @implements {SomeClass} - */ -function quux () { - -} -// Options: [{"contexts":["any"]}] -// Message: @implements used on a non-constructor function - -/** - * @callback - * @implements {SomeClass} - */ -// Options: [{"contexts":["any"]}] -// Message: @implements used on a non-constructor function - -/** - * @implements {SomeClass} - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"implements":false}}} -// Message: Unexpected tag `@implements` -```` - -The following patterns are not considered problems: - -````js -/** - * @implements {SomeClass} - * @class - */ -function quux () { - -} - -/** - * @implements {SomeClass} - * @class - */ -function quux () { - -} -// Options: [{"contexts":["any"]}] - -/** - * @implements {SomeClass} - */ -// Options: [{"contexts":["any"]}] - -/** - * @implements {SomeClass} - * @constructor - */ -function quux () { - -} - -/** - * - */ -class quux { - /** - * @implements {SomeClass} - */ - constructor () { - - } -} - -/** - * - */ -const quux = class { - /** - * @implements {SomeClass} - */ - constructor () { - - } -} - -/** - * - */ -function quux () { - -} - -/** - * - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"implements":false}}} - -/** - * @function - * @implements {SomeClass} - */ - -/** - * @callback - * @implements {SomeClass} - */ -```` - - - -### match-description - -Enforces a regular expression pattern on descriptions. - -The default is this basic expression to match English sentences (Support -for Unicode upper case may be added in a future version when it can be handled -by our supported Node versions): - -``^([A-Z]|[`\\d_])[\\s\\S]*[.?!`]$`` - -Applies to the jsdoc block description and `@description` (or `@desc`) -by default but the `tags` option (see below) may be used to match other tags. - - -#### Options - - -##### matchDescription - -You can supply your own expression to override the default, passing a -`matchDescription` string on the options object. - -```js -{ - 'jsdoc/match-description': ['error', {matchDescription: '[A-Z].*\\.'}] -} -``` - -As with the default, the supplied regular expression will be applied with the -Unicode (`"u"`) flag and is *not* case-insensitive. - - -##### tags - -If you want different regular expressions to apply to tags, you may use -the `tags` option object: - -```js -{ - 'jsdoc/match-description': ['error', {tags: { - param: '\\- [A-Z].*\\.', - returns: '[A-Z].*\\.' - }}] -} -``` - -In place of a string, you can also add `true` to indicate that a particular -tag should be linted with the `matchDescription` value (or the default). - -```js -{ - 'jsdoc/match-description': ['error', {tags: { - param: true, - returns: true - }}] -} -``` - -The tags `@param`/`@arg`/`@argument` and `@property`/`@prop` will be properly -parsed to ensure that the matched "description" text includes only the text -after the name. - -All other tags will treat the text following the tag name, a space, and -an optional curly-bracketed type expression (and another space) as part of -its "description" (e.g., for `@returns {someType} some description`, the -description is `some description` while for `@some-tag xyz`, the description -is `xyz`). - - -##### mainDescription - -If you wish to override the main function description without changing the -default `match-description`, you may use `mainDescription`: - -```js -{ - 'jsdoc/match-description': ['error', { - mainDescription: '[A-Z].*\\.', - tags: { - param: true, - returns: true - } - }] -} -``` - -There is no need to add `mainDescription: true`, as by default, the main -function (and only the main function) is linted, though you may disable checking -it by setting it to `false`. - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied (e.g., `ClassDeclaration` for ES6 classes). -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files. - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|docblock and `@description` by default but more with `tags`| -|Aliases|`@desc`| -|Settings|| -|Options|`contexts`, `tags` (accepts tags with names and optional type such as 'param', 'arg', 'argument', 'property', and 'prop', and accepts arbitrary list of other tags with an optional type (but without names), e.g., 'returns', 'return'), `mainDescription`, `matchDescription`| - -The following patterns are considered problems: - -````js -/** - * foo. - */ -const q = class { - -} -// Options: [{"contexts":["ClassExpression"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * foo. - */ -// Options: [{"contexts":["any"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * foo. - */ -// Options: [{"contexts":["any"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * foo. - */ -const q = { - -}; -// Options: [{"contexts":["ObjectExpression"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * foo. - */ -function quux () { - -} -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo) - */ -function quux () { - -} -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * тест. - */ -function quux () { - -} -// Options: [{"matchDescription":"[А-Я][А-я]+\\."}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Abc. - */ -function quux () { - -} -// Options: [{"mainDescription":"[А-Я][А-я]+\\.","tags":{"param":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo - */ -function quux () { - -} -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @param foo foo. - */ -function quux (foo) { - -} -// Options: [{"tags":{"param":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @prop foo foo. - */ -function quux (foo) { - -} -// Options: [{"tags":{"prop":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @summary foo. - */ -function quux () { - -} -// Options: [{"tags":{"summary":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @author - */ -function quux () { - -} -// Options: [{"tags":{"author":".+"}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @x-tag - */ -function quux () { - -} -// Options: [{"tags":{"x-tag":".+"}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @description foo foo. - */ -function quux (foo) { - -} -// Options: [{"tags":{"description":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo - * - * @param foo foo. - */ -function quux (foo) { - -} -// Options: [{"mainDescription":"^[a-zA-Z]*$","tags":{"param":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo - * - * @param foo foo. - */ -function quux (foo) { - -} -// Options: [{"mainDescription":false,"tags":{"param":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @param foo bar - */ -function quux (foo) { - -} -// Options: [{"tags":{"param":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * {@see Foo.bar} buz - */ -function quux (foo) { - -} -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @returns {number} foo - */ -function quux (foo) { - -} -// Options: [{"tags":{"returns":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo. - * - * @returns foo. - */ -function quux (foo) { - -} -// Options: [{"tags":{"returns":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * lorem ipsum dolor sit amet, consectetur adipiscing elit. pellentesque elit diam, - * iaculis eu dignissim sed, ultrices sed nisi. nulla at ligula auctor, consectetur neque sed, - * tincidunt nibh. vivamus sit amet vulputate ligula. vivamus interdum elementum nisl, - * vitae rutrum tortor semper ut. morbi porta ante vitae dictum fermentum. - * proin ut nulla at quam convallis gravida in id elit. sed dolor mauris, blandit quis ante at, - * consequat auctor magna. duis pharetra purus in porttitor mollis. - */ -function longDescription (foo) { - -} -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * @arg {number} foo - Foo - */ -function quux (foo) { - -} -// Options: [{"tags":{"arg":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * @argument {number} foo - Foo - */ -function quux (foo) { - -} -// Options: [{"tags":{"argument":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * @return {number} foo - */ -function quux (foo) { - -} -// Options: [{"tags":{"return":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Returns bar. - * - * @return {number} bar - */ -function quux (foo) { - -} -// Options: [{"tags":{"return":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * @param notRet - * @returns Тест. - */ -function quux () { - -} -// Options: [{"tags":{"param":"[А-Я][А-я]+\\."}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * @description notRet - * @returns Тест. - */ -function quux () { - -} -// Options: [{"tags":{"description":"[А-Я][А-я]+\\."}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * foo. - */ -class quux { - -} -// Options: [{"contexts":["ClassDeclaration"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -class MyClass { - /** - * Abc - */ - myClassField = 1 -} -// Options: [{"contexts":["ClassProperty"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * foo. - */ -interface quux { - -} -// Options: [{"contexts":["TSInterfaceDeclaration"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -const myObject = { - /** - * Bad description - */ - myProp: true -}; -// Options: [{"contexts":["Property"]}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * @param foo Foo bar - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -// Options: [{"tags":{"param":true}}] -// Message: JSDoc description does not satisfy the regex pattern. - -/** - * Foo bar - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -// Message: JSDoc description does not satisfy the regex pattern. -```` - -The following patterns are not considered problems: - -````js -/** - * - */ - -/** - * - */ - function quux () { - - } - -/** - * @param foo - Foo. - */ -function quux () { - -} -// Options: [{"tags":{"param":true}}] - -/** - * Foo. - */ -function quux () { - -} - -/** - * Foo. - * Bar. - */ -function quux () { - -} - -/** - * Foo. - * - * Bar. - */ -function quux () { - -} - -/** - * Тест. - */ -function quux () { - -} -// Options: [{"matchDescription":"[А-Я][А-я]+\\."}] - -/** - * @param notRet - * @returns Тест. - */ -function quux () { - -} -// Options: [{"tags":{"returns":"[А-Я][А-я]+\\."}}] - -/** - * @param notRet - * @description Тест. - */ -function quux () { - -} -// Options: [{"tags":{"description":"[А-Я][А-я]+\\."}}] - -/** - * Foo - * bar. - */ -function quux () { - -} - -/** - * @returns Foo bar. - */ -function quux () { - -} -// Options: [{"tags":{"returns":true}}] - -/** - * @returns {type1} Foo bar. - */ -function quux () { - -} -// Options: [{"tags":{"returns":true}}] - -/** - * @description Foo bar. - */ -function quux () { - -} -// Options: [{"tags":{"description":true}}] - -/** - * Foo. {@see Math.sin}. - */ -function quux () { - -} - -/** - * Foo {@see Math.sin} bar. - */ -function quux () { - -} - -/** - * Foo? - * - * Bar! - * - * Baz: - * 1. Foo. - * 2. Bar. - */ -function quux () { - -} - -/** - * Hello: - * World. - */ -function quux () { - -} - -/** - * Hello: world. - */ -function quux () { - -} - -/** - * Foo - * Bar. - */ -function quux () { - -} - -/** - * Foo. - * - * foo. - */ -function quux () { - -} - -/** - * foo. - */ -function quux () { - -} -// Options: [{"mainDescription":false}] - -/** - * foo. - */ -class quux { - -} - -/** - * foo. - */ -class quux { - -} -// Options: [{"mainDescription":true}] - -class MyClass { - /** - * Abc. - */ - myClassField = 1 -} -// Options: [{"contexts":["ClassProperty"]}] - -/** - * Foo. - */ -interface quux { - -} -// Options: [{"contexts":["TSInterfaceDeclaration"]}] - -const myObject = { - /** - * Bad description - */ - myProp: true -}; -// Options: [{"contexts":[]}] - -/** - * foo. - */ -const q = class { - -} -// Options: [{"contexts":[]}] - -/** - * foo. - */ -const q = { - -}; -// Options: [{"contexts":[]}] - -/** - * @description foo. - */ -function quux () { - -} -// Options: [{"tags":{"param":true}}] - -/** - * Foo. - * - * @summary Foo. - */ -function quux () { - -} -// Options: [{"tags":{"summary":true}}] - -/** - * Foo. - * - * @author Somebody - */ -function quux () { - -} -// Options: [{"tags":{"author":".+"}}] - -/** - * Foo. - * - * @x-tag something - */ -function quux () { - -} -// Options: [{"tags":{"x-tag":".+"}}] - -/** - * Foo. - * - * @prop foo Foo. - */ -function quux (foo) { - -} -// Options: [{"tags":{"prop":true}}] - -/** - * @param foo Foo bar. - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} - -/** - * - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -```` - - - -### newline-after-description - -Enforces a consistent padding of the block description. - - -#### Options - -This rule allows one optional string argument. If it is `"always"` then a problem is raised when there is no newline after the description. If it is `"never"` then a problem is raised when there is a newline after the description. The default value is `"always"`. - -||| -|---|---| -|Context|everywhere| -|Options|(a string matching `"always"|"never"`)| -|Tags|N/A (doc block)| - -The following patterns are considered problems: - -````js -/** - * Foo. - * - * Foo. - * @foo - */ -function quux () { - -} -// Options: ["always"] -// Message: There must be a newline after the description of the JSDoc block. - -/** - * Foo. - * @foo - * - * Foo. - */ -function quux () { - -} -// Options: ["always"] -// Message: There must be a newline after the description of the JSDoc block. - -/** - * Foo. - * - * Foo. - * @foo - */ -function quux () { - -} -// Message: There must be a newline after the description of the JSDoc block. - -/** - * Bar. - * - * Bar. - * - * @bar - */ -function quux () { - -} -// Options: ["never"] -// Message: There must be no newline after the description of the JSDoc block. - -/** - * Bar. - * - * @bar - * - * Bar. - */ -function quux () { - -} -// Options: ["never"] -// Message: There must be no newline after the description of the JSDoc block. - - - /** - * Bar. - * - * Bar. - * - * @bar - */ - function quux () { - - } -// Options: ["never"] -// Message: There must be no newline after the description of the JSDoc block. - -/** - * A. - * - * @typedef {object} A - * @prop {boolean} a A. - */ -// Options: ["never"] -// Message: There must be no newline after the description of the JSDoc block. - -/** - * A. - * @typedef {object} A - * @prop {boolean} a A. - */ -// Options: ["always"] -// Message: There must be a newline after the description of the JSDoc block. - - - /** - * Service for fetching symbols. - * @param {object} $http - Injected http helper. - * @param {object} $q - Injected Promise api helper. - * @param {object} $location - Injected window location object. - * @param {object} REPORT_DIALOG_CONSTANTS - Injected handle. - */ -// Message: There must be a newline after the description of the JSDoc block. -```` - -The following patterns are not considered problems: - -````js -/** - * Foo. - */ -function quux () { - -} -// Options: ["always"] - -/** - * Bar. - */ -function quux () { - -} -// Options: ["never"] - -/** - * Foo. - * - * @foo - */ -function quux () { - -} -// Options: ["always"] - -/** - * Bar. - * @bar - */ -function quux () { - -} -// Options: ["never"] - - - /** - * @foo - * Test  - * abc  - * @bar  - */ - - - /** - * - * @foo - * Test  - * abc  - * @bar  - */ - -/*** - * - */ -function quux () { - -} -// Options: ["always"] - -/** - * Parses query string to object containing URL parameters - * - * @param queryString - * Input string - * - * @returns - * Object containing URL parameters - */ -export function parseQueryString(queryString: string): { [key: string]: string } { // <-- Line 10 that fails - -} -```` - - - -### no-types - -This rule reports types being used on `@param` or `@returns`. - -The rule is intended to prevent the indication of types on tags where -the type information would be redundant with TypeScript. - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`param`, `returns`| -|Aliases|`arg`, `argument`, `return`| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @param {number} foo - */ -function quux (foo) { - -} -// Message: Types are not permitted on @param. - -/** - * @param {number} foo - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] -// Message: Types are not permitted on @param. - -/** - * @function - * @param {number} foo - */ -// Options: [{"contexts":["any"]}] -// Message: Types are not permitted on @param. - -/** - * @callback - * @param {number} foo - */ -// Options: [{"contexts":["any"]}] -// Message: Types are not permitted on @param. - -/** - * @returns {number} - */ -function quux () { - -} -// Message: Types are not permitted on @returns. -```` - -The following patterns are not considered problems: - -````js -/** - * @param foo - */ -function quux (foo) { - -} - -/** - * @param foo - */ -// Options: [{"contexts":["any"]}] - -/** - * @function - * @param {number} foo - */ - -/** - * @callback - * @param {number} foo - */ -```` - - - -### no-undefined-types - -Checks that types in jsdoc comments are defined. This can be used to check -unimported types. - -When enabling this rule, types in jsdoc comments will resolve as used -variables, i.e. will not be marked as unused by `no-unused-vars`. - -In addition to considering globals found in code (or in ESLint-indicated -`globals`) as defined, the following tags will also be checked for -name(path) definitions to also serve as a potential "type" for checking -the tag types in the table below: - -`@callback`, `@class` (or `@constructor`), `@constant` (or `@const`), `@event`, `@external` (or `@host`), `@function` (or `@func` or `@method`), `@interface`, `@member` (or `@var`), `@mixin`, `@name`, `@namespace`, `@template` (for "closure" or "typescript" `settings.jsdoc.mode` only), `@typedef`. - -The following tags will also be checked but only when the mode is `closure`: - -`@package`, `@private`, `@protected`, `@public`, `@static` - -The following types are always considered defined. - -- `null`, `undefined`, `void`, `string`, `boolean`, `object`, - `function`, `symbol` -- `number`, `bigint`, `NaN`, `Infinity` -- `any`, `*` -- `Array`, `Object`, `RegExp`, `Date`, `Function` - -Note that preferred types indicated within `settings.jsdoc.preferredTypes` will -also be assumed to be defined. - - -#### Options - -An option object may have the following key: - -- `definedTypes` - This array can be populated to indicate other types which - are automatically considered as defined (in addition to globals, etc.). - Defaults to an empty array. - -||| -|---|---| -|Context|everywhere| -|Tags|`augments`, `class`, `constant`, `enum`, `implements`, `member`, `module`, `namespace`, `param`, `property`, `returns`, `throws`, `type`, `typedef`, `yields`| -|Aliases|`constructor`, `const`, `extends`, `var`, `arg`, `argument`, `prop`, `return`, `exception`, `yield`| -|Closure-only|`package`, `private`, `protected`, `public`, `static`| -|Options|`definedTypes`| -|Settings|`preferredTypes`, `mode`| - -The following patterns are considered problems: - -````js -/** - * @param {HerType} baz - Foo. - */ -function quux(foo, bar, baz) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"HerType":1000}}} -// Message: Invalid `settings.jsdoc.preferredTypes`. Values must be falsy, a string, or an object. - -/** - * @param {HerType} baz - Foo. - */ -function quux(foo, bar, baz) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"HerType":false}}} -// Message: The type 'HerType' is undefined. - -/** - * @param {strnig} foo - Bar. - */ -function quux(foo) { - -} -// Message: The type 'strnig' is undefined. - -/** - * @param {MyType} foo - Bar. - * @param {HisType} bar - Foo. - */ -function quux(foo, bar) { - -} -// Options: [{"definedTypes":["MyType"]}] -// Message: The type 'HisType' is undefined. - -/** - * @param {MyType} foo - Bar. - * @param {HisType} bar - Foo. - * @param {HerType} baz - Foo. - */ -function quux(foo, bar, baz) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"hertype":{"replacement":"HerType"}}}} -// Options: [{"definedTypes":["MyType"]}] -// Message: The type 'HisType' is undefined. - - /** - * @param {MyType} foo - Bar. - * @param {HisType} bar - Foo. - * @param {HerType} baz - Foo. - */ -function quux(foo, bar, baz) { - -} -// Settings: {"jsdoc":{"preferredTypes":{"hertype":{"replacement":false},"histype":"HisType"}}} -// Options: [{"definedTypes":["MyType"]}] -// Message: The type 'HerType' is undefined. - -/** - * @template TEMPLATE_TYPE - * @param {WRONG_TEMPLATE_TYPE} bar - */ -function foo (bar) { -}; -// Settings: {"jsdoc":{"mode":"closure"}} -// Message: The type 'WRONG_TEMPLATE_TYPE' is undefined. - -class Foo { - /** - * @return {TEMPLATE_TYPE} - */ - bar () { - } -} -// Message: The type 'TEMPLATE_TYPE' is undefined. - -class Foo { - /** - * @return {TEMPLATE_TYPE} - */ - invalidTemplateReference () { - } -} - -/** - * @template TEMPLATE_TYPE - */ -class Bar { - /** - * @return {TEMPLATE_TYPE} - */ - validTemplateReference () { - } -} -// Settings: {"jsdoc":{"mode":"typescript"}} -// Message: The type 'TEMPLATE_TYPE' is undefined. - -/** - * @type {strnig} - */ -var quux = { - -}; -// Message: The type 'strnig' is undefined. - -/** - * @template TEMPLATE_TYPE_A, TEMPLATE_TYPE_B - */ -class Foo { - /** - * @param {TEMPLATE_TYPE_A} baz - * @return {TEMPLATE_TYPE_B} - */ - bar (baz) { - } -} -// Message: The type 'TEMPLATE_TYPE_A' is undefined. - -/** - * @param {...VAR_TYPE} varargs - */ -function quux (varargs) { -} -// Message: The type 'VAR_TYPE' is undefined. - -/** - * @this {Navigator} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} -// Message: The type 'Navigator' is undefined. - -/** - * @export {SomeType} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} -// Message: The type 'SomeType' is undefined. -```` - -The following patterns are not considered problems: - -````js -/** - * @param {string} foo - Bar. - */ -function quux(foo) { - -} - -/** - * @param {Promise} foo - Bar. - */ -function quux(foo) { - -} - -class MyClass {} - -/** - * @param {MyClass} foo - Bar. - */ -function quux(foo) { - console.log(foo); -} - -quux(0); - -const MyType = require('my-library').MyType; - -/** - * @param {MyType} foo - Bar. - */ - function quux(foo) { - -} - -const MyType = require('my-library').MyType; - -/** - * @param {MyType} foo - Bar. - */ - function quux(foo) { - -} - -import {MyType} from 'my-library'; - -/** - * @param {MyType} foo - Bar. - * @param {object} foo - * @param {Array} baz - */ - function quux(foo, bar, baz) { - -} - -/*globals MyType*/ - -/** - * @param {MyType} foo - Bar. - * @param {HisType} bar - Foo. - */ - function quux(foo, bar) { - -} - -/** - * @typedef {object} hello - * @property {string} a - a. - */ - -/** - * @param {hello} foo - */ -function quux(foo) { - -} - -/** - * @param {Array"},"histype":"HisType.<>"}}} -// Options: [{"definedTypes":["MyType"]}] - -/** - * @template TEMPLATE_TYPE - * @param {TEMPLATE_TYPE} bar - * @return {TEMPLATE_TYPE} - */ -function foo (bar) { -}; -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @template TEMPLATE_TYPE - */ -class Foo { - /** - * @return {TEMPLATE_TYPE} - */ - bar () { - } -} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @template TEMPLATE_TYPE - */ -class Foo { - /** - * @return {TEMPLATE_TYPE} - */ - bar () {} - - /** - * @return {TEMPLATE_TYPE} - */ - baz () {} -} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @template TEMPLATE_TYPE_A, TEMPLATE_TYPE_B - */ -class Foo { - /** - * @param {TEMPLATE_TYPE_A} baz - * @return {TEMPLATE_TYPE_B} - */ - bar (baz) { - } -} -// Settings: {"jsdoc":{"mode":"closure"}} - -/****/ - -/** - * - */ -function quux () { - -} - -/** - * Run callback when hooked method is called. - * - * @template {BaseObject} T - * @param {T} obj - object whose method should be hooked. - * @param {string} method - method which should be hooked. - * @param {(sender: T) => void} callback - callback which should - * be called when the hooked method was invoked. - */ -function registerEvent(obj, method, callback) { - -} -// Settings: {"jsdoc":{"mode":"typescript"}} - - /** - * @param {...} varargs - */ -function quux (varargs) { -} - -/** - * @param {...number} varargs - */ -function quux (varargs) { -} - -class Navigator {} -/** - * @this {Navigator} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} - -class SomeType {} -/** - * @export {SomeType} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} -```` - - - -### require-description-complete-sentence - -Requires that block description, explicit `@description`, and `@param`/`@returns` -tag descriptions are written in complete sentences, i.e., - -* Description must start with an uppercase alphabetical character. -* Paragraphs must start with an uppercase alphabetical character. -* Sentences must end with a period. -* Every line in a paragraph (except the first) which starts with an uppercase - character must be preceded by a line ending with a period. -* A colon or semi-colon followed by two line breaks is still part of the - containing paragraph (unlike normal dual line breaks). -* Text within inline tags `{...}` are not checked for sentence divisions. -* Periods after items within the `abbreviations` option array are not treated - as sentence endings. - - -#### Options - - -##### tags - -If you want additional tags to be checked for their descriptions, you may -add them within this option. - -```js -{ - 'jsdoc/require-description-complete-sentence': ['error', {tags: ['see', 'copyright']}] -} -``` - -The tags `@param`/`@arg`/`@argument` and `@property`/`@prop` will be properly -parsed to ensure that the checked "description" text includes only the text -after the name. - -All other tags will treat the text following the tag name, a space, and -an optional curly-bracketed type expression (and another space) as part of -its "description" (e.g., for `@returns {someType} some description`, the -description is `some description` while for `@some-tag xyz`, the description -is `xyz`). - - -##### abbreviations - -You can provide an `abbreviations` options array to avoid such strings of text -being treated as sentence endings when followed by dots. The `.` is not -necessary at the end of the array items. - -||| -|---|---| -|Context|everywhere| -|Tags|doc block, `param`, `returns`, `description`, `property`, `summary`, `file`, `classdesc`, `todo`, `deprecated`, `throws`, 'yields' and others added by `tags`| -|Aliases|`arg`, `argument`, `return`, `desc`, `prop`, `fileoverview`, `overview`, `exception`, `yield`| -|Options|`tags`, `abbreviations`| -The following patterns are considered problems: - -````js -/** - * foo. - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * foo? - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * @description foo. - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Foo) - */ -function quux () { - -} -// Message: Sentence must end with a period. - -/** - * `foo` is a variable - */ -function quux () { - -} -// Message: Sentence must end with a period. - -/** - * Foo. - * - * foo. - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * тест. - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Foo - */ -function quux () { - -} -// Message: Sentence must end with a period. - -/** - * Foo - * Bar. - */ -function quux () { - -} -// Message: A line of text is started with an uppercase character, but preceding line does not end the sentence. - -/** - * Foo. - * - * @param foo foo. - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Foo. - * - * @param foo bar - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * {@see Foo.bar} buz - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Foo. - * - * @returns {number} foo - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Foo. - * - * @returns foo. - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * lorem ipsum dolor sit amet, consectetur adipiscing elit. pellentesque elit diam, - * iaculis eu dignissim sed, ultrices sed nisi. nulla at ligula auctor, consectetur neque sed, - * tincidunt nibh. vivamus sit amet vulputate ligula. vivamus interdum elementum nisl, - * vitae rutrum tortor semper ut. morbi porta ante vitae dictum fermentum. - * proin ut nulla at quam convallis gravida in id elit. sed dolor mauris, blandit quis ante at, - * consequat auctor magna. duis pharetra purus in porttitor mollis. - */ -function longDescription (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * @arg {number} foo - Foo - */ -function quux (foo) { - -} -// Message: Sentence must end with a period. - -/** - * @argument {number} foo - Foo - */ -function quux (foo) { - -} -// Message: Sentence must end with a period. - -/** - * @return {number} foo - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Returns bar. - * - * @return {number} bar - */ -function quux (foo) { - -} -// Message: Sentence should start with an uppercase character. - -/** - * @throws {object} Hello World - * hello world -*/ -// Message: Sentence must end with a period. - -/** - * @summary Foo - */ -function quux () { - -} -// Message: Sentence must end with a period. - -/** - * @throws {SomeType} Foo - */ -function quux () { - -} -// Message: Sentence must end with a period. - -/** - * @see Foo - */ -function quux () { - -} -// Options: [{"tags":["see"]}] -// Message: Sentence must end with a period. - -/** - * @param foo Foo bar - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -// Options: [{"tags":["param"]}] -// Message: Sentence must end with a period. - -/** - * Sorry, but this isn't a complete sentence, Mr. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr"]}] -// Message: Sentence must end with a period. - -/** - * Sorry, but this isn't a complete sentence Mr. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr."]}] -// Message: Sentence must end with a period. - -/** - * Sorry, but this isn't a complete sentence Mr. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr"]}] -// Message: Sentence must end with a period. - -/** - * Sorry, but this isn't a complete sentence Mr. and Mrs. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr","Mrs"]}] -// Message: Sentence must end with a period. - -/** - * This is a complete sentence. But this isn't, Mr. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr"]}] -// Message: Sentence must end with a period. - -/** - * This is a complete Mr. sentence. But this isn't, Mr. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr"]}] -// Message: Sentence must end with a period. - -/** - * This is a complete Mr. sentence. - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * This is fun, i.e. enjoyable, but not superlatively so, e.g. not - * super, wonderful, etc.. - */ -function quux () { - -} -// Message: Sentence should start with an uppercase character. - -/** - * Do not have dynamic content; e.g. homepage. Here a simple unique id - * suffices. - */ - function quux () { - - } -// Message: Sentence should start with an uppercase character. -```` - -The following patterns are not considered problems: - -````js -/** - * @param foo - Foo. - */ -function quux () { - -} - -/** - * Foo. - */ -function quux () { - -} - -/** - * Foo. - * Bar. - */ -function quux () { - -} - -/** - * Foo. - * - * Bar. - */ -function quux () { - -} - -/** - * Тест. - */ -function quux () { - -} - -/** - * Foo - * bar. - */ -function quux () { - -} - -/** - * @returns Foo bar. - */ -function quux () { - -} - -/** - * Foo. {@see Math.sin}. - */ -function quux () { - -} - -/** - * Foo {@see Math.sin} bar. - */ -function quux () { - -} - -/** - * Foo? - * - * Bar! - * - * Baz: - * 1. Foo. - * 2. Bar. - */ -function quux () { - -} - -/** - * Hello: - * World. - */ -function quux () { - -} - -/** - * Hello: world. - */ -function quux () { - -} - -/** - * - */ -function quux () { - -} - -/** - * @description Foo. - */ -function quux () { - -} - -/** - * `foo` is a variable. - */ -function quux () { - -} - -/** - * Foo. - * - * `foo`. - */ -function quux () { - -} - -/** - * @param foo - `bar`. - */ -function quux () { - -} - -/** - * @returns {number} `foo`. - */ -function quux () { - -} - -/** - * Foo - * `bar`. - */ -function quux () { - -} - -/** - * @example Foo - */ -function quux () { - -} - -/** - * @see Foo - */ -function quux () { - -} - -/** - * Foo. - * - * @param foo Foo. - */ -function quux (foo) { - -} - -/** - * Foo. - * - * @param foo Foo. - */ -function quux (foo) { - -} -// Options: [{"tags":["param"]}] - -/** - * @param foo Foo bar. - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -// Options: [{"tags":["param"]}] - -/** - * - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} - -/** -* We stop loading Items when we have loaded: -* -* 1) The main Item; -* 2) All its variants. -*/ - -/** - * This method is working on 2 steps. - * - * | Step | Comment | - * |------|-------------| - * | 1 | do it | - * | 2 | do it again | - */ - -/** - * This is something that - * I want to test. - */ -function quux () { - -} - -/** - * When making HTTP requests, the - * URL is super important. - */ -function quux () { - -} - -/** - * Sorry, but this isn't a complete sentence, Mr. - */ -function quux () { - -} - -/** - * Sorry, but this isn't a complete sentence Mr.. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr."]}] - -/** - * Sorry, but this isn't a complete sentence Mr. - */ -function quux () { - -} - -/** - * Sorry, but this isn't a complete sentence Mr. and Mrs.. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr","Mrs"]}] - -/** - * This is a complete sentence aMr. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr"]}] - -/** - * This is a complete sentence. But this isn't, Mr. - */ -function quux () { - -} - -/** - * This is a complete Mr. Sentence. But this isn't, Mr. - */ -function quux () { - -} - -/** - * This is a complete Mr. sentence. - */ -function quux () { - -} -// Options: [{"abbreviations":["Mr"]}] - -/** - * This is fun, i.e. enjoyable, but not superlatively so, e.g. not - * super, wonderful, etc.. - */ -function quux () { - -} -// Options: [{"abbreviations":["etc","e.g.","i.e."]}] - - -** -* Do not have dynamic content; e.g. homepage. Here a simple unique id -* suffices. -*/ -function quux () { - -} -// Options: [{"abbreviations":["etc","e.g.","i.e."]}] -```` - - - -### require-description - -Requires that all functions have a description. - -* All functions must have an implicit description or have the option - `descriptionStyle` set to `tag`. -* Every jsdoc block description (or description tag if `descriptionStyle` is - `"tag"`) must have a non-empty description that explains the purpose of the - method. - - -#### Options - -An options object may have any of the following properties: - -- `contexts` - Set to an array of strings representing the AST context - where you wish the rule to be applied (e.g., `ClassDeclaration` for ES6 - classes). Overrides the default contexts (see below). Set to `"any"` if - you want the rule to apply to any jsdoc block throughout your files. -- `exemptedBy` - Array of tags (e.g., `['type']`) whose presence on the - document block avoids the need for a `@description`. Defaults to an - empty array. -- `descriptionStyle` - Whether to accept implicit descriptions (`"body"`) or - `@description` tags (`"tag"`) as satisfying the rule. Set to `"any"` to - accept either style. Defaults to `"body"`. - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`description` or jsdoc block| -|Aliases|`desc`| -|Options|`contexts`, `exemptedBy`, `descriptionStyle`| -|Settings|`overrideReplacesDocs`, `augmentsExtendsReplacesDocs`, `implementsReplacesDocs`| - -The following patterns are considered problems: - -````js -/** - * - */ -function quux () { - -} -// Options: [{"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * - */ -function quux () { - -} -// Options: [{"descriptionStyle":"any"}] -// Message: Missing JSDoc block description or @description declaration. - -/** - * - */ -function quux () { - -} -// Options: [{"descriptionStyle":"body"}] -// Message: Missing JSDoc block description. - -/** - * - */ -class quux { - -} -// Options: [{"contexts":["ClassDeclaration"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * - */ -// Options: [{"contexts":["any"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * - */ -class quux { - -} -// Options: [{"contexts":["ClassDeclaration"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * - */ -class quux { - -} -// Options: [{"contexts":["ClassDeclaration"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * @description - */ -function quux () { - -} -// Options: [{"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description description. - -/** - * - */ -interface quux { - -} -// Options: [{"contexts":["TSInterfaceDeclaration"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * - */ -var quux = class { - -}; -// Options: [{"contexts":["ClassExpression"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * - */ -var quux = { - -}; -// Options: [{"contexts":["ObjectExpression"],"descriptionStyle":"tag"}] -// Message: Missing JSDoc @description declaration. - -/** - * @someDesc - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":{"message":"Please avoid `{{tagName}}`; use `{{replacement}}` instead","replacement":"someDesc"}}}} -// Options: [{"descriptionStyle":"tag"}] -// Message: Missing JSDoc @someDesc description. - -/** - * @description - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -// Options: [{"descriptionStyle":"tag"}] -// Message: Unexpected tag `@description` - -/** - * @description - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -// Options: [{"descriptionStyle":"any"}] -// Message: Missing JSDoc block description or @description declaration. - -/** - * - */ -function quux () { -} -// Options: [{"exemptedBy":["notPresent"]}] -// Message: Missing JSDoc block description. -```` - -The following patterns are not considered problems: - -````js -/** - * - */ - -/** - * @description - * // arbitrary description content - */ -function quux () { - -} -// Options: [{"descriptionStyle":"tag"}] - -/** - * @description - * quux(); // does something useful - */ -function quux () { - -} -// Options: [{"descriptionStyle":"tag"}] - -/** - * @description Valid usage - * quux(); // does something useful - * - * @description Invalid usage - * quux('random unwanted arg'); // results in an error - */ -function quux () { - -} -// Options: [{"descriptionStyle":"tag"}] - -/** - * - */ -class quux { - -} -// Options: [{"descriptionStyle":"tag"}] - -/** - * - */ -function quux () { - -} -// Options: [{"contexts":["ClassDeclaration"]}] - -/** - * @type {MyCallback} - */ -function quux () { - -} -// Options: [{"exemptedBy":["type"]}] - -/** - * - */ -interface quux { - -} -// Options: [{"descriptionStyle":"tag"}] - -/** - * - */ -var quux = class { - -}; -// Options: [{"descriptionStyle":"tag"}] - -/** - * - */ -var quux = { - -}; -// Options: [{"descriptionStyle":"tag"}] - -/** - * Has an implicit description - */ -function quux () { - -} -// Options: [{"descriptionStyle":"body"}] - -/** - * Has an implicit description - */ -function quux () { - -} - -/** - * Has an implicit description - */ -function quux () { - -} -// Options: [{"descriptionStyle":"any"}] - -/** - * @description Has an explicit description - */ -function quux () { - -} -// Options: [{"descriptionStyle":"any"}] - -/** - * - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"description":false}}} -```` - - - -### require-example - -Requires that all functions have examples. - -* All functions must have one or more `@example` tags. -* Every example tag must have a non-empty description that explains the method's usage. - - -#### Options - -This rule has an object option. - - -##### exemptedBy - -Array of tags (e.g., `['type']`) whose presence on the document -block avoids the need for an `@example`. Defaults to an empty array. - - -##### avoidExampleOnConstructors - -Set to `true` to avoid the need for an example on a constructor (whether -indicated as such by a jsdoc tag or by being within an ES6 `class`). -Defaults to `false`. - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied (e.g., `ClassDeclaration` for ES6 classes). -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files. - - -#### Fixer - -The fixer for `require-example` will add an empty `@example`, but it will still -report a missing example description after this is added. - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`example`| -|Options|`exemptedBy`, `avoidExampleOnConstructors`, `contexts`| -|Settings|`overrideReplacesDocs`, `augmentsExtendsReplacesDocs`, `implementsReplacesDocs`| - -The following patterns are considered problems: - -````js -/** - * - */ -function quux () { - -} -// Message: Missing JSDoc @example declaration. - -/** - * @example - */ -function quux () { - -} -// Message: Missing JSDoc @example description. - -/** - * @constructor - */ -function f () { - -} -// Settings: {"jsdoc":{"avoidExampleOnConstructors":true}} -// Message: `settings.jsdoc.avoidExampleOnConstructors` has been removed, use options in the rule `require-example` instead. - -/** - * @constructor - */ -function quux () { - -} -// Message: Missing JSDoc @example declaration. - -/** - * @constructor - * @example - */ -function quux () { - -} -// Message: Missing JSDoc @example description. - -/** - * - */ -class quux { - -} -// Options: [{"contexts":["ClassDeclaration"]}] -// Message: Missing JSDoc @example declaration. - -/** - * - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @example declaration. - -/** - * - */ -function quux () { -} -// Options: [{"exemptedBy":["notPresent"]}] -// Message: Missing JSDoc @example declaration. -```` - -The following patterns are not considered problems: - -````js -/** - * - */ - -/** - * @example - * // arbitrary example content - */ -function quux () { - -} - -/** - * @example - * quux(); // does something useful - */ -function quux () { - -} - -/** - * @example Valid usage - * quux(); // does something useful - * - * @example Invalid usage - * quux('random unwanted arg'); // results in an error - */ -function quux () { - -} - -/** - * @constructor - */ -function quux () { - -} -// Options: [{"avoidExampleOnConstructors":true}] - -/** - * @constructor - * @example - */ -function quux () { - -} -// Options: [{"avoidExampleOnConstructors":true}] - -class Foo { - /** - * - */ - constructor () { - - } -} -// Options: [{"avoidExampleOnConstructors":true}] - -/** - * @inheritdoc - */ -function quux () { - -} - -/** - * @type {MyCallback} - */ -function quux () { - -} -// Options: [{"exemptedBy":["type"]}] - -/** - * @example Some example code - */ -class quux { - -} -// Options: [{"contexts":["ClassDeclaration"]}] - -/** - * - */ -function quux () { - -} -// Options: [{"contexts":["ClassDeclaration"]}] -```` - - - -### require-file-overview - -Checks that: - -1. All files have a `@file`, `@fileoverview`, or `@overview` tag. -2. Duplicate file overview tags within a given file will be reported -3. File overview tags will be reported which are not, as per - [the docs](https://jsdoc.app/tags-file.html), "at the beginning of - the file"–where beginning of the file is interpreted in this rule - as being when the overview tag is not preceded by anything other than - a comment. - - -#### Options - - -##### tags - -The keys of this object are tag names, and the values are configuration -objects indicating what will be checked for these whole-file tags. - -Each configuration object has the following boolean keys (which default -to `false` when this option is supplied): `mustExist`, `preventDuplicates`, -`initialCommentsOnly`. These correspond to the three items above. - -When no `tags` is present, the default is: - -```json -{ - "file": { - "initialCommentsOnly": true, - "mustExist": true, - "preventDuplicates": true, - } -} -``` - -You can add additional tag names and/or override `file` if you supply this -option, e.g., in place of or in addition to `file`, giving other potential -file global tags like `@license`, `@copyright`, `@author`, `@module` or -`@exports`, optionally restricting them to a single use or preventing them -from being preceded by anything besides comments. - -For example: - -```js -{ - "license": { - "mustExist": true, - "preventDuplicates": true, - } -} -``` - -This would require one and only one `@license` in the file, though because -`initialCommentsOnly` is absent and defaults to `false`, the `@license` -can be anywhere. - -In the case of `@license`, you can use this rule along with the -`check-values` rule (with its `allowedLicenses` or `licensePattern` options), -to enforce a license whitelist be present on every JS file. - -Note that if you choose to use `preventDuplicates` with `license`, you still -have a way to allow multiple licenses for the whole page by using the SPDX -"AND" expression, e.g., `@license (MIT AND GPL-3.0)`. - -Note that the tag names are the main jsdoc tag name, so you should use `file` -in this configuration object regardless of whether you have configured -`fileoverview` instead of `file` on `tagNamePreference` (i.e., `fileoverview` -will be checked, but you must use `file` on the configuration object). - -||| -|---|---| -|Context|Everywhere| -|Tags|`file`; others when `tags` set| -|Aliases|`fileoverview`, `overview`| -|Options|`tags`| - -The following patterns are considered problems: - -````js - -// Message: Missing @file - - -// Options: [{"tags":{"file":{"initialCommentsOnly":true,"mustExist":true,"preventDuplicates":true}}}] -// Message: Missing @file - - -// Options: [{"tags":{"file":{"mustExist":true}}}] -// Message: Missing @file - - -// Options: [{"tags":{"author":{"initialCommentsOnly":false,"mustExist":true,"preventDuplicates":false}}}] -// Message: Missing @author - -/** - * - */ -// Message: Missing @file - -/** - * - */ -function quux () {} -// Message: Missing @file - -/** - * - */ -function quux () {} -// Settings: {"jsdoc":{"tagNamePreference":{"file":"fileoverview"}}} -// Message: Missing @fileoverview - -/** - * - */ -function quux () {} -// Settings: {"jsdoc":{"tagNamePreference":{"file":"overview"}}} -// Message: Missing @overview - -/** - * - */ -function quux () {} -// Settings: {"jsdoc":{"tagNamePreference":{"file":false}}} -// Message: `settings.jsdoc.tagNamePreference` cannot block @file for the `require-file-overview` rule - -/** - * - */ -function quux () {} -// Settings: {"jsdoc":{"tagNamePreference":{"file":false}}} -// Options: [{"tags":{"file":{"initialCommentsOnly":false,"mustExist":true,"preventDuplicates":false}}}] -// Message: `settings.jsdoc.tagNamePreference` cannot block @file for the `require-file-overview` rule - -/** - * - */ -function quux () {} -// Settings: {"jsdoc":{"tagNamePreference":{"file":{"message":"Don't use file"}}}} -// Message: `settings.jsdoc.tagNamePreference` cannot block @file for the `require-file-overview` rule - -/** - * @param a - */ -function quux (a) {} -// Message: Missing @file - -/** - * @param a - */ -function quux (a) {} - -/** - * @param b - */ -function bar (b) {} -// Message: Missing @file - -/** - * @file - */ - - /** - * @file - */ -// Message: Duplicate @file - -/** - * @copyright - */ - - /** - * @copyright - */ -// Options: [{"tags":{"copyright":{"initialCommentsOnly":false,"mustExist":false,"preventDuplicates":true}}}] -// Message: Duplicate @copyright - -function quux () { -} -/** - * @file - */ -// Message: @file should be at the beginning of the file - -function quux () { -} -/** - * @license - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":true,"mustExist":false,"preventDuplicates":false}}}] -// Message: @license should be at the beginning of the file - -function quux () { -} -/** - * @license - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":true}}}] -// Message: @license should be at the beginning of the file - -/** - * @file - */ - -/** - * @file - */ -// Options: [{"tags":{"file":{"initialCommentsOnly":true,"preventDuplicates":true}}}] -// Message: Duplicate @file -```` - -The following patterns are not considered problems: - -````js -/** - * @file - */ - -/** - * @file - */ - -/** - * @file - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":true,"preventDuplicates":true}}}] - -// Ok preceded by comment -/** - * @file - */ - -/** - * @fileoverview - */ -// Settings: {"jsdoc":{"tagNamePreference":{"file":"fileoverview"}}} - -/** - * @overview - */ -// Settings: {"jsdoc":{"tagNamePreference":{"file":"overview"}}} - -/** - * @file Description of file - */ - -/** - * @file Description of file - */ -function quux () { -} - -/** - * - */ - -function quux () { -} -/** - * - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":true,"mustExist":false,"preventDuplicates":false}}}] - -function quux () { -} -/** - * - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":false,"mustExist":false,"preventDuplicates":false}}}] - -function quux () { -} -/** - * - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":false,"mustExist":false,"preventDuplicates":true}}}] - -/** - * @license MIT - */ - - var a - - /** - * @type {Array} - */ -// Options: [{"tags":{"license":{"initialCommentsOnly":true,"mustExist":false,"preventDuplicates":false}}}] -```` - - - -### require-hyphen-before-param-description - -Requires a hyphen before the `@param` description. - - -#### Options - -This rule takes one optional string argument and an optional options object. - -If the string is `"always"` then a problem is raised when there is no hyphen -before the description. If it is `"never"` then a problem is raised when there -is a hyphen before the description. The default value is `"always"`. - -The options object may have the following properties: - -- `checkProperties` - Boolean on whether to also apply the rule to `@property` - tags. - -||| -|---|---| -|Context|everywhere| -|Tags|`param` and optionally `property`| -|Aliases|`arg`, `argument`; optionally `prop`| -|Options|(a string matching `"always"|"never"`) and an optional object with a `checkProperties` property| - -The following patterns are considered problems: - -````js -/** - * @param foo Foo. - */ -function quux () { - -} -// Options: ["always"] -// Message: There must be a hyphen before @param description. - -/** - * @param foo Foo. - */ -function quux () { - -} -// Message: There must be a hyphen before @param description. - -/** - * @param foo - Foo. - */ -function quux () { - -} -// Options: ["never"] -// Message: There must be no hyphen before @param description. - -/** - * @param foo - foo - * @param foo foo - */ -function quux () { - -} -// Options: ["always"] -// Message: There must be a hyphen before @param description. - -/** - * @param foo foo - * bar - * @param bar - bar - */ -function quux () { - -} -// Options: ["always"] -// Message: There must be a hyphen before @param description. - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":false}}} -// Message: Unexpected tag `@param` - -/** - * @typedef {SomeType} ATypeDefName - * @property foo Foo. - */ -// Options: ["always",{"checkProperties":true}] -// Message: There must be a hyphen before @property description. - -/** - * @typedef {SomeType} ATypeDefName - * @property foo - Foo. - */ -// Options: ["never",{"checkProperties":true}] -// Message: There must be no hyphen before @property description. -```` - -The following patterns are not considered problems: - -````js -/** - * @param foo - Foo. - */ -function quux () { - -} -// Options: ["always"] - -/** - * @param foo Foo. - */ -function quux () { - -} -// Options: ["never"] - -/** - * @param foo - */ -function quux () { - -} - -/** - * @typedef {SomeType} ATypeDefName - * @property foo - Foo. - */ -// Options: ["always",{"checkProperties":true}] - -/** - * @typedef {SomeType} ATypeDefName - * @property foo Foo. - */ -// Options: ["never",{"checkProperties":true}] -```` - - - -### require-jsdoc - -Checks for presence of jsdoc comments, on class declarations as well as -functions. - - -#### Options - -Accepts one optional options object with the following optional keys. - -- `publicOnly` - This option will insist that missing jsdoc blocks are - only reported for function bodies / class declarations that are exported - from the module. May be a boolean or object. If set to `true`, the defaults - below will be used. If unset, jsdoc block reporting will not be limited to - exports. - - This object supports the following optional boolean keys (`false` unless - otherwise noted): - - - `ancestorsOnly` - Only check node ancestors to check if node is exported - - `esm` - ESM exports are checked for JSDoc comments (Defaults to `true`) - - `cjs` - CommonJS exports are checked for JSDoc comments (Defaults to `true`) - - `window` - Window global exports are checked for JSDoc comments - -- `require` - An object with the following optional boolean keys which all - default to `false` except as noted, indicating the contexts where the rule - will apply: - - - `ArrowFunctionExpression` - - `ClassDeclaration` - - `ClassExpression` - - `FunctionDeclaration` (defaults to `true`) - - `FunctionExpression` - - `MethodDefinition` - -- `contexts` - Set this to an array of strings representing the additional - AST contexts where you wish the rule to be applied (e.g., `Property` for - properties). Defaults to an empty array. - -- `exemptEmptyFunctions` (default: false) - When `true`, the rule will not report - missing jsdoc blocks above functions/methods with no parameters or return values - (intended where variable names are sufficient for themselves as documentation). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `ClassDeclaration`, `ClassExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|N/A| -|Options|`publicOnly`, `require`, `contexts`, `exemptEmptyFunctions`| - -The following patterns are considered problems: - -````js -/** - * @func myFunction - */ -function myFunction() { - -} -// Settings: {"jsdoc":{"maxLines":3,"minLines":2}} -// Message: Missing JSDoc comment. - -/** - * @func myFunction - */ - - -function myFunction() { - -} -// Settings: {"jsdoc":{"maxLines":2}} -// Message: Missing JSDoc comment. - -/** @func myFunction */ function myFunction() { - -} -// Settings: {"jsdoc":{"minLines":1}} -// Message: Missing JSDoc comment. - -export var test = function () { - -}; -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -function test () { - -} -export var test2 = test; -// Options: [{"publicOnly":true,"require":{"FunctionDeclaration":true}}] -// Message: Missing JSDoc comment. - -export const test = () => { - -}; -// Options: [{"publicOnly":true,"require":{"ArrowFunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export let test = class { - -}; -// Options: [{"publicOnly":true,"require":{"ClassExpression":true}}] -// Message: Missing JSDoc comment. - -export default function () {} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"FunctionDeclaration":true}}] -// Message: Missing JSDoc comment. - -export default () => {} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"ArrowFunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export default (function () {}) -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export default class {} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"ClassDeclaration":true}}] -// Message: Missing JSDoc comment. - -function quux (foo) { - -} -// Message: Missing JSDoc comment. - - -// Settings: {"jsdoc":{"exemptEmptyFunctions":true}} -// Message: `settings.jsdoc.exemptEmptyFunctions` has been removed, use options in the rule `require-jsdoc` instead. - -function quux (foo) { - -} -// Options: [{"exemptEmptyFunctions":true}] -// Message: Missing JSDoc comment. - -function quux (foo) { - -} -// Settings: {"jsdoc":{"minLines":2}} -// Options: [{"exemptEmptyFunctions":true}] -// Message: Missing JSDoc comment. - -function myFunction() {} -// Message: Missing JSDoc comment. - -/** - * Description for A. - */ -class A { - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] -// Message: Missing JSDoc comment. - -class A { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] -// Message: Missing JSDoc comment. - -class A extends B { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] -// Message: Missing JSDoc comment. - -export class A extends B { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] -// Message: Missing JSDoc comment. - -export default class A extends B { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] -// Message: Missing JSDoc comment. - -var myFunction = () => {} -// Options: [{"require":{"ArrowFunctionExpression":true}}] -// Message: Missing JSDoc comment. - -var myFunction = () => () => {} -// Options: [{"require":{"ArrowFunctionExpression":true}}] -// Message: Missing JSDoc comment. - -var foo = function() {} -// Options: [{"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -const foo = {bar() {}} -// Options: [{"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -var foo = {bar: function() {}} -// Options: [{"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -function foo (abc) {} -// Options: [{"exemptEmptyFunctions":false}] -// Message: Missing JSDoc comment. - -function foo () { - return true; -} -// Options: [{"exemptEmptyFunctions":false}] -// Message: Missing JSDoc comment. - -module.exports = function quux () { - -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -module.exports = function quux () { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -module.exports = { - method: function() { - - } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -module.exports = { - test: { - test2: function() { - - } - } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -module.exports = { - test: { - test2: function() { - - } - } -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -const test = module.exports = function () { - -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -/** -* -*/ -const test = module.exports = function () { - -} - -test.prototype.method = function() {} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -const test = function () { - -} -module.exports = { - test: test -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -const test = () => { - -} -module.exports = { - test: test -} -// Options: [{"publicOnly":true,"require":{"ArrowFunctionExpression":true}}] -// Message: Missing JSDoc comment. - -class Test { - method() { - - } -} -module.exports = Test; -// Options: [{"publicOnly":true,"require":{"MethodDefinition":true}}] -// Message: Missing JSDoc comment. - -export default function quux () { - -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export default function quux () { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -function quux () { - -} -export default quux; -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export function test() { - -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export function test() { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -var test = function () { - -} -var test2 = 2; -export { test, test2 } -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -var test = function () { - -} -export { test as test2 } -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export default class A { - -} -// Options: [{"publicOnly":true,"require":{"ClassDeclaration":true}}] -// Message: Missing JSDoc comment. - -export default class A { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"ClassDeclaration":true}}] -// Message: Missing JSDoc comment. - -var test = function () { - -} -// Options: [{"publicOnly":{"window":true},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -window.test = function () { - -} -// Options: [{"publicOnly":{"window":true},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -function test () { - -} -// Options: [{"publicOnly":{"window":true}}] -// Message: Missing JSDoc comment. - -module.exports = function() { - -} -// Options: [{"publicOnly":{"cjs":true,"esm":false,"window":false},"require":{"FunctionExpression":true}}] -// Message: Missing JSDoc comment. - -export function someMethod() { - -} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"FunctionDeclaration":true}}] -// Message: Missing JSDoc comment. - -export function someMethod() { - -} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"FunctionDeclaration":true}}] -// Message: Missing JSDoc comment. - -const myObject = { - myProp: true -}; -// Options: [{"contexts":["Property"]}] -// Message: Missing JSDoc comment. - -/** - * Foo interface documentation. - */ -export interface Foo extends Bar { - /** - * baz method documentation. - */ - baz(): void; - - meow(): void; -} -// Options: [{"contexts":["TSMethodSignature"]}] -// Message: Missing JSDoc comment. -```` - -The following patterns are not considered problems: - -````js -/** - * - */ - -var array = [1,2,3]; -array.forEach(function() {}); - -/** - * @class MyClass - **/ -function MyClass() {} - -/** - Function doing something - */ -function myFunction() {} -/** - Function doing something - */ -var myFunction = function() {}; -/** - Function doing something - */ -Object.myFunction = function () {}; -var obj = { - /** - * Function doing something - **/ - myFunction: function () {} }; - -/** - @func myFunction - */ -function myFunction() {} -/** - @method myFunction - */ -function myFunction() {} -/** - @function myFunction - */ -function myFunction() {} - -/** - @func myFunction - */ -var myFunction = function () {} -/** - @method myFunction - */ -var myFunction = function () {} -/** - @function myFunction - */ -var myFunction = function () {} - -/** - @func myFunction - */ -Object.myFunction = function() {} -/** - @method myFunction - */ -Object.myFunction = function() {} -/** - @function myFunction - */ -Object.myFunction = function() {} -(function(){})(); - -var object = { - /** - * @func myFunction - Some function - */ - myFunction: function() {} } -var object = { - /** - * @method myFunction - Some function - */ - myFunction: function() {} } -var object = { - /** - * @function myFunction - Some function - */ - myFunction: function() {} } - -var array = [1,2,3]; -array.filter(function() {}); -Object.keys(this.options.rules || {}).forEach(function(name) {}.bind(this)); -var object = { name: 'key'}; -Object.keys(object).forEach(function() {}) - -/** - * @func myFunction - */ - -function myFunction() { - -} -// Settings: {"jsdoc":{"maxLines":2,"minLines":0}} - -/** - * @func myFunction - */ - - -function myFunction() { - -} -// Settings: {"jsdoc":{"maxLines":3,"minLines":0}} - -/** @func myFunction */ function myFunction() { - -} -// Settings: {"jsdoc":{"maxLines":0,"minLines":0}} - -/** - * @func myFunction - */ - -function myFunction() { - -} -// Settings: {"jsdoc":{"maxLines":3,"minLines":2}} - -function myFunction() {} -// Options: [{"require":{"ClassDeclaration":true,"FunctionDeclaration":false,"MethodDefinition":true}}] - -var myFunction = function() {} -// Options: [{"require":{"ClassDeclaration":true,"FunctionDeclaration":false,"MethodDefinition":true}}] - -/** - * Description for A. - */ -class A { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] - -/** - * Description for A. - */ -class App extends Component { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] - -/** - * Description for A. - */ -export default class App extends Component { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] - -/** - * Description for A. - */ -export class App extends Component { - /** - * Description for constructor. - * @param {object[]} xs - xs - */ - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":true,"MethodDefinition":true}}] - -class A { - constructor(xs) { - this.a = xs; - } -} -// Options: [{"require":{"ClassDeclaration":false,"MethodDefinition":false}}] - -/** -* Function doing something -*/ -var myFunction = () => {} -// Options: [{"require":{"ArrowFunctionExpression":true}}] - -/** -* Function doing something -*/ -var myFunction = function () {} -// Options: [{"require":{"ArrowFunctionExpression":true}}] - -/** -* Function doing something -*/ -var myFunction = () => {} -// Options: [{"require":{"ArrowFunctionExpression":false}}] - -/** - Function doing something -*/ -var myFunction = () => () => {} -// Options: [{"require":{"ArrowFunctionExpression":true}}] - -setTimeout(() => {}, 10); -// Options: [{"require":{"ArrowFunctionExpression":true}}] - -/** -JSDoc Block -*/ -var foo = function() {} -// Options: [{"require":{"FunctionExpression":true}}] - -const foo = {/** -JSDoc Block -*/ -bar() {}} -// Options: [{"require":{"FunctionExpression":true}}] - -var foo = {/** -JSDoc Block -*/ -bar: function() {}} -// Options: [{"require":{"FunctionExpression":true}}] - -var foo = { [function() {}]: 1 }; -// Options: [{"require":{"FunctionExpression":true}}] - -function foo () {} -// Options: [{"exemptEmptyFunctions":true}] - -function foo () { - return; -} -// Options: [{"exemptEmptyFunctions":true}] - -const test = {}; -/** - * test - */ - test.method = function () { - -} -module.exports = { - prop: { prop2: test.method } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -function test() { - -} - -module.exports = { - prop: { prop2: test } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -test = function() { - -} - -module.exports = { - prop: { prop2: test } -} -// Options: [{"publicOnly":{"cjs":true,"esm":false,"window":false},"require":{"FunctionExpression":true}}] - -/** - * - */ -test = function() { - -} - -exports.someMethod = { - prop: { prop2: test } -} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"FunctionExpression":true}}] - -/** - * - */ -const test = () => { - -} - -module.exports = { -prop: { prop2: test } -} -// Options: [{"publicOnly":true,"require":{"ArrowFunctionExpression":true}}] - -const test = () => { - -} -module.exports = { - prop: { prop2: test } -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"ArrowFunctionExpression":true}}] - -/** - * - */ -window.test = function() { - -} - -module.exports = { -prop: window -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -test = function() { - -} - -/** - * - */ -test = function() { - -} - -module.exports = { -prop: { prop2: test } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -test = function() { - -} - -test = 2; - -module.exports = { -prop: { prop2: test } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -function test() { - -} - -/** - * - */ -test.prototype.method = function() { - -} - -module.exports = { -prop: { prop2: test } -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -class Test { - /** - * Test - */ - method() { - - } -} -module.exports = Test; -// Options: [{"publicOnly":true,"require":{"MethodDefinition":true}}] - -/** - * - */ -export default function quux () { - -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -export default function quux () { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] - -/** - * - */ -function quux () { - -} -export default quux; -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -function quux () { - -} -export default quux; -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] - -/** - * - */ -export function test() { - -} -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -export function test() { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"FunctionExpression":true}}] - -/** - * - */ -var test = function () { - -} -var test2 = 2; -export { test, test2 } -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -var test = function () { - -} -export { test as test2 } -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * - */ -export default class A { - -} -// Options: [{"publicOnly":{"ancestorsOnly":true},"require":{"ClassDeclaration":true}}] - -/** - * - */ -var test = function () { - -} -// Options: [{"publicOnly":{"window":true},"require":{"FunctionExpression":true}}] - -let test = function () { - -} -// Options: [{"publicOnly":{"window":true},"require":{"FunctionExpression":true}}] - -let test = class { - -} -// Options: [{"publicOnly":true,"require":{"ClassExpression":false}}] - -/** - * - */ -let test = class { - -} -// Options: [{"publicOnly":true,"require":{"ClassExpression":true}}] - -export function someMethod() { - -} -// Options: [{"publicOnly":{"cjs":true,"esm":false,"window":false},"require":{"FunctionDeclaration":true}}] - -export function someMethod() { - -} -// Options: [{"publicOnly":{"cjs":true,"esm":false,"window":false},"require":{"FunctionDeclaration":true}}] - -exports.someMethod = function() { - -} -// Options: [{"publicOnly":{"cjs":false,"esm":true,"window":false},"require":{"FunctionExpression":true}}] - -const myObject = { - myProp: true -}; -// Options: [{"contexts":[]}] - -function bear() {} -/** - * - */ -function quux () { -} -export default quux; -// Options: [{"publicOnly":true,"require":{"FunctionExpression":true}}] - -/** - * This example interface is great! - */ -export interface Example { - /** - * My super test string! - */ - test: string -} -// Options: [{"contexts":["TSInterfaceDeclaration"]}] - -/** - * This example interface is great! - */ -interface Example { - /** - * My super test string! - */ - test: string -} -// Options: [{"contexts":["TSInterfaceDeclaration"]}] - -/** - * This example type is great! - */ -export type Example = { - /** - * My super test string! - */ - test: string -}; -// Options: [{"contexts":["TSTypeAliasDeclaration"]}] - -/** - * This example type is great! - */ -type Example = { - /** - * My super test string! - */ - test: string -}; -// Options: [{"contexts":["TSTypeAliasDeclaration"]}] - -/** - * This example enum is great! - */ -export enum Example { - /** - * My super test enum! - */ - test = 123 -} -// Options: [{"contexts":["TSEnumDeclaration"]}] - -/** - * This example enum is great! - */ -enum Example { - /** - * My super test enum! - */ - test = 123 -} -// Options: [{"contexts":["TSEnumDeclaration"]}] - -const foo = {...{}}; -function bar() {} -// Options: [{"exemptEmptyFunctions":false,"publicOnly":true,"require":{"ArrowFunctionExpression":true,"ClassDeclaration":true,"ClassExpression":true,"FunctionDeclaration":true,"FunctionExpression":false,"MethodDefinition":true}}] - -/** - * Class documentation - */ - @logged -export default class Foo { - // .... -} -// Options: [{"exemptEmptyFunctions":false,"require":{"ClassDeclaration":true}}] - -const a = {}; -const b = { - ...a -}; - -export default b; -// Options: [{"contexts":["ObjectExpression"],"exemptEmptyFunctions":false,"publicOnly":true}] - -/** - * Foo interface documentation. - */ -export interface Foo extends Bar { - /** - * baz method documentation. - */ - baz(): void; - - /** - * meow method documentation. - */ - meow(): void; -} -// Options: [{"contexts":["TSMethodSignature"]}] -```` - - - -### require-param-description - -Requires that each `@param` tag has a `description` value. - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`param`| -|Aliases|`arg`, `argument`| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @param foo - */ -function quux (foo) { - -} -// Message: Missing JSDoc @param "foo" description. - -/** - * @param foo - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @param "foo" description. - -/** - * @function - * @param foo - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @param "foo" description. - -/** - * @callback - * @param foo - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @param "foo" description. - -/** - * @arg foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} -// Message: Missing JSDoc @arg "foo" description. - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":false}}} -// Message: Unexpected tag `@param` -```` - -The following patterns are not considered problems: - -````js -/** - * - */ -function quux (foo) { - -} - -/** - * @param foo Foo. - */ -function quux (foo) { - -} - -/** - * @param foo Foo. - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] - -/** - * @function - * @param foo - */ - -/** - * @callback - * @param foo - */ -```` - - - -### require-param-name - -Requires that all function parameters have names. - -> The `@param` tag requires you to specify the name of the parameter you are documenting. You can also include the parameter's type, enclosed in curly brackets, and a description of the parameter. -> -> [JSDoc](https://jsdoc.app/tags-param.html#overview) - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`param`| -|Aliases|`arg`, `argument`| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @param - */ -function quux (foo) { - -} -// Message: There must be an identifier after @param type. - -/** - * @param {string} - */ -function quux (foo) { - -} -// Message: There must be an identifier after @param tag. - -/** - * @param {string} - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] -// Message: There must be an identifier after @param tag. - -/** - * @function - * @param {string} - */ -// Options: [{"contexts":["any"]}] -// Message: There must be an identifier after @param tag. - -/** - * @callback - * @param {string} - */ -// Options: [{"contexts":["any"]}] -// Message: There must be an identifier after @param tag. - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":false}}} -// Message: Unexpected tag `@param` -```` - -The following patterns are not considered problems: - -````js -/** - * @param foo - */ -function quux (foo) { - -} - -/** - * @param foo - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] - -/** - * @param {string} foo - */ -function quux (foo) { - -} - -/** - * @function - * @param - */ - -/** - * @callback - * @param - */ -```` - - - -### require-param-type - -Requires that each `@param` tag has a `type` value. - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`param`| -|Aliases|`arg`, `argument`| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @param foo - */ -function quux (foo) { - -} -// Message: Missing JSDoc @param "foo" type. - -/** - * @param foo - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @param "foo" type. - -/** - * @function - * @param foo - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @param "foo" type. - -/** - * @callback - * @param foo - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @param "foo" type. - -/** - * @arg foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} -// Message: Missing JSDoc @arg "foo" type. - -/** - * @param foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":false}}} -// Message: Unexpected tag `@param` -```` - -The following patterns are not considered problems: - -````js -/** - * - */ -function quux (foo) { - -} - -/** - * @param {number} foo - */ -function quux (foo) { - -} - -/** - * @param {number} foo - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] - -/** - * @function - * @param foo - */ - -/** - * @callback - * @param foo - */ -```` - - - -### require-param - -Requires that all function parameters are documented. - - -#### Options - -An options object accepts one optional property: - -- `exemptedBy` - Array of tags (e.g., `['type']`) whose presence on the document - block avoids the need for a `@param`. Defaults to an empty array. - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`| -|Tags|`param`| -|Aliases|`arg`, `argument`| -|Options|`exemptedBy`| -|Settings|`overrideReplacesDocs`, `augmentsExtendsReplacesDocs`, `implementsReplacesDocs`| - -The following patterns are considered problems: - -````js -/** - * - */ -function quux (foo) { - -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * - */ -function quux (foo, bar) { - -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @param foo - */ -function quux (foo, bar) { - -} -// Message: Missing JSDoc @param "bar" declaration. - -/** - * @param bar - */ -function quux (foo, bar, baz) { - -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @param foo - * @param bar - */ -function quux (foo, bar, baz) { - -} -// Message: Missing JSDoc @param "baz" declaration. - -/** - * @param baz - */ -function quux (foo, bar, baz) { - -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @param - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} -// Message: Missing JSDoc @arg "foo" declaration. - -/** - * @param foo - */ -function quux (foo, bar) { - -} -// Message: Missing JSDoc @param "bar" declaration. - -/** - * @override - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"overrideReplacesDocs":false}} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @implements - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"implementsReplacesDocs":false}} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @augments - */ -function quux (foo) { - -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @extends - */ -function quux (foo) { - -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @override - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"overrideReplacesDocs":false}} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @implements - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"implementsReplacesDocs":false}} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @augments - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @extends - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Message: Missing JSDoc @param "foo" declaration. - -export class SomeClass { - /** - * @param property - */ - constructor(private property: string, private foo: number) {} -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * @param - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":false}}} -// Message: Unexpected tag `@param` - -/** - * - */ -function quux ({bar, baz}, foo) { -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * - */ -function quux (foo, {bar, baz}) { -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * - */ -function quux ([bar, baz], foo) { -} -// Message: Missing JSDoc @param "foo" declaration. - -/** - * - */ -function quux (foo) { -} -// Options: [{"exemptedBy":["notPresent"]}] -// Message: Missing JSDoc @param "foo" declaration. - -/** - * Assign the project to a list of employees. - * @param {object[]} employees - The employees who are responsible for the project. - * @param {string} employees[].name - The name of an employee. - * @param {string} employees[].department - The employee's department. - */ -function assign (employees, name) { - -}; -// Message: Missing JSDoc @param "name" declaration. -```` - -The following patterns are not considered problems: - -````js -/** - * @param foo - */ -function quux (foo) { - -} - -/** - * @inheritdoc - */ -function quux (foo) { - -} - -/** - * @arg foo - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"param":"arg"}}} - -/** - * @override - * @param foo - */ -function quux (foo) { - -} - -/** - * @override - */ -function quux (foo) { - -} - -/** - * @override - */ -class A { - /** - * - */ - quux (foo) { - - } -} - -/** - * @override - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"overrideReplacesDocs":true}} - -/** - * @implements - */ -class A { - /** - * - */ - quux (foo) { - - } -} - -/** - * @implements - */ -function quux (foo) { - -} - -/** - * @implements - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"implementsReplacesDocs":true}} - -/** - * @implements - * @param foo - */ -function quux (foo) { - -} - -/** - * @augments - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @augments - * @param foo - */ -function quux (foo) { - -} - -/** - * @extends - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @extends - * @param foo - */ -function quux (foo) { - -} - -/** - * @augments - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @extends - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @override - */ -class A { - /** - * @param foo - */ - quux (foo) { - - } -} - -/** - * @override - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"overrideReplacesDocs":true}} - -/** - * @implements - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"implementsReplacesDocs":true}} - -/** - * @implements - */ -class A { - /** - * @param foo - */ - quux (foo) { - - } -} - -/** - * @augments - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @augments - */ -class A { - /** - * @param foo - */ - quux (foo) { - - } -} - -/** - * @extends - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @extends - */ -class A { - /** - * @param foo - */ - quux (foo) { - - } -} - -/** - * @augments - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @extends - */ -class A { - /** - * - */ - quux (foo) { - - } -} -// Settings: {"jsdoc":{"augmentsExtendsReplacesDocs":true}} - -/** - * @private - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} - -/** - * @access private - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"ignorePrivate":true}} - -// issue 182: optional chaining -/** @const {boolean} test */ -const test = something?.find(_ => _) - -/** @type {RequestHandler} */ -function foo(req, res, next) {} - -/** - * @type {MyCallback} - */ -function quux () { - -} -// Options: [{"exemptedBy":["type"]}] - -/** - * @override - */ -var A = class { - /** - * - */ - quux (foo) { - - } -} - -export class SomeClass { - /** - * @param property - */ - constructor(private property: string) {} -} - -/** - * Assign the project to an employee. - * - * @param {object} employee - The employee who is responsible for the project. - * @param {string} employee.name - The name of the employee. - * @param {string} employee.department - The employee's department. - */ -function assign({name, department}) { - // ... -} - -export abstract class StephanPlugin { - - /** - * Called right after Stephan loads the plugin file. - * - * @example - *```typescript - * type Options = { - * verbose?: boolean; - * token?: string; - * } - * ``` - * - * Note that your Options type should only have optional properties... - * - * @param args Arguments compiled and provided by StephanClient. - * @param args.options The options as provided by the user, or an empty object if not provided. - * @param defaultOptions The default options as provided by the plugin, or an empty object. - */ - public constructor({options, client}: { - options: O; - client: unknown; - }, defaultOptions: D) { - - } -} -```` - - - -### require-property - -Requires that all `@typedef` and `@namespace` tags have `@property` -when their type is a plain `object`, `Object`, or `PlainObject`. - -Note that if any other type, including a subtype of object such as -`object`, will not be reported. - - -#### Fixer - -The fixer for `require-example` will add an empty `@property`. - -||| -|---|---| -|Context|Everywhere| -|Tags|`typedef`, `namespace`| - -The following patterns are considered problems: - -````js -/** - * @typedef {object} SomeTypedef - */ -// Message: Missing JSDoc @property. - -/** - * @typedef {PlainObject} SomeTypedef - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":"prop"}}} -// Message: Missing JSDoc @prop. - -/** - * @namespace {Object} SomeName - */ -// Message: Missing JSDoc @property. -```` - -The following patterns are not considered problems: - -````js -/** - * - */ - -/** - * @property - */ - -/** - * @typedef {Object} SomeTypedef - * @property {SomeType} propName Prop description - */ - -/** - * @typedef {object} SomeTypedef - * @prop {SomeType} propName Prop description - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":"prop"}}} - -/** - * @typedef {object} SomeTypedef - * @property - * // arbitrary property content - */ - -/** - * @typedef {object} SomeTypedef - */ - -/** - * @typedef {string} SomeTypedef - */ - -/** - * @namespace {object} SomeName - * @property {SomeType} propName Prop description - */ - -/** - * @namespace {object} SomeName - * @property - * // arbitrary property content - */ - -/** - * @typedef {object} SomeTypedef - * @property someProp - * @property anotherProp This with a description - * @property {anotherType} yetAnotherProp This with a type and desc. - */ -function quux () { - -} -```` - - - -### require-property-description - -Requires that each `@property` tag has a `description` value. - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| - -The following patterns are considered problems: - -````js -/** - * @typedef {SomeType} SomeTypedef - * @property foo - */ -// Message: Missing JSDoc @property "foo" description. - -/** - * @typedef {SomeType} SomeTypedef - * @prop foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":"prop"}}} -// Message: Missing JSDoc @prop "foo" description. - -/** - * @typedef {SomeType} SomeTypedef - * @property foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":false}}} -// Message: Unexpected tag `@property` -```` - -The following patterns are not considered problems: - -````js -/** - * @typedef {SomeType} SomeTypedef - */ - -/** - * @typedef {SomeType} SomeTypedef - * @property foo Foo. - */ - -/** - * @namespace {SomeType} SomeName - * @property foo Foo. - */ - -/** - * @class - * @property foo Foo. - */ -```` - - - -### require-property-name - -Requires that all function `@property` tags have names. - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| - -The following patterns are considered problems: - -````js -/** - * @typedef {SomeType} SomeTypedef - * @property - */ -// Message: There must be an identifier after @property type. - -/** - * @typedef {SomeType} SomeTypedef - * @property {string} - */ -// Message: There must be an identifier after @property tag. - -/** - * @typedef {SomeType} SomeTypedef - * @property foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":false}}} -// Message: Unexpected tag `@property` -```` - -The following patterns are not considered problems: - -````js -/** - * @typedef {SomeType} SomeTypedef - * @property foo - */ - -/** - * @typedef {SomeType} SomeTypedef - * @property {string} foo - */ - -/** - * @namespace {SomeType} SomeName - * @property {string} foo - */ - -/** - * @class - * @property {string} foo - */ -```` - - - -### require-property-type - -Requires that each `@property` tag has a `type` value. - -||| -|---|---| -|Context|everywhere| -|Tags|N/A| - -The following patterns are considered problems: - -````js -/** - * @typedef {SomeType} SomeTypedef - * @property foo - */ -// Message: Missing JSDoc @property "foo" type. - -/** - * @typedef {SomeType} SomeTypedef - * @prop foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":"prop"}}} -// Message: Missing JSDoc @prop "foo" type. - -/** - * @typedef {SomeType} SomeTypedef - * @property foo - */ -// Settings: {"jsdoc":{"tagNamePreference":{"property":false}}} -// Message: Unexpected tag `@property` -```` - -The following patterns are not considered problems: - -````js -/** - * @typedef {SomeType} SomeTypedef - */ - -/** - * @typedef {SomeType} SomeTypedef - * @property {number} foo - */ - -/** - * @namespace {SomeType} SomeName - * @property {number} foo - */ - -/** - * @class - * @property {number} foo - */ -```` - - - -### require-returns-check - -Requires a return statement in function body if a `@returns` tag is specified in jsdoc comment. - -Will also report if multiple `@returns` tags are present. - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`| -|Tags|`returns`| -|Aliases|`return`| - -The following patterns are considered problems: - -````js -/** - * @returns - */ -function quux (foo) { - -} -// Message: JSDoc @returns declaration present but return expression not available in function. - -/** - * @return - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":"return"}}} -// Message: JSDoc @return declaration present but return expression not available in function. - -/** - * @returns - */ -const quux = () => {} -// Message: JSDoc @returns declaration present but return expression not available in function. - -/** - * @returns {undefined} Foo. - * @returns {String} Foo. - */ -function quux () { - - return foo; -} -// Message: Found more than one @returns declaration. - -const language = { - /** - * @param {string} name - * @returns {string} - */ - get name() { - this._name = name; - } -} -// Message: JSDoc @returns declaration present but return expression not available in function. - -class Foo { - /** - * @returns {string} - */ - bar () { - } -} -// Message: JSDoc @returns declaration present but return expression not available in function. - -/** - * @returns - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":false}}} -// Message: Unexpected tag `@returns` - -/** - * @returns {string} - */ -function f () { - function g() { - return 'foo' - } - - () => { - return 5 - } -} -// Message: JSDoc @returns declaration present but return expression not available in function. -```` - -The following patterns are not considered problems: - -````js -/** - * @returns Foo. - */ -function quux () { - - return foo; -} - -/** - * @returns {string} Foo. - */ -function quux () { - - return foo; -} - -/** - * @returns {string} Foo. - */ -function quux () { - - return foo; -} - -/** - * - */ -function quux () { -} - -/** - * @returns {*} Foo. - */ -const quux = () => foo; - -/** - * @returns {undefined} Foo. - */ -function quux () {} - -/** - * @returns { void } Foo. - */ -function quux () {} - -/** - * @returns {Promise} - */ -async function quux() {} - -/** - * @returns {Promise} - */ -const quux = async function () {} - -/** - * @returns {Promise} - */ -const quux = async () => {} - -/** - * @returns Foo. - * @abstract - */ -function quux () { - throw new Error('must be implemented by subclass!'); -} - -/** - * @returns Foo. - * @virtual - */ -function quux () { - throw new Error('must be implemented by subclass!'); -} - -/** - * @returns Foo. - * @constructor - */ -function quux () { -} - -/** - * @interface - */ -class Foo { - /** - * @returns {string} - */ - bar () { - } -} - -/** - * @record - */ -class Foo { - /** - * @returns {string} - */ - bar () { - } -} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @returns {undefined} Foo. - */ -function quux () { -} - -/** - * @returns {void} Foo. - */ -function quux () { -} - -/** - * @returns {void} Foo. - */ -function quux () { - return undefined; -} - -/** - * @returns {void} Foo. - */ -function quux () { - return; -} - -/** - * - */ -function quux () { - return undefined; -} - -/** - * - */ -function quux () { - return; -} - -/** - * @returns {true} - */ -function quux () { - try { - return true; - } catch (err) { - } - return; -} - -/** - * @returns {true} - */ -function quux () { - try { - } finally { - return true; - } - return; -} - -/** - * @returns {true} - */ -function quux () { - try { - return; - } catch (err) { - } - return true; -} - -/** - * @returns {true} - */ -function quux () { - try { - something(); - } catch (err) { - return true; - } - return; -} - -/** - * @returns {true} - */ -function quux () { - switch (true) { - case 'abc': - return true; - } - return; -} - -/** - * @returns {true} - */ -function quux () { - switch (true) { - case 'abc': - return; - } - return true; -} - -/** - * @returns {true} - */ -function quux () { - for (const i of abc) { - return true; - } - return; -} - -/** - * @returns {true} - */ -function quux () { - for (const a in b) { - return true; - } -} - -/** - * @returns {true} - */ -function quux () { - for (let i=0; i -### require-returns-description - -Requires that the `@returns` tag has a `description` value. The error -will not be reported if the return value is `void` or `undefined`. - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`returns`| -|Aliases|`return`| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @returns - */ -function quux (foo) { - -} -// Message: Missing JSDoc @returns description. - -/** - * @returns {string} - */ -function quux (foo) { - -} -// Message: Missing JSDoc @returns description. - -/** - * @returns {string} - */ -function quux (foo) { - -} -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @returns description. - -/** - * @function - * @returns {string} - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @returns description. - -/** - * @callback - * @returns {string} - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @returns description. - -/** - * @return - */ -function quux (foo) { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":"return"}}} -// Message: Missing JSDoc @return description. - -/** - * @returns - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":false}}} -// Message: Unexpected tag `@returns` -```` - -The following patterns are not considered problems: - -````js -/** - * - */ -function quux () { - -} - -/** - * @returns Foo. - */ -function quux () { - -} - -/** - * @returns Foo. - */ -function quux () { - -} -// Options: [{"contexts":["any"]}] - -/** - * @returns {undefined} - */ -function quux () { - -} - -/** - * @returns {void} - */ -function quux () { - -} - -/** - * @function - * @returns - */ - -/** - * @callback - * @returns - */ -```` - - - -### require-returns-type - -Requires that `@returns` tag has `type` value. - - -#### Options - - -##### contexts - -Set this to an array of strings representing the AST context -where you wish the rule to be applied. -Overrides the default contexts (see below). Set to `"any"` if you want -the rule to apply to any jsdoc block throughout your files (as is necessary -for finding function blocks not attached to a function declaration or -expression, i.e., `@callback` or `@function` (or its aliases `@func` or -`@method`) (including those associated with an `@interface`). - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`returns`| -|Aliases|`return`| -|Options|`contexts`| - -The following patterns are considered problems: - -````js -/** - * @returns - */ -function quux () { - -} -// Message: Missing JSDoc @returns type. - -/** - * @returns Foo. - */ -function quux () { - -} -// Message: Missing JSDoc @returns type. - -/** - * @returns Foo. - */ -function quux () { - -} -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @returns type. - -/** - * @function - * @returns Foo. - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @returns type. - -/** - * @callback - * @returns Foo. - */ -// Options: [{"contexts":["any"]}] -// Message: Missing JSDoc @returns type. - -/** - * @return Foo. - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":"return"}}} -// Message: Missing JSDoc @return type. - -/** - * @returns - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":false}}} -// Message: Unexpected tag `@returns` -```` - -The following patterns are not considered problems: - -````js -/** - * @returns {number} - */ -function quux () { - -} - -/** - * @returns {number} - */ -function quux () { - -} -// Options: [{"contexts":["any"]}] - -/** - * @function - * @returns Foo. - */ - -/** - * @callback - * @returns Foo. - */ -```` - - - -### require-returns - -Requires returns are documented. - -Will also report if multiple `@returns` tags are present. - - -#### Options - -- `exemptedBy` - Array of tags (e.g., `['type']`) whose presence on the document - block avoids the need for a `@returns`. Defaults to an empty array. -- `forceRequireReturn` - Set to `true` to always insist on - `@returns` documentation regardless of implicit or explicit `return`'s - in the function. May be desired to flag that a project is aware of an - `undefined`/`void` return. Defaults to `false`. -- `forceReturnsWithAsync` - By default `async` functions that do not explicitly - return a value pass this rule as an `async` function will always return a - `Promise`, even if the `Promise` resolves to void. You can force all `async` - functions to require return statements by setting `forceReturnsWithAsync` - to `true` on the options object. This may be useful for flagging that there - has been consideration of return type. Defaults to `false`. -- `contexts` - Set this to an array of strings representing the AST context - where you wish the rule to be applied. - Overrides the default contexts (see below). Set to `"any"` if you want - the rule to apply to any jsdoc block throughout your files (as is necessary - for finding function blocks not attached to a function declaration or - expression, i.e., `@callback` or `@function` (or its aliases `@func` or - `@method`) (including those associated with an `@interface`). This - rule will only apply on non-default contexts when there is such a tag - present and the `forceRequireReturn` option is set or if the - `forceReturnsWithAsync` option is set with a present `@async` tag - (since we are not checking against the actual `return` values in these - cases). - -```js -'jsdoc/require-returns': ['error', {forceReturnsWithAsync: true}] -``` - -||| -|---|---| -|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`; others when `contexts` option enabled| -|Tags|`returns`| -|Aliases|`return`| -|Options|`contexts`, `exemptedBy`, `forceRequireReturn`, `forceReturnsWithAsync`| -|Settings|`overrideReplacesDocs`, `augmentsExtendsReplacesDocs`, `implementsReplacesDocs`| - -The following patterns are considered problems: - -````js -/** - * - */ -function quux (foo) { - - return foo; -} -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -const foo = () => ({ - bar: 'baz' -}) -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -const foo = bar=>({ bar }) -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -const foo = bar => bar.baz() -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -function quux (foo) { - - return foo; -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":"return"}}} -// Message: Missing JSDoc @return declaration. - -/** - * - */ -function foo() {} - -/** - * - */ -function bar() {} -// Settings: {"jsdoc":{"forceRequireReturn":true}} -// Message: `settings.jsdoc.forceRequireReturn` has been removed, use options in the rule `require-returns` instead. - -/** - * - */ -async function quux() { -} -// Options: [{"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -const quux = async function () {} -// Options: [{"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -const quux = async () => {} -// Options: [{"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -async function quux () {} -// Options: [{"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -function quux () { -} -// Options: [{"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -function quux () { -} -// Options: [{"contexts":["any"],"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * @function - */ -// Options: [{"contexts":["any"],"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * @callback - */ -// Options: [{"contexts":["any"],"forceRequireReturn":true}] -// Message: Missing JSDoc @returns declaration. - -const language = { - /** - * @param {string} name - */ - get name() { - return this._name; - } -} -// Message: Missing JSDoc @returns declaration. - -/** - * - */ -async function quux () { -} -// Options: [{"forceReturnsWithAsync":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * @function - * @async - */ -// Options: [{"contexts":["any"],"forceReturnsWithAsync":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * @callback - * @async - */ -// Options: [{"contexts":["any"],"forceReturnsWithAsync":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * @returns {undefined} - * @returns {void} - */ -function quux (foo) { - - return foo; -} -// Message: Found more than one @returns declaration. - -/** - * @returns - */ -function quux () { - -} -// Settings: {"jsdoc":{"tagNamePreference":{"returns":false}}} -// Message: Unexpected tag `@returns` - -/** - * @param foo - */ -function quux (foo) { - return 'bar'; -} -// Options: [{"exemptedBy":["notPresent"]}] -// Message: Missing JSDoc @returns declaration. - -/** - * @param {array} a - */ -async function foo(a) { - return; -} -// Options: [{"forceReturnsWithAsync":true}] -// Message: Missing JSDoc @returns declaration. - -/** - * @param {array} a - */ -async function foo(a) { - return Promise.all(a); -} -// Options: [{"forceReturnsWithAsync":true}] -// Message: Missing JSDoc @returns declaration. -```` - -The following patterns are not considered problems: - -````js -/** - * @returns Foo. - */ -function quux () { - - return foo; -} - -/** - * @returns Foo. - */ -function quux () { - - return foo; -} -// Options: [{"contexts":["any"]}] - -/** - * - */ -function quux () { -} - -/** - * - */ -function quux (bar) { - bar.filter(baz => { - return baz.corge(); - }) -} - -/** - * @returns Array - */ -function quux (bar) { - return bar.filter(baz => { - return baz.corge(); - }) -} - -/** - * @returns Array - */ -const quux = (bar) => bar.filter(({ corge }) => corge()) - -/** - * @inheritdoc - */ -function quux (foo) { -} - -/** - * @override - */ -function quux (foo) { -} - -/** - * @constructor - */ -function quux (foo) { -} - -/** - * @implements - */ -function quux (foo) { -} - -/** - * @override - */ -function quux (foo) { - - return foo; -} - -/** - * @class - */ -function quux (foo) { - -} - -/** - * @constructor - */ -function quux (foo) { - -} - -/** - * @returns {object} - */ -function quux () { - - return {a: foo}; -} - -/** - * @returns {object} - */ -const quux = () => ({a: foo}); - -/** - * @returns {object} - */ -const quux = () => { - return {a: foo} -}; - -/** - * @returns {void} - */ -function quux () { -} - -/** - * @returns {void} - */ -const quux = () => { - -} - -/** - * @returns {undefined} - */ -function quux () { -} - -/** - * @returns {undefined} - */ -const quux = () => { - -} - -/** - * - */ -function quux () { -} - -/** - * - */ -const quux = () => { - -} - -class Foo { - /** - * - */ - constructor () { - } -} -// Options: [{"forceRequireReturn":true}] - -const language = { - /** - * @param {string} name - */ - set name(name) { - this._name = name; - } -} - -/** - * @returns {void} - */ -function quux () { -} -// Options: [{"forceRequireReturn":true}] - -/** - * @returns {void} - */ -function quux () { - return undefined; -} - -/** - * @returns {void} - */ -function quux () { - return undefined; -} -// Options: [{"forceRequireReturn":true}] - -/** - * @returns {void} - */ -function quux () { - return; -} - -/** - * @returns {void} - */ -function quux () { -} -// Options: [{"forceRequireReturn":true}] - -/** - * @returns {void} - */ -function quux () { - return; -} -// Options: [{"forceRequireReturn":true}] - -/** @type {RequestHandler} */ -function quux (req, res , next) { - return; -} - -/** - * @returns {Promise} - */ -async function quux () { -} -// Options: [{"forceRequireReturn":true}] - -/** - * @returns {Promise} - */ -async function quux () { -} -// Options: [{"forceReturnsWithAsync":true}] - -/** - * - */ -async function quux () {} - -/** - * - */ -const quux = async function () {} - -/** - * - */ -const quux = async () => {} - -/** foo class */ -class foo { - /** foo constructor */ - constructor () { - // => - this.bar = true; - } -} - -export default foo; - -/** - * - */ -function quux () { -} -// Options: [{"forceReturnsWithAsync":true}] - -/** - * @type {MyCallback} - */ -function quux () { - -} -// Options: [{"exemptedBy":["type"]}] - -/** - * @param {array} a - */ -async function foo(a) { - return Promise.all(a); -} - -/** - * @param {array} a - */ -async function foo(a) { - return; -} - -/** - * - */ -// Options: [{"contexts":["any"]}] - -/** - * @async - */ -// Options: [{"contexts":["any"]}] - -/** - * @function - */ -// Options: [{"forceRequireReturn":true}] - -/** - * @callback - */ -// Options: [{"forceRequireReturn":true}] - -/** - * @function - * @async - */ -// Options: [{"forceReturnsWithAsync":true}] - -/** - * @callback - * @async - */ -// Options: [{"forceReturnsWithAsync":true}] - -/** - * @function - */ -// Options: [{"contexts":["any"],"forceReturnsWithAsync":true}] - -/** - * @callback - */ -// Options: [{"contexts":["any"],"forceReturnsWithAsync":true}] -```` - - - -### valid-types - -Requires all types to be valid JSDoc or Closure compiler types without syntax errors. - -Also impacts behaviors on namepath (or event)-defining and pointing tags: - -1. Name(path)-defining tags requiring namepath: `@external`, `@host`, `@name`, `@typedef` -1. Name(path)-defining tags (which may have value without namepath or their - namepath can be expressed elsewhere on the block): `@event`, `@callback`, - `@class`, `@constructor`, `@constant`, `@const`, - `@function`, `@func`, `@method`, `@interface`, `@member`, `@var`, - `@mixin`, `@namespace` -1. Name(path)-pointing tags requiring namepath: `@alias`, `@augments`, `@extends`, `@lends`, `@memberof`, `@memberof!`, `@mixes`, `@this` -1. Name(path)-pointing tags (which may have value without namepath or their - namepath can be expressed elsewhere on the block): `@listens`, `@fires`, - `@emits`, and `@modifies` -1. Name(path)-pointing tags (multiple names in one): `@borrows` - -...with the following applying to the above sets: - -- Expect tags in set 1-4 to have a valid namepath if present -- Prevent sets 2 and 4 from being empty by setting `allowEmptyNamepaths` to - `false` as these tags might have some indicative value without a path - or may allow a name expressed elsewhere on the block (but sets 1 and 3 will - always fail if empty) -- For the special case of set 5, i.e., `@borrows as `, - check that both namepaths are present and valid and ensure there is an `as ` - between them. In the case of ``, it can be preceded by - one of the name path operators, `#`, `.`, or `~`. -- For the special case of `@memberof` and `@memberof!` (part of set 3), as - per the [specification](https://jsdoc.app/tags-memberof.html), they also - allow `#`, `.`, or `~` at the end (which is not allowed at the end of - normal paths). - - -#### Options - -- `allowEmptyNamepaths` (default: true) - Set to `false` to disallow - empty name paths with `@callback`, `@event`, `@class`, `@constructor`, - `@constant`, `@const`, `@function`, `@func`, `@method`, `@interface`, - `@member`, `@var`, `@mixin`, `@namespace`, `@listens`, `@fires`, - `@modifies`, or `@emits` (these might often be expected to have an - accompanying name path, though they have some indicative value without - one; these may also allow names to be defined in another manner elsewhere - in the block) -- `checkSeesForNamepaths` (default: false) - Set this to `true` to insist - that `@see` only use name paths (the tag is normally permitted to - allow other text) - - -||| -|---|---| -|Context|everywhere| -|Tags|For name only unless otherwise stated: `alias`, `augments`, `borrows`, `callback`, `class` (for name and type), `constant` (for name and type), `enum` (for type), `event`, `external`, `fires`, `function`, `implements` (for type), `interface`, `lends`, `listens`, `member` (for name and type), `memberof`, `memberof!`, `mixes`, `mixin`, `modifies`, `module` (for name and type), `name`, `namespace` (for name and type), `param` (for name and type), `property` (for name and type), `returns` (for type), `this`, `throws` (for type), `type` (for type), `typedef` (for name and type), `yields` (for type)| -|Aliases|`extends`, `constructor`, `const`, `host`, `emits`, `func`, `method`, `var`, `arg`, `argument`, `prop`, `return`, `exception`, `yield`| -|Closure-only|For type only: `package`, `private`, `protected`, `public`, `static`| -|Options|`allowEmptyNamepaths`, `checkSeesForNamepaths`| -|Settings|`mode`| - -The following patterns are considered problems: - -````js -/** - * @param {Array} foo - */ -function quux() { - -} - -/** - * @param {string} foo - */ -function quux() { - -} - -/** - * @param foo - */ -function quux() { - -} - -/** - * @borrows foo as bar - */ -function quux() { - -} - -/** - * @borrows foo as #bar - */ -function quux() { - -} - -/** - * @see foo% - */ -function quux() { - -} - -/** - * @alias module:namespace.SomeClass#event:ext_anevent - */ -function quux() { - -} - -/** - * @callback foo - */ -function quux() { - -} - -/** - * @callback - */ -function quux() { - -} -// Options: [{"allowEmptyNamepaths":true}] - -/** - * @class - */ -function quux() { - -} - -/** - * @see {@link foo} - */ -function quux() { - -} -// Options: [{"checkSeesForNamepaths":true}] - -/** - * - * @fires {module:namespace.SomeClass#event:ext_anevent} - */ -function quux() { - -} - -/** - * @memberof module:namespace.SomeClass~ - */ -function quux() { - -} - -/** - * @memberof! module:namespace.SomeClass. - */ -function quux() { - -} - -/** - * - */ -function quux() { - -} - -/** - * @constant {string} - */ - const FOO = 'foo'; - -/** - * @constant {string} FOO - */ - const FOO = 'foo'; - -/** - * @extends Foo - */ - class Bar {}; - -/** - * @extends {Foo} - */ - class Bar {}; - -/** - * @typedef {number|string} UserDefinedType - */ - -/** - * @typedef {number|string} - */ -let UserDefinedGCCType; - -/** - * @modifies {foo|bar} - */ -function quux (foo, bar, baz) {} - -/** - * @private {BadTypeNotCheckedInJsdoc<} - */ -function quux () {} - -/** - * @this {Navigator} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @export {SomeType} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @define {boolean} - */ -function quux () {} -// Settings: {"jsdoc":{"mode":"closure"}} - -/** - * @define - */ - function quux () {} -```` - - diff --git a/node_modules/eslint-plugin-jsdoc/dist/WarnSettings.js b/node_modules/eslint-plugin-jsdoc/dist/WarnSettings.js deleted file mode 100644 index 16c667ed..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/WarnSettings.js +++ /dev/null @@ -1,36 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -const WarnSettings = function WarnSettings() { - /** @type {WeakMap>} */ - const warnedSettings = new WeakMap(); - return { - /** - * Warn only once for each context and setting - * - * @param {object} context - * @param {string} setting - */ - hasBeenWarned(context, setting) { - return warnedSettings.has(context) && warnedSettings.get(context).has(setting); - }, - - markSettingAsWarned(context, setting) { - if (!warnedSettings.has(context)) { - warnedSettings.set(context, new Set()); - } - - warnedSettings.get(context).add(setting); - } - - }; -}; - -var _default = WarnSettings; -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=WarnSettings.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/WarnSettings.js.map b/node_modules/eslint-plugin-jsdoc/dist/WarnSettings.js.map deleted file mode 100644 index 4878417f..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/WarnSettings.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/WarnSettings.js"],"names":["WarnSettings","warnedSettings","WeakMap","hasBeenWarned","context","setting","has","get","markSettingAsWarned","set","Set","add"],"mappings":";;;;;;;AAAA,MAAMA,YAAY,GAAG,SAAfA,YAAe,GAAY;AAC/B;AACA,QAAMC,cAAc,GAAG,IAAIC,OAAJ,EAAvB;AAEA,SAAO;AACL;;;;;;AAMAC,IAAAA,aAAa,CAAEC,OAAF,EAAWC,OAAX,EAAoB;AAC/B,aAAOJ,cAAc,CAACK,GAAf,CAAmBF,OAAnB,KAA+BH,cAAc,CAACM,GAAf,CAAmBH,OAAnB,EAA4BE,GAA5B,CAAgCD,OAAhC,CAAtC;AACD,KATI;;AAWLG,IAAAA,mBAAmB,CAAEJ,OAAF,EAAWC,OAAX,EAAoB;AACrC,UAAI,CAACJ,cAAc,CAACK,GAAf,CAAmBF,OAAnB,CAAL,EAAkC;AAChCH,QAAAA,cAAc,CAACQ,GAAf,CAAmBL,OAAnB,EAA4B,IAAIM,GAAJ,EAA5B;AACD;;AAEDT,MAAAA,cAAc,CAACM,GAAf,CAAmBH,OAAnB,EAA4BO,GAA5B,CAAgCN,OAAhC;AACD;;AAjBI,GAAP;AAmBD,CAvBD;;eAyBeL,Y","sourcesContent":["const WarnSettings = function () {\n /** @type {WeakMap>} */\n const warnedSettings = new WeakMap();\n\n return {\n /**\n * Warn only once for each context and setting\n *\n * @param {object} context\n * @param {string} setting\n */\n hasBeenWarned (context, setting) {\n return warnedSettings.has(context) && warnedSettings.get(context).has(setting);\n },\n\n markSettingAsWarned (context, setting) {\n if (!warnedSettings.has(context)) {\n warnedSettings.set(context, new Set());\n }\n\n warnedSettings.get(context).add(setting);\n },\n };\n};\n\nexport default WarnSettings;\n"],"file":"WarnSettings.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/eslint/LICENSE-MIT.txt b/node_modules/eslint-plugin-jsdoc/dist/eslint/LICENSE-MIT.txt deleted file mode 100644 index 7fe552a8..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/eslint/LICENSE-MIT.txt +++ /dev/null @@ -1,19 +0,0 @@ -Copyright JS Foundation and other contributors, https://js.foundation - -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. diff --git a/node_modules/eslint-plugin-jsdoc/dist/eslint/getJSDocComment.js b/node_modules/eslint-plugin-jsdoc/dist/eslint/getJSDocComment.js deleted file mode 100644 index e091927a..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/eslint/getJSDocComment.js +++ /dev/null @@ -1,166 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = exports.getReducedASTNode = void 0; - -/** - * Obtained originally from {@link https://github.com/eslint/eslint/blob/master/lib/util/source-code.js#L313} - * - * @license MIT - */ - -/** - * Checks if the given token is a comment token or not. - * - * @param {Token} token - The token to check. - * @returns {boolean} `true` if the token is a comment token. - */ -const isCommentToken = token => { - return token.type === 'Line' || token.type === 'Block' || token.type === 'Shebang'; -}; - -const getDecorator = (token, sourceCode) => { - if (token && token.type === 'Identifier') { - const tokenBefore = sourceCode.getTokenBefore(token, { - includeComments: true - }); - - if (tokenBefore && tokenBefore.type === 'Punctuator' && tokenBefore.value === '@') { - return tokenBefore; - } - } - - return false; -}; -/** - * Check to see if its a ES6 export declaration. - * - * @param {ASTNode} astNode An AST node. - * @returns {boolean} whether the given node represents an export declaration. - * @private - */ - - -const looksLikeExport = function looksLikeExport(astNode) { - return astNode.type === 'ExportDefaultDeclaration' || astNode.type === 'ExportNamedDeclaration' || astNode.type === 'ExportAllDeclaration' || astNode.type === 'ExportSpecifier'; -}; -/** - * Reduces the provided node to the appropriate node for evaluating JSDoc comment status. - * - * @param {ASTNode} node An AST node. - * @param {SourceCode} sourceCode The ESLint SourceCode. - * @returns {ASTNode} The AST node that can be evaluated for appropriate JSDoc comments. - * @private - */ - - -const getReducedASTNode = function getReducedASTNode(node, sourceCode) { - let parent = node.parent; - - switch (node.type) { - case 'TSInterfaceDeclaration': - case 'TSTypeAliasDeclaration': - case 'TSEnumDeclaration': - case 'ClassDeclaration': - case 'FunctionDeclaration': - return looksLikeExport(parent) ? parent : node; - - case 'ClassExpression': - case 'ObjectExpression': - case 'ArrowFunctionExpression': - case 'FunctionExpression': - if (!['CallExpression', 'OptionalCallExpression', 'NewExpression'].includes(parent.type)) { - while (!sourceCode.getCommentsBefore(parent).length && !/Function/u.test(parent.type) && parent.type !== 'MethodDefinition' && parent.type !== 'Property') { - parent = parent.parent; - - if (!parent) { - break; - } - } - - if (parent && parent.type !== 'FunctionDeclaration' && parent.type !== 'Program') { - return parent; - } - } - - return node; - - default: - return node; - } -}; -/** - * Retrieves the JSDoc comment for a given node. - * - * @param {SourceCode} sourceCode The ESLint SourceCode - * @param {ASTNode} node The AST node to get the comment for. - * @param {object} settings The settings in context - * @returns {Token|null} The Block comment token containing the JSDoc comment - * for the given node or null if not found. - * @public - * @deprecated - */ - - -exports.getReducedASTNode = getReducedASTNode; - -const getJSDocComment = function getJSDocComment(sourceCode, node, settings) { - /** - * Checks for the presence of a JSDoc comment for the given node and returns it. - * - * @param {ASTNode} astNode The AST node to get the comment for. - * @returns {Token|null} The Block comment token containing the JSDoc comment - * for the given node or null if not found. - * @private - */ - const findJSDocComment = astNode => { - const minLines = settings.minLines, - maxLines = settings.maxLines; - let currentNode = astNode; - let tokenBefore = null; - - while (currentNode) { - tokenBefore = sourceCode.getTokenBefore(currentNode, { - includeComments: true - }); - const decorator = getDecorator(tokenBefore, sourceCode); - - if (decorator) { - currentNode = decorator; - continue; - } - - if (!tokenBefore || !isCommentToken(tokenBefore)) { - return null; - } - - if (tokenBefore.type === 'Line') { - currentNode = tokenBefore; - continue; - } - - break; - } - - if (tokenBefore.type === 'Block' && tokenBefore.value.charAt(0) === '*' && currentNode.loc.start.line - tokenBefore.loc.end.line >= minLines && currentNode.loc.start.line - tokenBefore.loc.end.line <= maxLines) { - return tokenBefore; - } - - return null; - }; - - const reducedNode = getReducedASTNode(node, sourceCode); - /* istanbul ignore next */ - - if (!reducedNode) { - return null; - } - - return findJSDocComment(reducedNode); -}; - -var _default = getJSDocComment; -exports.default = _default; -//# sourceMappingURL=getJSDocComment.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/eslint/getJSDocComment.js.map b/node_modules/eslint-plugin-jsdoc/dist/eslint/getJSDocComment.js.map deleted file mode 100644 index b80b9606..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/eslint/getJSDocComment.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/eslint/getJSDocComment.js"],"names":["isCommentToken","token","type","getDecorator","sourceCode","tokenBefore","getTokenBefore","includeComments","value","looksLikeExport","astNode","getReducedASTNode","node","parent","includes","getCommentsBefore","length","test","getJSDocComment","settings","findJSDocComment","minLines","maxLines","currentNode","decorator","charAt","loc","start","line","end","reducedNode"],"mappings":"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","sourcesContent":["/**\n * Obtained originally from {@link https://github.com/eslint/eslint/blob/master/lib/util/source-code.js#L313}\n *\n * @license MIT\n */\n\n/**\n * Checks if the given token is a comment token or not.\n *\n * @param {Token} token - The token to check.\n * @returns {boolean} `true` if the token is a comment token.\n */\nconst isCommentToken = (token) => {\n return token.type === 'Line' || token.type === 'Block' || token.type === 'Shebang';\n};\n\nconst getDecorator = (token, sourceCode) => {\n if (token && token.type === 'Identifier') {\n const tokenBefore = sourceCode.getTokenBefore(token, {includeComments: true});\n if (tokenBefore && tokenBefore.type === 'Punctuator' && tokenBefore.value === '@') {\n return tokenBefore;\n }\n }\n\n return false;\n};\n\n/**\n * Check to see if its a ES6 export declaration.\n *\n * @param {ASTNode} astNode An AST node.\n * @returns {boolean} whether the given node represents an export declaration.\n * @private\n */\nconst looksLikeExport = function (astNode) {\n return astNode.type === 'ExportDefaultDeclaration' || astNode.type === 'ExportNamedDeclaration' ||\n astNode.type === 'ExportAllDeclaration' || astNode.type === 'ExportSpecifier';\n};\n\n/**\n * Reduces the provided node to the appropriate node for evaluating JSDoc comment status.\n *\n * @param {ASTNode} node An AST node.\n * @param {SourceCode} sourceCode The ESLint SourceCode.\n * @returns {ASTNode} The AST node that can be evaluated for appropriate JSDoc comments.\n * @private\n */\nconst getReducedASTNode = function (node, sourceCode) {\n let {parent} = node;\n\n switch (node.type) {\n case 'TSInterfaceDeclaration':\n case 'TSTypeAliasDeclaration':\n case 'TSEnumDeclaration':\n case 'ClassDeclaration':\n case 'FunctionDeclaration':\n return looksLikeExport(parent) ? parent : node;\n\n case 'ClassExpression':\n case 'ObjectExpression':\n case 'ArrowFunctionExpression':\n case 'FunctionExpression':\n if (\n !['CallExpression', 'OptionalCallExpression', 'NewExpression'].includes(parent.type)\n ) {\n while (\n !sourceCode.getCommentsBefore(parent).length &&\n !/Function/u.test(parent.type) &&\n parent.type !== 'MethodDefinition' &&\n parent.type !== 'Property'\n ) {\n parent = parent.parent;\n\n if (!parent) {\n break;\n }\n }\n\n if (parent && parent.type !== 'FunctionDeclaration' && parent.type !== 'Program') {\n return parent;\n }\n }\n\n return node;\n\n default:\n return node;\n }\n};\n\n/**\n * Retrieves the JSDoc comment for a given node.\n *\n * @param {SourceCode} sourceCode The ESLint SourceCode\n * @param {ASTNode} node The AST node to get the comment for.\n * @param {object} settings The settings in context\n * @returns {Token|null} The Block comment token containing the JSDoc comment\n * for the given node or null if not found.\n * @public\n * @deprecated\n */\nconst getJSDocComment = function (sourceCode, node, settings) {\n /**\n * Checks for the presence of a JSDoc comment for the given node and returns it.\n *\n * @param {ASTNode} astNode The AST node to get the comment for.\n * @returns {Token|null} The Block comment token containing the JSDoc comment\n * for the given node or null if not found.\n * @private\n */\n const findJSDocComment = (astNode) => {\n const {minLines, maxLines} = settings;\n let currentNode = astNode;\n let tokenBefore = null;\n\n while (currentNode) {\n tokenBefore = sourceCode.getTokenBefore(currentNode, {includeComments: true});\n const decorator = getDecorator(tokenBefore, sourceCode);\n if (decorator) {\n currentNode = decorator;\n continue;\n }\n if (!tokenBefore || !isCommentToken(tokenBefore)) {\n return null;\n }\n if (tokenBefore.type === 'Line') {\n currentNode = tokenBefore;\n continue;\n }\n break;\n }\n\n if (\n tokenBefore.type === 'Block' &&\n tokenBefore.value.charAt(0) === '*' &&\n currentNode.loc.start.line - tokenBefore.loc.end.line >= minLines &&\n currentNode.loc.start.line - tokenBefore.loc.end.line <= maxLines\n ) {\n return tokenBefore;\n }\n\n return null;\n };\n\n const reducedNode = getReducedASTNode(node, sourceCode);\n /* istanbul ignore next */\n if (!reducedNode) {\n return null;\n }\n\n return findJSDocComment(reducedNode);\n};\n\nexport {getReducedASTNode};\nexport default getJSDocComment;\n"],"file":"getJSDocComment.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/exportParser.js b/node_modules/eslint-plugin-jsdoc/dist/exportParser.js deleted file mode 100644 index c579812c..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/exportParser.js +++ /dev/null @@ -1,546 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _debug = _interopRequireDefault(require("debug")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const debug = (0, _debug.default)('requireExportJsdoc'); - -const createNode = function createNode() { - return { - props: {} - }; -}; - -const getSymbolValue = function getSymbolValue(symbol) { - /* istanbul ignore next */ - if (!symbol) { - /* istanbul ignore next */ - return null; - } - /* istanbul ignore next */ - - - if (symbol.type === 'literal') { - return symbol.value.value; - } - /* istanbul ignore next */ - - - return null; -}; - -const getIdentifier = function getIdentifier(node, globals, scope, opts) { - if (opts.simpleIdentifier) { - // Type is Identier for noncomputed properties - const identifierLiteral = createNode(); - identifierLiteral.type = 'literal'; - identifierLiteral.value = { - value: node.name - }; - return identifierLiteral; - } - /* istanbul ignore next */ - - - const block = scope || globals; // As scopes are not currently supported, they are not traversed upwards recursively - - if (block.props[node.name]) { - return block.props[node.name]; - } // Seems this will only be entered once scopes added and entered - - /* istanbul ignore next */ - - - if (globals.props[node.name]) { - return globals.props[node.name]; - } - - return null; -}; - -let _createSymbol = null; - -const getSymbol = function getSymbol(node, globals, scope, opt) { - const opts = opt || {}; - - switch (node.type) { - case 'Identifier': - { - return getIdentifier(node, globals, scope, opts); - } - - case 'MemberExpression': - { - const obj = getSymbol(node.object, globals, scope, opts); - const propertySymbol = getSymbol(node.property, globals, scope, { - simpleIdentifier: !node.computed - }); - const propertyValue = getSymbolValue(propertySymbol); - /* istanbul ignore next */ - - if (obj && propertyValue && obj.props[propertyValue]) { - const block = obj.props[propertyValue]; - return block; - } - /* - if (opts.createMissingProps && propertyValue) { - obj.props[propertyValue] = createNode(); - return obj.props[propertyValue]; - } - */ - - /* istanbul ignore next */ - - - debug(`MemberExpression: Missing property ${node.property.name}`); - /* istanbul ignore next */ - - return null; - } - - case 'ClassDeclaration': - case 'ClassExpression': - case 'FunctionExpression': - case 'FunctionDeclaration': - case 'ArrowFunctionExpression': - { - const val = createNode(); - val.props.prototype = createNode(); - val.props.prototype.type = 'object'; - val.type = 'object'; - val.value = node; - return val; - } - - case 'AssignmentExpression': - { - return _createSymbol(node.left, globals, node.right, scope, opts); - } - - case 'ClassBody': - { - const val = createNode(); - node.body.forEach(method => { - val.props[method.key.name] = createNode(); - val.props[method.key.name].type = 'object'; - val.props[method.key.name].value = method.value; - }); - val.type = 'object'; - val.value = node; - return val; - } - - case 'ObjectExpression': - { - const val = createNode(); - val.type = 'object'; - node.properties.forEach(prop => { - if ([// @typescript-eslint/parser, espree, acorn, etc. - 'SpreadElement', // babel-eslint - 'ExperimentalSpreadProperty'].includes(prop.type)) { - return; - } - - const propVal = getSymbol(prop.value, globals, scope, opts); - /* istanbul ignore next */ - - if (propVal) { - val.props[prop.key.name] = propVal; - } - }); - return val; - } - - case 'Literal': - { - const val = createNode(); - val.type = 'literal'; - val.value = node; - return val; - } - } - /* istanbul ignore next */ - - - return null; -}; - -const createBlockSymbol = function createBlockSymbol(block, name, value, globals, isGlobal) { - block.props[name] = value; - - if (isGlobal && globals.props.window && globals.props.window.special) { - globals.props.window.props[name] = value; - } -}; - -_createSymbol = function createSymbol(node, globals, value, scope, isGlobal) { - const block = scope || globals; - let symbol; - - switch (node.type) { - case 'FunctionDeclaration': // Fallthrough - - case 'ClassDeclaration': - { - if (node.id && node.id.type === 'Identifier') { - return _createSymbol(node.id, globals, node, globals); - } - - break; - } - - case 'Identifier': - { - if (value) { - const valueSymbol = getSymbol(value, globals, block); - /* istanbul ignore next */ - - if (valueSymbol) { - createBlockSymbol(block, node.name, valueSymbol, globals, isGlobal); - return block.props[node.name]; - } - /* istanbul ignore next */ - - - debug('Identifier: Missing value symbol for %s', node.name); - } else { - createBlockSymbol(block, node.name, createNode(), globals, isGlobal); - return block.props[node.name]; - } - /* istanbul ignore next */ - - - break; - } - - case 'MemberExpression': - { - symbol = getSymbol(node.object, globals, block); - const propertySymbol = getSymbol(node.property, globals, block, { - simpleIdentifier: !node.computed - }); - const propertyValue = getSymbolValue(propertySymbol); - - if (symbol && propertyValue) { - createBlockSymbol(symbol, propertyValue, getSymbol(value, globals, block), globals, isGlobal); - return symbol.props[propertyValue]; - } - /* istanbul ignore next */ - - - debug('MemberExpression: Missing symbol: %s', node.property.name); - break; - } - } - - return null; -}; // Creates variables from variable definitions - - -const initVariables = function initVariables(node, globals, opts) { - switch (node.type) { - case 'Program': - { - node.body.forEach(childNode => { - initVariables(childNode, globals, opts); - }); - break; - } - - case 'ExpressionStatement': - { - initVariables(node.expression, globals, opts); - break; - } - - case 'VariableDeclaration': - { - node.declarations.forEach(declaration => { - // let and const - const symbol = _createSymbol(declaration.id, globals, null, globals); - - if (opts.initWindow && node.kind === 'var' && globals.props.window) { - // If var, also add to window - globals.props.window.props[declaration.id.name] = symbol; - } - }); - break; - } - - case 'ExportNamedDeclaration': - { - if (node.declaration) { - initVariables(node.declaration, globals, opts); - } - - break; - } - } -}; // Populates variable maps using AST - - -const mapVariables = function mapVariables(node, globals, opt, isExport) { - /* istanbul ignore next */ - const opts = opt || {}; - /* istanbul ignore next */ - - switch (node.type) { - case 'Program': - { - if (opts.ancestorsOnly) { - return false; - } - - node.body.forEach(childNode => { - mapVariables(childNode, globals, opts); - }); - break; - } - - case 'ExpressionStatement': - { - mapVariables(node.expression, globals, opts); - break; - } - - case 'AssignmentExpression': - { - _createSymbol(node.left, globals, node.right); - - break; - } - - case 'VariableDeclaration': - { - node.declarations.forEach(declaration => { - const isGlobal = opts.initWindow && node.kind === 'var' && globals.props.window; - - const symbol = _createSymbol(declaration.id, globals, declaration.init, globals, isGlobal); - - if (symbol && isExport) { - symbol.exported = true; - } - }); - break; - } - - case 'FunctionDeclaration': - { - /* istanbul ignore next */ - if (node.id.type === 'Identifier') { - _createSymbol(node.id, globals, node, globals, true); - } - - break; - } - - case 'ExportDefaultDeclaration': - { - const symbol = _createSymbol(node.declaration, globals, node.declaration); - - if (symbol) { - symbol.exported = true; - } else if (!node.id) { - globals.ANONYMOUS_DEFAULT = node.declaration; - } - - break; - } - - case 'ExportNamedDeclaration': - { - if (node.declaration) { - if (node.declaration.type === 'VariableDeclaration') { - mapVariables(node.declaration, globals, opts, true); - } else { - const symbol = _createSymbol(node.declaration, globals, node.declaration); - /* istanbul ignore next */ - - - if (symbol) { - symbol.exported = true; - } - } - } - - node.specifiers.forEach(specifier => { - mapVariables(specifier, globals, opts); - }); - break; - } - - case 'ExportSpecifier': - { - const symbol = getSymbol(node.local, globals, globals); - /* istanbul ignore next */ - - if (symbol) { - symbol.exported = true; - } - - break; - } - - case 'ClassDeclaration': - { - _createSymbol(node.id, globals, node.body, globals); - - break; - } - - default: - { - /* istanbul ignore next */ - return false; - } - } - - return true; -}; - -const findNode = function findNode(node, block, cache) { - let blockCache = cache || []; - /* istanbul ignore next */ - - if (!block || blockCache.includes(block)) { - return false; - } - - blockCache = blockCache.slice(); - blockCache.push(block); - - if (block.type === 'object') { - if (block.value === node) { - return true; - } - } - - const props = block.props; - - for (const prop in props) { - /* istanbul ignore next */ - if (Object.prototype.hasOwnProperty.call(props, prop)) { - const propval = props[prop]; // Only check node if it had resolvable value - - if (propval && findNode(node, propval, blockCache)) { - return true; - } - } - } - - return false; -}; - -const findExportedNode = function findExportedNode(block, node, cache) { - if (block.ANONYMOUS_DEFAULT === node) { - return true; - } - /* istanbul ignore next */ - - - if (block === null) { - return false; - } - - const blockCache = cache || []; - const props = block.props; - - for (const key in props) { - /* istanbul ignore next */ - if (Object.prototype.hasOwnProperty.call(props, key)) { - blockCache.push(props[key]); - - if (props[key].exported) { - if (node === props[key].value || findNode(node, props[key].value)) { - return true; - } - } // No need to check `props[key]` for exported nodes as ESM - // exports are only global - - } - } - - return false; -}; - -const isNodeExported = function isNodeExported(node, globals, opt) { - if (opt.initModuleExports && globals.props.module && globals.props.module.props.exports) { - if (findNode(node, globals.props.module.props.exports)) { - return true; - } - } - - if (opt.initWindow && globals.props.window) { - if (findNode(node, globals.props.window)) { - return true; - } - } - - if (opt.esm && findExportedNode(globals, node)) { - return true; - } - - return false; -}; - -const parseRecursive = function parseRecursive(node, globalVars, opts) { - // Iterate from top using recursion - stop at first processed node from top - if (node.parent) { - if (parseRecursive(node.parent, globalVars, opts)) { - return true; - } - } - - return mapVariables(node, globalVars, opts); -}; - -const parse = function parse(ast, node, opt) { - /* istanbul ignore next */ - const opts = opt || { - ancestorsOnly: false, - esm: true, - initModuleExports: true, - initWindow: true - }; - const globalVars = createNode(); - - if (opts.initModuleExports) { - globalVars.props.module = createNode(); - globalVars.props.module.props.exports = createNode(); - globalVars.props.exports = globalVars.props.module.props.exports; - } - - if (opts.initWindow) { - globalVars.props.window = createNode(); - globalVars.props.window.special = true; - } - - if (opts.ancestorsOnly) { - parseRecursive(node, globalVars, opts); - } else { - initVariables(ast, globalVars, opts); - mapVariables(ast, globalVars, opts); - } - - return { - globalVars - }; -}; - -const isExported = function isExported(node, parseResult, opt) { - return isNodeExported(node, parseResult.globalVars, opt); -}; - -var _default = { - isExported, - parse -}; -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=exportParser.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/exportParser.js.map b/node_modules/eslint-plugin-jsdoc/dist/exportParser.js.map deleted file mode 100644 index bb7c20c1..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/exportParser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/exportParser.js"],"names":["debug","createNode","props","getSymbolValue","symbol","type","value","getIdentifier","node","globals","scope","opts","simpleIdentifier","identifierLiteral","name","block","createSymbol","getSymbol","opt","obj","object","propertySymbol","property","computed","propertyValue","val","prototype","left","right","body","forEach","method","key","properties","prop","includes","propVal","createBlockSymbol","isGlobal","window","special","id","valueSymbol","initVariables","childNode","expression","declarations","declaration","initWindow","kind","mapVariables","isExport","ancestorsOnly","init","exported","ANONYMOUS_DEFAULT","specifiers","specifier","local","findNode","cache","blockCache","slice","push","Object","hasOwnProperty","call","propval","findExportedNode","isNodeExported","initModuleExports","module","exports","esm","parseRecursive","globalVars","parent","parse","ast","isExported","parseResult"],"mappings":"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","sourcesContent":["import debugModule from 'debug';\n\nconst debug = debugModule('requireExportJsdoc');\n\nconst createNode = function () {\n return {\n props: {},\n };\n};\n\nconst getSymbolValue = function (symbol) {\n /* istanbul ignore next */\n if (!symbol) {\n /* istanbul ignore next */\n return null;\n }\n /* istanbul ignore next */\n if (symbol.type === 'literal') {\n return symbol.value.value;\n }\n\n /* istanbul ignore next */\n return null;\n};\n\nconst getIdentifier = function (node, globals, scope, opts) {\n if (opts.simpleIdentifier) {\n // Type is Identier for noncomputed properties\n const identifierLiteral = createNode();\n identifierLiteral.type = 'literal';\n identifierLiteral.value = {value: node.name};\n\n return identifierLiteral;\n }\n\n /* istanbul ignore next */\n const block = scope || globals;\n\n // As scopes are not currently supported, they are not traversed upwards recursively\n if (block.props[node.name]) {\n return block.props[node.name];\n }\n\n // Seems this will only be entered once scopes added and entered\n /* istanbul ignore next */\n if (globals.props[node.name]) {\n return globals.props[node.name];\n }\n\n return null;\n};\n\nlet createSymbol = null;\nconst getSymbol = function (node, globals, scope, opt) {\n const opts = opt || {};\n switch (node.type) {\n case 'Identifier': {\n return getIdentifier(node, globals, scope, opts);\n } case 'MemberExpression': {\n const obj = getSymbol(node.object, globals, scope, opts);\n const propertySymbol = getSymbol(node.property, globals, scope, {simpleIdentifier: !node.computed});\n const propertyValue = getSymbolValue(propertySymbol);\n\n /* istanbul ignore next */\n if (obj && propertyValue && obj.props[propertyValue]) {\n const block = obj.props[propertyValue];\n\n return block;\n }\n\n /*\n if (opts.createMissingProps && propertyValue) {\n obj.props[propertyValue] = createNode();\n\n return obj.props[propertyValue];\n }\n */\n /* istanbul ignore next */\n debug(`MemberExpression: Missing property ${node.property.name}`);\n\n /* istanbul ignore next */\n return null;\n } case 'ClassDeclaration': case 'ClassExpression': case 'FunctionExpression': case 'FunctionDeclaration': case 'ArrowFunctionExpression': {\n const val = createNode();\n val.props.prototype = createNode();\n val.props.prototype.type = 'object';\n val.type = 'object';\n val.value = node;\n\n return val;\n } case 'AssignmentExpression': {\n return createSymbol(node.left, globals, node.right, scope, opts);\n } case 'ClassBody': {\n const val = createNode();\n node.body.forEach((method) => {\n val.props[method.key.name] = createNode();\n val.props[method.key.name].type = 'object';\n val.props[method.key.name].value = method.value;\n });\n val.type = 'object';\n val.value = node;\n\n return val;\n } case 'ObjectExpression': {\n const val = createNode();\n val.type = 'object';\n node.properties.forEach((prop) => {\n if ([\n // @typescript-eslint/parser, espree, acorn, etc.\n 'SpreadElement',\n\n // babel-eslint\n 'ExperimentalSpreadProperty',\n ].includes(prop.type)) {\n return;\n }\n const propVal = getSymbol(prop.value, globals, scope, opts);\n /* istanbul ignore next */\n if (propVal) {\n val.props[prop.key.name] = propVal;\n }\n });\n\n return val;\n } case 'Literal': {\n const val = createNode();\n val.type = 'literal';\n val.value = node;\n\n return val;\n }\n }\n\n /* istanbul ignore next */\n return null;\n};\n\nconst createBlockSymbol = function (block, name, value, globals, isGlobal) {\n block.props[name] = value;\n if (isGlobal && globals.props.window && globals.props.window.special) {\n globals.props.window.props[name] = value;\n }\n};\n\ncreateSymbol = function (node, globals, value, scope, isGlobal) {\n const block = scope || globals;\n let symbol;\n switch (node.type) {\n case 'FunctionDeclaration':\n\n // Fallthrough\n case 'ClassDeclaration': {\n if (node.id && node.id.type === 'Identifier') {\n return createSymbol(node.id, globals, node, globals);\n }\n break;\n } case 'Identifier': {\n if (value) {\n const valueSymbol = getSymbol(value, globals, block);\n /* istanbul ignore next */\n if (valueSymbol) {\n createBlockSymbol(block, node.name, valueSymbol, globals, isGlobal);\n\n return block.props[node.name];\n }\n /* istanbul ignore next */\n debug('Identifier: Missing value symbol for %s', node.name);\n } else {\n createBlockSymbol(block, node.name, createNode(), globals, isGlobal);\n\n return block.props[node.name];\n }\n /* istanbul ignore next */\n break;\n } case 'MemberExpression': {\n symbol = getSymbol(node.object, globals, block);\n\n const propertySymbol = getSymbol(node.property, globals, block, {simpleIdentifier: !node.computed});\n const propertyValue = getSymbolValue(propertySymbol);\n if (symbol && propertyValue) {\n createBlockSymbol(symbol, propertyValue, getSymbol(value, globals, block), globals, isGlobal);\n\n return symbol.props[propertyValue];\n }\n /* istanbul ignore next */\n debug('MemberExpression: Missing symbol: %s', node.property.name);\n break;\n }\n }\n\n return null;\n};\n\n// Creates variables from variable definitions\nconst initVariables = function (node, globals, opts) {\n switch (node.type) {\n case 'Program': {\n node.body.forEach((childNode) => {\n initVariables(childNode, globals, opts);\n });\n break;\n } case 'ExpressionStatement': {\n initVariables(node.expression, globals, opts);\n break;\n } case 'VariableDeclaration': {\n node.declarations.forEach((declaration) => {\n // let and const\n const symbol = createSymbol(declaration.id, globals, null, globals);\n if (opts.initWindow && node.kind === 'var' && globals.props.window) {\n // If var, also add to window\n globals.props.window.props[declaration.id.name] = symbol;\n }\n });\n break;\n } case 'ExportNamedDeclaration': {\n if (node.declaration) {\n initVariables(node.declaration, globals, opts);\n }\n break;\n }\n }\n};\n\n// Populates variable maps using AST\nconst mapVariables = function (node, globals, opt, isExport) {\n /* istanbul ignore next */\n const opts = opt || {};\n /* istanbul ignore next */\n switch (node.type) {\n case 'Program': {\n if (opts.ancestorsOnly) {\n return false;\n }\n node.body.forEach((childNode) => {\n mapVariables(childNode, globals, opts);\n });\n break;\n } case 'ExpressionStatement': {\n mapVariables(node.expression, globals, opts);\n break;\n } case 'AssignmentExpression': {\n createSymbol(node.left, globals, node.right);\n break;\n } case 'VariableDeclaration': {\n node.declarations.forEach((declaration) => {\n const isGlobal = opts.initWindow && node.kind === 'var' && globals.props.window;\n const symbol = createSymbol(declaration.id, globals, declaration.init, globals, isGlobal);\n if (symbol && isExport) {\n symbol.exported = true;\n }\n });\n break;\n } case 'FunctionDeclaration': {\n /* istanbul ignore next */\n if (node.id.type === 'Identifier') {\n createSymbol(node.id, globals, node, globals, true);\n }\n break;\n } case 'ExportDefaultDeclaration': {\n const symbol = createSymbol(node.declaration, globals, node.declaration);\n if (symbol) {\n symbol.exported = true;\n } else if (!node.id) {\n globals.ANONYMOUS_DEFAULT = node.declaration;\n }\n break;\n } case 'ExportNamedDeclaration': {\n if (node.declaration) {\n if (node.declaration.type === 'VariableDeclaration') {\n mapVariables(node.declaration, globals, opts, true);\n } else {\n const symbol = createSymbol(node.declaration, globals, node.declaration);\n /* istanbul ignore next */\n if (symbol) {\n symbol.exported = true;\n }\n }\n }\n node.specifiers.forEach((specifier) => {\n mapVariables(specifier, globals, opts);\n });\n break;\n } case 'ExportSpecifier': {\n const symbol = getSymbol(node.local, globals, globals);\n /* istanbul ignore next */\n if (symbol) {\n symbol.exported = true;\n }\n break;\n } case 'ClassDeclaration': {\n createSymbol(node.id, globals, node.body, globals);\n break;\n } default: {\n /* istanbul ignore next */\n return false;\n }\n }\n\n return true;\n};\n\nconst findNode = function (node, block, cache) {\n let blockCache = cache || [];\n /* istanbul ignore next */\n if (!block || blockCache.includes(block)) {\n return false;\n }\n blockCache = blockCache.slice();\n blockCache.push(block);\n\n if (block.type === 'object') {\n if (block.value === node) {\n return true;\n }\n }\n\n const {props} = block;\n for (const prop in props) {\n /* istanbul ignore next */\n if (Object.prototype.hasOwnProperty.call(props, prop)) {\n const propval = props[prop];\n\n // Only check node if it had resolvable value\n if (propval && findNode(node, propval, blockCache)) {\n return true;\n }\n }\n }\n\n return false;\n};\n\nconst findExportedNode = function (block, node, cache) {\n if (block.ANONYMOUS_DEFAULT === node) {\n return true;\n }\n /* istanbul ignore next */\n if (block === null) {\n return false;\n }\n const blockCache = cache || [];\n const {props} = block;\n for (const key in props) {\n /* istanbul ignore next */\n if (Object.prototype.hasOwnProperty.call(props, key)) {\n blockCache.push(props[key]);\n if (props[key].exported) {\n if (node === props[key].value || findNode(node, props[key].value)) {\n return true;\n }\n }\n\n // No need to check `props[key]` for exported nodes as ESM\n // exports are only global\n }\n }\n\n return false;\n};\n\nconst isNodeExported = function (node, globals, opt) {\n if (opt.initModuleExports && globals.props.module && globals.props.module.props.exports) {\n if (findNode(node, globals.props.module.props.exports)) {\n return true;\n }\n }\n\n if (opt.initWindow && globals.props.window) {\n if (findNode(node, globals.props.window)) {\n return true;\n }\n }\n\n if (opt.esm && findExportedNode(globals, node)) {\n return true;\n }\n\n return false;\n};\n\nconst parseRecursive = function (node, globalVars, opts) {\n // Iterate from top using recursion - stop at first processed node from top\n if (node.parent) {\n if (parseRecursive(node.parent, globalVars, opts)) {\n return true;\n }\n }\n\n return mapVariables(node, globalVars, opts);\n};\n\nconst parse = function (ast, node, opt) {\n /* istanbul ignore next */\n const opts = opt || {\n ancestorsOnly: false,\n esm: true,\n initModuleExports: true,\n initWindow: true,\n };\n\n const globalVars = createNode();\n if (opts.initModuleExports) {\n globalVars.props.module = createNode();\n globalVars.props.module.props.exports = createNode();\n globalVars.props.exports = globalVars.props.module.props.exports;\n }\n if (opts.initWindow) {\n globalVars.props.window = createNode();\n globalVars.props.window.special = true;\n }\n\n if (opts.ancestorsOnly) {\n parseRecursive(node, globalVars, opts);\n } else {\n initVariables(ast, globalVars, opts);\n mapVariables(ast, globalVars, opts);\n }\n\n return {\n globalVars,\n };\n};\n\nconst isExported = function (node, parseResult, opt) {\n return isNodeExported(node, parseResult.globalVars, opt);\n};\n\nexport default {\n isExported,\n parse,\n};\n"],"file":"exportParser.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/index.js b/node_modules/eslint-plugin-jsdoc/dist/index.js deleted file mode 100644 index 932938bd..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/index.js +++ /dev/null @@ -1,172 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _checkAccess = _interopRequireDefault(require("./rules/checkAccess")); - -var _checkAlignment = _interopRequireDefault(require("./rules/checkAlignment")); - -var _checkExamples = _interopRequireDefault(require("./rules/checkExamples")); - -var _checkIndentation = _interopRequireDefault(require("./rules/checkIndentation")); - -var _checkParamNames = _interopRequireDefault(require("./rules/checkParamNames")); - -var _checkPropertyNames = _interopRequireDefault(require("./rules/checkPropertyNames")); - -var _checkSyntax = _interopRequireDefault(require("./rules/checkSyntax")); - -var _checkTagNames = _interopRequireDefault(require("./rules/checkTagNames")); - -var _checkTypes = _interopRequireDefault(require("./rules/checkTypes")); - -var _checkValues = _interopRequireDefault(require("./rules/checkValues")); - -var _emptyTags = _interopRequireDefault(require("./rules/emptyTags")); - -var _implementsOnClasses = _interopRequireDefault(require("./rules/implementsOnClasses")); - -var _matchDescription = _interopRequireDefault(require("./rules/matchDescription")); - -var _newlineAfterDescription = _interopRequireDefault(require("./rules/newlineAfterDescription")); - -var _noBadBlocks = _interopRequireDefault(require("./rules/noBadBlocks")); - -var _noDefaults = _interopRequireDefault(require("./rules/noDefaults")); - -var _noTypes = _interopRequireDefault(require("./rules/noTypes")); - -var _noUndefinedTypes = _interopRequireDefault(require("./rules/noUndefinedTypes")); - -var _requireDescriptionCompleteSentence = _interopRequireDefault(require("./rules/requireDescriptionCompleteSentence")); - -var _requireDescription = _interopRequireDefault(require("./rules/requireDescription")); - -var _requireExample = _interopRequireDefault(require("./rules/requireExample")); - -var _requireFileOverview = _interopRequireDefault(require("./rules/requireFileOverview")); - -var _requireHyphenBeforeParamDescription = _interopRequireDefault(require("./rules/requireHyphenBeforeParamDescription")); - -var _requireParamName = _interopRequireDefault(require("./rules/requireParamName")); - -var _requireParam = _interopRequireDefault(require("./rules/requireParam")); - -var _requireParamDescription = _interopRequireDefault(require("./rules/requireParamDescription")); - -var _requireParamType = _interopRequireDefault(require("./rules/requireParamType")); - -var _requireProperty = _interopRequireDefault(require("./rules/requireProperty")); - -var _requirePropertyDescription = _interopRequireDefault(require("./rules/requirePropertyDescription")); - -var _requirePropertyName = _interopRequireDefault(require("./rules/requirePropertyName")); - -var _requirePropertyType = _interopRequireDefault(require("./rules/requirePropertyType")); - -var _requireReturns = _interopRequireDefault(require("./rules/requireReturns")); - -var _requireReturnsCheck = _interopRequireDefault(require("./rules/requireReturnsCheck")); - -var _requireReturnsDescription = _interopRequireDefault(require("./rules/requireReturnsDescription")); - -var _requireReturnsType = _interopRequireDefault(require("./rules/requireReturnsType")); - -var _validTypes = _interopRequireDefault(require("./rules/validTypes")); - -var _requireJsdoc = _interopRequireDefault(require("./rules/requireJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* eslint-disable import/max-dependencies */ -var _default = { - configs: { - recommended: { - plugins: ['jsdoc'], - rules: { - 'jsdoc/check-access': 'warn', - 'jsdoc/check-alignment': 'warn', - 'jsdoc/check-examples': 'off', - 'jsdoc/check-indentation': 'off', - 'jsdoc/check-param-names': 'warn', - 'jsdoc/check-property-names': 'warn', - 'jsdoc/check-syntax': 'off', - 'jsdoc/check-tag-names': 'warn', - 'jsdoc/check-types': 'warn', - 'jsdoc/check-values': 'warn', - 'jsdoc/empty-tags': 'warn', - 'jsdoc/implements-on-classes': 'warn', - 'jsdoc/match-description': 'off', - 'jsdoc/newline-after-description': 'warn', - 'jsdoc/no-bad-blocks': 'off', - 'jsdoc/no-defaults': 'off', - 'jsdoc/no-types': 'off', - 'jsdoc/no-undefined-types': 'warn', - 'jsdoc/require-description': 'off', - 'jsdoc/require-description-complete-sentence': 'off', - 'jsdoc/require-example': 'off', - 'jsdoc/require-file-overview': 'off', - 'jsdoc/require-hyphen-before-param-description': 'off', - 'jsdoc/require-jsdoc': 'warn', - 'jsdoc/require-param': 'warn', - 'jsdoc/require-param-description': 'warn', - 'jsdoc/require-param-name': 'warn', - 'jsdoc/require-param-type': 'warn', - 'jsdoc/require-property': 'warn', - 'jsdoc/require-property-description': 'warn', - 'jsdoc/require-property-name': 'warn', - 'jsdoc/require-property-type': 'warn', - 'jsdoc/require-returns': 'warn', - 'jsdoc/require-returns-check': 'warn', - 'jsdoc/require-returns-description': 'warn', - 'jsdoc/require-returns-type': 'warn', - 'jsdoc/valid-types': 'warn' - } - } - }, - rules: { - 'check-access': _checkAccess.default, - 'check-alignment': _checkAlignment.default, - 'check-examples': _checkExamples.default, - 'check-indentation': _checkIndentation.default, - 'check-param-names': _checkParamNames.default, - 'check-property-names': _checkPropertyNames.default, - 'check-syntax': _checkSyntax.default, - 'check-tag-names': _checkTagNames.default, - 'check-types': _checkTypes.default, - 'check-values': _checkValues.default, - 'empty-tags': _emptyTags.default, - 'implements-on-classes': _implementsOnClasses.default, - 'match-description': _matchDescription.default, - 'newline-after-description': _newlineAfterDescription.default, - 'no-bad-blocks': _noBadBlocks.default, - 'no-defaults': _noDefaults.default, - 'no-types': _noTypes.default, - 'no-undefined-types': _noUndefinedTypes.default, - 'require-description': _requireDescription.default, - 'require-description-complete-sentence': _requireDescriptionCompleteSentence.default, - 'require-example': _requireExample.default, - 'require-file-overview': _requireFileOverview.default, - 'require-hyphen-before-param-description': _requireHyphenBeforeParamDescription.default, - 'require-jsdoc': _requireJsdoc.default, - 'require-param': _requireParam.default, - 'require-param-description': _requireParamDescription.default, - 'require-param-name': _requireParamName.default, - 'require-param-type': _requireParamType.default, - 'require-property': _requireProperty.default, - 'require-property-description': _requirePropertyDescription.default, - 'require-property-name': _requirePropertyName.default, - 'require-property-type': _requirePropertyType.default, - 'require-returns': _requireReturns.default, - 'require-returns-check': _requireReturnsCheck.default, - 'require-returns-description': _requireReturnsDescription.default, - 'require-returns-type': _requireReturnsType.default, - 'valid-types': _validTypes.default - } -}; -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/index.js.map b/node_modules/eslint-plugin-jsdoc/dist/index.js.map deleted file mode 100644 index 0098c307..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/index.js"],"names":["configs","recommended","plugins","rules","checkAccess","checkAlignment","checkExamples","checkIndentation","checkParamNames","checkPropertyNames","checkSyntax","checkTagNames","checkTypes","checkValues","emptyTags","implementsOnClasses","matchDescription","newlineAfterDescription","noBadBlocks","noDefaults","noTypes","noUndefinedTypes","requireDescription","requireDescriptionCompleteSentence","requireExample","requireFileOverview","requireHyphenBeforeParamDescription","requireJsdoc","requireParam","requireParamDescription","requireParamName","requireParamType","requireProperty","requirePropertyDescription","requirePropertyName","requirePropertyType","requireReturns","requireReturnsCheck","requireReturnsDescription","requireReturnsType","validTypes"],"mappings":";;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AArCA;eAuCe;AACbA,EAAAA,OAAO,EAAE;AACPC,IAAAA,WAAW,EAAE;AACXC,MAAAA,OAAO,EAAE,CAAC,OAAD,CADE;AAEXC,MAAAA,KAAK,EAAE;AACL,8BAAsB,MADjB;AAEL,iCAAyB,MAFpB;AAGL,gCAAwB,KAHnB;AAIL,mCAA2B,KAJtB;AAKL,mCAA2B,MALtB;AAML,sCAA8B,MANzB;AAOL,8BAAsB,KAPjB;AAQL,iCAAyB,MARpB;AASL,6BAAqB,MAThB;AAUL,8BAAsB,MAVjB;AAWL,4BAAoB,MAXf;AAYL,uCAA+B,MAZ1B;AAaL,mCAA2B,KAbtB;AAcL,2CAAmC,MAd9B;AAeL,+BAAuB,KAflB;AAgBL,6BAAqB,KAhBhB;AAiBL,0BAAkB,KAjBb;AAkBL,oCAA4B,MAlBvB;AAmBL,qCAA6B,KAnBxB;AAoBL,uDAA+C,KApB1C;AAqBL,iCAAyB,KArBpB;AAsBL,uCAA+B,KAtB1B;AAuBL,yDAAiD,KAvB5C;AAwBL,+BAAuB,MAxBlB;AAyBL,+BAAuB,MAzBlB;AA0BL,2CAAmC,MA1B9B;AA2BL,oCAA4B,MA3BvB;AA4BL,oCAA4B,MA5BvB;AA6BL,kCAA0B,MA7BrB;AA8BL,8CAAsC,MA9BjC;AA+BL,uCAA+B,MA/B1B;AAgCL,uCAA+B,MAhC1B;AAiCL,iCAAyB,MAjCpB;AAkCL,uCAA+B,MAlC1B;AAmCL,6CAAqC,MAnChC;AAoCL,sCAA8B,MApCzB;AAqCL,6BAAqB;AArChB;AAFI;AADN,GADI;AA6CbA,EAAAA,KAAK,EAAE;AACL,oBAAgBC,oBADX;AAEL,uBAAmBC,uBAFd;AAGL,sBAAkBC,sBAHb;AAIL,yBAAqBC,yBAJhB;AAKL,yBAAqBC,wBALhB;AAML,4BAAwBC,2BANnB;AAOL,oBAAgBC,oBAPX;AAQL,uBAAmBC,sBARd;AASL,mBAAeC,mBATV;AAUL,oBAAgBC,oBAVX;AAWL,kBAAcC,kBAXT;AAYL,6BAAyBC,4BAZpB;AAaL,yBAAqBC,yBAbhB;AAcL,iCAA6BC,gCAdxB;AAeL,qBAAiBC,oBAfZ;AAgBL,mBAAeC,mBAhBV;AAiBL,gBAAYC,gBAjBP;AAkBL,0BAAsBC,yBAlBjB;AAmBL,2BAAuBC,2BAnBlB;AAoBL,6CAAyCC,2CApBpC;AAqBL,uBAAmBC,uBArBd;AAsBL,6BAAyBC,4BAtBpB;AAuBL,+CAA2CC,4CAvBtC;AAwBL,qBAAiBC,qBAxBZ;AAyBL,qBAAiBC,qBAzBZ;AA0BL,iCAA6BC,gCA1BxB;AA2BL,0BAAsBC,yBA3BjB;AA4BL,0BAAsBC,yBA5BjB;AA6BL,wBAAoBC,wBA7Bf;AA8BL,oCAAgCC,mCA9B3B;AA+BL,6BAAyBC,4BA/BpB;AAgCL,6BAAyBC,4BAhCpB;AAiCL,uBAAmBC,uBAjCd;AAkCL,6BAAyBC,4BAlCpB;AAmCL,mCAA+BC,kCAnC1B;AAoCL,4BAAwBC,2BApCnB;AAqCL,mBAAeC;AArCV;AA7CM,C","sourcesContent":["/* eslint-disable import/max-dependencies */\nimport checkAccess from './rules/checkAccess';\nimport checkAlignment from './rules/checkAlignment';\nimport checkExamples from './rules/checkExamples';\nimport checkIndentation from './rules/checkIndentation';\nimport checkParamNames from './rules/checkParamNames';\nimport checkPropertyNames from './rules/checkPropertyNames';\nimport checkSyntax from './rules/checkSyntax';\nimport checkTagNames from './rules/checkTagNames';\nimport checkTypes from './rules/checkTypes';\nimport checkValues from './rules/checkValues';\nimport emptyTags from './rules/emptyTags';\nimport implementsOnClasses from './rules/implementsOnClasses';\nimport matchDescription from './rules/matchDescription';\nimport newlineAfterDescription from './rules/newlineAfterDescription';\nimport noBadBlocks from './rules/noBadBlocks';\nimport noDefaults from './rules/noDefaults';\nimport noTypes from './rules/noTypes';\nimport noUndefinedTypes from './rules/noUndefinedTypes';\nimport requireDescriptionCompleteSentence from './rules/requireDescriptionCompleteSentence';\nimport requireDescription from './rules/requireDescription';\nimport requireExample from './rules/requireExample';\nimport requireFileOverview from './rules/requireFileOverview';\nimport requireHyphenBeforeParamDescription from './rules/requireHyphenBeforeParamDescription';\nimport requireParamName from './rules/requireParamName';\nimport requireParam from './rules/requireParam';\nimport requireParamDescription from './rules/requireParamDescription';\nimport requireParamType from './rules/requireParamType';\nimport requireProperty from './rules/requireProperty';\nimport requirePropertyDescription from './rules/requirePropertyDescription';\nimport requirePropertyName from './rules/requirePropertyName';\nimport requirePropertyType from './rules/requirePropertyType';\nimport requireReturns from './rules/requireReturns';\nimport requireReturnsCheck from './rules/requireReturnsCheck';\nimport requireReturnsDescription from './rules/requireReturnsDescription';\nimport requireReturnsType from './rules/requireReturnsType';\nimport validTypes from './rules/validTypes';\nimport requireJsdoc from './rules/requireJsdoc';\n\nexport default {\n configs: {\n recommended: {\n plugins: ['jsdoc'],\n rules: {\n 'jsdoc/check-access': 'warn',\n 'jsdoc/check-alignment': 'warn',\n 'jsdoc/check-examples': 'off',\n 'jsdoc/check-indentation': 'off',\n 'jsdoc/check-param-names': 'warn',\n 'jsdoc/check-property-names': 'warn',\n 'jsdoc/check-syntax': 'off',\n 'jsdoc/check-tag-names': 'warn',\n 'jsdoc/check-types': 'warn',\n 'jsdoc/check-values': 'warn',\n 'jsdoc/empty-tags': 'warn',\n 'jsdoc/implements-on-classes': 'warn',\n 'jsdoc/match-description': 'off',\n 'jsdoc/newline-after-description': 'warn',\n 'jsdoc/no-bad-blocks': 'off',\n 'jsdoc/no-defaults': 'off',\n 'jsdoc/no-types': 'off',\n 'jsdoc/no-undefined-types': 'warn',\n 'jsdoc/require-description': 'off',\n 'jsdoc/require-description-complete-sentence': 'off',\n 'jsdoc/require-example': 'off',\n 'jsdoc/require-file-overview': 'off',\n 'jsdoc/require-hyphen-before-param-description': 'off',\n 'jsdoc/require-jsdoc': 'warn',\n 'jsdoc/require-param': 'warn',\n 'jsdoc/require-param-description': 'warn',\n 'jsdoc/require-param-name': 'warn',\n 'jsdoc/require-param-type': 'warn',\n 'jsdoc/require-property': 'warn',\n 'jsdoc/require-property-description': 'warn',\n 'jsdoc/require-property-name': 'warn',\n 'jsdoc/require-property-type': 'warn',\n 'jsdoc/require-returns': 'warn',\n 'jsdoc/require-returns-check': 'warn',\n 'jsdoc/require-returns-description': 'warn',\n 'jsdoc/require-returns-type': 'warn',\n 'jsdoc/valid-types': 'warn',\n },\n },\n },\n rules: {\n 'check-access': checkAccess,\n 'check-alignment': checkAlignment,\n 'check-examples': checkExamples,\n 'check-indentation': checkIndentation,\n 'check-param-names': checkParamNames,\n 'check-property-names': checkPropertyNames,\n 'check-syntax': checkSyntax,\n 'check-tag-names': checkTagNames,\n 'check-types': checkTypes,\n 'check-values': checkValues,\n 'empty-tags': emptyTags,\n 'implements-on-classes': implementsOnClasses,\n 'match-description': matchDescription,\n 'newline-after-description': newlineAfterDescription,\n 'no-bad-blocks': noBadBlocks,\n 'no-defaults': noDefaults,\n 'no-types': noTypes,\n 'no-undefined-types': noUndefinedTypes,\n 'require-description': requireDescription,\n 'require-description-complete-sentence': requireDescriptionCompleteSentence,\n 'require-example': requireExample,\n 'require-file-overview': requireFileOverview,\n 'require-hyphen-before-param-description': requireHyphenBeforeParamDescription,\n 'require-jsdoc': requireJsdoc,\n 'require-param': requireParam,\n 'require-param-description': requireParamDescription,\n 'require-param-name': requireParamName,\n 'require-param-type': requireParamType,\n 'require-property': requireProperty,\n 'require-property-description': requirePropertyDescription,\n 'require-property-name': requirePropertyName,\n 'require-property-type': requirePropertyType,\n 'require-returns': requireReturns,\n 'require-returns-check': requireReturnsCheck,\n 'require-returns-description': requireReturnsDescription,\n 'require-returns-type': requireReturnsType,\n 'valid-types': validTypes,\n },\n};\n"],"file":"index.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/iterateJsdoc.js b/node_modules/eslint-plugin-jsdoc/dist/iterateJsdoc.js deleted file mode 100644 index 5cbe1e70..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/iterateJsdoc.js +++ /dev/null @@ -1,689 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = iterateJsdoc; -exports.parseComment = exports.getSettings = void 0; - -var _commentParser = _interopRequireWildcard(require("comment-parser")); - -var _lodash = _interopRequireDefault(require("lodash")); - -var _jsdocUtils = _interopRequireDefault(require("./jsdocUtils")); - -var _getJSDocComment = _interopRequireWildcard(require("./eslint/getJSDocComment")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { 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; } - -// eslint-disable-next-line import/no-named-default -const globalState = new Map(); - -const skipSeeLink = parser => { - return (str, data) => { - if (data.tag === 'see' && str.match(/\{@link.+?\}/u)) { - return null; - } - - return parser(str, data); - }; -}; -/** - * - * @param {object} commentNode - * @param {string} indent Whitespace - * @param {boolean} [trim=true] - * @returns {object} - */ - - -const parseComment = (commentNode, indent, trim = true) => { - // Preserve JSDoc block start/end indentation. - return (0, _commentParser.default)(`${indent}/*${commentNode.value}${indent}*/`, { - // @see https://github.com/yavorskiy/comment-parser/issues/21 - parsers: [_commentParser.default.PARSERS.parse_tag, skipSeeLink((str, data) => { - if (['default', 'defaultvalue'].includes(data.tag)) { - return null; - } - - return _commentParser.default.PARSERS.parse_type(str, data); - }), skipSeeLink((str, data) => { - if (['example', 'return', 'returns', 'throws', 'exception', 'access', 'version', 'since', 'license', 'author', 'default', 'defaultvalue'].includes(data.tag)) { - return null; - } - - return _commentParser.default.PARSERS.parse_name(str, data); - }), // parse_description - (str, data) => { - // Only expected throw in previous step is if bad name (i.e., - // missing end bracket on optional name), but `@example` - // skips name parsing - - /* istanbul ignore next */ - if (data.errors && data.errors.length) { - return null; - } // Tweak original regex to capture only single optional space - - - const result = str.match(/^ ?((.|\s)+)?/u); // Always has at least whitespace due to `indent` we've added - - /* istanbul ignore next */ - - if (result) { - return { - data: { - description: result[1] === undefined ? '' : result[1] - }, - source: result[0] - }; - } // Always has at least whitespace due to `indent` we've added - - /* istanbul ignore next */ - - - return null; - }], - trim - })[0] || {}; -}; - -exports.parseComment = parseComment; - -const getBasicUtils = (context, { - tagNamePreference, - mode -}) => { - const utils = {}; - - utils.reportSettings = message => { - context.report({ - loc: { - start: { - column: 1, - line: 1 - } - }, - message - }); - }; - - utils.getPreferredTagNameObject = ({ - tagName - }) => { - const ret = _jsdocUtils.default.getPreferredTagName(context, mode, tagName, tagNamePreference); - - const isObject = ret && typeof ret === 'object'; - - if (ret === false || isObject && !ret.replacement) { - return { - blocked: true, - tagName - }; - } - - return ret; - }; - - return utils; -}; - -const getUtils = (node, jsdoc, jsdocNode, settings, report, context, iteratingAll) => { - const ancestors = context.getAncestors(); - const sourceCode = context.getSourceCode(); - const utils = getBasicUtils(context, settings); - const tagNamePreference = settings.tagNamePreference, - overrideReplacesDocs = settings.overrideReplacesDocs, - implementsReplacesDocs = settings.implementsReplacesDocs, - augmentsExtendsReplacesDocs = settings.augmentsExtendsReplacesDocs, - maxLines = settings.maxLines, - minLines = settings.minLines, - mode = settings.mode; - - utils.isIteratingFunction = () => { - return !iteratingAll || ['ArrowFunctionExpression', 'FunctionDeclaration', 'FunctionExpression'].includes(node && node.type); - }; - - utils.isVirtualFunction = () => { - return iteratingAll && utils.hasATag(['callback', 'function', 'func', 'method']); - }; - - utils.stringify = tagBlock => { - const indent = _jsdocUtils.default.getIndent(sourceCode); - - return (0, _commentParser.stringify)([tagBlock], { - indent - }).slice(indent.length - 1); - }; - - utils.reportJSDoc = (msg, tag, handler) => { - report(msg, handler ? fixer => { - handler(); - const replacement = utils.stringify(jsdoc); - return fixer.replaceText(jsdocNode, replacement); - } : null, tag); - }; - - utils.getFunctionParameterNames = () => { - return _jsdocUtils.default.getFunctionParameterNames(node); - }; - - utils.isConstructor = () => { - return node && node.parent && node.parent.kind === 'constructor'; - }; - - utils.isSetter = () => { - return node && node.parent.kind === 'set'; - }; - - utils.getJsdocTagsDeep = tagName => { - const name = utils.getPreferredTagName({ - tagName - }); - - if (!name) { - return false; - } - - return _jsdocUtils.default.getJsdocTagsDeep(jsdoc, name); - }; - - utils.getJsdocTags = tagName => { - const name = utils.getPreferredTagName({ - tagName - }); - - if (!name) { - return false; - } - - return _jsdocUtils.default.getJsdocTags(jsdoc, name); - }; - - utils.getPreferredTagName = ({ - tagName, - skipReportingBlockedTag = false, - allowObjectReturn = false, - defaultMessage = `Unexpected tag \`@${tagName}\`` - }) => { - const ret = _jsdocUtils.default.getPreferredTagName(context, mode, tagName, tagNamePreference); - - const isObject = ret && typeof ret === 'object'; - - if (utils.hasTag(tagName) && (ret === false || isObject && !ret.replacement)) { - if (skipReportingBlockedTag) { - return { - blocked: true, - tagName - }; - } - - const message = isObject && ret.message || defaultMessage; - report(message, null, utils.getTags(tagName)[0]); - return false; - } - - return isObject && !allowObjectReturn ? ret.replacement : ret; - }; - - utils.isValidTag = (name, definedTags) => { - return _jsdocUtils.default.isValidTag(context, mode, name, definedTags); - }; - - utils.hasATag = name => { - return _jsdocUtils.default.hasATag(jsdoc, name); - }; - - utils.hasTag = name => { - return _jsdocUtils.default.hasTag(jsdoc, name); - }; - - utils.avoidDocs = () => { - if (overrideReplacesDocs !== false && (utils.hasTag('override') || utils.classHasTag('override')) || implementsReplacesDocs !== false && (utils.hasTag('implements') || utils.classHasTag('implements')) || // inheritdoc implies that all documentation is inherited; see https://jsdoc.app/tags-inheritdoc.html - utils.hasTag('inheritdoc') || augmentsExtendsReplacesDocs && (utils.hasATag(['augments', 'extends']) || utils.classHasTag('augments') || utils.classHasTag('extends'))) { - return true; - } - - const exemptedBy = _lodash.default.get(context, 'options[0].exemptedBy'); - - if (exemptedBy && exemptedBy.length && utils.getPresentTags(exemptedBy).length) { - return true; - } - - return false; - }; - - utils.tagMustHaveEitherTypeOrNamePosition = tagName => { - return _jsdocUtils.default.tagMustHaveEitherTypeOrNamePosition(tagName); - }; - - utils.tagMightHaveEitherTypeOrNamePosition = tagName => { - return _jsdocUtils.default.tagMightHaveEitherTypeOrNamePosition(mode, tagName); - }; - - utils.tagMustHaveNamePosition = tagName => { - return _jsdocUtils.default.tagMustHaveNamePosition(tagName); - }; - - utils.tagMightHaveNamePosition = tagName => { - return _jsdocUtils.default.tagMightHaveNamePosition(tagName); - }; - - utils.tagMustHaveTypePosition = tagName => { - return _jsdocUtils.default.tagMustHaveTypePosition(mode, tagName); - }; - - utils.tagMightHaveTypePosition = tagName => { - return _jsdocUtils.default.tagMightHaveTypePosition(mode, tagName); - }; - - utils.isNamepathDefiningTag = tagName => { - return _jsdocUtils.default.isNamepathDefiningTag(tagName); - }; - - utils.hasDefinedTypeReturnTag = tag => { - return _jsdocUtils.default.hasDefinedTypeReturnTag(tag); - }; - - utils.hasReturnValue = () => { - return _jsdocUtils.default.hasReturnValue(node); - }; - - utils.isAsync = () => { - return node.async; - }; - - utils.getTags = tagName => { - return utils.filterTags(item => { - return item.tag === tagName; - }); - }; - - utils.getPresentTags = tagList => { - return utils.filterTags(tag => { - return tagList.includes(tag.tag); - }); - }; - - utils.filterTags = filter => { - return _jsdocUtils.default.filterTags(jsdoc.tags, filter); - }; - - utils.getTagsByType = tags => { - return _jsdocUtils.default.getTagsByType(context, mode, tags, tagNamePreference); - }; - - utils.hasOptionTag = tagName => { - const tags = _lodash.default.get(context, 'options[0].tags'); - - return Boolean(tags && tags.includes(tagName)); - }; - - utils.getClassNode = () => { - return [...ancestors, node].reverse().find(parent => { - return parent && ['ClassDeclaration', 'ClassExpression'].includes(parent.type); - }) || null; - }; - - utils.getClassJsdoc = () => { - const classNode = utils.getClassNode(); - - if (!classNode) { - return null; - } - - const classJsdocNode = (0, _getJSDocComment.default)(sourceCode, classNode, { - maxLines, - minLines - }); - - if (classJsdocNode) { - const indent = ' '.repeat(classJsdocNode.loc.start.column); - return parseComment(classJsdocNode, indent); - } - - return null; - }; - - utils.classHasTag = tagName => { - const classJsdoc = utils.getClassJsdoc(); - return Boolean(classJsdoc) && _jsdocUtils.default.hasTag(classJsdoc, tagName); - }; - - utils.forEachPreferredTag = (tagName, arrayHandler, skipReportingBlockedTag = false) => { - const targetTagName = utils.getPreferredTagName({ - skipReportingBlockedTag, - tagName - }); - - if (!targetTagName || skipReportingBlockedTag && targetTagName && typeof targetTagName === 'object') { - return; - } - - const matchingJsdocTags = _lodash.default.filter(jsdoc.tags || [], { - tag: targetTagName - }); - - matchingJsdocTags.forEach(matchingJsdocTag => { - arrayHandler(matchingJsdocTag, targetTagName); - }); - }; - - return utils; -}; - -const getSettings = context => { - /* eslint-disable sort-keys-fix/sort-keys-fix */ - const settings = { - // All rules - ignorePrivate: Boolean(_lodash.default.get(context, 'settings.jsdoc.ignorePrivate')), - maxLines: Number(_lodash.default.get(context, 'settings.jsdoc.maxLines', 1)), - minLines: Number(_lodash.default.get(context, 'settings.jsdoc.minLines', 0)), - // `check-tag-names` and many returns/param rules - tagNamePreference: _lodash.default.get(context, 'settings.jsdoc.tagNamePreference') || {}, - // `check-types` and `no-undefined-types` - preferredTypes: _lodash.default.get(context, 'settings.jsdoc.preferredTypes') || {}, - // `require-param`, `require-description`, `require-example`, `require-returns` - overrideReplacesDocs: _lodash.default.get(context, 'settings.jsdoc.overrideReplacesDocs'), - implementsReplacesDocs: _lodash.default.get(context, 'settings.jsdoc.implementsReplacesDocs'), - augmentsExtendsReplacesDocs: _lodash.default.get(context, 'settings.jsdoc.augmentsExtendsReplacesDocs'), - // Many rules, e.g., `check-tag-names` - mode: _lodash.default.get(context, 'settings.jsdoc.mode') || 'jsdoc' - }; - /* eslint-enable sort-keys-fix/sort-keys-fix */ - - return settings; -}; -/** - * Create the report function - * - * @param {object} context - * @param {object} commentNode - */ - - -exports.getSettings = getSettings; - -const makeReport = (context, commentNode) => { - const report = (message, fix = null, jsdocLoc = null, data = null) => { - let loc; - - if (jsdocLoc) { - const lineNumber = commentNode.loc.start.line + jsdocLoc.line; - loc = { - end: { - line: lineNumber - }, - start: { - line: lineNumber - } - }; - - if (jsdocLoc.column) { - const colNumber = commentNode.loc.start.column + jsdocLoc.column; - loc.end.column = colNumber; - loc.start.column = colNumber; - } - } - - context.report({ - data, - fix, - loc, - message, - node: commentNode - }); - }; - - return report; -}; -/** - * @typedef {ReturnType} Utils - * @typedef {ReturnType} Settings - * @typedef {( - * arg: { - * context: object, - * sourceCode: object, - * indent: string, - * jsdoc: object, - * jsdocNode: object, - * node: object | null, - * report: ReturnType, - * settings: Settings, - * utils: Utils, - * } - * ) => any } JsdocVisitor - */ - - -const iterate = (ruleConfig, context, lines, jsdocNode, node, settings, sourceCode, iterator, state, iteratingAll) => { - const sourceLine = lines[jsdocNode.loc.start.line - 1]; - const indent = sourceLine.charAt(0).repeat(jsdocNode.loc.start.column); - const jsdoc = parseComment(jsdocNode, indent, !ruleConfig.noTrim); - const report = makeReport(context, jsdocNode); - const utils = getUtils(node, jsdoc, jsdocNode, settings, report, context, iteratingAll); - - if (settings.ignorePrivate && !ruleConfig.checkPrivate && (utils.hasTag('private') || _lodash.default.filter(jsdoc.tags, { - tag: 'access' - }).some(({ - description - }) => { - return description === 'private'; - }))) { - return; - } - - iterator({ - context, - globalState, - indent, - iteratingAll, - jsdoc, - jsdocNode, - node, - report, - settings, - sourceCode, - state, - utils - }); -}; -/** - * Create an eslint rule that iterates over all JSDocs, regardless of whether - * they are attached to a function-like node. - * - * @param {JsdocVisitor} iterator - * @param {{meta: any}} ruleConfig - */ - - -const iterateAllJsdocs = (iterator, ruleConfig) => { - const trackedJsdocs = []; - - const callIterator = (context, node, jsdocNodes, state, lastCall) => { - const sourceCode = context.getSourceCode(); - const settings = getSettings(context); - const lines = sourceCode.lines; - const utils = getBasicUtils(context, settings); - jsdocNodes.forEach(jsdocNode => { - if (!/^\/\*\*\s/.test(sourceCode.getText(jsdocNode))) { - return; - } - - iterate(ruleConfig, context, lines, jsdocNode, node, settings, sourceCode, iterator, state, true); - }); - - if (lastCall && ruleConfig.exit) { - ruleConfig.exit({ - context, - state, - utils - }); - } - }; - - return { - create(context) { - const sourceCode = context.getSourceCode(); - const settings = getSettings(context); - const state = {}; - return { - '*:not(Program)'(node) { - const reducedNode = (0, _getJSDocComment.getReducedASTNode)(node, sourceCode); - - if (node !== reducedNode) { - return; - } - - const comment = (0, _getJSDocComment.default)(sourceCode, node, settings); - - if (trackedJsdocs.includes(comment)) { - return; - } - - if (!comment) { - if (ruleConfig.nonComment) { - ruleConfig.nonComment({ - node, - state - }); - } - - return; - } - - trackedJsdocs.push(comment); - callIterator(context, node, [comment], state); - }, - - 'Program:exit'() { - const allComments = sourceCode.getAllComments(); - const untrackedJSdoc = allComments.filter(node => { - return !trackedJsdocs.includes(node); - }); - callIterator(context, null, untrackedJSdoc, state, true); - } - - }; - }, - - meta: ruleConfig.meta - }; -}; -/** - * Create an eslint rule that iterates over all JSDocs, regardless of whether - * they are attached to a function-like node. - * - * @param {JsdocVisitor} iterator - * @param {{meta: any}} ruleConfig - */ - - -const checkFile = (iterator, ruleConfig) => { - return { - create(context) { - const sourceCode = context.getSourceCode(); - const settings = getSettings(context); - return { - 'Program:exit'() { - const allComments = sourceCode.getAllComments(); - const lines = sourceCode.lines; - const utils = getBasicUtils(context, settings); - iterator({ - allComments, - context, - lines, - makeReport, - settings, - sourceCode, - utils - }); - } - - }; - }, - - meta: ruleConfig.meta - }; -}; - -/** - * @param {JsdocVisitor} iterator - * @param {{ - * meta: any, - * contextDefaults?: true | string[], - * iterateAllJsdocs?: true, - * }} ruleConfig - */ -function iterateJsdoc(iterator, ruleConfig) { - const metaType = _lodash.default.get(ruleConfig, 'meta.type'); - - if (!metaType || !['problem', 'suggestion', 'layout'].includes(metaType)) { - throw new TypeError('Rule must include `meta.type` option (with value "problem", "suggestion", or "layout")'); - } - - if (typeof iterator !== 'function') { - throw new TypeError('The iterator argument must be a function.'); - } - - if (ruleConfig.checkFile) { - return checkFile(iterator, ruleConfig); - } - - if (ruleConfig.iterateAllJsdocs) { - return iterateAllJsdocs(iterator, ruleConfig); - } - - return { - /** - * The entrypoint for the JSDoc rule. - * - * @param {*} context - * a reference to the context which hold all important information - * like settings and the sourcecode to check. - * @returns {object} - * a list with parser callback function. - */ - create(context) { - let contexts; - - if (ruleConfig.contextDefaults) { - contexts = _jsdocUtils.default.enforcedContexts(context, ruleConfig.contextDefaults); - - if (contexts.includes('any')) { - return iterateAllJsdocs(iterator, ruleConfig).create(context); - } - } - - const sourceCode = context.getSourceCode(); - const settings = getSettings(context); - const lines = sourceCode.lines; - - const checkJsdoc = node => { - const jsdocNode = (0, _getJSDocComment.default)(sourceCode, node, settings); - - if (!jsdocNode) { - return; - } - - iterate(ruleConfig, context, lines, jsdocNode, node, settings, sourceCode, iterator); - }; - - if (ruleConfig.contextDefaults) { - return _jsdocUtils.default.getContextObject(contexts, checkJsdoc); - } - - return { - ArrowFunctionExpression: checkJsdoc, - FunctionDeclaration: checkJsdoc, - FunctionExpression: checkJsdoc - }; - }, - - meta: ruleConfig.meta - }; -} -//# sourceMappingURL=iterateJsdoc.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/iterateJsdoc.js.map b/node_modules/eslint-plugin-jsdoc/dist/iterateJsdoc.js.map deleted file mode 100644 index 31c118c3..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/iterateJsdoc.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/iterateJsdoc.js"],"names":["globalState","Map","skipSeeLink","parser","str","data","tag","match","parseComment","commentNode","indent","trim","value","parsers","commentParser","PARSERS","parse_tag","includes","parse_type","parse_name","errors","length","result","description","undefined","source","getBasicUtils","context","tagNamePreference","mode","utils","reportSettings","message","report","loc","start","column","line","getPreferredTagNameObject","tagName","ret","jsdocUtils","getPreferredTagName","isObject","replacement","blocked","getUtils","node","jsdoc","jsdocNode","settings","iteratingAll","ancestors","getAncestors","sourceCode","getSourceCode","overrideReplacesDocs","implementsReplacesDocs","augmentsExtendsReplacesDocs","maxLines","minLines","isIteratingFunction","type","isVirtualFunction","hasATag","stringify","tagBlock","getIndent","slice","reportJSDoc","msg","handler","fixer","replaceText","getFunctionParameterNames","isConstructor","parent","kind","isSetter","getJsdocTagsDeep","name","getJsdocTags","skipReportingBlockedTag","allowObjectReturn","defaultMessage","hasTag","getTags","isValidTag","definedTags","avoidDocs","classHasTag","exemptedBy","_","get","getPresentTags","tagMustHaveEitherTypeOrNamePosition","tagMightHaveEitherTypeOrNamePosition","tagMustHaveNamePosition","tagMightHaveNamePosition","tagMustHaveTypePosition","tagMightHaveTypePosition","isNamepathDefiningTag","hasDefinedTypeReturnTag","hasReturnValue","isAsync","async","filterTags","item","tagList","filter","tags","getTagsByType","hasOptionTag","Boolean","getClassNode","reverse","find","getClassJsdoc","classNode","classJsdocNode","repeat","classJsdoc","forEachPreferredTag","arrayHandler","targetTagName","matchingJsdocTags","forEach","matchingJsdocTag","getSettings","ignorePrivate","Number","preferredTypes","makeReport","fix","jsdocLoc","lineNumber","end","colNumber","iterate","ruleConfig","lines","iterator","state","sourceLine","charAt","noTrim","checkPrivate","some","iterateAllJsdocs","trackedJsdocs","callIterator","jsdocNodes","lastCall","test","getText","exit","create","reducedNode","comment","nonComment","push","allComments","getAllComments","untrackedJSdoc","meta","checkFile","iterateJsdoc","metaType","TypeError","contexts","contextDefaults","enforcedContexts","checkJsdoc","getContextObject","ArrowFunctionExpression","FunctionDeclaration","FunctionExpression"],"mappings":"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","sourcesContent":["// eslint-disable-next-line import/no-named-default\nimport {default as commentParser, stringify as commentStringify} from 'comment-parser';\nimport _ from 'lodash';\nimport jsdocUtils from './jsdocUtils';\nimport getJSDocComment, {getReducedASTNode} from './eslint/getJSDocComment';\n\nconst globalState = new Map();\n\nconst skipSeeLink = (parser) => {\n return (str, data) => {\n if (data.tag === 'see' && str.match(/\\{@link.+?\\}/u)) {\n return null;\n }\n\n return parser(str, data);\n };\n};\n\n/**\n *\n * @param {object} commentNode\n * @param {string} indent Whitespace\n * @param {boolean} [trim=true]\n * @returns {object}\n */\nconst parseComment = (commentNode, indent, trim = true) => {\n // Preserve JSDoc block start/end indentation.\n return commentParser(`${indent}/*${commentNode.value}${indent}*/`, {\n // @see https://github.com/yavorskiy/comment-parser/issues/21\n parsers: [\n commentParser.PARSERS.parse_tag,\n skipSeeLink(\n (str, data) => {\n if (['default', 'defaultvalue'].includes(data.tag)) {\n return null;\n }\n\n return commentParser.PARSERS.parse_type(str, data);\n },\n ),\n skipSeeLink(\n (str, data) => {\n if ([\n 'example', 'return', 'returns', 'throws', 'exception',\n 'access', 'version', 'since', 'license', 'author',\n 'default', 'defaultvalue',\n ].includes(data.tag)) {\n return null;\n }\n\n return commentParser.PARSERS.parse_name(str, data);\n },\n ),\n\n // parse_description\n (str, data) => {\n // Only expected throw in previous step is if bad name (i.e.,\n // missing end bracket on optional name), but `@example`\n // skips name parsing\n /* istanbul ignore next */\n if (data.errors && data.errors.length) {\n return null;\n }\n\n // Tweak original regex to capture only single optional space\n const result = str.match(/^ ?((.|\\s)+)?/u);\n\n // Always has at least whitespace due to `indent` we've added\n /* istanbul ignore next */\n if (result) {\n return {\n data: {\n description: result[1] === undefined ? '' : result[1],\n },\n source: result[0],\n };\n }\n\n // Always has at least whitespace due to `indent` we've added\n /* istanbul ignore next */\n return null;\n },\n ],\n trim,\n })[0] || {};\n};\n\nconst getBasicUtils = (context, {tagNamePreference, mode}) => {\n const utils = {};\n utils.reportSettings = (message) => {\n context.report({\n loc: {\n start: {\n column: 1,\n line: 1,\n },\n },\n message,\n });\n };\n\n utils.getPreferredTagNameObject = ({tagName}) => {\n const ret = jsdocUtils.getPreferredTagName(context, mode, tagName, tagNamePreference);\n const isObject = ret && typeof ret === 'object';\n if (ret === false || isObject && !ret.replacement) {\n return {\n blocked: true,\n tagName,\n };\n }\n\n return ret;\n };\n\n return utils;\n};\n\nconst getUtils = (\n node,\n jsdoc,\n jsdocNode,\n settings,\n report,\n context,\n iteratingAll,\n) => {\n const ancestors = context.getAncestors();\n const sourceCode = context.getSourceCode();\n\n const utils = getBasicUtils(context, settings);\n\n const {\n tagNamePreference,\n overrideReplacesDocs,\n implementsReplacesDocs,\n augmentsExtendsReplacesDocs,\n maxLines,\n minLines,\n mode,\n } = settings;\n\n utils.isIteratingFunction = () => {\n return !iteratingAll || [\n 'ArrowFunctionExpression',\n 'FunctionDeclaration',\n 'FunctionExpression',\n ].includes(node && node.type);\n };\n\n utils.isVirtualFunction = () => {\n return iteratingAll && utils.hasATag(['callback', 'function', 'func', 'method']);\n };\n\n utils.stringify = (tagBlock) => {\n const indent = jsdocUtils.getIndent(sourceCode);\n\n return commentStringify([tagBlock], {indent}).slice(indent.length - 1);\n };\n\n utils.reportJSDoc = (msg, tag, handler) => {\n report(msg, handler ? (fixer) => {\n handler();\n const replacement = utils.stringify(jsdoc);\n\n return fixer.replaceText(jsdocNode, replacement);\n } : null, tag);\n };\n\n utils.getFunctionParameterNames = () => {\n return jsdocUtils.getFunctionParameterNames(node);\n };\n\n utils.isConstructor = () => {\n return node && node.parent && node.parent.kind === 'constructor';\n };\n\n utils.isSetter = () => {\n return node && node.parent.kind === 'set';\n };\n\n utils.getJsdocTagsDeep = (tagName) => {\n const name = utils.getPreferredTagName({tagName});\n if (!name) {\n return false;\n }\n\n return jsdocUtils.getJsdocTagsDeep(jsdoc, name);\n };\n\n utils.getJsdocTags = (tagName) => {\n const name = utils.getPreferredTagName({tagName});\n if (!name) {\n return false;\n }\n\n return jsdocUtils.getJsdocTags(jsdoc, name);\n };\n\n utils.getPreferredTagName = ({tagName, skipReportingBlockedTag = false, allowObjectReturn = false, defaultMessage = `Unexpected tag \\`@${tagName}\\``}) => {\n const ret = jsdocUtils.getPreferredTagName(context, mode, tagName, tagNamePreference);\n const isObject = ret && typeof ret === 'object';\n if (utils.hasTag(tagName) && (ret === false || isObject && !ret.replacement)) {\n if (skipReportingBlockedTag) {\n return {\n blocked: true,\n tagName,\n };\n }\n const message = isObject && ret.message || defaultMessage;\n report(message, null, utils.getTags(tagName)[0]);\n\n return false;\n }\n\n return isObject && !allowObjectReturn ? ret.replacement : ret;\n };\n\n utils.isValidTag = (name, definedTags) => {\n return jsdocUtils.isValidTag(context, mode, name, definedTags);\n };\n\n utils.hasATag = (name) => {\n return jsdocUtils.hasATag(jsdoc, name);\n };\n\n utils.hasTag = (name) => {\n return jsdocUtils.hasTag(jsdoc, name);\n };\n\n utils.avoidDocs = () => {\n if (\n overrideReplacesDocs !== false &&\n (utils.hasTag('override') || utils.classHasTag('override')) ||\n implementsReplacesDocs !== false &&\n (utils.hasTag('implements') || utils.classHasTag('implements')) ||\n\n // inheritdoc implies that all documentation is inherited; see https://jsdoc.app/tags-inheritdoc.html\n utils.hasTag('inheritdoc') ||\n\n augmentsExtendsReplacesDocs &&\n (utils.hasATag(['augments', 'extends']) ||\n utils.classHasTag('augments') ||\n utils.classHasTag('extends'))) {\n return true;\n }\n\n const exemptedBy = _.get(context, 'options[0].exemptedBy');\n if (exemptedBy && exemptedBy.length && utils.getPresentTags(exemptedBy).length) {\n return true;\n }\n\n return false;\n };\n\n utils.tagMustHaveEitherTypeOrNamePosition = (tagName) => {\n return jsdocUtils.tagMustHaveEitherTypeOrNamePosition(tagName);\n };\n\n utils.tagMightHaveEitherTypeOrNamePosition = (tagName) => {\n return jsdocUtils.tagMightHaveEitherTypeOrNamePosition(mode, tagName);\n };\n\n utils.tagMustHaveNamePosition = (tagName) => {\n return jsdocUtils.tagMustHaveNamePosition(tagName);\n };\n\n utils.tagMightHaveNamePosition = (tagName) => {\n return jsdocUtils.tagMightHaveNamePosition(tagName);\n };\n\n utils.tagMustHaveTypePosition = (tagName) => {\n return jsdocUtils.tagMustHaveTypePosition(mode, tagName);\n };\n\n utils.tagMightHaveTypePosition = (tagName) => {\n return jsdocUtils.tagMightHaveTypePosition(mode, tagName);\n };\n\n utils.isNamepathDefiningTag = (tagName) => {\n return jsdocUtils.isNamepathDefiningTag(tagName);\n };\n\n utils.hasDefinedTypeReturnTag = (tag) => {\n return jsdocUtils.hasDefinedTypeReturnTag(tag);\n };\n\n utils.hasReturnValue = () => {\n return jsdocUtils.hasReturnValue(node);\n };\n\n utils.isAsync = () => {\n return node.async;\n };\n\n utils.getTags = (tagName) => {\n return utils.filterTags((item) => {\n return item.tag === tagName;\n });\n };\n\n utils.getPresentTags = (tagList) => {\n return utils.filterTags((tag) => {\n return tagList.includes(tag.tag);\n });\n };\n\n utils.filterTags = (filter) => {\n return jsdocUtils.filterTags(jsdoc.tags, filter);\n };\n\n utils.getTagsByType = (tags) => {\n return jsdocUtils.getTagsByType(context, mode, tags, tagNamePreference);\n };\n\n utils.hasOptionTag = (tagName) => {\n const tags = _.get(context, 'options[0].tags');\n\n return Boolean(tags && tags.includes(tagName));\n };\n\n utils.getClassNode = () => {\n return [...ancestors, node].reverse().find((parent) => {\n return parent && ['ClassDeclaration', 'ClassExpression'].includes(parent.type);\n }) || null;\n };\n\n utils.getClassJsdoc = () => {\n const classNode = utils.getClassNode();\n\n if (!classNode) {\n return null;\n }\n\n const classJsdocNode = getJSDocComment(sourceCode, classNode, {\n maxLines,\n minLines,\n });\n\n if (classJsdocNode) {\n const indent = ' '.repeat(classJsdocNode.loc.start.column);\n\n return parseComment(classJsdocNode, indent);\n }\n\n return null;\n };\n\n utils.classHasTag = (tagName) => {\n const classJsdoc = utils.getClassJsdoc();\n\n return Boolean(classJsdoc) && jsdocUtils.hasTag(classJsdoc, tagName);\n };\n\n utils.forEachPreferredTag = (tagName, arrayHandler, skipReportingBlockedTag = false) => {\n const targetTagName = utils.getPreferredTagName({\n skipReportingBlockedTag,\n tagName,\n });\n if (!targetTagName ||\n skipReportingBlockedTag && targetTagName && typeof targetTagName === 'object'\n ) {\n return;\n }\n const matchingJsdocTags = _.filter(jsdoc.tags || [], {\n tag: targetTagName,\n });\n\n matchingJsdocTags.forEach((matchingJsdocTag) => {\n arrayHandler(matchingJsdocTag, targetTagName);\n });\n };\n\n return utils;\n};\n\nconst getSettings = (context) => {\n /* eslint-disable sort-keys-fix/sort-keys-fix */\n const settings = {\n // All rules\n ignorePrivate: Boolean(_.get(context, 'settings.jsdoc.ignorePrivate')),\n maxLines: Number(_.get(context, 'settings.jsdoc.maxLines', 1)),\n minLines: Number(_.get(context, 'settings.jsdoc.minLines', 0)),\n\n // `check-tag-names` and many returns/param rules\n tagNamePreference: _.get(context, 'settings.jsdoc.tagNamePreference') || {},\n\n // `check-types` and `no-undefined-types`\n preferredTypes: _.get(context, 'settings.jsdoc.preferredTypes') || {},\n\n // `require-param`, `require-description`, `require-example`, `require-returns`\n overrideReplacesDocs: _.get(context, 'settings.jsdoc.overrideReplacesDocs'),\n implementsReplacesDocs: _.get(context, 'settings.jsdoc.implementsReplacesDocs'),\n augmentsExtendsReplacesDocs: _.get(context, 'settings.jsdoc.augmentsExtendsReplacesDocs'),\n\n // Many rules, e.g., `check-tag-names`\n mode: _.get(context, 'settings.jsdoc.mode') || 'jsdoc',\n };\n /* eslint-enable sort-keys-fix/sort-keys-fix */\n\n return settings;\n};\n\n/**\n * Create the report function\n *\n * @param {object} context\n * @param {object} commentNode\n */\nconst makeReport = (context, commentNode) => {\n const report = (message, fix = null, jsdocLoc = null, data = null) => {\n let loc;\n\n if (jsdocLoc) {\n const lineNumber = commentNode.loc.start.line + jsdocLoc.line;\n\n loc = {\n end: {line: lineNumber},\n start: {line: lineNumber},\n };\n if (jsdocLoc.column) {\n const colNumber = commentNode.loc.start.column + jsdocLoc.column;\n\n loc.end.column = colNumber;\n loc.start.column = colNumber;\n }\n }\n\n context.report({\n data,\n fix,\n loc,\n message,\n node: commentNode,\n });\n };\n\n return report;\n};\n\n/**\n * @typedef {ReturnType} Utils\n * @typedef {ReturnType} Settings\n * @typedef {(\n * arg: {\n * context: object,\n * sourceCode: object,\n * indent: string,\n * jsdoc: object,\n * jsdocNode: object,\n * node: object | null,\n * report: ReturnType,\n * settings: Settings,\n * utils: Utils,\n * }\n * ) => any } JsdocVisitor\n */\n\nconst iterate = (\n ruleConfig, context, lines, jsdocNode, node, settings,\n sourceCode, iterator, state, iteratingAll,\n) => {\n const sourceLine = lines[jsdocNode.loc.start.line - 1];\n const indent = sourceLine.charAt(0).repeat(jsdocNode.loc.start.column);\n const jsdoc = parseComment(jsdocNode, indent, !ruleConfig.noTrim);\n const report = makeReport(context, jsdocNode);\n\n const utils = getUtils(\n node,\n jsdoc,\n jsdocNode,\n settings,\n report,\n context,\n iteratingAll,\n );\n\n if (\n settings.ignorePrivate &&\n !ruleConfig.checkPrivate &&\n (utils.hasTag('private') || _.filter(jsdoc.tags, {\n tag: 'access',\n }).some(({description}) => {\n return description === 'private';\n }))\n ) {\n return;\n }\n\n iterator({\n context,\n globalState,\n indent,\n iteratingAll,\n jsdoc,\n jsdocNode,\n node,\n report,\n settings,\n sourceCode,\n state,\n utils,\n });\n};\n\n/**\n * Create an eslint rule that iterates over all JSDocs, regardless of whether\n * they are attached to a function-like node.\n *\n * @param {JsdocVisitor} iterator\n * @param {{meta: any}} ruleConfig\n */\nconst iterateAllJsdocs = (iterator, ruleConfig) => {\n const trackedJsdocs = [];\n\n const callIterator = (context, node, jsdocNodes, state, lastCall) => {\n const sourceCode = context.getSourceCode();\n const settings = getSettings(context);\n const {lines} = sourceCode;\n\n const utils = getBasicUtils(context, settings);\n jsdocNodes.forEach((jsdocNode) => {\n if (!(/^\\/\\*\\*\\s/).test(sourceCode.getText(jsdocNode))) {\n return;\n }\n iterate(\n ruleConfig, context, lines, jsdocNode, node,\n settings, sourceCode, iterator,\n state, true,\n );\n });\n if (lastCall && ruleConfig.exit) {\n ruleConfig.exit({\n context,\n state,\n utils,\n });\n }\n };\n\n return {\n create (context) {\n const sourceCode = context.getSourceCode();\n const settings = getSettings(context);\n const state = {};\n\n return {\n '*:not(Program)' (node) {\n const reducedNode = getReducedASTNode(node, sourceCode);\n\n if (node !== reducedNode) {\n return;\n }\n\n const comment = getJSDocComment(sourceCode, node, settings);\n if (trackedJsdocs.includes(comment)) {\n return;\n }\n if (!comment) {\n if (ruleConfig.nonComment) {\n ruleConfig.nonComment({\n node,\n state,\n });\n }\n\n return;\n }\n\n trackedJsdocs.push(comment);\n callIterator(context, node, [comment], state);\n },\n 'Program:exit' () {\n const allComments = sourceCode.getAllComments();\n const untrackedJSdoc = allComments.filter((node) => {\n return !trackedJsdocs.includes(node);\n });\n\n callIterator(context, null, untrackedJSdoc, state, true);\n },\n };\n },\n meta: ruleConfig.meta,\n };\n};\n\n/**\n * Create an eslint rule that iterates over all JSDocs, regardless of whether\n * they are attached to a function-like node.\n *\n * @param {JsdocVisitor} iterator\n * @param {{meta: any}} ruleConfig\n */\nconst checkFile = (iterator, ruleConfig) => {\n return {\n create (context) {\n const sourceCode = context.getSourceCode();\n const settings = getSettings(context);\n\n return {\n 'Program:exit' () {\n const allComments = sourceCode.getAllComments();\n const {lines} = sourceCode;\n const utils = getBasicUtils(context, settings);\n\n iterator({\n allComments,\n context,\n lines,\n makeReport,\n settings,\n sourceCode,\n utils,\n });\n },\n };\n },\n meta: ruleConfig.meta,\n };\n};\n\nexport {\n getSettings,\n parseComment,\n};\n\n/**\n * @param {JsdocVisitor} iterator\n * @param {{\n * meta: any,\n * contextDefaults?: true | string[],\n * iterateAllJsdocs?: true,\n * }} ruleConfig\n */\nexport default function iterateJsdoc (iterator, ruleConfig) {\n const metaType = _.get(ruleConfig, 'meta.type');\n if (!metaType || !['problem', 'suggestion', 'layout'].includes(metaType)) {\n throw new TypeError('Rule must include `meta.type` option (with value \"problem\", \"suggestion\", or \"layout\")');\n }\n if (typeof iterator !== 'function') {\n throw new TypeError('The iterator argument must be a function.');\n }\n\n if (ruleConfig.checkFile) {\n return checkFile(iterator, ruleConfig);\n }\n\n if (ruleConfig.iterateAllJsdocs) {\n return iterateAllJsdocs(iterator, ruleConfig);\n }\n\n return {\n /**\n * The entrypoint for the JSDoc rule.\n *\n * @param {*} context\n * a reference to the context which hold all important information\n * like settings and the sourcecode to check.\n * @returns {object}\n * a list with parser callback function.\n */\n create (context) {\n let contexts;\n if (ruleConfig.contextDefaults) {\n contexts = jsdocUtils.enforcedContexts(context, ruleConfig.contextDefaults);\n if (contexts.includes('any')) {\n return iterateAllJsdocs(iterator, ruleConfig).create(context);\n }\n }\n\n const sourceCode = context.getSourceCode();\n const settings = getSettings(context);\n const {lines} = sourceCode;\n\n const checkJsdoc = (node) => {\n const jsdocNode = getJSDocComment(sourceCode, node, settings);\n\n if (!jsdocNode) {\n return;\n }\n\n iterate(\n ruleConfig, context, lines, jsdocNode, node,\n settings, sourceCode, iterator,\n );\n };\n\n if (ruleConfig.contextDefaults) {\n return jsdocUtils.getContextObject(contexts, checkJsdoc);\n }\n\n return {\n ArrowFunctionExpression: checkJsdoc,\n FunctionDeclaration: checkJsdoc,\n FunctionExpression: checkJsdoc,\n };\n },\n meta: ruleConfig.meta,\n };\n}\n"],"file":"iterateJsdoc.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js b/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js deleted file mode 100644 index 884461a6..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js +++ /dev/null @@ -1,464 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _tagNames = require("./tagNames"); - -var _WarnSettings = _interopRequireDefault(require("./WarnSettings")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const getFunctionParameterNames = functionNode => { - const getParamName = param => { - if (_lodash.default.has(param, 'name')) { - return param.name; - } - - if (_lodash.default.has(param, 'left.name')) { - return param.left.name; - } - - if (param.type === 'ObjectPattern' || _lodash.default.get(param, 'left.type') === 'ObjectPattern') { - return ''; - } - - if (param.type === 'ArrayPattern' || _lodash.default.get(param, 'left.type') === 'ArrayPattern') { - return ''; - } - - if (param.type === 'RestElement') { - return param.argument.name; - } - - if (param.type === 'TSParameterProperty') { - return getParamName(param.parameter); - } - - throw new Error('Unsupported function signature format.'); - }; - - return functionNode.params.map(getParamName); -}; -/** - * Gets all names of the target type, including those that refer to a path, e.g. - * "@param foo; @param foo.bar". - */ - - -const getJsdocTagsDeep = (jsdoc, targetTagName) => { - return (jsdoc.tags || []).reduce((arr, { - name, - tag - }, idx) => { - if (tag !== targetTagName) { - return arr; - } - - arr.push({ - idx, - name - }); - return arr; - }, []); -}; - -const getJsdocTags = (jsdoc, targetTagName) => { - let jsdocNames; - jsdocNames = getJsdocTagsDeep(jsdoc, targetTagName); - jsdocNames = jsdocNames.filter(({ - name - }) => { - return !name.includes('.'); - }); - return jsdocNames; -}; - -const modeWarnSettings = (0, _WarnSettings.default)(); - -const getTagNamesForMode = (mode, context) => { - switch (mode) { - case 'jsdoc': - return _tagNames.jsdocTags; - - case 'typescript': - return _tagNames.typeScriptTags; - - case 'closure': - return _tagNames.closureTags; - - default: - if (!modeWarnSettings.hasBeenWarned(context, 'mode')) { - context.report({ - loc: { - start: { - column: 1, - line: 1 - } - }, - message: `Unrecognized value \`${mode}\` for \`settings.jsdoc.mode\`.` - }); - modeWarnSettings.markSettingAsWarned(context, 'mode'); - } // We'll avoid breaking too many other rules - - - return _tagNames.jsdocTags; - } -}; - -const getPreferredTagName = (context, mode, name, tagPreference = {}) => { - const prefValues = _lodash.default.values(tagPreference); - - if (prefValues.includes(name) || prefValues.some(prefVal => { - return prefVal && typeof prefVal === 'object' && prefVal.replacement === name; - })) { - return name; - } - - if (_lodash.default.has(tagPreference, name)) { - return tagPreference[name]; - } - - const tagNames = getTagNamesForMode(mode, context); - - const preferredTagName = _lodash.default.findKey(tagNames, aliases => { - return aliases.includes(name); - }); - - if (preferredTagName) { - return preferredTagName; - } - - return name; -}; - -const isValidTag = (context, mode, name, definedTags) => { - const tagNames = getTagNamesForMode(mode, context); - - const validTagNames = _lodash.default.keys(tagNames).concat(_lodash.default.flatten(_lodash.default.values(tagNames))); - - const additionalTags = definedTags; - const allTags = validTagNames.concat(additionalTags); - return allTags.includes(name); -}; - -const hasTag = (jsdoc, targetTagName) => { - const targetTagLower = targetTagName.toLowerCase(); - return _lodash.default.some(jsdoc.tags, doc => { - return doc.tag.toLowerCase() === targetTagLower; - }); -}; - -const hasATag = (jsdoc, targetTagNames) => { - return targetTagNames.some(targetTagName => { - return hasTag(jsdoc, targetTagName); - }); -}; -/** - * Checks if the JSDoc comment declares a return value. - * - * @param {JsDocTag} tag - * the tag which should be checked. - * @returns {boolean} - * true in case a return value is declared; otherwise false. - */ - - -const hasDefinedTypeReturnTag = tag => { - // The function should not continue in the event @returns is not defined... - if (typeof tag === 'undefined' || tag === null) { - return false; - } // .. same applies if it declares `@returns {undefined}` or `@returns {void}` - - - const tagType = tag.type.trim(); - - if (tagType === 'undefined' || tagType === 'void') { - return false; - } // In any other case, something must be returned, and - // a return statement is expected - - - return true; -}; - -const tagsWithMandatoryTypePosition = [// These both show curly brackets in the doc signature and examples -// "typeExpression" -'implements', // "typeName" -'type']; -const tagsWithMandatoryTypePositionClosure = [...tagsWithMandatoryTypePosition, 'this', 'define']; // All of these have a signature with "type" except for -// `augments`/`extends` ("namepath") -// `param`/`arg`/`argument` (no signature) -// `property`/`prop` (no signature) -// `modifies` (undocumented) - -const tagsWithOptionalTypePosition = [// These have the example showing curly brackets but not in their doc signature, e.g.: https://jsdoc.app/tags-enum.html -'enum', 'member', 'var', 'typedef', // These do not show curly brackets in either the signature or examples -'augments', 'extends', 'class', 'constructor', 'constant', 'const', // These show the signature with curly brackets but not in the example -'module', 'namespace', // These have no formal signature in the docs but show curly brackets -// in the examples -'param', 'arg', 'argument', 'property', 'prop', // These show curly brackets in the signature and in the examples -'returns', 'return', 'throws', 'exception', 'yields', 'yield', // Has no documentation, but test example has curly brackets, and -// "name" would be suggested rather than "namepath" based on example; not -// sure if name is required -'modifies']; -const tagsWithOptionalTypePositionClosure = [...tagsWithOptionalTypePosition, 'export', // Shows the signature with curly brackets but not in the example -// "typeExpression" -'package', 'private', 'protected', // These do not show a signature nor show curly brackets in the example -'public', 'static']; // None of these show as having curly brackets for their name/namepath - -const namepathDefiningTags = [// These appear to require a "name" in their signature, albeit these -// are somewhat different from other "name"'s (including as described -// at https://jsdoc.app/about-namepaths.html ) -'external', 'host', 'event', // These allow for "name"'s in their signature, but indicate as optional -'class', 'constructor', 'constant', 'const', 'function', 'func', 'method', 'interface', 'member', 'var', 'mixin', 'namespace', // Todo: Should add `module` here (with optional "name" and no curly brackets); -// this block impacts `no-undefined-types` and `valid-types` (search for -// "isNamepathDefiningTag|tagMightHaveNamePosition|tagMightHaveEitherTypeOrNamePosition") -// These seem to all require a "namepath" in their signatures (with no counter-examples) -'name', 'typedef', 'callback']; // The following do not seem to allow curly brackets in their doc -// signature or examples (besides `modifies`) - -const tagsWithOptionalNamePosition = [...namepathDefiningTags, // `borrows` has a different format, however, so needs special parsing; -// seems to require both, and as "namepath"'s -'borrows', // Signature seems to require a "name" (of an event) and no counter-examples -'emits', 'fires', 'listens', // Signature seems to require a "namepath" (and no counter-examples) -'alias', 'augments', 'extends', 'lends', 'this', // Signature seems to require a "namepath" (and no counter-examples), -// though it allows an incomplete namepath ending with connecting symbol -'memberof', 'memberof!', // Signature seems to require a "OtherObjectPath" with no counter-examples -'mixes', // Signature allows for "namepath" or text -'see']; // Todo: `@link` seems to require a namepath OR URL and might be checked as such. -// The doc signature of `event` seems to require a "name" - -const tagsWithMandatoryNamePosition = [// "name" (and a special syntax for the `external` name) -'external', 'host', // "namepath" -'callback', 'name', 'typedef']; -const tagsWithMandatoryTypeOrNamePosition = [// "namepath" -'alias', 'augments', 'extends', 'borrows', 'lends', 'memberof', 'memberof!', 'name', 'this', 'typedef', // "name" -'external', 'host', // "OtherObjectPath" -'mixes']; - -const isNamepathDefiningTag = tagName => { - return namepathDefiningTags.includes(tagName); -}; - -const tagMightHaveTypePosition = (mode, tag) => { - if (mode === 'closure') { - return tagsWithMandatoryTypePositionClosure.includes(tag) || tagsWithOptionalTypePositionClosure.includes(tag); - } - - return tagsWithMandatoryTypePosition.includes(tag) || tagsWithOptionalTypePosition.includes(tag); -}; - -const tagMustHaveTypePosition = (mode, tag) => { - if (mode === 'closure') { - return tagsWithMandatoryTypePositionClosure.includes(tag); - } - - return tagsWithMandatoryTypePosition.includes(tag); -}; - -const tagMightHaveNamePosition = tag => { - return tagsWithOptionalNamePosition.includes(tag); -}; - -const tagMustHaveNamePosition = tag => { - return tagsWithMandatoryNamePosition.includes(tag); -}; - -const tagMightHaveEitherTypeOrNamePosition = (mode, tag) => { - return tagMightHaveTypePosition(mode, tag) || tagMightHaveNamePosition(tag); -}; - -const tagMustHaveEitherTypeOrNamePosition = tag => { - return tagsWithMandatoryTypeOrNamePosition.includes(tag); -}; -/** - * Checks if a node has a return statement. Void return does not count. - * - * @param {object} node - * @returns {boolean} - */ -// eslint-disable-next-line complexity - - -const hasReturnValue = node => { - if (!node) { - return false; - } - - switch (node.type) { - case 'FunctionExpression': - case 'FunctionDeclaration': - case 'ArrowFunctionExpression': - { - return node.expression || hasReturnValue(node.body); - } - - case 'BlockStatement': - { - return node.body.some(bodyNode => { - return bodyNode.type !== 'FunctionDeclaration' && hasReturnValue(bodyNode); - }); - } - - case 'WhileStatement': - case 'DoWhileStatement': - case 'ForStatement': - case 'ForInStatement': - case 'ForOfStatement': - case 'WithStatement': - { - return hasReturnValue(node.body); - } - - case 'IfStatement': - { - return hasReturnValue(node.consequent) || hasReturnValue(node.alternate); - } - - case 'TryStatement': - { - return hasReturnValue(node.block) || hasReturnValue(node.handler && node.handler.body) || hasReturnValue(node.finalizer); - } - - case 'SwitchStatement': - { - return node.cases.some(someCase => { - return someCase.consequent.some(hasReturnValue); - }); - } - - case 'ReturnStatement': - { - // void return does not count. - if (node.argument === null) { - return false; - } - - return true; - } - - default: - { - return false; - } - } -}; -/** @param {string} tag */ - -/* -const isInlineTag = (tag) => { - return /^(@link|@linkcode|@linkplain|@tutorial) /u.test(tag); -}; -*/ - -/** - * Parses GCC Generic/Template types - * - * @see {https://github.com/google/closure-compiler/wiki/Generic-Types} - * @param {JsDocTag} tag - * @returns {Array} - */ - - -const parseClosureTemplateTag = tag => { - return (tag.name + ' ' + tag.description).split(',').map(type => { - return type.trim(); - }); -}; -/** - * Checks user option for `contexts` array, defaulting to - * contexts designated by the rule. Returns an array of - * ESTree AST types, indicating allowable contexts. - * - * @param {*} context - * @param {true|string[]} defaultContexts - * @returns {string[]} - */ - - -const enforcedContexts = (context, defaultContexts) => { - const _ref = context.options[0] || {}, - _ref$contexts = _ref.contexts, - contexts = _ref$contexts === void 0 ? defaultContexts === true ? ['ArrowFunctionExpression', 'FunctionDeclaration', 'FunctionExpression'] : defaultContexts : _ref$contexts; - - return contexts; -}; -/** - * @param {string[]} contexts - * @param {Function} checkJsdoc - */ - - -const getContextObject = (contexts, checkJsdoc) => { - return contexts.reduce((obj, prop) => { - obj[prop] = checkJsdoc; - return obj; - }, {}); -}; - -const filterTags = (tags = [], filter) => { - return tags.filter(filter); -}; - -const tagsWithNamesAndDescriptions = ['param', 'arg', 'argument', 'property', 'prop', // These two are parsed by our custom parser as though having a `name` -'returns', 'return']; - -const getTagsByType = (context, mode, tags, tagPreference) => { - const descName = getPreferredTagName(context, mode, 'description', tagPreference); - const tagsWithoutNames = []; - const tagsWithNames = filterTags(tags, tag => { - const tagName = tag.tag; - const tagWithName = tagsWithNamesAndDescriptions.includes(tagName); - - if (!tagWithName && tagName !== descName) { - tagsWithoutNames.push(tag); - } - - return tagWithName; - }); - return { - tagsWithNames, - tagsWithoutNames - }; -}; - -const getIndent = sourceCode => { - let indent = sourceCode.text.match(/^\n*([ \t]+)/u); - /* istanbul ignore next */ - - indent = indent ? indent[1] + indent[1].charAt() : ' '; - return indent; -}; - -var _default = { - enforcedContexts, - filterTags, - getContextObject, - getFunctionParameterNames, - getIndent, - getJsdocTags, - getJsdocTagsDeep, - getPreferredTagName, - getTagsByType, - hasATag, - hasDefinedTypeReturnTag, - hasReturnValue, - hasTag, - isNamepathDefiningTag, - isValidTag, - parseClosureTemplateTag, - tagMightHaveEitherTypeOrNamePosition, - tagMightHaveNamePosition, - tagMightHaveTypePosition, - tagMustHaveEitherTypeOrNamePosition, - tagMustHaveNamePosition, - tagMustHaveTypePosition -}; -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=jsdocUtils.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js.map b/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js.map deleted file mode 100644 index a966d969..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/jsdocUtils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/jsdocUtils.js"],"names":["getFunctionParameterNames","functionNode","getParamName","param","_","has","name","left","type","get","argument","parameter","Error","params","map","getJsdocTagsDeep","jsdoc","targetTagName","tags","reduce","arr","tag","idx","push","getJsdocTags","jsdocNames","filter","includes","modeWarnSettings","getTagNamesForMode","mode","context","jsdocTags","typeScriptTags","closureTags","hasBeenWarned","report","loc","start","column","line","message","markSettingAsWarned","getPreferredTagName","tagPreference","prefValues","values","some","prefVal","replacement","tagNames","preferredTagName","findKey","aliases","isValidTag","definedTags","validTagNames","keys","concat","flatten","additionalTags","allTags","hasTag","targetTagLower","toLowerCase","doc","hasATag","targetTagNames","hasDefinedTypeReturnTag","tagType","trim","tagsWithMandatoryTypePosition","tagsWithMandatoryTypePositionClosure","tagsWithOptionalTypePosition","tagsWithOptionalTypePositionClosure","namepathDefiningTags","tagsWithOptionalNamePosition","tagsWithMandatoryNamePosition","tagsWithMandatoryTypeOrNamePosition","isNamepathDefiningTag","tagName","tagMightHaveTypePosition","tagMustHaveTypePosition","tagMightHaveNamePosition","tagMustHaveNamePosition","tagMightHaveEitherTypeOrNamePosition","tagMustHaveEitherTypeOrNamePosition","hasReturnValue","node","expression","body","bodyNode","consequent","alternate","block","handler","finalizer","cases","someCase","parseClosureTemplateTag","description","split","enforcedContexts","defaultContexts","options","contexts","getContextObject","checkJsdoc","obj","prop","filterTags","tagsWithNamesAndDescriptions","getTagsByType","descName","tagsWithoutNames","tagsWithNames","tagWithName","getIndent","sourceCode","indent","text","match","charAt"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport {jsdocTags, closureTags, typeScriptTags} from './tagNames';\nimport WarnSettings from './WarnSettings';\n\ntype ParserMode = \"jsdoc\"|\"typescript\"|\"closure\";\n\nconst getFunctionParameterNames = (functionNode : Object) : Array => {\n const getParamName = (param) => {\n if (_.has(param, 'name')) {\n return param.name;\n }\n\n if (_.has(param, 'left.name')) {\n return param.left.name;\n }\n\n if (param.type === 'ObjectPattern' || _.get(param, 'left.type') === 'ObjectPattern') {\n return '';\n }\n\n if (param.type === 'ArrayPattern' || _.get(param, 'left.type') === 'ArrayPattern') {\n return '';\n }\n\n if (param.type === 'RestElement') {\n return param.argument.name;\n }\n\n if (param.type === 'TSParameterProperty') {\n return getParamName(param.parameter);\n }\n\n throw new Error('Unsupported function signature format.');\n };\n\n return functionNode.params.map(getParamName);\n};\n\n/**\n * Gets all names of the target type, including those that refer to a path, e.g.\n * \"@param foo; @param foo.bar\".\n */\nconst getJsdocTagsDeep = (jsdoc : Object, targetTagName : string) : Array => {\n return (jsdoc.tags || []).reduce((arr, {name, tag}, idx) => {\n if (tag !== targetTagName) {\n return arr;\n }\n arr.push({\n idx,\n name,\n });\n\n return arr;\n }, []);\n};\n\nconst getJsdocTags = (jsdoc : Object, targetTagName : string) : Array => {\n let jsdocNames;\n\n jsdocNames = getJsdocTagsDeep(jsdoc, targetTagName);\n\n jsdocNames = jsdocNames.filter(({name}) => {\n return !name.includes('.');\n });\n\n return jsdocNames;\n};\n\nconst modeWarnSettings = WarnSettings();\n\nconst getTagNamesForMode = (mode, context) => {\n switch (mode) {\n case 'jsdoc':\n return jsdocTags;\n case 'typescript':\n return typeScriptTags;\n case 'closure':\n return closureTags;\n default:\n if (!modeWarnSettings.hasBeenWarned(context, 'mode')) {\n context.report({\n loc: {\n start: {\n column: 1,\n line: 1,\n },\n },\n message: `Unrecognized value \\`${mode}\\` for \\`settings.jsdoc.mode\\`.`,\n });\n modeWarnSettings.markSettingAsWarned(context, 'mode');\n }\n\n // We'll avoid breaking too many other rules\n return jsdocTags;\n }\n};\n\nconst getPreferredTagName = (\n context,\n mode : ParserMode,\n name : string,\n tagPreference : Object = {},\n) : string|Object => {\n const prefValues = _.values(tagPreference);\n if (prefValues.includes(name) || prefValues.some((prefVal) => {\n return prefVal && typeof prefVal === 'object' && prefVal.replacement === name;\n })) {\n return name;\n }\n\n if (_.has(tagPreference, name)) {\n return tagPreference[name];\n }\n\n const tagNames = getTagNamesForMode(mode, context);\n\n const preferredTagName = _.findKey(tagNames, (aliases) => {\n return aliases.includes(name);\n });\n if (preferredTagName) {\n return preferredTagName;\n }\n\n return name;\n};\n\nconst isValidTag = (\n context,\n mode : ParserMode,\n name : string,\n definedTags : Array,\n) : boolean => {\n const tagNames = getTagNamesForMode(mode, context);\n const validTagNames = _.keys(tagNames).concat(_.flatten(_.values(tagNames)));\n const additionalTags = definedTags;\n const allTags = validTagNames.concat(additionalTags);\n\n return allTags.includes(name);\n};\n\nconst hasTag = (jsdoc : Object, targetTagName : string) : boolean => {\n const targetTagLower = targetTagName.toLowerCase();\n\n return _.some(jsdoc.tags, (doc : Object) => {\n return doc.tag.toLowerCase() === targetTagLower;\n });\n};\n\nconst hasATag = (jsdoc : Object, targetTagNames : Array) : boolean => {\n return targetTagNames.some((targetTagName) => {\n return hasTag(jsdoc, targetTagName);\n });\n};\n\n/**\n * Checks if the JSDoc comment declares a return value.\n *\n * @param {JsDocTag} tag\n * the tag which should be checked.\n * @returns {boolean}\n * true in case a return value is declared; otherwise false.\n */\nconst hasDefinedTypeReturnTag = (tag) => {\n // The function should not continue in the event @returns is not defined...\n if (typeof tag === 'undefined' || tag === null) {\n return false;\n }\n\n // .. same applies if it declares `@returns {undefined}` or `@returns {void}`\n const tagType = tag.type.trim();\n if (tagType === 'undefined' || tagType === 'void') {\n return false;\n }\n\n // In any other case, something must be returned, and\n // a return statement is expected\n return true;\n};\n\nconst tagsWithMandatoryTypePosition = [\n // These both show curly brackets in the doc signature and examples\n // \"typeExpression\"\n 'implements',\n\n // \"typeName\"\n 'type',\n];\n\nconst tagsWithMandatoryTypePositionClosure = [\n ...tagsWithMandatoryTypePosition,\n 'this',\n 'define',\n];\n\n// All of these have a signature with \"type\" except for\n// `augments`/`extends` (\"namepath\")\n// `param`/`arg`/`argument` (no signature)\n// `property`/`prop` (no signature)\n// `modifies` (undocumented)\nconst tagsWithOptionalTypePosition = [\n // These have the example showing curly brackets but not in their doc signature, e.g.: https://jsdoc.app/tags-enum.html\n 'enum',\n 'member', 'var',\n\n 'typedef',\n\n // These do not show curly brackets in either the signature or examples\n 'augments', 'extends',\n\n 'class', 'constructor',\n 'constant', 'const',\n\n // These show the signature with curly brackets but not in the example\n 'module',\n 'namespace',\n\n // These have no formal signature in the docs but show curly brackets\n // in the examples\n 'param', 'arg', 'argument',\n 'property', 'prop',\n\n // These show curly brackets in the signature and in the examples\n 'returns', 'return',\n 'throws', 'exception',\n 'yields', 'yield',\n\n // Has no documentation, but test example has curly brackets, and\n // \"name\" would be suggested rather than \"namepath\" based on example; not\n // sure if name is required\n 'modifies',\n];\n\nconst tagsWithOptionalTypePositionClosure = [\n ...tagsWithOptionalTypePosition,\n\n 'export',\n\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n 'package',\n 'private',\n 'protected',\n\n // These do not show a signature nor show curly brackets in the example\n 'public',\n 'static',\n];\n\n// None of these show as having curly brackets for their name/namepath\nconst namepathDefiningTags = [\n // These appear to require a \"name\" in their signature, albeit these\n // are somewhat different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n 'external', 'host',\n 'event',\n\n // These allow for \"name\"'s in their signature, but indicate as optional\n 'class', 'constructor',\n 'constant', 'const',\n 'function', 'func', 'method',\n 'interface',\n 'member', 'var',\n 'mixin',\n 'namespace',\n\n // Todo: Should add `module` here (with optional \"name\" and no curly brackets);\n // this block impacts `no-undefined-types` and `valid-types` (search for\n // \"isNamepathDefiningTag|tagMightHaveNamePosition|tagMightHaveEitherTypeOrNamePosition\")\n\n // These seem to all require a \"namepath\" in their signatures (with no counter-examples)\n 'name',\n 'typedef',\n 'callback',\n];\n\n// The following do not seem to allow curly brackets in their doc\n// signature or examples (besides `modifies`)\nconst tagsWithOptionalNamePosition = [\n ...namepathDefiningTags,\n\n // `borrows` has a different format, however, so needs special parsing;\n // seems to require both, and as \"namepath\"'s\n 'borrows',\n\n // Signature seems to require a \"name\" (of an event) and no counter-examples\n 'emits', 'fires',\n 'listens',\n\n // Signature seems to require a \"namepath\" (and no counter-examples)\n 'alias',\n 'augments', 'extends',\n 'lends',\n 'this',\n\n // Signature seems to require a \"namepath\" (and no counter-examples),\n // though it allows an incomplete namepath ending with connecting symbol\n 'memberof', 'memberof!',\n\n // Signature seems to require a \"OtherObjectPath\" with no counter-examples\n 'mixes',\n\n // Signature allows for \"namepath\" or text\n 'see',\n];\n\n// Todo: `@link` seems to require a namepath OR URL and might be checked as such.\n\n// The doc signature of `event` seems to require a \"name\"\nconst tagsWithMandatoryNamePosition = [\n // \"name\" (and a special syntax for the `external` name)\n 'external', 'host',\n\n // \"namepath\"\n 'callback',\n 'name',\n 'typedef',\n];\n\nconst tagsWithMandatoryTypeOrNamePosition = [\n // \"namepath\"\n 'alias',\n 'augments', 'extends',\n 'borrows',\n 'lends',\n 'memberof', 'memberof!',\n 'name',\n 'this',\n 'typedef',\n\n // \"name\"\n 'external', 'host',\n\n // \"OtherObjectPath\"\n 'mixes',\n];\n\nconst isNamepathDefiningTag = (tagName) => {\n return namepathDefiningTags.includes(tagName);\n};\n\nconst tagMightHaveTypePosition = (mode, tag) => {\n if (mode === 'closure') {\n return tagsWithMandatoryTypePositionClosure.includes(tag) ||\n tagsWithOptionalTypePositionClosure.includes(tag);\n }\n\n return tagsWithMandatoryTypePosition.includes(tag) ||\n tagsWithOptionalTypePosition.includes(tag);\n};\n\nconst tagMustHaveTypePosition = (mode, tag) => {\n if (mode === 'closure') {\n return tagsWithMandatoryTypePositionClosure.includes(tag);\n }\n\n return tagsWithMandatoryTypePosition.includes(tag);\n};\n\nconst tagMightHaveNamePosition = (tag) => {\n return tagsWithOptionalNamePosition.includes(tag);\n};\n\nconst tagMustHaveNamePosition = (tag) => {\n return tagsWithMandatoryNamePosition.includes(tag);\n};\n\nconst tagMightHaveEitherTypeOrNamePosition = (mode, tag) => {\n return tagMightHaveTypePosition(mode, tag) || tagMightHaveNamePosition(tag);\n};\n\nconst tagMustHaveEitherTypeOrNamePosition = (tag) => {\n return tagsWithMandatoryTypeOrNamePosition.includes(tag);\n};\n\n/**\n * Checks if a node has a return statement. Void return does not count.\n *\n * @param {object} node\n * @returns {boolean}\n */\n// eslint-disable-next-line complexity\nconst hasReturnValue = (node) => {\n if (!node) {\n return false;\n }\n switch (node.type) {\n case 'FunctionExpression':\n case 'FunctionDeclaration':\n case 'ArrowFunctionExpression': {\n return node.expression || hasReturnValue(node.body);\n }\n case 'BlockStatement': {\n return node.body.some((bodyNode) => {\n return bodyNode.type !== 'FunctionDeclaration' && hasReturnValue(bodyNode);\n });\n }\n case 'WhileStatement':\n case 'DoWhileStatement':\n case 'ForStatement':\n case 'ForInStatement':\n case 'ForOfStatement':\n case 'WithStatement': {\n return hasReturnValue(node.body);\n }\n case 'IfStatement': {\n return hasReturnValue(node.consequent) || hasReturnValue(node.alternate);\n }\n case 'TryStatement': {\n return hasReturnValue(node.block) ||\n hasReturnValue(node.handler && node.handler.body) ||\n hasReturnValue(node.finalizer);\n }\n case 'SwitchStatement': {\n return node.cases.some(\n (someCase) => {\n return someCase.consequent.some(hasReturnValue);\n },\n );\n }\n case 'ReturnStatement': {\n // void return does not count.\n if (node.argument === null) {\n return false;\n }\n\n return true;\n }\n default: {\n return false;\n }\n }\n};\n\n/** @param {string} tag */\n/*\nconst isInlineTag = (tag) => {\n return /^(@link|@linkcode|@linkplain|@tutorial) /u.test(tag);\n};\n*/\n\n/**\n * Parses GCC Generic/Template types\n *\n * @see {https://github.com/google/closure-compiler/wiki/Generic-Types}\n * @param {JsDocTag} tag\n * @returns {Array}\n */\nconst parseClosureTemplateTag = (tag) => {\n return (tag.name + ' ' + tag.description)\n .split(',')\n .map((type) => {\n return type.trim();\n });\n};\n\n/**\n * Checks user option for `contexts` array, defaulting to\n * contexts designated by the rule. Returns an array of\n * ESTree AST types, indicating allowable contexts.\n *\n * @param {*} context\n * @param {true|string[]} defaultContexts\n * @returns {string[]}\n */\nconst enforcedContexts = (context, defaultContexts) => {\n const {\n /* istanbul ignore next */\n contexts = defaultContexts === true ? [\n 'ArrowFunctionExpression',\n 'FunctionDeclaration',\n 'FunctionExpression',\n ] : defaultContexts,\n } = context.options[0] || {};\n\n return contexts;\n};\n\n/**\n * @param {string[]} contexts\n * @param {Function} checkJsdoc\n */\nconst getContextObject = (contexts, checkJsdoc) => {\n return contexts.reduce((obj, prop) => {\n obj[prop] = checkJsdoc;\n\n return obj;\n }, {});\n};\n\nconst filterTags = (tags = [], filter) => {\n return tags.filter(filter);\n};\n\nconst tagsWithNamesAndDescriptions = [\n 'param', 'arg', 'argument', 'property', 'prop',\n\n // These two are parsed by our custom parser as though having a `name`\n 'returns', 'return',\n];\n\nconst getTagsByType = (context, mode, tags, tagPreference) => {\n const descName = getPreferredTagName(context, mode, 'description', tagPreference);\n const tagsWithoutNames = [];\n const tagsWithNames = filterTags(tags, (tag) => {\n const {tag: tagName} = tag;\n const tagWithName = tagsWithNamesAndDescriptions.includes(tagName);\n if (!tagWithName && tagName !== descName) {\n tagsWithoutNames.push(tag);\n }\n\n return tagWithName;\n });\n\n return {\n tagsWithNames,\n tagsWithoutNames,\n };\n};\n\nconst getIndent = (sourceCode) => {\n let indent = sourceCode.text.match(/^\\n*([ \\t]+)/u);\n /* istanbul ignore next */\n indent = indent ? indent[1] + indent[1].charAt() : ' ';\n\n return indent;\n};\n\nexport default {\n enforcedContexts,\n filterTags,\n getContextObject,\n getFunctionParameterNames,\n getIndent,\n getJsdocTags,\n getJsdocTagsDeep,\n getPreferredTagName,\n getTagsByType,\n hasATag,\n hasDefinedTypeReturnTag,\n hasReturnValue,\n hasTag,\n isNamepathDefiningTag,\n isValidTag,\n parseClosureTemplateTag,\n tagMightHaveEitherTypeOrNamePosition,\n tagMightHaveNamePosition,\n tagMightHaveTypePosition,\n tagMustHaveEitherTypeOrNamePosition,\n tagMustHaveNamePosition,\n tagMustHaveTypePosition,\n};\n"],"file":"jsdocUtils.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAccess.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkAccess.js deleted file mode 100644 index 2bf8168d..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAccess.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const accessLevels = ['package', 'private', 'protected', 'public']; - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('access', (jsdocParameter, targetTagName) => { - const desc = targetTagName === 'access' ? jsdocParameter.description : jsdocParameter.name + ' ' + jsdocParameter.description; - - if (!accessLevels.includes(desc.trim())) { - report(`Missing valid JSDoc @${targetTagName} level.`, null, jsdocParameter); - } - }); - const accessLength = utils.getTags('access').length; - const individualTagLength = utils.getPresentTags(accessLevels).length; - - if (accessLength && individualTagLength) { - report('The @access tag may not be used with specific access-control tags (@package, @private, @protected, or @public).'); - } - - if (accessLength > 1 || individualTagLength > 1) { - report('At most one access-control tag may be present on a jsdoc block.'); - } -}, { - checkPrivate: true, - iterateAllJsdocs: true, - meta: { - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkAccess.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAccess.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkAccess.js.map deleted file mode 100644 index e48605f0..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAccess.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkAccess.js"],"names":["accessLevels","report","utils","forEachPreferredTag","jsdocParameter","targetTagName","desc","description","name","includes","trim","accessLength","getTags","length","individualTagLength","getPresentTags","checkPrivate","iterateAllJsdocs","meta","type"],"mappings":";;;;;;;AAAA;;;;AAEA,MAAMA,YAAY,GAAG,CAAC,SAAD,EAAY,SAAZ,EAAuB,WAAvB,EAAoC,QAApC,CAArB;;eAEe,2BAAa,CAAC;AAC3BC,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,QAA1B,EAAoC,CAACC,cAAD,EAAiBC,aAAjB,KAAmC;AACrE,UAAMC,IAAI,GAAGD,aAAa,KAAK,QAAlB,GACXD,cAAc,CAACG,WADJ,GAEXH,cAAc,CAACI,IAAf,GAAsB,GAAtB,GAA4BJ,cAAc,CAACG,WAF7C;;AAIA,QAAI,CAACP,YAAY,CAACS,QAAb,CAAsBH,IAAI,CAACI,IAAL,EAAtB,CAAL,EAAyC;AACvCT,MAAAA,MAAM,CACH,wBAAuBI,aAAc,SADlC,EAEJ,IAFI,EAGJD,cAHI,CAAN;AAKD;AACF,GAZD;AAaA,QAAMO,YAAY,GAAGT,KAAK,CAACU,OAAN,CAAc,QAAd,EAAwBC,MAA7C;AACA,QAAMC,mBAAmB,GAAGZ,KAAK,CAACa,cAAN,CAAqBf,YAArB,EAAmCa,MAA/D;;AACA,MAAIF,YAAY,IAAIG,mBAApB,EAAyC;AACvCb,IAAAA,MAAM,CACJ,iHADI,CAAN;AAGD;;AACD,MAAIU,YAAY,GAAG,CAAf,IAAoBG,mBAAmB,GAAG,CAA9C,EAAiD;AAC/Cb,IAAAA,MAAM,CACJ,iEADI,CAAN;AAGD;AACF,CA7Bc,EA6BZ;AACDe,EAAAA,YAAY,EAAE,IADb;AAEDC,EAAAA,gBAAgB,EAAE,IAFjB;AAGDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,IAAI,EAAE;AADF;AAHL,CA7BY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst accessLevels = ['package', 'private', 'protected', 'public'];\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('access', (jsdocParameter, targetTagName) => {\n const desc = targetTagName === 'access' ?\n jsdocParameter.description :\n jsdocParameter.name + ' ' + jsdocParameter.description;\n\n if (!accessLevels.includes(desc.trim())) {\n report(\n `Missing valid JSDoc @${targetTagName} level.`,\n null,\n jsdocParameter,\n );\n }\n });\n const accessLength = utils.getTags('access').length;\n const individualTagLength = utils.getPresentTags(accessLevels).length;\n if (accessLength && individualTagLength) {\n report(\n 'The @access tag may not be used with specific access-control tags (@package, @private, @protected, or @public).',\n );\n }\n if (accessLength > 1 || individualTagLength > 1) {\n report(\n 'At most one access-control tag may be present on a jsdoc block.',\n );\n }\n}, {\n checkPrivate: true,\n iterateAllJsdocs: true,\n meta: {\n type: 'suggestion',\n },\n});\n"],"file":"checkAccess.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAlignment.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkAlignment.js deleted file mode 100644 index 8d9f69a0..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAlignment.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const trimStart = string => { - return string.replace(/^\s+/u, ''); -}; - -var _default = (0, _iterateJsdoc.default)(({ - sourceCode, - jsdocNode, - report, - indent -}) => { - // `indent` is whitespace from line 1 (`/**`), so slice and account for "/". - const indentLevel = indent.length + 1; - const sourceLines = sourceCode.getText(jsdocNode).split('\n').slice(1).map(line => { - return line.split('*')[0]; - }).filter(line => { - return !trimStart(line).length; - }); - - const fix = fixer => { - const replacement = sourceCode.getText(jsdocNode).split('\n').map((line, index) => { - // Ignore the first line and all lines not starting with `*` - const ignored = !index || trimStart(line.split('*')[0]).length; - return ignored ? line : `${indent} ${trimStart(line)}`; - }).join('\n'); - return fixer.replaceText(jsdocNode, replacement); - }; - - sourceLines.some((line, lineNum) => { - if (line.length !== indentLevel) { - report('Expected JSDoc block to be aligned.', fix, { - line: lineNum + 1 - }); - return true; - } - - return false; - }); -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - type: 'layout' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkAlignment.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAlignment.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkAlignment.js.map deleted file mode 100644 index f032dd81..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkAlignment.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkAlignment.js"],"names":["trimStart","string","replace","sourceCode","jsdocNode","report","indent","indentLevel","length","sourceLines","getText","split","slice","map","line","filter","fix","fixer","replacement","index","ignored","join","replaceText","some","lineNum","iterateAllJsdocs","meta","fixable","type"],"mappings":";;;;;;;AAAA;;;;AAEA,MAAMA,SAAS,GAAIC,MAAD,IAAY;AAC5B,SAAOA,MAAM,CAACC,OAAP,CAAe,OAAf,EAAwB,EAAxB,CAAP;AACD,CAFD;;eAIe,2BAAa,CAAC;AAC3BC,EAAAA,UAD2B;AAE3BC,EAAAA,SAF2B;AAG3BC,EAAAA,MAH2B;AAI3BC,EAAAA;AAJ2B,CAAD,KAKtB;AACJ;AACA,QAAMC,WAAW,GAAGD,MAAM,CAACE,MAAP,GAAgB,CAApC;AACA,QAAMC,WAAW,GAAGN,UAAU,CAACO,OAAX,CAAmBN,SAAnB,EAA8BO,KAA9B,CAAoC,IAApC,EACjBC,KADiB,CACX,CADW,EAEjBC,GAFiB,CAEZC,IAAD,IAAU;AACb,WAAOA,IAAI,CAACH,KAAL,CAAW,GAAX,EAAgB,CAAhB,CAAP;AACD,GAJiB,EAKjBI,MALiB,CAKTD,IAAD,IAAU;AAChB,WAAO,CAACd,SAAS,CAACc,IAAD,CAAT,CAAgBN,MAAxB;AACD,GAPiB,CAApB;;AASA,QAAMQ,GAAG,GAAIC,KAAD,IAAW;AACrB,UAAMC,WAAW,GAAGf,UAAU,CAACO,OAAX,CAAmBN,SAAnB,EAA8BO,KAA9B,CAAoC,IAApC,EACjBE,GADiB,CACb,CAACC,IAAD,EAAOK,KAAP,KAAiB;AACpB;AACA,YAAMC,OAAO,GAAG,CAACD,KAAD,IAAUnB,SAAS,CAACc,IAAI,CAACH,KAAL,CAAW,GAAX,EAAgB,CAAhB,CAAD,CAAT,CAA8BH,MAAxD;AAEA,aAAOY,OAAO,GAAGN,IAAH,GAAW,GAAER,MAAO,IAAGN,SAAS,CAACc,IAAD,CAAO,EAArD;AACD,KANiB,EAOjBO,IAPiB,CAOZ,IAPY,CAApB;AASA,WAAOJ,KAAK,CAACK,WAAN,CAAkBlB,SAAlB,EAA6Bc,WAA7B,CAAP;AACD,GAXD;;AAaAT,EAAAA,WAAW,CAACc,IAAZ,CAAiB,CAACT,IAAD,EAAOU,OAAP,KAAmB;AAClC,QAAIV,IAAI,CAACN,MAAL,KAAgBD,WAApB,EAAiC;AAC/BF,MAAAA,MAAM,CAAC,qCAAD,EAAwCW,GAAxC,EAA6C;AACjDF,QAAAA,IAAI,EAAEU,OAAO,GAAG;AADiC,OAA7C,CAAN;AAIA,aAAO,IAAP;AACD;;AAED,WAAO,KAAP;AACD,GAVD;AAWD,CAzCc,EAyCZ;AACDC,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,MADL;AAEJC,IAAAA,IAAI,EAAE;AAFF;AAFL,CAzCY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst trimStart = (string) => {\n return string.replace(/^\\s+/u, '');\n};\n\nexport default iterateJsdoc(({\n sourceCode,\n jsdocNode,\n report,\n indent,\n}) => {\n // `indent` is whitespace from line 1 (`/**`), so slice and account for \"/\".\n const indentLevel = indent.length + 1;\n const sourceLines = sourceCode.getText(jsdocNode).split('\\n')\n .slice(1)\n .map((line) => {\n return line.split('*')[0];\n })\n .filter((line) => {\n return !trimStart(line).length;\n });\n\n const fix = (fixer) => {\n const replacement = sourceCode.getText(jsdocNode).split('\\n')\n .map((line, index) => {\n // Ignore the first line and all lines not starting with `*`\n const ignored = !index || trimStart(line.split('*')[0]).length;\n\n return ignored ? line : `${indent} ${trimStart(line)}`;\n })\n .join('\\n');\n\n return fixer.replaceText(jsdocNode, replacement);\n };\n\n sourceLines.some((line, lineNum) => {\n if (line.length !== indentLevel) {\n report('Expected JSDoc block to be aligned.', fix, {\n line: lineNum + 1,\n });\n\n return true;\n }\n\n return false;\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n type: 'layout',\n },\n});\n"],"file":"checkAlignment.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkExamples.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkExamples.js deleted file mode 100644 index 7c5d41bb..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkExamples.js +++ /dev/null @@ -1,359 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _eslint = require("eslint"); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -var _warnRemovedSettings = _interopRequireDefault(require("../warnRemovedSettings")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -const zeroBasedLineIndexAdjust = -1; -const likelyNestedJSDocIndentSpace = 1; -const preTagSpaceLength = 1; // If a space is present, we should ignore it - -const firstLinePrefixLength = preTagSpaceLength; -const hasCaptionRegex = /^\s*(.*?)<\/caption>/u; - -const escapeStringRegexp = str => { - return str.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&'); -}; - -const countChars = (str, ch) => { - return (str.match(new RegExp(escapeStringRegexp(ch), 'gu')) || []).length; -}; - -const getRegexFromString = regexString => { - const match = regexString.match(/^\/(.*)\/([gimyus]*)$/u); - let flags = 'u'; - let regex = regexString; - - if (match) { - var _match = _slicedToArray(match, 3); - - regex = _match[1]; - flags = _match[2]; - - if (!flags) { - flags = 'u'; - } - - const uniqueFlags = [...new Set(flags)]; - flags = uniqueFlags.join(''); - } - - return new RegExp(regex, flags); -}; - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils, - context, - globalState -}) => { - (0, _warnRemovedSettings.default)(context, 'check-examples'); - const tagName = utils.getPreferredTagName({ - tagName: 'example' - }); - - if (!utils.hasTag(tagName)) { - return; - } - - if (!globalState.has('checkExamples-matchingFileName')) { - globalState.set('checkExamples-matchingFileName', new Map()); - } - - const matchingFileNameMap = globalState.get('checkExamples-matchingFileName'); - const options = context.options[0] || {}; - let _options$exampleCodeR = options.exampleCodeRegex, - exampleCodeRegex = _options$exampleCodeR === void 0 ? null : _options$exampleCodeR, - _options$rejectExampl = options.rejectExampleCodeRegex, - rejectExampleCodeRegex = _options$rejectExampl === void 0 ? null : _options$rejectExampl; - const _options$noDefaultExa = options.noDefaultExampleRules, - noDefaultExampleRules = _options$noDefaultExa === void 0 ? false : _options$noDefaultExa, - _options$checkEslintr = options.checkEslintrc, - checkEslintrc = _options$checkEslintr === void 0 ? true : _options$checkEslintr, - _options$matchingFile = options.matchingFileName, - filename = _options$matchingFile === void 0 ? null : _options$matchingFile, - _options$paddedIndent = options.paddedIndent, - paddedIndent = _options$paddedIndent === void 0 ? 0 : _options$paddedIndent, - _options$baseConfig = options.baseConfig, - baseConfig = _options$baseConfig === void 0 ? {} : _options$baseConfig, - configFile = options.configFile, - _options$allowInlineC = options.allowInlineConfig, - allowInlineConfig = _options$allowInlineC === void 0 ? true : _options$allowInlineC, - _options$reportUnused = options.reportUnusedDisableDirectives, - reportUnusedDisableDirectives = _options$reportUnused === void 0 ? true : _options$reportUnused, - _options$captionRequi = options.captionRequired, - captionRequired = _options$captionRequi === void 0 ? false : _options$captionRequi; - let defaultFileName; - - if (!filename) { - const jsFileName = context.getFilename(); - - if (typeof jsFileName === 'string' && jsFileName.includes('.')) { - defaultFileName = jsFileName.replace(/\..*?$/, '.md'); - } else { - defaultFileName = 'dummy.md'; - } - } // Make this configurable? - - - const rulePaths = []; - const rules = noDefaultExampleRules ? undefined : { - // "always" newline rule at end unlikely in sample code - 'eol-last': 0, - // Wouldn't generally expect example paths to resolve relative to JS file - 'import/no-unresolved': 0, - // Snippets likely too short to always include import/export info - 'import/unambiguous': 0, - // Unlikely to have inadvertent debugging within examples - 'no-console': 0, - // Often wish to start `@example` code after newline; also may use - // empty lines for spacing - 'no-multiple-empty-lines': 0, - // Many variables in examples will be `undefined` - 'no-undef': 0, - // Common to define variables for clarity without always using them - 'no-unused-vars': 0, - // See import/no-unresolved - 'node/no-missing-import': 0, - 'node/no-missing-require': 0, - // Can generally look nicer to pad a little even if code imposes more stringency - 'padded-blocks': 0 - }; - - if (exampleCodeRegex) { - exampleCodeRegex = getRegexFromString(exampleCodeRegex); - } - - if (rejectExampleCodeRegex) { - rejectExampleCodeRegex = getRegexFromString(rejectExampleCodeRegex); - } - - utils.forEachPreferredTag('example', (tag, targetTagName) => { - let source = tag.description; - const match = source.match(hasCaptionRegex); - - if (captionRequired && (!match || !match[1].trim())) { - report('Caption is expected for examples.', null, tag); - } // If we allow newlines in hasCaptionRegex, we should add to line count - - - source = source.replace(hasCaptionRegex, ''); - - if (exampleCodeRegex && !exampleCodeRegex.test(source) || rejectExampleCodeRegex && rejectExampleCodeRegex.test(source)) { - return; - } - - const sources = []; - - if (exampleCodeRegex) { - let nonJSPrefacingCols = 0; - let nonJSPrefacingLines = 0; - let startingIndex = 0; - let lastStringCount = 0; - let exampleCode; - exampleCodeRegex.lastIndex = 0; - - while ((exampleCode = exampleCodeRegex.exec(source)) !== null) { - const _exampleCode = exampleCode, - index = _exampleCode.index, - n0 = _exampleCode[0], - n1 = _exampleCode[1]; // Count anything preceding user regex match (can affect line numbering) - - const preMatch = source.slice(startingIndex, index); - const preMatchLines = countChars(preMatch, '\n'); - const colDelta = preMatchLines ? preMatch.slice(preMatch.lastIndexOf('\n') + 1).length : preMatch.length; - let nonJSPreface; - let nonJSPrefaceLineCount; - - if (n1) { - const idx = n0.indexOf(n1); - nonJSPreface = n0.slice(0, idx); - nonJSPrefaceLineCount = countChars(nonJSPreface, '\n'); - } else { - nonJSPreface = ''; - nonJSPrefaceLineCount = 0; - } - - nonJSPrefacingLines += lastStringCount + preMatchLines + nonJSPrefaceLineCount; // Ignore `preMatch` delta if newlines here - - if (nonJSPrefaceLineCount) { - const charsInLastLine = nonJSPreface.slice(nonJSPreface.lastIndexOf('\n') + 1).length; - nonJSPrefacingCols += charsInLastLine; - } else { - nonJSPrefacingCols += colDelta + nonJSPreface.length; - } - - const string = n1 || n0; - sources.push({ - nonJSPrefacingCols, - nonJSPrefacingLines, - string - }); - startingIndex = exampleCodeRegex.lastIndex; - lastStringCount = countChars(string, '\n'); - - if (!exampleCodeRegex.global) { - break; - } - } - } else { - sources.push({ - nonJSPrefacingCols: 0, - nonJSPrefacingLines: 0, - string: source - }); - } // Todo: Make fixable - // Todo: Fix whitespace indent - - - const checkRules = function checkRules({ - nonJSPrefacingCols, - nonJSPrefacingLines, - string - }) { - const cliConfig = { - allowInlineConfig, - baseConfig, - configFile, - reportUnusedDisableDirectives, - rulePaths, - rules, - useEslintrc: checkEslintrc - }; - const cliConfigStr = JSON.stringify(cliConfig); - const src = paddedIndent ? string.replace(new RegExp(`(^|\n) {${paddedIndent}}(?!$)`, 'gu'), '\n') : string; // Programmatic ESLint API: https://eslint.org/docs/developer-guide/nodejs-api - - const fileNameMapKey = filename ? 'a' + cliConfigStr + filename : 'b' + cliConfigStr + defaultFileName; - const file = filename || defaultFileName; - let cliFile; - - if (matchingFileNameMap.has(fileNameMapKey)) { - cliFile = matchingFileNameMap.get(fileNameMapKey); - } else { - const cli = new _eslint.CLIEngine(cliConfig); - let config; - - if (filename || checkEslintrc) { - config = cli.getConfigForFile(file); - } // We need a new instance to ensure that the rules that may only - // be available to `file` (if it has its own `.eslintrc`), - // will be defined. - - - cliFile = new _eslint.CLIEngine({ - allowInlineConfig, - baseConfig: _objectSpread({}, baseConfig, {}, config), - configFile, - reportUnusedDisableDirectives, - rulePaths, - rules, - useEslintrc: false - }); - matchingFileNameMap.set(fileNameMapKey, cliFile); - } - - const _cliFile$executeOnTex = cliFile.executeOnText(src), - _cliFile$executeOnTex2 = _slicedToArray(_cliFile$executeOnTex.results, 1), - messages = _cliFile$executeOnTex2[0].messages; // NOTE: `tag.line` can be 0 if of form `/** @tag ... */` - - - const codeStartLine = tag.line + nonJSPrefacingLines; - const codeStartCol = likelyNestedJSDocIndentSpace; - messages.forEach(({ - message, - line, - column, - severity, - ruleId - }) => { - const startLine = codeStartLine + line + zeroBasedLineIndexAdjust; - const startCol = codeStartCol + ( // This might not work for line 0, but line 0 is unlikely for examples - line <= 1 ? nonJSPrefacingCols + firstLinePrefixLength : preTagSpaceLength) + column; - report('@' + targetTagName + ' ' + (severity === 2 ? 'error' : 'warning') + (ruleId ? ' (' + ruleId + ')' : '') + ': ' + message, null, { - column: startCol, - line: startLine - }); - }); - }; - - sources.forEach(checkRules); - }); -}, { - iterateAllJsdocs: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - allowInlineConfig: { - default: true, - type: 'boolean' - }, - baseConfig: { - type: 'object' - }, - captionRequired: { - default: false, - type: 'boolean' - }, - checkEslintrc: { - default: true, - type: 'boolean' - }, - configFile: { - type: 'string' - }, - exampleCodeRegex: { - type: 'string' - }, - matchingFileName: { - type: 'string' - }, - noDefaultExampleRules: { - default: false, - type: 'boolean' - }, - paddedIndent: { - default: 0, - type: 'integer' - }, - rejectExampleCodeRegex: { - type: 'string' - }, - reportUnusedDisableDirectives: { - default: true, - type: 'boolean' - } - }, - type: 'object' - }], - type: 'suggestion' - }, - noTrim: true -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkExamples.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkExamples.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkExamples.js.map deleted file mode 100644 index 7eccc422..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkExamples.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkExamples.js"],"names":["zeroBasedLineIndexAdjust","likelyNestedJSDocIndentSpace","preTagSpaceLength","firstLinePrefixLength","hasCaptionRegex","escapeStringRegexp","str","replace","countChars","ch","match","RegExp","length","getRegexFromString","regexString","flags","regex","uniqueFlags","Set","join","report","utils","context","globalState","tagName","getPreferredTagName","hasTag","has","set","Map","matchingFileNameMap","get","options","exampleCodeRegex","rejectExampleCodeRegex","noDefaultExampleRules","checkEslintrc","matchingFileName","filename","paddedIndent","baseConfig","configFile","allowInlineConfig","reportUnusedDisableDirectives","captionRequired","defaultFileName","jsFileName","getFilename","includes","rulePaths","rules","undefined","forEachPreferredTag","tag","targetTagName","source","description","trim","test","sources","nonJSPrefacingCols","nonJSPrefacingLines","startingIndex","lastStringCount","exampleCode","lastIndex","exec","index","n0","n1","preMatch","slice","preMatchLines","colDelta","lastIndexOf","nonJSPreface","nonJSPrefaceLineCount","idx","indexOf","charsInLastLine","string","push","global","checkRules","cliConfig","useEslintrc","cliConfigStr","JSON","stringify","src","fileNameMapKey","file","cliFile","cli","CLIEngine","config","getConfigForFile","executeOnText","results","messages","codeStartLine","line","codeStartCol","forEach","message","column","severity","ruleId","startLine","startCol","iterateAllJsdocs","meta","schema","additionalProperties","properties","default","type","noTrim"],"mappings":"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","sourcesContent":["import {CLIEngine} from 'eslint';\nimport iterateJsdoc from '../iterateJsdoc';\nimport warnRemovedSettings from '../warnRemovedSettings';\n\nconst zeroBasedLineIndexAdjust = -1;\nconst likelyNestedJSDocIndentSpace = 1;\nconst preTagSpaceLength = 1;\n\n// If a space is present, we should ignore it\nconst firstLinePrefixLength = preTagSpaceLength;\n\nconst hasCaptionRegex = /^\\s*(.*?)<\\/caption>/u;\n\nconst escapeStringRegexp = (str) => {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/gu, '\\\\$&');\n};\nconst countChars = (str, ch) => {\n return (str.match(new RegExp(escapeStringRegexp(ch), 'gu')) || []).length;\n};\n\nconst getRegexFromString = (regexString) => {\n const match = regexString.match(/^\\/(.*)\\/([gimyus]*)$/u);\n let flags = 'u';\n let regex = regexString;\n if (match) {\n [, regex, flags] = match;\n if (!flags) {\n flags = 'u';\n }\n const uniqueFlags = [...new Set(flags)];\n flags = uniqueFlags.join('');\n }\n\n return new RegExp(regex, flags);\n};\n\nexport default iterateJsdoc(({\n report,\n utils,\n context,\n globalState,\n}) => {\n warnRemovedSettings(context, 'check-examples');\n const tagName = utils.getPreferredTagName({tagName: 'example'});\n if (!utils.hasTag(tagName)) {\n return;\n }\n\n if (!globalState.has('checkExamples-matchingFileName')) {\n globalState.set('checkExamples-matchingFileName', new Map());\n }\n const matchingFileNameMap = globalState.get('checkExamples-matchingFileName');\n\n const options = context.options[0] || {};\n let {\n exampleCodeRegex = null,\n rejectExampleCodeRegex = null,\n } = options;\n const {\n noDefaultExampleRules = false,\n checkEslintrc = true,\n matchingFileName: filename = null,\n paddedIndent = 0,\n baseConfig = {},\n configFile,\n allowInlineConfig = true,\n reportUnusedDisableDirectives = true,\n captionRequired = false,\n } = options;\n\n let defaultFileName;\n if (!filename) {\n const jsFileName = context.getFilename();\n if (typeof jsFileName === 'string' && jsFileName.includes('.')) {\n defaultFileName = jsFileName.replace(/\\..*?$/, '.md');\n } else {\n defaultFileName = 'dummy.md';\n }\n }\n\n // Make this configurable?\n const rulePaths = [];\n\n const rules = noDefaultExampleRules ? undefined : {\n // \"always\" newline rule at end unlikely in sample code\n 'eol-last': 0,\n\n // Wouldn't generally expect example paths to resolve relative to JS file\n 'import/no-unresolved': 0,\n\n // Snippets likely too short to always include import/export info\n 'import/unambiguous': 0,\n\n // Unlikely to have inadvertent debugging within examples\n 'no-console': 0,\n\n // Often wish to start `@example` code after newline; also may use\n // empty lines for spacing\n 'no-multiple-empty-lines': 0,\n\n // Many variables in examples will be `undefined`\n 'no-undef': 0,\n\n // Common to define variables for clarity without always using them\n 'no-unused-vars': 0,\n\n // See import/no-unresolved\n 'node/no-missing-import': 0,\n 'node/no-missing-require': 0,\n\n // Can generally look nicer to pad a little even if code imposes more stringency\n 'padded-blocks': 0,\n };\n\n if (exampleCodeRegex) {\n exampleCodeRegex = getRegexFromString(exampleCodeRegex);\n }\n if (rejectExampleCodeRegex) {\n rejectExampleCodeRegex = getRegexFromString(rejectExampleCodeRegex);\n }\n\n utils.forEachPreferredTag('example', (tag, targetTagName) => {\n let source = tag.description;\n const match = source.match(hasCaptionRegex);\n\n if (captionRequired && (!match || !match[1].trim())) {\n report('Caption is expected for examples.', null, tag);\n }\n\n // If we allow newlines in hasCaptionRegex, we should add to line count\n source = source.replace(hasCaptionRegex, '');\n\n if (exampleCodeRegex && !exampleCodeRegex.test(source) ||\n rejectExampleCodeRegex && rejectExampleCodeRegex.test(source)\n ) {\n return;\n }\n\n const sources = [];\n if (exampleCodeRegex) {\n let nonJSPrefacingCols = 0;\n let nonJSPrefacingLines = 0;\n\n let startingIndex = 0;\n let lastStringCount = 0;\n\n let exampleCode;\n exampleCodeRegex.lastIndex = 0;\n while ((exampleCode = exampleCodeRegex.exec(source)) !== null) {\n const {index, 0: n0, 1: n1} = exampleCode;\n\n // Count anything preceding user regex match (can affect line numbering)\n const preMatch = source.slice(startingIndex, index);\n\n const preMatchLines = countChars(preMatch, '\\n');\n\n const colDelta = preMatchLines ?\n preMatch.slice(preMatch.lastIndexOf('\\n') + 1).length :\n preMatch.length;\n\n let nonJSPreface;\n let nonJSPrefaceLineCount;\n if (n1) {\n const idx = n0.indexOf(n1);\n nonJSPreface = n0.slice(0, idx);\n nonJSPrefaceLineCount = countChars(nonJSPreface, '\\n');\n } else {\n nonJSPreface = '';\n nonJSPrefaceLineCount = 0;\n }\n\n nonJSPrefacingLines += lastStringCount + preMatchLines + nonJSPrefaceLineCount;\n\n // Ignore `preMatch` delta if newlines here\n if (nonJSPrefaceLineCount) {\n const charsInLastLine = nonJSPreface.slice(nonJSPreface.lastIndexOf('\\n') + 1).length;\n\n nonJSPrefacingCols += charsInLastLine;\n } else {\n nonJSPrefacingCols += colDelta + nonJSPreface.length;\n }\n\n const string = n1 || n0;\n sources.push({\n nonJSPrefacingCols,\n nonJSPrefacingLines,\n string,\n });\n startingIndex = exampleCodeRegex.lastIndex;\n lastStringCount = countChars(string, '\\n');\n if (!exampleCodeRegex.global) {\n break;\n }\n }\n } else {\n sources.push({\n nonJSPrefacingCols: 0,\n nonJSPrefacingLines: 0,\n string: source,\n });\n }\n\n // Todo: Make fixable\n // Todo: Fix whitespace indent\n const checkRules = function ({\n nonJSPrefacingCols,\n nonJSPrefacingLines,\n string,\n }) {\n const cliConfig = {\n allowInlineConfig,\n baseConfig,\n configFile,\n reportUnusedDisableDirectives,\n rulePaths,\n rules,\n useEslintrc: checkEslintrc,\n };\n const cliConfigStr = JSON.stringify(cliConfig);\n\n const src = paddedIndent ?\n string.replace(new RegExp(`(^|\\n) {${paddedIndent}}(?!$)`, 'gu'), '\\n') :\n string;\n\n // Programmatic ESLint API: https://eslint.org/docs/developer-guide/nodejs-api\n const fileNameMapKey = filename ?\n 'a' + cliConfigStr + filename :\n 'b' + cliConfigStr + defaultFileName;\n const file = filename || defaultFileName;\n let cliFile;\n if (matchingFileNameMap.has(fileNameMapKey)) {\n cliFile = matchingFileNameMap.get(fileNameMapKey);\n } else {\n const cli = new CLIEngine(cliConfig);\n let config;\n if (filename || checkEslintrc) {\n config = cli.getConfigForFile(file);\n }\n\n // We need a new instance to ensure that the rules that may only\n // be available to `file` (if it has its own `.eslintrc`),\n // will be defined.\n cliFile = new CLIEngine({\n allowInlineConfig,\n baseConfig: {\n ...baseConfig,\n ...config,\n },\n configFile,\n reportUnusedDisableDirectives,\n rulePaths,\n rules,\n useEslintrc: false,\n });\n matchingFileNameMap.set(fileNameMapKey, cliFile);\n }\n\n const {results: [{messages}]} =\n cliFile.executeOnText(src);\n\n // NOTE: `tag.line` can be 0 if of form `/** @tag ... */`\n const codeStartLine = tag.line + nonJSPrefacingLines;\n const codeStartCol = likelyNestedJSDocIndentSpace;\n\n messages.forEach(({message, line, column, severity, ruleId}) => {\n const startLine = codeStartLine + line + zeroBasedLineIndexAdjust;\n const startCol = codeStartCol + (\n\n // This might not work for line 0, but line 0 is unlikely for examples\n line <= 1 ? nonJSPrefacingCols + firstLinePrefixLength : preTagSpaceLength\n ) + column;\n\n report(\n '@' + targetTagName + ' ' + (severity === 2 ? 'error' : 'warning') +\n (ruleId ? ' (' + ruleId + ')' : '') + ': ' +\n message,\n null,\n {\n column: startCol,\n line: startLine,\n },\n );\n });\n };\n\n sources.forEach(checkRules);\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n allowInlineConfig: {\n default: true,\n type: 'boolean',\n },\n baseConfig: {\n type: 'object',\n },\n captionRequired: {\n default: false,\n type: 'boolean',\n },\n checkEslintrc: {\n default: true,\n type: 'boolean',\n },\n configFile: {\n type: 'string',\n },\n exampleCodeRegex: {\n type: 'string',\n },\n matchingFileName: {\n type: 'string',\n },\n noDefaultExampleRules: {\n default: false,\n type: 'boolean',\n },\n paddedIndent: {\n default: 0,\n type: 'integer',\n },\n rejectExampleCodeRegex: {\n type: 'string',\n },\n reportUnusedDisableDirectives: {\n default: true,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n noTrim: true,\n});\n"],"file":"checkExamples.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkIndentation.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkIndentation.js deleted file mode 100644 index 1ee82e8c..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkIndentation.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const maskExcludedContent = (str, excludeTags) => { - const regContent = new RegExp(`([ \\t]+\\*)[ \\t]@(?:${excludeTags.join('|')})(?=[ \\n])([\\w|\\W]*?\\n)(?=[ \\t]*\\*(?:[ \\t]*@|\\/))`, 'gu'); - return str.replace(regContent, (match, margin, code) => { - return new Array(code.match(/\n/gu).length + 1).join(margin + '\n'); - }); -}; - -const maskCodeBlocks = str => { - const regContent = /([ \t]+\*)[ \t]```[^\n]*?([\w|\W]*?\n)(?=[ \t]*\*(?:[ \t]*(?:```|@)|\/))/gu; - return str.replace(regContent, (match, margin, code) => { - return new Array(code.match(/\n/gu).length + 1).join(margin + '\n'); - }); -}; - -var _default = (0, _iterateJsdoc.default)(({ - sourceCode, - jsdocNode, - report, - context -}) => { - const options = context.options[0] || {}; - const _options$excludeTags = options.excludeTags, - excludeTags = _options$excludeTags === void 0 ? ['example'] : _options$excludeTags; - const reg = new RegExp(/^(?:\/?\**|[ \t]*)\*[ \t]{2}/gmu); - const textWithoutCodeBlocks = maskCodeBlocks(sourceCode.getText(jsdocNode)); - const text = excludeTags.length ? maskExcludedContent(textWithoutCodeBlocks, excludeTags) : textWithoutCodeBlocks; - - if (reg.test(text)) { - const lineBreaks = text.slice(0, reg.lastIndex).match(/\n/gu) || []; - report('There must be no indentation.', null, { - line: lineBreaks.length - }); - } -}, { - iterateAllJsdocs: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - excludeTags: { - items: { - pattern: '^\\S+$', - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'layout' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkIndentation.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkIndentation.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkIndentation.js.map deleted file mode 100644 index 20cc48fb..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkIndentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkIndentation.js"],"names":["maskExcludedContent","str","excludeTags","regContent","RegExp","join","replace","match","margin","code","Array","length","maskCodeBlocks","sourceCode","jsdocNode","report","context","options","reg","textWithoutCodeBlocks","getText","text","test","lineBreaks","slice","lastIndex","line","iterateAllJsdocs","meta","schema","additionalProperties","properties","items","pattern","type"],"mappings":";;;;;;;AAAA;;;;AAEA,MAAMA,mBAAmB,GAAG,CAACC,GAAD,EAAMC,WAAN,KAAsB;AAChD,QAAMC,UAAU,GAAG,IAAIC,MAAJ,CAAY,yBAAwBF,WAAW,CAACG,IAAZ,CAAiB,GAAjB,CAAsB,2DAA1D,EAAsH,IAAtH,CAAnB;AAEA,SAAOJ,GAAG,CAACK,OAAJ,CAAYH,UAAZ,EAAwB,CAACI,KAAD,EAAQC,MAAR,EAAgBC,IAAhB,KAAyB;AACtD,WAAO,IAAIC,KAAJ,CAAUD,IAAI,CAACF,KAAL,CAAW,MAAX,EAAmBI,MAAnB,GAA4B,CAAtC,EAAyCN,IAAzC,CAA8CG,MAAM,GAAG,IAAvD,CAAP;AACD,GAFM,CAAP;AAGD,CAND;;AAQA,MAAMI,cAAc,GAAIX,GAAD,IAAS;AAC9B,QAAME,UAAU,GAAG,4EAAnB;AAEA,SAAOF,GAAG,CAACK,OAAJ,CAAYH,UAAZ,EAAwB,CAACI,KAAD,EAAQC,MAAR,EAAgBC,IAAhB,KAAyB;AACtD,WAAO,IAAIC,KAAJ,CAAUD,IAAI,CAACF,KAAL,CAAW,MAAX,EAAmBI,MAAnB,GAA4B,CAAtC,EAAyCN,IAAzC,CAA8CG,MAAM,GAAG,IAAvD,CAAP;AACD,GAFM,CAAP;AAGD,CAND;;eAQe,2BAAa,CAAC;AAC3BK,EAAAA,UAD2B;AAE3BC,EAAAA,SAF2B;AAG3BC,EAAAA,MAH2B;AAI3BC,EAAAA;AAJ2B,CAAD,KAKtB;AACJ,QAAMC,OAAO,GAAGD,OAAO,CAACC,OAAR,CAAgB,CAAhB,KAAsB,EAAtC;AADI,+BAIAA,OAJA,CAGFf,WAHE;AAAA,QAGFA,WAHE,qCAGY,CAAC,SAAD,CAHZ;AAMJ,QAAMgB,GAAG,GAAG,IAAId,MAAJ,CAAW,iCAAX,CAAZ;AACA,QAAMe,qBAAqB,GAAGP,cAAc,CAACC,UAAU,CAACO,OAAX,CAAmBN,SAAnB,CAAD,CAA5C;AACA,QAAMO,IAAI,GAAGnB,WAAW,CAACS,MAAZ,GAAqBX,mBAAmB,CAACmB,qBAAD,EAAwBjB,WAAxB,CAAxC,GAA+EiB,qBAA5F;;AAEA,MAAID,GAAG,CAACI,IAAJ,CAASD,IAAT,CAAJ,EAAoB;AAClB,UAAME,UAAU,GAAGF,IAAI,CAACG,KAAL,CAAW,CAAX,EAAcN,GAAG,CAACO,SAAlB,EAA6BlB,KAA7B,CAAmC,MAAnC,KAA8C,EAAjE;AACAQ,IAAAA,MAAM,CAAC,+BAAD,EAAkC,IAAlC,EAAwC;AAC5CW,MAAAA,IAAI,EAAEH,UAAU,CAACZ;AAD2B,KAAxC,CAAN;AAGD;AACF,CArBc,EAqBZ;AACDgB,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CAAC;AACPC,MAAAA,oBAAoB,EAAE,KADf;AAEPC,MAAAA,UAAU,EAAE;AACV7B,QAAAA,WAAW,EAAE;AACX8B,UAAAA,KAAK,EAAE;AACLC,YAAAA,OAAO,EAAE,QADJ;AAELC,YAAAA,IAAI,EAAE;AAFD,WADI;AAKXA,UAAAA,IAAI,EAAE;AALK;AADH,OAFL;AAWPA,MAAAA,IAAI,EAAE;AAXC,KAAD,CADJ;AAcJA,IAAAA,IAAI,EAAE;AAdF;AAFL,CArBY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst maskExcludedContent = (str, excludeTags) => {\n const regContent = new RegExp(`([ \\\\t]+\\\\*)[ \\\\t]@(?:${excludeTags.join('|')})(?=[ \\\\n])([\\\\w|\\\\W]*?\\\\n)(?=[ \\\\t]*\\\\*(?:[ \\\\t]*@|\\\\/))`, 'gu');\n\n return str.replace(regContent, (match, margin, code) => {\n return new Array(code.match(/\\n/gu).length + 1).join(margin + '\\n');\n });\n};\n\nconst maskCodeBlocks = (str) => {\n const regContent = /([ \\t]+\\*)[ \\t]```[^\\n]*?([\\w|\\W]*?\\n)(?=[ \\t]*\\*(?:[ \\t]*(?:```|@)|\\/))/gu;\n\n return str.replace(regContent, (match, margin, code) => {\n return new Array(code.match(/\\n/gu).length + 1).join(margin + '\\n');\n });\n};\n\nexport default iterateJsdoc(({\n sourceCode,\n jsdocNode,\n report,\n context,\n}) => {\n const options = context.options[0] || {};\n const {\n excludeTags = ['example'],\n } = options;\n\n const reg = new RegExp(/^(?:\\/?\\**|[ \\t]*)\\*[ \\t]{2}/gmu);\n const textWithoutCodeBlocks = maskCodeBlocks(sourceCode.getText(jsdocNode));\n const text = excludeTags.length ? maskExcludedContent(textWithoutCodeBlocks, excludeTags) : textWithoutCodeBlocks;\n\n if (reg.test(text)) {\n const lineBreaks = text.slice(0, reg.lastIndex).match(/\\n/gu) || [];\n report('There must be no indentation.', null, {\n line: lineBreaks.length,\n });\n }\n}, {\n iterateAllJsdocs: true,\n meta: {\n schema: [{\n additionalProperties: false,\n properties: {\n excludeTags: {\n items: {\n pattern: '^\\\\S+$',\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n }],\n type: 'layout',\n },\n});\n"],"file":"checkIndentation.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkParamNames.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkParamNames.js deleted file mode 100644 index 1de28e4c..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkParamNames.js +++ /dev/null @@ -1,146 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const validateParameterNames = (targetTagName, allowExtraTrailingParamDocs, functionParameterNames, jsdoc, jsdocNode, utils, report) => { - const paramTags = Object.entries(jsdoc.tags).filter(([, tag]) => { - return tag.tag === targetTagName; - }); - const paramTagsNonNested = paramTags.filter(([, tag]) => { - return !tag.name.includes('.'); - }); - let dotted = 0; - return paramTags.some(([, tag], index) => { - let tagsIndex; - const dupeTagInfo = paramTags.find(([tgsIndex, tg], idx) => { - tagsIndex = tgsIndex; - return tg.name === tag.name && idx !== index; - }); - - if (dupeTagInfo) { - utils.reportJSDoc(`Duplicate @${targetTagName} "${tag.name}"`, dupeTagInfo[1], () => { - jsdoc.tags.splice(tagsIndex, 1); - }); - return true; - } - - if (tag.name.includes('.')) { - dotted++; - return false; - } - - const functionParameterName = functionParameterNames[index - dotted]; - - if (!functionParameterName) { - if (allowExtraTrailingParamDocs) { - return false; - } - - report(`@${targetTagName} "${tag.name}" does not match an existing function parameter.`, null, tag); - return true; - } - - if (functionParameterName === '' || functionParameterName === '') { - return false; - } - - if (functionParameterName !== tag.name.trim()) { - const expectedNames = functionParameterNames.join(', '); - const actualNames = paramTagsNonNested.map(([, { - name - }]) => { - return name.trim(); - }).join(', '); - report(`Expected @${targetTagName} names to be "${expectedNames}". Got "${actualNames}".`, null, tag); - return true; - } - - return false; - }); -}; - -const validateParameterNamesDeep = (targetTagName, allowExtraTrailingParamDocs, jsdocParameterNames, jsdoc, report) => { - let lastRealParameter; - return jsdocParameterNames.some(({ - name: jsdocParameterName, - idx - }) => { - const isPropertyPath = jsdocParameterName.includes('.'); - - if (isPropertyPath) { - if (!lastRealParameter) { - report(`@${targetTagName} path declaration ("${jsdocParameterName}") appears before any real parameter.`, null, jsdoc.tags[idx]); - return true; - } - - let pathRootNodeName = jsdocParameterName.slice(0, jsdocParameterName.indexOf('.')); - - if (pathRootNodeName.endsWith('[]')) { - pathRootNodeName = pathRootNodeName.slice(0, -2); - } - - if (pathRootNodeName !== lastRealParameter) { - report(`@${targetTagName} path declaration ("${jsdocParameterName}") root node name ("${pathRootNodeName}") ` + `does not match previous real parameter name ("${lastRealParameter}").`, null, jsdoc.tags[idx]); - return true; - } - } else { - lastRealParameter = jsdocParameterName; - } - - return false; - }); -}; - -var _default = (0, _iterateJsdoc.default)(({ - context, - jsdoc, - jsdocNode, - report, - utils -}) => { - const _ref = context.options[0] || {}, - allowExtraTrailingParamDocs = _ref.allowExtraTrailingParamDocs; - - const jsdocParameterNamesDeep = utils.getJsdocTagsDeep('param'); - - if (!jsdocParameterNamesDeep.length) { - return; - } - - const functionParameterNames = utils.getFunctionParameterNames(); - const targetTagName = utils.getPreferredTagName({ - tagName: 'param' - }); - const isError = validateParameterNames(targetTagName, allowExtraTrailingParamDocs, functionParameterNames, jsdoc, jsdocNode, utils, report); - - if (isError) { - return; - } - - validateParameterNamesDeep(targetTagName, allowExtraTrailingParamDocs, jsdocParameterNamesDeep, jsdoc, report); -}, { - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - allowExtraTrailingParamDocs: { - type: 'boolean' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkParamNames.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkParamNames.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkParamNames.js.map deleted file mode 100644 index ffd18bfb..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkParamNames.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkParamNames.js"],"names":["validateParameterNames","targetTagName","allowExtraTrailingParamDocs","functionParameterNames","jsdoc","jsdocNode","utils","report","paramTags","Object","entries","tags","filter","tag","paramTagsNonNested","name","includes","dotted","some","index","tagsIndex","dupeTagInfo","find","tgsIndex","tg","idx","reportJSDoc","splice","functionParameterName","trim","expectedNames","join","actualNames","map","validateParameterNamesDeep","jsdocParameterNames","lastRealParameter","jsdocParameterName","isPropertyPath","pathRootNodeName","slice","indexOf","endsWith","context","options","jsdocParameterNamesDeep","getJsdocTagsDeep","length","getFunctionParameterNames","getPreferredTagName","tagName","isError","meta","fixable","schema","additionalProperties","properties","type"],"mappings":"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","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst validateParameterNames = (\n targetTagName : string, allowExtraTrailingParamDocs: boolean,\n functionParameterNames : Array, jsdoc, jsdocNode, utils, report,\n) => {\n const paramTags = Object.entries(jsdoc.tags).filter(([, tag]) => {\n return tag.tag === targetTagName;\n });\n const paramTagsNonNested = paramTags.filter(([, tag]) => {\n return !tag.name.includes('.');\n });\n\n let dotted = 0;\n\n return paramTags.some(([, tag], index) => {\n let tagsIndex;\n const dupeTagInfo = paramTags.find(([tgsIndex, tg], idx) => {\n tagsIndex = tgsIndex;\n\n return tg.name === tag.name && idx !== index;\n });\n if (dupeTagInfo) {\n utils.reportJSDoc(`Duplicate @${targetTagName} \"${tag.name}\"`, dupeTagInfo[1], () => {\n jsdoc.tags.splice(tagsIndex, 1);\n });\n\n return true;\n }\n if (tag.name.includes('.')) {\n dotted++;\n\n return false;\n }\n\n const functionParameterName = functionParameterNames[index - dotted];\n\n if (!functionParameterName) {\n if (allowExtraTrailingParamDocs) {\n return false;\n }\n\n report(\n `@${targetTagName} \"${tag.name}\" does not match an existing function parameter.`,\n null,\n tag,\n );\n\n return true;\n }\n\n if (functionParameterName === '' || functionParameterName === '') {\n return false;\n }\n\n if (functionParameterName !== tag.name.trim()) {\n const expectedNames = functionParameterNames.join(', ');\n const actualNames = paramTagsNonNested.map(([, {name}]) => {\n return name.trim();\n }).join(', ');\n\n report(\n `Expected @${targetTagName} names to be \"${expectedNames}\". Got \"${actualNames}\".`,\n null,\n tag,\n );\n\n return true;\n }\n\n return false;\n });\n};\n\nconst validateParameterNamesDeep = (\n targetTagName : string, allowExtraTrailingParamDocs: boolean,\n jsdocParameterNames : Array, jsdoc, report : Function,\n) => {\n let lastRealParameter;\n\n return jsdocParameterNames.some(({name: jsdocParameterName, idx}) => {\n const isPropertyPath = jsdocParameterName.includes('.');\n\n if (isPropertyPath) {\n if (!lastRealParameter) {\n report(`@${targetTagName} path declaration (\"${jsdocParameterName}\") appears before any real parameter.`, null, jsdoc.tags[idx]);\n\n return true;\n }\n\n let pathRootNodeName = jsdocParameterName.slice(0, jsdocParameterName.indexOf('.'));\n\n if (pathRootNodeName.endsWith('[]')) {\n pathRootNodeName = pathRootNodeName.slice(0, -2);\n }\n\n if (pathRootNodeName !== lastRealParameter) {\n report(\n `@${targetTagName} path declaration (\"${jsdocParameterName}\") root node name (\"${pathRootNodeName}\") ` +\n `does not match previous real parameter name (\"${lastRealParameter}\").`,\n null,\n jsdoc.tags[idx],\n );\n\n return true;\n }\n } else {\n lastRealParameter = jsdocParameterName;\n }\n\n return false;\n });\n};\n\nexport default iterateJsdoc(({\n context,\n jsdoc,\n jsdocNode,\n report,\n utils,\n}) => {\n const {allowExtraTrailingParamDocs} = context.options[0] || {};\n\n const jsdocParameterNamesDeep = utils.getJsdocTagsDeep('param');\n if (!jsdocParameterNamesDeep.length) {\n return;\n }\n const functionParameterNames = utils.getFunctionParameterNames();\n const targetTagName = utils.getPreferredTagName({tagName: 'param'});\n const isError = validateParameterNames(\n targetTagName, allowExtraTrailingParamDocs, functionParameterNames,\n jsdoc, jsdocNode, utils, report,\n );\n\n if (isError) {\n return;\n }\n\n validateParameterNamesDeep(\n targetTagName, allowExtraTrailingParamDocs, jsdocParameterNamesDeep,\n jsdoc, report,\n );\n}, {\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n allowExtraTrailingParamDocs: {\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"checkParamNames.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkPropertyNames.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkPropertyNames.js deleted file mode 100644 index 81e1a623..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkPropertyNames.js +++ /dev/null @@ -1,98 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const validatePropertyNames = (targetTagName, jsdoc, jsdocNode, utils) => { - const propertyTags = Object.entries(jsdoc.tags).filter(([, tag]) => { - return tag.tag === targetTagName; - }); - return propertyTags.some(([, tag], index) => { - let tagsIndex; - const dupeTagInfo = propertyTags.find(([tgsIndex, tg], idx) => { - tagsIndex = tgsIndex; - return tg.name === tag.name && idx !== index; - }); - - if (dupeTagInfo) { - utils.reportJSDoc(`Duplicate @${targetTagName} "${tag.name}"`, dupeTagInfo[1], () => { - jsdoc.tags.splice(tagsIndex, 1); - }); - return true; - } - - return false; - }); -}; - -const validatePropertyNamesDeep = (targetTagName, jsdocPropertyNames, jsdoc, report) => { - let lastRealProperty; - return jsdocPropertyNames.some(({ - name: jsdocPropertyName, - idx - }) => { - const isPropertyPath = jsdocPropertyName.includes('.'); - - if (isPropertyPath) { - if (!lastRealProperty) { - report(`@${targetTagName} path declaration ("${jsdocPropertyName}") appears before any real property.`, null, jsdoc.tags[idx]); - return true; - } - - let pathRootNodeName = jsdocPropertyName.slice(0, jsdocPropertyName.indexOf('.')); - - if (pathRootNodeName.endsWith('[]')) { - pathRootNodeName = pathRootNodeName.slice(0, -2); - } - - if (pathRootNodeName !== lastRealProperty) { - report(`@${targetTagName} path declaration ("${jsdocPropertyName}") root node name ("${pathRootNodeName}") ` + `does not match previous real property name ("${lastRealProperty}").`, null, jsdoc.tags[idx]); - return true; - } - } else { - lastRealProperty = jsdocPropertyName; - } - - return false; - }); -}; - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - jsdocNode, - report, - utils -}) => { - const jsdocPropertyNamesDeep = utils.getJsdocTagsDeep('property'); - - if (!jsdocPropertyNamesDeep.length) { - return; - } - - const targetTagName = utils.getPreferredTagName({ - tagName: 'property' - }); - const isError = validatePropertyNames(targetTagName, jsdoc, jsdocNode, utils); - - if (isError) { - return; - } - - validatePropertyNamesDeep(targetTagName, jsdocPropertyNamesDeep, jsdoc, report); -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkPropertyNames.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkPropertyNames.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkPropertyNames.js.map deleted file mode 100644 index 7a5d9ba4..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkPropertyNames.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkPropertyNames.js"],"names":["validatePropertyNames","targetTagName","jsdoc","jsdocNode","utils","propertyTags","Object","entries","tags","filter","tag","some","index","tagsIndex","dupeTagInfo","find","tgsIndex","tg","idx","name","reportJSDoc","splice","validatePropertyNamesDeep","jsdocPropertyNames","report","lastRealProperty","jsdocPropertyName","isPropertyPath","includes","pathRootNodeName","slice","indexOf","endsWith","jsdocPropertyNamesDeep","getJsdocTagsDeep","length","getPreferredTagName","tagName","isError","iterateAllJsdocs","meta","fixable","type"],"mappings":"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","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst validatePropertyNames = (\n targetTagName : string,\n jsdoc, jsdocNode, utils,\n) => {\n const propertyTags = Object.entries(jsdoc.tags).filter(([, tag]) => {\n return tag.tag === targetTagName;\n });\n\n return propertyTags.some(([, tag], index) => {\n let tagsIndex;\n const dupeTagInfo = propertyTags.find(([tgsIndex, tg], idx) => {\n tagsIndex = tgsIndex;\n\n return tg.name === tag.name && idx !== index;\n });\n if (dupeTagInfo) {\n utils.reportJSDoc(`Duplicate @${targetTagName} \"${tag.name}\"`, dupeTagInfo[1], () => {\n jsdoc.tags.splice(tagsIndex, 1);\n });\n\n return true;\n }\n\n return false;\n });\n};\n\nconst validatePropertyNamesDeep = (\n targetTagName : string,\n jsdocPropertyNames : Array, jsdoc, report : Function,\n) => {\n let lastRealProperty;\n\n return jsdocPropertyNames.some(({name: jsdocPropertyName, idx}) => {\n const isPropertyPath = jsdocPropertyName.includes('.');\n\n if (isPropertyPath) {\n if (!lastRealProperty) {\n report(`@${targetTagName} path declaration (\"${jsdocPropertyName}\") appears before any real property.`, null, jsdoc.tags[idx]);\n\n return true;\n }\n\n let pathRootNodeName = jsdocPropertyName.slice(0, jsdocPropertyName.indexOf('.'));\n\n if (pathRootNodeName.endsWith('[]')) {\n pathRootNodeName = pathRootNodeName.slice(0, -2);\n }\n\n if (pathRootNodeName !== lastRealProperty) {\n report(\n `@${targetTagName} path declaration (\"${jsdocPropertyName}\") root node name (\"${pathRootNodeName}\") ` +\n `does not match previous real property name (\"${lastRealProperty}\").`,\n null,\n jsdoc.tags[idx],\n );\n\n return true;\n }\n } else {\n lastRealProperty = jsdocPropertyName;\n }\n\n return false;\n });\n};\n\nexport default iterateJsdoc(({\n jsdoc,\n jsdocNode,\n report,\n utils,\n}) => {\n const jsdocPropertyNamesDeep = utils.getJsdocTagsDeep('property');\n if (!jsdocPropertyNamesDeep.length) {\n return;\n }\n const targetTagName = utils.getPreferredTagName({tagName: 'property'});\n const isError = validatePropertyNames(\n targetTagName,\n jsdoc, jsdocNode, utils,\n );\n\n if (isError) {\n return;\n }\n\n validatePropertyNamesDeep(\n targetTagName, jsdocPropertyNamesDeep,\n jsdoc, report,\n );\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n type: 'suggestion',\n },\n});\n"],"file":"checkPropertyNames.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkSyntax.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkSyntax.js deleted file mode 100644 index 9a026219..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkSyntax.js +++ /dev/null @@ -1,56 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - report -}) => { - if (!jsdoc.tags) { - return; - } - - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = jsdoc.tags[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - const tag = _step.value; - - if (tag.type.slice(-1) === '=') { - report('Syntax should not be Google Closure Compiler style.', null, tag); - break; - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return != null) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } -}, { - iterateAllJsdocs: true, - meta: { - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkSyntax.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkSyntax.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkSyntax.js.map deleted file mode 100644 index 41b81e63..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkSyntax.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkSyntax.js"],"names":["jsdoc","report","tags","tag","type","slice","iterateAllJsdocs","meta"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,KAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJ,MAAI,CAACD,KAAK,CAACE,IAAX,EAAiB;AACf;AACD;;AAHG;AAAA;AAAA;;AAAA;AAKJ,yBAAkBF,KAAK,CAACE,IAAxB,8HAA8B;AAAA,YAAnBC,GAAmB;;AAC5B,UAAIA,GAAG,CAACC,IAAJ,CAASC,KAAT,CAAe,CAAC,CAAhB,MAAuB,GAA3B,EAAgC;AAC9BJ,QAAAA,MAAM,CAAC,qDAAD,EAAwD,IAAxD,EAA8DE,GAA9D,CAAN;AACA;AACD;AACF;AAVG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWL,CAdc,EAcZ;AACDG,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJH,IAAAA,IAAI,EAAE;AADF;AAFL,CAdY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n jsdoc,\n report,\n}) => {\n if (!jsdoc.tags) {\n return;\n }\n\n for (const tag of jsdoc.tags) {\n if (tag.type.slice(-1) === '=') {\n report('Syntax should not be Google Closure Compiler style.', null, tag);\n break;\n }\n }\n}, {\n iterateAllJsdocs: true,\n meta: {\n type: 'suggestion',\n },\n});\n"],"file":"checkSyntax.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTagNames.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkTagNames.js deleted file mode 100644 index 903b2b36..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTagNames.js +++ /dev/null @@ -1,111 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - sourceCode, - jsdoc, - report, - utils, - context, - settings, - jsdocNode -}) => { - if (!jsdoc.tags) { - return; - } - - const _ref = context.options[0] || {}, - _ref$definedTags = _ref.definedTags, - definedTags = _ref$definedTags === void 0 ? [] : _ref$definedTags; - - let definedPreferredTags = []; - let definedNonPreferredTags = []; - const tagNamePreference = settings.tagNamePreference; - - if (Object.keys(tagNamePreference).length) { - definedNonPreferredTags = _lodash.default.keys(tagNamePreference); // Replace `_.values` with `Object.values` when we may start requiring Node 7+ - - definedPreferredTags = _lodash.default.values(tagNamePreference).map(preferredTag => { - if (typeof preferredTag === 'string') { - // May become an empty string but will be filtered out below - return preferredTag; - } - - if (!preferredTag) { - return undefined; - } - - if (typeof preferredTag !== 'object') { - utils.reportSettings('Invalid `settings.jsdoc.tagNamePreference`. Values must be falsy, a string, or an object.'); - } - - return preferredTag.replacement; - }).filter(preferredType => { - return preferredType; - }); - } - - jsdoc.tags.forEach(jsdocTag => { - const tagName = jsdocTag.tag; - - if (utils.isValidTag(tagName, [...definedTags, ...definedPreferredTags, ...definedNonPreferredTags])) { - let preferredTagName = utils.getPreferredTagName({ - allowObjectReturn: true, - defaultMessage: `Blacklisted tag found (\`@${tagName}\`)`, - tagName - }); - let message = `Invalid JSDoc tag (preference). Replace "${tagName}" JSDoc tag with "${preferredTagName}".`; - - if (!preferredTagName) { - return; - } - - if (typeof preferredTagName === 'object') { - var _preferredTagName = preferredTagName; - message = _preferredTagName.message; - preferredTagName = _preferredTagName.replacement; - } - - if (preferredTagName !== tagName) { - report(message, fixer => { - const replacement = sourceCode.getText(jsdocNode).replace(new RegExp(`@${_lodash.default.escapeRegExp(tagName)}\\b`, 'u'), `@${preferredTagName}`); - return fixer.replaceText(jsdocNode, replacement); - }, jsdocTag); - } - } else { - report(`Invalid JSDoc tag name "${tagName}".`, null, jsdocTag); - } - }); -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - definedTags: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkTagNames.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTagNames.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkTagNames.js.map deleted file mode 100644 index 3f531724..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTagNames.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkTagNames.js"],"names":["sourceCode","jsdoc","report","utils","context","settings","jsdocNode","tags","options","definedTags","definedPreferredTags","definedNonPreferredTags","tagNamePreference","Object","keys","length","_","values","map","preferredTag","undefined","reportSettings","replacement","filter","preferredType","forEach","jsdocTag","tagName","tag","isValidTag","preferredTagName","getPreferredTagName","allowObjectReturn","defaultMessage","message","fixer","getText","replace","RegExp","escapeRegExp","replaceText","iterateAllJsdocs","meta","fixable","schema","additionalProperties","properties","items","type"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n sourceCode,\n jsdoc,\n report,\n utils,\n context,\n settings,\n jsdocNode,\n}) => {\n if (!jsdoc.tags) {\n return;\n }\n const {definedTags = []} = context.options[0] || {};\n\n let definedPreferredTags = [];\n let definedNonPreferredTags = [];\n const {tagNamePreference} = settings;\n if (Object.keys(tagNamePreference).length) {\n definedNonPreferredTags = _.keys(tagNamePreference);\n\n // Replace `_.values` with `Object.values` when we may start requiring Node 7+\n definedPreferredTags = _.values(tagNamePreference).map((preferredTag) => {\n if (typeof preferredTag === 'string') {\n // May become an empty string but will be filtered out below\n return preferredTag;\n }\n if (!preferredTag) {\n return undefined;\n }\n if (typeof preferredTag !== 'object') {\n utils.reportSettings(\n 'Invalid `settings.jsdoc.tagNamePreference`. Values must be falsy, a string, or an object.',\n );\n }\n\n return preferredTag.replacement;\n }).filter((preferredType) => {\n return preferredType;\n });\n }\n\n jsdoc.tags.forEach((jsdocTag) => {\n const tagName = jsdocTag.tag;\n if (utils.isValidTag(tagName, [...definedTags, ...definedPreferredTags, ...definedNonPreferredTags])) {\n let preferredTagName = utils.getPreferredTagName({\n allowObjectReturn: true,\n defaultMessage: `Blacklisted tag found (\\`@${tagName}\\`)`,\n tagName,\n });\n let message = `Invalid JSDoc tag (preference). Replace \"${tagName}\" JSDoc tag with \"${preferredTagName}\".`;\n if (!preferredTagName) {\n return;\n }\n if (typeof preferredTagName === 'object') {\n ({message, replacement: preferredTagName} = preferredTagName);\n }\n\n if (preferredTagName !== tagName) {\n report(message, (fixer) => {\n const replacement = sourceCode.getText(jsdocNode).replace(\n new RegExp(`@${_.escapeRegExp(tagName)}\\\\b`, 'u'),\n `@${preferredTagName}`,\n );\n\n return fixer.replaceText(jsdocNode, replacement);\n }, jsdocTag);\n }\n } else {\n report(`Invalid JSDoc tag name \"${tagName}\".`, null, jsdocTag);\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n definedTags: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"checkTagNames.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTypes.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkTypes.js deleted file mode 100644 index 0f026fc5..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTypes.js +++ /dev/null @@ -1,273 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _jsdoctypeparser = require("jsdoctypeparser"); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -const strictNativeTypes = ['undefined', 'null', 'boolean', 'number', 'bigint', 'string', 'symbol', 'object', 'Array', 'Function', 'Date', 'RegExp']; - -const adjustNames = (type, preferred, isGenericMatch, nodeName, node, parentNode) => { - let ret = preferred; - - if (isGenericMatch) { - if (preferred === '[]') { - parentNode.meta.syntax = 'SQUARE_BRACKET'; - ret = 'Array'; - } else { - const dotBracketEnd = preferred.match(/\.(?:<>)?$/u); - - if (dotBracketEnd) { - parentNode.meta.syntax = 'ANGLE_BRACKET_WITH_DOT'; - ret = preferred.slice(0, -dotBracketEnd[0].length); - } else { - const bracketEnd = preferred.endsWith('<>'); - - if (bracketEnd) { - parentNode.meta.syntax = 'ANGLE_BRACKET'; - ret = preferred.slice(0, -2); - } - } - } - } else if (type === 'ANY') { - node.type = 'NAME'; - } - - node.name = ret.replace(/(?:\.|<>|\.<>|\[\])$/u, ''); // For bare pseudo-types like `<>` - - if (!ret) { - node.name = nodeName; - } -}; - -var _default = (0, _iterateJsdoc.default)(({ - jsdocNode, - sourceCode, - report, - utils, - settings, - context -}) => { - const jsdocTagsWithPossibleType = utils.filterTags(tag => { - return utils.tagMightHaveTypePosition(tag.tag); - }); - const preferredTypes = settings.preferredTypes; - - const _ref = context.options[0] || {}, - noDefaults = _ref.noDefaults, - unifyParentAndChildTypeChecks = _ref.unifyParentAndChildTypeChecks, - _ref$exemptTagContext = _ref.exemptTagContexts, - exemptTagContexts = _ref$exemptTagContext === void 0 ? [] : _ref$exemptTagContext; - - const getPreferredTypeInfo = (type, nodeName, parentName, parentNode) => { - let hasMatchingPreferredType; - let isGenericMatch; - let typeName = nodeName; - - if (Object.keys(preferredTypes).length) { - const parentType = parentName === 'subject'; - - if (unifyParentAndChildTypeChecks || parentType) { - const syntax = _lodash.default.get(parentNode, 'meta.syntax'); - - [['.', 'ANGLE_BRACKET_WITH_DOT'], ['.<>', 'ANGLE_BRACKET_WITH_DOT'], ['<>', 'ANGLE_BRACKET']].some(([checkPostFix, syn]) => { - isGenericMatch = _lodash.default.get(preferredTypes, nodeName + checkPostFix) !== undefined && syntax === syn; - - if (isGenericMatch) { - typeName += checkPostFix; - } - - return isGenericMatch; - }); - - if (!isGenericMatch && parentType) { - [['[]', 'SQUARE_BRACKET'], ['.', 'ANGLE_BRACKET_WITH_DOT'], ['.<>', 'ANGLE_BRACKET_WITH_DOT'], ['<>', 'ANGLE_BRACKET']].some(([checkPostFix, syn]) => { - isGenericMatch = _lodash.default.get(preferredTypes, checkPostFix) !== undefined && syntax === syn; - - if (isGenericMatch) { - typeName = checkPostFix; - } - - return isGenericMatch; - }); - } - } - - const directNameMatch = _lodash.default.get(preferredTypes, nodeName) !== undefined; - const unifiedSyntaxParentMatch = parentType && directNameMatch && unifyParentAndChildTypeChecks; - isGenericMatch = isGenericMatch || unifiedSyntaxParentMatch; - hasMatchingPreferredType = isGenericMatch || directNameMatch && !parentType; - } - - return [hasMatchingPreferredType, typeName, isGenericMatch]; - }; - - jsdocTagsWithPossibleType.forEach(jsdocTag => { - const invalidTypes = []; - let typeAst; - - try { - typeAst = (0, _jsdoctypeparser.parse)(jsdocTag.type); - } catch (error) { - return; - } - - (0, _jsdoctypeparser.traverse)(typeAst, (node, parentName, parentNode) => { - const type = node.type, - name = node.name; - - if (!['NAME', 'ANY'].includes(type)) { - return; - } - - let nodeName = type === 'ANY' ? '*' : name; - - const _getPreferredTypeInfo = getPreferredTypeInfo(type, nodeName, parentName, parentNode), - _getPreferredTypeInfo2 = _slicedToArray(_getPreferredTypeInfo, 3), - hasMatchingPreferredType = _getPreferredTypeInfo2[0], - typeName = _getPreferredTypeInfo2[1], - isGenericMatch = _getPreferredTypeInfo2[2]; - - let preferred; - - if (hasMatchingPreferredType) { - const preferredSetting = preferredTypes[typeName]; - nodeName = typeName === '[]' ? typeName : nodeName; - - if (!preferredSetting) { - invalidTypes.push([nodeName]); - } else if (typeof preferredSetting === 'string') { - preferred = preferredSetting; - invalidTypes.push([nodeName, preferred]); - } else if (typeof preferredSetting === 'object') { - preferred = _lodash.default.get(preferredSetting, 'replacement'); - invalidTypes.push([nodeName, preferred, _lodash.default.get(preferredSetting, 'message')]); - } else { - utils.reportSettings('Invalid `settings.jsdoc.preferredTypes`. Values must be falsy, a string, or an object.'); - return; - } - } else if (!noDefaults && type === 'NAME') { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = strictNativeTypes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - const strictNativeType = _step.value; - - if (strictNativeType.toLowerCase() === nodeName.toLowerCase() && strictNativeType !== nodeName && ( // Don't report if user has own map for a strict native type - !preferredTypes || _lodash.default.get(preferredTypes, strictNativeType) === undefined)) { - preferred = strictNativeType; - invalidTypes.push([nodeName, preferred]); - break; - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return != null) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - } // For fixer - - - if (preferred) { - adjustNames(type, preferred, isGenericMatch, nodeName, node, parentNode); - } - }); - - if (invalidTypes.length) { - const fixedType = (0, _jsdoctypeparser.publish)(typeAst); - const tagName = jsdocTag.tag; - invalidTypes.forEach(([badType, preferredType = '', message]) => { - const fix = fixer => { - return fixer.replaceText(jsdocNode, sourceCode.getText(jsdocNode).replace(`{${jsdocTag.type}}`, `{${fixedType}}`)); - }; - - const tagValue = jsdocTag.name ? ` "${jsdocTag.name}"` : ''; - - if (exemptTagContexts.some(({ - tag, - types - }) => { - return tag === tagName && (types === true || types.includes(jsdocTag.type)); - })) { - return; - } - - report(message || `Invalid JSDoc @${tagName}${tagValue} type "${badType}"` + (preferredType ? '; ' : '.') + (preferredType ? `prefer: "${preferredType}".` : ''), preferredType ? fix : null, jsdocTag, message ? { - tagName, - tagValue - } : null); - }); - } - }); -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - exemptTagContexts: { - items: { - additionalProperties: false, - properties: { - tag: { - type: 'string' - }, - types: { - oneOf: [{ - type: 'boolean' - }, { - items: { - type: 'string' - }, - type: 'array' - }] - } - }, - type: 'object' - }, - type: 'array' - }, - noDefaults: { - type: 'boolean' - }, - unifyParentAndChildTypeChecks: { - type: 'boolean' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkTypes.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTypes.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkTypes.js.map deleted file mode 100644 index bf4c8ee6..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkTypes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkTypes.js"],"names":["strictNativeTypes","adjustNames","type","preferred","isGenericMatch","nodeName","node","parentNode","ret","meta","syntax","dotBracketEnd","match","slice","length","bracketEnd","endsWith","name","replace","jsdocNode","sourceCode","report","utils","settings","context","jsdocTagsWithPossibleType","filterTags","tag","tagMightHaveTypePosition","preferredTypes","options","noDefaults","unifyParentAndChildTypeChecks","exemptTagContexts","getPreferredTypeInfo","parentName","hasMatchingPreferredType","typeName","Object","keys","parentType","_","get","some","checkPostFix","syn","undefined","directNameMatch","unifiedSyntaxParentMatch","forEach","jsdocTag","invalidTypes","typeAst","error","includes","preferredSetting","push","reportSettings","strictNativeType","toLowerCase","fixedType","tagName","badType","preferredType","message","fix","fixer","replaceText","getText","tagValue","types","iterateAllJsdocs","fixable","schema","additionalProperties","properties","items","oneOf"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport {parse, traverse, publish} from 'jsdoctypeparser';\nimport iterateJsdoc from '../iterateJsdoc';\n\nconst strictNativeTypes = [\n 'undefined',\n 'null',\n 'boolean',\n 'number',\n 'bigint',\n 'string',\n 'symbol',\n 'object',\n 'Array',\n 'Function',\n 'Date',\n 'RegExp',\n];\n\nconst adjustNames = (type, preferred, isGenericMatch, nodeName, node, parentNode) => {\n let ret = preferred;\n if (isGenericMatch) {\n if (preferred === '[]') {\n parentNode.meta.syntax = 'SQUARE_BRACKET';\n ret = 'Array';\n } else {\n const dotBracketEnd = preferred.match(/\\.(?:<>)?$/u);\n if (dotBracketEnd) {\n parentNode.meta.syntax = 'ANGLE_BRACKET_WITH_DOT';\n ret = preferred.slice(0, -dotBracketEnd[0].length);\n } else {\n const bracketEnd = preferred.endsWith('<>');\n if (bracketEnd) {\n parentNode.meta.syntax = 'ANGLE_BRACKET';\n ret = preferred.slice(0, -2);\n }\n }\n }\n } else if (type === 'ANY') {\n node.type = 'NAME';\n }\n node.name = ret.replace(/(?:\\.|<>|\\.<>|\\[\\])$/u, '');\n\n // For bare pseudo-types like `<>`\n if (!ret) {\n node.name = nodeName;\n }\n};\n\nexport default iterateJsdoc(({\n jsdocNode,\n sourceCode,\n report,\n utils,\n settings,\n context,\n}) => {\n const jsdocTagsWithPossibleType = utils.filterTags((tag) => {\n return utils.tagMightHaveTypePosition(tag.tag);\n });\n\n const {preferredTypes} = settings;\n const {\n noDefaults,\n unifyParentAndChildTypeChecks,\n exemptTagContexts = [],\n } = context.options[0] || {};\n\n const getPreferredTypeInfo = (type, nodeName, parentName, parentNode) => {\n let hasMatchingPreferredType;\n let isGenericMatch;\n let typeName = nodeName;\n if (Object.keys(preferredTypes).length) {\n const parentType = parentName === 'subject';\n if (unifyParentAndChildTypeChecks || parentType) {\n const syntax = _.get(parentNode, 'meta.syntax');\n\n [\n ['.', 'ANGLE_BRACKET_WITH_DOT'],\n ['.<>', 'ANGLE_BRACKET_WITH_DOT'],\n ['<>', 'ANGLE_BRACKET'],\n ].some(([checkPostFix, syn]) => {\n isGenericMatch = _.get(\n preferredTypes,\n nodeName + checkPostFix,\n ) !== undefined &&\n syntax === syn;\n if (isGenericMatch) {\n typeName += checkPostFix;\n }\n\n return isGenericMatch;\n });\n if (!isGenericMatch && parentType) {\n [\n ['[]', 'SQUARE_BRACKET'],\n ['.', 'ANGLE_BRACKET_WITH_DOT'],\n ['.<>', 'ANGLE_BRACKET_WITH_DOT'],\n ['<>', 'ANGLE_BRACKET'],\n ].some(([checkPostFix, syn]) => {\n isGenericMatch = _.get(preferredTypes, checkPostFix) !== undefined &&\n syntax === syn;\n if (isGenericMatch) {\n typeName = checkPostFix;\n }\n\n return isGenericMatch;\n });\n }\n }\n const directNameMatch = _.get(preferredTypes, nodeName) !== undefined;\n const unifiedSyntaxParentMatch = parentType && directNameMatch && unifyParentAndChildTypeChecks;\n isGenericMatch = isGenericMatch || unifiedSyntaxParentMatch;\n\n hasMatchingPreferredType = isGenericMatch ||\n directNameMatch && !parentType;\n }\n\n return [hasMatchingPreferredType, typeName, isGenericMatch];\n };\n\n jsdocTagsWithPossibleType.forEach((jsdocTag) => {\n const invalidTypes = [];\n let typeAst;\n\n try {\n typeAst = parse(jsdocTag.type);\n } catch (error) {\n return;\n }\n\n traverse(typeAst, (node, parentName, parentNode) => {\n const {type, name} = node;\n if (!['NAME', 'ANY'].includes(type)) {\n return;\n }\n let nodeName = type === 'ANY' ? '*' : name;\n\n const [hasMatchingPreferredType, typeName, isGenericMatch] = getPreferredTypeInfo(type, nodeName, parentName, parentNode);\n\n let preferred;\n if (hasMatchingPreferredType) {\n const preferredSetting = preferredTypes[typeName];\n nodeName = typeName === '[]' ? typeName : nodeName;\n\n if (!preferredSetting) {\n invalidTypes.push([nodeName]);\n } else if (typeof preferredSetting === 'string') {\n preferred = preferredSetting;\n invalidTypes.push([nodeName, preferred]);\n } else if (typeof preferredSetting === 'object') {\n preferred = _.get(preferredSetting, 'replacement');\n invalidTypes.push([\n nodeName,\n preferred,\n _.get(preferredSetting, 'message'),\n ]);\n } else {\n utils.reportSettings(\n 'Invalid `settings.jsdoc.preferredTypes`. Values must be falsy, a string, or an object.',\n );\n\n return;\n }\n } else if (!noDefaults && type === 'NAME') {\n for (const strictNativeType of strictNativeTypes) {\n if (strictNativeType.toLowerCase() === nodeName.toLowerCase() &&\n strictNativeType !== nodeName &&\n\n // Don't report if user has own map for a strict native type\n (!preferredTypes || _.get(preferredTypes, strictNativeType) === undefined)\n ) {\n preferred = strictNativeType;\n invalidTypes.push([nodeName, preferred]);\n break;\n }\n }\n }\n\n // For fixer\n if (preferred) {\n adjustNames(type, preferred, isGenericMatch, nodeName, node, parentNode);\n }\n });\n\n if (invalidTypes.length) {\n const fixedType = publish(typeAst);\n\n const tagName = jsdocTag.tag;\n invalidTypes.forEach(([badType, preferredType = '', message]) => {\n const fix = (fixer) => {\n return fixer.replaceText(\n jsdocNode,\n sourceCode.getText(jsdocNode).replace(\n `{${jsdocTag.type}}`,\n `{${fixedType}}`,\n ),\n );\n };\n\n const tagValue = jsdocTag.name ? ` \"${jsdocTag.name}\"` : '';\n if (exemptTagContexts.some(({tag, types}) => {\n return tag === tagName &&\n (types === true || types.includes(jsdocTag.type));\n })) {\n return;\n }\n\n report(\n message ||\n `Invalid JSDoc @${tagName}${tagValue} type \"${badType}\"` +\n (preferredType ? '; ' : '.') +\n (preferredType ? `prefer: \"${preferredType}\".` : ''),\n preferredType ? fix : null,\n jsdocTag,\n message ? {\n tagName,\n tagValue,\n } : null,\n );\n });\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n exemptTagContexts: {\n items: {\n additionalProperties: false,\n properties: {\n tag: {\n type: 'string',\n },\n types: {\n oneOf: [\n {\n type: 'boolean',\n },\n {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n ],\n },\n },\n type: 'object',\n },\n type: 'array',\n },\n noDefaults: {\n type: 'boolean',\n },\n unifyParentAndChildTypeChecks: {\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"checkTypes.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkValues.js b/node_modules/eslint-plugin-jsdoc/dist/rules/checkValues.js deleted file mode 100644 index f615d613..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkValues.js +++ /dev/null @@ -1,110 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _semver = _interopRequireDefault(require("semver")); - -var _spdxExpressionParse = _interopRequireDefault(require("spdx-expression-parse")); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - utils, - report, - context -}) => { - const options = context.options[0] || {}; - const _options$allowedLicen = options.allowedLicenses, - allowedLicenses = _options$allowedLicen === void 0 ? null : _options$allowedLicen, - _options$allowedAutho = options.allowedAuthors, - allowedAuthors = _options$allowedAutho === void 0 ? null : _options$allowedAutho, - _options$licensePatte = options.licensePattern, - licensePattern = _options$licensePatte === void 0 ? '([^\n]*)' : _options$licensePatte; - utils.forEachPreferredTag('version', (jsdocParameter, targetTagName) => { - const version = jsdocParameter.description.trim(); - - if (!version) { - report(`Missing JSDoc @${targetTagName}.`, null, jsdocParameter); - } else if (!_semver.default.valid(version)) { - report(`Invalid JSDoc @${targetTagName}: "${jsdocParameter.description}".`, null, jsdocParameter); - } - }); - utils.forEachPreferredTag('since', (jsdocParameter, targetTagName) => { - const version = jsdocParameter.description.trim(); - - if (!version) { - report(`Missing JSDoc @${targetTagName}.`, null, jsdocParameter); - } else if (!_semver.default.valid(version)) { - report(`Invalid JSDoc @${targetTagName}: "${jsdocParameter.description}".`, null, jsdocParameter); - } - }); - utils.forEachPreferredTag('license', (jsdocParameter, targetTagName) => { - const licenseRegex = new RegExp(licensePattern, 'g'); - const match = jsdocParameter.description.match(licenseRegex); - const license = match && match[1] || match[0]; - - if (!license.trim()) { - report(`Missing JSDoc @${targetTagName}.`, null, jsdocParameter); - } else if (allowedLicenses) { - if (allowedLicenses !== true && !allowedLicenses.includes(license)) { - report(`Invalid JSDoc @${targetTagName}: "${license}"; expected one of ${allowedLicenses.join(', ')}.`, null, jsdocParameter); - } - } else { - try { - (0, _spdxExpressionParse.default)(license); - } catch (error) { - report(`Invalid JSDoc @${targetTagName}: "${license}"; expected SPDX expression: https://spdx.org/licenses/.`, null, jsdocParameter); - } - } - }); - utils.forEachPreferredTag('author', (jsdocParameter, targetTagName) => { - const author = jsdocParameter.description; - - if (!author.trim()) { - report(`Missing JSDoc @${targetTagName}.`, null, jsdocParameter); - } else if (allowedAuthors) { - if (!allowedAuthors.includes(author)) { - report(`Invalid JSDoc @${targetTagName}: "${jsdocParameter.description}"; expected one of ${allowedAuthors.join(', ')}.`, null, jsdocParameter); - } - } - }); -}, { - iterateAllJsdocs: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - allowedAuthors: { - items: { - type: 'string' - }, - type: 'array' - }, - allowedLicenses: { - anyOf: [{ - items: { - type: 'string' - }, - type: 'array' - }, { - type: 'boolean' - }] - }, - licensePattern: { - type: 'string' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=checkValues.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/checkValues.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/checkValues.js.map deleted file mode 100644 index 97ae60c1..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/checkValues.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/checkValues.js"],"names":["utils","report","context","options","allowedLicenses","allowedAuthors","licensePattern","forEachPreferredTag","jsdocParameter","targetTagName","version","description","trim","semver","valid","licenseRegex","RegExp","match","license","includes","join","error","author","iterateAllJsdocs","meta","schema","additionalProperties","properties","items","type","anyOf"],"mappings":"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","sourcesContent":["import semver from 'semver';\nimport spdxExpressionParse from 'spdx-expression-parse';\nimport iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n utils,\n report,\n context,\n}) => {\n const options = context.options[0] || {};\n const {\n allowedLicenses = null,\n allowedAuthors = null,\n licensePattern = '([^\\n]*)',\n } = options;\n\n utils.forEachPreferredTag('version', (jsdocParameter, targetTagName) => {\n const version = jsdocParameter.description.trim();\n if (!version) {\n report(\n `Missing JSDoc @${targetTagName}.`,\n null,\n jsdocParameter,\n );\n } else if (!semver.valid(version)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${jsdocParameter.description}\".`,\n null,\n jsdocParameter,\n );\n }\n });\n utils.forEachPreferredTag('since', (jsdocParameter, targetTagName) => {\n const version = jsdocParameter.description.trim();\n if (!version) {\n report(\n `Missing JSDoc @${targetTagName}.`,\n null,\n jsdocParameter,\n );\n } else if (!semver.valid(version)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${jsdocParameter.description}\".`,\n null,\n jsdocParameter,\n );\n }\n });\n utils.forEachPreferredTag('license', (jsdocParameter, targetTagName) => {\n const licenseRegex = new RegExp(licensePattern, 'g');\n const match = jsdocParameter.description.match(licenseRegex);\n const license = match && match[1] || match[0];\n if (!license.trim()) {\n report(\n `Missing JSDoc @${targetTagName}.`,\n null,\n jsdocParameter,\n );\n } else if (allowedLicenses) {\n if (allowedLicenses !== true && !allowedLicenses.includes(license)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${license}\"; expected one of ${allowedLicenses.join(', ')}.`,\n null,\n jsdocParameter,\n );\n }\n } else {\n try {\n spdxExpressionParse(license);\n } catch (error) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${license}\"; expected SPDX expression: https://spdx.org/licenses/.`,\n null,\n jsdocParameter,\n );\n }\n }\n });\n\n utils.forEachPreferredTag('author', (jsdocParameter, targetTagName) => {\n const author = jsdocParameter.description;\n if (!author.trim()) {\n report(\n `Missing JSDoc @${targetTagName}.`,\n null,\n jsdocParameter,\n );\n } else if (allowedAuthors) {\n if (!allowedAuthors.includes(author)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${jsdocParameter.description}\"; expected one of ${allowedAuthors.join(', ')}.`,\n null,\n jsdocParameter,\n );\n }\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n allowedAuthors: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n allowedLicenses: {\n anyOf: [\n {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n {\n type: 'boolean',\n },\n ],\n },\n licensePattern: {\n type: 'string',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"checkValues.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/emptyTags.js b/node_modules/eslint-plugin-jsdoc/dist/rules/emptyTags.js deleted file mode 100644 index ba5672b6..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/emptyTags.js +++ /dev/null @@ -1,71 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const defaultEmptyTags = ['abstract', 'async', 'generator', 'global', 'hideconstructor', 'ignore', 'inheritdoc', 'inner', 'instance', 'override', 'readonly']; -const emptyIfNotClosure = ['package', 'private', 'protected', 'public', 'static']; - -var _default = (0, _iterateJsdoc.default)(({ - settings, - jsdoc, - utils -}) => { - if (!jsdoc.tags) { - return; - } - - const emptyTags = utils.filterTags(({ - tag: tagName - }) => { - return defaultEmptyTags.includes(tagName) || utils.hasOptionTag(tagName) && jsdoc.tags.some(({ - tag - }) => { - return tag === tagName; - }) || settings.mode !== 'closure' && emptyIfNotClosure.includes(tagName); - }); - emptyTags.forEach(tag => { - const fix = () => { - tag.name = ''; - tag.description = ''; - tag.type = ''; - tag.optional = false; - tag.default = undefined; - }; - - const content = tag.name || tag.description || tag.type; - - if (content) { - utils.reportJSDoc(`@${tag.tag} should be empty.`, tag, fix); - } - }); -}, { - checkPrivate: true, - iterateAllJsdocs: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - tags: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=emptyTags.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/emptyTags.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/emptyTags.js.map deleted file mode 100644 index 829b5694..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/emptyTags.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/emptyTags.js"],"names":["defaultEmptyTags","emptyIfNotClosure","settings","jsdoc","utils","tags","emptyTags","filterTags","tag","tagName","includes","hasOptionTag","some","mode","forEach","fix","name","description","type","optional","default","undefined","content","reportJSDoc","checkPrivate","iterateAllJsdocs","meta","fixable","schema","additionalProperties","properties","items"],"mappings":";;;;;;;AAAA;;;;AAEA,MAAMA,gBAAgB,GAAG,CACvB,UADuB,EACX,OADW,EACF,WADE,EACW,QADX,EACqB,iBADrB,EAEvB,QAFuB,EAEb,YAFa,EAEC,OAFD,EAEU,UAFV,EAEsB,UAFtB,EAEkC,UAFlC,CAAzB;AAKA,MAAMC,iBAAiB,GAAG,CACxB,SADwB,EACb,SADa,EACF,WADE,EACW,QADX,EACqB,QADrB,CAA1B;;eAIe,2BAAa,CAAC;AAC3BC,EAAAA,QAD2B;AAE3BC,EAAAA,KAF2B;AAG3BC,EAAAA;AAH2B,CAAD,KAItB;AACJ,MAAI,CAACD,KAAK,CAACE,IAAX,EAAiB;AACf;AACD;;AACD,QAAMC,SAAS,GAAGF,KAAK,CAACG,UAAN,CAAiB,CAAC;AAACC,IAAAA,GAAG,EAAEC;AAAN,GAAD,KAAoB;AACrD,WAAOT,gBAAgB,CAACU,QAAjB,CAA0BD,OAA1B,KACLL,KAAK,CAACO,YAAN,CAAmBF,OAAnB,KAA+BN,KAAK,CAACE,IAAN,CAAWO,IAAX,CAAgB,CAAC;AAACJ,MAAAA;AAAD,KAAD,KAAW;AACxD,aAAOA,GAAG,KAAKC,OAAf;AACD,KAF8B,CAD1B,IAILP,QAAQ,CAACW,IAAT,KAAkB,SAAlB,IAA+BZ,iBAAiB,CAACS,QAAlB,CAA2BD,OAA3B,CAJjC;AAKD,GANiB,CAAlB;AAOAH,EAAAA,SAAS,CAACQ,OAAV,CAAmBN,GAAD,IAAS;AACzB,UAAMO,GAAG,GAAG,MAAM;AAChBP,MAAAA,GAAG,CAACQ,IAAJ,GAAW,EAAX;AACAR,MAAAA,GAAG,CAACS,WAAJ,GAAkB,EAAlB;AACAT,MAAAA,GAAG,CAACU,IAAJ,GAAW,EAAX;AACAV,MAAAA,GAAG,CAACW,QAAJ,GAAe,KAAf;AACAX,MAAAA,GAAG,CAACY,OAAJ,GAAcC,SAAd;AACD,KAND;;AAOA,UAAMC,OAAO,GAAGd,GAAG,CAACQ,IAAJ,IAAYR,GAAG,CAACS,WAAhB,IAA+BT,GAAG,CAACU,IAAnD;;AACA,QAAII,OAAJ,EAAa;AACXlB,MAAAA,KAAK,CAACmB,WAAN,CAAmB,IAAGf,GAAG,CAACA,GAAI,mBAA9B,EAAkDA,GAAlD,EAAuDO,GAAvD;AACD;AACF,GAZD;AAaD,CA5Bc,EA4BZ;AACDS,EAAAA,YAAY,EAAE,IADb;AAEDC,EAAAA,gBAAgB,EAAE,IAFjB;AAGDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,MADL;AAEJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVzB,QAAAA,IAAI,EAAE;AACJ0B,UAAAA,KAAK,EAAE;AACLb,YAAAA,IAAI,EAAE;AADD,WADH;AAIJA,UAAAA,IAAI,EAAE;AAJF;AADI,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CAFJ;AAgBJA,IAAAA,IAAI,EAAE;AAhBF;AAHL,CA5BY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst defaultEmptyTags = [\n 'abstract', 'async', 'generator', 'global', 'hideconstructor',\n 'ignore', 'inheritdoc', 'inner', 'instance', 'override', 'readonly',\n];\n\nconst emptyIfNotClosure = [\n 'package', 'private', 'protected', 'public', 'static',\n];\n\nexport default iterateJsdoc(({\n settings,\n jsdoc,\n utils,\n}) => {\n if (!jsdoc.tags) {\n return;\n }\n const emptyTags = utils.filterTags(({tag: tagName}) => {\n return defaultEmptyTags.includes(tagName) ||\n utils.hasOptionTag(tagName) && jsdoc.tags.some(({tag}) => {\n return tag === tagName;\n }) ||\n settings.mode !== 'closure' && emptyIfNotClosure.includes(tagName);\n });\n emptyTags.forEach((tag) => {\n const fix = () => {\n tag.name = '';\n tag.description = '';\n tag.type = '';\n tag.optional = false;\n tag.default = undefined;\n };\n const content = tag.name || tag.description || tag.type;\n if (content) {\n utils.reportJSDoc(`@${tag.tag} should be empty.`, tag, fix);\n }\n });\n}, {\n checkPrivate: true,\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n tags: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"emptyTags.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/implementsOnClasses.js b/node_modules/eslint-plugin-jsdoc/dist/rules/implementsOnClasses.js deleted file mode 100644 index ba146ae6..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/implementsOnClasses.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - const iteratingFunction = utils.isIteratingFunction(); - - if (iteratingFunction) { - if (utils.hasATag(['class', 'constructor']) || utils.isConstructor()) { - return; - } - } else if (!utils.isVirtualFunction()) { - return; - } - - utils.forEachPreferredTag('implements', tag => { - report('@implements used on a non-constructor function', null, tag); - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=implementsOnClasses.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/implementsOnClasses.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/implementsOnClasses.js.map deleted file mode 100644 index 0f498816..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/implementsOnClasses.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/implementsOnClasses.js"],"names":["report","utils","iteratingFunction","isIteratingFunction","hasATag","isConstructor","isVirtualFunction","forEachPreferredTag","tag","contextDefaults","meta","schema","additionalProperties","properties","contexts","items","type"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJ,QAAMC,iBAAiB,GAAGD,KAAK,CAACE,mBAAN,EAA1B;;AAEA,MAAID,iBAAJ,EAAuB;AACrB,QAAID,KAAK,CAACG,OAAN,CAAc,CAChB,OADgB,EAEhB,aAFgB,CAAd,KAIFH,KAAK,CAACI,aAAN,EAJF,EAKE;AACA;AACD;AACF,GATD,MASO,IAAI,CAACJ,KAAK,CAACK,iBAAN,EAAL,EAAgC;AACrC;AACD;;AAEDL,EAAAA,KAAK,CAACM,mBAAN,CAA0B,YAA1B,EAAyCC,GAAD,IAAS;AAC/CR,IAAAA,MAAM,CAAC,gDAAD,EAAmD,IAAnD,EAAyDQ,GAAzD,CAAN;AACD,GAFD;AAGD,CAtBc,EAsBZ;AACDC,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLC,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CADJ;AAeJA,IAAAA,IAAI,EAAE;AAfF;AAFL,CAtBY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n const iteratingFunction = utils.isIteratingFunction();\n\n if (iteratingFunction) {\n if (utils.hasATag([\n 'class',\n 'constructor',\n ]) ||\n utils.isConstructor()\n ) {\n return;\n }\n } else if (!utils.isVirtualFunction()) {\n return;\n }\n\n utils.forEachPreferredTag('implements', (tag) => {\n report('@implements used on a non-constructor function', null, tag);\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"implementsOnClasses.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/matchDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/matchDescription.js deleted file mode 100644 index 8fb16137..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/matchDescription.js +++ /dev/null @@ -1,137 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -// If supporting Node >= 10, we could loosen the default to this for the -// initial letter: \\p{Upper} -const matchDescriptionDefault = '^[A-Z`\\d_][\\s\\S]*[.?!`]$'; - -const stringOrDefault = (value, userDefault) => { - return typeof value === 'string' ? value : userDefault || matchDescriptionDefault; -}; - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - report, - context, - utils -}) => { - const options = context.options[0] || {}; - - const validateDescription = (description, tag) => { - if (!tag && options.mainDescription === false) { - return; - } - - let tagValue = options.mainDescription; - - if (tag) { - const tagName = tag.tag; - tagValue = options.tags[tagName]; - } - - const regex = new RegExp(stringOrDefault(tagValue, options.matchDescription), 'u'); - - if (!regex.test(description)) { - report('JSDoc description does not satisfy the regex pattern.', null, tag || { - // Add one as description would typically be into block - line: jsdoc.line + 1 - }); - } - }; - - if (jsdoc.description) { - validateDescription(jsdoc.description); - } - - if (!options.tags || !Object.keys(options.tags).length) { - return; - } - - const hasOptionTag = tagName => { - return Boolean(options.tags[tagName]); - }; - - utils.forEachPreferredTag('description', (matchingJsdocTag, targetTagName) => { - const description = (matchingJsdocTag.name + ' ' + matchingJsdocTag.description).trim(); - - if (hasOptionTag(targetTagName)) { - validateDescription(description, matchingJsdocTag); - } - }, true); - const whitelistedTags = utils.filterTags(({ - tag: tagName - }) => { - return hasOptionTag(tagName); - }); - - const _utils$getTagsByType = utils.getTagsByType(whitelistedTags), - tagsWithNames = _utils$getTagsByType.tagsWithNames, - tagsWithoutNames = _utils$getTagsByType.tagsWithoutNames; - - tagsWithNames.some(tag => { - const description = _lodash.default.trimStart(tag.description, '- '); - - return validateDescription(description, tag); - }); - tagsWithoutNames.some(tag => { - const description = (tag.name + ' ' + tag.description).trim(); - return validateDescription(description, tag); - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - }, - mainDescription: { - oneOf: [{ - format: 'regex', - type: 'string' - }, { - type: 'boolean' - }] - }, - matchDescription: { - format: 'regex', - type: 'string' - }, - tags: { - patternProperties: { - '.*': { - oneOf: [{ - format: 'regex', - type: 'string' - }, { - enum: [true], - type: 'boolean' - }] - } - }, - type: 'object' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=matchDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/matchDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/matchDescription.js.map deleted file mode 100644 index 28bd5719..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/matchDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/matchDescription.js"],"names":["matchDescriptionDefault","stringOrDefault","value","userDefault","jsdoc","report","context","utils","options","validateDescription","description","tag","mainDescription","tagValue","tagName","tags","regex","RegExp","matchDescription","test","line","Object","keys","length","hasOptionTag","Boolean","forEachPreferredTag","matchingJsdocTag","targetTagName","name","trim","whitelistedTags","filterTags","getTagsByType","tagsWithNames","tagsWithoutNames","some","_","trimStart","contextDefaults","meta","schema","additionalProperties","properties","contexts","items","type","oneOf","format","patternProperties","enum"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport iterateJsdoc from '../iterateJsdoc';\n\n// If supporting Node >= 10, we could loosen the default to this for the\n// initial letter: \\\\p{Upper}\nconst matchDescriptionDefault = '^[A-Z`\\\\d_][\\\\s\\\\S]*[.?!`]$';\n\nconst stringOrDefault = (value, userDefault) => {\n return typeof value === 'string' ?\n value :\n userDefault || matchDescriptionDefault;\n};\n\nexport default iterateJsdoc(({\n jsdoc,\n report,\n context,\n utils,\n}) => {\n const options = context.options[0] || {};\n\n const validateDescription = (description, tag) => {\n if (!tag && options.mainDescription === false) {\n return;\n }\n\n let tagValue = options.mainDescription;\n if (tag) {\n const tagName = tag.tag;\n tagValue = options.tags[tagName];\n }\n\n const regex = new RegExp(\n stringOrDefault(tagValue, options.matchDescription),\n 'u',\n );\n\n if (!regex.test(description)) {\n report('JSDoc description does not satisfy the regex pattern.', null, tag || {\n // Add one as description would typically be into block\n line: jsdoc.line + 1,\n });\n }\n };\n\n if (jsdoc.description) {\n validateDescription(jsdoc.description);\n }\n\n if (!options.tags || !Object.keys(options.tags).length) {\n return;\n }\n\n const hasOptionTag = (tagName) => {\n return Boolean(options.tags[tagName]);\n };\n\n utils.forEachPreferredTag('description', (matchingJsdocTag, targetTagName) => {\n const description = (matchingJsdocTag.name + ' ' + matchingJsdocTag.description).trim();\n if (hasOptionTag(targetTagName)) {\n validateDescription(description, matchingJsdocTag);\n }\n }, true);\n\n const whitelistedTags = utils.filterTags(({tag: tagName}) => {\n return hasOptionTag(tagName);\n });\n const {tagsWithNames, tagsWithoutNames} = utils.getTagsByType(whitelistedTags);\n\n tagsWithNames.some((tag) => {\n const description = _.trimStart(tag.description, '- ');\n\n return validateDescription(description, tag);\n });\n\n tagsWithoutNames.some((tag) => {\n const description = (tag.name + ' ' + tag.description).trim();\n\n return validateDescription(description, tag);\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n mainDescription: {\n oneOf: [\n {\n format: 'regex',\n type: 'string',\n },\n {\n type: 'boolean',\n },\n ],\n },\n matchDescription: {\n format: 'regex',\n type: 'string',\n },\n tags: {\n patternProperties: {\n '.*': {\n oneOf: [\n {\n format: 'regex',\n type: 'string',\n },\n {\n enum: [true],\n type: 'boolean',\n },\n ],\n },\n },\n type: 'object',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"matchDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/newlineAfterDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/newlineAfterDescription.js deleted file mode 100644 index 8e433099..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/newlineAfterDescription.js +++ /dev/null @@ -1,77 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - report, - context, - jsdocNode, - sourceCode, - indent -}) => { - let always; - - if (!jsdoc.description.trim() || !jsdoc.tags.length) { - return; - } - - if (_lodash.default.has(context.options, 0)) { - always = context.options[0] === 'always'; - } else { - always = true; - } - - const descriptionEndsWithANewline = /\n\r?$/.test(jsdoc.description); - - if (always) { - if (!descriptionEndsWithANewline) { - const sourceLines = sourceCode.getText(jsdocNode).split('\n'); - const splitDesc = jsdoc.description.split('\n'); - const lastDescriptionLine = splitDesc.length - 1; - report('There must be a newline after the description of the JSDoc block.', fixer => { - // Add the new line - const injectedLine = `${indent} *` + (sourceLines[lastDescriptionLine].endsWith('\r') ? '\r' : ''); - sourceLines.splice(lastDescriptionLine + 1, 0, injectedLine); - return fixer.replaceText(jsdocNode, sourceLines.join('\n')); - }, { - line: lastDescriptionLine - }); - } - } else if (descriptionEndsWithANewline) { - const sourceLines = sourceCode.getText(jsdocNode).split('\n'); - const splitDesc = jsdoc.description.split('\n'); - const lastDescriptionLine = splitDesc.length - 1; - report('There must be no newline after the description of the JSDoc block.', fixer => { - // Remove the extra line - sourceLines.splice(lastDescriptionLine, 1); - return fixer.replaceText(jsdocNode, sourceLines.join('\n')); - }, { - line: lastDescriptionLine - }); - } -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'whitespace', - schema: [{ - enum: ['always', 'never'], - type: 'string' - }], - type: 'layout' - }, - noTrim: true -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=newlineAfterDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/newlineAfterDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/newlineAfterDescription.js.map deleted file mode 100644 index 3837753e..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/newlineAfterDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/newlineAfterDescription.js"],"names":["jsdoc","report","context","jsdocNode","sourceCode","indent","always","description","trim","tags","length","_","has","options","descriptionEndsWithANewline","test","sourceLines","getText","split","splitDesc","lastDescriptionLine","fixer","injectedLine","endsWith","splice","replaceText","join","line","iterateAllJsdocs","meta","fixable","schema","enum","type","noTrim"],"mappings":";;;;;;;AAAA;;AACA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,KAD2B;AAE3BC,EAAAA,MAF2B;AAG3BC,EAAAA,OAH2B;AAI3BC,EAAAA,SAJ2B;AAK3BC,EAAAA,UAL2B;AAM3BC,EAAAA;AAN2B,CAAD,KAOtB;AACJ,MAAIC,MAAJ;;AAEA,MAAI,CAACN,KAAK,CAACO,WAAN,CAAkBC,IAAlB,EAAD,IAA6B,CAACR,KAAK,CAACS,IAAN,CAAWC,MAA7C,EAAqD;AACnD;AACD;;AAED,MAAIC,gBAAEC,GAAF,CAAMV,OAAO,CAACW,OAAd,EAAuB,CAAvB,CAAJ,EAA+B;AAC7BP,IAAAA,MAAM,GAAGJ,OAAO,CAACW,OAAR,CAAgB,CAAhB,MAAuB,QAAhC;AACD,GAFD,MAEO;AACLP,IAAAA,MAAM,GAAG,IAAT;AACD;;AAED,QAAMQ,2BAA2B,GAAI,QAAD,CAAWC,IAAX,CAAgBf,KAAK,CAACO,WAAtB,CAApC;;AAEA,MAAID,MAAJ,EAAY;AACV,QAAI,CAACQ,2BAAL,EAAkC;AAChC,YAAME,WAAW,GAAGZ,UAAU,CAACa,OAAX,CAAmBd,SAAnB,EAA8Be,KAA9B,CAAoC,IAApC,CAApB;AACA,YAAMC,SAAS,GAAGnB,KAAK,CAACO,WAAN,CAAkBW,KAAlB,CAAwB,IAAxB,CAAlB;AACA,YAAME,mBAAmB,GAAGD,SAAS,CAACT,MAAV,GAAmB,CAA/C;AACAT,MAAAA,MAAM,CAAC,mEAAD,EAAuEoB,KAAD,IAAW;AACrF;AACA,cAAMC,YAAY,GAAI,GAAEjB,MAAO,IAAV,IAClBW,WAAW,CAACI,mBAAD,CAAX,CAAiCG,QAAjC,CAA0C,IAA1C,IAAkD,IAAlD,GAAyD,EADvC,CAArB;AAEAP,QAAAA,WAAW,CAACQ,MAAZ,CAAmBJ,mBAAmB,GAAG,CAAzC,EAA4C,CAA5C,EAA+CE,YAA/C;AAEA,eAAOD,KAAK,CAACI,WAAN,CAAkBtB,SAAlB,EAA6Ba,WAAW,CAACU,IAAZ,CAAiB,IAAjB,CAA7B,CAAP;AACD,OAPK,EAOH;AACDC,QAAAA,IAAI,EAAEP;AADL,OAPG,CAAN;AAUD;AACF,GAhBD,MAgBO,IAAIN,2BAAJ,EAAiC;AACtC,UAAME,WAAW,GAAGZ,UAAU,CAACa,OAAX,CAAmBd,SAAnB,EAA8Be,KAA9B,CAAoC,IAApC,CAApB;AACA,UAAMC,SAAS,GAAGnB,KAAK,CAACO,WAAN,CAAkBW,KAAlB,CAAwB,IAAxB,CAAlB;AACA,UAAME,mBAAmB,GAAGD,SAAS,CAACT,MAAV,GAAmB,CAA/C;AACAT,IAAAA,MAAM,CAAC,oEAAD,EAAwEoB,KAAD,IAAW;AACtF;AACAL,MAAAA,WAAW,CAACQ,MAAZ,CAAmBJ,mBAAnB,EAAwC,CAAxC;AAEA,aAAOC,KAAK,CAACI,WAAN,CAAkBtB,SAAlB,EAA6Ba,WAAW,CAACU,IAAZ,CAAiB,IAAjB,CAA7B,CAAP;AACD,KALK,EAKH;AACDC,MAAAA,IAAI,EAAEP;AADL,KALG,CAAN;AAQD;AACF,CAnDc,EAmDZ;AACDQ,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,YADL;AAEJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,IAAI,EAAE,CAAC,QAAD,EAAW,OAAX,CADR;AAEEC,MAAAA,IAAI,EAAE;AAFR,KADM,CAFJ;AAQJA,IAAAA,IAAI,EAAE;AARF,GAFL;AAYDC,EAAAA,MAAM,EAAE;AAZP,CAnDY,C","sourcesContent":["import _ from 'lodash';\nimport iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n jsdoc,\n report,\n context,\n jsdocNode,\n sourceCode,\n indent,\n}) => {\n let always;\n\n if (!jsdoc.description.trim() || !jsdoc.tags.length) {\n return;\n }\n\n if (_.has(context.options, 0)) {\n always = context.options[0] === 'always';\n } else {\n always = true;\n }\n\n const descriptionEndsWithANewline = (/\\n\\r?$/).test(jsdoc.description);\n\n if (always) {\n if (!descriptionEndsWithANewline) {\n const sourceLines = sourceCode.getText(jsdocNode).split('\\n');\n const splitDesc = jsdoc.description.split('\\n');\n const lastDescriptionLine = splitDesc.length - 1;\n report('There must be a newline after the description of the JSDoc block.', (fixer) => {\n // Add the new line\n const injectedLine = `${indent} *` +\n (sourceLines[lastDescriptionLine].endsWith('\\r') ? '\\r' : '');\n sourceLines.splice(lastDescriptionLine + 1, 0, injectedLine);\n\n return fixer.replaceText(jsdocNode, sourceLines.join('\\n'));\n }, {\n line: lastDescriptionLine,\n });\n }\n } else if (descriptionEndsWithANewline) {\n const sourceLines = sourceCode.getText(jsdocNode).split('\\n');\n const splitDesc = jsdoc.description.split('\\n');\n const lastDescriptionLine = splitDesc.length - 1;\n report('There must be no newline after the description of the JSDoc block.', (fixer) => {\n // Remove the extra line\n sourceLines.splice(lastDescriptionLine, 1);\n\n return fixer.replaceText(jsdocNode, sourceLines.join('\\n'));\n }, {\n line: lastDescriptionLine,\n });\n }\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'whitespace',\n schema: [\n {\n enum: ['always', 'never'],\n type: 'string',\n },\n ],\n type: 'layout',\n },\n noTrim: true,\n});\n"],"file":"newlineAfterDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noBadBlocks.js b/node_modules/eslint-plugin-jsdoc/dist/rules/noBadBlocks.js deleted file mode 100644 index 507e93e1..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noBadBlocks.js +++ /dev/null @@ -1,46 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - context, - sourceCode, - allComments, - makeReport -}) => { - const nonJsdocNodes = allComments.filter(comment => { - return /^\/\*(?!\*)[\s*]*@\w/.test(sourceCode.getText(comment)); - }); - - if (!nonJsdocNodes.length) { - return; - } - - nonJsdocNodes.forEach(node => { - const report = makeReport(context, node); - - const fix = fixer => { - const text = sourceCode.getText(node); - return fixer.replaceText(node, text.replace('/*', '/**')); - }; - - report('Expected JSDoc-like comment to begin with two asterisks.', fix); - }); -}, { - checkFile: true, - meta: { - fixable: 'code', - type: 'layout' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=noBadBlocks.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noBadBlocks.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/noBadBlocks.js.map deleted file mode 100644 index d01764cf..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noBadBlocks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/noBadBlocks.js"],"names":["context","sourceCode","allComments","makeReport","nonJsdocNodes","filter","comment","test","getText","length","forEach","node","report","fix","fixer","text","replaceText","replace","checkFile","meta","fixable","type"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,OAD2B;AAE3BC,EAAAA,UAF2B;AAG3BC,EAAAA,WAH2B;AAI3BC,EAAAA;AAJ2B,CAAD,KAKtB;AACJ,QAAMC,aAAa,GAAGF,WAAW,CAACG,MAAZ,CAAoBC,OAAD,IAAa;AACpD,WAAQ,sBAAD,CAAyBC,IAAzB,CAA8BN,UAAU,CAACO,OAAX,CAAmBF,OAAnB,CAA9B,CAAP;AACD,GAFqB,CAAtB;;AAGA,MAAI,CAACF,aAAa,CAACK,MAAnB,EAA2B;AACzB;AACD;;AAEDL,EAAAA,aAAa,CAACM,OAAd,CAAuBC,IAAD,IAAU;AAC9B,UAAMC,MAAM,GAAGT,UAAU,CAACH,OAAD,EAAUW,IAAV,CAAzB;;AAEA,UAAME,GAAG,GAAIC,KAAD,IAAW;AACrB,YAAMC,IAAI,GAAGd,UAAU,CAACO,OAAX,CAAmBG,IAAnB,CAAb;AAEA,aAAOG,KAAK,CAACE,WAAN,CAAkBL,IAAlB,EAAwBI,IAAI,CAACE,OAAL,CAAa,IAAb,EAAmB,KAAnB,CAAxB,CAAP;AACD,KAJD;;AAKAL,IAAAA,MAAM,CAAC,0DAAD,EAA6DC,GAA7D,CAAN;AACD,GATD;AAUD,CAvBc,EAuBZ;AACDK,EAAAA,SAAS,EAAE,IADV;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,MADL;AAEJC,IAAAA,IAAI,EAAE;AAFF;AAFL,CAvBY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n context,\n sourceCode,\n allComments,\n makeReport,\n}) => {\n const nonJsdocNodes = allComments.filter((comment) => {\n return (/^\\/\\*(?!\\*)[\\s*]*@\\w/).test(sourceCode.getText(comment));\n });\n if (!nonJsdocNodes.length) {\n return;\n }\n\n nonJsdocNodes.forEach((node) => {\n const report = makeReport(context, node);\n\n const fix = (fixer) => {\n const text = sourceCode.getText(node);\n\n return fixer.replaceText(node, text.replace('/*', '/**'));\n };\n report('Expected JSDoc-like comment to begin with two asterisks.', fix);\n });\n}, {\n checkFile: true,\n meta: {\n fixable: 'code',\n type: 'layout',\n },\n});\n"],"file":"noBadBlocks.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noDefaults.js b/node_modules/eslint-plugin-jsdoc/dist/rules/noDefaults.js deleted file mode 100644 index 61d591c3..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noDefaults.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - context, - utils -}) => { - const _ref = context.options[0] || {}, - noOptionalParamNames = _ref.noOptionalParamNames; - - const paramTags = utils.getPresentTags(['param', 'arg', 'argument']); - paramTags.forEach(tag => { - if (noOptionalParamNames && tag.optional) { - utils.reportJSDoc(`Optional param names are not permitted on @${tag.tag}.`, tag, () => { - tag.default = ''; - tag.optional = false; - }); - } else if (tag.default) { - utils.reportJSDoc(`Defaults are not permitted on @${tag.tag}.`, tag, () => { - tag.default = ''; - }); - } - }); - const defaultTags = utils.getPresentTags(['default', 'defaultvalue']); - defaultTags.forEach(tag => { - if (tag.description) { - utils.reportJSDoc(`Default values are not permitted on @${tag.tag}.`, tag, () => { - tag.description = ''; - }); - } - }); -}, { - contextDefaults: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - }, - noOptionalParamNames: { - type: 'boolean' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=noDefaults.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noDefaults.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/noDefaults.js.map deleted file mode 100644 index 26760d3c..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noDefaults.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/noDefaults.js"],"names":["context","utils","options","noOptionalParamNames","paramTags","getPresentTags","forEach","tag","optional","reportJSDoc","default","defaultTags","description","contextDefaults","meta","fixable","schema","additionalProperties","properties","contexts","items","type"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,OAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AAAA,eAC2BD,OAAO,CAACE,OAAR,CAAgB,CAAhB,KAAsB,EADjD;AAAA,QACGC,oBADH,QACGA,oBADH;;AAEJ,QAAMC,SAAS,GAAGH,KAAK,CAACI,cAAN,CAAqB,CAAC,OAAD,EAAU,KAAV,EAAiB,UAAjB,CAArB,CAAlB;AACAD,EAAAA,SAAS,CAACE,OAAV,CAAmBC,GAAD,IAAS;AACzB,QAAIJ,oBAAoB,IAAII,GAAG,CAACC,QAAhC,EAA0C;AACxCP,MAAAA,KAAK,CAACQ,WAAN,CAAmB,8CAA6CF,GAAG,CAACA,GAAI,GAAxE,EAA4EA,GAA5E,EAAiF,MAAM;AACrFA,QAAAA,GAAG,CAACG,OAAJ,GAAc,EAAd;AACAH,QAAAA,GAAG,CAACC,QAAJ,GAAe,KAAf;AACD,OAHD;AAID,KALD,MAKO,IAAID,GAAG,CAACG,OAAR,EAAiB;AACtBT,MAAAA,KAAK,CAACQ,WAAN,CAAmB,kCAAiCF,GAAG,CAACA,GAAI,GAA5D,EAAgEA,GAAhE,EAAqE,MAAM;AACzEA,QAAAA,GAAG,CAACG,OAAJ,GAAc,EAAd;AACD,OAFD;AAGD;AACF,GAXD;AAYA,QAAMC,WAAW,GAAGV,KAAK,CAACI,cAAN,CAAqB,CAAC,SAAD,EAAY,cAAZ,CAArB,CAApB;AACAM,EAAAA,WAAW,CAACL,OAAZ,CAAqBC,GAAD,IAAS;AAC3B,QAAIA,GAAG,CAACK,WAAR,EAAqB;AACnBX,MAAAA,KAAK,CAACQ,WAAN,CAAmB,wCAAuCF,GAAG,CAACA,GAAI,GAAlE,EAAsEA,GAAtE,EAA2E,MAAM;AAC/EA,QAAAA,GAAG,CAACK,WAAJ,GAAkB,EAAlB;AACD,OAFD;AAGD;AACF,GAND;AAOD,CA1Bc,EA0BZ;AACDC,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,MADL;AAEJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLC,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE,SADA;AAOVlB,QAAAA,oBAAoB,EAAE;AACpBkB,UAAAA,IAAI,EAAE;AADc;AAPZ,OAFd;AAaEA,MAAAA,IAAI,EAAE;AAbR,KADM,CAFJ;AAmBJA,IAAAA,IAAI,EAAE;AAnBF;AAFL,CA1BY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n context,\n utils,\n}) => {\n const {noOptionalParamNames} = context.options[0] || {};\n const paramTags = utils.getPresentTags(['param', 'arg', 'argument']);\n paramTags.forEach((tag) => {\n if (noOptionalParamNames && tag.optional) {\n utils.reportJSDoc(`Optional param names are not permitted on @${tag.tag}.`, tag, () => {\n tag.default = '';\n tag.optional = false;\n });\n } else if (tag.default) {\n utils.reportJSDoc(`Defaults are not permitted on @${tag.tag}.`, tag, () => {\n tag.default = '';\n });\n }\n });\n const defaultTags = utils.getPresentTags(['default', 'defaultvalue']);\n defaultTags.forEach((tag) => {\n if (tag.description) {\n utils.reportJSDoc(`Default values are not permitted on @${tag.tag}.`, tag, () => {\n tag.description = '';\n });\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n noOptionalParamNames: {\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"noDefaults.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noTypes.js b/node_modules/eslint-plugin-jsdoc/dist/rules/noTypes.js deleted file mode 100644 index 2fd4f00b..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noTypes.js +++ /dev/null @@ -1,49 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - utils -}) => { - if (!utils.isIteratingFunction() && !utils.isVirtualFunction()) { - return; - } - - const tags = utils.getPresentTags(['param', 'arg', 'argument', 'returns', 'return']); - tags.forEach(tag => { - if (tag.type) { - utils.reportJSDoc(`Types are not permitted on @${tag.tag}.`, tag, () => { - tag.type = ''; - }); - } - }); -}, { - contextDefaults: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=noTypes.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noTypes.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/noTypes.js.map deleted file mode 100644 index ba3976ad..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noTypes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/noTypes.js"],"names":["utils","isIteratingFunction","isVirtualFunction","tags","getPresentTags","forEach","tag","type","reportJSDoc","contextDefaults","meta","fixable","schema","additionalProperties","properties","contexts","items"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA;AAD2B,CAAD,KAEtB;AACJ,MAAI,CAACA,KAAK,CAACC,mBAAN,EAAD,IAAgC,CAACD,KAAK,CAACE,iBAAN,EAArC,EAAgE;AAC9D;AACD;;AAED,QAAMC,IAAI,GAAGH,KAAK,CAACI,cAAN,CAAqB,CAAC,OAAD,EAAU,KAAV,EAAiB,UAAjB,EAA6B,SAA7B,EAAwC,QAAxC,CAArB,CAAb;AAEAD,EAAAA,IAAI,CAACE,OAAL,CAAcC,GAAD,IAAS;AACpB,QAAIA,GAAG,CAACC,IAAR,EAAc;AACZP,MAAAA,KAAK,CAACQ,WAAN,CAAmB,+BAA8BF,GAAG,CAACA,GAAI,GAAzD,EAA6DA,GAA7D,EAAkE,MAAM;AACtEA,QAAAA,GAAG,CAACC,IAAJ,GAAW,EAAX;AACD,OAFD;AAGD;AACF,GAND;AAOD,CAhBc,EAgBZ;AACDE,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,MADL;AAEJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLT,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CAFJ;AAgBJA,IAAAA,IAAI,EAAE;AAhBF;AAFL,CAhBY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n utils,\n}) => {\n if (!utils.isIteratingFunction() && !utils.isVirtualFunction()) {\n return;\n }\n\n const tags = utils.getPresentTags(['param', 'arg', 'argument', 'returns', 'return']);\n\n tags.forEach((tag) => {\n if (tag.type) {\n utils.reportJSDoc(`Types are not permitted on @${tag.tag}.`, tag, () => {\n tag.type = '';\n });\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"noTypes.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noUndefinedTypes.js b/node_modules/eslint-plugin-jsdoc/dist/rules/noUndefinedTypes.js deleted file mode 100644 index 3736b481..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noUndefinedTypes.js +++ /dev/null @@ -1,154 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _jsdoctypeparser = require("jsdoctypeparser"); - -var _iterateJsdoc = _interopRequireWildcard(require("../iterateJsdoc")); - -var _jsdocUtils = _interopRequireDefault(require("../jsdocUtils")); - -function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { 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 }; } - -const extraTypes = ['null', 'undefined', 'void', 'string', 'boolean', 'object', 'function', 'symbol', 'number', 'bigint', 'NaN', 'Infinity', 'any', '*', 'Array', 'Object', 'RegExp', 'Date', 'Function']; - -const stripPseudoTypes = str => { - return str && str.replace(/(?:\.|<>|\.<>|\[\])$/u, ''); -}; - -var _default = (0, _iterateJsdoc.default)(({ - context, - report, - settings, - sourceCode: { - scopeManager - }, - utils -}) => { - const globalScope = scopeManager.globalScope; - - const _ref = context.options[0] || {}, - _ref$definedTypes = _ref.definedTypes, - definedTypes = _ref$definedTypes === void 0 ? [] : _ref$definedTypes; - - let definedPreferredTypes = []; - const preferredTypes = settings.preferredTypes; - - if (Object.keys(preferredTypes).length) { - // Replace `_.values` with `Object.values` when we may start requiring Node 7+ - definedPreferredTypes = _lodash.default.values(preferredTypes).map(preferredType => { - if (typeof preferredType === 'string') { - // May become an empty string but will be filtered out below - return stripPseudoTypes(preferredType); - } - - if (!preferredType) { - return undefined; - } - - if (typeof preferredType !== 'object') { - utils.reportSettings('Invalid `settings.jsdoc.preferredTypes`. Values must be falsy, a string, or an object.'); - } - - return stripPseudoTypes(preferredType.replacement); - }).filter(preferredType => { - return preferredType; - }); - } - - const typedefDeclarations = (0, _lodash.default)(context.getAllComments()).filter(comment => { - return comment.value.startsWith('*'); - }).map(_iterateJsdoc.parseComment).flatMap(doc => { - return (doc.tags || []).filter(({ - tag - }) => { - return utils.isNamepathDefiningTag(tag); - }); - }).map(tag => { - return tag.name; - }).value(); - let templateTags = utils.getPresentTags('template'); - const classJsdoc = utils.getClassJsdoc(); - - if (classJsdoc && classJsdoc.tags) { - templateTags = templateTags.concat(classJsdoc.tags.filter(tag => { - return tag.tag === 'template'; - })); - } - - const closureGenericTypes = _lodash.default.flatMap(templateTags, tag => { - return _jsdocUtils.default.parseClosureTemplateTag(tag); - }); - - const allDefinedTypes = globalScope.variables.map(variable => { - return variable.name; - }) // If the file is a module, concat the variables from the module scope. - .concat( // This covers `commonjs` as well as `node` - scopeManager.__options.nodejsScope || scopeManager.isModule() ? globalScope.childScopes.reduce((arr, { - variables - }) => { - // Flatten - arr.push(...variables); - return arr; - }, []).map(({ - name - }) => { - return name; - }) : []).concat(extraTypes).concat(typedefDeclarations).concat(definedTypes).concat(definedPreferredTypes).concat(settings.mode === 'jsdoc' ? [] : closureGenericTypes); - const jsdocTagsWithPossibleType = utils.filterTags(tag => { - return utils.tagMightHaveTypePosition(tag.tag); - }); - jsdocTagsWithPossibleType.forEach(tag => { - let parsedType; - - try { - parsedType = (0, _jsdoctypeparser.parse)(tag.type); - } catch (error) { - // On syntax error, will be handled by valid-types. - return; - } - - (0, _jsdoctypeparser.traverse)(parsedType, ({ - type, - name - }) => { - if (type === 'NAME') { - if (!allDefinedTypes.includes(name)) { - report(`The type '${name}' is undefined.`, null, tag); - } else if (!_lodash.default.includes(extraTypes, name)) { - context.markVariableAsUsed(name); - } - } - }); - }); -}, { - iterateAllJsdocs: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - definedTypes: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=noUndefinedTypes.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/noUndefinedTypes.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/noUndefinedTypes.js.map deleted file mode 100644 index ccce0455..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/noUndefinedTypes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/noUndefinedTypes.js"],"names":["extraTypes","stripPseudoTypes","str","replace","context","report","settings","sourceCode","scopeManager","utils","globalScope","options","definedTypes","definedPreferredTypes","preferredTypes","Object","keys","length","_","values","map","preferredType","undefined","reportSettings","replacement","filter","typedefDeclarations","getAllComments","comment","value","startsWith","parseComment","flatMap","doc","tags","tag","isNamepathDefiningTag","name","templateTags","getPresentTags","classJsdoc","getClassJsdoc","concat","closureGenericTypes","jsdocUtils","parseClosureTemplateTag","allDefinedTypes","variables","variable","__options","nodejsScope","isModule","childScopes","reduce","arr","push","mode","jsdocTagsWithPossibleType","filterTags","tagMightHaveTypePosition","forEach","parsedType","type","error","includes","markVariableAsUsed","iterateAllJsdocs","meta","schema","additionalProperties","properties","items"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport {parse as parseType, traverse} from 'jsdoctypeparser';\nimport iterateJsdoc, {parseComment} from '../iterateJsdoc';\nimport jsdocUtils from '../jsdocUtils';\n\nconst extraTypes = [\n 'null', 'undefined', 'void', 'string', 'boolean', 'object',\n 'function', 'symbol',\n 'number', 'bigint', 'NaN', 'Infinity',\n 'any', '*',\n 'Array', 'Object', 'RegExp', 'Date', 'Function',\n];\n\nconst stripPseudoTypes = (str) => {\n return str && str.replace(/(?:\\.|<>|\\.<>|\\[\\])$/u, '');\n};\n\nexport default iterateJsdoc(({\n context,\n report,\n settings,\n sourceCode: {scopeManager},\n utils,\n}) => {\n const {globalScope} = scopeManager;\n\n const {definedTypes = []} = context.options[0] || {};\n\n let definedPreferredTypes = [];\n const {preferredTypes} = settings;\n if (Object.keys(preferredTypes).length) {\n // Replace `_.values` with `Object.values` when we may start requiring Node 7+\n definedPreferredTypes = _.values(preferredTypes).map((preferredType) => {\n if (typeof preferredType === 'string') {\n // May become an empty string but will be filtered out below\n return stripPseudoTypes(preferredType);\n }\n if (!preferredType) {\n return undefined;\n }\n if (typeof preferredType !== 'object') {\n utils.reportSettings(\n 'Invalid `settings.jsdoc.preferredTypes`. Values must be falsy, a string, or an object.',\n );\n }\n\n return stripPseudoTypes(preferredType.replacement);\n }).filter((preferredType) => {\n return preferredType;\n });\n }\n\n const typedefDeclarations = _(context.getAllComments())\n .filter((comment) => {\n return comment.value.startsWith('*');\n })\n .map(parseComment)\n .flatMap((doc) => {\n return (doc.tags || []).filter(({tag}) => {\n return utils.isNamepathDefiningTag(tag);\n });\n })\n .map((tag) => {\n return tag.name;\n })\n .value();\n\n let templateTags = utils.getPresentTags('template');\n const classJsdoc = utils.getClassJsdoc();\n if (classJsdoc && classJsdoc.tags) {\n templateTags = templateTags.concat(\n classJsdoc.tags\n .filter((tag) => {\n return tag.tag === 'template';\n }),\n );\n }\n\n const closureGenericTypes = _.flatMap(templateTags, (tag) => {\n return jsdocUtils.parseClosureTemplateTag(tag);\n });\n\n const allDefinedTypes = globalScope.variables.map((variable) => {\n return variable.name;\n })\n\n // If the file is a module, concat the variables from the module scope.\n .concat(\n\n // This covers `commonjs` as well as `node`\n scopeManager.__options.nodejsScope ||\n scopeManager.isModule() ?\n globalScope.childScopes.reduce((arr, {variables}) => {\n // Flatten\n arr.push(...variables);\n\n return arr;\n }, []).map(({name}) => {\n return name;\n }) : [],\n )\n .concat(extraTypes)\n .concat(typedefDeclarations)\n .concat(definedTypes)\n .concat(definedPreferredTypes)\n .concat(settings.mode === 'jsdoc' ? [] : closureGenericTypes);\n\n const jsdocTagsWithPossibleType = utils.filterTags((tag) => {\n return utils.tagMightHaveTypePosition(tag.tag);\n });\n\n jsdocTagsWithPossibleType.forEach((tag) => {\n let parsedType;\n\n try {\n parsedType = parseType(tag.type);\n } catch (error) {\n // On syntax error, will be handled by valid-types.\n return;\n }\n\n traverse(parsedType, ({type, name}) => {\n if (type === 'NAME') {\n if (!allDefinedTypes.includes(name)) {\n report(`The type '${name}' is undefined.`, null, tag);\n } else if (!_.includes(extraTypes, name)) {\n context.markVariableAsUsed(name);\n }\n }\n });\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n definedTypes: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"noUndefinedTypes.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescription.js deleted file mode 100644 index 127d3cda..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescription.js +++ /dev/null @@ -1,109 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - report, - utils, - context -}) => { - if (utils.avoidDocs()) { - return; - } - - const _ref = context.options[0] || {}, - _ref$descriptionStyle = _ref.descriptionStyle, - descriptionStyle = _ref$descriptionStyle === void 0 ? 'body' : _ref$descriptionStyle; - - let targetTagName = utils.getPreferredTagName({ - // We skip reporting except when `@description` is essential to the rule, - // so user can block the tag and still meaningfully use this rule - // even if the tag is present (and `check-tag-names` is the one to - // normally report the fact that it is blocked but present) - skipReportingBlockedTag: descriptionStyle !== 'tag', - tagName: 'description' - }); - - if (!targetTagName) { - return; - } - - const isBlocked = typeof targetTagName === 'object' && targetTagName.blocked; - - if (isBlocked) { - targetTagName = targetTagName.tagName; - } - - const checkDescription = description => { - const exampleContent = _lodash.default.compact(description.trim().split('\n')); - - return exampleContent.length; - }; - - if (descriptionStyle !== 'tag') { - if (checkDescription(jsdoc.description || '')) { - return; - } - - if (descriptionStyle === 'body') { - report('Missing JSDoc block description.'); - return; - } - } - - const functionExamples = isBlocked ? [] : _lodash.default.filter(jsdoc.tags, { - tag: targetTagName - }); - - if (!functionExamples.length) { - report(descriptionStyle === 'any' ? `Missing JSDoc block description or @${targetTagName} declaration.` : `Missing JSDoc @${targetTagName} declaration.`); - return; - } - - functionExamples.forEach(example => { - if (!checkDescription(`${example.name} ${example.description}`)) { - report(`Missing JSDoc @${targetTagName} description.`); - } - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - }, - descriptionStyle: { - enum: ['body', 'tag', 'any'], - type: 'string' - }, - exemptedBy: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescription.js.map deleted file mode 100644 index cdd35707..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireDescription.js"],"names":["jsdoc","report","utils","context","avoidDocs","options","descriptionStyle","targetTagName","getPreferredTagName","skipReportingBlockedTag","tagName","isBlocked","blocked","checkDescription","description","exampleContent","_","compact","trim","split","length","functionExamples","filter","tags","tag","forEach","example","name","contextDefaults","meta","schema","additionalProperties","properties","contexts","items","type","enum","exemptedBy"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n jsdoc,\n report,\n utils,\n context,\n}) => {\n if (utils.avoidDocs()) {\n return;\n }\n const {descriptionStyle = 'body'} = context.options[0] || {};\n\n let targetTagName = utils.getPreferredTagName({\n // We skip reporting except when `@description` is essential to the rule,\n // so user can block the tag and still meaningfully use this rule\n // even if the tag is present (and `check-tag-names` is the one to\n // normally report the fact that it is blocked but present)\n skipReportingBlockedTag: descriptionStyle !== 'tag',\n tagName: 'description',\n });\n if (!targetTagName) {\n return;\n }\n const isBlocked = typeof targetTagName === 'object' && targetTagName.blocked;\n if (isBlocked) {\n targetTagName = targetTagName.tagName;\n }\n\n const checkDescription = (description) => {\n const exampleContent = _.compact(description.trim().split('\\n'));\n\n return exampleContent.length;\n };\n\n if (descriptionStyle !== 'tag') {\n if (checkDescription(jsdoc.description || '')) {\n return;\n }\n\n if (descriptionStyle === 'body') {\n report('Missing JSDoc block description.');\n\n return;\n }\n }\n\n const functionExamples = isBlocked ?\n [] :\n _.filter(jsdoc.tags, {\n tag: targetTagName,\n });\n\n if (!functionExamples.length) {\n report(\n descriptionStyle === 'any' ?\n `Missing JSDoc block description or @${targetTagName} declaration.` :\n `Missing JSDoc @${targetTagName} declaration.`,\n );\n\n return;\n }\n\n functionExamples.forEach((example) => {\n if (!checkDescription(`${example.name} ${example.description}`)) {\n report(`Missing JSDoc @${targetTagName} description.`);\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n descriptionStyle: {\n enum: ['body', 'tag', 'any'],\n type: 'string',\n },\n exemptedBy: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescriptionCompleteSentence.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescriptionCompleteSentence.js deleted file mode 100644 index d5053728..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescriptionCompleteSentence.js +++ /dev/null @@ -1,230 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _mainUmd = require("regextras/dist/main-umd"); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const otherDescriptiveTags = [// 'copyright' and 'see' might be good addition, but as the former may be -// sensitive text, and the latter may have just a link, they are not -// included by default -'summary', 'file', 'fileoverview', 'overview', 'classdesc', 'todo', 'deprecated', 'throws', 'exception', 'yields', 'yield']; - -const extractParagraphs = text => { - // Todo [engine:node@>8.11.0]: Uncomment following line with neg. lookbehind instead - // return text.split(/(? { - return [...par].reverse().join(''); - }).reverse(); -}; - -const extractSentences = (text, abbreviationsRegex) => { - const txt = text // Remove all {} tags. - .replace(/\{[\s\S]*?\}\s*/gu, '') // Remove custom abbreviations - .replace(abbreviationsRegex, ''); - const sentenceEndGrouping = /([.?!])(?:\s+|$)/u; - const puncts = (0, _mainUmd.RegExtras)(sentenceEndGrouping).map(txt, punct => { - return punct; - }); - return txt.split(/[.?!](?:\s+|$)/u) // Re-add the dot. - .map((sentence, idx) => { - return /^\s*$/u.test(sentence) ? sentence : `${sentence}${puncts[idx] || ''}`; - }); -}; - -const isNewLinePrecededByAPeriod = text => { - let lastLineEndsSentence; - const lines = text.split('\n'); - return !lines.some(line => { - if (lastLineEndsSentence === false && /^[A-Z][a-z]/u.test(line)) { - return true; - } - - lastLineEndsSentence = /[.:?!|]$/u.test(line); - return false; - }); -}; - -const isCapitalized = str => { - return str[0] === str[0].toUpperCase(); -}; - -const isTable = str => { - return str.charAt() === '|'; -}; - -const capitalize = str => { - return str.charAt(0).toUpperCase() + str.slice(1); -}; - -const validateDescription = (description, reportOrig, jsdocNode, abbreviationsRegex, sourceCode, tag) => { - if (!description) { - return false; - } - - const paragraphs = extractParagraphs(description); - return paragraphs.some((paragraph, parIdx) => { - const sentences = extractSentences(paragraph, abbreviationsRegex); - - const fix = fixer => { - let text = sourceCode.getText(jsdocNode); - - if (!/[.:?!]$/u.test(paragraph)) { - const line = _lodash.default.last(paragraph.split('\n')); - - text = text.replace(new RegExp(`${_lodash.default.escapeRegExp(line)}$`, 'mu'), `${line}.`); - } - - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = sentences.filter(sentence_ => { - return !/^\s*$/u.test(sentence_) && !isCapitalized(sentence_) && !isTable(sentence_); - })[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - const sentence = _step.value; - const beginning = sentence.split('\n')[0]; - - if (tag.tag) { - const reg = new RegExp(`(@${_lodash.default.escapeRegExp(tag.tag)}.*)${_lodash.default.escapeRegExp(beginning)}`, 'u'); - text = text.replace(reg, ($0, $1) => { - return $1 + capitalize(beginning); - }); - } else { - text = text.replace(beginning, capitalize(beginning)); - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return != null) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - return fixer.replaceText(jsdocNode, text); - }; - - const report = (msg, fixer, tagObj) => { - tagObj.line += parIdx * 2; // Avoid errors if old column doesn't exist here - - tagObj.column = 0; - reportOrig(msg, fixer, tagObj); - }; - - if (sentences.some(sentence => { - return !/^\s*$/u.test(sentence) && !isCapitalized(sentence) && !isTable(sentence); - })) { - report('Sentence should start with an uppercase character.', fix, tag); - } - - const paragraphNoAbbreviations = paragraph.replace(abbreviationsRegex, ''); - - if (!/[.!?|]$/u.test(paragraphNoAbbreviations)) { - report('Sentence must end with a period.', fix, tag); - return true; - } - - if (!isNewLinePrecededByAPeriod(paragraphNoAbbreviations)) { - report('A line of text is started with an uppercase character, but preceding line does not end the sentence.', null, tag); - return true; - } - - return false; - }); -}; - -var _default = (0, _iterateJsdoc.default)(({ - sourceCode, - context, - jsdoc, - report, - jsdocNode, - utils -}) => { - const options = context.options[0] || {}; - const _options$abbreviation = options.abbreviations, - abbreviations = _options$abbreviation === void 0 ? [] : _options$abbreviation; - const abbreviationsRegex = abbreviations.length ? new RegExp('\\b' + abbreviations.map(abbreviation => { - return _lodash.default.escapeRegExp(abbreviation.replace(/\.$/g, '') + '.'); - }).join('|') + '(?:$|\\s)', 'gu') : ''; - - if (!jsdoc.tags || validateDescription(jsdoc.description, report, jsdocNode, abbreviationsRegex, sourceCode, { - line: jsdoc.line + 1 - })) { - return; - } - - utils.forEachPreferredTag('description', matchingJsdocTag => { - const description = `${matchingJsdocTag.name} ${matchingJsdocTag.description}`.trim(); - validateDescription(description, report, jsdocNode, abbreviationsRegex, sourceCode, matchingJsdocTag); - }, true); - - const _utils$getTagsByType = utils.getTagsByType(jsdoc.tags), - tagsWithNames = _utils$getTagsByType.tagsWithNames; - - const tagsWithoutNames = utils.filterTags(({ - tag: tagName - }) => { - return otherDescriptiveTags.includes(tagName) || utils.hasOptionTag(tagName) && !tagsWithNames.some(({ - tag - }) => { - // If user accidentally adds tags with names (or like `returns` - // get parsed as having names), do not add to this list - return tag === tagName; - }); - }); - tagsWithNames.some(tag => { - const description = _lodash.default.trimStart(tag.description, '- '); - - return validateDescription(description, report, jsdocNode, abbreviationsRegex, sourceCode, tag); - }); - tagsWithoutNames.some(tag => { - const description = `${tag.name} ${tag.description}`.trim(); - return validateDescription(description, report, jsdocNode, abbreviationsRegex, sourceCode, tag); - }); -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - abbreviations: { - items: { - type: 'string' - }, - type: 'array' - }, - tags: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireDescriptionCompleteSentence.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescriptionCompleteSentence.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescriptionCompleteSentence.js.map deleted file mode 100644 index c95b99cd..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireDescriptionCompleteSentence.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireDescriptionCompleteSentence.js"],"names":["otherDescriptiveTags","extractParagraphs","text","reverse","join","split","map","par","extractSentences","abbreviationsRegex","txt","replace","sentenceEndGrouping","puncts","punct","sentence","idx","test","isNewLinePrecededByAPeriod","lastLineEndsSentence","lines","some","line","isCapitalized","str","toUpperCase","isTable","charAt","capitalize","slice","validateDescription","description","reportOrig","jsdocNode","sourceCode","tag","paragraphs","paragraph","parIdx","sentences","fix","fixer","getText","_","last","RegExp","escapeRegExp","filter","sentence_","beginning","reg","$0","$1","replaceText","report","msg","tagObj","column","paragraphNoAbbreviations","context","jsdoc","utils","options","abbreviations","length","abbreviation","tags","forEachPreferredTag","matchingJsdocTag","name","trim","getTagsByType","tagsWithNames","tagsWithoutNames","filterTags","tagName","includes","hasOptionTag","trimStart","iterateAllJsdocs","meta","fixable","schema","additionalProperties","properties","items","type"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport {RegExtras} from 'regextras/dist/main-umd';\nimport iterateJsdoc from '../iterateJsdoc';\n\nconst otherDescriptiveTags = [\n // 'copyright' and 'see' might be good addition, but as the former may be\n // sensitive text, and the latter may have just a link, they are not\n // included by default\n 'summary', 'file', 'fileoverview', 'overview', 'classdesc', 'todo',\n 'deprecated', 'throws', 'exception', 'yields', 'yield',\n];\n\nconst extractParagraphs = (text) => {\n // Todo [engine:node@>8.11.0]: Uncomment following line with neg. lookbehind instead\n // return text.split(/(? {\n return [...par].reverse().join('');\n }).reverse();\n};\n\nconst extractSentences = (text, abbreviationsRegex) => {\n const txt = text\n\n // Remove all {} tags.\n .replace(/\\{[\\s\\S]*?\\}\\s*/gu, '')\n\n // Remove custom abbreviations\n .replace(abbreviationsRegex, '');\n\n const sentenceEndGrouping = /([.?!])(?:\\s+|$)/u;\n const puncts = RegExtras(sentenceEndGrouping).map(txt, (punct) => {\n return punct;\n });\n\n return txt\n\n .split(/[.?!](?:\\s+|$)/u)\n\n // Re-add the dot.\n .map((sentence, idx) => {\n return /^\\s*$/u.test(sentence) ? sentence : `${sentence}${puncts[idx] || ''}`;\n });\n};\n\nconst isNewLinePrecededByAPeriod = (text) => {\n let lastLineEndsSentence;\n\n const lines = text.split('\\n');\n\n return !lines.some((line) => {\n if (lastLineEndsSentence === false && /^[A-Z][a-z]/u.test(line)) {\n return true;\n }\n\n lastLineEndsSentence = /[.:?!|]$/u.test(line);\n\n return false;\n });\n};\n\nconst isCapitalized = (str) => {\n return str[0] === str[0].toUpperCase();\n};\n\nconst isTable = (str) => {\n return str.charAt() === '|';\n};\n\nconst capitalize = (str) => {\n return str.charAt(0).toUpperCase() + str.slice(1);\n};\n\nconst validateDescription = (description, reportOrig, jsdocNode, abbreviationsRegex, sourceCode, tag) => {\n if (!description) {\n return false;\n }\n\n const paragraphs = extractParagraphs(description);\n\n return paragraphs.some((paragraph, parIdx) => {\n const sentences = extractSentences(paragraph, abbreviationsRegex);\n\n const fix = (fixer) => {\n let text = sourceCode.getText(jsdocNode);\n\n if (!/[.:?!]$/u.test(paragraph)) {\n const line = _.last(paragraph.split('\\n'));\n\n text = text.replace(new RegExp(`${_.escapeRegExp(line)}$`, 'mu'), `${line}.`);\n }\n\n for (const sentence of sentences.filter((sentence_) => {\n return !(/^\\s*$/u).test(sentence_) && !isCapitalized(sentence_) &&\n !isTable(sentence_);\n })) {\n const beginning = sentence.split('\\n')[0];\n\n if (tag.tag) {\n const reg = new RegExp(`(@${_.escapeRegExp(tag.tag)}.*)${_.escapeRegExp(beginning)}`, 'u');\n\n text = text.replace(reg, ($0, $1) => {\n return $1 + capitalize(beginning);\n });\n } else {\n text = text.replace(beginning, capitalize(beginning));\n }\n }\n\n return fixer.replaceText(jsdocNode, text);\n };\n\n const report = (msg, fixer, tagObj) => {\n tagObj.line += parIdx * 2;\n\n // Avoid errors if old column doesn't exist here\n tagObj.column = 0;\n reportOrig(msg, fixer, tagObj);\n };\n\n if (sentences.some((sentence) => {\n return !(/^\\s*$/u).test(sentence) && !isCapitalized(sentence) && !isTable(sentence);\n })) {\n report('Sentence should start with an uppercase character.', fix, tag);\n }\n\n const paragraphNoAbbreviations = paragraph.replace(abbreviationsRegex, '');\n\n if (!/[.!?|]$/u.test(paragraphNoAbbreviations)) {\n report('Sentence must end with a period.', fix, tag);\n\n return true;\n }\n\n if (!isNewLinePrecededByAPeriod(paragraphNoAbbreviations)) {\n report('A line of text is started with an uppercase character, but preceding line does not end the sentence.', null, tag);\n\n return true;\n }\n\n return false;\n });\n};\n\nexport default iterateJsdoc(({\n sourceCode,\n context,\n jsdoc,\n report,\n jsdocNode,\n utils,\n}) => {\n const options = context.options[0] || {};\n const {\n abbreviations = [],\n } = options;\n\n const abbreviationsRegex = abbreviations.length ?\n new RegExp('\\\\b' + abbreviations.map((abbreviation) => {\n return _.escapeRegExp(abbreviation.replace(/\\.$/g, '') + '.');\n }).join('|') + '(?:$|\\\\s)', 'gu') :\n '';\n\n if (!jsdoc.tags ||\n validateDescription(jsdoc.description, report, jsdocNode, abbreviationsRegex, sourceCode, {\n line: jsdoc.line + 1,\n })\n ) {\n return;\n }\n\n utils.forEachPreferredTag('description', (matchingJsdocTag) => {\n const description = `${matchingJsdocTag.name} ${matchingJsdocTag.description}`.trim();\n validateDescription(description, report, jsdocNode, abbreviationsRegex, sourceCode, matchingJsdocTag);\n }, true);\n\n const {tagsWithNames} = utils.getTagsByType(jsdoc.tags);\n const tagsWithoutNames = utils.filterTags(({tag: tagName}) => {\n return otherDescriptiveTags.includes(tagName) ||\n utils.hasOptionTag(tagName) && !tagsWithNames.some(({tag}) => {\n // If user accidentally adds tags with names (or like `returns`\n // get parsed as having names), do not add to this list\n return tag === tagName;\n });\n });\n\n tagsWithNames.some((tag) => {\n const description = _.trimStart(tag.description, '- ');\n\n return validateDescription(description, report, jsdocNode, abbreviationsRegex, sourceCode, tag);\n });\n\n tagsWithoutNames.some((tag) => {\n const description = `${tag.name} ${tag.description}`.trim();\n\n return validateDescription(description, report, jsdocNode, abbreviationsRegex, sourceCode, tag);\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n abbreviations: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n tags: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireDescriptionCompleteSentence.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireExample.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireExample.js deleted file mode 100644 index 530f1080..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireExample.js +++ /dev/null @@ -1,100 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -var _warnRemovedSettings = _interopRequireDefault(require("../warnRemovedSettings")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - report, - utils, - context -}) => { - (0, _warnRemovedSettings.default)(context, 'require-example'); - - if (utils.avoidDocs()) { - return; - } - - const _ref = context.options[0] || {}, - _ref$avoidExampleOnCo = _ref.avoidExampleOnConstructors, - avoidExampleOnConstructors = _ref$avoidExampleOnCo === void 0 ? false : _ref$avoidExampleOnCo; - - const targetTagName = 'example'; - - const functionExamples = _lodash.default.filter(jsdoc.tags, { - tag: targetTagName - }); - - if (avoidExampleOnConstructors && (utils.hasATag(['class', 'constructor']) || utils.isConstructor())) { - return; - } - - if (!functionExamples.length) { - utils.reportJSDoc(`Missing JSDoc @${targetTagName} declaration.`, null, () => { - if (!jsdoc.tags) { - jsdoc.tags = []; - } - - const line = jsdoc.tags.length ? jsdoc.tags[jsdoc.tags.length - 1].line + 1 : 0; - jsdoc.tags.push({ - description: '', - line, - name: '', - optional: false, - tag: targetTagName, - type: '' - }); - }); - return; - } - - functionExamples.forEach(example => { - const exampleContent = _lodash.default.compact(`${example.name} ${example.description}`.trim().split('\n')); - - if (!exampleContent.length) { - report(`Missing JSDoc @${targetTagName} description.`); - } - }); -}, { - contextDefaults: true, - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - avoidExampleOnConstructors: { - default: false, - type: 'boolean' - }, - contexts: { - items: { - type: 'string' - }, - type: 'array' - }, - exemptedBy: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireExample.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireExample.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireExample.js.map deleted file mode 100644 index e4d0ebd1..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireExample.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireExample.js"],"names":["jsdoc","report","utils","context","avoidDocs","options","avoidExampleOnConstructors","targetTagName","functionExamples","_","filter","tags","tag","hasATag","isConstructor","length","reportJSDoc","line","push","description","name","optional","type","forEach","example","exampleContent","compact","trim","split","contextDefaults","meta","fixable","schema","additionalProperties","properties","default","contexts","items","exemptedBy"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport iterateJsdoc from '../iterateJsdoc';\nimport warnRemovedSettings from '../warnRemovedSettings';\n\nexport default iterateJsdoc(({\n jsdoc,\n report,\n utils,\n context,\n}) => {\n warnRemovedSettings(context, 'require-example');\n\n if (utils.avoidDocs()) {\n return;\n }\n\n const {avoidExampleOnConstructors = false} = context.options[0] || {};\n\n const targetTagName = 'example';\n\n const functionExamples = _.filter(jsdoc.tags, {\n tag: targetTagName,\n });\n\n if (avoidExampleOnConstructors && (\n utils.hasATag([\n 'class',\n 'constructor',\n ]) ||\n utils.isConstructor()\n )) {\n return;\n }\n\n if (!functionExamples.length) {\n utils.reportJSDoc(`Missing JSDoc @${targetTagName} declaration.`, null, () => {\n if (!jsdoc.tags) {\n jsdoc.tags = [];\n }\n const line = jsdoc.tags.length ? jsdoc.tags[jsdoc.tags.length - 1].line + 1 : 0;\n jsdoc.tags.push({\n description: '',\n line,\n name: '',\n optional: false,\n tag: targetTagName,\n type: '',\n });\n });\n\n return;\n }\n\n functionExamples.forEach((example) => {\n const exampleContent = _.compact(`${example.name} ${example.description}`.trim().split('\\n'));\n\n if (!exampleContent.length) {\n report(`Missing JSDoc @${targetTagName} description.`);\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n avoidExampleOnConstructors: {\n default: false,\n type: 'boolean',\n },\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n exemptedBy: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireExample.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireFileOverview.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireFileOverview.js deleted file mode 100644 index f98e9028..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireFileOverview.js +++ /dev/null @@ -1,160 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -const defaultTags = { - file: { - initialCommentsOnly: true, - mustExist: true, - preventDuplicates: true - } -}; - -const setDefaults = state => { - // First iteration - if (!state.globalTags) { - state.globalTags = {}; - state.hasDuplicates = {}; - state.hasTag = {}; - state.hasNonCommentBeforeTag = {}; - } -}; - -var _default = (0, _iterateJsdoc.default)(({ - jsdocNode, - state, - utils, - context -}) => { - const _ref = context.options[0] || {}, - _ref$tags = _ref.tags, - tags = _ref$tags === void 0 ? defaultTags : _ref$tags; - - setDefaults(state); - - for (var _i = 0, _Object$keys = Object.keys(tags); _i < _Object$keys.length; _i++) { - const tagName = _Object$keys[_i]; - const targetTagName = utils.getPreferredTagName({ - tagName - }); - const hasTag = targetTagName && utils.hasTag(targetTagName); - state.hasTag[tagName] = hasTag || state.hasTag[tagName]; - const hasDuplicate = state.hasDuplicates[tagName]; - - if (hasDuplicate === false) { - // Was marked before, so if a tag now, is a dupe - state.hasDuplicates[tagName] = hasTag; - } else if (!hasDuplicate && hasTag) { - // No dupes set before, but has first tag, so change state - // from `undefined` to `false` so can detect next time - state.hasDuplicates[tagName] = false; - state.hasNonCommentBeforeTag[tagName] = state.hasNonComment && state.hasNonComment < jsdocNode.start; - } - } -}, { - exit({ - context, - state, - utils - }) { - setDefaults(state); - - const _ref2 = context.options[0] || {}, - _ref2$tags = _ref2.tags, - tags = _ref2$tags === void 0 ? defaultTags : _ref2$tags; - - for (var _i2 = 0, _Object$entries = Object.entries(tags); _i2 < _Object$entries.length; _i2++) { - const _Object$entries$_i = _slicedToArray(_Object$entries[_i2], 2), - tagName = _Object$entries$_i[0], - _Object$entries$_i$ = _Object$entries$_i[1], - _Object$entries$_i$$m = _Object$entries$_i$.mustExist, - mustExist = _Object$entries$_i$$m === void 0 ? false : _Object$entries$_i$$m, - _Object$entries$_i$$p = _Object$entries$_i$.preventDuplicates, - preventDuplicates = _Object$entries$_i$$p === void 0 ? false : _Object$entries$_i$$p, - _Object$entries$_i$$i = _Object$entries$_i$.initialCommentsOnly, - initialCommentsOnly = _Object$entries$_i$$i === void 0 ? false : _Object$entries$_i$$i; - - const obj = utils.getPreferredTagNameObject({ - tagName - }); - - if (obj && obj.blocked) { - utils.reportSettings(`\`settings.jsdoc.tagNamePreference\` cannot block @${obj.tagName} ` + 'for the `require-file-overview` rule'); - } else { - const targetTagName = obj && obj.replacement || obj; - - if (mustExist && !state.hasTag[tagName]) { - utils.reportSettings(`Missing @${targetTagName}`); - } - - if (preventDuplicates && state.hasDuplicates[tagName]) { - utils.reportSettings(`Duplicate @${targetTagName}`); - } - - if (initialCommentsOnly && state.hasNonCommentBeforeTag[tagName]) { - utils.reportSettings(`@${targetTagName} should be at the beginning of the file`); - } - } - } - }, - - iterateAllJsdocs: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - tags: { - patternProperties: { - '.*': { - additionalProperties: false, - properties: { - initialCommentsOnly: { - type: 'boolean' - }, - mustExist: { - type: 'boolean' - }, - preventDuplicates: { - type: 'boolean' - } - }, - type: 'object' - } - }, - type: 'object' - } - }, - type: 'object' - }], - type: 'suggestion' - }, - - nonComment({ - state, - node - }) { - if (!state.hasNonComment) { - state.hasNonComment = node.start; - } - } - -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireFileOverview.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireFileOverview.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireFileOverview.js.map deleted file mode 100644 index 4ad20577..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireFileOverview.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireFileOverview.js"],"names":["defaultTags","file","initialCommentsOnly","mustExist","preventDuplicates","setDefaults","state","globalTags","hasDuplicates","hasTag","hasNonCommentBeforeTag","jsdocNode","utils","context","options","tags","Object","keys","tagName","targetTagName","getPreferredTagName","hasDuplicate","hasNonComment","start","exit","entries","obj","getPreferredTagNameObject","blocked","reportSettings","replacement","iterateAllJsdocs","meta","schema","additionalProperties","properties","patternProperties","type","nonComment","node"],"mappings":"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","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst defaultTags = {\n file: {\n initialCommentsOnly: true,\n mustExist: true,\n preventDuplicates: true,\n },\n};\n\nconst setDefaults = (state) => {\n // First iteration\n if (!state.globalTags) {\n state.globalTags = {};\n state.hasDuplicates = {};\n state.hasTag = {};\n state.hasNonCommentBeforeTag = {};\n }\n};\n\nexport default iterateJsdoc(({\n jsdocNode,\n state,\n utils,\n context,\n}) => {\n const {\n tags = defaultTags,\n } = context.options[0] || {};\n\n setDefaults(state);\n\n for (const tagName of Object.keys(tags)) {\n const targetTagName = utils.getPreferredTagName({tagName});\n\n const hasTag = targetTagName && utils.hasTag(targetTagName);\n\n state.hasTag[tagName] = hasTag || state.hasTag[tagName];\n\n const hasDuplicate = state.hasDuplicates[tagName];\n\n if (hasDuplicate === false) {\n // Was marked before, so if a tag now, is a dupe\n state.hasDuplicates[tagName] = hasTag;\n } else if (!hasDuplicate && hasTag) {\n // No dupes set before, but has first tag, so change state\n // from `undefined` to `false` so can detect next time\n state.hasDuplicates[tagName] = false;\n state.hasNonCommentBeforeTag[tagName] = state.hasNonComment &&\n state.hasNonComment < jsdocNode.start;\n }\n }\n}, {\n exit ({context, state, utils}) {\n setDefaults(state);\n const {\n tags = defaultTags,\n } = context.options[0] || {};\n\n for (const [tagName, {\n mustExist = false,\n preventDuplicates = false,\n initialCommentsOnly = false,\n }] of Object.entries(tags)) {\n const obj = utils.getPreferredTagNameObject({tagName});\n if (obj && obj.blocked) {\n utils.reportSettings(\n `\\`settings.jsdoc.tagNamePreference\\` cannot block @${obj.tagName} ` +\n 'for the `require-file-overview` rule',\n );\n } else {\n const targetTagName = obj && obj.replacement || obj;\n if (mustExist && !state.hasTag[tagName]) {\n utils.reportSettings(`Missing @${targetTagName}`);\n }\n if (preventDuplicates && state.hasDuplicates[tagName]) {\n utils.reportSettings(\n `Duplicate @${targetTagName}`,\n );\n }\n if (initialCommentsOnly &&\n state.hasNonCommentBeforeTag[tagName]\n ) {\n utils.reportSettings(\n `@${targetTagName} should be at the beginning of the file`,\n );\n }\n }\n }\n },\n iterateAllJsdocs: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n tags: {\n patternProperties: {\n '.*': {\n additionalProperties: false,\n properties: {\n initialCommentsOnly: {\n type: 'boolean',\n },\n mustExist: {\n type: 'boolean',\n },\n preventDuplicates: {\n type: 'boolean',\n },\n },\n type: 'object',\n },\n },\n type: 'object',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n nonComment ({state, node}) {\n if (!state.hasNonComment) {\n state.hasNonComment = node.start;\n }\n },\n});\n"],"file":"requireFileOverview.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireHyphenBeforeParamDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireHyphenBeforeParamDescription.js deleted file mode 100644 index b1308132..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireHyphenBeforeParamDescription.js +++ /dev/null @@ -1,94 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -var _default = (0, _iterateJsdoc.default)(({ - sourceCode, - utils, - report, - context, - jsdocNode -}) => { - const _context$options = _slicedToArray(context.options, 2), - circumstance = _context$options[0], - _context$options$ = _context$options[1], - _context$options$2 = _context$options$ === void 0 ? {} : _context$options$, - checkProperties = _context$options$2.checkProperties; - - const always = !circumstance || circumstance === 'always'; - - const checkHyphens = (jsdocTag, targetTagName) => { - if (!jsdocTag.description) { - return; - } - - if (always) { - if (!jsdocTag.description.startsWith('-')) { - report(`There must be a hyphen before @${targetTagName} description.`, fixer => { - const lineIndex = jsdocTag.line; - const sourceLines = sourceCode.getText(jsdocNode).split('\n'); // Get start index of description, accounting for multi-line descriptions - - const description = jsdocTag.description.split('\n')[0]; - const descriptionIndex = sourceLines[lineIndex].lastIndexOf(description); - const replacementLine = sourceLines[lineIndex].slice(0, descriptionIndex) + '- ' + description; - sourceLines.splice(lineIndex, 1, replacementLine); - const replacement = sourceLines.join('\n'); - return fixer.replaceText(jsdocNode, replacement); - }, jsdocTag); - } - } else if (jsdocTag.description.startsWith('-')) { - report(`There must be no hyphen before @${targetTagName} description.`, fixer => { - const _$exec = /-\s*/u.exec(jsdocTag.description), - _$exec2 = _slicedToArray(_$exec, 1), - unwantedPart = _$exec2[0]; - - const replacement = sourceCode.getText(jsdocNode).replace(jsdocTag.description, jsdocTag.description.slice(unwantedPart.length)); - return fixer.replaceText(jsdocNode, replacement); - }, jsdocTag); - } - }; - - utils.forEachPreferredTag('param', checkHyphens); - - if (checkProperties) { - utils.forEachPreferredTag('property', checkHyphens); - } -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - schema: [{ - enum: ['always', 'never'], - type: 'string' - }, { - additionalProperties: false, - properties: { - checkProperties: { - default: false, - type: 'boolean' - } - }, - type: 'object' - }], - type: 'layout' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireHyphenBeforeParamDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireHyphenBeforeParamDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireHyphenBeforeParamDescription.js.map deleted file mode 100644 index d4897594..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireHyphenBeforeParamDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireHyphenBeforeParamDescription.js"],"names":["sourceCode","utils","report","context","jsdocNode","options","circumstance","checkProperties","always","checkHyphens","jsdocTag","targetTagName","description","startsWith","fixer","lineIndex","line","sourceLines","getText","split","descriptionIndex","lastIndexOf","replacementLine","slice","splice","replacement","join","replaceText","exec","unwantedPart","replace","length","forEachPreferredTag","iterateAllJsdocs","meta","fixable","schema","enum","type","additionalProperties","properties","default"],"mappings":"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","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n sourceCode,\n utils,\n report,\n context,\n jsdocNode,\n}) => {\n const [circumstance, {checkProperties} = {}] = context.options;\n const always = !circumstance || circumstance === 'always';\n\n const checkHyphens = (jsdocTag, targetTagName) => {\n if (!jsdocTag.description) {\n return;\n }\n\n if (always) {\n if (!jsdocTag.description.startsWith('-')) {\n report(`There must be a hyphen before @${targetTagName} description.`, (fixer) => {\n const lineIndex = jsdocTag.line;\n const sourceLines = sourceCode.getText(jsdocNode).split('\\n');\n\n // Get start index of description, accounting for multi-line descriptions\n const description = jsdocTag.description.split('\\n')[0];\n const descriptionIndex = sourceLines[lineIndex].lastIndexOf(description);\n\n const replacementLine = sourceLines[lineIndex]\n .slice(0, descriptionIndex) + '- ' + description;\n sourceLines.splice(lineIndex, 1, replacementLine);\n const replacement = sourceLines.join('\\n');\n\n return fixer.replaceText(jsdocNode, replacement);\n }, jsdocTag);\n }\n } else if (jsdocTag.description.startsWith('-')) {\n report(`There must be no hyphen before @${targetTagName} description.`, (fixer) => {\n const [unwantedPart] = /-\\s*/u.exec(jsdocTag.description);\n\n const replacement = sourceCode\n .getText(jsdocNode)\n .replace(jsdocTag.description, jsdocTag.description.slice(unwantedPart.length));\n\n return fixer.replaceText(jsdocNode, replacement);\n }, jsdocTag);\n }\n };\n\n utils.forEachPreferredTag('param', checkHyphens);\n if (checkProperties) {\n utils.forEachPreferredTag('property', checkHyphens);\n }\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n schema: [\n {\n enum: ['always', 'never'],\n type: 'string',\n },\n {\n additionalProperties: false,\n properties: {\n checkProperties: {\n default: false,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'layout',\n },\n});\n"],"file":"requireHyphenBeforeParamDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js deleted file mode 100644 index 6b2ff26d..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js +++ /dev/null @@ -1,271 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _lodash = _interopRequireDefault(require("lodash")); - -var _jsdocUtils = _interopRequireDefault(require("../jsdocUtils")); - -var _exportParser = _interopRequireDefault(require("../exportParser")); - -var _getJSDocComment = _interopRequireDefault(require("../eslint/getJSDocComment")); - -var _warnRemovedSettings = _interopRequireDefault(require("../warnRemovedSettings")); - -var _iterateJsdoc = require("../iterateJsdoc"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const OPTIONS_SCHEMA = { - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - }, - exemptEmptyFunctions: { - default: false, - type: 'boolean' - }, - publicOnly: { - oneOf: [{ - default: false, - type: 'boolean' - }, { - additionalProperties: false, - default: {}, - properties: { - ancestorsOnly: { - type: 'boolean' - }, - cjs: { - type: 'boolean' - }, - esm: { - type: 'boolean' - }, - window: { - type: 'boolean' - } - }, - type: 'object' - }] - }, - require: { - additionalProperties: false, - default: {}, - properties: { - ArrowFunctionExpression: { - default: false, - type: 'boolean' - }, - ClassDeclaration: { - default: false, - type: 'boolean' - }, - ClassExpression: { - default: false, - type: 'boolean' - }, - FunctionDeclaration: { - default: true, - type: 'boolean' - }, - FunctionExpression: { - default: false, - type: 'boolean' - }, - MethodDefinition: { - default: false, - type: 'boolean' - } - }, - type: 'object' - } - }, - type: 'object' -}; - -const getOption = (context, baseObject, option, key) => { - if (!_lodash.default.has(context, `options[0][${option}][${key}]`)) { - return baseObject.properties[key].default; - } - - return context.options[0][option][key]; -}; - -const getOptions = context => { - return { - exemptEmptyFunctions: context.options[0] ? context.options[0].exemptEmptyFunctions : false, - publicOnly: (baseObj => { - const publicOnly = _lodash.default.get(context, 'options[0].publicOnly'); - - if (!publicOnly) { - return false; - } - - return Object.keys(baseObj.properties).reduce((obj, prop) => { - const opt = getOption(context, baseObj, 'publicOnly', prop); - obj[prop] = opt; - return obj; - }, {}); - })(OPTIONS_SCHEMA.properties.publicOnly.oneOf[1]), - require: (baseObj => { - return Object.keys(baseObj.properties).reduce((obj, prop) => { - const opt = getOption(context, baseObj, 'require', prop); - obj[prop] = opt; - return obj; - }, {}); - })(OPTIONS_SCHEMA.properties.require) - }; -}; - -var _default = { - create(context) { - (0, _warnRemovedSettings.default)(context, 'require-jsdoc'); - const sourceCode = context.getSourceCode(); - const settings = (0, _iterateJsdoc.getSettings)(context); - - const _getOptions = getOptions(context), - requireOption = _getOptions.require, - publicOnly = _getOptions.publicOnly, - exemptEmptyFunctions = _getOptions.exemptEmptyFunctions; - - const checkJsDoc = node => { - const jsDocNode = (0, _getJSDocComment.default)(sourceCode, node, settings); - - if (jsDocNode) { - return; - } - - if (exemptEmptyFunctions) { - const functionParameterNames = _jsdocUtils.default.getFunctionParameterNames(node); - - if (!functionParameterNames.length && !_jsdocUtils.default.hasReturnValue(node, context)) { - return; - } - } - - const fix = fixer => { - // Default to one line break if the `minLines`/`maxLines` settings allow - const lines = settings.minLines === 0 && settings.maxLines >= 1 ? 1 : settings.minLines; - - const indent = _jsdocUtils.default.getIndent(sourceCode); - - const insertion = `/**\n${indent}*\n${indent}*/${'\n'.repeat(lines)}${indent.slice(0, -1)}`; - const baseNode = ['ExportDefaultDeclaration', 'ExportNamedDeclaration'].includes(node.parent && node.parent.type) ? node.parent : node; - return fixer.insertTextBefore(baseNode, insertion); - }; - - const report = () => { - const loc = { - end: node.loc.start + 1, - start: node.loc.start - }; - context.report({ - fix, - loc, - messageId: 'missingJsDoc', - node - }); - }; - - if (publicOnly) { - const opt = { - ancestorsOnly: Boolean(_lodash.default.get(publicOnly, 'ancestorsOnly', false)), - esm: Boolean(_lodash.default.get(publicOnly, 'esm', true)), - initModuleExports: Boolean(_lodash.default.get(publicOnly, 'cjs', true)), - initWindow: Boolean(_lodash.default.get(publicOnly, 'window', false)) - }; - - const parseResult = _exportParser.default.parse(sourceCode.ast, node, opt); - - const exported = _exportParser.default.isExported(node, parseResult, opt); - - if (exported) { - report(); - } - } else { - report(); - } - }; // eslint-disable-next-line fp/no-mutating-assign - - - return Object.assign(_jsdocUtils.default.getContextObject(_jsdocUtils.default.enforcedContexts(context, []), checkJsDoc), { - ArrowFunctionExpression(node) { - if (!requireOption.ArrowFunctionExpression) { - return; - } - - if (!['VariableDeclarator', 'ExportDefaultDeclaration'].includes(node.parent.type)) { - return; - } - - checkJsDoc(node); - }, - - ClassDeclaration(node) { - if (!requireOption.ClassDeclaration) { - return; - } - - checkJsDoc(node); - }, - - ClassExpression(node) { - if (!requireOption.ClassExpression) { - return; - } - - checkJsDoc(node); - }, - - FunctionDeclaration(node) { - if (!requireOption.FunctionDeclaration) { - return; - } - - checkJsDoc(node); - }, - - FunctionExpression(node) { - if (requireOption.MethodDefinition && node.parent.type === 'MethodDefinition') { - checkJsDoc(node); - return; - } - - if (!requireOption.FunctionExpression) { - return; - } - - if (['VariableDeclarator', 'AssignmentExpression', 'ExportDefaultDeclaration'].includes(node.parent.type) || node.parent.type === 'Property' && node === node.parent.value) { - checkJsDoc(node); - } - } - - }); - }, - - meta: { - doc: { - category: 'Stylistic Issues', - description: 'Require JSDoc comments', - recommended: 'true', - url: 'https://github.com/gajus/eslint-plugin-jsdoc' - }, - fixable: 'code', - messages: { - missingJsDoc: 'Missing JSDoc comment.' - }, - schema: [OPTIONS_SCHEMA], - type: 'suggestion' - } -}; -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireJsdoc.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js.map deleted file mode 100644 index 9732bb76..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireJsdoc.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireJsdoc.js"],"names":["OPTIONS_SCHEMA","additionalProperties","properties","contexts","items","type","exemptEmptyFunctions","default","publicOnly","oneOf","ancestorsOnly","cjs","esm","window","require","ArrowFunctionExpression","ClassDeclaration","ClassExpression","FunctionDeclaration","FunctionExpression","MethodDefinition","getOption","context","baseObject","option","key","_","has","options","getOptions","baseObj","get","Object","keys","reduce","obj","prop","opt","create","sourceCode","getSourceCode","settings","requireOption","checkJsDoc","node","jsDocNode","functionParameterNames","jsdocUtils","getFunctionParameterNames","length","hasReturnValue","fix","fixer","lines","minLines","maxLines","indent","getIndent","insertion","repeat","slice","baseNode","includes","parent","insertTextBefore","report","loc","end","start","messageId","Boolean","initModuleExports","initWindow","parseResult","exportParser","parse","ast","exported","isExported","assign","getContextObject","enforcedContexts","value","meta","doc","category","description","recommended","url","fixable","messages","missingJsDoc","schema"],"mappings":"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","sourcesContent":["import _ from 'lodash';\nimport jsdocUtils from '../jsdocUtils';\nimport exportParser from '../exportParser';\nimport getJSDocComment from '../eslint/getJSDocComment';\nimport warnRemovedSettings from '../warnRemovedSettings';\nimport {getSettings} from '../iterateJsdoc';\n\nconst OPTIONS_SCHEMA = {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n exemptEmptyFunctions: {\n default: false,\n type: 'boolean',\n },\n publicOnly: {\n oneOf: [\n {\n default: false,\n type: 'boolean',\n },\n {\n additionalProperties: false,\n default: {},\n properties: {\n ancestorsOnly: {\n type: 'boolean',\n },\n cjs: {\n type: 'boolean',\n },\n esm: {\n type: 'boolean',\n },\n window: {\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n },\n require: {\n additionalProperties: false,\n default: {},\n properties: {\n ArrowFunctionExpression: {\n default: false,\n type: 'boolean',\n },\n ClassDeclaration: {\n default: false,\n type: 'boolean',\n },\n ClassExpression: {\n default: false,\n type: 'boolean',\n },\n FunctionDeclaration: {\n default: true,\n type: 'boolean',\n },\n FunctionExpression: {\n default: false,\n type: 'boolean',\n },\n MethodDefinition: {\n default: false,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n },\n type: 'object',\n};\n\nconst getOption = (context, baseObject, option, key) => {\n if (!_.has(context, `options[0][${option}][${key}]`)) {\n return baseObject.properties[key].default;\n }\n\n return context.options[0][option][key];\n};\n\nconst getOptions = (context) => {\n return {\n exemptEmptyFunctions: context.options[0] ? context.options[0].exemptEmptyFunctions : false,\n publicOnly: ((baseObj) => {\n const publicOnly = _.get(context, 'options[0].publicOnly');\n if (!publicOnly) {\n return false;\n }\n\n return Object.keys(baseObj.properties).reduce((obj, prop) => {\n const opt = getOption(context, baseObj, 'publicOnly', prop);\n obj[prop] = opt;\n\n return obj;\n }, {});\n })(OPTIONS_SCHEMA.properties.publicOnly.oneOf[1]),\n require: ((baseObj) => {\n return Object.keys(baseObj.properties).reduce((obj, prop) => {\n const opt = getOption(context, baseObj, 'require', prop);\n obj[prop] = opt;\n\n return obj;\n }, {});\n })(OPTIONS_SCHEMA.properties.require),\n };\n};\n\nexport default {\n create (context) {\n warnRemovedSettings(context, 'require-jsdoc');\n\n const sourceCode = context.getSourceCode();\n const settings = getSettings(context);\n\n const {require: requireOption, publicOnly, exemptEmptyFunctions} = getOptions(context);\n\n const checkJsDoc = (node) => {\n const jsDocNode = getJSDocComment(sourceCode, node, settings);\n\n if (jsDocNode) {\n return;\n }\n\n if (exemptEmptyFunctions) {\n const functionParameterNames = jsdocUtils.getFunctionParameterNames(node);\n if (!functionParameterNames.length && !jsdocUtils.hasReturnValue(node, context)) {\n return;\n }\n }\n\n const fix = (fixer) => {\n // Default to one line break if the `minLines`/`maxLines` settings allow\n const lines = settings.minLines === 0 && settings.maxLines >= 1 ? 1 : settings.minLines;\n const indent = jsdocUtils.getIndent(sourceCode);\n const insertion = `/**\\n${indent}*\\n${indent}*/${'\\n'.repeat(lines)}${indent.slice(0, -1)}`;\n const baseNode = [\n 'ExportDefaultDeclaration', 'ExportNamedDeclaration',\n ].includes(node.parent && node.parent.type) ? node.parent : node;\n\n return fixer.insertTextBefore(baseNode, insertion);\n };\n\n const report = () => {\n const loc = {\n end: node.loc.start + 1,\n start: node.loc.start,\n };\n context.report({\n fix,\n loc,\n messageId: 'missingJsDoc',\n node,\n });\n };\n\n if (publicOnly) {\n const opt = {\n ancestorsOnly: Boolean(_.get(publicOnly, 'ancestorsOnly', false)),\n esm: Boolean(_.get(publicOnly, 'esm', true)),\n initModuleExports: Boolean(_.get(publicOnly, 'cjs', true)),\n initWindow: Boolean(_.get(publicOnly, 'window', false)),\n };\n const parseResult = exportParser.parse(sourceCode.ast, node, opt);\n const exported = exportParser.isExported(node, parseResult, opt);\n\n if (exported) {\n report();\n }\n } else {\n report();\n }\n };\n\n // eslint-disable-next-line fp/no-mutating-assign\n return Object.assign(\n jsdocUtils.getContextObject(jsdocUtils.enforcedContexts(context, []), checkJsDoc),\n {\n ArrowFunctionExpression (node) {\n if (!requireOption.ArrowFunctionExpression) {\n return;\n }\n\n if (!['VariableDeclarator', 'ExportDefaultDeclaration'].includes(node.parent.type)) {\n return;\n }\n\n checkJsDoc(node);\n },\n\n ClassDeclaration (node) {\n if (!requireOption.ClassDeclaration) {\n return;\n }\n\n checkJsDoc(node);\n },\n\n ClassExpression (node) {\n if (!requireOption.ClassExpression) {\n return;\n }\n\n checkJsDoc(node);\n },\n\n FunctionDeclaration (node) {\n if (!requireOption.FunctionDeclaration) {\n return;\n }\n\n checkJsDoc(node);\n },\n\n FunctionExpression (node) {\n if (requireOption.MethodDefinition && node.parent.type === 'MethodDefinition') {\n checkJsDoc(node);\n\n return;\n }\n\n if (!requireOption.FunctionExpression) {\n return;\n }\n\n if (\n ['VariableDeclarator', 'AssignmentExpression', 'ExportDefaultDeclaration'].includes(node.parent.type) ||\n node.parent.type === 'Property' && node === node.parent.value\n ) {\n checkJsDoc(node);\n }\n },\n },\n );\n },\n meta: {\n doc: {\n category: 'Stylistic Issues',\n description: 'Require JSDoc comments',\n recommended: 'true',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc',\n },\n\n fixable: 'code',\n\n messages: {\n missingJsDoc: 'Missing JSDoc comment.',\n },\n\n schema: [\n OPTIONS_SCHEMA,\n ],\n\n type: 'suggestion',\n },\n};\n"],"file":"requireJsdoc.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParam.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParam.js deleted file mode 100644 index 6fcf85df..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParam.js +++ /dev/null @@ -1,120 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - utils -}) => { - const functionParameterNames = utils.getFunctionParameterNames(); - const jsdocParameterNames = utils.getJsdocTags('param'); - - if (!jsdocParameterNames) { - return; - } - - if (utils.avoidDocs()) { - return; - } // Param type is specified by type in @type - - - if (utils.hasTag('type')) { - return; - } - - const preferredTagName = utils.getPreferredTagName({ - tagName: 'param' - }); - - const findExpectedIndex = (jsdocTags, indexAtFunctionParams) => { - const functionTags = jsdocTags.filter(({ - tag - }) => { - return tag === preferredTagName; - }); - let expectedIndex = jsdocTags.length; - jsdocTags.forEach((tag, index) => { - if (tag.tag === preferredTagName) { - expectedIndex = index; - - if (functionTags.indexOf(tag) < indexAtFunctionParams) { - expectedIndex += 1; - } - } - }); - return expectedIndex; - }; - - const missingTags = []; - functionParameterNames.forEach((functionParameterName, functionParameterIdx) => { - if (['', ''].includes(functionParameterName)) { - return; - } - - if (jsdocParameterNames && !jsdocParameterNames.find(({ - name - }) => { - return name === functionParameterName; - })) { - missingTags.push({ - functionParameterIdx, - functionParameterName - }); - } - }); - - const fixAll = (missings, tags) => { - missings.forEach(({ - functionParameterIdx, - functionParameterName - }) => { - const expectedIdx = findExpectedIndex(tags, functionParameterIdx); - tags.splice(expectedIdx, 0, { - name: functionParameterName, - tag: preferredTagName - }); - }); - }; - - missingTags.forEach(({ - functionParameterName - }, index) => { - // Fix all missing tags the first time. - const fixer = index > 0 ? null : () => { - if (!jsdoc.tags) { - jsdoc.tags = []; - } - - fixAll(missingTags, jsdoc.tags); - }; - utils.reportJSDoc(`Missing JSDoc @${preferredTagName} "${functionParameterName}" declaration.`, null, fixer); - }); -}, { - meta: { - fixable: 'code', - schema: [{ - additionalProperties: false, - properties: { - exemptedBy: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireParam.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParam.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParam.js.map deleted file mode 100644 index 5af7da65..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParam.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireParam.js"],"names":["jsdoc","utils","functionParameterNames","getFunctionParameterNames","jsdocParameterNames","getJsdocTags","avoidDocs","hasTag","preferredTagName","getPreferredTagName","tagName","findExpectedIndex","jsdocTags","indexAtFunctionParams","functionTags","filter","tag","expectedIndex","length","forEach","index","indexOf","missingTags","functionParameterName","functionParameterIdx","includes","find","name","push","fixAll","missings","tags","expectedIdx","splice","fixer","reportJSDoc","meta","fixable","schema","additionalProperties","properties","exemptedBy","items","type"],"mappings":"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","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n jsdoc,\n utils,\n}) => {\n const functionParameterNames = utils.getFunctionParameterNames();\n const jsdocParameterNames = utils.getJsdocTags('param');\n if (!jsdocParameterNames) {\n return;\n }\n\n if (utils.avoidDocs()) {\n return;\n }\n\n // Param type is specified by type in @type\n if (utils.hasTag('type')) {\n return;\n }\n\n const preferredTagName = utils.getPreferredTagName({tagName: 'param'});\n\n const findExpectedIndex = (jsdocTags, indexAtFunctionParams) => {\n const functionTags = jsdocTags.filter(({tag}) => {\n return tag === preferredTagName;\n });\n let expectedIndex = jsdocTags.length;\n jsdocTags.forEach((tag, index) => {\n if (tag.tag === preferredTagName) {\n expectedIndex = index;\n if (functionTags.indexOf(tag) < indexAtFunctionParams) {\n expectedIndex += 1;\n }\n }\n });\n\n return expectedIndex;\n };\n\n const missingTags = [];\n\n functionParameterNames.forEach((functionParameterName, functionParameterIdx) => {\n if (['', ''].includes(functionParameterName)) {\n return;\n }\n\n if (jsdocParameterNames && !jsdocParameterNames.find(({name}) => {\n return name === functionParameterName;\n })) {\n missingTags.push({\n functionParameterIdx,\n functionParameterName,\n });\n }\n });\n\n const fixAll = (missings, tags) => {\n missings.forEach(({functionParameterIdx, functionParameterName}) => {\n const expectedIdx = findExpectedIndex(tags, functionParameterIdx);\n tags.splice(expectedIdx, 0, {\n name: functionParameterName,\n tag: preferredTagName,\n });\n });\n };\n\n missingTags.forEach(({functionParameterName}, index) => {\n // Fix all missing tags the first time.\n const fixer = index > 0 ? null : () => {\n if (!jsdoc.tags) {\n jsdoc.tags = [];\n }\n\n fixAll(missingTags, jsdoc.tags);\n };\n utils.reportJSDoc(`Missing JSDoc @${preferredTagName} \"${functionParameterName}\" declaration.`, null, fixer);\n });\n}, {\n meta: {\n fixable: 'code',\n schema: [\n {\n additionalProperties: false,\n properties: {\n exemptedBy: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireParam.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamDescription.js deleted file mode 100644 index 48bf27b3..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamDescription.js +++ /dev/null @@ -1,42 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('param', (jsdocParameter, targetTagName) => { - if (!jsdocParameter.description) { - report(`Missing JSDoc @${targetTagName} "${jsdocParameter.name}" description.`, null, jsdocParameter); - } - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireParamDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamDescription.js.map deleted file mode 100644 index 8b4e3eb4..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireParamDescription.js"],"names":["report","utils","forEachPreferredTag","jsdocParameter","targetTagName","description","name","contextDefaults","meta","schema","additionalProperties","properties","contexts","items","type"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,OAA1B,EAAmC,CAACC,cAAD,EAAiBC,aAAjB,KAAmC;AACpE,QAAI,CAACD,cAAc,CAACE,WAApB,EAAiC;AAC/BL,MAAAA,MAAM,CACH,kBAAiBI,aAAc,KAAID,cAAc,CAACG,IAAK,gBADpD,EAEJ,IAFI,EAGJH,cAHI,CAAN;AAKD;AACF,GARD;AASD,CAbc,EAaZ;AACDI,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLC,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CADJ;AAeJA,IAAAA,IAAI,EAAE;AAfF;AAFL,CAbY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('param', (jsdocParameter, targetTagName) => {\n if (!jsdocParameter.description) {\n report(\n `Missing JSDoc @${targetTagName} \"${jsdocParameter.name}\" description.`,\n null,\n jsdocParameter,\n );\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireParamDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamName.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamName.js deleted file mode 100644 index c235c287..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamName.js +++ /dev/null @@ -1,42 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('param', (jsdocParameter, targetTagName) => { - if (jsdocParameter.tag && jsdocParameter.name === '') { - report(`There must be an identifier after @${targetTagName} ${jsdocParameter.type === '' ? 'type' : 'tag'}.`, null, jsdocParameter); - } - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireParamName.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamName.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamName.js.map deleted file mode 100644 index 7822e03c..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamName.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireParamName.js"],"names":["report","utils","forEachPreferredTag","jsdocParameter","targetTagName","tag","name","type","contextDefaults","meta","schema","additionalProperties","properties","contexts","items"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,OAA1B,EAAmC,CAACC,cAAD,EAAiBC,aAAjB,KAAmC;AACpE,QAAID,cAAc,CAACE,GAAf,IAAsBF,cAAc,CAACG,IAAf,KAAwB,EAAlD,EAAsD;AACpDN,MAAAA,MAAM,CACH,sCAAqCI,aAAc,IAAGD,cAAc,CAACI,IAAf,KAAwB,EAAxB,GAA6B,MAA7B,GAAsC,KAAM,GAD/F,EAEJ,IAFI,EAGJJ,cAHI,CAAN;AAKD;AACF,GARD;AASD,CAbc,EAaZ;AACDK,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLP,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CADJ;AAeJA,IAAAA,IAAI,EAAE;AAfF;AAFL,CAbY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('param', (jsdocParameter, targetTagName) => {\n if (jsdocParameter.tag && jsdocParameter.name === '') {\n report(\n `There must be an identifier after @${targetTagName} ${jsdocParameter.type === '' ? 'type' : 'tag'}.`,\n null,\n jsdocParameter,\n );\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireParamName.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamType.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamType.js deleted file mode 100644 index 19449539..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamType.js +++ /dev/null @@ -1,42 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('param', (jsdocParameter, targetTagName) => { - if (!jsdocParameter.type) { - report(`Missing JSDoc @${targetTagName} "${jsdocParameter.name}" type.`, null, jsdocParameter); - } - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireParamType.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamType.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamType.js.map deleted file mode 100644 index a91b4b41..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireParamType.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireParamType.js"],"names":["report","utils","forEachPreferredTag","jsdocParameter","targetTagName","type","name","contextDefaults","meta","schema","additionalProperties","properties","contexts","items"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,OAA1B,EAAmC,CAACC,cAAD,EAAiBC,aAAjB,KAAmC;AACpE,QAAI,CAACD,cAAc,CAACE,IAApB,EAA0B;AACxBL,MAAAA,MAAM,CACH,kBAAiBI,aAAc,KAAID,cAAc,CAACG,IAAK,SADpD,EAEJ,IAFI,EAGJH,cAHI,CAAN;AAKD;AACF,GARD;AASD,CAbc,EAaZ;AACDI,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLR,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CADJ;AAeJA,IAAAA,IAAI,EAAE;AAfF;AAFL,CAbY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('param', (jsdocParameter, targetTagName) => {\n if (!jsdocParameter.type) {\n report(\n `Missing JSDoc @${targetTagName} \"${jsdocParameter.name}\" type.`,\n null,\n jsdocParameter,\n );\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireParamType.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireProperty.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireProperty.js deleted file mode 100644 index c1754ce9..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireProperty.js +++ /dev/null @@ -1,61 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - utils -}) => { - const propertyAssociatedTags = utils.filterTags(({ - tag - }) => { - return ['typedef', 'namespace'].includes(tag); - }); - - if (!propertyAssociatedTags.length) { - return; - } - - const targetTagName = utils.getPreferredTagName({ - tagName: 'property' - }); - - if (utils.hasATag([targetTagName])) { - return; - } - - propertyAssociatedTags.forEach(propertyAssociatedTag => { - if (!['object', 'Object', 'PlainObject'].includes(propertyAssociatedTag.type)) { - return; - } - - utils.reportJSDoc(`Missing JSDoc @${targetTagName}.`, null, () => { - const line = jsdoc.tags[jsdoc.tags.length - 1].line + 1; - jsdoc.tags.push({ - description: '', - line, - name: '', - optional: false, - tag: targetTagName, - type: '' - }); - }); - }); -}, { - iterateAllJsdocs: true, - meta: { - fixable: 'code', - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireProperty.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireProperty.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireProperty.js.map deleted file mode 100644 index d82e747f..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireProperty.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireProperty.js"],"names":["jsdoc","utils","propertyAssociatedTags","filterTags","tag","includes","length","targetTagName","getPreferredTagName","tagName","hasATag","forEach","propertyAssociatedTag","type","reportJSDoc","line","tags","push","description","name","optional","iterateAllJsdocs","meta","fixable"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,KAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJ,QAAMC,sBAAsB,GAAGD,KAAK,CAACE,UAAN,CAAiB,CAAC;AAACC,IAAAA;AAAD,GAAD,KAAW;AACzD,WAAO,CAAC,SAAD,EAAY,WAAZ,EAAyBC,QAAzB,CAAkCD,GAAlC,CAAP;AACD,GAF8B,CAA/B;;AAGA,MAAI,CAACF,sBAAsB,CAACI,MAA5B,EAAoC;AAClC;AACD;;AACD,QAAMC,aAAa,GAAGN,KAAK,CAACO,mBAAN,CAA0B;AAACC,IAAAA,OAAO,EAAE;AAAV,GAA1B,CAAtB;;AAEA,MAAIR,KAAK,CAACS,OAAN,CAAc,CAACH,aAAD,CAAd,CAAJ,EAAoC;AAClC;AACD;;AAEDL,EAAAA,sBAAsB,CAACS,OAAvB,CAAgCC,qBAAD,IAA2B;AACxD,QAAI,CAAC,CAAC,QAAD,EAAW,QAAX,EAAqB,aAArB,EAAoCP,QAApC,CAA6CO,qBAAqB,CAACC,IAAnE,CAAL,EAA+E;AAC7E;AACD;;AACDZ,IAAAA,KAAK,CAACa,WAAN,CAAmB,kBAAiBP,aAAc,GAAlD,EAAsD,IAAtD,EAA4D,MAAM;AAChE,YAAMQ,IAAI,GAAGf,KAAK,CAACgB,IAAN,CAAWhB,KAAK,CAACgB,IAAN,CAAWV,MAAX,GAAoB,CAA/B,EAAkCS,IAAlC,GAAyC,CAAtD;AACAf,MAAAA,KAAK,CAACgB,IAAN,CAAWC,IAAX,CAAgB;AACdC,QAAAA,WAAW,EAAE,EADC;AAEdH,QAAAA,IAFc;AAGdI,QAAAA,IAAI,EAAE,EAHQ;AAIdC,QAAAA,QAAQ,EAAE,KAJI;AAKdhB,QAAAA,GAAG,EAAEG,aALS;AAMdM,QAAAA,IAAI,EAAE;AANQ,OAAhB;AAQD,KAVD;AAWD,GAfD;AAgBD,CAhCc,EAgCZ;AACDQ,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAE,MADL;AAEJV,IAAAA,IAAI,EAAE;AAFF;AAFL,CAhCY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n jsdoc,\n utils,\n}) => {\n const propertyAssociatedTags = utils.filterTags(({tag}) => {\n return ['typedef', 'namespace'].includes(tag);\n });\n if (!propertyAssociatedTags.length) {\n return;\n }\n const targetTagName = utils.getPreferredTagName({tagName: 'property'});\n\n if (utils.hasATag([targetTagName])) {\n return;\n }\n\n propertyAssociatedTags.forEach((propertyAssociatedTag) => {\n if (!['object', 'Object', 'PlainObject'].includes(propertyAssociatedTag.type)) {\n return;\n }\n utils.reportJSDoc(`Missing JSDoc @${targetTagName}.`, null, () => {\n const line = jsdoc.tags[jsdoc.tags.length - 1].line + 1;\n jsdoc.tags.push({\n description: '',\n line,\n name: '',\n optional: false,\n tag: targetTagName,\n type: '',\n });\n });\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n fixable: 'code',\n type: 'suggestion',\n },\n});\n"],"file":"requireProperty.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyDescription.js deleted file mode 100644 index 5a70cc06..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyDescription.js +++ /dev/null @@ -1,30 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('property', (jsdoc, targetTagName) => { - if (!jsdoc.description) { - report(`Missing JSDoc @${targetTagName} "${jsdoc.name}" description.`, null, jsdoc); - } - }); -}, { - iterateAllJsdocs: true, - meta: { - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requirePropertyDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyDescription.js.map deleted file mode 100644 index 9c98435b..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requirePropertyDescription.js"],"names":["report","utils","forEachPreferredTag","jsdoc","targetTagName","description","name","iterateAllJsdocs","meta","type"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,UAA1B,EAAsC,CAACC,KAAD,EAAQC,aAAR,KAA0B;AAC9D,QAAI,CAACD,KAAK,CAACE,WAAX,EAAwB;AACtBL,MAAAA,MAAM,CACH,kBAAiBI,aAAc,KAAID,KAAK,CAACG,IAAK,gBAD3C,EAEJ,IAFI,EAGJH,KAHI,CAAN;AAKD;AACF,GARD;AASD,CAbc,EAaZ;AACDI,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,IAAI,EAAE;AADF;AAFL,CAbY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('property', (jsdoc, targetTagName) => {\n if (!jsdoc.description) {\n report(\n `Missing JSDoc @${targetTagName} \"${jsdoc.name}\" description.`,\n null,\n jsdoc,\n );\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n type: 'suggestion',\n },\n});\n"],"file":"requirePropertyDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyName.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyName.js deleted file mode 100644 index 4cdbcb42..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyName.js +++ /dev/null @@ -1,30 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('property', (jsdoc, targetTagName) => { - if (jsdoc.tag && jsdoc.name === '') { - report(`There must be an identifier after @${targetTagName} ${jsdoc.type === '' ? 'type' : 'tag'}.`, null, jsdoc); - } - }); -}, { - iterateAllJsdocs: true, - meta: { - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requirePropertyName.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyName.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyName.js.map deleted file mode 100644 index 254a00e6..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyName.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requirePropertyName.js"],"names":["report","utils","forEachPreferredTag","jsdoc","targetTagName","tag","name","type","iterateAllJsdocs","meta"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,UAA1B,EAAsC,CAACC,KAAD,EAAQC,aAAR,KAA0B;AAC9D,QAAID,KAAK,CAACE,GAAN,IAAaF,KAAK,CAACG,IAAN,KAAe,EAAhC,EAAoC;AAClCN,MAAAA,MAAM,CACH,sCAAqCI,aAAc,IAAGD,KAAK,CAACI,IAAN,KAAe,EAAf,GAAoB,MAApB,GAA6B,KAAM,GADtF,EAEJ,IAFI,EAGJJ,KAHI,CAAN;AAKD;AACF,GARD;AASD,CAbc,EAaZ;AACDK,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJF,IAAAA,IAAI,EAAE;AADF;AAFL,CAbY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('property', (jsdoc, targetTagName) => {\n if (jsdoc.tag && jsdoc.name === '') {\n report(\n `There must be an identifier after @${targetTagName} ${jsdoc.type === '' ? 'type' : 'tag'}.`,\n null,\n jsdoc,\n );\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n type: 'suggestion',\n },\n});\n"],"file":"requirePropertyName.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyType.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyType.js deleted file mode 100644 index 758910ed..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyType.js +++ /dev/null @@ -1,30 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('property', (jsdoc, targetTagName) => { - if (!jsdoc.type) { - report(`Missing JSDoc @${targetTagName} "${jsdoc.name}" type.`, null, jsdoc); - } - }); -}, { - iterateAllJsdocs: true, - meta: { - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requirePropertyType.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyType.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyType.js.map deleted file mode 100644 index 9370642a..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requirePropertyType.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requirePropertyType.js"],"names":["report","utils","forEachPreferredTag","jsdoc","targetTagName","type","name","iterateAllJsdocs","meta"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,UAA1B,EAAsC,CAACC,KAAD,EAAQC,aAAR,KAA0B;AAC9D,QAAI,CAACD,KAAK,CAACE,IAAX,EAAiB;AACfL,MAAAA,MAAM,CACH,kBAAiBI,aAAc,KAAID,KAAK,CAACG,IAAK,SAD3C,EAEJ,IAFI,EAGJH,KAHI,CAAN;AAKD;AACF,GARD;AASD,CAbc,EAaZ;AACDI,EAAAA,gBAAgB,EAAE,IADjB;AAEDC,EAAAA,IAAI,EAAE;AACJH,IAAAA,IAAI,EAAE;AADF;AAFL,CAbY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('property', (jsdoc, targetTagName) => {\n if (!jsdoc.type) {\n report(\n `Missing JSDoc @${targetTagName} \"${jsdoc.name}\" type.`,\n null,\n jsdoc,\n );\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n type: 'suggestion',\n },\n});\n"],"file":"requirePropertyType.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturns.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturns.js deleted file mode 100644 index 953622ee..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturns.js +++ /dev/null @@ -1,143 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -var _warnRemovedSettings = _interopRequireDefault(require("../warnRemovedSettings")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } - -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } - -function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - -/** - * We can skip checking for a return value, in case the documentation is inherited - * or the method is either a constructor or an abstract method. - * - * In either of these cases the return value is optional or not defined. - * - * @param {*} utils - * a reference to the utils which are used to probe if a tag is present or not. - * @returns {boolean} - * true in case deep checking can be skipped; otherwise false. - */ -const canSkip = utils => { - return utils.hasATag([// inheritdoc implies that all documentation is inherited - // see https://jsdoc.app/tags-inheritdoc.html - // - // Abstract methods are by definition incomplete, - // so it is not an error if it declares a return value but does not implement it. - 'abstract', 'virtual', // Constructors do not have a return value by definition (https://jsdoc.app/tags-class.html) - // So we can bail out here, too. - 'class', 'constructor', // Return type is specified by type in @type - 'type', // This seems to imply a class as well - 'interface']) || utils.isConstructor() || // Though ESLint avoided getters: https://github.com/eslint/eslint/blob/master/lib/rules/valid-jsdoc.js#L435 - // ... getters seem that they should, unlike setters, always return: - utils.isSetter() || utils.avoidDocs(); -}; - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils, - context -}) => { - (0, _warnRemovedSettings.default)(context, 'require-returns'); // A preflight check. We do not need to run a deep check - // in case the @returns comment is optional or undefined. - - if (canSkip(utils)) { - return; - } - - const _ref = context.options[0] || {}, - _ref$forceRequireRetu = _ref.forceRequireReturn, - forceRequireReturn = _ref$forceRequireRetu === void 0 ? false : _ref$forceRequireRetu, - _ref$forceReturnsWith = _ref.forceReturnsWithAsync, - forceReturnsWithAsync = _ref$forceReturnsWith === void 0 ? false : _ref$forceReturnsWith; - - const tagName = utils.getPreferredTagName({ - tagName: 'returns' - }); - - if (!tagName) { - return; - } - - const tags = utils.getTags(tagName); - - if (tags.length > 1) { - report(`Found more than one @${tagName} declaration.`); - } - - const iteratingFunction = utils.isIteratingFunction(); // In case the code returns something, we expect a return value in JSDoc. - - const _tags = _slicedToArray(tags, 1), - tag = _tags[0]; - - const missingReturnTag = typeof tag === 'undefined' || tag === null; - - const shouldReport = () => { - if (!missingReturnTag) { - return false; - } - - if (forceRequireReturn && (iteratingFunction || utils.isVirtualFunction())) { - return true; - } - - const isAsync = !iteratingFunction && utils.hasTag('async') || iteratingFunction && utils.isAsync(); - - if (forceReturnsWithAsync && isAsync) { - return true; - } - - return !isAsync && iteratingFunction && utils.hasReturnValue(); - }; - - if (shouldReport()) { - report(`Missing JSDoc @${tagName} declaration.`); - } -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - }, - exemptedBy: { - items: { - type: 'string' - }, - type: 'array' - }, - forceRequireReturn: { - default: false, - type: 'boolean' - }, - forceReturnsWithAsync: { - default: false, - type: 'boolean' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireReturns.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturns.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturns.js.map deleted file mode 100644 index bae88c36..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturns.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireReturns.js"],"names":["canSkip","utils","hasATag","isConstructor","isSetter","avoidDocs","report","context","options","forceRequireReturn","forceReturnsWithAsync","tagName","getPreferredTagName","tags","getTags","length","iteratingFunction","isIteratingFunction","tag","missingReturnTag","shouldReport","isVirtualFunction","isAsync","hasTag","hasReturnValue","contextDefaults","meta","schema","additionalProperties","properties","contexts","items","type","exemptedBy","default"],"mappings":"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","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\nimport warnRemovedSettings from '../warnRemovedSettings';\n\n/**\n * We can skip checking for a return value, in case the documentation is inherited\n * or the method is either a constructor or an abstract method.\n *\n * In either of these cases the return value is optional or not defined.\n *\n * @param {*} utils\n * a reference to the utils which are used to probe if a tag is present or not.\n * @returns {boolean}\n * true in case deep checking can be skipped; otherwise false.\n */\nconst canSkip = (utils) => {\n return utils.hasATag([\n // inheritdoc implies that all documentation is inherited\n // see https://jsdoc.app/tags-inheritdoc.html\n //\n // Abstract methods are by definition incomplete,\n // so it is not an error if it declares a return value but does not implement it.\n 'abstract',\n 'virtual',\n\n // Constructors do not have a return value by definition (https://jsdoc.app/tags-class.html)\n // So we can bail out here, too.\n 'class',\n 'constructor',\n\n // Return type is specified by type in @type\n 'type',\n\n // This seems to imply a class as well\n 'interface',\n ]) ||\n utils.isConstructor() ||\n\n // Though ESLint avoided getters: https://github.com/eslint/eslint/blob/master/lib/rules/valid-jsdoc.js#L435\n // ... getters seem that they should, unlike setters, always return:\n utils.isSetter() ||\n utils.avoidDocs();\n};\n\nexport default iterateJsdoc(({\n report,\n utils,\n context,\n}) => {\n warnRemovedSettings(context, 'require-returns');\n\n // A preflight check. We do not need to run a deep check\n // in case the @returns comment is optional or undefined.\n if (canSkip(utils)) {\n return;\n }\n\n const {\n forceRequireReturn = false,\n forceReturnsWithAsync = false,\n } = context.options[0] || {};\n\n const tagName = utils.getPreferredTagName({tagName: 'returns'});\n if (!tagName) {\n return;\n }\n const tags = utils.getTags(tagName);\n\n if (tags.length > 1) {\n report(`Found more than one @${tagName} declaration.`);\n }\n\n const iteratingFunction = utils.isIteratingFunction();\n\n // In case the code returns something, we expect a return value in JSDoc.\n const [tag] = tags;\n const missingReturnTag = typeof tag === 'undefined' || tag === null;\n\n const shouldReport = () => {\n if (!missingReturnTag) {\n return false;\n }\n\n if (forceRequireReturn && (\n iteratingFunction || utils.isVirtualFunction()\n )) {\n return true;\n }\n\n const isAsync = !iteratingFunction && utils.hasTag('async') ||\n iteratingFunction && utils.isAsync();\n\n if (forceReturnsWithAsync && isAsync) {\n return true;\n }\n\n return !isAsync && iteratingFunction && utils.hasReturnValue();\n };\n\n if (shouldReport()) {\n report(`Missing JSDoc @${tagName} declaration.`);\n }\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n exemptedBy: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n forceRequireReturn: {\n default: false,\n type: 'boolean',\n },\n forceReturnsWithAsync: {\n default: false,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireReturns.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsCheck.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsCheck.js deleted file mode 100755 index 917afadc..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsCheck.js +++ /dev/null @@ -1,74 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const canSkip = (utils, settings) => { - const voidingTags = [// An abstract function is by definition incomplete - // so it is perfectly fine if a return is documented but - // not present within the function. - // A subclass may inherit the doc and implement the - // missing return. - 'abstract', 'virtual', // A constructor function returns `this` by default, so may be `@returns` - // tag indicating this but no explicit return - 'class', 'constructor', 'interface']; - - if (settings.mode === 'closure') { - // Structural Interface in GCC terms, equivalent to @interface tag as far as this rule is concerned - voidingTags.push('record'); - } - - return utils.hasATag(voidingTags) || utils.isConstructor() || utils.classHasTag('interface') || settings.mode === 'closure' && utils.classHasTag('record'); -}; - -var _default = (0, _iterateJsdoc.default)(({ - report, - settings, - utils -}) => { - if (canSkip(utils, settings)) { - return; - } - - if (utils.isAsync()) { - return; - } - - const tagName = utils.getPreferredTagName({ - tagName: 'returns' - }); - - if (!tagName) { - return; - } - - const tags = utils.getTags(tagName); - - if (tags.length === 0) { - return; - } - - if (tags.length > 1) { - report(`Found more than one @${tagName} declaration.`); - return; - } // In case a return value is declared in JSDoc, we also expect one in the code. - - - if (utils.hasDefinedTypeReturnTag(tags[0]) && !utils.hasReturnValue()) { - report(`JSDoc @${tagName} declaration present but return expression not available in function.`); - } -}, { - meta: { - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireReturnsCheck.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsCheck.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsCheck.js.map deleted file mode 100644 index bf969090..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsCheck.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireReturnsCheck.js"],"names":["canSkip","utils","settings","voidingTags","mode","push","hasATag","isConstructor","classHasTag","report","isAsync","tagName","getPreferredTagName","tags","getTags","length","hasDefinedTypeReturnTag","hasReturnValue","meta","type"],"mappings":";;;;;;;AAAA;;;;AAEA,MAAMA,OAAO,GAAG,CAACC,KAAD,EAAQC,QAAR,KAAqB;AACnC,QAAMC,WAAW,GAAG,CAClB;AACA;AACA;AACA;AACA;AACA,YANkB,EAOlB,SAPkB,EASlB;AACA;AACA,SAXkB,EAYlB,aAZkB,EAalB,WAbkB,CAApB;;AAgBA,MAAID,QAAQ,CAACE,IAAT,KAAkB,SAAtB,EAAiC;AAC/B;AACAD,IAAAA,WAAW,CAACE,IAAZ,CAAiB,QAAjB;AACD;;AAED,SAAOJ,KAAK,CAACK,OAAN,CAAcH,WAAd,KACLF,KAAK,CAACM,aAAN,EADK,IAELN,KAAK,CAACO,WAAN,CAAkB,WAAlB,CAFK,IAGLN,QAAQ,CAACE,IAAT,KAAkB,SAAlB,IAA+BH,KAAK,CAACO,WAAN,CAAkB,QAAlB,CAHjC;AAID,CA1BD;;eA4Be,2BAAa,CAAC;AAC3BC,EAAAA,MAD2B;AAE3BP,EAAAA,QAF2B;AAG3BD,EAAAA;AAH2B,CAAD,KAItB;AACJ,MAAID,OAAO,CAACC,KAAD,EAAQC,QAAR,CAAX,EAA8B;AAC5B;AACD;;AAED,MAAID,KAAK,CAACS,OAAN,EAAJ,EAAqB;AACnB;AACD;;AAED,QAAMC,OAAO,GAAGV,KAAK,CAACW,mBAAN,CAA0B;AAACD,IAAAA,OAAO,EAAE;AAAV,GAA1B,CAAhB;;AACA,MAAI,CAACA,OAAL,EAAc;AACZ;AACD;;AACD,QAAME,IAAI,GAAGZ,KAAK,CAACa,OAAN,CAAcH,OAAd,CAAb;;AAEA,MAAIE,IAAI,CAACE,MAAL,KAAgB,CAApB,EAAuB;AACrB;AACD;;AAED,MAAIF,IAAI,CAACE,MAAL,GAAc,CAAlB,EAAqB;AACnBN,IAAAA,MAAM,CAAE,wBAAuBE,OAAQ,eAAjC,CAAN;AAEA;AACD,GAvBG,CAyBJ;;;AACA,MAAIV,KAAK,CAACe,uBAAN,CAA8BH,IAAI,CAAC,CAAD,CAAlC,KAA0C,CAACZ,KAAK,CAACgB,cAAN,EAA/C,EAAuE;AACrER,IAAAA,MAAM,CAAE,UAASE,OAAQ,uEAAnB,CAAN;AACD;AACF,CAjCc,EAiCZ;AACDO,EAAAA,IAAI,EAAE;AACJC,IAAAA,IAAI,EAAE;AADF;AADL,CAjCY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nconst canSkip = (utils, settings) => {\n const voidingTags = [\n // An abstract function is by definition incomplete\n // so it is perfectly fine if a return is documented but\n // not present within the function.\n // A subclass may inherit the doc and implement the\n // missing return.\n 'abstract',\n 'virtual',\n\n // A constructor function returns `this` by default, so may be `@returns`\n // tag indicating this but no explicit return\n 'class',\n 'constructor',\n 'interface',\n ];\n\n if (settings.mode === 'closure') {\n // Structural Interface in GCC terms, equivalent to @interface tag as far as this rule is concerned\n voidingTags.push('record');\n }\n\n return utils.hasATag(voidingTags) ||\n utils.isConstructor() ||\n utils.classHasTag('interface') ||\n settings.mode === 'closure' && utils.classHasTag('record');\n};\n\nexport default iterateJsdoc(({\n report,\n settings,\n utils,\n}) => {\n if (canSkip(utils, settings)) {\n return;\n }\n\n if (utils.isAsync()) {\n return;\n }\n\n const tagName = utils.getPreferredTagName({tagName: 'returns'});\n if (!tagName) {\n return;\n }\n const tags = utils.getTags(tagName);\n\n if (tags.length === 0) {\n return;\n }\n\n if (tags.length > 1) {\n report(`Found more than one @${tagName} declaration.`);\n\n return;\n }\n\n // In case a return value is declared in JSDoc, we also expect one in the code.\n if (utils.hasDefinedTypeReturnTag(tags[0]) && !utils.hasReturnValue()) {\n report(`JSDoc @${tagName} declaration present but return expression not available in function.`);\n }\n}, {\n meta: {\n type: 'suggestion',\n },\n});\n"],"file":"requireReturnsCheck.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsDescription.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsDescription.js deleted file mode 100644 index f742bb88..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsDescription.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('returns', (jsdocTag, targetTagName) => { - const type = jsdocTag.type && jsdocTag.type.trim(); - - if (type === 'void' || type === 'undefined') { - return; - } - - if (!jsdocTag.description) { - report(`Missing JSDoc @${targetTagName} description.`, null, jsdocTag); - } - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireReturnsDescription.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsDescription.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsDescription.js.map deleted file mode 100644 index b9e05aef..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsDescription.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireReturnsDescription.js"],"names":["report","utils","forEachPreferredTag","jsdocTag","targetTagName","type","trim","description","contextDefaults","meta","schema","additionalProperties","properties","contexts","items"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,SAA1B,EAAqC,CAACC,QAAD,EAAWC,aAAX,KAA6B;AAChE,UAAMC,IAAI,GAAGF,QAAQ,CAACE,IAAT,IAAiBF,QAAQ,CAACE,IAAT,CAAcC,IAAd,EAA9B;;AAEA,QAAID,IAAI,KAAK,MAAT,IAAmBA,IAAI,KAAK,WAAhC,EAA6C;AAC3C;AACD;;AAED,QAAI,CAACF,QAAQ,CAACI,WAAd,EAA2B;AACzBP,MAAAA,MAAM,CAAE,kBAAiBI,aAAc,eAAjC,EAAiD,IAAjD,EAAuDD,QAAvD,CAAN;AACD;AACF,GAVD;AAWD,CAfc,EAeZ;AACDK,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLT,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CADJ;AAeJA,IAAAA,IAAI,EAAE;AAfF;AAFL,CAfY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('returns', (jsdocTag, targetTagName) => {\n const type = jsdocTag.type && jsdocTag.type.trim();\n\n if (type === 'void' || type === 'undefined') {\n return;\n }\n\n if (!jsdocTag.description) {\n report(`Missing JSDoc @${targetTagName} description.`, null, jsdocTag);\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireReturnsDescription.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsType.js b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsType.js deleted file mode 100644 index ae472ea3..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsType.js +++ /dev/null @@ -1,42 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _default = (0, _iterateJsdoc.default)(({ - report, - utils -}) => { - utils.forEachPreferredTag('returns', (jsdocTag, targetTagName) => { - if (!jsdocTag.type) { - report(`Missing JSDoc @${targetTagName} type.`, null, jsdocTag); - } - }); -}, { - contextDefaults: true, - meta: { - schema: [{ - additionalProperties: false, - properties: { - contexts: { - items: { - type: 'string' - }, - type: 'array' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=requireReturnsType.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsType.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsType.js.map deleted file mode 100644 index a1b91a3a..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/requireReturnsType.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/requireReturnsType.js"],"names":["report","utils","forEachPreferredTag","jsdocTag","targetTagName","type","contextDefaults","meta","schema","additionalProperties","properties","contexts","items"],"mappings":";;;;;;;AAAA;;;;eAEe,2BAAa,CAAC;AAC3BA,EAAAA,MAD2B;AAE3BC,EAAAA;AAF2B,CAAD,KAGtB;AACJA,EAAAA,KAAK,CAACC,mBAAN,CAA0B,SAA1B,EAAqC,CAACC,QAAD,EAAWC,aAAX,KAA6B;AAChE,QAAI,CAACD,QAAQ,CAACE,IAAd,EAAoB;AAClBL,MAAAA,MAAM,CAAE,kBAAiBI,aAAc,QAAjC,EAA0C,IAA1C,EAAgDD,QAAhD,CAAN;AACD;AACF,GAJD;AAKD,CATc,EASZ;AACDG,EAAAA,eAAe,EAAE,IADhB;AAEDC,EAAAA,IAAI,EAAE;AACJC,IAAAA,MAAM,EAAE,CACN;AACEC,MAAAA,oBAAoB,EAAE,KADxB;AAEEC,MAAAA,UAAU,EAAE;AACVC,QAAAA,QAAQ,EAAE;AACRC,UAAAA,KAAK,EAAE;AACLP,YAAAA,IAAI,EAAE;AADD,WADC;AAIRA,UAAAA,IAAI,EAAE;AAJE;AADA,OAFd;AAUEA,MAAAA,IAAI,EAAE;AAVR,KADM,CADJ;AAeJA,IAAAA,IAAI,EAAE;AAfF;AAFL,CATY,C","sourcesContent":["import iterateJsdoc from '../iterateJsdoc';\n\nexport default iterateJsdoc(({\n report,\n utils,\n}) => {\n utils.forEachPreferredTag('returns', (jsdocTag, targetTagName) => {\n if (!jsdocTag.type) {\n report(`Missing JSDoc @${targetTagName} type.`, null, jsdocTag);\n }\n });\n}, {\n contextDefaults: true,\n meta: {\n schema: [\n {\n additionalProperties: false,\n properties: {\n contexts: {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"requireReturnsType.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/validTypes.js b/node_modules/eslint-plugin-jsdoc/dist/rules/validTypes.js deleted file mode 100644 index d37528e9..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/validTypes.js +++ /dev/null @@ -1,148 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = void 0; - -var _jsdoctypeparser = require("jsdoctypeparser"); - -var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc")); - -var _warnRemovedSettings = _interopRequireDefault(require("../warnRemovedSettings")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const asExpression = /as\s+/u; - -var _default = (0, _iterateJsdoc.default)(({ - jsdoc, - report, - utils, - context -}) => { - (0, _warnRemovedSettings.default)(context, 'valid-types'); - - const _ref = context.options[0] || {}, - _ref$allowEmptyNamepa = _ref.allowEmptyNamepaths, - allowEmptyNamepaths = _ref$allowEmptyNamepa === void 0 ? true : _ref$allowEmptyNamepa, - _ref$checkSeesForName = _ref.checkSeesForNamepaths, - checkSeesForNamepaths = _ref$checkSeesForName === void 0 ? false : _ref$checkSeesForName; - - if (!jsdoc.tags) { - return; - } - - jsdoc.tags.forEach(tag => { - const validNamepathParsing = function validNamepathParsing(namepath, tagName) { - try { - (0, _jsdoctypeparser.parse)(namepath); - } catch (error) { - let handled = false; - - if (tagName) { - if (['memberof', 'memberof!'].includes(tagName)) { - const endChar = namepath.slice(-1); - - if (['#', '.', '~'].includes(endChar)) { - try { - (0, _jsdoctypeparser.parse)(namepath.slice(0, -1)); - handled = true; - } catch (memberofError) {// Use the original error for including the whole type - } - } - } else if (tagName === 'borrows') { - const startChar = namepath.charAt(); - - if (['#', '.', '~'].includes(startChar)) { - try { - (0, _jsdoctypeparser.parse)(namepath.slice(1)); - handled = true; - } catch (memberofError) {// Use the original error for including the whole type - } - } - } - } - - if (!handled) { - report(`Syntax error in namepath: ${namepath}`, null, tag); - return false; - } - } - - return true; - }; - - const validTypeParsing = function validTypeParsing(type) { - try { - (0, _jsdoctypeparser.parse)(type); - } catch (error) { - report(`Syntax error in type: ${type}`, null, tag); - return false; - } - - return true; - }; - - const hasTypePosition = utils.tagMightHaveTypePosition(tag.tag) && Boolean(tag.type); - const mustHaveTypePosition = utils.tagMustHaveTypePosition(tag.tag); - const hasNameOrNamepathPosition = utils.tagMightHaveNamePosition(tag.tag) && Boolean(tag.name) && !(tag.tag === 'see' && !checkSeesForNamepaths); - const mustHaveNameOrNamepathPosition = utils.tagMustHaveNamePosition(tag.tag) && !allowEmptyNamepaths; - const hasEither = utils.tagMightHaveEitherTypeOrNamePosition(tag.tag) && hasTypePosition || hasNameOrNamepathPosition; - const mustHaveEither = utils.tagMustHaveEitherTypeOrNamePosition(tag.tag); - - if (tag.tag === 'borrows') { - const thisNamepath = tag.description.replace(asExpression, ''); - - if (!asExpression.test(tag.description) || !thisNamepath) { - report(`@borrows must have an "as" expression. Found "${tag.description}"`, null, tag); - return; - } - - if (validNamepathParsing(thisNamepath, 'borrows')) { - const thatNamepath = tag.name; - validNamepathParsing(thatNamepath); - } - } else { - if (mustHaveEither && !hasEither && !mustHaveTypePosition) { - report(`Tag @${tag.tag} must have either a type or namepath`, null, tag); - return; - } - - if (hasTypePosition) { - validTypeParsing(tag.type); - } else if (mustHaveTypePosition) { - report(`Tag @${tag.tag} must have a type`, null, tag); - } - - if (hasNameOrNamepathPosition) { - validNamepathParsing(tag.name, tag.tag); - } else if (mustHaveNameOrNamepathPosition) { - report(`Tag @${tag.tag} must have a name/namepath`, null, tag); - } - } - }); -}, { - iterateAllJsdocs: true, - meta: { - schema: [{ - additionalProperies: false, - properties: { - allowEmptyNamepaths: { - default: true, - type: 'boolean' - }, - checkSeesForNamepaths: { - default: false, - type: 'boolean' - } - }, - type: 'object' - }], - type: 'suggestion' - } -}); - -exports.default = _default; -module.exports = exports.default; -//# sourceMappingURL=validTypes.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/rules/validTypes.js.map b/node_modules/eslint-plugin-jsdoc/dist/rules/validTypes.js.map deleted file mode 100644 index 3e38caa6..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/rules/validTypes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../src/rules/validTypes.js"],"names":["asExpression","jsdoc","report","utils","context","options","allowEmptyNamepaths","checkSeesForNamepaths","tags","forEach","tag","validNamepathParsing","namepath","tagName","error","handled","includes","endChar","slice","memberofError","startChar","charAt","validTypeParsing","type","hasTypePosition","tagMightHaveTypePosition","Boolean","mustHaveTypePosition","tagMustHaveTypePosition","hasNameOrNamepathPosition","tagMightHaveNamePosition","name","mustHaveNameOrNamepathPosition","tagMustHaveNamePosition","hasEither","tagMightHaveEitherTypeOrNamePosition","mustHaveEither","tagMustHaveEitherTypeOrNamePosition","thisNamepath","description","replace","test","thatNamepath","iterateAllJsdocs","meta","schema","additionalProperies","properties","default"],"mappings":"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","sourcesContent":["import {parse} from 'jsdoctypeparser';\nimport iterateJsdoc from '../iterateJsdoc';\nimport warnRemovedSettings from '../warnRemovedSettings';\n\nconst asExpression = /as\\s+/u;\n\nexport default iterateJsdoc(({\n jsdoc,\n report,\n utils,\n context,\n}) => {\n warnRemovedSettings(context, 'valid-types');\n\n const {\n allowEmptyNamepaths = true,\n checkSeesForNamepaths = false,\n } = context.options[0] || {};\n\n if (!jsdoc.tags) {\n return;\n }\n jsdoc.tags.forEach((tag) => {\n const validNamepathParsing = function (namepath, tagName) {\n try {\n parse(namepath);\n } catch (error) {\n let handled = false;\n\n if (tagName) {\n if (['memberof', 'memberof!'].includes(tagName)) {\n const endChar = namepath.slice(-1);\n if (['#', '.', '~'].includes(endChar)) {\n try {\n parse(namepath.slice(0, -1));\n handled = true;\n } catch (memberofError) {\n // Use the original error for including the whole type\n }\n }\n } else if (tagName === 'borrows') {\n const startChar = namepath.charAt();\n if (['#', '.', '~'].includes(startChar)) {\n try {\n parse(namepath.slice(1));\n handled = true;\n } catch (memberofError) {\n // Use the original error for including the whole type\n }\n }\n }\n }\n\n if (!handled) {\n report(`Syntax error in namepath: ${namepath}`, null, tag);\n\n return false;\n }\n }\n\n return true;\n };\n\n const validTypeParsing = function (type) {\n try {\n parse(type);\n } catch (error) {\n report(`Syntax error in type: ${type}`, null, tag);\n\n return false;\n }\n\n return true;\n };\n\n const hasTypePosition = utils.tagMightHaveTypePosition(tag.tag) && Boolean(tag.type);\n const mustHaveTypePosition = utils.tagMustHaveTypePosition(tag.tag);\n\n const hasNameOrNamepathPosition = utils.tagMightHaveNamePosition(tag.tag) && Boolean(tag.name) && !(tag.tag === 'see' && !checkSeesForNamepaths);\n const mustHaveNameOrNamepathPosition = utils.tagMustHaveNamePosition(tag.tag) && !allowEmptyNamepaths;\n\n const hasEither = utils.tagMightHaveEitherTypeOrNamePosition(tag.tag) && hasTypePosition || hasNameOrNamepathPosition;\n const mustHaveEither = utils.tagMustHaveEitherTypeOrNamePosition(tag.tag);\n\n if (tag.tag === 'borrows') {\n const thisNamepath = tag.description.replace(asExpression, '');\n\n if (!asExpression.test(tag.description) || !thisNamepath) {\n report(`@borrows must have an \"as\" expression. Found \"${tag.description}\"`, null, tag);\n\n return;\n }\n\n if (validNamepathParsing(thisNamepath, 'borrows')) {\n const thatNamepath = tag.name;\n\n validNamepathParsing(thatNamepath);\n }\n } else {\n if (mustHaveEither && !hasEither && !mustHaveTypePosition) {\n report(`Tag @${tag.tag} must have either a type or namepath`, null, tag);\n\n return;\n }\n\n if (hasTypePosition) {\n validTypeParsing(tag.type);\n } else if (mustHaveTypePosition) {\n report(`Tag @${tag.tag} must have a type`, null, tag);\n }\n\n if (hasNameOrNamepathPosition) {\n validNamepathParsing(tag.name, tag.tag);\n } else if (mustHaveNameOrNamepathPosition) {\n report(`Tag @${tag.tag} must have a name/namepath`, null, tag);\n }\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n schema: [\n {\n additionalProperies: false,\n properties: {\n allowEmptyNamepaths: {\n default: true,\n type: 'boolean',\n },\n checkSeesForNamepaths: {\n default: false,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"file":"validTypes.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/tagNames.js b/node_modules/eslint-plugin-jsdoc/dist/tagNames.js deleted file mode 100644 index 5374ebd1..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/tagNames.js +++ /dev/null @@ -1,148 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.typeScriptTags = exports.closureTags = exports.jsdocTags = void 0; - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -const jsdocTagsUndocumented = { - // Undocumented but present; see - // https://github.com/jsdoc/jsdoc/issues/1283#issuecomment-516816802 - // https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js#L594 - modifies: [] -}; - -const jsdocTags = _objectSpread({}, jsdocTagsUndocumented, { - abstract: ['virtual'], - access: [], - alias: [], - async: [], - augments: ['extends'], - author: [], - borrows: [], - callback: [], - class: ['constructor'], - classdesc: [], - constant: ['const'], - constructs: [], - copyright: [], - default: ['defaultvalue'], - deprecated: [], - description: ['desc'], - enum: [], - event: [], - example: [], - exports: [], - external: ['host'], - file: ['fileoverview', 'overview'], - fires: ['emits'], - function: ['func', 'method'], - generator: [], - global: [], - hideconstructor: [], - ignore: [], - implements: [], - inheritdoc: [], - inner: [], - instance: [], - interface: [], - kind: [], - lends: [], - license: [], - listens: [], - member: ['var'], - memberof: [], - 'memberof!': [], - mixes: [], - mixin: [], - module: [], - name: [], - namespace: [], - override: [], - package: [], - param: ['arg', 'argument'], - private: [], - property: ['prop'], - protected: [], - public: [], - readonly: [], - requires: [], - returns: ['return'], - see: [], - since: [], - static: [], - summary: [], - this: [], - throws: ['exception'], - todo: [], - tutorial: [], - type: [], - typedef: [], - variation: [], - version: [], - yields: ['yield'] -}); - -exports.jsdocTags = jsdocTags; - -const typeScriptTags = _objectSpread({}, jsdocTags, { - // `@template` is also in TypeScript per: - // https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html#supported-jsdoc - template: [] -}); - -exports.typeScriptTags = typeScriptTags; -const undocumentedClosureTags = { - // These are in Closure source but not in jsdoc source nor in the Closure - // docs: https://github.com/google/closure-compiler/blob/master/src/com/google/javascript/jscomp/parsing/Annotation.java - closurePrimitive: [], - customElement: [], - expose: [], - hidden: [], - idGenerator: [], - meaning: [], - mixinClass: [], - mixinFunction: [], - ngInject: [], - owner: [], - typeSummary: [], - wizaction: [] -}; - -const closureTags = _objectSpread({}, typeScriptTags, {}, undocumentedClosureTags, { - // From https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler - // These are all recognized in https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js - // except for the experimental `noinline` and the casing differences noted below - // Defined as a synonym of `const` in jsdoc `definitions.js` - define: [], - dict: [], - export: [], - externs: [], - final: [], - // With casing distinct from jsdoc `definitions.js` - implicitCast: [], - // With casing distinct from jsdoc `definitions.js` - inheritDoc: [], - noalias: [], - nocollapse: [], - nocompile: [], - noinline: [], - nosideeffects: [], - polymer: [], - polymerBehavior: [], - preserve: [], - // Defined as a synonym of `interface` in jsdoc `definitions.js` - record: [], - struct: [], - suppress: [], - unrestricted: [] -}); - -exports.closureTags = closureTags; -//# sourceMappingURL=tagNames.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/tagNames.js.map b/node_modules/eslint-plugin-jsdoc/dist/tagNames.js.map deleted file mode 100644 index d291a868..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/tagNames.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/tagNames.js"],"names":["jsdocTagsUndocumented","modifies","jsdocTags","abstract","access","alias","async","augments","author","borrows","callback","class","classdesc","constant","constructs","copyright","default","deprecated","description","enum","event","example","exports","external","file","fires","function","generator","global","hideconstructor","ignore","implements","inheritdoc","inner","instance","interface","kind","lends","license","listens","member","memberof","mixes","mixin","module","name","namespace","override","package","param","private","property","protected","public","readonly","requires","returns","see","since","static","summary","this","throws","todo","tutorial","type","typedef","variation","version","yields","typeScriptTags","template","undocumentedClosureTags","closurePrimitive","customElement","expose","hidden","idGenerator","meaning","mixinClass","mixinFunction","ngInject","owner","typeSummary","wizaction","closureTags","define","dict","export","externs","final","implicitCast","inheritDoc","noalias","nocollapse","nocompile","noinline","nosideeffects","polymer","polymerBehavior","preserve","record","struct","suppress","unrestricted"],"mappings":"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","sourcesContent":["const jsdocTagsUndocumented = {\n // Undocumented but present; see\n // https://github.com/jsdoc/jsdoc/issues/1283#issuecomment-516816802\n // https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js#L594\n modifies: [],\n};\n\nconst jsdocTags = {\n ...jsdocTagsUndocumented,\n abstract: [\n 'virtual',\n ],\n access: [],\n alias: [],\n async: [],\n augments: [\n 'extends',\n ],\n author: [],\n borrows: [],\n callback: [],\n class: [\n 'constructor',\n ],\n classdesc: [],\n constant: [\n 'const',\n ],\n constructs: [],\n copyright: [],\n default: [\n 'defaultvalue',\n ],\n deprecated: [],\n description: [\n 'desc',\n ],\n enum: [],\n event: [],\n example: [],\n exports: [],\n external: [\n 'host',\n ],\n file: [\n 'fileoverview',\n 'overview',\n ],\n fires: [\n 'emits',\n ],\n function: [\n 'func',\n 'method',\n ],\n generator: [],\n global: [],\n hideconstructor: [],\n ignore: [],\n implements: [],\n inheritdoc: [],\n inner: [],\n instance: [],\n interface: [],\n kind: [],\n lends: [],\n license: [],\n listens: [],\n member: [\n 'var',\n ],\n memberof: [],\n 'memberof!': [],\n mixes: [],\n mixin: [],\n\n module: [],\n name: [],\n namespace: [],\n override: [],\n package: [],\n param: [\n 'arg',\n 'argument',\n ],\n private: [],\n property: [\n 'prop',\n ],\n protected: [],\n public: [],\n readonly: [],\n requires: [],\n returns: [\n 'return',\n ],\n see: [],\n since: [],\n static: [],\n summary: [],\n\n this: [],\n throws: [\n 'exception',\n ],\n todo: [],\n tutorial: [],\n type: [],\n typedef: [],\n variation: [],\n version: [],\n yields: [\n 'yield',\n ],\n};\n\nconst typeScriptTags = {\n ...jsdocTags,\n\n // `@template` is also in TypeScript per:\n // https://www.typescriptlang.org/docs/handbook/type-checking-javascript-files.html#supported-jsdoc\n template: [],\n};\n\nconst undocumentedClosureTags = {\n // These are in Closure source but not in jsdoc source nor in the Closure\n // docs: https://github.com/google/closure-compiler/blob/master/src/com/google/javascript/jscomp/parsing/Annotation.java\n closurePrimitive: [],\n customElement: [],\n expose: [],\n hidden: [],\n idGenerator: [],\n meaning: [],\n mixinClass: [],\n mixinFunction: [],\n ngInject: [],\n owner: [],\n typeSummary: [],\n wizaction: [],\n};\n\nconst closureTags = {\n ...typeScriptTags,\n ...undocumentedClosureTags,\n\n // From https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler\n // These are all recognized in https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js\n // except for the experimental `noinline` and the casing differences noted below\n\n // Defined as a synonym of `const` in jsdoc `definitions.js`\n define: [],\n\n dict: [],\n export: [],\n externs: [],\n final: [],\n\n // With casing distinct from jsdoc `definitions.js`\n implicitCast: [],\n\n // With casing distinct from jsdoc `definitions.js`\n inheritDoc: [],\n\n noalias: [],\n nocollapse: [],\n nocompile: [],\n noinline: [],\n nosideeffects: [],\n polymer: [],\n polymerBehavior: [],\n preserve: [],\n\n // Defined as a synonym of `interface` in jsdoc `definitions.js`\n record: [],\n\n struct: [],\n suppress: [],\n\n unrestricted: [],\n};\n\nexport {jsdocTags, closureTags, typeScriptTags};\n"],"file":"tagNames.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/warnRemovedSettings.js b/node_modules/eslint-plugin-jsdoc/dist/warnRemovedSettings.js deleted file mode 100644 index 6f0e15a7..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/warnRemovedSettings.js +++ /dev/null @@ -1,113 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = warnRemovedSettings; - -var _WarnSettings = _interopRequireDefault(require("./WarnSettings")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const warnSettings = (0, _WarnSettings.default)(); -/** - * @typedef {( - * "require-jsdoc" - * | "require-returns" - * | "valid-types" - * | "require-example" - * | "check-examples" - * )} RulesWithMovedSettings - */ - -/** - * @param {object} obj - * @param {string} property - * @returns {boolean} - */ - -const has = (obj, property) => { - return Object.prototype.hasOwnProperty.call(obj, property); -}; -/** - * - * @param {RulesWithMovedSettings} ruleName - * @returns {string[]} - */ - - -const getMovedSettings = ruleName => { - switch (ruleName) { - case 'require-jsdoc': - return ['exemptEmptyFunctions']; - - case 'require-returns': - return ['forceRequireReturn']; - - case 'valid-types': - return ['allowEmptyNamepaths', 'checkSeesForNamepaths']; - - case 'require-example': - return ['avoidExampleOnConstructors']; - - case 'check-examples': - return ['captionRequired', 'exampleCodeRegex', 'rejectExampleCodeRegex', 'allowInlineConfig', 'noDefaultExampleRules', 'matchingFileName', 'configFile', // The old name for `checkEslintrc` - 'eslintrcForExamples', 'baseConfig', 'reportUnusedDisableDirectives']; - } - /* istanbul ignore next */ - - - return []; -}; -/** - * @param {object} context - * @param {RulesWithMovedSettings} ruleName - */ - - -function warnRemovedSettings(context, ruleName) { - const movedSettings = getMovedSettings(ruleName); - - if (!context.settings || !context.settings.jsdoc) { - return; - } - - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = movedSettings[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - const setting = _step.value; - - if (has(context.settings.jsdoc, setting) && !warnSettings.hasBeenWarned(context, setting)) { - context.report({ - loc: { - start: { - column: 1, - line: 1 - } - }, - message: `\`settings.jsdoc.${setting}\` has been removed, ` + `use options in the rule \`${ruleName}\` instead.` - }); - warnSettings.markSettingAsWarned(context, setting); - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return != null) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } -} - -module.exports = exports.default; -//# sourceMappingURL=warnRemovedSettings.js.map \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/dist/warnRemovedSettings.js.map b/node_modules/eslint-plugin-jsdoc/dist/warnRemovedSettings.js.map deleted file mode 100644 index 0f1042be..00000000 --- a/node_modules/eslint-plugin-jsdoc/dist/warnRemovedSettings.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../src/warnRemovedSettings.js"],"names":["warnSettings","has","obj","property","Object","prototype","hasOwnProperty","call","getMovedSettings","ruleName","warnRemovedSettings","context","movedSettings","settings","jsdoc","setting","hasBeenWarned","report","loc","start","column","line","message","markSettingAsWarned"],"mappings":";;;;;;;AAAA;;;;AAEA,MAAMA,YAAY,GAAG,4BAArB;AAEA;;;;;;;;;;AAUA;;;;;;AAKA,MAAMC,GAAG,GAAG,CAACC,GAAD,EAAMC,QAAN,KAAmB;AAC7B,SAAOC,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,GAArC,EAA0CC,QAA1C,CAAP;AACD,CAFD;AAIA;;;;;;;AAKA,MAAMK,gBAAgB,GAAIC,QAAD,IAAc;AACrC,UAAQA,QAAR;AACA,SAAK,eAAL;AACE,aAAO,CAAC,sBAAD,CAAP;;AACF,SAAK,iBAAL;AACE,aAAO,CAAC,oBAAD,CAAP;;AACF,SAAK,aAAL;AACE,aAAO,CAAC,qBAAD,EAAwB,uBAAxB,CAAP;;AACF,SAAK,iBAAL;AACE,aAAO,CAAC,4BAAD,CAAP;;AACF,SAAK,gBAAL;AACE,aAAO,CACL,iBADK,EAEL,kBAFK,EAGL,wBAHK,EAIL,mBAJK,EAKL,uBALK,EAML,kBANK,EAOL,YAPK,EASL;AACA,2BAVK,EAWL,YAXK,EAYL,+BAZK,CAAP;AAVF;AA0BA;;;AACA,SAAO,EAAP;AACD,CA7BD;AA+BA;;;;;;AAIe,SAASC,mBAAT,CAA8BC,OAA9B,EAAuCF,QAAvC,EAAiD;AAC9D,QAAMG,aAAa,GAAGJ,gBAAgB,CAACC,QAAD,CAAtC;;AAEA,MAAI,CAACE,OAAO,CAACE,QAAT,IAAqB,CAACF,OAAO,CAACE,QAAR,CAAiBC,KAA3C,EAAkD;AAChD;AACD;;AAL6D;AAAA;AAAA;;AAAA;AAO9D,yBAAsBF,aAAtB,8HAAqC;AAAA,YAA1BG,OAA0B;;AACnC,UACEd,GAAG,CAACU,OAAO,CAACE,QAAR,CAAiBC,KAAlB,EAAyBC,OAAzB,CAAH,IACA,CAACf,YAAY,CAACgB,aAAb,CAA2BL,OAA3B,EAAoCI,OAApC,CAFH,EAGE;AACAJ,QAAAA,OAAO,CAACM,MAAR,CAAe;AACbC,UAAAA,GAAG,EAAE;AACHC,YAAAA,KAAK,EAAE;AACLC,cAAAA,MAAM,EAAE,CADH;AAELC,cAAAA,IAAI,EAAE;AAFD;AADJ,WADQ;AAObC,UAAAA,OAAO,EAAG,oBAAmBP,OAAQ,uBAA5B,GACN,6BAA4BN,QAAS;AAR3B,SAAf;AAUAT,QAAAA,YAAY,CAACuB,mBAAb,CAAiCZ,OAAjC,EAA0CI,OAA1C;AACD;AACF;AAxB6D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyB/D","sourcesContent":["import WarnSettings from './WarnSettings';\n\nconst warnSettings = WarnSettings();\n\n/**\n * @typedef {(\n * \"require-jsdoc\"\n * | \"require-returns\"\n * | \"valid-types\"\n * | \"require-example\"\n * | \"check-examples\"\n * )} RulesWithMovedSettings\n */\n\n/**\n * @param {object} obj\n * @param {string} property\n * @returns {boolean}\n */\nconst has = (obj, property) => {\n return Object.prototype.hasOwnProperty.call(obj, property);\n};\n\n/**\n *\n * @param {RulesWithMovedSettings} ruleName\n * @returns {string[]}\n */\nconst getMovedSettings = (ruleName) => {\n switch (ruleName) {\n case 'require-jsdoc':\n return ['exemptEmptyFunctions'];\n case 'require-returns':\n return ['forceRequireReturn'];\n case 'valid-types':\n return ['allowEmptyNamepaths', 'checkSeesForNamepaths'];\n case 'require-example':\n return ['avoidExampleOnConstructors'];\n case 'check-examples':\n return [\n 'captionRequired',\n 'exampleCodeRegex',\n 'rejectExampleCodeRegex',\n 'allowInlineConfig',\n 'noDefaultExampleRules',\n 'matchingFileName',\n 'configFile',\n\n // The old name for `checkEslintrc`\n 'eslintrcForExamples',\n 'baseConfig',\n 'reportUnusedDisableDirectives',\n ];\n }\n\n /* istanbul ignore next */\n return [];\n};\n\n/**\n * @param {object} context\n * @param {RulesWithMovedSettings} ruleName\n */\nexport default function warnRemovedSettings (context, ruleName) {\n const movedSettings = getMovedSettings(ruleName);\n\n if (!context.settings || !context.settings.jsdoc) {\n return;\n }\n\n for (const setting of movedSettings) {\n if (\n has(context.settings.jsdoc, setting) &&\n !warnSettings.hasBeenWarned(context, setting)\n ) {\n context.report({\n loc: {\n start: {\n column: 1,\n line: 1,\n },\n },\n message: `\\`settings.jsdoc.${setting}\\` has been removed, ` +\n `use options in the rule \\`${ruleName}\\` instead.`,\n });\n warnSettings.markSettingAsWarned(context, setting);\n }\n }\n}\n"],"file":"warnRemovedSettings.js"} \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/node_modules/.bin/jsdoctypeparser b/node_modules/eslint-plugin-jsdoc/node_modules/.bin/jsdoctypeparser deleted file mode 120000 index 9a093538..00000000 --- a/node_modules/eslint-plugin-jsdoc/node_modules/.bin/jsdoctypeparser +++ /dev/null @@ -1 +0,0 @@ -../../../jsdoctypeparser/bin/jsdoctypeparser \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/node_modules/.bin/semver b/node_modules/eslint-plugin-jsdoc/node_modules/.bin/semver deleted file mode 120000 index c3277a7a..00000000 --- a/node_modules/eslint-plugin-jsdoc/node_modules/.bin/semver +++ /dev/null @@ -1 +0,0 @@ -../../../semver/bin/semver.js \ No newline at end of file diff --git a/node_modules/eslint-plugin-jsdoc/package.json b/node_modules/eslint-plugin-jsdoc/package.json deleted file mode 100644 index 998336f2..00000000 --- a/node_modules/eslint-plugin-jsdoc/package.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "author": { - "email": "gajus@gajus.com", - "name": "Gajus Kuizinas", - "url": "http://gajus.com" - }, - "dependencies": { - "comment-parser": "^0.7.2", - "debug": "^4.1.1", - "jsdoctypeparser": "^6.1.0", - "lodash": "^4.17.15", - "regextras": "^0.7.0", - "semver": "^6.3.0", - "spdx-expression-parse": "^3.0.0" - }, - "description": "JSDoc linting rules for ESLint.", - "devDependencies": { - "@babel/cli": "^7.8.4", - "@babel/core": "^7.8.6", - "@babel/node": "^7.8.4", - "@babel/plugin-transform-flow-strip-types": "^7.8.3", - "@babel/preset-env": "^7.8.6", - "@babel/register": "^7.8.6", - "@typescript-eslint/parser": "^2.21.0", - "babel-eslint": "^10.1.0", - "babel-plugin-add-module-exports": "^1.0.2", - "babel-plugin-istanbul": "^6.0.0", - "chai": "^4.2.0", - "eslint": "6.8.0", - "eslint-config-canonical": "^19.0.3", - "gitdown": "^3.1.3", - "glob": "^7.1.6", - "husky": "^4.2.3", - "mocha": "^7.1.0", - "nyc": "^15.0.0", - "semantic-release": "^17.0.4", - "typescript": "^3.8.3" - }, - "engines": { - "node": ">=8" - }, - "husky": { - "hooks": { - "pre-push": "npm run lint && npm run test && npm run build && npm run check-readme" - } - }, - "keywords": [ - "eslint", - "plugin", - "jsdoc" - ], - "license": "BSD-3-Clause", - "main": "./dist/index.js", - "name": "eslint-plugin-jsdoc", - "peerDependencies": { - "eslint": "^6.0.0" - }, - "repository": { - "type": "git", - "url": "https://github.com/gajus/eslint-plugin-jsdoc" - }, - "scripts": { - "build": "rm -fr ./dist && NODE_ENV=production babel ./src --out-dir ./dist --copy-files --source-maps --ignore ./src/bin/*.js --no-copy-ignored", - "check-readme": "babel-node ./src/bin/generateReadme.js --check", - "create-readme": "babel-node ./src/bin/generateReadme.js", - "lint-fix": "eslint --report-unused-disable-directives --fix ./src ./test", - "lint": "eslint --report-unused-disable-directives ./src ./test", - "test-cov": "BABEL_ENV=test nyc mocha --recursive --require @babel/register --reporter progress --timeout 9000", - "test-no-cov": "BABEL_ENV=test mocha --recursive --require @babel/register --reporter progress --timeout 9000", - "test-index": "BABEL_ENV=test mocha --recursive --require @babel/register --reporter progress --timeout 9000 test/rules/index.js", - "test": "BABEL_ENV=test nyc --reporter text-summary mocha --recursive --require @babel/register --reporter progress --timeout 9000" - }, - "nyc": { - "require": [ - "@babel/register" - ], - "sourceMap": false, - "instrument": false, - "include": [ - "src/" - ], - "check-coverage": true, - "branches": 100, - "lines": 100, - "functions": 100, - "statements": 100 - }, - "version": "22.0.0" -} diff --git a/node_modules/eslint-plugin-jsx-a11y/.babelrc b/node_modules/eslint-plugin-jsx-a11y/.babelrc deleted file mode 100644 index 2159bf6e..00000000 --- a/node_modules/eslint-plugin-jsx-a11y/.babelrc +++ /dev/null @@ -1,13 +0,0 @@ -{ - "presets": [ - [ - "airbnb", - { - "targets": { - "node": 4 - } - } - ] - ], - "plugins": ["@babel/plugin-transform-flow-strip-types"] -} diff --git a/node_modules/eslint-plugin-jsx-a11y/.eslintignore b/node_modules/eslint-plugin-jsx-a11y/.eslintignore deleted file mode 100644 index 869feffc..00000000 --- a/node_modules/eslint-plugin-jsx-a11y/.eslintignore +++ /dev/null @@ -1,3 +0,0 @@ -node_modules/ -reports/ -lib/ diff --git a/node_modules/eslint-plugin-jsx-a11y/.eslintrc b/node_modules/eslint-plugin-jsx-a11y/.eslintrc deleted file mode 100644 index 01517707..00000000 --- a/node_modules/eslint-plugin-jsx-a11y/.eslintrc +++ /dev/null @@ -1,14 +0,0 @@ -{ - extends: [ - "airbnb-base", - "plugin:flowtype/recommended" - ], - parser: "babel-eslint", - plugins: [ - "flowtype" - ], - rules: { - 'max-len': 'off', - 'no-template-curly-in-string': 'off', - } -} diff --git a/node_modules/eslint-plugin-jsx-a11y/CHANGELOG.md b/node_modules/eslint-plugin-jsx-a11y/CHANGELOG.md deleted file mode 100644 index cad79914..00000000 --- a/node_modules/eslint-plugin-jsx-a11y/CHANGELOG.md +++ /dev/null @@ -1,408 +0,0 @@ -6.2.3 / 2019-06-30 -================= -- [617] Add @babel/runtime to the dependencies - -6.2.2 / 2019-06-29 -================= -- Update jsx-ast-utils to v2.2.1 -- Add @babel/cli to the dev dependencies -- Update ESLint to v6 -- Update jsx-ast-utils to 2.2.0 -- Update flow-bin to version 0.102.0 -- [589] Allow expression statements for attribute values in no-noninteractive-tabindexlow-bin-0.101.0 -- [583] Allow expression values in attributes by configurationrror -- [596] Adding a test case for no-static-element-interactionseper/flow-bin-0.101.0) Merge branch 'master' into greenkeeper/flow-bin-0.101.0 -- Only run branch test coverage on the master branch -- chore(package): update flow-bin to version 0.100.0 -- Allow select as a valid child of label. -- Allow Node 4 / ESLint 3 failure to unblock ESLint upgrade in PR #568 -- chore(package): update flow-bin to version 0.99.0 -- Remove rootDir from Jest path configs -- (fix) Template literals with undefined evaluate to the string undefined. -- adds more tests to “anchor-is-valid” -- Fixes “anchor-is-valid” false positive for hrefs starting with the word “javascript” -- chore(package): update eslint-plugin-flowtype to version 3.5.0 -- Modified no-static-element-interactions to pass on non-literal roles. -- Added isNonLiteralProperty util method -- [#399] Account for spread in parser options -- [552] control-has-associated-label should allow generic links -- [issue 392] ul role='list' test case -- chore(package): update eslint to version 5.15.2 -- chore(package): update flow-bin to version 0.95.0 -- chore(package): update expect to version 24.3.1 -- Fix typo: defintions > definitions -- docs: add proper title to links to axe website for media-has-caption -- docs: removes deprecated rule label-has-for -- docs: fix typo and couple grammatical errors in Readme -- Ignore null/undefined values in role-supports-aria-props rule -- Ignore undefined values in aria-proptypes rule -- Ignore null values in aria-proptypes rule -- set target for node 4 - -6.2.1 / 2019-02-03 -================= -- 9980e45 [fix] Prevent Error when JSXSpreadAttribute is passed to isSemanticRoleElement - -6.2.0 / 2019-01-25 -================= -- 5650674 [new rule] control-has-associated-label checks interactives for a label -- f234698 [docs] add How to manage IDs -- 9924d03 [docs] document jsx-a11y/label-has-associated-control assert option -- 77b9870 [docs] Add newlines below headings -- 8244e43 [docs] Add syntax highlighting to example -- 26f41c8 [docs] Change explanation for role="presentation" escape hatch -- 33a1f94 [fix] - Purely decorative emojis do not need descriptions. -- 29d20f7 [fix] (package): update emoji-regex to version 7.0.2 -- 0b63f73 [chore] (package): update flow-bin to version 0.88.0 -- baa1344 [fix] Disable jsx-a11y/label-has-for in recommended -- 2c5fb06 [chore] (package): update jscodeshift to version 0.6.0 -- 87debc0 [fix] corrected no-noninteractive-element-to-interactive-role.md file -- d56265b [chore] (package): update flow-bin to version 0.87.0 -- 477966f [fix] Update test for implicit role of `img` -- f484ce3 [fix] No implicit role for `` with `alt=""` -- 6c33bcb [fix] Add select to the list of default control elements in label-has-associated-control -- 011f8d9 [fix] Dialog and Alert roles can host keyboard listeners -- 0f6a8af [fix] More easier `plugin:jsx-a11y/{recommended,strict}` configs -- 3844248 [fix] Mark the replacement for label-has-for -- 93265cb [fix] normalizedValues to values -- 651366c [fix] Make aria-role case sensitive -- 56d3b9a [fix] [484] Fix role-has-required-aria-props for semantic elements like input[checkbox] -- 46e9abd [fix] Handle the type={truthy} case in jsx - -6.1.2 / 2018-10-05 -================= -- [fix] Add link-type styling recommendation to anchor-is-valid #486 -- [fix] `label-has-for`: `textarea`s are inputs too #470 - -6.1.1 / 2018-07-03 -================== -- [fix] aria-proptypes support for idlist, #454 -- [fix] Image with expanded props throws 'The prop must be a JSXAttribute collected by the AST parser.', #459 -- [fix] label-has-for: broken in v6.1.0, #455 - -6.1.0 / 2018-06-26 -================== -- [new] Support for eslint v5, #451 -- [new] aria-query updated to latest version -- [new] eslint-config-airbnb-base updated to the latest version -- [deprecate] The rule label-has-for is deprecated and replaced with label-has-associated-control -- [fix] heading-has-content updated to work with custom components, #431 -- [fix] aria-errormessage prop is now a valid ARIA property, #424 - -6.0.2 / 2017-06-28 -================== -- [fix] Prefix directories in `.npmignore` with `/` so it only matches the top-level directory - - -6.0.1 / 2017-06-28 -================== -- [temporary] Remove `src` and `flow` from package to resolve flow issues for consuming packages. - - -6.0.0 / 2017-06-05 -================= -- [new] Add rule `anchor-is-valid`. See documentation for configuration options. Thanks @AlmeroSteyn. -- [breaking] `href-no-hash` replaced with `anchor-is-valid` in the recommended and strict configs. Use the `invalidHref` aspect (active by default) in `anchor-is-valid` to continue to apply the behavior provided by `href-no-hash`. -- [breaking] Removed support for ESLint peer dependency at version ^2.10.2. -- [update] The rule `label-has-for` now allows inputs nested in label tags. Previously it was strict about requiring a `for` attribute. Thanks @ignatiusreza and @mjaltamirano. -- [update] New configuration for `interactive-supports-focus`. Recommended and strict configs for now contain a trimmed-down whitelist of roles that will be checked. -- [fix] Incompatibility between node version 4 and 5. Thanks @evilebottnawi. -- [fix] Missing README entry for `media-has-caption`. Thanks @ismail-syed. -- [fix] README updates explaining recommended and strict configs. Thanks @Donaldini. -- [fix] Updated to aria-query@0.7.0, which includes new ARIA 1.1 properties. Previously, the `aria-props` rule incorrectly threw errors for these new properties. - -5.1.1 / 2017-07-03 -================== - - [fix] revert v6 breaking changes unintentionally added in v5.1 (#283) - -5.1.0 / 2017-06-26 -================== - - [new] Support eslint v4. (#267) - - [new] `label-has-for`: add "required" option to allow customization (#240) - - [new] add `anchor-is-valid` (#224) - - [new] `interactive-supports-focus`: Split interactive supports focus into tabbable and focusable cases (#236) - - [new] `anchor-is-valid`: add `aspects` option (#251) - - [Deps] Bump aria-query to 0.7.0 - -5.0.3 / 2017-05-16 -================== -- [fix] Remove `flow` directory from `.npmignore` to accommodate explicit imports from `v5.0.2`. - - -5.0.2 / 2017-05-16 -================== -- [fix] Explicitly import flow types to resolve flow failures in consuming projects. - - -5.0.1 / 2017-05-07 -================== -- [fix] Polyfill Array.includes for node < 6 support. - - -5.0.0 / 2017-05-05 -================== -- [breaking] Refactor `img-has-alt` rule into `alt-text` rule -- [breaking] Rule `onclick-has-role` is removed. Replaced with `no-static-element-interactions` and `no-noninteractive-element-interactions`. -- [breaking] Rule `onclick-has-focus` is removed. Replaced with `interactive-supports-focus`. -- [new] - Add rule `media-has-caption` rule -- [new] - Add `ignoreNonDOM` option to `no-autofocus`. -- [new] - Add rule `no-interactive-element-to-noninteractive-role` -- [new] - Add rule `no-noninteractive-element-to-interactive-role` -- [new] - Add rule `no-noninteractive-tabindex` -- [new] - Configs split into "recommended" and "strict". -- [enhanced] - Configuration options added to `no-static-element-interactions` and `no-noninteractive-element-interactions`. Options allow for fine-tuning of elements and event handlers to check. - - -4.0.0 / 2017-02-04 -================== -Add new rules: -- `jsx-a11y/accessible-emoji` -- `jsx-a11y/aria-activedescendant-has-tabindex` -- `jsx-a11y/iframe-has-title` -- `jsx-a11y/no-autofocus` -- `jsx-a11y/no-distracting-elements` *(breaking: consolidated no-marquee and no-blink into this rule.)* -- `jsx-a11y/no-redundant-roles` -- [fix] - redundant-alt to only check full words -- [docs] - Documentation upgrades across the board. -- [new] - Add `ignoreNonDom` -- [dev] - Add script to scaffold new rule creation. - - -3.0.2 / 2016-12-14 -================== -- [fix] - make `aria-invalid` values true and false pass for rule `aria-proptypes` - -3.0.1 / 2016-10-11 -================== -- [breaking] - Update all rule schemas to accept objects. This allows a future schema expansion to not be a breaking change. -- [breaking] - All rules with schemas that accepted a string OR array, now only allows an array. -- [new] - `href-no-hash` accepts new schema property `specialLink` to check for custom `href` properties on elements. (fixes [#76](https://github.com/evcohen/eslint-plugin-jsx-a11y/issues/76)) -- [breaking][fix] - `img-has-alt` now prefers `alt=""` over `role="presentation"`. You can set both, but not just `role="presentation"` by itself to ensure a11y across all devices. - -Note - see [rule documentation](https://github.com/evcohen/eslint-plugin-jsx-a11y/tree/master/docs/rules) for updated schemas. - -2.2.3 / 2016-10-08 -================== -- [fix] - Add `switch` aria role. -- [devDependencies] - Updgrade dev dependencies and fix linting issues. - - -2.2.2 / 2016-09-12 -================== -- [fix] `x-has-content` rules now pass with children prop set. - - -2.2.1 / 2016-08-31 -================== -- [fix] Update `tablist` role to include missing property `aria-multiselectable`. - - -2.2.0 / 2016-08-26 -================== -- [new] Add `click-events-have-key-events` rule. -- [new] Add `no-static-element-interactions` rule. -- [devDependencies] Upgrade `eslint`, `eslint-config-airbnb`, `mocha` to latest. -- [lint] Fix all new linting errors with upgrade -- [nit] Use `error` syntax over `2` syntax in recommended config. - - -2.1.0 / 2016-08-10 -================== -- [fix] Require `aria-checked` for roles that are subclasses of `checkbox` -- [new] Add `anchor-has-content` rule. -- [refactor] Use new eslint rule syntax -- [new] Add support for custom words in `img-redundant-alt` (mainly for i18n). - - -2.0.1 / 2016-07-13 -================== -- [fix] JSXElement support in expression handlers for prop types. -- [fix] `heading-has-content`: dangerouslySetInnerHTML will pass. - - -2.0.0 / 2016-07-12 -================== -- [breaking] Scope `no-onchange` rule to select menu elements only. - - -1.5.5 / 2016-07-05 -================== -- [fix] Add `eslint` v3 as a `peerDependency`. - - -1.5.4 / 2016-07-05 -================== -- [fix] Add `eslint` as a `peerDependency`. - - -1.5.3 / 2016-06-16 -================== -- [fix] Fix crash when ```` for `role-supports-aria-props`. - - -1.5.2 / 2016-06-16 -================== -- [fix] Fix `img-redundant-alt` rule to use `getLiteralPropValue` from `jsx-ast-utils`. - - -1.5.1 / 2016-06-16 -================== -- [fix] Fix checking for undefined in `heading-has-content` for children content. - - -1.5.0 / 2016-06-16 -================== -- [new] Add [heading-has-content](docs/rules/heading-has-content.md) rule. -- [new] Add [html-has-lang](docs/rules/html-has-lang.md) rule. -- [new] Add [lang](docs/rules/lang.md) rule. -- [new] Add [no-marquee](docs/rules/no-marquee.md) rule. -- [new] Add [scope](docs/rules/scope.md) rule. - - -1.4.2 / 2016-06-10 -================== -- [new] Integrate with latest `jsx-ast-utils` to use `propName` function. More support for namespaced names on attributes and elements. - - -1.4.1 / 2016-06-10 -================== -- [fix] Handle spread props in `aria-unsupported-elements` and `role-supports-aria-props` when reporting. - - -1.4.0 / 2016-06-10 -================== -- [dependency] Integrate [jsx-ast-utils](https://github.com/evcohen/jsx-ast-utils) -- [fix] Better error reporting for aria-unsupported-elements indicating which prop to remove. - - -1.3.0 / 2016-06-05 -================== -- [new] Spelling suggestions for incorrect `aria-*` props -- [fix] Ensure `role` value is a string before converting to lowercase in `img-has-alt` rule. - - -1.2.3 / 2016-06-02 -================== -- [fix] Handle dynamic `tabIndex` expression values, but still retain validation logic for literal `tabIndex` values. - - -1.2.2 / 2016-05-20 -================== -- [fix] Fix checks involving the tabIndex attribute that do not account for integer literals - - -1.2.1 / 2016-05-19 -================== -- [fix] Avoid testing interactivity of wrapper components with same name but different casing -as DOM elements (such as `Button` vs `button`). - - -1.2.0 / 2016-05-06 -================== -- [new] Import all roles from DPUB-ARIA. - - -1.1.0 / 2016-05-06 -================== -- [new] Add expression value handler for `BinaryExpression` type. -- [new] Add expression value handler for `NewExpression` type. -- [new] Add expression value handler for `ObjectExpression` type. -- [fix] Throws error when getting an expression of type without a handler function. - - This is for more graceful error handling and better issue reporting. - - -1.0.4 / 2016-04-28 -================== -- [fix] Add expression value handler for `ConditionalExpression` type. - - -1.0.3 / 2016-04-25 -================== -- [fix] Fix typo in recommended rules for `onclick-has-focus`. - - -1.0.2 / 2016-04-20 -================== -- [fix] Add expression value handler for `ThisExpression` type. - - -1.0.1 / 2016-04-19 -================== -- [fix] Fix build to copy source JSON files to build output. - - -1.0.0 / 2016-04-19 -================== -- [breaking] Rename `img-uses-alt` to `img-has-alt` -- [breaking] Rename `onlick-uses-role` to `onclick-has-role` -- [breaking] Rename `mouse-events-map-to-key-events` to `mouse-events-have-key-events` -- [breaking] Rename `use-onblur-not-onchange` to `no-onchange` -- [breaking] Rename `label-uses-for` to `label-has-for` -- [breaking] Rename `redundant-alt` to `img-redundant-alt` -- [breaking] Rename `no-hash-href` to `href-no-hash` -- [breaking] Rename `valid-aria-role` to `aria-role` - -- [new] Implement `aria-props` rule -- [new] Implement `aria-proptypes` rule -- [new] Implement `aria-unsupported-elements` rule -- [new] Implement `onclick-has-focus` rule -- [new] Implement `role-has-required-aria-props` rule -- [new] Implement `role-supports-aria-props` rule -- [new] Implement `tabindex-no-positive` rule - - -0.6.2 / 2016-04-08 -================== -- [fix] Fix rule details for img-uses-alt: allow alt="" or role="presentation". - - -0.6.1 / 2016-04-07 -================== -- [fix] Do not infer interactivity of components that are not low-level DOM elements. - - -0.6.0 / 2016-04-06 -================== -- [breaking] Allow alt="" when role="presentation" on img-uses-alt rule. -- [new] More descriptive error messaging for img-uses-alt rule. - - -0.5.2 / 2016-04-05 -================== -- [fix] Handle token lists for valid-aria-role. - - -0.5.1 / 2016-04-05 -================== -- [fix] Handle null valued props for valid-aria-role. - - -0.5.0 / 2016-04-02 -================== -- [new] Implement valid-aria-role rule. Based on [AX_ARIA_01](https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules#ax_aria_01) - - -0.4.3 / 2016-03-29 -================== -- [fix] Handle LogicalExpression attribute types when extracting values. LogicalExpressions are of form `` - - -0.4.2 / 2016-03-24 -================== -- [fix] Allow component names of form `Object.Property` i.e. `UX.Layout` - - -0.3.0 / 2016-03-02 -================== -- [new] Implement [no-hash-href](docs/rules/no-hash-href.md) rule. -- [fix] Fixed TemplateLiteral AST value building to get more exact values from template strings. - - -0.2.0 / 2016-03-01 -================== -- [new] Implement [redunant-alt](docs/rules/redundant-alt.md) rule. - - -0.1.2 / 2016-03-01 -================== -- Initial pre-release. diff --git a/node_modules/eslint-plugin-jsx-a11y/LICENSE.md b/node_modules/eslint-plugin-jsx-a11y/LICENSE.md deleted file mode 100644 index a66c74b7..00000000 --- a/node_modules/eslint-plugin-jsx-a11y/LICENSE.md +++ /dev/null @@ -1,8 +0,0 @@ -The MIT License (MIT) -Copyright (c) 2016 Ethan Cohen - -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. diff --git a/node_modules/eslint-plugin-jsx-a11y/README.md b/node_modules/eslint-plugin-jsx-a11y/README.md deleted file mode 100644 index bc8c29f1..00000000 --- a/node_modules/eslint-plugin-jsx-a11y/README.md +++ /dev/null @@ -1,298 +0,0 @@ -

- - build status - - - npm version - - - license - - - Coverage Status - - - Total npm downloads - -

- -# eslint-plugin-jsx-a11y - -Static AST checker for accessibility rules on JSX elements. - -## Why? -Ryan Florence built out this awesome runtime-analysis tool called [react-a11y](https://github.com/reactjs/react-a11y). It is super useful. However, since you're probably already using linting in your project, this plugin comes for free and closer to the actual development process. Pairing this plugin with an editor lint plugin, you can bake accessibility standards into your application in real-time. - -**Note**: This project does not *replace* react-a11y, but can and should be used in conjunction with it. Static analysis tools cannot determine values of variables that are being placed in props before runtime, so linting will not fail if that value is undefined and/or does not pass the lint rule. - -## Installation - -**If you are installing this plugin via `eslint-config-airbnb`, please follow [these instructions](https://github.com/airbnb/javascript/tree/master/packages/eslint-config-airbnb#eslint-config-airbnb-1).** - -You'll first need to install [ESLint](http://eslint.org): - -```sh -# npm -npm install eslint --save-dev - -# yarn -yarn add eslint --dev -``` - -Next, install `eslint-plugin-jsx-a11y`: - -```sh -# npm -npm install eslint-plugin-jsx-a11y --save-dev - -# yarn -yarn add eslint-plugin-jsx-a11y --dev -``` - -**Note:** If you installed ESLint globally (using the `-g` flag in npm, or the `global` prefix in yarn) then you must also install `eslint-plugin-jsx-a11y` globally. - -## Usage - -Add `jsx-a11y` to the plugins section of your `.eslintrc` configuration file. You can omit the `eslint-plugin-` prefix: - -```json -{ - "plugins": [ - "jsx-a11y" - ] -} -``` - - -Then configure the rules you want to use under the rules section. - -```json -{ - "rules": { - "jsx-a11y/rule-name": 2 - } -} -``` - - -You can also enable all the recommended or strict rules at once. -Add `plugin:jsx-a11y/recommended` or `plugin:jsx-a11y/strict` in `extends`: - -```json -{ - "extends": [ - "plugin:jsx-a11y/recommended" - ] -} -``` - -## Supported Rules - -- [accessible-emoji](docs/rules/accessible-emoji.md): Enforce emojis are wrapped in and provide screenreader access. -- [alt-text](docs/rules/alt-text.md): Enforce all elements that require alternative text have meaningful information to relay back to end user. -- [anchor-has-content](docs/rules/anchor-has-content.md): Enforce all anchors to contain accessible content. -- [anchor-is-valid](docs/rules/anchor-is-valid.md): Enforce all anchors are valid, navigable elements. -- [aria-activedescendant-has-tabindex](docs/rules/aria-activedescendant-has-tabindex.md): Enforce elements with aria-activedescendant are tabbable. -- [aria-props](docs/rules/aria-props.md): Enforce all `aria-*` props are valid. -- [aria-proptypes](docs/rules/aria-proptypes.md): Enforce ARIA state and property values are valid. -- [aria-role](docs/rules/aria-role.md): Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role. -- [aria-unsupported-elements](docs/rules/aria-unsupported-elements.md): Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes. -- [click-events-have-key-events](docs/rules/click-events-have-key-events.md): Enforce a clickable non-interactive element has at least one keyboard event listener. -- [heading-has-content](docs/rules/heading-has-content.md): Enforce heading (`h1`, `h2`, etc) elements contain accessible content. -- [html-has-lang](docs/rules/html-has-lang.md): Enforce `` element has `lang` prop. -- [iframe-has-title](docs/rules/iframe-has-title.md): Enforce iframe elements have a title attribute. -- [img-redundant-alt](docs/rules/img-redundant-alt.md): Enforce `` alt prop does not contain the word "image", "picture", or "photo". -- [interactive-supports-focus](docs/rules/interactive-supports-focus.md): Enforce that elements with interactive handlers like `onClick` must be focusable. -- [label-has-associated-control](docs/rules/label-has-associated-control.md): Enforce that a `label` tag has a text label and an associated control. -- [lang](docs/rules/lang.md): Enforce lang attribute has a valid value. -- [media-has-caption](docs/rules/media-has-caption.md): Enforces that `