UNPKG

1.12 kBMarkdownView Raw
1# Writing processors
2
3Processors are functions that hook into stylelint's pipeline, modifying code on its way into stylelint and modifying results on their way out.
4
5**Their use is discouraged favor of [PostCSS syntaxes](../about/syntaxes.md).**
6
7Processor modules are functions that accept an options object and return an object with the following the functions, which hook into the processing of each file:
8
9- **code**: A function that accepts two arguments, the file's code and the file's path, and returns a string for stylelint to lint.
10- **result**: A function that accepts two arguments, the file's stylelint result object and the file's path, and either mutates the result object (returning nothing) or returns a new one.
11
12```js
13// my-processor.js
14module.exports = function (options) {
15 return {
16 code: function (input, filepath) {
17 // ...
18 return transformedCode;
19 },
20 result: function (stylelintResult, filepath) {
21 // ...
22 return transformedResult;
23 }
24 };
25};
26```
27
28_Processor options must be JSON-friendly_ because users will need to include them in `.stylelintrc` files.