Update checked-in dependencies

This commit is contained in:
github-actions[bot] 2024-09-30 17:13:32 +00:00
parent 3fe5410805
commit 931cd264c2
72 changed files with 2295 additions and 1569 deletions

40
node_modules/.package-lock.json generated vendored
View file

@ -455,9 +455,9 @@
}
},
"node_modules/@eslint/js": {
"version": "9.11.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.0.tgz",
"integrity": "sha512-LPkkenkDqyzTFauZLLAPhIb48fj6drrfMvRGSL9tS3AcZBSVTllemLSNyCvHNNL2t797S/6DJNSIwRwXgMO/eQ==",
"version": "9.11.1",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.1.tgz",
"integrity": "sha512-/qu+TWz8WwPWc7/HcIJKi+c+MOm46GdVaSlTTQcaqaL53+GsoA6MxWp5PtTx48qbSP7ylM1Kn7nhvkugfJvRSA==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@ -762,8 +762,9 @@
}
},
"node_modules/@octokit/types": {
"version": "13.5.0",
"license": "MIT",
"version": "13.6.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.0.tgz",
"integrity": "sha512-CrooV/vKCXqwLa+osmHLIMUb87brpgUqlqkPGc6iE2wCkUvTrHiXFMhAKoDDaAAYJrtKtrFTgSQTg5nObBEaew==",
"dependencies": {
"@octokit/openapi-types": "^22.2.0"
}
@ -803,6 +804,12 @@
"dev": true,
"license": "0BSD"
},
"node_modules/@rtsao/scc": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
"integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==",
"dev": true
},
"node_modules/@schemastore/package": {
"version": "0.0.10",
"license": "MIT"
@ -2766,26 +2773,27 @@
}
},
"node_modules/eslint-plugin-import": {
"version": "2.29.1",
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz",
"integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==",
"version": "2.30.0",
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz",
"integrity": "sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==",
"dev": true,
"dependencies": {
"array-includes": "^3.1.7",
"array.prototype.findlastindex": "^1.2.3",
"@rtsao/scc": "^1.1.0",
"array-includes": "^3.1.8",
"array.prototype.findlastindex": "^1.2.5",
"array.prototype.flat": "^1.3.2",
"array.prototype.flatmap": "^1.3.2",
"debug": "^3.2.7",
"doctrine": "^2.1.0",
"eslint-import-resolver-node": "^0.3.9",
"eslint-module-utils": "^2.8.0",
"hasown": "^2.0.0",
"is-core-module": "^2.13.1",
"eslint-module-utils": "^2.9.0",
"hasown": "^2.0.2",
"is-core-module": "^2.15.1",
"is-glob": "^4.0.3",
"minimatch": "^3.1.2",
"object.fromentries": "^2.0.7",
"object.groupby": "^1.0.1",
"object.values": "^1.1.7",
"object.fromentries": "^2.0.8",
"object.groupby": "^1.0.3",
"object.values": "^1.2.0",
"semver": "^6.3.1",
"tsconfig-paths": "^3.15.0"
},

View file

@ -1,6 +1,6 @@
{
"name": "@eslint/js",
"version": "9.11.0",
"version": "9.11.1",
"description": "ESLint JavaScript language implementation",
"main": "./src/index.js",
"scripts": {},

View file

@ -1,8 +1,8 @@
import type { EndpointOptions } from "./EndpointOptions";
import type { OctokitResponse } from "./OctokitResponse";
import type { RequestInterface } from "./RequestInterface";
import type { RequestParameters } from "./RequestParameters";
import type { Route } from "./Route";
import type { EndpointOptions } from "./EndpointOptions.js";
import type { OctokitResponse } from "./OctokitResponse.js";
import type { RequestInterface } from "./RequestInterface.js";
import type { RequestParameters } from "./RequestParameters.js";
import type { Route } from "./Route.js";
/**
* Interface to implement complex authentication strategies for Octokit.
* An object Implementing the AuthInterface can directly be passed as the

View file

@ -1,7 +1,7 @@
import type { RequestHeaders } from "./RequestHeaders";
import type { RequestMethod } from "./RequestMethod";
import type { RequestParameters } from "./RequestParameters";
import type { Url } from "./Url";
import type { RequestHeaders } from "./RequestHeaders.js";
import type { RequestMethod } from "./RequestMethod.js";
import type { RequestParameters } from "./RequestParameters.js";
import type { Url } from "./Url.js";
/**
* The `.endpoint()` method is guaranteed to set all keys defined by RequestParameters
* as well as the method property.

View file

@ -1,8 +1,8 @@
import type { EndpointDefaults } from "./EndpointDefaults";
import type { RequestOptions } from "./RequestOptions";
import type { RequestParameters } from "./RequestParameters";
import type { Route } from "./Route";
import type { Endpoints } from "./generated/Endpoints";
import type { EndpointDefaults } from "./EndpointDefaults.js";
import type { RequestOptions } from "./RequestOptions.js";
import type { RequestParameters } from "./RequestParameters.js";
import type { Route } from "./Route.js";
import type { Endpoints } from "./generated/Endpoints.js";
export interface EndpointInterface<D extends object = object> {
/**
* Transforms a GitHub REST API endpoint into generic request options

View file

@ -1,6 +1,6 @@
import type { RequestMethod } from "./RequestMethod";
import type { Url } from "./Url";
import type { RequestParameters } from "./RequestParameters";
import type { RequestMethod } from "./RequestMethod.js";
import type { Url } from "./Url.js";
import type { RequestParameters } from "./RequestParameters.js";
export type EndpointOptions = RequestParameters & {
method: RequestMethod;
url: Url;

View file

@ -1,5 +1,5 @@
import type { ResponseHeaders } from "./ResponseHeaders";
import type { Url } from "./Url";
import type { ResponseHeaders } from "./ResponseHeaders.js";
import type { Url } from "./Url.js";
export interface OctokitResponse<T, S extends number = number> {
headers: ResponseHeaders;
/**

View file

@ -1,8 +1,8 @@
import type { EndpointInterface } from "./EndpointInterface";
import type { OctokitResponse } from "./OctokitResponse";
import type { RequestParameters } from "./RequestParameters";
import type { Route } from "./Route";
import type { Endpoints } from "./generated/Endpoints";
import type { EndpointInterface } from "./EndpointInterface.js";
import type { OctokitResponse } from "./OctokitResponse.js";
import type { RequestParameters } from "./RequestParameters.js";
import type { Route } from "./Route.js";
import type { Endpoints } from "./generated/Endpoints.js";
export interface RequestInterface<D extends object = object> {
/**
* Sends a request based on endpoint options

View file

@ -1,7 +1,7 @@
import type { RequestHeaders } from "./RequestHeaders";
import type { RequestMethod } from "./RequestMethod";
import type { RequestRequestOptions } from "./RequestRequestOptions";
import type { Url } from "./Url";
import type { RequestHeaders } from "./RequestHeaders.js";
import type { RequestMethod } from "./RequestMethod.js";
import type { RequestRequestOptions } from "./RequestRequestOptions.js";
import type { Url } from "./Url.js";
/**
* Generic request options as they are returned by the `endpoint()` method
*/

View file

@ -1,6 +1,6 @@
import type { RequestRequestOptions } from "./RequestRequestOptions";
import type { RequestHeaders } from "./RequestHeaders";
import type { Url } from "./Url";
import type { RequestRequestOptions } from "./RequestRequestOptions.js";
import type { RequestHeaders } from "./RequestHeaders.js";
import type { Url } from "./Url.js";
/**
* Parameters that can be passed into `request(route, parameters)` or `endpoint(route, parameters)` methods
*/

View file

@ -1,5 +1,5 @@
import type { Fetch } from "./Fetch";
import type { Signal } from "./Signal";
/// <reference types="node" resolution-mode="require"/>
import type { Fetch } from "./Fetch.js";
/**
* Octokit-specific request options which are ignored for the actual request, but can be used by Octokit or plugins to manipulate how the request is sent or how a response is handled
*/
@ -11,7 +11,7 @@ export type RequestRequestOptions = {
/**
* Use an `AbortController` instance to cancel a request. In node you can only cancel streamed requests.
*/
signal?: Signal;
signal?: AbortSignal;
/**
* If set to `false`, the response body will not be parsed and will be returned as a stream.
*/

View file

@ -1,6 +0,0 @@
/**
* Abort signal
*
* @see https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal
*/
export type Signal = any;

View file

@ -1,4 +1,4 @@
import type { AuthInterface } from "./AuthInterface";
import type { AuthInterface } from "./AuthInterface.js";
export interface StrategyInterface<StrategyOptions extends any[], AuthOptions extends any[], Authentication extends object> {
(...args: StrategyOptions): AuthInterface<AuthOptions, Authentication>;
}

View file

@ -1 +1 @@
export declare const VERSION = "13.5.0";
export declare const VERSION = "13.6.0";

View file

@ -1,7 +1,7 @@
import type { paths } from "@octokit/openapi-types";
import type { OctokitResponse } from "../OctokitResponse";
import type { RequestHeaders } from "../RequestHeaders";
import type { RequestRequestOptions } from "../RequestRequestOptions";
import type { OctokitResponse } from "../OctokitResponse.js";
import type { RequestHeaders } from "../RequestHeaders.js";
import type { RequestRequestOptions } from "../RequestRequestOptions.js";
/**
* @license (MIT OR CC0-1.0)
* @source https://github.com/sindresorhus/type-fest/blob/570e27f8fdaee37ef5d5e0fbf241e0212ff8fc1a/source/simplify.d.ts

View file

@ -1,21 +1,20 @@
export * from "./AuthInterface";
export * from "./EndpointDefaults";
export * from "./EndpointInterface";
export * from "./EndpointOptions";
export * from "./Fetch";
export * from "./OctokitResponse";
export * from "./RequestError";
export * from "./RequestHeaders";
export * from "./RequestInterface";
export * from "./RequestMethod";
export * from "./RequestOptions";
export * from "./RequestParameters";
export * from "./RequestRequestOptions";
export * from "./ResponseHeaders";
export * from "./Route";
export * from "./Signal";
export * from "./StrategyInterface";
export * from "./Url";
export * from "./VERSION";
export * from "./GetResponseTypeFromEndpointMethod";
export * from "./generated/Endpoints";
export * from "./AuthInterface.js";
export * from "./EndpointDefaults.js";
export * from "./EndpointInterface.js";
export * from "./EndpointOptions.js";
export * from "./Fetch.js";
export * from "./OctokitResponse.js";
export * from "./RequestError.js";
export * from "./RequestHeaders.js";
export * from "./RequestInterface.js";
export * from "./RequestMethod.js";
export * from "./RequestOptions.js";
export * from "./RequestParameters.js";
export * from "./RequestRequestOptions.js";
export * from "./ResponseHeaders.js";
export * from "./Route.js";
export * from "./StrategyInterface.js";
export * from "./Url.js";
export * from "./VERSION.js";
export * from "./GetResponseTypeFromEndpointMethod.js";
export * from "./generated/Endpoints.js";

View file

@ -1,10 +1,11 @@
{
"name": "@octokit/types",
"version": "13.5.0",
"version": "13.6.0",
"publishConfig": {
"access": "public",
"provenance": true
},
"type": "module",
"description": "Shared TypeScript definitions for Octokit projects",
"dependencies": {
"@octokit/openapi-types": "^22.2.0"
@ -20,20 +21,20 @@
"author": "Gregor Martynus (https://twitter.com/gr2m)",
"license": "MIT",
"devDependencies": {
"@octokit/tsconfig": "^2.0.0",
"@octokit/tsconfig": "^4.0.0",
"@types/node": ">= 8",
"github-openapi-graphql-query": "^4.0.0",
"handlebars": "^4.7.6",
"json-schema-to-typescript": "^14.0.0",
"json-schema-to-typescript": "^15.0.0",
"lodash.set": "^4.3.2",
"npm-run-all2": "^6.0.0",
"pascal-case": "^4.0.0",
"prettier": "^3.0.0",
"semantic-release": "^23.0.0",
"semantic-release": "^24.0.0",
"semantic-release-plugin-update-version-in-files": "^1.0.0",
"sort-keys": "^5.0.0",
"string-to-jsdoc-comment": "^1.0.0",
"typedoc": "^0.25.0",
"typedoc": "^0.26.0",
"typescript": "^5.0.0"
},
"octokit": {

21
node_modules/@rtsao/scc/LICENSE generated vendored Normal file
View file

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2019 Ryan Tsao
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.

49
node_modules/@rtsao/scc/README.md generated vendored Normal file
View file

@ -0,0 +1,49 @@
# `@rtsao/scc`
Find strongly connected components of a directed graph using [Tarjan's algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm).
This algorithm efficiently yields both a topological order and list of any cycles.
## Installation
```
yarn add @rtsao/scc
```
```
npm install @rtsao/scc
```
## Usage
```js
const scc = require("@rtsao/scc");
const digraph = new Map([
["a", new Set(["c", "d"])],
["b", new Set(["a"])],
["c", new Set(["b"])],
["d", new Set(["e"])],
["e", new Set()]
]);
const components = scc(digraph);
// [ Set { 'e' }, Set { 'd' }, Set { 'b', 'c', 'a' } ]
```
#### Illustration of example input digraph
```
┌───┐ ┌───┐
│ d │ ◀── │ a │ ◀┐
└───┘ └───┘ │
│ │ │
▼ ▼ │
┌───┐ ┌───┐ │
│ e │ │ c │ │
└───┘ └───┘ │
│ │
▼ │
┌───┐ │
│ b │ ─┘
└───┘
```

1
node_modules/@rtsao/scc/index.d.ts generated vendored Normal file
View file

@ -0,0 +1 @@
export default function tarjan<T>(graph: Map<T, Set<T>>): Array<Set<T>>

51
node_modules/@rtsao/scc/index.js generated vendored Normal file
View file

@ -0,0 +1,51 @@
"use strict";
module.exports = tarjan;
// Adapted from https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm#The_algorithm_in_pseudocode
function tarjan(graph) {
const indices = new Map();
const lowlinks = new Map();
const onStack = new Set();
const stack = [];
const scc = [];
let idx = 0;
function strongConnect(v) {
indices.set(v, idx);
lowlinks.set(v, idx);
idx++;
stack.push(v);
onStack.add(v);
const deps = graph.get(v);
for (const dep of deps) {
if (!indices.has(dep)) {
strongConnect(dep);
lowlinks.set(v, Math.min(lowlinks.get(v), lowlinks.get(dep)));
} else if (onStack.has(dep)) {
lowlinks.set(v, Math.min(lowlinks.get(v), indices.get(dep)));
}
}
if (lowlinks.get(v) === indices.get(v)) {
const vertices = new Set();
let w = null;
while (v !== w) {
w = stack.pop();
onStack.delete(w);
vertices.add(w);
}
scc.push(vertices);
}
}
for (const v of graph.keys()) {
if (!indices.has(v)) {
strongConnect(v);
}
}
return scc;
}

5
node_modules/@rtsao/scc/index.js.flow generated vendored Normal file
View file

@ -0,0 +1,5 @@
// @flow
declare function tarjan<T>(graph: Map<T, Set<T>>): Array<Set<T>>;
declare module.exports: typeof tarjan;

7
node_modules/@rtsao/scc/package.json generated vendored Normal file
View file

@ -0,0 +1,7 @@
{
"name": "@rtsao/scc",
"version": "1.1.0",
"repository": "rtsao/scc",
"main": "index.js",
"license": "MIT"
}

View file

@ -6,6 +6,34 @@ This change log adheres to standards from [Keep a CHANGELOG](https://keepachange
## [Unreleased]
## [2.30.0] - 2024-09-02
### Added
- [`dynamic-import-chunkname`]: add `allowEmpty` option to allow empty leading comments ([#2942], thanks [@JiangWeixian])
- [`dynamic-import-chunkname`]: Allow empty chunk name when webpackMode: 'eager' is set; add suggestions to remove name in eager mode ([#3004], thanks [@amsardesai])
- [`no-unused-modules`]: Add `ignoreUnusedTypeExports` option ([#3011], thanks [@silverwind])
- add support for Flat Config ([#3018], thanks [@michaelfaith])
### Fixed
- [`no-extraneous-dependencies`]: allow wrong path ([#3012], thanks [@chabb])
- [`no-cycle`]: use scc algorithm to optimize ([#2998], thanks [@soryy708])
- [`no-duplicates`]: Removing duplicates breaks in TypeScript ([#3033], thanks [@yesl-kim])
- [`newline-after-import`]: fix considerComments option when require ([#2952], thanks [@developer-bandi])
- [`order`]: do not compare first path segment for relative paths ([#2682]) ([#2885], thanks [@mihkeleidast])
### Changed
- [Docs] `no-extraneous-dependencies`: Make glob pattern description more explicit ([#2944], thanks [@mulztob])
- [`no-unused-modules`]: add console message to help debug [#2866]
- [Refactor] `ExportMap`: make procedures static instead of monkeypatching exportmap ([#2982], thanks [@soryy708])
- [Refactor] `ExportMap`: separate ExportMap instance from its builder logic ([#2985], thanks [@soryy708])
- [Docs] `order`: Add a quick note on how unbound imports and --fix ([#2640], thanks [@minervabot])
- [Tests] appveyor -> GHA (run tests on Windows in both pwsh and WSL + Ubuntu) ([#2987], thanks [@joeyguerra])
- [actions] migrate OSX tests to GHA ([ljharb#37], thanks [@aks-])
- [Refactor] `exportMapBuilder`: avoid hoisting ([#2989], thanks [@soryy708])
- [Refactor] `ExportMap`: extract "builder" logic to separate files ([#2991], thanks [@soryy708])
- [Docs] [`order`]: update the description of the `pathGroupsExcludedImportTypes` option ([#3036], thanks [@liby])
- [readme] Clarify how to install the plugin ([#2993], thanks [@jwbth])
## [2.29.1] - 2023-12-14
### Fixed
@ -1101,8 +1129,26 @@ for info on changes for earlier releases.
[`memo-parser`]: ./memo-parser/README.md
[#3036]: https://github.com/import-js/eslint-plugin-import/pull/3036
[#3033]: https://github.com/import-js/eslint-plugin-import/pull/3033
[#3018]: https://github.com/import-js/eslint-plugin-import/pull/3018
[#3012]: https://github.com/import-js/eslint-plugin-import/pull/3012
[#3011]: https://github.com/import-js/eslint-plugin-import/pull/3011
[#3004]: https://github.com/import-js/eslint-plugin-import/pull/3004
[#2998]: https://github.com/import-js/eslint-plugin-import/pull/2998
[#2993]: https://github.com/import-js/eslint-plugin-import/pull/2993
[#2991]: https://github.com/import-js/eslint-plugin-import/pull/2991
[#2989]: https://github.com/import-js/eslint-plugin-import/pull/2989
[#2987]: https://github.com/import-js/eslint-plugin-import/pull/2987
[#2985]: https://github.com/import-js/eslint-plugin-import/pull/2985
[#2982]: https://github.com/import-js/eslint-plugin-import/pull/2982
[#2952]: https://github.com/import-js/eslint-plugin-import/pull/2952
[#2944]: https://github.com/import-js/eslint-plugin-import/pull/2944
[#2942]: https://github.com/import-js/eslint-plugin-import/pull/2942
[#2919]: https://github.com/import-js/eslint-plugin-import/pull/2919
[#2885]: https://github.com/import-js/eslint-plugin-import/pull/2885
[#2884]: https://github.com/import-js/eslint-plugin-import/pull/2884
[#2866]: https://github.com/import-js/eslint-plugin-import/pull/2866
[#2854]: https://github.com/import-js/eslint-plugin-import/pull/2854
[#2851]: https://github.com/import-js/eslint-plugin-import/pull/2851
[#2850]: https://github.com/import-js/eslint-plugin-import/pull/2850
@ -1116,6 +1162,7 @@ for info on changes for earlier releases.
[#2735]: https://github.com/import-js/eslint-plugin-import/pull/2735
[#2699]: https://github.com/import-js/eslint-plugin-import/pull/2699
[#2664]: https://github.com/import-js/eslint-plugin-import/pull/2664
[#2640]: https://github.com/import-js/eslint-plugin-import/pull/2640
[#2613]: https://github.com/import-js/eslint-plugin-import/pull/2613
[#2608]: https://github.com/import-js/eslint-plugin-import/pull/2608
[#2605]: https://github.com/import-js/eslint-plugin-import/pull/2605
@ -1440,9 +1487,12 @@ for info on changes for earlier releases.
[#164]: https://github.com/import-js/eslint-plugin-import/pull/164
[#157]: https://github.com/import-js/eslint-plugin-import/pull/157
[ljharb#37]: https://github.com/ljharb/eslint-plugin-import/pull/37
[#2930]: https://github.com/import-js/eslint-plugin-import/issues/2930
[#2687]: https://github.com/import-js/eslint-plugin-import/issues/2687
[#2684]: https://github.com/import-js/eslint-plugin-import/issues/2684
[#2682]: https://github.com/import-js/eslint-plugin-import/issues/2682
[#2674]: https://github.com/import-js/eslint-plugin-import/issues/2674
[#2668]: https://github.com/import-js/eslint-plugin-import/issues/2668
[#2666]: https://github.com/import-js/eslint-plugin-import/issues/2666
@ -1567,7 +1617,8 @@ for info on changes for earlier releases.
[#119]: https://github.com/import-js/eslint-plugin-import/issues/119
[#89]: https://github.com/import-js/eslint-plugin-import/issues/89
[Unreleased]: https://github.com/import-js/eslint-plugin-import/compare/v2.29.1...HEAD
[Unreleased]: https://github.com/import-js/eslint-plugin-import/compare/v2.30.0...HEAD
[2.30.0]: https://github.com/import-js/eslint-plugin-import/compare/v2.29.1...v2.30.0
[2.29.1]: https://github.com/import-js/eslint-plugin-import/compare/v2.29.0...v2.29.1
[2.29.0]: https://github.com/import-js/eslint-plugin-import/compare/v2.28.1...v2.29.0
[2.28.1]: https://github.com/import-js/eslint-plugin-import/compare/v2.28.0...v2.28.1
@ -1672,9 +1723,11 @@ for info on changes for earlier releases.
[@adjerbetian]: https://github.com/adjerbetian
[@AdriAt360]: https://github.com/AdriAt360
[@ai]: https://github.com/ai
[@aks-]: https://github.com/aks-
[@aladdin-add]: https://github.com/aladdin-add
[@alex-page]: https://github.com/alex-page
[@alexgorbatchev]: https://github.com/alexgorbatchev
[@amsardesai]: https://github.com/amsardesai
[@andreubotella]: https://github.com/andreubotella
[@AndrewLeedham]: https://github.com/AndrewLeedham
[@andyogo]: https://github.com/andyogo
@ -1699,11 +1752,13 @@ for info on changes for earlier releases.
[@bicstone]: https://github.com/bicstone
[@Blasz]: https://github.com/Blasz
[@bmish]: https://github.com/bmish
[@developer-bandi]: https://github.com/developer-bandi
[@borisyankov]: https://github.com/borisyankov
[@bradennapier]: https://github.com/bradennapier
[@bradzacher]: https://github.com/bradzacher
[@brendo]: https://github.com/brendo
[@brettz9]: https://github.com/brettz9
[@chabb]: https://github.com/chabb
[@Chamion]: https://github.com/Chamion
[@charlessuh]: https://github.com/charlessuh
[@charpeni]: https://github.com/charpeni
@ -1770,10 +1825,12 @@ for info on changes for earlier releases.
[@jeffshaver]: https://github.com/jeffshaver
[@jf248]: https://github.com/jf248
[@jfmengels]: https://github.com/jfmengels
[@JiangWeixian]: https://github.com/JiangWeixian
[@jimbolla]: https://github.com/jimbolla
[@jkimbo]: https://github.com/jkimbo
[@joaovieira]: https://github.com/joaovieira
[@joe-matsec]: https://github.com/joe-matsec
[@joeyguerra]: https://github.com/joeyguerra
[@johndevedu]: https://github.com/johndevedu
[@johnthagen]: https://github.com/johnthagen
[@jonboiser]: https://github.com/jonboiser
@ -1783,6 +1840,7 @@ for info on changes for earlier releases.
[@jseminck]: https://github.com/jseminck
[@julien1619]: https://github.com/julien1619
[@justinanastos]: https://github.com/justinanastos
[@jwbth]: https://github.com/jwbth
[@k15a]: https://github.com/k15a
[@kentcdodds]: https://github.com/kentcdodds
[@kevin940726]: https://github.com/kevin940726
@ -1830,11 +1888,15 @@ for info on changes for earlier releases.
[@meowtec]: https://github.com/meowtec
[@mgwalker]: https://github.com/mgwalker
[@mhmadhamster]: https://github.com/MhMadHamster
[@michaelfaith]: https://github.com/michaelfaith
[@mihkeleidast]: https://github.com/mihkeleidast
[@MikeyBeLike]: https://github.com/MikeyBeLike
[@minervabot]: https://github.com/minervabot
[@mpint]: https://github.com/mpint
[@mplewis]: https://github.com/mplewis
[@mrmckeb]: https://github.com/mrmckeb
[@msvab]: https://github.com/msvab
[@mulztob]: https://github.com/mulztob
[@mx-bernhard]: https://github.com/mx-bernhard
[@Nfinished]: https://github.com/Nfinished
[@nickofthyme]: https://github.com/nickofthyme
@ -1843,9 +1905,9 @@ for info on changes for earlier releases.
[@ntdb]: https://github.com/ntdb
[@nwalters512]: https://github.com/nwalters512
[@ombene]: https://github.com/ombene
[@Pandemic1617]: https://github.com/Pandemic1617
[@ota-meshi]: https://github.com/ota-meshi
[@OutdatedVersion]: https://github.com/OutdatedVersion
[@Pandemic1617]: https://github.com/Pandemic1617
[@panrafal]: https://github.com/panrafal
[@paztis]: https://github.com/paztis
[@pcorpet]: https://github.com/pcorpet
@ -1877,6 +1939,7 @@ for info on changes for earlier releases.
[@sergei-startsev]: https://github.com/sergei-startsev
[@sharmilajesupaul]: https://github.com/sharmilajesupaul
[@sheepsteak]: https://github.com/sheepsteak
[@silverwind]: https://github.com/silverwind
[@silviogutierrez]: https://github.com/silviogutierrez
[@SimenB]: https://github.com/SimenB
[@simmo]: https://github.com/simmo
@ -1919,6 +1982,7 @@ for info on changes for earlier releases.
[@wtgtybhertgeghgtwtg]: https://github.com/wtgtybhertgeghgtwtg
[@xM8WVqaG]: https://github.com/xM8WVqaG
[@xpl]: https://github.com/xpl
[@yesl-kim]: https://github.com/yesl-kim
[@yndajas]: https://github.com/yndajas
[@yordis]: https://github.com/yordis
[@Zamiell]: https://github.com/Zamiell

View file

@ -1,84 +0,0 @@
# Contributing
Thanks for your interest in helping out! Here are a **few** _weird_ tricks to ~~cut your mortgage in half~~ maximize the global net efficiency of your efforts!
## TL;DR: Checklist
When opening an [issue](#issues):
- [ ] search open/closed issues
- [ ] discuss bug/enhancement in new or old issue
[PR](#prs) time:
- [ ] write tests
- [ ] implement feature/fix bug
- [ ] update docs
- [ ] make a note in change log
Remember, you don't need to do it all yourself; any of these are helpful! 😎
## How to get started
If you are new to `eslint`, below are a few resources that will help you to familiarize yourself with the project.
- Watch [this presentation](https://www.youtube.com/watch?v=2W9tUnALrLg) to learn the fundamental concept of Abstract Syntax Trees (AST) and the way `eslint` works under the hood.
- Familiarize yourself with the [AST explorer](https://astexplorer.net/) tool. Look into rules in `docs/rules`, create patterns in the rules, then analyze its AST.
- Explore the blog posts on how to create a custom rule. [One blog post](https://blog.yonatan.dev/writing-a-custom-eslint-rule-to-spot-undeclared-props/). [Second blog post](https://betterprogramming.pub/creating-custom-eslint-rules-cdc579694608).
- Read the official `eslint` [developer guide](https://eslint.org/docs/latest/developer-guide/architecture/).
## Issues
### Search open + closed issues for similar cases
You may find an open issue that closely matches what you are thinking. You may also find a closed issue with discussion that either solves your problem or explains why we are unlikely to solve it in the near future.
If you find a matching issue that is open, and marked `accepted` and/or `help wanted`, you might want to [open a PR](#prs).
### Open an issue
Let's discuss your issue. Could be as simple as unclear documentation or a wonky config file.
If you're suggesting a feature, it might exist and need better documentation, or it might be in process. Even given those, some discussion might be warranted to ensure the enhancement is clear.
You're welcome to jump right to a PR, but without a discussion, can't make any guarantees about merging.
That said: sometimes seeing the code makes the discussion clearer.😄
This is a helpful contribution all by itself. Thanks!
## PRs
If you would like to implement something, firstly: thanks! Community contributions are a magical thing. Like Redux or [the flux capacitor](https://youtu.be/SR5BfQ4rEqQ?t=2m25s), they make open source possible.
**Working on your first Pull Request?**
You can learn how from this _free_ series [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github).
Here are some things to keep in mind when working on a PR:
**Trying to update an inactive Pull Request?**
If a PR is open, but unfortunately the author is, for any reason, not available to apply code review fixes or rebase the source branch, then please **do not open a new PR**.
Instead, paste a link to your own branch in the PR, and the maintainers can pull in your changes and update the existing PR in-place.
### Tests
A PR that is just failing test cases for an existing issue is very helpful, as this can take as much time (if not more) as it takes to implement a new feature or fix a bug.
If you only have enough time to write tests, fantastic! Submit away. This is a great jumping-off point for a core contributor or even another PR to continue what you've started.
### Docs
For enhancements to rules, please update the docs in `docs/rules` matching the rule filename from `src/rules` or the rule description in `meta.docs.description`. Running `npm run update:eslint-docs` will update the [README.md] and rule doc header.
Bugfixes may not warrant docs changes, though it's worth skimming the existing docs to see if there are any relevant caveats that need to be removed.
### Changelog
Please add a quick blurb to the [**Unreleased**](./CHANGELOG.md#unreleased) section of the change log. Give yourself some credit, and please link back to the PR for future reference. This is especially helpful for resolver changes, as the resolvers are less frequently modified and published.
Note also that the change log can't magically link back to Github entities (i.e. PRs, issues, users) or rules; there are a handful of footnote URL definitions at the bottom. You may need to add one or more URL if you've square-bracketed any such items.
## Code of Conduct
Please familiarize yourself with the [Code of Conduct](https://github.com/import-js/.github/blob/main/CODE_OF_CONDUCT.md).
[README.md]: ./README.md

View file

@ -23,7 +23,7 @@ This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, a
⌨️ Set in the `typescript` configuration.\
🚸 Set in the `warnings` configuration.\
🔧 Automatically fixable by the [`--fix` CLI option](https://eslint.org/docs/user-guide/command-line-interface#--fix).\
💡 Manually fixable by [editor suggestions](https://eslint.org/docs/developer-guide/working-with-rules#providing-suggestions).\
💡 Manually fixable by [editor suggestions](https://eslint.org/docs/latest/use/core-concepts#rule-suggestions).\
❌ Deprecated.
### Helpful warnings
@ -73,7 +73,7 @@ This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, a
| Name                            | Description | 💼 | ⚠️ | 🚫 | 🔧 | 💡 | ❌ |
| :------------------------------------------------------------------------------- | :------------------------------------------------------------------------- | :- | :---- | :- | :- | :- | :- |
| [consistent-type-specifier-style](docs/rules/consistent-type-specifier-style.md) | Enforce or ban the use of inline type-only markers for named imports. | | | | 🔧 | | |
| [dynamic-import-chunkname](docs/rules/dynamic-import-chunkname.md) | Enforce a leading comment with the webpackChunkName for dynamic imports. | | | | | | |
| [dynamic-import-chunkname](docs/rules/dynamic-import-chunkname.md) | Enforce a leading comment with the webpackChunkName for dynamic imports. | | | | | 💡 | |
| [exports-last](docs/rules/exports-last.md) | Ensure all exports appear after other statements. | | | | | | |
| [extensions](docs/rules/extensions.md) | Ensure consistent use of file extension within the import path. | | | | | | |
| [first](docs/rules/first.md) | Ensure all imports appear before other statements. | | | | 🔧 | | |
@ -106,29 +106,60 @@ The maintainers of `eslint-plugin-import` and thousands of other packages are wo
npm install eslint-plugin-import --save-dev
```
All rules are off by default. However, you may configure them manually
in your `.eslintrc.(yml|json|js)`, or extend one of the canned configs:
### Config - Legacy (`.eslintrc`)
```yaml
---
extends:
- eslint:recommended
- plugin:import/recommended
# alternatively, 'recommended' is the combination of these two rule sets:
- plugin:import/errors
- plugin:import/warnings
All rules are off by default. However, you may extend one of the preset configs, or configure them manually in your `.eslintrc.(yml|json|js)`.
# or configure manually:
plugins:
- import
- Extending a preset config:
rules:
import/no-unresolved: [2, {commonjs: true, amd: true}]
import/named: 2
import/namespace: 2
import/default: 2
import/export: 2
# etc...
```jsonc
{
"extends": [
"eslint:recommended",
"plugin:import/recommended",
],
}
```
- Configuring manually:
```jsonc
{
"rules": {
"import/no-unresolved": ["error", { "commonjs": true, "amd": true }]
"import/named": "error",
"import/namespace": "error",
"import/default": "error",
"import/export": "error",
// etc...
},
},
```
### Config - Flat (`eslint.config.js`)
All rules are off by default. However, you may configure them manually in your `eslint.config.(js|cjs|mjs)`, or extend one of the preset configs:
```js
import importPlugin from 'eslint-plugin-import';
import js from '@eslint/js';
export default [
js.configs.recommended,
importPlugin.flatConfigs.recommended,
{
files: ['**/*.{js,mjs,cjs}'],
languageOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
},
rules: {
'no-unused-vars': 'off',
'import/no-dynamic-require': 'warn',
'import/no-nodejs-modules': 'warn',
},
},
];
```
## TypeScript
@ -137,18 +168,23 @@ You may use the following snippet or assemble your own config using the granular
Make sure you have installed [`@typescript-eslint/parser`] and [`eslint-import-resolver-typescript`] which are used in the following configuration.
```yaml
extends:
- eslint:recommended
- plugin:import/recommended
# the following lines do the trick
- plugin:import/typescript
settings:
import/resolver:
# You will also need to install and configure the TypeScript resolver
# See also https://github.com/import-js/eslint-import-resolver-typescript#configuration
typescript: true
node: true
```jsonc
{
"extends": [
"eslint:recommended",
"plugin:import/recommended",
// the following lines do the trick
"plugin:import/typescript",
],
"settings": {
"import/resolver": {
// You will also need to install and configure the TypeScript resolver
// See also https://github.com/import-js/eslint-import-resolver-typescript#configuration
"typescript": true,
"node": true,
},
},
}
```
[`@typescript-eslint/parser`]: https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser
@ -177,6 +213,16 @@ You can reference resolvers in several ways (in order of precedence):
- as a conventional `eslint-import-resolver` name, like `eslint-import-resolver-foo`:
```jsonc
// .eslintrc
{
"settings": {
// uses 'eslint-import-resolver-foo':
"import/resolver": "foo",
},
}
```
```yaml
# .eslintrc.yml
settings:
@ -197,6 +243,15 @@ module.exports = {
- with a full npm module name, like `my-awesome-npm-module`:
```jsonc
// .eslintrc
{
"settings": {
"import/resolver": "my-awesome-npm-module",
},
}
```
```yaml
# .eslintrc.yml
settings:
@ -292,11 +347,15 @@ In practice, this means rules other than [`no-unresolved`](./docs/rules/no-unres
`no-unresolved` has its own [`ignore`](./docs/rules/no-unresolved.md#ignore) setting.
```yaml
settings:
import/ignore:
- \.coffee$ # fraught with parse errors
- \.(scss|less|css)$ # can't parse unprocessed CSS modules, either
```jsonc
{
"settings": {
"import/ignore": [
"\.coffee$", // fraught with parse errors
"\.(scss|less|css)$", // can't parse unprocessed CSS modules, either
],
},
}
```
### `import/core-modules`
@ -315,10 +374,13 @@ import 'electron' // without extra config, will be flagged as unresolved!
that would otherwise be unresolved. To avoid this, you may provide `electron` as a
core module:
```yaml
# .eslintrc.yml
settings:
import/core-modules: [ electron ]
```jsonc
// .eslintrc
{
"settings": {
"import/core-modules": ["electron"],
},
}
```
In Electron's specific case, there is a shared config named `electron`
@ -351,11 +413,15 @@ dependency parser will require and use the map key as the parser instead of the
configured ESLint parser. This is useful if you're inter-op-ing with TypeScript
directly using webpack, for example:
```yaml
# .eslintrc.yml
settings:
import/parsers:
"@typescript-eslint/parser": [ .ts, .tsx ]
```jsonc
// .eslintrc
{
"settings": {
"import/parsers": {
"@typescript-eslint/parser": [".ts", ".tsx"],
},
},
}
```
In this case, [`@typescript-eslint/parser`](https://www.npmjs.com/package/@typescript-eslint/parser)
@ -385,20 +451,28 @@ For long-lasting processes, like [`eslint_d`] or [`eslint-loader`], however, it'
If you never use [`eslint_d`] or [`eslint-loader`], you may set the cache lifetime to `Infinity` and everything should be fine:
```yaml
# .eslintrc.yml
settings:
import/cache:
lifetime: ∞ # or Infinity
```jsonc
// .eslintrc
{
"settings": {
"import/cache": {
"lifetime": "∞", // or Infinity, in a JS config
},
},
}
```
Otherwise, set some integer, and cache entries will be evicted after that many seconds have elapsed:
```yaml
# .eslintrc.yml
settings:
import/cache:
lifetime: 5 # 30 is the default
```jsonc
// .eslintrc
{
"settings": {
"import/cache": {
"lifetime": 5, // 30 is the default
},
},
}
```
[`eslint_d`]: https://www.npmjs.com/package/eslint_d
@ -412,10 +486,13 @@ By default, any package referenced from [`import/external-module-folders`](#impo
For example, if your packages in a monorepo are all in `@scope`, you can configure `import/internal-regex` like this
```yaml
# .eslintrc.yml
settings:
import/internal-regex: ^@scope/
```jsonc
// .eslintrc
{
"settings": {
"import/internal-regex": "^@scope/",
},
}
```
## SublimeLinter-eslint

View file

@ -1,54 +0,0 @@
# Release steps
1. create a `release-[x.y.z]` branch from tip of `main` (or whatever release commit)
```bash
git checkout main && git pull && git checkout -b release-2.1.0
```
2. bump `package.json` + update CHANGELOG version links for all releasing packages (i.e., root + any resolvers)
In changelog for core plugin, normally leave [Unreleased] but update its link at the bottom
to be rooted at the new version's tag, and add a link for the new version rooted
at last version's tag.
```markdown
[Unreleased]: https://github.com/import-js/eslint-plugin-import/compare/v2.0.1...HEAD
[2.0.1]: https://github.com/import-js/eslint-plugin-import/compare/v2.0.0...v2.0.1
```
becomes
```markdown
[Unreleased]: https://github.com/import-js/eslint-plugin-import/compare/v2.1.0...HEAD
[2.1.0]: https://github.com/import-js/eslint-plugin-import/compare/v2.0.1...v2.1.0
[2.0.1]: https://github.com/import-js/eslint-plugin-import/compare/v2.0.0...v2.0.1
```
Generally, don't use `npm version` for this because it creates a tag, which I normally
wait until signoff from contributors and actually `npm publish`-ing to snap the tag.
3. create pull request from `release-[x.y.z]` into `release` branch
I like this because it
- lists all commits in the release
- provides a commentary location to discuss the release
- builds in CI and provides test results
4. iterate on feedback
- handle other issues
- merge more PRs
- fix issues in changelog/docs
5. `npm publish` from `release-[x.y.z]` branch
- don't forget resolvers!
6. tag commit (`v[x.y.z]`)
- again, not forgetting resolvers, if needed (`resolvers/[name]/v[t.u.v]`)
7. merge `release-[x.y.z]` into `release` (
- ideally fast-forward, probably with Git CLI instead of Github
8. merge `release` into `main`
Done!

View file

@ -0,0 +1,14 @@
/**
* unopinionated config. just the things that are necessarily runtime errors
* waiting to happen.
* @type {Object}
*/
module.exports = {
rules: {
'import/no-unresolved': 2,
'import/named': 2,
'import/namespace': 2,
'import/default': 2,
'import/export': 2,
},
};

19
node_modules/eslint-plugin-import/config/flat/react.js generated vendored Normal file
View file

@ -0,0 +1,19 @@
/**
* Adds `.jsx` as an extension, and enables JSX parsing.
*
* Even if _you_ aren't using JSX (or .jsx) directly, if your dependencies
* define jsnext:main and have JSX internally, you may run into problems
* if you don't enable these settings at the top level.
*/
module.exports = {
settings: {
'import/extensions': ['.js', '.jsx', '.mjs', '.cjs'],
},
languageOptions: {
parserOptions: {
ecmaFeatures: {
jsx: true,
},
},
},
};

View file

@ -0,0 +1,26 @@
/**
* The basics.
* @type {Object}
*/
module.exports = {
rules: {
// analysis/correctness
'import/no-unresolved': 'error',
'import/named': 'error',
'import/namespace': 'error',
'import/default': 'error',
'import/export': 'error',
// red flags (thus, warnings)
'import/no-named-as-default': 'warn',
'import/no-named-as-default-member': 'warn',
'import/no-duplicates': 'warn',
},
// need all these for parsing dependencies (even if _your_ code doesn't need
// all of them)
languageOptions: {
ecmaVersion: 2018,
sourceType: 'module',
},
};

View file

@ -0,0 +1,11 @@
/**
* more opinionated config.
* @type {Object}
*/
module.exports = {
rules: {
'import/no-named-as-default': 1,
'import/no-named-as-default-member': 1,
'import/no-duplicates': 1,
},
};

View file

@ -6,7 +6,6 @@
* if you don't enable these settings at the top level.
*/
module.exports = {
settings: {
'import/extensions': ['.js', '.jsx'],
},
@ -14,5 +13,4 @@ module.exports = {
parserOptions: {
ecmaFeatures: { jsx: true },
},
};

View file

@ -9,7 +9,7 @@
// `.ts`/`.tsx`/`.js`/`.jsx` implementation.
const typeScriptExtensions = ['.ts', '.cts', '.mts', '.tsx'];
const allExtensions = [...typeScriptExtensions, '.js', '.jsx'];
const allExtensions = [...typeScriptExtensions, '.js', '.jsx', '.mjs', '.cjs'];
module.exports = {
settings: {

View file

@ -1,5 +1,7 @@
# import/dynamic-import-chunkname
💡 This rule is manually fixable by [editor suggestions](https://eslint.org/docs/latest/use/core-concepts#rule-suggestions).
<!-- end auto-generated rule header -->
This rule reports any dynamic imports without a webpackChunkName specified in a leading block comment in the proper format.
@ -15,7 +17,8 @@ You can also configure the regex format you'd like to accept for the webpackChun
{
"dynamic-import-chunkname": [2, {
importFunctions: ["dynamicImport"],
webpackChunknameFormat: "[a-zA-Z0-57-9-/_]+"
webpackChunknameFormat: "[a-zA-Z0-57-9-/_]+",
allowEmpty: false
}]
}
```
@ -55,6 +58,13 @@ import(
// webpackChunkName: "someModule"
'someModule',
);
// chunk names are disallowed when eager mode is set
import(
/* webpackMode: "eager" */
/* webpackChunkName: "someModule" */
'someModule',
)
```
### valid
@ -87,6 +97,38 @@ The following patterns are valid:
);
```
### `allowEmpty: true`
If you want to allow dynamic imports without a webpackChunkName, you can set `allowEmpty: true` in the rule config. This will allow dynamic imports without a leading comment, or with a leading comment that does not contain a webpackChunkName.
Given `{ "allowEmpty": true }`:
<!-- markdownlint-disable-next-line MD024 -- duplicate header -->
### valid
The following patterns are valid:
```javascript
import('someModule');
import(
/* webpackChunkName: "someModule" */
'someModule',
);
```
<!-- markdownlint-disable-next-line MD024 -- duplicate header -->
### invalid
The following patterns are invalid:
```javascript
// incorrectly formatted comment
import(
/*webpackChunkName:"someModule"*/
'someModule',
);
```
## When Not To Use It
If you don't care that webpack will autogenerate chunk names and may blow up browser caches and bundle size reports.

View file

@ -1,6 +1,6 @@
# import/no-empty-named-blocks
🔧💡 This rule is automatically fixable by the [`--fix` CLI option](https://eslint.org/docs/latest/user-guide/command-line-interface#--fix) and manually fixable by [editor suggestions](https://eslint.org/docs/developer-guide/working-with-rules#providing-suggestions).
🔧💡 This rule is automatically fixable by the [`--fix` CLI option](https://eslint.org/docs/latest/user-guide/command-line-interface#--fix) and manually fixable by [editor suggestions](https://eslint.org/docs/latest/use/core-concepts#rule-suggestions).
<!-- end auto-generated rule header -->

View file

@ -32,7 +32,7 @@ You can also use an array of globs instead of literal booleans:
"import/no-extraneous-dependencies": ["error", {"devDependencies": ["**/*.test.js", "**/*.spec.js"]}]
```
When using an array of globs, the setting will be set to `true` (no errors reported) if the name of the file being linted matches a single glob in the array, and `false` otherwise.
When using an array of globs, the setting will be set to `true` (no errors reported) if the name of the file being linted (i.e. not the imported file/module) matches a single glob in the array, and `false` otherwise.
There are 2 boolean options to opt into checking extra imports that are normally ignored: `includeInternal`, which enables the checking of internal modules, and `includeTypes`, which enables checking of type imports in TypeScript.

View file

@ -29,8 +29,9 @@ This rule takes the following option:
- **`missingExports`**: if `true`, files without any exports are reported (defaults to `false`)
- **`unusedExports`**: if `true`, exports without any static usage within other modules are reported (defaults to `false`)
- `src`: an array with files/paths to be analyzed. It only applies to unused exports. Defaults to `process.cwd()`, if not provided
- `ignoreExports`: an array with files/paths for which unused exports will not be reported (e.g module entry points in a published package)
- **`ignoreUnusedTypeExports`**: if `true`, TypeScript type exports without any static usage within other modules are reported (defaults to `false` and has no effect unless `unusedExports` is `true`)
- **`src`**: an array with files/paths to be analyzed. It only applies to unused exports. Defaults to `process.cwd()`, if not provided
- **`ignoreExports`**: an array with files/paths for which unused exports will not be reported (e.g module entry points in a published package)
### Example for missing exports
@ -116,6 +117,16 @@ export function doAnything() {
export default 5 // will not be reported
```
### Unused exports with `ignoreUnusedTypeExports` set to `true`
The following will not be reported:
```ts
export type Foo = {}; // will not be reported
export interface Foo = {}; // will not be reported
export enum Foo {}; // will not be reported
```
#### Important Note
Exports from files listed as a main file (`main`, `browser`, or `bin` fields in `package.json`) will be ignored by default. This only applies if the `package.json` is not set to `private: true`

View file

@ -77,6 +77,25 @@ import foo from './foo';
var path = require('path');
```
## Limitations of `--fix`
Unbound imports are assumed to have side effects, and will never be moved/reordered. This can cause other imports to get "stuck" around them, and the fix to fail.
```javascript
import b from 'b'
import 'format.css'; // This will prevent --fix from working.
import a from 'a'
```
As a workaround, move unbound imports to be entirely above or below bound ones.
```javascript
import 'format1.css'; // OK
import b from 'b'
import a from 'a'
import 'format2.css'; // OK
```
## Options
This rule supports the following options:
@ -174,7 +193,7 @@ Example:
### `pathGroupsExcludedImportTypes: [array]`
This defines import types that are not handled by configured pathGroups.
This is mostly needed when you want to handle path groups that look like external imports.
If you have added path groups with patterns that look like `"builtin"` or `"external"` imports, you have to remove this group (`"builtin"` and/or `"external"`) from the default exclusion list (e.g., `["builtin", "external", "object"]`, etc) to sort these path groups correctly.
Example:
@ -193,29 +212,7 @@ Example:
}
```
You can also use `patterns`(e.g., `react`, `react-router-dom`, etc).
Example:
```json
{
"import/order": [
"error",
{
"pathGroups": [
{
"pattern": "react",
"group": "builtin",
"position": "before"
}
],
"pathGroupsExcludedImportTypes": ["react"]
}
]
}
```
The default value is `["builtin", "external", "object"]`.
[Import Type](https://github.com/import-js/eslint-plugin-import/blob/HEAD/src/core/importType.js#L90) is resolved as a fixed string in predefined set, it can't be a `patterns`(e.g., `react`, `react-router-dom`, etc). See [#2156] for details.
### `newlines-between: [ignore|always|always-and-inside-groups|never]`

File diff suppressed because one or more lines are too long

49
node_modules/eslint-plugin-import/lib/core/fsWalk.js generated vendored Normal file
View file

@ -0,0 +1,49 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.
walkSync = walkSync;var _path = require('path');var _path2 = _interopRequireDefault(_path);var _fs = require('fs');function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };} /** @typedef {{ name: string, path: string, dirent: import('fs').Dirent }} Entry */ /**
* Do a comprehensive walk of the provided src directory, and collect all entries. Filter out
* any directories or entries using the optional filter functions.
* @param {string} root - path to the root of the folder we're walking
* @param {{ deepFilter?: (entry: Entry) => boolean, entryFilter?: (entry: Entry) => boolean }} options
* @param {Entry} currentEntry - entry for the current directory we're working in
* @param {Entry[]} existingEntries - list of all entries so far
* @returns {Entry[]} an array of directory entries
*/ /**
* This is intended to provide similar capability as the sync api from @nodelib/fs.walk, until `eslint-plugin-import`
* is willing to modernize and update their minimum node version to at least v16. I intentionally made the
* shape of the API (for the part we're using) the same as @nodelib/fs.walk so that that can be swapped in
* when the repo is ready for it.
*/function walkSync(root, options, currentEntry, existingEntries) {// Extract the filter functions. Default to evaluating true, if no filter passed in.
var _options$deepFilter = options.deepFilter,deepFilter = _options$deepFilter === undefined ? function () {return true;} : _options$deepFilter,_options$entryFilter = options.entryFilter,entryFilter = _options$entryFilter === undefined ? function () {return true;} : _options$entryFilter;var entryList = existingEntries || [];var currentRelativePath = currentEntry ? currentEntry.path : '.';var fullPath = currentEntry ? _path2['default'].join(root, currentEntry.path) : root;var dirents = (0, _fs.readdirSync)(fullPath, { withFileTypes: true });dirents.forEach(function (dirent) {/** @type {Entry} */var entry = { name: dirent.name, path: _path2['default'].join(currentRelativePath, dirent.name), dirent: dirent };
if (dirent.isDirectory() && deepFilter(entry)) {
entryList.push(entry);
entryList = walkSync(root, options, entry, entryList);
} else if (dirent.isFile() && entryFilter(entry)) {
entryList.push(entry);
}
});
return entryList;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL2ZzV2Fsay5qcyJdLCJuYW1lcyI6WyJ3YWxrU3luYyIsInJvb3QiLCJvcHRpb25zIiwiY3VycmVudEVudHJ5IiwiZXhpc3RpbmdFbnRyaWVzIiwiZGVlcEZpbHRlciIsImVudHJ5RmlsdGVyIiwiZW50cnlMaXN0IiwiY3VycmVudFJlbGF0aXZlUGF0aCIsInBhdGgiLCJmdWxsUGF0aCIsImpvaW4iLCJkaXJlbnRzIiwid2l0aEZpbGVUeXBlcyIsImZvckVhY2giLCJkaXJlbnQiLCJlbnRyeSIsIm5hbWUiLCJpc0RpcmVjdG9yeSIsInB1c2giLCJpc0ZpbGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCZ0JBLFEsR0FBQUEsUSxDQWRoQiw0QiwyQ0FDQSx3QixnR0FFQSxtRixDQUVBOzs7Ozs7OzsyU0FaQTs7Ozs7OFNBcUJPLFNBQVNBLFFBQVQsQ0FBa0JDLElBQWxCLEVBQXdCQyxPQUF4QixFQUFpQ0MsWUFBakMsRUFBK0NDLGVBQS9DLEVBQWdFLENBQ3JFO0FBRHFFLDRCQUVQRixPQUZPLENBRTdERyxVQUY2RCxDQUU3REEsVUFGNkQsdUNBRWhELG9CQUFNLElBQU4sRUFGZ0QsOENBRVBILE9BRk8sQ0FFcENJLFdBRm9DLENBRXBDQSxXQUZvQyx3Q0FFdEIsb0JBQU0sSUFBTixFQUZzQix3QkFJckUsSUFBSUMsWUFBWUgsbUJBQW1CLEVBQW5DLENBQ0EsSUFBTUksc0JBQXNCTCxlQUFlQSxhQUFhTSxJQUE1QixHQUFtQyxHQUEvRCxDQUNBLElBQU1DLFdBQVdQLGVBQWVNLGtCQUFLRSxJQUFMLENBQVVWLElBQVYsRUFBZ0JFLGFBQWFNLElBQTdCLENBQWYsR0FBb0RSLElBQXJFLENBRUEsSUFBTVcsVUFBVSxxQkFBWUYsUUFBWixFQUFzQixFQUFFRyxlQUFlLElBQWpCLEVBQXRCLENBQWhCLENBQ0FELFFBQVFFLE9BQVIsQ0FBZ0IsVUFBQ0MsTUFBRCxFQUFZLENBQzFCLG9CQUNBLElBQU1DLFFBQVEsRUFDWkMsTUFBTUYsT0FBT0UsSUFERCxFQUVaUixNQUFNQSxrQkFBS0UsSUFBTCxDQUFVSCxtQkFBVixFQUErQk8sT0FBT0UsSUFBdEMsQ0FGTSxFQUdaRixjQUhZLEVBQWQ7OztBQU1BLFFBQUlBLE9BQU9HLFdBQVAsTUFBd0JiLFdBQVdXLEtBQVgsQ0FBNUIsRUFBK0M7QUFDN0NULGdCQUFVWSxJQUFWLENBQWVILEtBQWY7QUFDQVQsa0JBQVlQLFNBQVNDLElBQVQsRUFBZUMsT0FBZixFQUF3QmMsS0FBeEIsRUFBK0JULFNBQS9CLENBQVo7QUFDRCxLQUhELE1BR08sSUFBSVEsT0FBT0ssTUFBUCxNQUFtQmQsWUFBWVUsS0FBWixDQUF2QixFQUEyQztBQUNoRFQsZ0JBQVVZLElBQVYsQ0FBZUgsS0FBZjtBQUNEO0FBQ0YsR0FkRDs7QUFnQkEsU0FBT1QsU0FBUDtBQUNEIiwiZmlsZSI6ImZzV2Fsay5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhpcyBpcyBpbnRlbmRlZCB0byBwcm92aWRlIHNpbWlsYXIgY2FwYWJpbGl0eSBhcyB0aGUgc3luYyBhcGkgZnJvbSBAbm9kZWxpYi9mcy53YWxrLCB1bnRpbCBgZXNsaW50LXBsdWdpbi1pbXBvcnRgXG4gKiBpcyB3aWxsaW5nIHRvIG1vZGVybml6ZSBhbmQgdXBkYXRlIHRoZWlyIG1pbmltdW0gbm9kZSB2ZXJzaW9uIHRvIGF0IGxlYXN0IHYxNi4gIEkgaW50ZW50aW9uYWxseSBtYWRlIHRoZVxuICogc2hhcGUgb2YgdGhlIEFQSSAoZm9yIHRoZSBwYXJ0IHdlJ3JlIHVzaW5nKSB0aGUgc2FtZSBhcyBAbm9kZWxpYi9mcy53YWxrIHNvIHRoYXQgdGhhdCBjYW4gYmUgc3dhcHBlZCBpblxuICogd2hlbiB0aGUgcmVwbyBpcyByZWFkeSBmb3IgaXQuXG4gKi9cblxuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyByZWFkZGlyU3luYyB9IGZyb20gJ2ZzJztcblxuLyoqIEB0eXBlZGVmIHt7IG5hbWU6IHN0cmluZywgcGF0aDogc3RyaW5nLCBkaXJlbnQ6IGltcG9ydCgnZnMnKS5EaXJlbnQgfX0gRW50cnkgKi9cblxuLyoqXG4gKiBEbyBhIGNvbXByZWhlbnNpdmUgd2FsayBvZiB0aGUgcHJvdmlkZWQgc3JjIGRpcmVjdG9yeSwgYW5kIGNvbGxlY3QgYWxsIGVudHJpZXMuICBGaWx0ZXIgb3V0XG4gKiBhbnkgZGlyZWN0b3JpZXMgb3IgZW50cmllcyB1c2luZyB0aGUgb3B0aW9uYWwgZmlsdGVyIGZ1bmN0aW9ucy5cbiAqIEBwYXJhbSB7c3RyaW5nfSByb290IC0gcGF0aCB0byB0aGUgcm9vdCBvZiB0aGUgZm9sZGVyIHdlJ3JlIHdhbGtpbmdcbiAqIEBwYXJhbSB7eyBkZWVwRmlsdGVyPzogKGVudHJ5OiBFbnRyeSkgPT4gYm9vbGVhbiwgZW50cnlGaWx0ZXI/OiAoZW50cnk6IEVudHJ5KSA9PiBib29sZWFuIH19IG9wdGlvbnNcbiAqIEBwYXJhbSB7RW50cnl9IGN1cnJlbnRFbnRyeSAtIGVudHJ5IGZvciB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2UncmUgd29ya2luZyBpblxuICogQHBhcmFtIHtFbnRyeVtdfSBleGlzdGluZ0VudHJpZXMgLSBsaXN0IG9mIGFsbCBlbnRyaWVzIHNvIGZhclxuICogQHJldHVybnMge0VudHJ5W119IGFuIGFycmF5IG9mIGRpcmVjdG9yeSBlbnRyaWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YWxrU3luYyhyb290LCBvcHRpb25zLCBjdXJyZW50RW50cnksIGV4aXN0aW5nRW50cmllcykge1xuICAvLyBFeHRyYWN0IHRoZSBmaWx0ZXIgZnVuY3Rpb25zLiBEZWZhdWx0IHRvIGV2YWx1YXRpbmcgdHJ1ZSwgaWYgbm8gZmlsdGVyIHBhc3NlZCBpbi5cbiAgY29uc3QgeyBkZWVwRmlsdGVyID0gKCkgPT4gdHJ1ZSwgZW50cnlGaWx0ZXIgPSAoKSA9PiB0cnVlIH0gPSBvcHRpb25zO1xuXG4gIGxldCBlbnRyeUxpc3QgPSBleGlzdGluZ0VudHJpZXMgfHwgW107XG4gIGNvbnN0IGN1cnJlbnRSZWxhdGl2ZVBhdGggPSBjdXJyZW50RW50cnkgPyBjdXJyZW50RW50cnkucGF0aCA6ICcuJztcbiAgY29uc3QgZnVsbFBhdGggPSBjdXJyZW50RW50cnkgPyBwYXRoLmpvaW4ocm9vdCwgY3VycmVudEVudHJ5LnBhdGgpIDogcm9vdDtcblxuICBjb25zdCBkaXJlbnRzID0gcmVhZGRpclN5bmMoZnVsbFBhdGgsIHsgd2l0aEZpbGVUeXBlczogdHJ1ZSB9KTtcbiAgZGlyZW50cy5mb3JFYWNoKChkaXJlbnQpID0+IHtcbiAgICAvKiogQHR5cGUge0VudHJ5fSAqL1xuICAgIGNvbnN0IGVudHJ5ID0ge1xuICAgICAgbmFtZTogZGlyZW50Lm5hbWUsXG4gICAgICBwYXRoOiBwYXRoLmpvaW4oY3VycmVudFJlbGF0aXZlUGF0aCwgZGlyZW50Lm5hbWUpLFxuICAgICAgZGlyZW50LFxuICAgIH07XG5cbiAgICBpZiAoZGlyZW50LmlzRGlyZWN0b3J5KCkgJiYgZGVlcEZpbHRlcihlbnRyeSkpIHtcbiAgICAgIGVudHJ5TGlzdC5wdXNoKGVudHJ5KTtcbiAgICAgIGVudHJ5TGlzdCA9IHdhbGtTeW5jKHJvb3QsIG9wdGlvbnMsIGVudHJ5LCBlbnRyeUxpc3QpO1xuICAgIH0gZWxzZSBpZiAoZGlyZW50LmlzRmlsZSgpICYmIGVudHJ5RmlsdGVyKGVudHJ5KSkge1xuICAgICAgZW50cnlMaXN0LnB1c2goZW50cnkpO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGVudHJ5TGlzdDtcbn1cbiJdfQ==

File diff suppressed because one or more lines are too long

View file

@ -2,16 +2,16 @@
getContextPackagePath = getContextPackagePath;exports.
getFilePackagePath = getFilePackagePath;exports.
getFilePackageName = getFilePackageName;var _path = require('path');var _pkgUp = require('eslint-module-utils/pkgUp');var _pkgUp2 = _interopRequireDefault(_pkgUp);var _readPkgUp2 = require('eslint-module-utils/readPkgUp');var _readPkgUp3 = _interopRequireDefault(_readPkgUp2);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };}function getContextPackagePath(context) {return getFilePackagePath(context.getPhysicalFilename ? context.getPhysicalFilename() : context.getFilename());}function getFilePackagePath(filePath) {var fp = (0, _pkgUp2['default'])({ cwd: filePath });return (0, _path.dirname)(fp);}function getFilePackageName(filePath) {var _readPkgUp =
getContextPackagePath = getContextPackagePath;exports.
getFilePackageName = getFilePackageName;var _path = require('path');var _pkgUp = require('eslint-module-utils/pkgUp');var _pkgUp2 = _interopRequireDefault(_pkgUp);var _readPkgUp2 = require('eslint-module-utils/readPkgUp');var _readPkgUp3 = _interopRequireDefault(_readPkgUp2);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };}function getFilePackagePath(filePath) {var fp = (0, _pkgUp2['default'])({ cwd: filePath });return (0, _path.dirname)(fp);}function getContextPackagePath(context) {return getFilePackagePath(context.getPhysicalFilename ? context.getPhysicalFilename() : context.getFilename());}function getFilePackageName(filePath) {var _readPkgUp =
(0, _readPkgUp3['default'])({ cwd: filePath, normalize: false }),pkg = _readPkgUp.pkg,path = _readPkgUp.path;
if (pkg) {
// recursion in case of intermediate esm package.json without name found
@ -19,4 +19,4 @@ getFilePackageName = getFilePackageName;var _path = require('path');var _pkgUp =
}
return null;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3BhY2thZ2VQYXRoLmpzIl0sIm5hbWVzIjpbImdldENvbnRleHRQYWNrYWdlUGF0aCIsImdldEZpbGVQYWNrYWdlUGF0aCIsImdldEZpbGVQYWNrYWdlTmFtZSIsImNvbnRleHQiLCJnZXRQaHlzaWNhbEZpbGVuYW1lIiwiZ2V0RmlsZW5hbWUiLCJmaWxlUGF0aCIsImZwIiwiY3dkIiwibm9ybWFsaXplIiwicGtnIiwicGF0aCIsIm5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7QUFJZ0JBLHFCLEdBQUFBLHFCOzs7O0FBSUFDLGtCLEdBQUFBLGtCOzs7OztBQUtBQyxrQixHQUFBQSxrQixDQWJoQiw0QkFDQSxrRCw2Q0FDQSwyRCxxSkFFTyxTQUFTRixxQkFBVCxDQUErQkcsT0FBL0IsRUFBd0MsQ0FDN0MsT0FBT0YsbUJBQW1CRSxRQUFRQyxtQkFBUixHQUE4QkQsUUFBUUMsbUJBQVIsRUFBOUIsR0FBOERELFFBQVFFLFdBQVIsRUFBakYsQ0FBUCxDQUNELENBRU0sU0FBU0osa0JBQVQsQ0FBNEJLLFFBQTVCLEVBQXNDLENBQzNDLElBQU1DLEtBQUssd0JBQU0sRUFBRUMsS0FBS0YsUUFBUCxFQUFOLENBQVgsQ0FDQSxPQUFPLG1CQUFRQyxFQUFSLENBQVAsQ0FDRCxDQUVNLFNBQVNMLGtCQUFULENBQTRCSSxRQUE1QixFQUFzQztBQUNyQiw4QkFBVSxFQUFFRSxLQUFLRixRQUFQLEVBQWlCRyxXQUFXLEtBQTVCLEVBQVYsQ0FEcUIsQ0FDbkNDLEdBRG1DLGNBQ25DQSxHQURtQyxDQUM5QkMsSUFEOEIsY0FDOUJBLElBRDhCO0FBRTNDLE1BQUlELEdBQUosRUFBUztBQUNQO0FBQ0EsV0FBT0EsSUFBSUUsSUFBSixJQUFZVixtQkFBbUIsbUJBQVEsbUJBQVFTLElBQVIsQ0FBUixDQUFuQixDQUFuQjtBQUNEO0FBQ0QsU0FBTyxJQUFQO0FBQ0QiLCJmaWxlIjoicGFja2FnZVBhdGguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkaXJuYW1lIH0gZnJvbSAncGF0aCc7XG5pbXBvcnQgcGtnVXAgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9wa2dVcCc7XG5pbXBvcnQgcmVhZFBrZ1VwIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVhZFBrZ1VwJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbnRleHRQYWNrYWdlUGF0aChjb250ZXh0KSB7XG4gIHJldHVybiBnZXRGaWxlUGFja2FnZVBhdGgoY29udGV4dC5nZXRQaHlzaWNhbEZpbGVuYW1lID8gY29udGV4dC5nZXRQaHlzaWNhbEZpbGVuYW1lKCkgOiBjb250ZXh0LmdldEZpbGVuYW1lKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZVBhY2thZ2VQYXRoKGZpbGVQYXRoKSB7XG4gIGNvbnN0IGZwID0gcGtnVXAoeyBjd2Q6IGZpbGVQYXRoIH0pO1xuICByZXR1cm4gZGlybmFtZShmcCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlUGFja2FnZU5hbWUoZmlsZVBhdGgpIHtcbiAgY29uc3QgeyBwa2csIHBhdGggfSA9IHJlYWRQa2dVcCh7IGN3ZDogZmlsZVBhdGgsIG5vcm1hbGl6ZTogZmFsc2UgfSk7XG4gIGlmIChwa2cpIHtcbiAgICAvLyByZWN1cnNpb24gaW4gY2FzZSBvZiBpbnRlcm1lZGlhdGUgZXNtIHBhY2thZ2UuanNvbiB3aXRob3V0IG5hbWUgZm91bmRcbiAgICByZXR1cm4gcGtnLm5hbWUgfHwgZ2V0RmlsZVBhY2thZ2VOYW1lKGRpcm5hbWUoZGlybmFtZShwYXRoKSkpO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3BhY2thZ2VQYXRoLmpzIl0sIm5hbWVzIjpbImdldEZpbGVQYWNrYWdlUGF0aCIsImdldENvbnRleHRQYWNrYWdlUGF0aCIsImdldEZpbGVQYWNrYWdlTmFtZSIsImZpbGVQYXRoIiwiZnAiLCJjd2QiLCJjb250ZXh0IiwiZ2V0UGh5c2ljYWxGaWxlbmFtZSIsImdldEZpbGVuYW1lIiwibm9ybWFsaXplIiwicGtnIiwicGF0aCIsIm5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7QUFJZ0JBLGtCLEdBQUFBLGtCOzs7OztBQUtBQyxxQixHQUFBQSxxQjs7OztBQUlBQyxrQixHQUFBQSxrQixDQWJoQiw0QkFDQSxrRCw2Q0FDQSwyRCxxSkFFTyxTQUFTRixrQkFBVCxDQUE0QkcsUUFBNUIsRUFBc0MsQ0FDM0MsSUFBTUMsS0FBSyx3QkFBTSxFQUFFQyxLQUFLRixRQUFQLEVBQU4sQ0FBWCxDQUNBLE9BQU8sbUJBQVFDLEVBQVIsQ0FBUCxDQUNELENBRU0sU0FBU0gscUJBQVQsQ0FBK0JLLE9BQS9CLEVBQXdDLENBQzdDLE9BQU9OLG1CQUFtQk0sUUFBUUMsbUJBQVIsR0FBOEJELFFBQVFDLG1CQUFSLEVBQTlCLEdBQThERCxRQUFRRSxXQUFSLEVBQWpGLENBQVAsQ0FDRCxDQUVNLFNBQVNOLGtCQUFULENBQTRCQyxRQUE1QixFQUFzQztBQUNyQiw4QkFBVSxFQUFFRSxLQUFLRixRQUFQLEVBQWlCTSxXQUFXLEtBQTVCLEVBQVYsQ0FEcUIsQ0FDbkNDLEdBRG1DLGNBQ25DQSxHQURtQyxDQUM5QkMsSUFEOEIsY0FDOUJBLElBRDhCO0FBRTNDLE1BQUlELEdBQUosRUFBUztBQUNQO0FBQ0EsV0FBT0EsSUFBSUUsSUFBSixJQUFZVixtQkFBbUIsbUJBQVEsbUJBQVFTLElBQVIsQ0FBUixDQUFuQixDQUFuQjtBQUNEO0FBQ0QsU0FBTyxJQUFQO0FBQ0QiLCJmaWxlIjoicGFja2FnZVBhdGguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkaXJuYW1lIH0gZnJvbSAncGF0aCc7XG5pbXBvcnQgcGtnVXAgZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9wa2dVcCc7XG5pbXBvcnQgcmVhZFBrZ1VwIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVhZFBrZ1VwJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVQYWNrYWdlUGF0aChmaWxlUGF0aCkge1xuICBjb25zdCBmcCA9IHBrZ1VwKHsgY3dkOiBmaWxlUGF0aCB9KTtcbiAgcmV0dXJuIGRpcm5hbWUoZnApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29udGV4dFBhY2thZ2VQYXRoKGNvbnRleHQpIHtcbiAgcmV0dXJuIGdldEZpbGVQYWNrYWdlUGF0aChjb250ZXh0LmdldFBoeXNpY2FsRmlsZW5hbWUgPyBjb250ZXh0LmdldFBoeXNpY2FsRmlsZW5hbWUoKSA6IGNvbnRleHQuZ2V0RmlsZW5hbWUoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlUGFja2FnZU5hbWUoZmlsZVBhdGgpIHtcbiAgY29uc3QgeyBwa2csIHBhdGggfSA9IHJlYWRQa2dVcCh7IGN3ZDogZmlsZVBhdGgsIG5vcm1hbGl6ZTogZmFsc2UgfSk7XG4gIGlmIChwa2cpIHtcbiAgICAvLyByZWN1cnNpb24gaW4gY2FzZSBvZiBpbnRlcm1lZGlhdGUgZXNtIHBhY2thZ2UuanNvbiB3aXRob3V0IG5hbWUgZm91bmRcbiAgICByZXR1cm4gcGtnLm5hbWUgfHwgZ2V0RmlsZVBhY2thZ2VOYW1lKGRpcm5hbWUoZGlybmFtZShwYXRoKSkpO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuIl19

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,33 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports['default'] =
childContext;var _hash = require('eslint-module-utils/hash');var parserOptionsHash = '';var prevParserOptions = '';var settingsHash = '';var prevSettings = ''; /**
* don't hold full context object in memory, just grab what we need.
* also calculate a cacheKey, where parts of the cacheKey hash are memoized
*/function childContext(path, context) {var settings = context.settings,parserOptions = context.parserOptions,parserPath = context.parserPath;if (JSON.stringify(settings) !== prevSettings) {
settingsHash = (0, _hash.hashObject)({ settings: settings }).digest('hex');
prevSettings = JSON.stringify(settings);
}
if (JSON.stringify(parserOptions) !== prevParserOptions) {
parserOptionsHash = (0, _hash.hashObject)({ parserOptions: parserOptions }).digest('hex');
prevParserOptions = JSON.stringify(parserOptions);
}
return {
cacheKey: String(parserPath) + parserOptionsHash + settingsHash + String(path),
settings: settings,
parserOptions: parserOptions,
parserPath: parserPath,
path: path };
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRNYXAvY2hpbGRDb250ZXh0LmpzIl0sIm5hbWVzIjpbImNoaWxkQ29udGV4dCIsInBhcnNlck9wdGlvbnNIYXNoIiwicHJldlBhcnNlck9wdGlvbnMiLCJzZXR0aW5nc0hhc2giLCJwcmV2U2V0dGluZ3MiLCJwYXRoIiwiY29udGV4dCIsInNldHRpbmdzIiwicGFyc2VyT3B0aW9ucyIsInBhcnNlclBhdGgiLCJKU09OIiwic3RyaW5naWZ5IiwiZGlnZXN0IiwiY2FjaGVLZXkiLCJTdHJpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBV3dCQSxZLENBWHhCLGdEQUVBLElBQUlDLG9CQUFvQixFQUF4QixDQUNBLElBQUlDLG9CQUFvQixFQUF4QixDQUNBLElBQUlDLGVBQWUsRUFBbkIsQ0FDQSxJQUFJQyxlQUFlLEVBQW5CLEMsQ0FFQTs7O21LQUllLFNBQVNKLFlBQVQsQ0FBc0JLLElBQXRCLEVBQTRCQyxPQUE1QixFQUFxQyxLQUMxQ0MsUUFEMEMsR0FDRkQsT0FERSxDQUMxQ0MsUUFEMEMsQ0FDaENDLGFBRGdDLEdBQ0ZGLE9BREUsQ0FDaENFLGFBRGdDLENBQ2pCQyxVQURpQixHQUNGSCxPQURFLENBQ2pCRyxVQURpQixDQUdsRCxJQUFJQyxLQUFLQyxTQUFMLENBQWVKLFFBQWYsTUFBNkJILFlBQWpDLEVBQStDO0FBQzdDRCxtQkFBZSxzQkFBVyxFQUFFSSxrQkFBRixFQUFYLEVBQXlCSyxNQUF6QixDQUFnQyxLQUFoQyxDQUFmO0FBQ0FSLG1CQUFlTSxLQUFLQyxTQUFMLENBQWVKLFFBQWYsQ0FBZjtBQUNEOztBQUVELE1BQUlHLEtBQUtDLFNBQUwsQ0FBZUgsYUFBZixNQUFrQ04saUJBQXRDLEVBQXlEO0FBQ3ZERCx3QkFBb0Isc0JBQVcsRUFBRU8sNEJBQUYsRUFBWCxFQUE4QkksTUFBOUIsQ0FBcUMsS0FBckMsQ0FBcEI7QUFDQVYsd0JBQW9CUSxLQUFLQyxTQUFMLENBQWVILGFBQWYsQ0FBcEI7QUFDRDs7QUFFRCxTQUFPO0FBQ0xLLGNBQVVDLE9BQU9MLFVBQVAsSUFBcUJSLGlCQUFyQixHQUF5Q0UsWUFBekMsR0FBd0RXLE9BQU9ULElBQVAsQ0FEN0Q7QUFFTEUsc0JBRks7QUFHTEMsZ0NBSEs7QUFJTEMsMEJBSks7QUFLTEosY0FMSyxFQUFQOztBQU9EIiwiZmlsZSI6ImNoaWxkQ29udGV4dC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhhc2hPYmplY3QgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL2hhc2gnO1xuXG5sZXQgcGFyc2VyT3B0aW9uc0hhc2ggPSAnJztcbmxldCBwcmV2UGFyc2VyT3B0aW9ucyA9ICcnO1xubGV0IHNldHRpbmdzSGFzaCA9ICcnO1xubGV0IHByZXZTZXR0aW5ncyA9ICcnO1xuXG4vKipcbiAqIGRvbid0IGhvbGQgZnVsbCBjb250ZXh0IG9iamVjdCBpbiBtZW1vcnksIGp1c3QgZ3JhYiB3aGF0IHdlIG5lZWQuXG4gKiBhbHNvIGNhbGN1bGF0ZSBhIGNhY2hlS2V5LCB3aGVyZSBwYXJ0cyBvZiB0aGUgY2FjaGVLZXkgaGFzaCBhcmUgbWVtb2l6ZWRcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY2hpbGRDb250ZXh0KHBhdGgsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBzZXR0aW5ncywgcGFyc2VyT3B0aW9ucywgcGFyc2VyUGF0aCB9ID0gY29udGV4dDtcblxuICBpZiAoSlNPTi5zdHJpbmdpZnkoc2V0dGluZ3MpICE9PSBwcmV2U2V0dGluZ3MpIHtcbiAgICBzZXR0aW5nc0hhc2ggPSBoYXNoT2JqZWN0KHsgc2V0dGluZ3MgfSkuZGlnZXN0KCdoZXgnKTtcbiAgICBwcmV2U2V0dGluZ3MgPSBKU09OLnN0cmluZ2lmeShzZXR0aW5ncyk7XG4gIH1cblxuICBpZiAoSlNPTi5zdHJpbmdpZnkocGFyc2VyT3B0aW9ucykgIT09IHByZXZQYXJzZXJPcHRpb25zKSB7XG4gICAgcGFyc2VyT3B0aW9uc0hhc2ggPSBoYXNoT2JqZWN0KHsgcGFyc2VyT3B0aW9ucyB9KS5kaWdlc3QoJ2hleCcpO1xuICAgIHByZXZQYXJzZXJPcHRpb25zID0gSlNPTi5zdHJpbmdpZnkocGFyc2VyT3B0aW9ucyk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGNhY2hlS2V5OiBTdHJpbmcocGFyc2VyUGF0aCkgKyBwYXJzZXJPcHRpb25zSGFzaCArIHNldHRpbmdzSGFzaCArIFN0cmluZyhwYXRoKSxcbiAgICBzZXR0aW5ncyxcbiAgICBwYXJzZXJPcHRpb25zLFxuICAgIHBhcnNlclBhdGgsXG4gICAgcGF0aCxcbiAgfTtcbn1cbiJdfQ==

90
node_modules/eslint-plugin-import/lib/exportMap/doc.js generated vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,39 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });var _createClass = function () {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);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _childContext = require('./childContext');var _childContext2 = _interopRequireDefault(_childContext);
var _remotePath = require('./remotePath');function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}var
Namespace = function () {
function Namespace(
path,
context,
ExportMapBuilder)
{_classCallCheck(this, Namespace);
this.remotePathResolver = new _remotePath.RemotePath(path, context);
this.context = context;
this.ExportMapBuilder = ExportMapBuilder;
this.namespaces = new Map();
}_createClass(Namespace, [{ key: 'resolveImport', value: function () {function resolveImport(
value) {
var rp = this.remotePathResolver.resolve(value);
if (rp == null) {return null;}
return this.ExportMapBuilder['for']((0, _childContext2['default'])(rp, this.context));
}return resolveImport;}() }, { key: 'getNamespace', value: function () {function getNamespace(
identifier) {var _this = this;
if (!this.namespaces.has(identifier.name)) {return;}
return function () {return _this.resolveImport(_this.namespaces.get(identifier.name));};
}return getNamespace;}() }, { key: 'add', value: function () {function add(
object, identifier) {
var nsfn = this.getNamespace(identifier);
if (nsfn) {
Object.defineProperty(object, 'namespace', { get: nsfn });
}
return object;
}return add;}() }, { key: 'rawSet', value: function () {function rawSet(
name, value) {
this.namespaces.set(name, value);
}return rawSet;}() }]);return Namespace;}();exports['default'] = Namespace;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRNYXAvbmFtZXNwYWNlLmpzIl0sIm5hbWVzIjpbIk5hbWVzcGFjZSIsInBhdGgiLCJjb250ZXh0IiwiRXhwb3J0TWFwQnVpbGRlciIsInJlbW90ZVBhdGhSZXNvbHZlciIsIlJlbW90ZVBhdGgiLCJuYW1lc3BhY2VzIiwiTWFwIiwidmFsdWUiLCJycCIsInJlc29sdmUiLCJpZGVudGlmaWVyIiwiaGFzIiwibmFtZSIsInJlc29sdmVJbXBvcnQiLCJnZXQiLCJvYmplY3QiLCJuc2ZuIiwiZ2V0TmFtZXNwYWNlIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJzZXQiXSwibWFwcGluZ3MiOiJnbkJBQUEsOEM7QUFDQSwwQzs7QUFFcUJBLFM7QUFDbkI7QUFDRUMsTUFERjtBQUVFQyxTQUZGO0FBR0VDLGtCQUhGO0FBSUU7QUFDQSxTQUFLQyxrQkFBTCxHQUEwQixJQUFJQyxzQkFBSixDQUFlSixJQUFmLEVBQXFCQyxPQUFyQixDQUExQjtBQUNBLFNBQUtBLE9BQUwsR0FBZUEsT0FBZjtBQUNBLFNBQUtDLGdCQUFMLEdBQXdCQSxnQkFBeEI7QUFDQSxTQUFLRyxVQUFMLEdBQWtCLElBQUlDLEdBQUosRUFBbEI7QUFDRCxHOztBQUVhQyxXLEVBQU87QUFDbkIsWUFBTUMsS0FBSyxLQUFLTCxrQkFBTCxDQUF3Qk0sT0FBeEIsQ0FBZ0NGLEtBQWhDLENBQVg7QUFDQSxZQUFJQyxNQUFNLElBQVYsRUFBZ0IsQ0FBRSxPQUFPLElBQVAsQ0FBYztBQUNoQyxlQUFPLEtBQUtOLGdCQUFMLFFBQTBCLCtCQUFhTSxFQUFiLEVBQWlCLEtBQUtQLE9BQXRCLENBQTFCLENBQVA7QUFDRCxPOztBQUVZUyxnQixFQUFZO0FBQ3ZCLFlBQUksQ0FBQyxLQUFLTCxVQUFMLENBQWdCTSxHQUFoQixDQUFvQkQsV0FBV0UsSUFBL0IsQ0FBTCxFQUEyQyxDQUFFLE9BQVM7QUFDdEQsZUFBTyxvQkFBTSxNQUFLQyxhQUFMLENBQW1CLE1BQUtSLFVBQUwsQ0FBZ0JTLEdBQWhCLENBQW9CSixXQUFXRSxJQUEvQixDQUFuQixDQUFOLEVBQVA7QUFDRCxPOztBQUVHRyxZLEVBQVFMLFUsRUFBWTtBQUN0QixZQUFNTSxPQUFPLEtBQUtDLFlBQUwsQ0FBa0JQLFVBQWxCLENBQWI7QUFDQSxZQUFJTSxJQUFKLEVBQVU7QUFDUkUsaUJBQU9DLGNBQVAsQ0FBc0JKLE1BQXRCLEVBQThCLFdBQTlCLEVBQTJDLEVBQUVELEtBQUtFLElBQVAsRUFBM0M7QUFDRDs7QUFFRCxlQUFPRCxNQUFQO0FBQ0QsTzs7QUFFTUgsVSxFQUFNTCxLLEVBQU87QUFDbEIsYUFBS0YsVUFBTCxDQUFnQmUsR0FBaEIsQ0FBb0JSLElBQXBCLEVBQTBCTCxLQUExQjtBQUNELE8sZ0VBbENrQlIsUyIsImZpbGUiOiJuYW1lc3BhY2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2hpbGRDb250ZXh0IGZyb20gJy4vY2hpbGRDb250ZXh0JztcbmltcG9ydCB7IFJlbW90ZVBhdGggfSBmcm9tICcuL3JlbW90ZVBhdGgnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOYW1lc3BhY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwYXRoLFxuICAgIGNvbnRleHQsXG4gICAgRXhwb3J0TWFwQnVpbGRlcixcbiAgKSB7XG4gICAgdGhpcy5yZW1vdGVQYXRoUmVzb2x2ZXIgPSBuZXcgUmVtb3RlUGF0aChwYXRoLCBjb250ZXh0KTtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgIHRoaXMuRXhwb3J0TWFwQnVpbGRlciA9IEV4cG9ydE1hcEJ1aWxkZXI7XG4gICAgdGhpcy5uYW1lc3BhY2VzID0gbmV3IE1hcCgpO1xuICB9XG5cbiAgcmVzb2x2ZUltcG9ydCh2YWx1ZSkge1xuICAgIGNvbnN0IHJwID0gdGhpcy5yZW1vdGVQYXRoUmVzb2x2ZXIucmVzb2x2ZSh2YWx1ZSk7XG4gICAgaWYgKHJwID09IG51bGwpIHsgcmV0dXJuIG51bGw7IH1cbiAgICByZXR1cm4gdGhpcy5FeHBvcnRNYXBCdWlsZGVyLmZvcihjaGlsZENvbnRleHQocnAsIHRoaXMuY29udGV4dCkpO1xuICB9XG5cbiAgZ2V0TmFtZXNwYWNlKGlkZW50aWZpZXIpIHtcbiAgICBpZiAoIXRoaXMubmFtZXNwYWNlcy5oYXMoaWRlbnRpZmllci5uYW1lKSkgeyByZXR1cm47IH1cbiAgICByZXR1cm4gKCkgPT4gdGhpcy5yZXNvbHZlSW1wb3J0KHRoaXMubmFtZXNwYWNlcy5nZXQoaWRlbnRpZmllci5uYW1lKSk7XG4gIH1cblxuICBhZGQob2JqZWN0LCBpZGVudGlmaWVyKSB7XG4gICAgY29uc3QgbnNmbiA9IHRoaXMuZ2V0TmFtZXNwYWNlKGlkZW50aWZpZXIpO1xuICAgIGlmIChuc2ZuKSB7XG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqZWN0LCAnbmFtZXNwYWNlJywgeyBnZXQ6IG5zZm4gfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9iamVjdDtcbiAgfVxuXG4gIHJhd1NldChuYW1lLCB2YWx1ZSkge1xuICAgIHRoaXMubmFtZXNwYWNlcy5zZXQobmFtZSwgdmFsdWUpO1xuICB9XG59XG4iXX0=

View file

@ -0,0 +1,41 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports['default'] =
recursivePatternCapture; /**
* 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(function (p) {
if (p.type === 'ExperimentalRestProperty' || p.type === 'RestElement') {
callback(p.argument);
return;
}
recursivePatternCapture(p.value, callback);
});
break;
case 'ArrayPattern':
pattern.elements.forEach(function (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;
default:}
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRNYXAvcGF0dGVybkNhcHR1cmUuanMiXSwibmFtZXMiOlsicmVjdXJzaXZlUGF0dGVybkNhcHR1cmUiLCJwYXR0ZXJuIiwiY2FsbGJhY2siLCJ0eXBlIiwicHJvcGVydGllcyIsImZvckVhY2giLCJwIiwiYXJndW1lbnQiLCJ2YWx1ZSIsImVsZW1lbnRzIiwiZWxlbWVudCIsImxlZnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFPd0JBLHVCLEVBUHhCOzs7Ozs7NEJBT2UsU0FBU0EsdUJBQVQsQ0FBaUNDLE9BQWpDLEVBQTBDQyxRQUExQyxFQUFvRCxDQUNqRSxRQUFRRCxRQUFRRSxJQUFoQixHQUNFLEtBQUssWUFBTCxFQUFtQjtBQUNqQkQsZUFBU0QsT0FBVCxFQUNBLE1BRUYsS0FBSyxlQUFMLENBQ0VBLFFBQVFHLFVBQVIsQ0FBbUJDLE9BQW5CLENBQTJCLFVBQUNDLENBQUQsRUFBTztBQUNoQyxZQUFJQSxFQUFFSCxJQUFGLEtBQVcsMEJBQVgsSUFBeUNHLEVBQUVILElBQUYsS0FBVyxhQUF4RCxFQUF1RTtBQUNyRUQsbUJBQVNJLEVBQUVDLFFBQVg7QUFDQTtBQUNEO0FBQ0RQLGdDQUF3Qk0sRUFBRUUsS0FBMUIsRUFBaUNOLFFBQWpDO0FBQ0QsT0FORDtBQU9BOztBQUVGLFNBQUssY0FBTDtBQUNFRCxjQUFRUSxRQUFSLENBQWlCSixPQUFqQixDQUF5QixVQUFDSyxPQUFELEVBQWE7QUFDcEMsWUFBSUEsV0FBVyxJQUFmLEVBQXFCLENBQUUsT0FBUztBQUNoQyxZQUFJQSxRQUFRUCxJQUFSLEtBQWlCLDBCQUFqQixJQUErQ08sUUFBUVAsSUFBUixLQUFpQixhQUFwRSxFQUFtRjtBQUNqRkQsbUJBQVNRLFFBQVFILFFBQWpCO0FBQ0E7QUFDRDtBQUNEUCxnQ0FBd0JVLE9BQXhCLEVBQWlDUixRQUFqQztBQUNELE9BUEQ7QUFRQTs7QUFFRixTQUFLLG1CQUFMO0FBQ0VBLGVBQVNELFFBQVFVLElBQWpCO0FBQ0E7QUFDRixZQTdCRjs7QUErQkQiLCJmaWxlIjoicGF0dGVybkNhcHR1cmUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRyYXZlcnNlIGEgcGF0dGVybi9pZGVudGlmaWVyIG5vZGUsIGNhbGxpbmcgJ2NhbGxiYWNrJ1xuICogZm9yIGVhY2ggbGVhZiBpZGVudGlmaWVyLlxuICogQHBhcmFtICB7bm9kZX0gICBwYXR0ZXJuXG4gKiBAcGFyYW0gIHtGdW5jdGlvbn0gY2FsbGJhY2tcbiAqIEByZXR1cm4ge3ZvaWR9XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKHBhdHRlcm4sIGNhbGxiYWNrKSB7XG4gIHN3aXRjaCAocGF0dGVybi50eXBlKSB7XG4gICAgY2FzZSAnSWRlbnRpZmllcic6IC8vIGJhc2UgY2FzZVxuICAgICAgY2FsbGJhY2socGF0dGVybik7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ09iamVjdFBhdHRlcm4nOlxuICAgICAgcGF0dGVybi5wcm9wZXJ0aWVzLmZvckVhY2goKHApID0+IHtcbiAgICAgICAgaWYgKHAudHlwZSA9PT0gJ0V4cGVyaW1lbnRhbFJlc3RQcm9wZXJ0eScgfHwgcC50eXBlID09PSAnUmVzdEVsZW1lbnQnKSB7XG4gICAgICAgICAgY2FsbGJhY2socC5hcmd1bWVudCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKHAudmFsdWUsIGNhbGxiYWNrKTtcbiAgICAgIH0pO1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdBcnJheVBhdHRlcm4nOlxuICAgICAgcGF0dGVybi5lbGVtZW50cy5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgIGlmIChlbGVtZW50ID09IG51bGwpIHsgcmV0dXJuOyB9XG4gICAgICAgIGlmIChlbGVtZW50LnR5cGUgPT09ICdFeHBlcmltZW50YWxSZXN0UHJvcGVydHknIHx8IGVsZW1lbnQudHlwZSA9PT0gJ1Jlc3RFbGVtZW50Jykge1xuICAgICAgICAgIGNhbGxiYWNrKGVsZW1lbnQuYXJndW1lbnQpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICByZWN1cnNpdmVQYXR0ZXJuQ2FwdHVyZShlbGVtZW50LCBjYWxsYmFjayk7XG4gICAgICB9KTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSAnQXNzaWdubWVudFBhdHRlcm4nOlxuICAgICAgY2FsbGJhY2socGF0dGVybi5sZWZ0KTtcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gIH1cbn1cbiJdfQ==

View file

@ -0,0 +1,12 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.RemotePath = undefined;var _createClass = function () {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);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();var _resolve2 = require('eslint-module-utils/resolve');var _resolve3 = _interopRequireDefault(_resolve2);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}var
RemotePath = exports.RemotePath = function () {
function RemotePath(path, context) {_classCallCheck(this, RemotePath);
this.path = path;
this.context = context;
}_createClass(RemotePath, [{ key: 'resolve', value: function () {function resolve(
value) {
return _resolve3['default'].relative(value, this.path, this.context.settings);
}return resolve;}() }]);return RemotePath;}();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRNYXAvcmVtb3RlUGF0aC5qcyJdLCJuYW1lcyI6WyJSZW1vdGVQYXRoIiwicGF0aCIsImNvbnRleHQiLCJ2YWx1ZSIsInJlc29sdmUiLCJyZWxhdGl2ZSIsInNldHRpbmdzIl0sIm1hcHBpbmdzIjoiK29CQUFBLHVEOztBQUVhQSxVLFdBQUFBLFU7QUFDWCxzQkFBWUMsSUFBWixFQUFrQkMsT0FBbEIsRUFBMkI7QUFDekIsU0FBS0QsSUFBTCxHQUFZQSxJQUFaO0FBQ0EsU0FBS0MsT0FBTCxHQUFlQSxPQUFmO0FBQ0QsRzs7QUFFT0MsVyxFQUFPO0FBQ2IsZUFBT0MscUJBQVFDLFFBQVIsQ0FBaUJGLEtBQWpCLEVBQXdCLEtBQUtGLElBQTdCLEVBQW1DLEtBQUtDLE9BQUwsQ0FBYUksUUFBaEQsQ0FBUDtBQUNELE8iLCJmaWxlIjoicmVtb3RlUGF0aC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCByZXNvbHZlIGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvcmVzb2x2ZSc7XG5cbmV4cG9ydCBjbGFzcyBSZW1vdGVQYXRoIHtcbiAgY29uc3RydWN0b3IocGF0aCwgY29udGV4dCkge1xuICAgIHRoaXMucGF0aCA9IHBhdGg7XG4gICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgfVxuXG4gIHJlc29sdmUodmFsdWUpIHtcbiAgICByZXR1cm4gcmVzb2x2ZS5yZWxhdGl2ZSh2YWx1ZSwgdGhpcy5wYXRoLCB0aGlzLmNvbnRleHQuc2V0dGluZ3MpO1xuICB9XG59XG4iXX0=

View file

@ -0,0 +1,33 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports['default'] = processSpecifier;function processSpecifier(specifier, astNode, exportMap, namespace) {
var nsource = astNode.source && astNode.source.value;
var exportMeta = {};
var local = void 0;
switch (specifier.type) {
case 'ExportDefaultSpecifier':
if (!nsource) {return;}
local = 'default';
break;
case 'ExportNamespaceSpecifier':
exportMap.namespace.set(specifier.exported.name, Object.defineProperty(exportMeta, 'namespace', {
get: function () {function get() {return namespace.resolveImport(nsource);}return get;}() }));
return;
case 'ExportAllDeclaration':
exportMap.namespace.set(specifier.exported.name || specifier.exported.value, namespace.add(exportMeta, specifier.source.value));
return;
case 'ExportSpecifier':
if (!astNode.source) {
exportMap.namespace.set(specifier.exported.name || specifier.exported.value, namespace.add(exportMeta, specifier.local));
return;
}
// else falls through
default:
local = specifier.local.name;
break;}
// todo: JSDoc
exportMap.reexports.set(specifier.exported.name, { local: local, getImport: function () {function getImport() {return namespace.resolveImport(nsource);}return getImport;}() });
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRNYXAvc3BlY2lmaWVyLmpzIl0sIm5hbWVzIjpbInByb2Nlc3NTcGVjaWZpZXIiLCJzcGVjaWZpZXIiLCJhc3ROb2RlIiwiZXhwb3J0TWFwIiwibmFtZXNwYWNlIiwibnNvdXJjZSIsInNvdXJjZSIsInZhbHVlIiwiZXhwb3J0TWV0YSIsImxvY2FsIiwidHlwZSIsInNldCIsImV4cG9ydGVkIiwibmFtZSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0IiwicmVzb2x2ZUltcG9ydCIsImFkZCIsInJlZXhwb3J0cyIsImdldEltcG9ydCJdLCJtYXBwaW5ncyI6ImdHQUF3QkEsZ0IsQ0FBVCxTQUFTQSxnQkFBVCxDQUEwQkMsU0FBMUIsRUFBcUNDLE9BQXJDLEVBQThDQyxTQUE5QyxFQUF5REMsU0FBekQsRUFBb0U7QUFDakYsTUFBTUMsVUFBVUgsUUFBUUksTUFBUixJQUFrQkosUUFBUUksTUFBUixDQUFlQyxLQUFqRDtBQUNBLE1BQU1DLGFBQWEsRUFBbkI7QUFDQSxNQUFJQyxjQUFKOztBQUVBLFVBQVFSLFVBQVVTLElBQWxCO0FBQ0UsU0FBSyx3QkFBTDtBQUNFLFVBQUksQ0FBQ0wsT0FBTCxFQUFjLENBQUUsT0FBUztBQUN6QkksY0FBUSxTQUFSO0FBQ0E7QUFDRixTQUFLLDBCQUFMO0FBQ0VOLGdCQUFVQyxTQUFWLENBQW9CTyxHQUFwQixDQUF3QlYsVUFBVVcsUUFBVixDQUFtQkMsSUFBM0MsRUFBaURDLE9BQU9DLGNBQVAsQ0FBc0JQLFVBQXRCLEVBQWtDLFdBQWxDLEVBQStDO0FBQzlGUSxXQUQ4Riw4QkFDeEYsQ0FBRSxPQUFPWixVQUFVYSxhQUFWLENBQXdCWixPQUF4QixDQUFQLENBQTBDLENBRDRDLGdCQUEvQyxDQUFqRDs7QUFHQTtBQUNGLFNBQUssc0JBQUw7QUFDRUYsZ0JBQVVDLFNBQVYsQ0FBb0JPLEdBQXBCLENBQXdCVixVQUFVVyxRQUFWLENBQW1CQyxJQUFuQixJQUEyQlosVUFBVVcsUUFBVixDQUFtQkwsS0FBdEUsRUFBNkVILFVBQVVjLEdBQVYsQ0FBY1YsVUFBZCxFQUEwQlAsVUFBVUssTUFBVixDQUFpQkMsS0FBM0MsQ0FBN0U7QUFDQTtBQUNGLFNBQUssaUJBQUw7QUFDRSxVQUFJLENBQUNMLFFBQVFJLE1BQWIsRUFBcUI7QUFDbkJILGtCQUFVQyxTQUFWLENBQW9CTyxHQUFwQixDQUF3QlYsVUFBVVcsUUFBVixDQUFtQkMsSUFBbkIsSUFBMkJaLFVBQVVXLFFBQVYsQ0FBbUJMLEtBQXRFLEVBQTZFSCxVQUFVYyxHQUFWLENBQWNWLFVBQWQsRUFBMEJQLFVBQVVRLEtBQXBDLENBQTdFO0FBQ0E7QUFDRDtBQUNIO0FBQ0E7QUFDRUEsY0FBUVIsVUFBVVEsS0FBVixDQUFnQkksSUFBeEI7QUFDQSxZQXJCSjs7O0FBd0JBO0FBQ0FWLFlBQVVnQixTQUFWLENBQW9CUixHQUFwQixDQUF3QlYsVUFBVVcsUUFBVixDQUFtQkMsSUFBM0MsRUFBaUQsRUFBRUosWUFBRixFQUFTVyx3QkFBVyw2QkFBTWhCLFVBQVVhLGFBQVYsQ0FBd0JaLE9BQXhCLENBQU4sRUFBWCxvQkFBVCxFQUFqRDtBQUNEIiwiZmlsZSI6InNwZWNpZmllci5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHByb2Nlc3NTcGVjaWZpZXIoc3BlY2lmaWVyLCBhc3ROb2RlLCBleHBvcnRNYXAsIG5hbWVzcGFjZSkge1xuICBjb25zdCBuc291cmNlID0gYXN0Tm9kZS5zb3VyY2UgJiYgYXN0Tm9kZS5zb3VyY2UudmFsdWU7XG4gIGNvbnN0IGV4cG9ydE1ldGEgPSB7fTtcbiAgbGV0IGxvY2FsO1xuXG4gIHN3aXRjaCAoc3BlY2lmaWVyLnR5cGUpIHtcbiAgICBjYXNlICdFeHBvcnREZWZhdWx0U3BlY2lmaWVyJzpcbiAgICAgIGlmICghbnNvdXJjZSkgeyByZXR1cm47IH1cbiAgICAgIGxvY2FsID0gJ2RlZmF1bHQnO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnRXhwb3J0TmFtZXNwYWNlU3BlY2lmaWVyJzpcbiAgICAgIGV4cG9ydE1hcC5uYW1lc3BhY2Uuc2V0KHNwZWNpZmllci5leHBvcnRlZC5uYW1lLCBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0TWV0YSwgJ25hbWVzcGFjZScsIHtcbiAgICAgICAgZ2V0KCkgeyByZXR1cm4gbmFtZXNwYWNlLnJlc29sdmVJbXBvcnQobnNvdXJjZSk7IH0sXG4gICAgICB9KSk7XG4gICAgICByZXR1cm47XG4gICAgY2FzZSAnRXhwb3J0QWxsRGVjbGFyYXRpb24nOlxuICAgICAgZXhwb3J0TWFwLm5hbWVzcGFjZS5zZXQoc3BlY2lmaWVyLmV4cG9ydGVkLm5hbWUgfHwgc3BlY2lmaWVyLmV4cG9ydGVkLnZhbHVlLCBuYW1lc3BhY2UuYWRkKGV4cG9ydE1ldGEsIHNwZWNpZmllci5zb3VyY2UudmFsdWUpKTtcbiAgICAgIHJldHVybjtcbiAgICBjYXNlICdFeHBvcnRTcGVjaWZpZXInOlxuICAgICAgaWYgKCFhc3ROb2RlLnNvdXJjZSkge1xuICAgICAgICBleHBvcnRNYXAubmFtZXNwYWNlLnNldChzcGVjaWZpZXIuZXhwb3J0ZWQubmFtZSB8fCBzcGVjaWZpZXIuZXhwb3J0ZWQudmFsdWUsIG5hbWVzcGFjZS5hZGQoZXhwb3J0TWV0YSwgc3BlY2lmaWVyLmxvY2FsKSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAvLyBlbHNlIGZhbGxzIHRocm91Z2hcbiAgICBkZWZhdWx0OlxuICAgICAgbG9jYWwgPSBzcGVjaWZpZXIubG9jYWwubmFtZTtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgLy8gdG9kbzogSlNEb2NcbiAgZXhwb3J0TWFwLnJlZXhwb3J0cy5zZXQoc3BlY2lmaWVyLmV4cG9ydGVkLm5hbWUsIHsgbG9jYWwsIGdldEltcG9ydDogKCkgPT4gbmFtZXNwYWNlLnJlc29sdmVJbXBvcnQobnNvdXJjZSkgfSk7XG59XG4iXX0=

View file

@ -0,0 +1,44 @@
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.
isEsModuleInterop = isEsModuleInterop;var _path = require('path');var _tsconfigLoader = require('tsconfig-paths/lib/tsconfig-loader');var _hash = require('eslint-module-utils/hash');var ts = void 0;var tsconfigCache = new Map();function readTsConfig(context) {var tsconfigInfo = (0, _tsconfigLoader.tsConfigLoader)({ cwd: context.parserOptions && context.parserOptions.tsconfigRootDir || process.cwd(), getEnv: function () {function getEnv(key) {return process.env[key];}return getEnv;}() });try {if (tsconfigInfo.tsConfigPath !== undefined) {// Projects not using TypeScript won't have `typescript` installed.
if (!ts) {ts = require('typescript');} // eslint-disable-line import/no-extraneous-dependencies
var configFile = ts.readConfigFile(tsconfigInfo.tsConfigPath, ts.sys.readFile);return ts.parseJsonConfigFileContent(configFile.config, ts.sys, (0, _path.dirname)(tsconfigInfo.tsConfigPath));}} catch (e) {// Catch any errors
}return null;}function isEsModuleInterop(context) {var cacheKey = (0, _hash.hashObject)({ tsconfigRootDir: context.parserOptions && context.parserOptions.tsconfigRootDir }).digest('hex');
var tsConfig = tsconfigCache.get(cacheKey);
if (typeof tsConfig === 'undefined') {
tsConfig = readTsConfig(context);
tsconfigCache.set(cacheKey, tsConfig);
}
return tsConfig && tsConfig.options ? tsConfig.options.esModuleInterop : false;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRNYXAvdHlwZXNjcmlwdC5qcyJdLCJuYW1lcyI6WyJpc0VzTW9kdWxlSW50ZXJvcCIsInRzIiwidHNjb25maWdDYWNoZSIsIk1hcCIsInJlYWRUc0NvbmZpZyIsImNvbnRleHQiLCJ0c2NvbmZpZ0luZm8iLCJjd2QiLCJwYXJzZXJPcHRpb25zIiwidHNjb25maWdSb290RGlyIiwicHJvY2VzcyIsImdldEVudiIsImtleSIsImVudiIsInRzQ29uZmlnUGF0aCIsInVuZGVmaW5lZCIsInJlcXVpcmUiLCJjb25maWdGaWxlIiwicmVhZENvbmZpZ0ZpbGUiLCJzeXMiLCJyZWFkRmlsZSIsInBhcnNlSnNvbkNvbmZpZ0ZpbGVDb250ZW50IiwiY29uZmlnIiwiZSIsImNhY2hlS2V5IiwiZGlnZXN0IiwidHNDb25maWciLCJnZXQiLCJzZXQiLCJvcHRpb25zIiwiZXNNb2R1bGVJbnRlcm9wIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBK0JnQkEsaUIsR0FBQUEsaUIsQ0EvQmhCLDRCQUNBLG9FQUNBLGdEQUVBLElBQUlDLFdBQUosQ0FDQSxJQUFNQyxnQkFBZ0IsSUFBSUMsR0FBSixFQUF0QixDQUVBLFNBQVNDLFlBQVQsQ0FBc0JDLE9BQXRCLEVBQStCLENBQzdCLElBQU1DLGVBQWUsb0NBQWUsRUFDbENDLEtBQUtGLFFBQVFHLGFBQVIsSUFBeUJILFFBQVFHLGFBQVIsQ0FBc0JDLGVBQS9DLElBQWtFQyxRQUFRSCxHQUFSLEVBRHJDLEVBRWxDSSxxQkFBUSxnQkFBQ0MsR0FBRCxVQUFTRixRQUFRRyxHQUFSLENBQVlELEdBQVosQ0FBVCxFQUFSLGlCQUZrQyxFQUFmLENBQXJCLENBSUEsSUFBSSxDQUNGLElBQUlOLGFBQWFRLFlBQWIsS0FBOEJDLFNBQWxDLEVBQTZDLENBQzNDO0FBQ0EsVUFBSSxDQUFDZCxFQUFMLEVBQVMsQ0FBRUEsS0FBS2UsUUFBUSxZQUFSLENBQUwsQ0FBNkIsQ0FGRyxDQUVGO0FBRXpDLFVBQU1DLGFBQWFoQixHQUFHaUIsY0FBSCxDQUFrQlosYUFBYVEsWUFBL0IsRUFBNkNiLEdBQUdrQixHQUFILENBQU9DLFFBQXBELENBQW5CLENBQ0EsT0FBT25CLEdBQUdvQiwwQkFBSCxDQUNMSixXQUFXSyxNQUROLEVBRUxyQixHQUFHa0IsR0FGRSxFQUdMLG1CQUFRYixhQUFhUSxZQUFyQixDQUhLLENBQVAsQ0FLRCxDQUNGLENBWkQsQ0FZRSxPQUFPUyxDQUFQLEVBQVUsQ0FDVjtBQUNELEdBRUQsT0FBTyxJQUFQLENBQ0QsQ0FFTSxTQUFTdkIsaUJBQVQsQ0FBMkJLLE9BQTNCLEVBQW9DLENBQ3pDLElBQU1tQixXQUFXLHNCQUFXLEVBQzFCZixpQkFBaUJKLFFBQVFHLGFBQVIsSUFBeUJILFFBQVFHLGFBQVIsQ0FBc0JDLGVBRHRDLEVBQVgsRUFFZGdCLE1BRmMsQ0FFUCxLQUZPLENBQWpCO0FBR0EsTUFBSUMsV0FBV3hCLGNBQWN5QixHQUFkLENBQWtCSCxRQUFsQixDQUFmO0FBQ0EsTUFBSSxPQUFPRSxRQUFQLEtBQW9CLFdBQXhCLEVBQXFDO0FBQ25DQSxlQUFXdEIsYUFBYUMsT0FBYixDQUFYO0FBQ0FILGtCQUFjMEIsR0FBZCxDQUFrQkosUUFBbEIsRUFBNEJFLFFBQTVCO0FBQ0Q7O0FBRUQsU0FBT0EsWUFBWUEsU0FBU0csT0FBckIsR0FBK0JILFNBQVNHLE9BQVQsQ0FBaUJDLGVBQWhELEdBQWtFLEtBQXpFO0FBQ0QiLCJmaWxlIjoidHlwZXNjcmlwdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRpcm5hbWUgfSBmcm9tICdwYXRoJztcbmltcG9ydCB7IHRzQ29uZmlnTG9hZGVyIH0gZnJvbSAndHNjb25maWctcGF0aHMvbGliL3RzY29uZmlnLWxvYWRlcic7XG5pbXBvcnQgeyBoYXNoT2JqZWN0IH0gZnJvbSAnZXNsaW50LW1vZHVsZS11dGlscy9oYXNoJztcblxubGV0IHRzO1xuY29uc3QgdHNjb25maWdDYWNoZSA9IG5ldyBNYXAoKTtcblxuZnVuY3Rpb24gcmVhZFRzQ29uZmlnKGNvbnRleHQpIHtcbiAgY29uc3QgdHNjb25maWdJbmZvID0gdHNDb25maWdMb2FkZXIoe1xuICAgIGN3ZDogY29udGV4dC5wYXJzZXJPcHRpb25zICYmIGNvbnRleHQucGFyc2VyT3B0aW9ucy50c2NvbmZpZ1Jvb3REaXIgfHwgcHJvY2Vzcy5jd2QoKSxcbiAgICBnZXRFbnY6IChrZXkpID0+IHByb2Nlc3MuZW52W2tleV0sXG4gIH0pO1xuICB0cnkge1xuICAgIGlmICh0c2NvbmZpZ0luZm8udHNDb25maWdQYXRoICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIFByb2plY3RzIG5vdCB1c2luZyBUeXBlU2NyaXB0IHdvbid0IGhhdmUgYHR5cGVzY3JpcHRgIGluc3RhbGxlZC5cbiAgICAgIGlmICghdHMpIHsgdHMgPSByZXF1aXJlKCd0eXBlc2NyaXB0Jyk7IH0gLy8gZXNsaW50LWRpc2FibGUtbGluZSBpbXBvcnQvbm8tZXh0cmFuZW91cy1kZXBlbmRlbmNpZXNcblxuICAgICAgY29uc3QgY29uZmlnRmlsZSA9IHRzLnJlYWRDb25maWdGaWxlKHRzY29uZmlnSW5mby50c0NvbmZpZ1BhdGgsIHRzLnN5cy5yZWFkRmlsZSk7XG4gICAgICByZXR1cm4gdHMucGFyc2VKc29uQ29uZmlnRmlsZUNvbnRlbnQoXG4gICAgICAgIGNvbmZpZ0ZpbGUuY29uZmlnLFxuICAgICAgICB0cy5zeXMsXG4gICAgICAgIGRpcm5hbWUodHNjb25maWdJbmZvLnRzQ29uZmlnUGF0aCksXG4gICAgICApO1xuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIC8vIENhdGNoIGFueSBlcnJvcnNcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNFc01vZHVsZUludGVyb3AoY29udGV4dCkge1xuICBjb25zdCBjYWNoZUtleSA9IGhhc2hPYmplY3Qoe1xuICAgIHRzY29uZmlnUm9vdERpcjogY29udGV4dC5wYXJzZXJPcHRpb25zICYmIGNvbnRleHQucGFyc2VyT3B0aW9ucy50c2NvbmZpZ1Jvb3REaXIsXG4gIH0pLmRpZ2VzdCgnaGV4Jyk7XG4gIGxldCB0c0NvbmZpZyA9IHRzY29uZmlnQ2FjaGUuZ2V0KGNhY2hlS2V5KTtcbiAgaWYgKHR5cGVvZiB0c0NvbmZpZyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICB0c0NvbmZpZyA9IHJlYWRUc0NvbmZpZyhjb250ZXh0KTtcbiAgICB0c2NvbmZpZ0NhY2hlLnNldChjYWNoZUtleSwgdHNDb25maWcpO1xuICB9XG5cbiAgcmV0dXJuIHRzQ29uZmlnICYmIHRzQ29uZmlnLm9wdGlvbnMgPyB0c0NvbmZpZy5vcHRpb25zLmVzTW9kdWxlSW50ZXJvcCA6IGZhbHNlO1xufVxuIl19

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
'use strict';var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap);
'use strict';var _builder = require('../exportMap/builder');var _builder2 = _interopRequireDefault(_builder);
var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };}
module.exports = {
@ -19,7 +19,7 @@ module.exports = {
if (!defaultSpecifier) {return;}
var imports = _ExportMap2['default'].get(node.source.value, context);
var imports = _builder2['default'].get(node.source.value, context);
if (imports == null) {return;}
if (imports.errors.length) {
@ -37,4 +37,4 @@ module.exports = {
ExportNamedDeclaration: checkDefault.bind(null, 'ExportDefaultSpecifier') };
}return create;}() };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJjYXRlZ29yeSIsImRlc2NyaXB0aW9uIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImNoZWNrRGVmYXVsdCIsInNwZWNpZmllclR5cGUiLCJub2RlIiwiZGVmYXVsdFNwZWNpZmllciIsInNwZWNpZmllcnMiLCJmaW5kIiwic3BlY2lmaWVyIiwiaW1wb3J0cyIsIkV4cG9ydHMiLCJnZXQiLCJzb3VyY2UiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsInVuZGVmaW5lZCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJJbXBvcnREZWNsYXJhdGlvbiIsImJpbmQiLCJFeHBvcnROYW1lZERlY2xhcmF0aW9uIl0sIm1hcHBpbmdzIjoiYUFBQSx5QztBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsZ0JBQVUsaUJBRE47QUFFSkMsbUJBQWEsNkRBRlQ7QUFHSkMsV0FBSywwQkFBUSxTQUFSLENBSEQsRUFGRjs7QUFPSkMsWUFBUSxFQVBKLEVBRFM7OztBQVdmQyxRQVhlLCtCQVdSQyxPQVhRLEVBV0M7QUFDZCxlQUFTQyxZQUFULENBQXNCQyxhQUF0QixFQUFxQ0MsSUFBckMsRUFBMkM7QUFDekMsWUFBTUMsbUJBQW1CRCxLQUFLRSxVQUFMLENBQWdCQyxJQUFoQjtBQUN2QixrQkFBQ0MsU0FBRCxVQUFlQSxVQUFVZCxJQUFWLEtBQW1CUyxhQUFsQyxFQUR1QixDQUF6Qjs7O0FBSUEsWUFBSSxDQUFDRSxnQkFBTCxFQUF1QixDQUFFLE9BQVM7QUFDbEMsWUFBTUksVUFBVUMsdUJBQVFDLEdBQVIsQ0FBWVAsS0FBS1EsTUFBTCxDQUFZQyxLQUF4QixFQUErQlosT0FBL0IsQ0FBaEI7QUFDQSxZQUFJUSxXQUFXLElBQWYsRUFBcUIsQ0FBRSxPQUFTOztBQUVoQyxZQUFJQSxRQUFRSyxNQUFSLENBQWVDLE1BQW5CLEVBQTJCO0FBQ3pCTixrQkFBUU8sWUFBUixDQUFxQmYsT0FBckIsRUFBOEJHLElBQTlCO0FBQ0QsU0FGRCxNQUVPLElBQUlLLFFBQVFFLEdBQVIsQ0FBWSxTQUFaLE1BQTJCTSxTQUEvQixFQUEwQztBQUMvQ2hCLGtCQUFRaUIsTUFBUixDQUFlO0FBQ2JkLGtCQUFNQyxnQkFETztBQUViYyw2RUFBd0RmLEtBQUtRLE1BQUwsQ0FBWUMsS0FBcEUsUUFGYSxFQUFmOztBQUlEO0FBQ0Y7O0FBRUQsYUFBTztBQUNMTywyQkFBbUJsQixhQUFhbUIsSUFBYixDQUFrQixJQUFsQixFQUF3Qix3QkFBeEIsQ0FEZDtBQUVMQyxnQ0FBd0JwQixhQUFhbUIsSUFBYixDQUFrQixJQUFsQixFQUF3Qix3QkFBeEIsQ0FGbkIsRUFBUDs7QUFJRCxLQW5DYyxtQkFBakIiLCJmaWxlIjoiZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeHBvcnRzIGZyb20gJy4uL0V4cG9ydE1hcCc7XG5pbXBvcnQgZG9jc1VybCBmcm9tICcuLi9kb2NzVXJsJztcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ldGE6IHtcbiAgICB0eXBlOiAncHJvYmxlbScsXG4gICAgZG9jczoge1xuICAgICAgY2F0ZWdvcnk6ICdTdGF0aWMgYW5hbHlzaXMnLFxuICAgICAgZGVzY3JpcHRpb246ICdFbnN1cmUgYSBkZWZhdWx0IGV4cG9ydCBpcyBwcmVzZW50LCBnaXZlbiBhIGRlZmF1bHQgaW1wb3J0LicsXG4gICAgICB1cmw6IGRvY3NVcmwoJ2RlZmF1bHQnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlKGNvbnRleHQpIHtcbiAgICBmdW5jdGlvbiBjaGVja0RlZmF1bHQoc3BlY2lmaWVyVHlwZSwgbm9kZSkge1xuICAgICAgY29uc3QgZGVmYXVsdFNwZWNpZmllciA9IG5vZGUuc3BlY2lmaWVycy5maW5kKFxuICAgICAgICAoc3BlY2lmaWVyKSA9PiBzcGVjaWZpZXIudHlwZSA9PT0gc3BlY2lmaWVyVHlwZSxcbiAgICAgICk7XG5cbiAgICAgIGlmICghZGVmYXVsdFNwZWNpZmllcikgeyByZXR1cm47IH1cbiAgICAgIGNvbnN0IGltcG9ydHMgPSBFeHBvcnRzLmdldChub2RlLnNvdXJjZS52YWx1ZSwgY29udGV4dCk7XG4gICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSB7IHJldHVybjsgfVxuXG4gICAgICBpZiAoaW1wb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGltcG9ydHMucmVwb3J0RXJyb3JzKGNvbnRleHQsIG5vZGUpO1xuICAgICAgfSBlbHNlIGlmIChpbXBvcnRzLmdldCgnZGVmYXVsdCcpID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29udGV4dC5yZXBvcnQoe1xuICAgICAgICAgIG5vZGU6IGRlZmF1bHRTcGVjaWZpZXIsXG4gICAgICAgICAgbWVzc2FnZTogYE5vIGRlZmF1bHQgZXhwb3J0IGZvdW5kIGluIGltcG9ydGVkIG1vZHVsZSBcIiR7bm9kZS5zb3VyY2UudmFsdWV9XCIuYCxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlY2xhcmF0aW9uOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnSW1wb3J0RGVmYXVsdFNwZWNpZmllcicpLFxuICAgICAgRXhwb3J0TmFtZWREZWNsYXJhdGlvbjogY2hlY2tEZWZhdWx0LmJpbmQobnVsbCwgJ0V4cG9ydERlZmF1bHRTcGVjaWZpZXInKSxcbiAgICB9O1xuICB9LFxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJjYXRlZ29yeSIsImRlc2NyaXB0aW9uIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImNoZWNrRGVmYXVsdCIsInNwZWNpZmllclR5cGUiLCJub2RlIiwiZGVmYXVsdFNwZWNpZmllciIsInNwZWNpZmllcnMiLCJmaW5kIiwic3BlY2lmaWVyIiwiaW1wb3J0cyIsIkV4cG9ydE1hcEJ1aWxkZXIiLCJnZXQiLCJzb3VyY2UiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsInVuZGVmaW5lZCIsInJlcG9ydCIsIm1lc3NhZ2UiLCJJbXBvcnREZWNsYXJhdGlvbiIsImJpbmQiLCJFeHBvcnROYW1lZERlY2xhcmF0aW9uIl0sIm1hcHBpbmdzIjoiYUFBQSwrQztBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsZ0JBQVUsaUJBRE47QUFFSkMsbUJBQWEsNkRBRlQ7QUFHSkMsV0FBSywwQkFBUSxTQUFSLENBSEQsRUFGRjs7QUFPSkMsWUFBUSxFQVBKLEVBRFM7OztBQVdmQyxRQVhlLCtCQVdSQyxPQVhRLEVBV0M7QUFDZCxlQUFTQyxZQUFULENBQXNCQyxhQUF0QixFQUFxQ0MsSUFBckMsRUFBMkM7QUFDekMsWUFBTUMsbUJBQW1CRCxLQUFLRSxVQUFMLENBQWdCQyxJQUFoQjtBQUN2QixrQkFBQ0MsU0FBRCxVQUFlQSxVQUFVZCxJQUFWLEtBQW1CUyxhQUFsQyxFQUR1QixDQUF6Qjs7O0FBSUEsWUFBSSxDQUFDRSxnQkFBTCxFQUF1QixDQUFFLE9BQVM7QUFDbEMsWUFBTUksVUFBVUMscUJBQWlCQyxHQUFqQixDQUFxQlAsS0FBS1EsTUFBTCxDQUFZQyxLQUFqQyxFQUF3Q1osT0FBeEMsQ0FBaEI7QUFDQSxZQUFJUSxXQUFXLElBQWYsRUFBcUIsQ0FBRSxPQUFTOztBQUVoQyxZQUFJQSxRQUFRSyxNQUFSLENBQWVDLE1BQW5CLEVBQTJCO0FBQ3pCTixrQkFBUU8sWUFBUixDQUFxQmYsT0FBckIsRUFBOEJHLElBQTlCO0FBQ0QsU0FGRCxNQUVPLElBQUlLLFFBQVFFLEdBQVIsQ0FBWSxTQUFaLE1BQTJCTSxTQUEvQixFQUEwQztBQUMvQ2hCLGtCQUFRaUIsTUFBUixDQUFlO0FBQ2JkLGtCQUFNQyxnQkFETztBQUViYyw2RUFBd0RmLEtBQUtRLE1BQUwsQ0FBWUMsS0FBcEUsUUFGYSxFQUFmOztBQUlEO0FBQ0Y7O0FBRUQsYUFBTztBQUNMTywyQkFBbUJsQixhQUFhbUIsSUFBYixDQUFrQixJQUFsQixFQUF3Qix3QkFBeEIsQ0FEZDtBQUVMQyxnQ0FBd0JwQixhQUFhbUIsSUFBYixDQUFrQixJQUFsQixFQUF3Qix3QkFBeEIsQ0FGbkIsRUFBUDs7QUFJRCxLQW5DYyxtQkFBakIiLCJmaWxlIjoiZGVmYXVsdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFeHBvcnRNYXBCdWlsZGVyIGZyb20gJy4uL2V4cG9ydE1hcC9idWlsZGVyJztcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICBjYXRlZ29yeTogJ1N0YXRpYyBhbmFseXNpcycsXG4gICAgICBkZXNjcmlwdGlvbjogJ0Vuc3VyZSBhIGRlZmF1bHQgZXhwb3J0IGlzIHByZXNlbnQsIGdpdmVuIGEgZGVmYXVsdCBpbXBvcnQuJyxcbiAgICAgIHVybDogZG9jc1VybCgnZGVmYXVsdCcpLFxuICAgIH0sXG4gICAgc2NoZW1hOiBbXSxcbiAgfSxcblxuICBjcmVhdGUoY29udGV4dCkge1xuICAgIGZ1bmN0aW9uIGNoZWNrRGVmYXVsdChzcGVjaWZpZXJUeXBlLCBub2RlKSB7XG4gICAgICBjb25zdCBkZWZhdWx0U3BlY2lmaWVyID0gbm9kZS5zcGVjaWZpZXJzLmZpbmQoXG4gICAgICAgIChzcGVjaWZpZXIpID0+IHNwZWNpZmllci50eXBlID09PSBzcGVjaWZpZXJUeXBlLFxuICAgICAgKTtcblxuICAgICAgaWYgKCFkZWZhdWx0U3BlY2lmaWVyKSB7IHJldHVybjsgfVxuICAgICAgY29uc3QgaW1wb3J0cyA9IEV4cG9ydE1hcEJ1aWxkZXIuZ2V0KG5vZGUuc291cmNlLnZhbHVlLCBjb250ZXh0KTtcbiAgICAgIGlmIChpbXBvcnRzID09IG51bGwpIHsgcmV0dXJuOyB9XG5cbiAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgaW1wb3J0cy5yZXBvcnRFcnJvcnMoY29udGV4dCwgbm9kZSk7XG4gICAgICB9IGVsc2UgaWYgKGltcG9ydHMuZ2V0KCdkZWZhdWx0JykgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb250ZXh0LnJlcG9ydCh7XG4gICAgICAgICAgbm9kZTogZGVmYXVsdFNwZWNpZmllcixcbiAgICAgICAgICBtZXNzYWdlOiBgTm8gZGVmYXVsdCBleHBvcnQgZm91bmQgaW4gaW1wb3J0ZWQgbW9kdWxlIFwiJHtub2RlLnNvdXJjZS52YWx1ZX1cIi5gLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgSW1wb3J0RGVjbGFyYXRpb246IGNoZWNrRGVmYXVsdC5iaW5kKG51bGwsICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJyksXG4gICAgICBFeHBvcnROYW1lZERlY2xhcmF0aW9uOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnRXhwb3J0RGVmYXVsdFNwZWNpZmllcicpLFxuICAgIH07XG4gIH0sXG59O1xuIl19

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
'use strict';var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap);
'use strict';var _builder = require('../exportMap/builder');var _builder2 = _interopRequireDefault(_builder);
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 };}
@ -20,7 +20,7 @@ module.exports = {
var declaration = (0, _importDeclaration2['default'])(context);
var imports = _ExportMap2['default'].get(declaration.source.value, context);
var imports = _builder2['default'].get(declaration.source.value, context);
if (imports == null) {return;}
if (imports.errors.length) {
@ -42,4 +42,4 @@ module.exports = {
ExportDefaultSpecifier: checkDefault.bind(null, 'exported') };
}return create;}() };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJjYXRlZ29yeSIsImRlc2NyaXB0aW9uIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImNoZWNrRGVmYXVsdCIsIm5hbWVLZXkiLCJkZWZhdWx0U3BlY2lmaWVyIiwibmFtZSIsImRlY2xhcmF0aW9uIiwiaW1wb3J0cyIsIkV4cG9ydHMiLCJnZXQiLCJzb3VyY2UiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsImhhcyIsInJlcG9ydCIsIkltcG9ydERlZmF1bHRTcGVjaWZpZXIiLCJiaW5kIiwiRXhwb3J0RGVmYXVsdFNwZWNpZmllciJdLCJtYXBwaW5ncyI6ImFBQUEseUM7QUFDQSx5RDtBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsZ0JBQVUsa0JBRE47QUFFSkMsbUJBQWEsOERBRlQ7QUFHSkMsV0FBSywwQkFBUSxxQkFBUixDQUhELEVBRkY7O0FBT0pDLFlBQVEsRUFQSixFQURTOzs7QUFXZkMsUUFYZSwrQkFXUkMsT0FYUSxFQVdDO0FBQ2QsZUFBU0MsWUFBVCxDQUFzQkMsT0FBdEIsRUFBK0JDLGdCQUEvQixFQUFpRDtBQUMvQztBQUNBLFlBQUlBLGlCQUFpQkQsT0FBakIsRUFBMEJFLElBQTFCLEtBQW1DLFNBQXZDLEVBQWtELENBQUUsT0FBUzs7QUFFN0QsWUFBTUMsY0FBYyxvQ0FBa0JMLE9BQWxCLENBQXBCOztBQUVBLFlBQU1NLFVBQVVDLHVCQUFRQyxHQUFSLENBQVlILFlBQVlJLE1BQVosQ0FBbUJDLEtBQS9CLEVBQXNDVixPQUF0QyxDQUFoQjtBQUNBLFlBQUlNLFdBQVcsSUFBZixFQUFxQixDQUFFLE9BQVM7O0FBRWhDLFlBQUlBLFFBQVFLLE1BQVIsQ0FBZUMsTUFBbkIsRUFBMkI7QUFDekJOLGtCQUFRTyxZQUFSLENBQXFCYixPQUFyQixFQUE4QkssV0FBOUI7QUFDQTtBQUNEOztBQUVELFlBQUlDLFFBQVFRLEdBQVIsQ0FBWSxTQUFaLEtBQTBCUixRQUFRUSxHQUFSLENBQVlYLGlCQUFpQkQsT0FBakIsRUFBMEJFLElBQXRDLENBQTlCLEVBQTJFOztBQUV6RUosa0JBQVFlLE1BQVI7QUFDRVosMEJBREY7QUFFMEJBLDJCQUFpQkQsT0FBakIsRUFBMEJFLElBRnBEOzs7QUFLRDtBQUNGO0FBQ0QsYUFBTztBQUNMWSxnQ0FBd0JmLGFBQWFnQixJQUFiLENBQWtCLElBQWxCLEVBQXdCLE9BQXhCLENBRG5CO0FBRUxDLGdDQUF3QmpCLGFBQWFnQixJQUFiLENBQWtCLElBQWxCLEVBQXdCLFVBQXhCLENBRm5CLEVBQVA7O0FBSUQsS0F2Q2MsbUJBQWpCIiwiZmlsZSI6Im5vLW5hbWVkLWFzLWRlZmF1bHQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRXhwb3J0cyBmcm9tICcuLi9FeHBvcnRNYXAnO1xuaW1wb3J0IGltcG9ydERlY2xhcmF0aW9uIGZyb20gJy4uL2ltcG9ydERlY2xhcmF0aW9uJztcbmltcG9ydCBkb2NzVXJsIGZyb20gJy4uL2RvY3NVcmwnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdwcm9ibGVtJyxcbiAgICBkb2NzOiB7XG4gICAgICBjYXRlZ29yeTogJ0hlbHBmdWwgd2FybmluZ3MnLFxuICAgICAgZGVzY3JpcHRpb246ICdGb3JiaWQgdXNlIG9mIGV4cG9ydGVkIG5hbWUgYXMgaWRlbnRpZmllciBvZiBkZWZhdWx0IGV4cG9ydC4nLFxuICAgICAgdXJsOiBkb2NzVXJsKCduby1uYW1lZC1hcy1kZWZhdWx0JyksXG4gICAgfSxcbiAgICBzY2hlbWE6IFtdLFxuICB9LFxuXG4gIGNyZWF0ZShjb250ZXh0KSB7XG4gICAgZnVuY3Rpb24gY2hlY2tEZWZhdWx0KG5hbWVLZXksIGRlZmF1bHRTcGVjaWZpZXIpIHtcbiAgICAgIC8vICM1NjY6IGRlZmF1bHQgaXMgYSB2YWxpZCBzcGVjaWZpZXJcbiAgICAgIGlmIChkZWZhdWx0U3BlY2lmaWVyW25hbWVLZXldLm5hbWUgPT09ICdkZWZhdWx0JykgeyByZXR1cm47IH1cblxuICAgICAgY29uc3QgZGVjbGFyYXRpb24gPSBpbXBvcnREZWNsYXJhdGlvbihjb250ZXh0KTtcblxuICAgICAgY29uc3QgaW1wb3J0cyA9IEV4cG9ydHMuZ2V0KGRlY2xhcmF0aW9uLnNvdXJjZS52YWx1ZSwgY29udGV4dCk7XG4gICAgICBpZiAoaW1wb3J0cyA9PSBudWxsKSB7IHJldHVybjsgfVxuXG4gICAgICBpZiAoaW1wb3J0cy5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgIGltcG9ydHMucmVwb3J0RXJyb3JzKGNvbnRleHQsIGRlY2xhcmF0aW9uKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoaW1wb3J0cy5oYXMoJ2RlZmF1bHQnKSAmJiBpbXBvcnRzLmhhcyhkZWZhdWx0U3BlY2lmaWVyW25hbWVLZXldLm5hbWUpKSB7XG5cbiAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgZGVmYXVsdFNwZWNpZmllcixcbiAgICAgICAgICBgVXNpbmcgZXhwb3J0ZWQgbmFtZSAnJHtkZWZhdWx0U3BlY2lmaWVyW25hbWVLZXldLm5hbWV9JyBhcyBpZGVudGlmaWVyIGZvciBkZWZhdWx0IGV4cG9ydC5gLFxuICAgICAgICApO1xuXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBJbXBvcnREZWZhdWx0U3BlY2lmaWVyOiBjaGVja0RlZmF1bHQuYmluZChudWxsLCAnbG9jYWwnKSxcbiAgICAgIEV4cG9ydERlZmF1bHRTcGVjaWZpZXI6IGNoZWNrRGVmYXVsdC5iaW5kKG51bGwsICdleHBvcnRlZCcpLFxuICAgIH07XG4gIH0sXG59O1xuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby1uYW1lZC1hcy1kZWZhdWx0LmpzIl0sIm5hbWVzIjpbIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRhIiwidHlwZSIsImRvY3MiLCJjYXRlZ29yeSIsImRlc2NyaXB0aW9uIiwidXJsIiwic2NoZW1hIiwiY3JlYXRlIiwiY29udGV4dCIsImNoZWNrRGVmYXVsdCIsIm5hbWVLZXkiLCJkZWZhdWx0U3BlY2lmaWVyIiwibmFtZSIsImRlY2xhcmF0aW9uIiwiaW1wb3J0cyIsIkV4cG9ydE1hcEJ1aWxkZXIiLCJnZXQiLCJzb3VyY2UiLCJ2YWx1ZSIsImVycm9ycyIsImxlbmd0aCIsInJlcG9ydEVycm9ycyIsImhhcyIsInJlcG9ydCIsIkltcG9ydERlZmF1bHRTcGVjaWZpZXIiLCJiaW5kIiwiRXhwb3J0RGVmYXVsdFNwZWNpZmllciJdLCJtYXBwaW5ncyI6ImFBQUEsK0M7QUFDQSx5RDtBQUNBLHFDOztBQUVBQSxPQUFPQyxPQUFQLEdBQWlCO0FBQ2ZDLFFBQU07QUFDSkMsVUFBTSxTQURGO0FBRUpDLFVBQU07QUFDSkMsZ0JBQVUsa0JBRE47QUFFSkMsbUJBQWEsOERBRlQ7QUFHSkMsV0FBSywwQkFBUSxxQkFBUixDQUhELEVBRkY7O0FBT0pDLFlBQVEsRUFQSixFQURTOzs7QUFXZkMsUUFYZSwrQkFXUkMsT0FYUSxFQVdDO0FBQ2QsZUFBU0MsWUFBVCxDQUFzQkMsT0FBdEIsRUFBK0JDLGdCQUEvQixFQUFpRDtBQUMvQztBQUNBLFlBQUlBLGlCQUFpQkQsT0FBakIsRUFBMEJFLElBQTFCLEtBQW1DLFNBQXZDLEVBQWtELENBQUUsT0FBUzs7QUFFN0QsWUFBTUMsY0FBYyxvQ0FBa0JMLE9BQWxCLENBQXBCOztBQUVBLFlBQU1NLFVBQVVDLHFCQUFpQkMsR0FBakIsQ0FBcUJILFlBQVlJLE1BQVosQ0FBbUJDLEtBQXhDLEVBQStDVixPQUEvQyxDQUFoQjtBQUNBLFlBQUlNLFdBQVcsSUFBZixFQUFxQixDQUFFLE9BQVM7O0FBRWhDLFlBQUlBLFFBQVFLLE1BQVIsQ0FBZUMsTUFBbkIsRUFBMkI7QUFDekJOLGtCQUFRTyxZQUFSLENBQXFCYixPQUFyQixFQUE4QkssV0FBOUI7QUFDQTtBQUNEOztBQUVELFlBQUlDLFFBQVFRLEdBQVIsQ0FBWSxTQUFaLEtBQTBCUixRQUFRUSxHQUFSLENBQVlYLGlCQUFpQkQsT0FBakIsRUFBMEJFLElBQXRDLENBQTlCLEVBQTJFOztBQUV6RUosa0JBQVFlLE1BQVI7QUFDRVosMEJBREY7QUFFMEJBLDJCQUFpQkQsT0FBakIsRUFBMEJFLElBRnBEOzs7QUFLRDtBQUNGO0FBQ0QsYUFBTztBQUNMWSxnQ0FBd0JmLGFBQWFnQixJQUFiLENBQWtCLElBQWxCLEVBQXdCLE9BQXhCLENBRG5CO0FBRUxDLGdDQUF3QmpCLGFBQWFnQixJQUFiLENBQWtCLElBQWxCLEVBQXdCLFVBQXhCLENBRm5CLEVBQVA7O0FBSUQsS0F2Q2MsbUJBQWpCIiwiZmlsZSI6Im5vLW5hbWVkLWFzLWRlZmF1bHQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRXhwb3J0TWFwQnVpbGRlciBmcm9tICcuLi9leHBvcnRNYXAvYnVpbGRlcic7XG5pbXBvcnQgaW1wb3J0RGVjbGFyYXRpb24gZnJvbSAnLi4vaW1wb3J0RGVjbGFyYXRpb24nO1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCc7XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBtZXRhOiB7XG4gICAgdHlwZTogJ3Byb2JsZW0nLFxuICAgIGRvY3M6IHtcbiAgICAgIGNhdGVnb3J5OiAnSGVscGZ1bCB3YXJuaW5ncycsXG4gICAgICBkZXNjcmlwdGlvbjogJ0ZvcmJpZCB1c2Ugb2YgZXhwb3J0ZWQgbmFtZSBhcyBpZGVudGlmaWVyIG9mIGRlZmF1bHQgZXhwb3J0LicsXG4gICAgICB1cmw6IGRvY3NVcmwoJ25vLW5hbWVkLWFzLWRlZmF1bHQnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW10sXG4gIH0sXG5cbiAgY3JlYXRlKGNvbnRleHQpIHtcbiAgICBmdW5jdGlvbiBjaGVja0RlZmF1bHQobmFtZUtleSwgZGVmYXVsdFNwZWNpZmllcikge1xuICAgICAgLy8gIzU2NjogZGVmYXVsdCBpcyBhIHZhbGlkIHNwZWNpZmllclxuICAgICAgaWYgKGRlZmF1bHRTcGVjaWZpZXJbbmFtZUtleV0ubmFtZSA9PT0gJ2RlZmF1bHQnKSB7IHJldHVybjsgfVxuXG4gICAgICBjb25zdCBkZWNsYXJhdGlvbiA9IGltcG9ydERlY2xhcmF0aW9uKGNvbnRleHQpO1xuXG4gICAgICBjb25zdCBpbXBvcnRzID0gRXhwb3J0TWFwQnVpbGRlci5nZXQoZGVjbGFyYXRpb24uc291cmNlLnZhbHVlLCBjb250ZXh0KTtcbiAgICAgIGlmIChpbXBvcnRzID09IG51bGwpIHsgcmV0dXJuOyB9XG5cbiAgICAgIGlmIChpbXBvcnRzLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgaW1wb3J0cy5yZXBvcnRFcnJvcnMoY29udGV4dCwgZGVjbGFyYXRpb24pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpbXBvcnRzLmhhcygnZGVmYXVsdCcpICYmIGltcG9ydHMuaGFzKGRlZmF1bHRTcGVjaWZpZXJbbmFtZUtleV0ubmFtZSkpIHtcblxuICAgICAgICBjb250ZXh0LnJlcG9ydChcbiAgICAgICAgICBkZWZhdWx0U3BlY2lmaWVyLFxuICAgICAgICAgIGBVc2luZyBleHBvcnRlZCBuYW1lICcke2RlZmF1bHRTcGVjaWZpZXJbbmFtZUtleV0ubmFtZX0nIGFzIGlkZW50aWZpZXIgZm9yIGRlZmF1bHQgZXhwb3J0LmAsXG4gICAgICAgICk7XG5cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIEltcG9ydERlZmF1bHRTcGVjaWZpZXI6IGNoZWNrRGVmYXVsdC5iaW5kKG51bGwsICdsb2NhbCcpLFxuICAgICAgRXhwb3J0RGVmYXVsdFNwZWNpZmllcjogY2hlY2tEZWZhdWx0LmJpbmQobnVsbCwgJ2V4cG9ydGVkJyksXG4gICAgfTtcbiAgfSxcbn07XG4iXX0=

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

86
node_modules/eslint-plugin-import/lib/scc.js generated vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,6 @@
{
"name": "eslint-plugin-import",
"version": "2.29.1",
"version": "2.30.0",
"description": "Import with sanity.",
"engines": {
"node": ">=4"
@ -11,6 +11,7 @@
},
"files": [
"*.md",
"!{CONTRIBUTING,RELEASE}.md",
"LICENSE",
"docs",
"lib",
@ -30,6 +31,9 @@
"test": "npm run tests-only",
"test-compiled": "npm run prepublish && BABEL_ENV=testCompiled mocha --compilers js:babel-register tests/src",
"test-all": "node --require babel-register ./scripts/testAll",
"test-examples": "npm run build && npm run test-example:legacy && npm run test-example:flat",
"test-example:legacy": "cd examples/legacy && npm install && npm run lint",
"test-example:flat": "cd examples/flat && npm install && npm run lint",
"prepublishOnly": "safe-publish-latest && npm run build",
"prepublish": "not-in-publish || npm run prepublishOnly",
"preupdate:eslint-docs": "npm run build",
@ -82,13 +86,15 @@
"eslint-plugin-eslint-plugin": "^2.3.0",
"eslint-plugin-import": "2.x",
"eslint-plugin-json": "^2.1.2",
"find-babel-config": "=1.2.0",
"fs-copy-file-sync": "^1.1.1",
"glob": "^7.2.3",
"in-publish": "^2.0.1",
"jackspeak": "=2.1.1",
"jsonc-parser": "=3.2.0",
"linklocal": "^2.8.2",
"lodash.isarray": "^4.0.0",
"markdownlint-cli": "^0.38.0",
"markdownlint-cli": "~0.35",
"mocha": "^3.5.3",
"npm-which": "^3.0.1",
"nyc": "^11.9.0",
@ -103,21 +109,22 @@
"eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8"
},
"dependencies": {
"array-includes": "^3.1.7",
"array.prototype.findlastindex": "^1.2.3",
"@rtsao/scc": "^1.1.0",
"array-includes": "^3.1.8",
"array.prototype.findlastindex": "^1.2.5",
"array.prototype.flat": "^1.3.2",
"array.prototype.flatmap": "^1.3.2",
"debug": "^3.2.7",
"doctrine": "^2.1.0",
"eslint-import-resolver-node": "^0.3.9",
"eslint-module-utils": "^2.8.0",
"hasown": "^2.0.0",
"is-core-module": "^2.13.1",
"eslint-module-utils": "^2.9.0",
"hasown": "^2.0.2",
"is-core-module": "^2.15.1",
"is-glob": "^4.0.3",
"minimatch": "^3.1.2",
"object.fromentries": "^2.0.7",
"object.groupby": "^1.0.1",
"object.values": "^1.1.7",
"object.fromentries": "^2.0.8",
"object.groupby": "^1.0.3",
"object.values": "^1.2.0",
"semver": "^6.3.1",
"tsconfig-paths": "^3.15.0"
}