@eslint/plugin-kit
Advanced tools
Comparing version 0.2.3 to 0.2.4
@@ -205,3 +205,3 @@ export type VisitTraversalStep = import("@eslint/core").VisitTraversalStep; | ||
*/ | ||
public get lines(): string[]; | ||
public get lines(): Array<string>; | ||
/** | ||
@@ -208,0 +208,0 @@ * Traverse the source code and return the steps that were taken. |
@@ -123,3 +123,4 @@ // @ts-self-types="./index.d.ts" | ||
try { | ||
const items = levn.parse("Object", string) || {}; | ||
const items = | ||
/** @type {RulesConfig} */ (levn.parse("Object", string)) || {}; | ||
@@ -126,0 +127,0 @@ /* |
{ | ||
"name": "@eslint/plugin-kit", | ||
"version": "0.2.3", | ||
"version": "0.2.4", | ||
"description": "Utilities for building ESLint plugins.", | ||
@@ -49,3 +49,4 @@ "author": "Nicholas C. Zakas", | ||
"devDependencies": { | ||
"@eslint/core": "^0.9.0", | ||
"@eslint/core": "^0.9.1", | ||
"@types/levn": "^0.4.0", | ||
"c8": "^9.1.0", | ||
@@ -52,0 +53,0 @@ "mocha": "^10.4.0", |
@@ -31,6 +31,6 @@ # ESLint Plugin Kit | ||
- `ConfigCommentParser` - used to parse ESLint configuration comments (i.e., `/* eslint-disable rule */`) | ||
- `VisitNodeStep` and `CallMethodStep` - used to help implement `SourceCode#traverse()` | ||
- `Directive` - used to help implement `SourceCode#getDisableDirectives()` | ||
- `TextSourceCodeBase` - base class to help implement the `SourceCode` interface | ||
- `ConfigCommentParser` - used to parse ESLint configuration comments (i.e., `/* eslint-disable rule */`) | ||
- `VisitNodeStep` and `CallMethodStep` - used to help implement `SourceCode#traverse()` | ||
- `Directive` - used to help implement `SourceCode#getDisableDirectives()` | ||
- `TextSourceCodeBase` - base class to help implement the `SourceCode` interface | ||
@@ -89,5 +89,5 @@ ### `ConfigCommentParser` | ||
- `target` - the node being visited. This is used to determine the method to call inside of a rule. For instance, if the node's type is `Literal` then ESLint will call a method named `Literal()` on the rule (if present). | ||
- `phase` - either 1 for enter or 2 for exit. | ||
- `args` - an array of arguments to pass into the visitor method of a rule. | ||
- `target` - the node being visited. This is used to determine the method to call inside of a rule. For instance, if the node's type is `Literal` then ESLint will call a method named `Literal()` on the rule (if present). | ||
- `phase` - either 1 for enter or 2 for exit. | ||
- `args` - an array of arguments to pass into the visitor method of a rule. | ||
@@ -120,4 +120,4 @@ For example: | ||
- `target` - the name of the method to call, frequently beginning with `"on"` such as `"onCodePathStart"`. | ||
- `args` - an array of arguments to pass to the method. | ||
- `target` - the name of the method to call, frequently beginning with `"on"` such as `"onCodePathStart"`. | ||
- `args` - an array of arguments to pass to the method. | ||
@@ -211,7 +211,7 @@ For example: | ||
- `lines` - an array of text lines that is created automatically when the constructor is called. | ||
- `getLoc(node)` - gets the location of a node. Works for nodes that have the ESLint-style `loc` property and nodes that have the Unist-style [`position` property](https://github.com/syntax-tree/unist?tab=readme-ov-file#position). If you're using an AST with a different location format, you'll still need to implement this method yourself. | ||
- `getRange(node)` - gets the range of a node within the source text. Works for nodes that have the ESLint-style `range` property and nodes that have the Unist-style [`position` property](https://github.com/syntax-tree/unist?tab=readme-ov-file#position). If you're using an AST with a different range format, you'll still need to implement this method yourself. | ||
- `getText(nodeOrToken, charsBefore, charsAfter)` - gets the source text for the given node or token that has range information attached. Optionally, can return additional characters before and after the given node or token. As long as `getRange()` is properly implemented, this method will just work. | ||
- `getAncestors(node)` - returns the ancestry of the node. In order for this to work, you must implement the `getParent()` method yourself. | ||
- `lines` - an array of text lines that is created automatically when the constructor is called. | ||
- `getLoc(node)` - gets the location of a node. Works for nodes that have the ESLint-style `loc` property and nodes that have the Unist-style [`position` property](https://github.com/syntax-tree/unist?tab=readme-ov-file#position). If you're using an AST with a different location format, you'll still need to implement this method yourself. | ||
- `getRange(node)` - gets the range of a node within the source text. Works for nodes that have the ESLint-style `range` property and nodes that have the Unist-style [`position` property](https://github.com/syntax-tree/unist?tab=readme-ov-file#position). If you're using an AST with a different range format, you'll still need to implement this method yourself. | ||
- `getText(nodeOrToken, charsBefore, charsAfter)` - gets the source text for the given node or token that has range information attached. Optionally, can return additional characters before and after the given node or token. As long as `getRange()` is properly implemented, this method will just work. | ||
- `getAncestors(node)` - returns the ancestry of the node. In order for this to work, you must implement the `getParent()` method yourself. | ||
@@ -273,3 +273,3 @@ Here's an example: | ||
<p><a href="https://www.serptriumph.com/"><img src="https://images.opencollective.com/serp-triumph5/fea3074/logo.png" alt="SERP Triumph" height="64"></a> <a href="https://www.jetbrains.com/"><img src="https://images.opencollective.com/jetbrains/fe76f99/logo.png" alt="JetBrains" height="64"></a> <a href="https://liftoff.io/"><img src="https://images.opencollective.com/liftoff/5c4fa84/logo.png" alt="Liftoff" height="64"></a> <a href="https://americanexpress.io"><img src="https://avatars.githubusercontent.com/u/3853301?v=4" alt="American Express" height="64"></a> <a href="https://www.workleap.com"><img src="https://avatars.githubusercontent.com/u/53535748?u=d1e55d7661d724bf2281c1bfd33cb8f99fe2465f&v=4" alt="Workleap" height="64"></a></p><h3>Bronze Sponsors</h3> | ||
<p><a href="https://cybozu.co.jp/"><img src="https://images.opencollective.com/cybozu/933e46d/logo.png" alt="Cybozu" height="32"></a> <a href="https://syntax.fm"><img src="https://github.com/syntaxfm.png" alt="Syntax" height="32"></a> <a href="https://www.wordhint.net/"><img src="https://images.opencollective.com/wordhint/be86813/avatar.png" alt="WordHint" height="32"></a> <a href="https://www.crosswordsolver.org/anagram-solver/"><img src="https://images.opencollective.com/anagram-solver/2666271/logo.png" alt="Anagram Solver" height="32"></a> <a href="https://icons8.com/"><img src="https://images.opencollective.com/icons8/7fa1641/logo.png" alt="Icons8" height="32"></a> <a href="https://discord.com"><img src="https://images.opencollective.com/discordapp/f9645d9/logo.png" alt="Discord" height="32"></a> <a href="https://www.gitbook.com"><img src="https://avatars.githubusercontent.com/u/7111340?v=4" alt="GitBook" height="32"></a> <a href="https://nx.dev"><img src="https://avatars.githubusercontent.com/u/23692104?v=4" alt="Nx" height="32"></a> <a href="https://herocoders.com"><img src="https://avatars.githubusercontent.com/u/37549774?v=4" alt="HeroCoders" height="32"></a></p> | ||
<p><a href="https://cybozu.co.jp/"><img src="https://images.opencollective.com/cybozu/933e46d/logo.png" alt="Cybozu" height="32"></a> <a href="https://www.wordhint.net/"><img src="https://images.opencollective.com/wordhint/be86813/avatar.png" alt="WordHint" height="32"></a> <a href="https://www.crosswordsolver.org/anagram-solver/"><img src="https://images.opencollective.com/anagram-solver/2666271/logo.png" alt="Anagram Solver" height="32"></a> <a href="https://icons8.com/"><img src="https://images.opencollective.com/icons8/7fa1641/logo.png" alt="Icons8" height="32"></a> <a href="https://discord.com"><img src="https://images.opencollective.com/discordapp/f9645d9/logo.png" alt="Discord" height="32"></a> <a href="https://www.gitbook.com"><img src="https://avatars.githubusercontent.com/u/7111340?v=4" alt="GitBook" height="32"></a> <a href="https://nx.dev"><img src="https://avatars.githubusercontent.com/u/23692104?v=4" alt="Nx" height="32"></a> <a href="https://opensource.mercedes-benz.com/"><img src="https://avatars.githubusercontent.com/u/34240465?v=4" alt="Mercedes-Benz Group" height="32"></a> <a href="https://herocoders.com"><img src="https://avatars.githubusercontent.com/u/37549774?v=4" alt="HeroCoders" height="32"></a></p> | ||
<h3>Technology Sponsors</h3> | ||
@@ -276,0 +276,0 @@ Technology sponsors allow us to use their products and services for free as part of a contribution to the open source ecosystem and our work. |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
77087
1356
7